bug fixes
authorWerner Koch <wk@gnupg.org>
Fri, 26 Jun 1998 09:45:36 +0000 (09:45 +0000)
committerWerner Koch <wk@gnupg.org>
Fri, 26 Jun 1998 09:45:36 +0000 (09:45 +0000)
12 files changed:
THANKS
VERSION
g10/ChangeLog
g10/keygen.c
mpi/ChangeLog
mpi/mpiutil.c
po/ChangeLog
po/it.po
util/ChangeLog
util/secmem.c
util/ttyio.c
zlib/Makefile

diff --git a/THANKS b/THANKS
index a1e3c72..84508bd 100644 (file)
--- a/THANKS
+++ b/THANKS
@@ -28,11 +28,12 @@ Thomas Roessler     roessler@guug.de
 Tom Spindler           dogcow@home.merit.edu
 Tom Zerucha            tzeruch@ceddec.com
 Tomas Fasth            tomas.fasth@twinspot.net
+Thomas Mikkelsen       tbm@image.dk
 Ulf Möller             3umoelle@informatik.uni-hamburg.de
 Walter Koch            walterk@ddorf.rhein-ruhr.de
 Werner Koch            werner.koch@guug.de
 Wim Vandeputte         bunbun@reptile.rug.ac.be
-
+                       nbecker@hns.com
 
 Thanks to the German Unix User Group for providing FTP space and
 Martin Hamilton for hosting the mailing list.
diff --git a/VERSION b/VERSION
index 0d91a54..00d33e8 100644 (file)
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-0.3.0
+0.3.0a
index 1e110ef..e7e9ac7 100644 (file)
@@ -1,3 +1,7 @@
+Fri Jun 26 10:37:35 1998  Werner Koch  (wk@isil.d.shuttle.de)
+
+       * keygen.c (has_invalid_email_chars): New.
+
 Wed Jun 24 16:40:22 1998  Werner Koch  (wk@isil.d.shuttle.de)
 
        * armor.c (armor_filter): Now creates valid onepass_sig packets
index b79f9b9..a16846d 100644 (file)
@@ -519,6 +519,7 @@ ask_valid_days()
        if( !valid_days )
            tty_printf(_("Key does not expire at all\n"));
        else {
+           /* print the date when the key expires */
            tty_printf(_("Key expires at %s\n"), strtimestamp(
                       add_days_to_timestamp( make_timestamp(), valid_days )));
        }
@@ -534,6 +535,19 @@ ask_valid_days()
 }
 
 
