diff --git a/ChangeLog b/ChangeLog index 126bedb00..64d07d17a 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +2001-01-18 Werner Koch + + * configure.in: Removed tool definitions for MingW32 + 2000-11-17 Werner Koch * acinclude.m4 (GNUPG_CHECK_FAQPROG): Do not prinnt the warning. diff --git a/VERSION b/VERSION index a0bbf9ac4..be0c79703 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -1.0.4d +1.0.4e diff --git a/cipher/ChangeLog b/cipher/ChangeLog index bb617a9fd..8a289051e 100644 --- a/cipher/ChangeLog +++ b/cipher/ChangeLog @@ -1,3 +1,12 @@ +2001-01-18 Werner Koch + + * rndw32.c: Fixed typo and wrong ifdef for VER_PLATFORM* macro + +2001-01-12 Werner Koch + + * cipher.c (cipher_encrypt,cipher_encrypt): Use blocksize and + not 8 for CBC mode (However: we don't use CBS in OpenPGP). + 2000-11-22 Werner Koch * rndegd.c (gather_random): Fixed default socket to be '=entropy'. diff --git a/cipher/cipher.c b/cipher/cipher.c index 870e854cc..bbaddd116 100644 --- a/cipher/cipher.c +++ b/cipher/cipher.c @@ -619,12 +619,12 @@ cipher_encrypt( CIPHER_HANDLE c, byte *outbuf, byte *inbuf, unsigned nbytes ) { switch( c->mode ) { case CIPHER_MODE_ECB: - assert(!(nbytes%8)); - do_ecb_encrypt(c, outbuf, inbuf, nbytes/8 ); + assert(!(nbytes%c->blocksize)); + do_ecb_encrypt(c, outbuf, inbuf, nbytes/c->blocksize ); break; case CIPHER_MODE_CBC: - assert(!(nbytes%8)); /* fixme: should be blocksize */ - do_cbc_encrypt(c, outbuf, inbuf, nbytes/8 ); + assert(!(nbytes%c->blocksize)); + do_cbc_encrypt(c, outbuf, inbuf, nbytes/c->blocksize ); break; case CIPHER_MODE_CFB: case CIPHER_MODE_PHILS_CFB: @@ -649,12 +649,12 @@ cipher_decrypt( CIPHER_HANDLE c, byte *outbuf, byte *inbuf, unsigned nbytes ) { switch( c->mode ) { case CIPHER_MODE_ECB: - assert(!(nbytes%8)); - do_ecb_decrypt(c, outbuf, inbuf, nbytes/8 ); + assert(!(nbytes%c->blocksize)); + do_ecb_decrypt(c, outbuf, inbuf, nbytes/c->blocksize ); break; case CIPHER_MODE_CBC: - assert(!(nbytes%8)); /* fixme: should assert on blocksize */ - do_cbc_decrypt(c, outbuf, inbuf, nbytes/8 ); + assert(!(nbytes%c->blocksize)); + do_cbc_decrypt(c, outbuf, inbuf, nbytes/c->blocksize ); break; case CIPHER_MODE_CFB: case CIPHER_MODE_PHILS_CFB: diff --git a/cipher/rndw32.c b/cipher/rndw32.c index 059cd6bc2..e951fdf6e 100644 --- a/cipher/rndw32.c +++ b/cipher/rndw32.c @@ -311,8 +311,8 @@ gather_random_fast( void (*add)(const void*, size_t, int), int requester ) #ifndef IOCTL_DISK_PERFORMANCE #define IOCTL_DISK_PERFORMANCE 0x00070020 #endif -#ifndef IOCTL_DISK_PERFORMANCE -#define VER_PLATFORM_WIN32_WINDOWSw 1 +#ifndef VER_PLATFORM_WIN32_WINDOWS +#define VER_PLATFORM_WIN32_WINDOWS 1 #endif typedef struct { diff --git a/configure.in b/configure.in index e96ebdb02..7039c47ff 100644 --- a/configure.in +++ b/configure.in @@ -130,12 +130,6 @@ dnl Setup some stuff depending on host/target. dnl case "${target}" in *-*-mingw32*) - # special stuff for Windoze NT - # Do we need to set cross_compiling here or is it sufficient - # to rely on AC_PROG_CC which is called later? - CC="${target}-gcc" - CPP="${target}-gcc -E" - RANLIB="${target}-ranlib" disallowed_modules="rndunix rndlinux rndegd" ;; *) diff --git a/doc/ChangeLog b/doc/ChangeLog index 8f0905634..e7759a070 100644 --- a/doc/ChangeLog +++ b/doc/ChangeLog @@ -1,3 +1,7 @@ +2001-01-18 Werner Koch + + * README.W32: Changed building instructions for MinGW32/CPD 0.3 + 2001-01-09 Werner Koch * DETAILS: Fixed docs for NEED_PASSPHRASE and added USERID_HINT. diff --git a/doc/README.W32 b/doc/README.W32 index 0821c7749..f14e523a3 100644 --- a/doc/README.W32 +++ b/doc/README.W32 @@ -69,19 +69,18 @@ Instructions are at the top of this file. To build it, you need the MingW32/CPD kit, which is available at - ftp://ftp.openit.de/pub/cpd/mingw32-cpd-0.2.4.tar.gz - ftp://ftp.openit.de/pub/cpd/gcc-core-2.95.2.tar.gz - ftp://ftp.openit.de/pub/cpd/binutils-2.9.1.tar.gz - ftp://ftp.openit.de/pub/cpd/windows32api-0.1.2.tar.gz + ftp://ftp.guug.de/members/wkoch/cpd/mingw32-cpd-0.3.0.tar.gz + ftp://ftp.guug.de/members/wkoch/cpd/gcc-core-2.95.2.tar.gz + ftp://ftp.guug.de/members/wkoch/cpd/binutils-2.9.1.tar.gz -gcc, binutils and windows32api are stock GNU source which are available -at every GNU mirror. +gcc and binutils are stock GNU source which are available +at every GNU mirror. After you have installed this environment you should be able to do this: - $ ./configure --target=i386--mingw32 + $ scripts/autogen.sh --build-w32 $ make - $ i386--mingw32-strip g10/gpg + $ mingw32 strip g10/gpg $ cp g10/gpg /some_windows_drive/gpg.exe And everything hopefully works. @@ -94,3 +93,4 @@ Be the source always with you. Werner + diff --git a/g10/ChangeLog b/g10/ChangeLog index e1c3c4a24..a060710bc 100644 --- a/g10/ChangeLog +++ b/g10/ChangeLog @@ -1,3 +1,9 @@ +2001-01-12 Werner Koch + + * passphrase.c (passphrase_to_dek): Use MD5 when IDEA is installed + and we have no S2K. + * mainproc.c (proc_encrypted): Likewise + 2001-01-11 Werner Koch * sig-check.c (do_check): Print the signature key expire message diff --git a/g10/mainproc.c b/g10/mainproc.c index 1e780de4a..bb990a032 100644 --- a/g10/mainproc.c +++ b/g10/mainproc.c @@ -408,9 +408,11 @@ proc_encrypted( CTX c, PACKET *pkt ) if( opt.list_only ) result = -1; else if( !c->dek && !c->last_was_session_key ) { + int def_algo; /* assume this is old conventional encrypted data - * Actually we should use IDEA and MD5 in this case, but because - * IDEA is patented we can't do so */ + * We use IDEA here if it is installed */ + def_algo = check_cipher_algo (CIPHER_ALGO_IDEA)? + DEFAULT_CIPHER_ALGO : CIPHER_ALGO_IDEA; c->dek = passphrase_to_dek( NULL, 0, opt.def_cipher_algo ? opt.def_cipher_algo : DEFAULT_CIPHER_ALGO, NULL, 0 ); diff --git a/g10/passphrase.c b/g10/passphrase.c index 67db368e4..395703c03 100644 --- a/g10/passphrase.c +++ b/g10/passphrase.c @@ -509,14 +509,16 @@ passphrase_to_dek( u32 *keyid, int pubkey_algo, STRING2KEY help_s2k; if( !s2k ) { + int def_algo; + s2k = &help_s2k; s2k->mode = 0; - /* this should be MD5 if cipher is IDEA, but because we do - * not have IDEA, we use the default one, the user - * can select it from the commandline - */ - s2k->hash_algo = opt.def_digest_algo?opt.def_digest_algo - :DEFAULT_DIGEST_ALGO; + /* If we have IDEA installed we use MD5 otherwise the default + * hash algorithm. This can always be overriden from the + * commandline */ + def_algo = check_cipher_algo (CIPHER_ALGO_IDEA)? + DEFAULT_DIGEST_ALGO : DIGEST_ALGO_MD5; + s2k->hash_algo = opt.def_digest_algo? opt.def_digest_algo : def_algo; } if( !next_pw && is_status_enabled() ) { diff --git a/po/ChangeLog b/po/ChangeLog index d3e90cca6..6870f8e98 100644 --- a/po/ChangeLog +++ b/po/ChangeLog @@ -1,3 +1,7 @@ +2001-01-14 Werner Koch + + * de.po, de.glo: Updated. + 2000-12-19 Werner Koch * pl.po: Updated. diff --git a/po/de.glo b/po/de.glo index 92780ebd3..3f2d3426a 100644 --- a/po/de.glo +++ b/po/de.glo @@ -20,6 +20,8 @@ # 7. Die erste genannte Übersetzung ist die in de.po verwendete + +Agent Agent aka alias algorithm Verfahren anonymous ungenannter @@ -27,13 +29,14 @@ argument > Argument armor ASCII-Hülle associate with a person zufällig, >gelegentlich >unregelmäßig certificate Zertifikat , (Urkunde) @@ -63,11 +66,12 @@ default option löschen depend on >sich verlassen auf,>angewiesen sein auf,>abhängen von -depreciated taugt nicht mehr viel +depreciated - taugt nicht mehr viel determined attacker >zielbewusster,>entschlossener Angreifer digest algorithm Hashmethode disabled abgeschaltet encrypted verschlüsselte +enviorement variable Umgebungsvariable eventually >schließlich, endlich Nicht: eventuell expiration date anderen zeigen revocation Widerruf <*>Rückruf revocation certificate *Sicherheitsbedüfnis(se), >Sicherheitsbedarf self-signature Eigenbeglaubigung sender Absender +session Sitzung sign user id User-ID beglaubigen * +signed unterschriebene signature (files) Unterschrift * signature (keys) Beglaubigung * simple S2K mode ???? diff --git a/po/de.po b/po/de.po index fd1776852..113837009 100644 --- a/po/de.po +++ b/po/de.po @@ -4,8 +4,8 @@ msgid "" msgstr "" "Project-Id-Version: gnupg 1.0.0h\n" -"POT-Creation-Date: 2001-01-11 13:11+0100\n" -"PO-Revision-Date: 2000-10-15 14:30+0200\n" +"POT-Creation-Date: 2001-01-13 02:25+0000\n" +"PO-Revision-Date: 2001-01-13 17:10+0100\n" "Last-Translator: Walter Koch \n" "Language-Team: German \n" "MIME-Version: 1.0\n" @@ -551,7 +551,7 @@ msgstr "Keine wirklichen #. { oInteractive, "interactive", 0, N_("prompt before overwriting") }, #: g10/g10.c:287 msgid "use the gpg-agent" -msgstr "" +msgstr "verwende den GPG-Agent" #: g10/g10.c:288 msgid "batch mode: never ask" @@ -1085,7 +1085,7 @@ msgid "" "No path leading to one of our keys found.\n" "\n" msgstr "" -"Kein Pfad führt zu einen unserer Schlüsseln.\n" +"Kein Pfad führt zu einem unserer Schlüsseln.\n" "\n" #: g10/pkclist.c:437 @@ -1093,7 +1093,7 @@ msgid "" "No certificates with undefined trust found.\n" "\n" msgstr "" -"Keine Zertifikate mit undefinierten Vertrauen gefunden.\n" +"Keine Zertifikate mit undefiniertem Vertrauen gefunden.\n" "\n" #: g10/pkclist.c:439 @@ -1895,7 +1895,7 @@ msgstr "Schl #: g10/import.c:593 #, c-format msgid "secret key %08lX not imported (use %s to allow for it)\n" -msgstr "" +msgstr "Geheimer Schlüssel %08lX nicht importiert (%s verwenden, um das zu ermöglichen)\n" #: g10/import.c:623 #, c-format @@ -2686,9 +2686,8 @@ msgid "Can't check signature: %s\n" msgstr "Unterschrift kann nicht geprüft werden: %s\n" #: g10/mainproc.c:1421 g10/mainproc.c:1436 g10/mainproc.c:1498 -#, fuzzy msgid "not a detached signature\n" -msgstr "Eine abgetrennte Unterschrift erzeugen" +msgstr "keine abgetrennte Unterschrift\n" #: g10/mainproc.c:1447 #, c-format @@ -2713,11 +2712,9 @@ msgid "Experimental algorithms should not be used!\n" msgstr "Experimentiermethoden sollten nicht benutzt werden!\n" #: g10/misc.c:237 -#, fuzzy -msgid "this cipher algorithm is deprecated; please use a more standard one!x\n" +msgid "this cipher algorithm is deprecated; please use a more standard one!\n" msgstr "" -"Diese Verschlüsselungsmethode taugt nicht mehr viel; verwenden Sie eine " -"stärker standardisierte Methode!\n" +"Es ist davon abzuraten, diese Verschlüsselungsmethode zu benutzen!\n" #: g10/parse-packet.c:119 #, c-format @@ -2731,11 +2728,11 @@ msgstr "Im Unterpaket des Typs %d ist das \"critical bit\" gesetzt\n" #: g10/passphrase.c:223 msgid "gpg-agent is not available in this session\n" -msgstr "" +msgstr "GPG-Agent ist in dieser Sitzung nicht vorhanden\n" #: g10/passphrase.c:229 msgid "malformed GPG_AGENT_INFO environment variable\n" -msgstr "" +msgstr "fehlerhaft aufgebaute GPG_AGENT_INFO - Umgebungsvariable\n" #: g10/hkp.c:170 g10/passphrase.c:248 #, c-format @@ -2748,42 +2745,41 @@ msgid " (main key ID %08lX)" msgstr " (Hauptschlüssel-ID %08lX)" #: g10/passphrase.c:323 -#, fuzzy, c-format +#, c-format msgid "" "You need a passphrase to unlock the secret key for user:\n" "\"%.*s\"\n" "%u-bit %s key, ID %08lX, created %s%s\n" msgstr "" -"\n" "Sie benötigen ein Mantra, um den geheimen Schlüssel zu entsperren.\n" "Benutzer: \"" +"\"%.*s\"\n" +"%u-bit %s Schlüssel, ID %08lX, erzeugt %s%s\n" #: g10/passphrase.c:344 -#, fuzzy msgid "Enter passphrase\n" -msgstr "Geben Sie das Mantra ein: " +msgstr "Geben Sie das Mantra ein\n" #: g10/passphrase.c:346 -#, fuzzy msgid "Repeat passphrase\n" -msgstr "Geben Sie das Mantra nochmal ein: " +msgstr "Geben Sie das Mantra nochmal ein\n" #: g10/passphrase.c:384 msgid "passphrase too long\n" -msgstr "" +msgstr "Mantra ist zu lang\n" #: g10/passphrase.c:396 msgid "invalid response from agent\n" -msgstr "" +msgstr "Falsche Antwort des Agenten\n" #: g10/passphrase.c:405 msgid "cancelled by user\n" -msgstr "" +msgstr "Abbruch durch Benutzer\n" #: g10/passphrase.c:408 g10/passphrase.c:477 #, c-format msgid "problem with the agent: agent returns 0x%lx\n" -msgstr "" +msgstr "Schwierigkeiten mit dem Agenten: Agent antwortet 0x%lx\n" #: g10/passphrase.c:560 msgid "" @@ -2830,9 +2826,8 @@ msgid "reading stdin ...\n" msgstr "lese stdin ...\n" #: g10/plaintext.c:383 -#, fuzzy msgid "no signed data\n" -msgstr "kann signierte Datei '%s' nicht öffnen.\n" +msgstr "keine unterschriebene Daten\n" #: g10/plaintext.c:391 #, c-format @@ -2946,9 +2941,9 @@ msgstr "" "Öffentlicher Schlüssel ist um %lu Sekunden jünger als die Unterschrift\n" #: g10/sig-check.c:328 -#, fuzzy, c-format +#, c-format msgid "NOTE: signature key %08lX expired %s\n" -msgstr "Hinweis: Schlüssel der Signatur ist verfallen am %s.\n" +msgstr "Hinweis: Signaturschlüssel %08lX ist am %s verfallen.\n" #: g10/sig-check.c:398 msgid "assuming bad signature due to an unknown critical bit\n" @@ -3867,13 +3862,6 @@ msgstr "Keine Hilfe f #~ msgid "no secret key for decryption available\n" #~ msgstr "kein geheimer Schlüssel zur Entschlüsselung vorhanden\n" -#~ msgid "" -#~ "RSA keys are deprecated; please consider creating a new key and use this key " -#~ "in the future\n" -#~ msgstr "" -#~ "RSA Schlüssel sind nicht erwünscht; bitte denken Sie darüber nach, einen\n" -#~ "neuen Schlüssel zu erzeugen und diesen in Zukunft zu benutzen\n" - #~ msgid " (%d) ElGamal in a v3 packet\n" #~ msgstr " (%d) ElGamal in einem v3-Paket\n" diff --git a/scripts/ChangeLog b/scripts/ChangeLog index dc6c227b7..a23ef5c70 100644 --- a/scripts/ChangeLog +++ b/scripts/ChangeLog @@ -1,3 +1,8 @@ +2001-01-18 Werner Koch + + * autogen.sh: New options --build-w32 + * build-w32: Does now call autogen.sh + 2000-11-24 Werner Koch * build-w32: New script to build the W32 version. diff --git a/scripts/autogen.sh b/scripts/autogen.sh index e1ed0f645..07a1f5903 100755 --- a/scripts/autogen.sh +++ b/scripts/autogen.sh @@ -2,12 +2,64 @@ # Run this to generate all the initial makefiles, etc. PGM=GnuPG -DIE=no - +lib_config_files="" autoconf_vers=2.13 automake_vers=1.4 aclocal_vers=1.4 + +DIE=no +if test "$1" = "--build-w32"; then + shift + target=i386--mingw32 + if [ ! -f scripts/config.guess ]; then + echo "scripts/config.guess not found" >&2 + exit 1 + fi + host=`scripts/config.guess` + + if ! mingw32 --version >/dev/null; then + echo "We need at least version 0.3 of MingW32/CPD" >&2 + exit 1 + fi + + if [ -f config.h ]; then + if grep HAVE_DOSISH_SYSTEM config.h | grep undef >/dev/null; then + echo "Pease run a 'make distclean' first" >&2 + exit 1 + fi + fi + + crossbindir=`mingw32 --install-dir`/bin + CC=`mingw32 --get-path gcc` + CPP=`mingw32 --get-path cpp` + AR=`mingw32 --get-path ar` + RANLIB=`mingw32 --get-path ranlib` + export CC CPP AR RANLIB + + disable_foo_tests="" + if [ -n "$lib_config_files" ]; then + for i in $lib_config_files; do + j=`echo $i | tr '[a-z-]' '[A-Z_]'` + eval "$j=${crossbindir}/$i" + export $j + disable_foo_tests="$disable_foo_tests --disable-`echo $i| \ + sed 's,-config$,,'`-test" + if [ ! -f "${crossbindir}/$i" ]; then + echo "$i not installed for MingW32" >&2 + DIE=yes + fi + done + fi + [ $DIE = yes ] && exit 1 + + ./configure --host=${host} --target=${target} \ + ${disable_foo_tests} $* + exit $? +fi + + + if (autoconf --version) < /dev/null > /dev/null 2>&1 ; then if (autoconf --version | awk 'NR==1 { if( $3 >= '$autoconf_vers') \ exit 1; exit 0; }');