+static int
+has_invalid_email_chars( const char *s )
+{
+    for( ; *s; s++ ) {
+       if( *s & 0x80 )
+           return 1;
+       if( !strchr("01234567890abcdefghijklmnopqrstuvwxyz_-.@", *s ) )
+           return 1;
+    }
+    return 0;
+}
+
+
 static char *
 ask_user_id()
 {
@@ -573,7 +587,7 @@ ask_user_id()
                tty_kill_prompt();
                if( !*amail )
                    break;   /* no email address is okay */
-               else if( strcspn( amail, "abcdefghijklmnopqrstuvwxyz_-.@" )
+               else if( has_invalid_email_chars(amail)
                         || string_count_chr(amail,'@') != 1
                         || *amail == '@'
                         || amail[strlen(amail)-1] == '@'
index 0519495..a52381d 100644 (file)
@@ -1,3 +1,9 @@
+Fri Jun 26 11:19:06 1998  Werner Koch  (wk@isil.d.shuttle.de)
+
+       * mpiutil.c (mpi_alloc): set nbits to 0.
+       (mpi_alloc_secure): Ditto.
+       (mpi_clear): Ditto.
+
 Thu Jun 25 11:50:01 1998  Werner Koch  (wk@isil.d.shuttle.de)
 
        * mips3/*.S: New
index 92b1653..231e5d5 100644 (file)
@@ -64,6 +64,7 @@ mpi_alloc( unsigned nlimbs )
     a->nlimbs = 0;
     a->sign = 0;
     a->flags = 0;
+    a->nbits = 0;
     return a;
 }
 
@@ -96,6 +97,7 @@ mpi_alloc_secure( unsigned nlimbs )
     a->flags |= 1;
     a->nlimbs = 0;
     a->sign = 0;
+    a->nbits = 0;
     return a;
 }
 
@@ -175,6 +177,7 @@ void
 mpi_clear( MPI a )
 {
     a->nlimbs = 0;
+    a->nbits = 0;
 }
 
 
index 37c3263..e42ffac 100644 (file)
@@ -1,3 +1,7 @@
+Fri Jun 26 11:44:24 1998  Werner Koch  (wk@isil.d.shuttle.de)
+
+       * it.po: New file from Marco.
+
 Thu May 28 10:44:25 1998  Werner Koch  (wk@isil.d.shuttle.de)
 
        * it.po: Add small corrections from Marco
index f8499cb..784df63 100644 (file)
--- a/po/it.po
+++ b/po/it.po
@@ -1,6 +1,6 @@
 msgid ""
 msgstr ""
-"POT-Creation-Date: 1998-03-12 23:23+0100\n"
+"POT-Creation-Date: 1998-06-25 22:06+0200\n"
 "Content-Type: text/plain; charset=iso-8859-1\n"
 "Date: 1998-03-07 12:16:14+0100\n"
 "From: Marco d'Itri <md@linux.it>\n"
@@ -12,38 +12,7 @@ msgstr ""
 msgid "Warning: using insecure memory!\n"
 msgstr "Attenzione: si sta usando memoria insicura!\n"
 
-#: cipher/random.c:419
-#, c-format
-msgid ""
-"\n"
-"Not enough random bytes available.  Please do some other work to give\n"
-"the OS a chance to collect more entropy! (Need %d more bytes)\n"
-msgstr ""
-"\n"
-"Non ci sono abbastanza byte casuali disponibili. Per favore fai\n"
-"qualche altro lavoro per dare al sistema operativo la possibilità di\n"
-"raccogliere altra entropia! (Servono ancora %d byte)\n"
-
-#: cipher/random.c:459
-msgid "warning: using insecure random number generator!!\n"
-msgstr "Attenzione: si sta usando un generatore di numeri casuali insicuro!!\n"
-
-# #### Md - kludge?
-#: cipher/random.c:460
-msgid ""
-"The random number generator is only a kludge to let\n"
-"it compile - it is in no way a strong RNG!\n"
-"\n"
-"DON'T USE ANY DATA GENERATED BY THIS PROGRAM!!\n"
-"\n"
-msgstr ""
-"Il generatore di numeri casuali è solo un ripiego usato\n"
-"per compilare il programma - non è assolutamente un forte RNG!\n"
-"\n"
-"NON USARE ALCUN DATO GENERATO DA QUESTO PROGRAMMA!!\n"
-"\n"
-
-#: g10/g10.c:57
+#: g10/g10.c:51
 msgid ""
 "@Commands:\n"
 " "
@@ -51,103 +20,115 @@ msgstr ""
 "@Comandi:\n"
 " "
 
-#: g10/g10.c:60
-msgid "make a signature"
-msgstr "fai una firma"
+#: g10/g10.c:54
+msgid "|[file]|make a signature"
+msgstr "|[file]|fai una firma"
 
-#: g10/g10.c:61
-msgid "make a clear text signature"
-msgstr "fai una firma mantenendo il testo in chiaro"
+#: g10/g10.c:55
+msgid "|[file]|make a clear text signature"
+msgstr "|[file]|fai una firma mantenendo il testo in chiaro"
 
-#: g10/g10.c:62
+#: g10/g10.c:56
 msgid "make a detached signature"
 msgstr "fai una firma separata"
 
-#: g10/g10.c:63
+#: g10/g10.c:57
 msgid "encrypt data"
 msgstr "cifra dati"
 
-#: g10/g10.c:64
+#: g10/g10.c:58
 msgid "encryption only with symmetric cipher"
 msgstr "cifra solo con un cifrario simmetrico"
 
-#: g10/g10.c:65
+#: g10/g10.c:59
 msgid "store only"
 msgstr "immagazzina soltanto"
 
-#: g10/g10.c:66
+#: g10/g10.c:60
 msgid "decrypt data (default)"
 msgstr "decifra dati (predefinito)"
 
-#: g10/g10.c:67
+#: g10/g10.c:61
 msgid "verify a signature"
 msgstr "verifica una firma"
 
-#: g10/g10.c:69
+#: g10/g10.c:63
 msgid "list keys"
 msgstr "elenca le chiavi"
 
-#: g10/g10.c:70
+#: g10/g10.c:64
 msgid "list keys and signatures"
 msgstr "elenca le chiavi e le firme"
 
-#: g10/g10.c:71
+#: g10/g10.c:65
 msgid "check key signatures"
 msgstr "controlla le firme delle chiavi"
 
-#: g10/g10.c:72
+#: g10/g10.c:66
 msgid "list keys and fingerprints"
 msgstr "elenca le chiavi e le impronte digitali"
 
-#: g10/g10.c:74
+#: g10/g10.c:67
+msgid "list secret keys"
+msgstr "elenca le chiavi segrete"
+
+#: g10/g10.c:69
 msgid "generate a new key pair"
 msgstr "genera una nuova coppia di chiavi"
 
-#: g10/g10.c:75
+#: g10/g10.c:70
+msgid "add a subkey to a key pair"
+msgstr "aggiungi una sottochiave a una coppia di chiavi"
+
+#: g10/g10.c:71
 msgid "make a signature on a key in the keyring"
 msgstr "firma una chiave nel portachiavi"
 
-#: g10/g10.c:76
+#: g10/g10.c:72
 msgid "remove key from the public keyring"
 msgstr "rimuove una chiave dal portachiavi pubblico"
 
-#: g10/g10.c:77
+#: g10/g10.c:73
 msgid "edit a key signature"
 msgstr "modifica la firma di una chiave"
 
-#: g10/g10.c:78
+#: g10/g10.c:74
 msgid "change the passphrase of your secret keyring"
 msgstr "cambia la passphrase del tuo portachiavi segreto"
 
-#: g10/g10.c:79
+#: g10/g10.c:75
 msgid "generate a revocation certificate"
 msgstr "genera un certificato di revoca"
 
-#: g10/g10.c:81
+#: g10/g10.c:77
 msgid "export keys"
 msgstr "esporta delle chiavi"
 
-#: g10/g10.c:82
+#: g10/g10.c:78
 msgid "import/merge keys"
 msgstr "importa/aggiungi delle chiavi"
 
-#: g10/g10.c:83
+#: g10/g10.c:79
 msgid "list only the sequence of packets"
 msgstr "elenca solo la sequenza dei pacchetti"
 
-#: g10/g10.c:85
+#: g10/g10.c:81
 msgid "De-Armor a file or stdin"
 msgstr "rimuovi l'armatura a un file o a stdin"
 
-#: g10/g10.c:86
+#: g10/g10.c:82
 msgid "En-Armor a file or stdin"
 msgstr "crea l'armatura a un file o a stdin"
 
-#: g10/g10.c:87
+#: g10/g10.c:83
+msgid "|algo [files]|print message digests"
+msgstr "|algo [files]|stampa tutti i message digests"
+
+#: g10/g10.c:84
 msgid "print all message digests"
 msgstr "stampa tutti i message digests"
 
-#: g10/g10.c:92
+#: g10/g10.c:89
 msgid ""
 "@\n"
 "Options:\n"
@@ -157,99 +138,111 @@ msgstr ""
 "Opzioni:\n"
 " "
 
-#: g10/g10.c:95
+#: g10/g10.c:91
 msgid "create ascii armored output"
 msgstr "crea un output ascii con armatura"
 
-#: g10/g10.c:96
+#: g10/g10.c:93
 msgid "use this user-id to sign or decrypt"
 msgstr "usa questo user-id per firmare o decifrare"
 
-#: g10/g10.c:97
+#: g10/g10.c:94
 msgid "use this user-id for encryption"
 msgstr "usa questo user-id per cifrare"
 
-#: g10/g10.c:98
-msgid "set compress level (0 disables)"
-msgstr "imposta il livello di compressione (0 disabilita)"
+#: g10/g10.c:95
+msgid "|N|set compress level N (0 disables)"
+msgstr "|N|imposta il livello di compressione (0 disabilita)"
 
-#: g10/g10.c:99
+#: g10/g10.c:96
 msgid "use canonical text mode"
 msgstr "usa il modo testo canonico"
 
-#: g10/g10.c:101
+#: g10/g10.c:98
 msgid "use as output file"
 msgstr "usa come file di output"
 
-#: g10/g10.c:102
+#: g10/g10.c:99
 msgid "verbose"
 msgstr "prolisso"
 
-#: g10/g10.c:103
+#: g10/g10.c:100
 msgid "do not make any changes"
 msgstr "non fare cambiamenti"
 
-#: g10/g10.c:104
+#: g10/g10.c:101
 msgid "batch mode: never ask"
 msgstr "modo batch: non fare domande"
 
-#: g10/g10.c:105
+#: g10/g10.c:102
 msgid "assume yes on most questions"
 msgstr "assumi \"sì\" a quasi tutte le domande"
 
-#: g10/g10.c:106
+#: g10/g10.c:103
 msgid "assume no on most questions"
 msgstr "assumi \"no\" a quasi tutte le domande"
 
-#: g10/g10.c:107
+#: g10/g10.c:104
 msgid "add this keyring to the list of keyrings"
 msgstr "aggiungi questo portachiavi alla lista"
 
-#: g10/g10.c:108
+#: g10/g10.c:105
 msgid "add this secret keyring to the list"
 msgstr "aggiungi questo portachiavi segreto alla lista"
 
-#: g10/g10.c:109
+#: g10/g10.c:106
 msgid "read options from file"
 msgstr "leggi le opzioni dal file"
 
-#: g10/g10.c:111
+#: g10/g10.c:108
 msgid "set debugging flags"
 msgstr "imposta i flag di debugging"
 
-#: g10/g10.c:112
+#: g10/g10.c:109
 msgid "enable full debugging"
 msgstr "abilita il debugging completo"
 
-#: g10/g10.c:113
-msgid "write status info to this fd"
-msgstr "scrivi le informazioni di stato su questo fd"
+#: g10/g10.c:110
+msgid "|FD|write status info to this FD"
+msgstr "|FD|scrivi le informazioni di stato su questo fd"
 
-#: g10/g10.c:114
+#: g10/g10.c:111
 msgid "do not write comment packets"
 msgstr "non scrivere pacchetti di commento"
 
-#: g10/g10.c:115
+#: g10/g10.c:112
 msgid "(default is 1)"
 msgstr "(predefinito è 1)"
 
-#: g10/g10.c:116
+#: g10/g10.c:113
 msgid "(default is 3)"
 msgstr "(predefinito è 3)"
 
+#: g10/g10.c:114
+msgid "|file|load extension module"
+msgstr "|file|carica un modulo di estensione"
+
+#: g10/g10.c:115
+msgid "emulate the mode described in RFC1991"
+msgstr "emula il modo descritto nel RFC1991"
+
+#: g10/g10.c:117
+msgid "|NAME|use cipher algorithm NAME"
+msgstr "|NAME|seleziona l'algoritmo di cifratura predefinito"
+
 #: g10/g10.c:118
-msgid "select default cipher algorithm"
-msgstr "seleziona l'algoritmo di cifratura predefinito"
+msgid "|NAME|use public key algorithm NAME"
+msgstr "|NAME|seleziona l'algoritmo a chiave pubblica predefinito"
 
 #: g10/g10.c:119
-msgid "select default public key algorithm"
-msgstr "seleziona l'algoritmo a chiave pubblica predefinito"
+msgid "|NAME|use message digest algorithm NAME"
+msgstr "|NAME|seleziona l'algoritmo di message digest predefinito"
 
 #: g10/g10.c:120
-msgid "select default message digest algorithm"
-msgstr "seleziona l'algoritmo di message digest predefinito"
+msgid "|N|use compress algorithm N"
+msgstr "|N|usa l'algoritmo di compressione N"
 
-#: g10/g10.c:124
+#: g10/g10.c:129
 msgid ""
 "@\n"
 "Examples:\n"
@@ -269,19 +262,19 @@ msgstr ""
 " -k   [userid]              mostra le chiavi\n"
 " -kc  [userid]              mostra le impronte digitali\n"
 
-#: g10/g10.c:201
-msgid "Please report bugs to <gnupg-bugs@isil.d.shuttle.de>.\n"
-msgstr "Per favore segnala i bug a <gnupg-bugs@isil.d.shuttle.de>.\n"
+#: g10/g10.c:210
+msgid "Please report bugs to <gnupg-bugs@gnu.org>.\n"
+msgstr "Per favore segnala i bug a <gnupg-bugs@gnu.org>.\n"
 
-#: g10/g10.c:206
+#: g10/g10.c:215
 msgid "Usage: gpgm [options] [files] (-h for help)"
 msgstr "Uso: gpgm [opzioni] [file] (-h per l'aiuto)"
 
-#: g10/g10.c:208
+#: g10/g10.c:217
 msgid "Usage: gpg [options] [files] (-h for help)"
 msgstr "Uso: gpg [opzioni] [file] (-h per l'aiuto)"
 
-#: g10/g10.c:213
+#: g10/g10.c:222
 msgid ""
 "Syntax: gpgm [options] [files]\n"
 "GNUPG maintenance utility\n"
@@ -289,7 +282,7 @@ msgstr ""
 "Sintassi: gpgm [opzioni] [file]\n"
 "Utility di manutenzione di GNUPG\n"
 
-#: g10/g10.c:216
+#: g10/g10.c:225
 msgid ""
 "Syntax: gpg [options] [files]\n"
 "sign, check, encrypt or decrypt\n"
@@ -299,132 +292,142 @@ msgstr ""
 "firma, controlla, cifra o decifra\n"
 "l'operazione predefinita dipende dai dati di input\n"
 
-#: g10/g10.c:293
+#: g10/g10.c:302
 msgid "usage: gpgm [options] "
 msgstr "uso: gpgm [options] "
 
-#: g10/g10.c:295
+#: g10/g10.c:304
 msgid "usage: gpg [options] "
 msgstr "uso: gpg [options] "
 
-#: g10/g10.c:335
+#: g10/g10.c:345
 msgid "conflicting commands\n"
 msgstr "comandi in conflitto\n"
 
-#: g10/g10.c:348
+#: g10/g10.c:358
 msgid "selected cipher algorithm is invalid\n"
 msgstr "l'algoritmo di cifratura selezionato non è valido\n"
 
-#: g10/g10.c:350
+#: g10/g10.c:360
 msgid "selected pubkey algorithm is invalid\n"
 msgstr "l'algoritmo a chiave pubblica selezionato non è valido\n"
 
-#: g10/g10.c:352
+#: g10/g10.c:362
 msgid "selected digest algorithm is invalid\n"
 msgstr "l'algoritmo di digest selezionato non è valido\n"
 
-#: g10/g10.c:354
+#: g10/g10.c:364
+#, c-format
+msgid "compress algorithm must be in range %d..%d\n"
+msgstr "l'algoritmo di compressione deve essere tra %d e %d\n"
+
+#: g10/g10.c:366
 msgid "completes-needed must be greater than 0\n"
 msgstr "completes-needed deve essere maggiore di 0\n"
 
-#: g10/g10.c:356
+#: g10/g10.c:368
 msgid "marginals-needed must be greater than 1\n"
 msgstr "marginals-needed deve essere maggiore di 1\n"
 
-#: g10/g10.c:450
+#: g10/g10.c:465
 #, c-format
 msgid "note: no default option file '%s'\n"
 msgstr "nota: nessun file con opzioni predefinite '%s'\n"
 
-#: g10/g10.c:454
+#: g10/g10.c:469
 #, c-format
 msgid "option file '%s': %s\n"
 msgstr "file con opzioni predefinite '%s': %s\n"
 
-#: g10/g10.c:461
+#: g10/g10.c:476
 #, c-format
 msgid "reading options from '%s'\n"
 msgstr "lettura delle opzioni da '%s'\n"
 
-#: g10/g10.c:657
+#: g10/g10.c:696
 #, c-format
 msgid "failed to initialize the TrustDB: %s\n"
 msgstr "inizializzazione del TrustDB fallita: %s\n"
 
-#: g10/g10.c:663
+#: g10/g10.c:702
 msgid "--store [filename]"
 msgstr "--store [nomefile]"
 
-#: g10/g10.c:671
+#: g10/g10.c:710
 msgid "--symmetric [filename]"
 msgstr "--symmetric [nomefile]"
 
-#: g10/g10.c:679
+#: g10/g10.c:718
 msgid "--encrypt [filename]"
 msgstr "--encrypt [nomefile]"
 
-#: g10/g10.c:692
+#: g10/g10.c:731
 msgid "--sign [filename]"
 msgstr "--sign [nomefile]"
 
-#: g10/g10.c:705
+#: g10/g10.c:744
 msgid "--sign --encrypt [filename]"
 msgstr "--sign --encrypt [nomefile]"
 
-#: g10/g10.c:719
+#: g10/g10.c:758
 msgid "--clearsign [filename]"
 msgstr "--clearsign [nomefile]"
 
-#: g10/g10.c:731
+#: g10/g10.c:770
 msgid "--decrypt [filename]"
 msgstr "--decrypt [nomefile]"
 
-#: g10/g10.c:739
+#: g10/g10.c:778
 msgid "--sign-key username"
 msgstr ""
 
-#: g10/g10.c:747
+#: g10/g10.c:786
 msgid "--edit-sig username"
 msgstr ""
 
-#: g10/g10.c:755
+#: g10/g10.c:794
 msgid "--delete-secret-key username"
 msgstr ""
 
-#: g10/g10.c:758
+#: g10/g10.c:797
 msgid "--delete-key username"
 msgstr ""
 
 #. Change the passphrase
 #. no arg: use default, 1 arg use this one
-#: g10/g10.c:766
+#: g10/g10.c:805
 msgid "--change-passphrase [username]"
 msgstr ""
 
-#: g10/g10.c:787
+#: g10/g10.c:829
 #, c-format
 msgid "can't open %s: %s\n"
 msgstr "impossibile aprire '%s': %s\n"
 
-#: g10/g10.c:798
+#: g10/g10.c:840
 msgid "-k[v][v][v][c] [userid] [keyring]"
 msgstr "-k[v][v][v][c] [userid] [portachiavi]"
 
-#: g10/g10.c:845
+#: g10/g10.c:892
 #, c-format
 msgid "dearmoring failed: %s\n"
 msgstr "rimozione dell'armatura fallita: %s\n"
 
-#: g10/g10.c:853
+#: g10/g10.c:900
 #, c-format
 msgid "enarmoring failed: %s\n"
 msgstr "creazione dell'armatura fallita: %s\n"
 
-#: g10/g10.c:934
+#: g10/g10.c:956
+#, c-format
+msgid "invalid hash algorithm '%s'\n"
+msgstr ""
+
+#: g10/g10.c:1006
 msgid "[filename]"
 msgstr "[nomefile]"
 
-#: g10/g10.c:936
+#: g10/g10.c:1008
 #, c-format
 msgid "can't open '%s'\n"
 msgstr "impossibile aprire '%s'\n"
@@ -517,7 +520,11 @@ msgstr ""
 "prossima domanda.\n"
 "\n"
 
-#: g10/pkclist.c:304
+#: g10/pkclist.c:278
+msgid "WARNING: Using untrusted key!\n"
+msgstr ""
+
+#: g10/pkclist.c:308
 msgid ""
 "You did not specify a user ID. (you may use \"-r\")\n"
 "\n"
@@ -525,45 +532,56 @@ msgstr ""
 "Non hai specificato un user ID. (puoi usare \"-r\")\n"
 "\n"
 
-#: g10/pkclist.c:308
+#: g10/pkclist.c:312
 msgid "Enter the user ID: "
 msgstr "Inserisci l'user ID: "
 
-#: g10/keygen.c:109
+#: g10/keygen.c:122
 msgid "writing self signature\n"
 msgstr "scrittura della autofirma\n"
 
-#: g10/keygen.c:303
-msgid "Key generation can only be used in interactive mode\n"
-msgstr "Una chiave può essere generata solo in modo interattivo\n"
+#: g10/keygen.c:160
+msgid "writing key binding signature\n"
+msgstr "scrittura della autofirma\n"
 
-#: g10/keygen.c:307
-msgid ""
-"Please select the algorithm to use:\n"
-"   (1) ElGamal is the suggested one.\n"
-"   (2) DSA can only be used for signatures.\n"
-msgstr ""
-"Per favore seleziona l'algoritmo da usare:\n"
-"   (1) ElGamal è quello consigliato.\n"
-"   (2) DSA può essere usato solo per firmare.\n"
+#: g10/keygen.c:382
+msgid "Please select what kind of key you want:\n"
+msgstr "Per favore scegli che tipo di chiave vuoi:\n"
+
+#: g10/keygen.c:384
+#, c-format
+msgid "   (%d) DSA and ElGamal (default)\n"
+msgstr "   (%d) DSA e ElGamal (default)\n"
+
+#: g10/keygen.c:385
+#, c-format
+msgid "   (%d) ElGamal (sign and encrypt)\n"
+msgstr "   (%d) ElGamal (firma e crittografa)\n"
+
+#: g10/keygen.c:386
+#, c-format
+msgid "   (%d) ElGamal (encrypt only)\n"
+msgstr "   (%d) ElGamal (crittografa solo)\n"
 
-#: g10/keygen.c:311
-msgid "   (3) RSA cannot be used in the U.S.\n"
-msgstr "   (3) RSA non può essere usato negli USA.\n"
+#: g10/keygen.c:387
+#, c-format
+msgid "   (%d) DSA (sign only)\n"
+msgstr "   (%d) DSA (firma solo)\n"
 
-#: g10/keygen.c:320
-msgid "Your selection? (1,2,3) "
-msgstr "Cosa scegli? (1,2,3) "
+#: g10/keygen.c:388
+#, c-format
+msgid "   (%d) ElGamal in a v3 packet\n"
+msgstr "   (%d) ElGamal in un pacchetto v3\n"
 
-#: g10/keygen.c:322
-msgid "Your selection? (1,2) "
-msgstr "Cosa scegli? (1,2) "
+#: g10/keygen.c:392
+msgid "Your selection? "
+msgstr "Cosa scegli? "
 
-#: g10/keygen.c:336
-msgid "Sorry; DSA key generation is not yet supported.\n"
-msgstr "Mi spiace, DSA non è gestito.\n"
+#: g10/keygen.c:418
+msgid "Invalid selection.\n"
+msgstr "Scelta non valida.\n"
 
-#: g10/keygen.c:349
+#: g10/keygen.c:430
 #, c-format
 msgid ""
 "About to generate a new %s keypair.\n"
@@ -576,19 +594,19 @@ msgstr ""
 "          la dimensione predefinita è 1024 bit\n"
 "    la dimensione massima suggerita è 2048 bit\n"
 
-#: g10/keygen.c:357
+#: g10/keygen.c:436
 msgid "What keysize do you want? (1024) "
 msgstr "Di che dimensioni vuoi la chiave? (1024) "
 
-#: g10/keygen.c:363
+#: g10/keygen.c:441
 msgid "DSA only allows keysizes from 512 to 1024\n"
 msgstr "DSA permette solo chiavi di dimensioni da 512 a 1024\n"
 
-#: g10/keygen.c:365
+#: g10/keygen.c:443
 msgid "keysize too small; 768 is smallest value allowed.\n"
 msgstr "la chiave è troppo corta; 768 è il minimo valore permesso.\n"
 
-#: g10/keygen.c:367
+#: g10/keygen.c:445
 msgid ""
 "Keysizes larger than 2048 are not suggested, because computations take "
 "REALLY long!\n"
@@ -596,11 +614,11 @@ msgstr ""
 "Chiavi più lunghe di 2048 non sono consigliate, perchè i calcoli sono "
 "VERAMENTE lunghi!\n"
 
-#: g10/keygen.c:369
+#: g10/keygen.c:447
 msgid "Are you sure, that you want this keysize? "
 msgstr "Sei sicuro che vuoi una chiave di queste dimensioni? "
 
-#: g10/keygen.c:373
+#: g10/keygen.c:451
 msgid ""
 "Okay, but keep in mind that your monitor and keyboard radiation is also very "
 "vulnerable to attacks!\n"
@@ -608,20 +626,60 @@ msgstr ""
 "Va bene, ma ricordati che anche le radiazioni emesse dal tuo monitor e dalla "
 "tua tastiera sono molto vulnerabili ad attacchi!\n"
 
-#: g10/keygen.c:383
+#: g10/keygen.c:459
+msgid "Do you really need such a large keysize? "
+msgstr "Ti serve davvero una chiave così lunga? "
+
+#: g10/keygen.c:470
 #, c-format
 msgid "Requested keysize is %u bits\n"
 msgstr "Le dimensioni della chiave richieste sono %u bit\n"
 
-#: g10/keygen.c:386 g10/keygen.c:390
+#: g10/keygen.c:473 g10/keygen.c:477
 #, c-format
 msgid "rounded up to %u bits\n"
 msgstr "arrotondate a %u bit\n"
 
-#: g10/keygen.c:397
+#: g10/keygen.c:489
+msgid ""
+"Please specify how long the key should be valid.\n"
+"         0 = key does not expire\n"
+"      <n>  = key expires in n days\n"
+"      <n>w = key expires in n weeks\n"
+"      <n>m = key expires in n months\n"
+"      <n>y = key expires in n years\n"
+msgstr "Per favore specifica per quanto la chiave sarà valida.\n"
+"         0 = la chiave non scadrà\n"
+"      <n>w = la chiave scadrà dopo n giorni\n"
+"      <n>m = la chiave scadrà dopo n mesi\n"
+"      <n>y = la chiave scadrà dopo n anni\n"
+
+#: g10/keygen.c:504
+msgid "Key is valid for? (0) "
+msgstr "Chiave valida per? (0) "
+
+#: g10/keygen.c:515
+msgid "invalid value\n"
+msgstr "valore non valido\n"
+
+#: g10/keygen.c:520
+msgid "Key does not expire at all\n"
+msgstr "La chiave non scade\n"
+
+#: g10/keygen.c:522
+#, c-format
+msgid "Key expires at %s\n"
+msgstr "La chiave scadrà il %s\n"
+
+#: g10/keygen.c:527
+msgid "Is this correct (y/n)? "
+msgstr "È giusto (y/n)? "
+
+#: g10/keygen.c:543
 msgid ""
 "\n"
-"You need a User-ID to identify your key; the software constructs the user id\n"
+"You need a User-ID to identify your key; the software constructs the user "
+"id\n"
 "from Real Name, Comment and Email Address in this form:\n"
 "    \"Heinrich Heine (Der Dichter) <heinrichh@duesseldorf.de>\"\n"
 "\n"
@@ -633,39 +691,39 @@ msgstr ""
 "    \"Heinrich Heine (Der Dichter) <heinrichh@duesseldorf.de>\"\n"
 "\n"
 
-#: g10/keygen.c:409
+#: g10/keygen.c:554
 msgid "Real name: "
 msgstr "Nome e Cognome: "
 
-#: g10/keygen.c:413
+#: g10/keygen.c:558
 msgid "Invalid character in name\n"
 msgstr "Carattere non valido nel nome\n"
 
-#: g10/keygen.c:415
+#: g10/keygen.c:560
 msgid "Name may not start with a digit\n"
 msgstr "Il nome non può iniziare con una cifra\n"
 
-#: g10/keygen.c:417
+#: g10/keygen.c:562
 msgid "Name must be at least 5 characters long\n"
 msgstr "Il nome deve essere lungo almeno 5 caratteri\n"
 
-#: g10/keygen.c:425
+#: g10/keygen.c:570
 msgid "Email address: "
 msgstr "Indirizzo di Email: "
 
-#: g10/keygen.c:437
+#: g10/keygen.c:582
 msgid "Not a valid email address\n"
 msgstr "L'indirizzo di email non è valido\n"
 
-#: g10/keygen.c:445
+#: g10/keygen.c:590
 msgid "Comment: "
 msgstr "Commento: "
 
-#: g10/keygen.c:451
+#: g10/keygen.c:596
 msgid "Invalid character in comment\n"
 msgstr "Carattere non valido nel commento\n"
 
-#: g10/keygen.c:471
+#: g10/keygen.c:616
 #, c-format
 msgid ""
 "You selected this USER-ID:\n"
@@ -676,11 +734,11 @@ msgstr ""
 "    \"%s\"\n"
 "\n"
 
-#: g10/keygen.c:473
+#: g10/keygen.c:619
 msgid "Edit (N)ame, (C)omment, (E)mail or (O)kay? "
 msgstr "Modifica (N)ome, (C)ommento, (E)mail oppure (O)kay? "
 
-#: g10/keygen.c:505
+#: g10/keygen.c:658
 msgid ""
 "You need a Passphrase to protect your secret key.\n"
 "\n"
@@ -688,7 +746,11 @@ msgstr ""
 "Ti serve una passphrase per proteggere la tua chiave segreta.\n"
 "\n"
 
-#: g10/keygen.c:516
+#: g10/keygen.c:666
+msgid "passphrase not correctly repeated; try again.\n"
+msgstr "passphrase non ripetuta correttamente; riprova.\n"
+
+#: g10/keygen.c:672
 msgid ""
 "You don't want a passphrase - this is probably a *bad* idea!\n"
 "I will do it anyway.  You can change your passphrase at any time,\n"
@@ -700,21 +762,7 @@ msgstr ""
 "programma con l'opzione \"--change-passphrase\"\n"
 "\n"
 
-#: g10/keygen.c:522
-msgid "passphrase not correctly repeated; try again.\n"
-msgstr "passphrase non ripetuta correttamente; riprova.\n"
-
-#: g10/keygen.c:539
-#, c-format
-msgid "writing public certificate to '%s'\n"
-msgstr "scrittura del certificato pubblico in '%s'\n"
-
-#: g10/keygen.c:540
-#, c-format
-msgid "writing secret certificate to '%s'\n"
-msgstr "scrittura del certificato privato in '%s'\n"
-
-#: g10/keygen.c:552
+#: g10/keygen.c:693
 msgid ""
 "We need to generate a lot of random bytes. It is a good idea to perform\n"
 "some other action (work in another window, move the mouse, utilize the\n"
@@ -728,11 +776,43 @@ msgstr ""
 "generatore di numeri casuali la possibilità di raccogliere abbastanza\n"
 "entropia.\n"
 
-#: g10/keygen.c:688
+#: g10/keygen.c:739 g10/keygen.c:887
+msgid "Key generation can only be used in interactive mode\n"
+msgstr "Una chiave può essere generata solo in modo interattivo\n"
+
+#: g10/keygen.c:747
+msgid "DSA keypair will have 1024 bits.\n"
+msgstr "La coppia DSA avrà 1024 bit.\n"
+
+#: g10/keygen.c:759
+#, c-format
+msgid "writing public certificate to '%s'\n"
+msgstr "scrittura del certificato pubblico in '%s'\n"
+
+#: g10/keygen.c:760
+#, c-format
+msgid "writing secret certificate to '%s'\n"
+msgstr "scrittura del certificato privato in '%s'\n"
+
+#: g10/keygen.c:838
 msgid "public and secret key created and signed.\n"
 msgstr "chiavi pubbliche e segrete create e firmate.\n"
 
-#: g10/keygen.c:699
+#: g10/keygen.c:840
+msgid ""
+"Note that this key cannot be used for encryption.  You may want to use\n"
+"the command \"--add-key\" to generate a secondary key for this purpose.\n"
+msgstr ""
+"Nota che questa chiave non può essere usata per la crittografia. Forse\n"
+"vorrai usare il comando \"--add-key\" per generare una chiave secondaria\n"
+"per questo scopo.\n"
+
+#: g10/keygen.c:854 g10/keygen.c:1006
 #, c-format
 msgid "Key generation failed: %s\n"
 msgstr "Generazione della chiave fallita: %s\n"
+
+#: g10/keygen.c:1001
+msgid "public and secret subkey created.\n"
+msgstr "sottochiavi pubbliche e segrete create.\n"
+
index b2a1d21..e65a8d4 100644 (file)
@@ -1,3 +1,11 @@
+Fri Jun 26 10:38:35 1998  Werner Koch  (wk@isil.d.shuttle.de)
+
+       * ttyio.c (do_get): all iso8859-1 characters are now allowed.
+
+Thu Jun 25 15:57:21 1998  Werner Koch  (wk@isil.d.shuttle.de)
+
+       * secmem.c (lock_pool): Removed left over test code.
+
 Wed Jun 10 07:39:41 1998  Werner Koch,mobil,,, (wk@tobold)
 
        * fileutil.c (compare_filenames): New.
index ab4503d..b1d86eb 100644 (file)
@@ -71,7 +71,7 @@ lock_pool( void *p, size_t n )
     uid_t uid;
     int err;
 
-    err = -1; mlock( p, n );
+    err = mlock( p, n );
     if( err && errno )
        err = errno;
 
index 415de65..bb795c2 100644 (file)
@@ -230,6 +230,9 @@ do_get( const char *prompt, int hidden )
        c = *cbuf;
        if( c == '\t' )
            c = ' ';
+       else if( c > 0xa0 )
+           ; /* we don't allow 0xa0, as this is a protected blank which may
+              * confuse the user */
        else if( iscntrl(c) )
            continue;
        if( !(i < n-1) ) {
@@ -264,6 +267,9 @@ do_get( const char *prompt, int hidden )
        c = *cbuf;
        if( c == '\t' )
            c = ' ';
+       else if( c > 0xa0 )
+           ; /* we don't allow 0xa0, as this is a protected blank which may
+              * confuse the user */
        else if( iscntrl(c) )
            continue;
        if( !(i < n-1) ) {
index bc8f9ea..49bd6bc 100644 (file)
@@ -92,7 +92,7 @@ POSUB = po
 RANLIB = ranlib
 USE_INCLUDED_LIBINTL = yes
 USE_NLS = yes
-VERSION = 0.3.0
+VERSION = 0.3.0a
 ZLIBS = 
 l =