mirror of
git://git.gnupg.org/gnupg.git
synced 2024-06-18 00:49:50 +02:00
See ChangeLog: Wed Sep 1 15:30:44 CEST 1999 Werner Koch
This commit is contained in:
parent
88a916cdd4
commit
0428ca6da6
4
AUTHORS
4
AUTHORS
|
@ -56,11 +56,11 @@ Disclaimer. [ru?]
|
||||||
steuck@iname.com
|
steuck@iname.com
|
||||||
|
|
||||||
|
|
||||||
TRANSLATIONS Urko Lusa ??????????
|
TRANSLATIONS Urko Lusa Okay
|
||||||
es_ES.po
|
es_ES.po
|
||||||
|
|
||||||
|
|
||||||
TRANSLATIONS Thiago Jung Bauermann ????????????????
|
TRANSLATIONS Thiago Jung Bauermann Okay
|
||||||
pt_BR.po
|
pt_BR.po
|
||||||
jungmann@cwb.matrix.com.br
|
jungmann@cwb.matrix.com.br
|
||||||
|
|
||||||
|
|
30
INSTALL
30
INSTALL
|
@ -4,29 +4,35 @@ Please read the Basic Installation section somewhere below.
|
||||||
Configure options for GNUPG
|
Configure options for GNUPG
|
||||||
===========================
|
===========================
|
||||||
|
|
||||||
|
--enable-static-rnd=<name> Force the use of the random byte gathering
|
||||||
|
module <name>. Default is either to use /dev/random
|
||||||
|
or the standard Uix module. Value for name:
|
||||||
|
egd - Use the module which accesses the
|
||||||
|
Entropy Gathering Daemon. See the webpages
|
||||||
|
for more information about it.
|
||||||
|
unix - Use the standard Unix module which does not
|
||||||
|
have a very good performance.
|
||||||
|
linux - Use the module which accesses /dev/random.
|
||||||
|
This is the first choice and the default one
|
||||||
|
for GNU/Linux or *BSD.
|
||||||
|
none - Do not linkl any module in but rely on
|
||||||
|
a dynmically loaded modules.
|
||||||
|
|
||||||
--with-included-zlib Forces usage of the local zlib sources. Default is
|
--with-included-zlib Forces usage of the local zlib sources. Default is
|
||||||
to use the (shared) library of the system.
|
to use the (shared) library of the system.
|
||||||
|
|
||||||
--with-included-gettext Forces usage of the local gettext sources instead of
|
--with-included-gettext Forces usage of the local gettext sources instead of
|
||||||
the one provided by your system.
|
the one provided by your system.
|
||||||
|
|
||||||
--disable-nls Disable NLS support (See ABOUT-NLS)
|
--disable-nls Disable NLS support (See the file ABOUT-NLS)
|
||||||
|
|
||||||
--enable-m-debug Compile with the integrated malloc debugging stuff.
|
|
||||||
This makes the program slower but it checks every
|
|
||||||
free operation and can be used to create statistics
|
|
||||||
of memory usage. If this option is used the program
|
|
||||||
option "--debug 32" displays every call to a malloc
|
|
||||||
function (this makes the program *really* slow), the
|
|
||||||
option "--debug 128" displays a memory statistic after
|
|
||||||
the program run.
|
|
||||||
|
|
||||||
--enable-m-guard Enable the integrated malloc checking code.
|
--enable-m-guard Enable the integrated malloc checking code.
|
||||||
|
|
||||||
--disable-dynload If you have problems with dynamic loading, this option
|
--disable-dynload If you have problems with dynamic loading, this option
|
||||||
disables all dynamic loading stuff.
|
disables all dynamic loading stuff.
|
||||||
|
|
||||||
--disable-asm Do not use assembler modules.
|
--disable-asm Do not use assembler modules. It is not possible to
|
||||||
|
use this on some CPU types.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -106,7 +112,7 @@ Or use the -t (--tarbuild) option of rpm:
|
||||||
1. rpm -ta gnupg-x.x.x.tar.gz
|
1. rpm -ta gnupg-x.x.x.tar.gz
|
||||||
|
|
||||||
The binary rpm file can now be found in /usr/src/redhat/RPMS, source
|
The binary rpm file can now be found in /usr/src/redhat/RPMS, source
|
||||||
rpm in /usr/src/redhat/SRPMS
|
rpm in /usr/src/redhat/SRPMS
|
||||||
|
|
||||||
Please note that to install gnupg binary rpm you must be root, as
|
Please note that to install gnupg binary rpm you must be root, as
|
||||||
gnupg needs to be suid root, at least on Linux machines
|
gnupg needs to be suid root, at least on Linux machines
|
||||||
|
|
31
PROJECTS
31
PROJECTS
|
@ -1,47 +1,26 @@
|
||||||
|
|
||||||
* Check if an object (a message, detached sign, public key, or whatever)
|
|
||||||
is signed by definite user, i.e. define user
|
|
||||||
(userid, or any other unique identification) on command line.
|
|
||||||
--> NO: Use a script and --status-fd
|
|
||||||
|
|
||||||
* Change the internal representation of keyid into a struct which
|
* Change the internal representation of keyid into a struct which
|
||||||
can also hold the localid and extend the localid to hold information
|
can also hold the localid and extend the localid to hold information
|
||||||
of the subkey number because two subkeys may have the same keyid.
|
of the subkey number because two subkeys may have the same keyid.
|
||||||
|
|
||||||
* signature verification is done duplicated on import: in import.c and
|
|
||||||
then in trustdb.c too. Maybe we can use a flag to skip the actual
|
|
||||||
verification process (this should work if we use the same keyblock,
|
|
||||||
but I'm not sure how to accomplish that). Another way is to allow
|
|
||||||
the import of bogus data and let trustdb mark these keys as invalid;
|
|
||||||
I see an advantage in this that it may help to prevent a DoS on a
|
|
||||||
keyserver by sending him a lot of bogus signatures which he has
|
|
||||||
to check - Needs further investigation.
|
|
||||||
|
|
||||||
* Add a way to override the current cipher/md implementations
|
* Add a way to override the current cipher/md implementations
|
||||||
by others (using extensions)
|
by others (using extensions)
|
||||||
|
|
||||||
* Not GnuPG related: What about option completion in bash?
|
* Not GnuPG related: What about option completion in bash?
|
||||||
Can "--dump-options" be used for this or should we place the
|
Can "--dump-options" be used for this or should we place the
|
||||||
options in a special ELF segment?
|
options in an ELF note section?
|
||||||
|
|
||||||
* Split key support (n-out-of-m)
|
* Split key support (n-out-of-m). Use our own protocol or figure out
|
||||||
|
how PGP does it.
|
||||||
|
|
||||||
* add an option to re-create a public key from a secret key; we
|
* add an option to re-create a public key from a secret key; we
|
||||||
can do this in trustdb.c:verify_own_keys.
|
can do this in trustdb.c:verify_own_keys. (special tool?)
|
||||||
(special tool?)
|
|
||||||
|
|
||||||
* rewrite --list-packets or put it into another tool.
|
* rewrite --list-packets or put it into another tool.
|
||||||
|
|
||||||
* We need a maintenance pass over the trustdb which flags
|
|
||||||
signatures as expired if the key used to make the signature has
|
|
||||||
expired. Maybe it is a good idea to store the expiration time
|
|
||||||
in the key record of the trustdb.
|
|
||||||
* write a tool to extract selected keys from a file.
|
* write a tool to extract selected keys from a file.
|
||||||
|
|
||||||
* Change the buffering to a mbuf like scheme? Need it for PSST anyway;
|
* Change the buffering to a mbuf like scheme? See Michael's proposal.
|
||||||
see Michael's proposal.
|
|
||||||
|
|
||||||
* Work on the library
|
|
||||||
|
|
||||||
* Keep a list of duplicate, faked or unwanted keyids.
|
* Keep a list of duplicate, faked or unwanted keyids.
|
||||||
|
|
||||||
|
|
8
THOUGHTS
8
THOUGHTS
|
@ -184,9 +184,9 @@ o the KS should verify signatures and only accept those
|
||||||
o Keep a blacklist of known bad signatures to minimize
|
o Keep a blacklist of known bad signatures to minimize
|
||||||
the time needed to check them
|
the time needed to check them
|
||||||
|
|
||||||
o Should be fast - I currently designing a new storage
|
o Should be fast - I'm currently designing a new storage
|
||||||
system called keybox which takes advantage of the fact
|
system called keybox which takes advantage of the fact
|
||||||
that the keyID is highly random and can be directly be
|
that the keyID is highly random and can directly be
|
||||||
used as a hash value and this keyID is (for v4 keys)
|
used as a hash value and this keyID is (for v4 keys)
|
||||||
part of the fingerprint: So it is possible to use the
|
part of the fingerprint: So it is possible to use the
|
||||||
fingerprint as key but do an lookup by the keyID.
|
fingerprint as key but do an lookup by the keyID.
|
||||||
|
@ -233,5 +233,9 @@ Suggested things which I will not do:
|
||||||
=====================================
|
=====================================
|
||||||
* Let take --help an option to select some topics.
|
* Let take --help an option to select some topics.
|
||||||
Using grep is much easier
|
Using grep is much easier
|
||||||
|
* Check if an object (a message, detached sign, public key, or whatever)
|
||||||
|
is signed by definite user, i.e. define user
|
||||||
|
(userid, or any other unique identification) on command line.
|
||||||
|
--> Use a script and --status-fd
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -1,3 +1,9 @@
|
||||||
|
Wed Sep 1 15:30:44 CEST 1999 Werner Koch <wk@isil.d.shuttle.de>
|
||||||
|
|
||||||
|
|
||||||
|
* keygen.c (ask_expire_interval): Fixed bug related to cpr_xx (tnx
|
||||||
|
Francis J. Lacoste).
|
||||||
|
|
||||||
Tue Aug 31 17:20:44 CEST 1999 Werner Koch <wk@isil.d.shuttle.de>
|
Tue Aug 31 17:20:44 CEST 1999 Werner Koch <wk@isil.d.shuttle.de>
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -1288,7 +1288,7 @@ find_by_name( KBNODE keyblock, PKT_public_key *pk, const char *name,
|
||||||
else if( is_RSA(pk->pubkey_algo) )
|
else if( is_RSA(pk->pubkey_algo) )
|
||||||
log_error(_("RSA key cannot be used in this version\n"));
|
log_error(_("RSA key cannot be used in this version\n"));
|
||||||
else
|
else
|
||||||
log_error(_("No key for user-id\n"));
|
log_error(_("No key for user ID\n"));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return NULL;
|
return NULL;
|
||||||
|
@ -1327,7 +1327,7 @@ find_by_name_sk( KBNODE keyblock, PKT_secret_key *sk, const char *name,
|
||||||
else if( is_RSA(sk->pubkey_algo) )
|
else if( is_RSA(sk->pubkey_algo) )
|
||||||
log_error(_("RSA key cannot be used in this version\n"));
|
log_error(_("RSA key cannot be used in this version\n"));
|
||||||
else
|
else
|
||||||
log_error(_("No key for user-id\n"));
|
log_error(_("No key for user ID\n"));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return NULL;
|
return NULL;
|
||||||
|
@ -1366,7 +1366,7 @@ find_by_keyid( KBNODE keyblock, PKT_public_key *pk, u32 *keyid, int mode )
|
||||||
if( kk )
|
if( kk )
|
||||||
cache_user_id( kk->pkt->pkt.user_id, aki );
|
cache_user_id( kk->pkt->pkt.user_id, aki );
|
||||||
else
|
else
|
||||||
log_error(_("No user-id for key\n"));
|
log_error(_("No user ID for key\n"));
|
||||||
return k; /* found */
|
return k; /* found */
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1406,7 +1406,7 @@ find_by_keyid_sk( KBNODE keyblock, PKT_secret_key *sk, u32 *keyid, int mode )
|
||||||
if( kk )
|
if( kk )
|
||||||
cache_user_id( kk->pkt->pkt.user_id, aki );
|
cache_user_id( kk->pkt->pkt.user_id, aki );
|
||||||
else
|
else
|
||||||
log_error(_("No user-id for key\n"));
|
log_error(_("No user ID for key\n"));
|
||||||
return k; /* found */
|
return k; /* found */
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -58,7 +58,7 @@ static struct helptexts { const char *key; const char *help; } helptexts[] = {
|
||||||
)},
|
)},
|
||||||
|
|
||||||
{ "pklist.user_id.enter", N_(
|
{ "pklist.user_id.enter", N_(
|
||||||
"Enter the user id of the addressee to whom you want to send the message."
|
"Enter the user ID of the addressee to whom you want to send the message."
|
||||||
)},
|
)},
|
||||||
|
|
||||||
{ "keygen.algo", N_(
|
{ "keygen.algo", N_(
|
||||||
|
|
18
g10/import.c
18
g10/import.c
|
@ -359,7 +359,7 @@ import_one( const char *fname, KBNODE keyblock, int fast )
|
||||||
putc('\n', stderr);
|
putc('\n', stderr);
|
||||||
}
|
}
|
||||||
if( !uidnode ) {
|
if( !uidnode ) {
|
||||||
log_error( _("key %08lX: no user id\n"), (ulong)keyid[1]);
|
log_error( _("key %08lX: no user ID\n"), (ulong)keyid[1]);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -373,7 +373,7 @@ import_one( const char *fname, KBNODE keyblock, int fast )
|
||||||
|
|
||||||
if( !delete_inv_parts( fname, keyblock, keyid ) ) {
|
if( !delete_inv_parts( fname, keyblock, keyid ) ) {
|
||||||
if( !opt.quiet ) {
|
if( !opt.quiet ) {
|
||||||
log_info( _("key %08lX: no valid user ids\n"),
|
log_info( _("key %08lX: no valid user IDs\n"),
|
||||||
(ulong)keyid[1]);
|
(ulong)keyid[1]);
|
||||||
log_info(_("this may be caused by a missing self-signature\n"));
|
log_info(_("this may be caused by a missing self-signature\n"));
|
||||||
}
|
}
|
||||||
|
@ -466,10 +466,10 @@ import_one( const char *fname, KBNODE keyblock, int fast )
|
||||||
/* we are ready */
|
/* we are ready */
|
||||||
if( !opt.quiet ) {
|
if( !opt.quiet ) {
|
||||||
if( n_uids == 1 )
|
if( n_uids == 1 )
|
||||||
log_info( _("key %08lX: 1 new user-id\n"),
|
log_info( _("key %08lX: 1 new user ID\n"),
|
||||||
(ulong)keyid[1]);
|
(ulong)keyid[1]);
|
||||||
else if( n_uids )
|
else if( n_uids )
|
||||||
log_info( _("key %08lX: %d new user-ids\n"),
|
log_info( _("key %08lX: %d new user IDs\n"),
|
||||||
(ulong)keyid[1], n_uids );
|
(ulong)keyid[1], n_uids );
|
||||||
if( n_sigs == 1 )
|
if( n_sigs == 1 )
|
||||||
log_info( _("key %08lX: 1 new signature\n"),
|
log_info( _("key %08lX: 1 new signature\n"),
|
||||||
|
@ -551,7 +551,7 @@ import_secret_one( const char *fname, KBNODE keyblock )
|
||||||
}
|
}
|
||||||
stats.secret_read++;
|
stats.secret_read++;
|
||||||
if( !uidnode ) {
|
if( !uidnode ) {
|
||||||
log_error( _("key %08lX: no user id\n"), (ulong)keyid[1]);
|
log_error( _("key %08lX: no user ID\n"), (ulong)keyid[1]);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -708,7 +708,7 @@ chk_self_sigs( const char *fname, KBNODE keyblock,
|
||||||
if( (sig->sig_class&~3) == 0x10 ) {
|
if( (sig->sig_class&~3) == 0x10 ) {
|
||||||
KBNODE unode = find_prev_kbnode( keyblock, n, PKT_USER_ID );
|
KBNODE unode = find_prev_kbnode( keyblock, n, PKT_USER_ID );
|
||||||
if( !unode ) {
|
if( !unode ) {
|
||||||
log_error( _("key %08lX: no user-id for signature\n"),
|
log_error( _("key %08lX: no user ID for signature\n"),
|
||||||
(ulong)keyid[1]);
|
(ulong)keyid[1]);
|
||||||
return -1; /* the complete keyblock is invalid */
|
return -1; /* the complete keyblock is invalid */
|
||||||
}
|
}
|
||||||
|
@ -766,7 +766,7 @@ mark_non_selfsigned_uids_valid( KBNODE keyblock, u32 *kid )
|
||||||
if( node->pkt->pkttype == PKT_USER_ID && !(node->flag & 1) ) {
|
if( node->pkt->pkttype == PKT_USER_ID && !(node->flag & 1) ) {
|
||||||
if( node->next && node->next->pkt->pkttype == PKT_SIGNATURE ) {
|
if( node->next && node->next->pkt->pkttype == PKT_SIGNATURE ) {
|
||||||
node->flag |= 1;
|
node->flag |= 1;
|
||||||
log_info( _("key %08lX: accepted non self-signed user-id '"),
|
log_info( _("key %08lX: accepted non self-signed user ID '"),
|
||||||
(ulong)kid[1]);
|
(ulong)kid[1]);
|
||||||
print_string( log_stream(), node->pkt->pkt.user_id->name,
|
print_string( log_stream(), node->pkt->pkt.user_id->name,
|
||||||
node->pkt->pkt.user_id->len, 0 );
|
node->pkt->pkt.user_id->len, 0 );
|
||||||
|
@ -795,7 +795,7 @@ delete_inv_parts( const char *fname, KBNODE keyblock, u32 *keyid )
|
||||||
uid_seen = 1;
|
uid_seen = 1;
|
||||||
if( (node->flag & 2) || !(node->flag & 1) ) {
|
if( (node->flag & 2) || !(node->flag & 1) ) {
|
||||||
if( opt.verbose ) {
|
if( opt.verbose ) {
|
||||||
log_info( _("key %08lX: skipped user-id '"),
|
log_info( _("key %08lX: skipped user ID '"),
|
||||||
(ulong)keyid[1]);
|
(ulong)keyid[1]);
|
||||||
print_string( stderr, node->pkt->pkt.user_id->name,
|
print_string( stderr, node->pkt->pkt.user_id->name,
|
||||||
node->pkt->pkt.user_id->len, 0 );
|
node->pkt->pkt.user_id->len, 0 );
|
||||||
|
@ -1176,7 +1176,7 @@ merge_sigs( KBNODE dst, KBNODE src, int *n_sigs,
|
||||||
|
|
||||||
assert(dst->pkt->pkttype == PKT_USER_ID );
|
assert(dst->pkt->pkttype == PKT_USER_ID );
|
||||||
assert(src->pkt->pkttype == PKT_USER_ID );
|
assert(src->pkt->pkttype == PKT_USER_ID );
|
||||||
/* at least a self signature comes next to the user-ids */
|
/* at least a self signature comes next to the user IDs */
|
||||||
assert(src->next->pkt->pkttype != PKT_USER_ID );
|
assert(src->next->pkt->pkttype != PKT_USER_ID );
|
||||||
if( dst->next->pkt->pkttype == PKT_USER_ID ) {
|
if( dst->next->pkt->pkttype == PKT_USER_ID ) {
|
||||||
log_error( _("key %08lX: our copy has no self-signature\n"),
|
log_error( _("key %08lX: our copy has no self-signature\n"),
|
||||||
|
|
|
@ -228,9 +228,9 @@ check_all_keysigs( KBNODE keyblock, int only_selected )
|
||||||
else if( oth_err )
|
else if( oth_err )
|
||||||
tty_printf(_("%d signatures not checked due to errors\n"), oth_err );
|
tty_printf(_("%d signatures not checked due to errors\n"), oth_err );
|
||||||
if( mis_selfsig == 1 )
|
if( mis_selfsig == 1 )
|
||||||
tty_printf(_("1 user id without valid self-signature detected\n"));
|
tty_printf(_("1 user ID without valid self-signature detected\n"));
|
||||||
else if( mis_selfsig )
|
else if( mis_selfsig )
|
||||||
tty_printf(_("%d user ids without valid self-signatures detected\n"),
|
tty_printf(_("%d user IDs without valid self-signatures detected\n"),
|
||||||
mis_selfsig);
|
mis_selfsig);
|
||||||
|
|
||||||
return inv_sigs || no_key || oth_err || mis_selfsig;
|
return inv_sigs || no_key || oth_err || mis_selfsig;
|
||||||
|
@ -567,9 +567,9 @@ keyedit_menu( const char *username, STRLIST locusr, STRLIST commands,
|
||||||
{ N_("help") , cmdHELP , 0,1, N_("show this help") },
|
{ N_("help") , cmdHELP , 0,1, N_("show this help") },
|
||||||
{ "?" , cmdHELP , 0,1, NULL },
|
{ "?" , cmdHELP , 0,1, NULL },
|
||||||
{ N_("fpr") , cmdFPR , 0,1, N_("show fingerprint") },
|
{ N_("fpr") , cmdFPR , 0,1, N_("show fingerprint") },
|
||||||
{ N_("list") , cmdLIST , 0,1, N_("list key and user ids") },
|
{ N_("list") , cmdLIST , 0,1, N_("list key and user IDs") },
|
||||||
{ N_("l") , cmdLIST , 0,1, NULL },
|
{ N_("l") , cmdLIST , 0,1, NULL },
|
||||||
{ N_("uid") , cmdSELUID , 0,1, N_("select user id N") },
|
{ N_("uid") , cmdSELUID , 0,1, N_("select user ID N") },
|
||||||
{ N_("key") , cmdSELKEY , 0,0, N_("select secondary key N") },
|
{ N_("key") , cmdSELKEY , 0,0, N_("select secondary key N") },
|
||||||
{ N_("check") , cmdCHECK , 0,1, N_("list signatures") },
|
{ N_("check") , cmdCHECK , 0,1, N_("list signatures") },
|
||||||
{ N_("c") , cmdCHECK , 0,1, NULL },
|
{ N_("c") , cmdCHECK , 0,1, NULL },
|
||||||
|
@ -577,8 +577,8 @@ keyedit_menu( const char *username, STRLIST locusr, STRLIST commands,
|
||||||
{ N_("s") , cmdSIGN , 0,1, NULL },
|
{ N_("s") , cmdSIGN , 0,1, NULL },
|
||||||
{ N_("lsign") , cmdLSIGN , 0,1, N_("sign the key locally") },
|
{ N_("lsign") , cmdLSIGN , 0,1, N_("sign the key locally") },
|
||||||
{ N_("debug") , cmdDEBUG , 0,0, NULL },
|
{ N_("debug") , cmdDEBUG , 0,0, NULL },
|
||||||
{ N_("adduid") , cmdADDUID , 1,0, N_("add a user id") },
|
{ N_("adduid") , cmdADDUID , 1,0, N_("add a user ID") },
|
||||||
{ N_("deluid") , cmdDELUID , 0,0, N_("delete user id") },
|
{ N_("deluid") , cmdDELUID , 0,0, N_("delete user ID") },
|
||||||
{ N_("addkey") , cmdADDKEY , 1,0, N_("add a secondary key") },
|
{ N_("addkey") , cmdADDKEY , 1,0, N_("add a secondary key") },
|
||||||
{ N_("delkey") , cmdDELKEY , 0,0, N_("delete a secondary key") },
|
{ N_("delkey") , cmdDELKEY , 0,0, N_("delete a secondary key") },
|
||||||
{ N_("delsig") , cmdDELSIG , 0,0, N_("delete signatures") },
|
{ N_("delsig") , cmdDELSIG , 0,0, N_("delete signatures") },
|
||||||
|
@ -755,8 +755,8 @@ keyedit_menu( const char *username, STRLIST locusr, STRLIST commands,
|
||||||
case cmdLSIGN: /* sign (only the public key) */
|
case cmdLSIGN: /* sign (only the public key) */
|
||||||
if( count_uids(keyblock) > 1 && !count_selected_uids(keyblock) ) {
|
if( count_uids(keyblock) > 1 && !count_selected_uids(keyblock) ) {
|
||||||
if( !cpr_get_answer_is_yes("keyedit.sign_all.okay",
|
if( !cpr_get_answer_is_yes("keyedit.sign_all.okay",
|
||||||
_("Really sign all user ids? ")) ) {
|
_("Really sign all user IDs? ")) ) {
|
||||||
tty_printf(_("Hint: Select the user ids to sign\n"));
|
tty_printf(_("Hint: Select the user IDs to sign\n"));
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -794,13 +794,13 @@ keyedit_menu( const char *username, STRLIST locusr, STRLIST commands,
|
||||||
int n1;
|
int n1;
|
||||||
|
|
||||||
if( !(n1=count_selected_uids(keyblock)) )
|
if( !(n1=count_selected_uids(keyblock)) )
|
||||||
tty_printf(_("You must select at least one user id.\n"));
|
tty_printf(_("You must select at least one user ID.\n"));
|
||||||
else if( count_uids(keyblock) - n1 < 1 )
|
else if( count_uids(keyblock) - n1 < 1 )
|
||||||
tty_printf(_("You can't delete the last user id!\n"));
|
tty_printf(_("You can't delete the last user ID!\n"));
|
||||||
else if( cpr_get_answer_is_yes(
|
else if( cpr_get_answer_is_yes(
|
||||||
"keyedit.remove.uid.okay",
|
"keyedit.remove.uid.okay",
|
||||||
n1 > 1? _("Really remove all selected user ids? ")
|
n1 > 1? _("Really remove all selected user IDs? ")
|
||||||
: _("Really remove this user id? ")
|
: _("Really remove this user ID? ")
|
||||||
) ) {
|
) ) {
|
||||||
menu_deluid( keyblock, sec_keyblock );
|
menu_deluid( keyblock, sec_keyblock );
|
||||||
redisplay = 1;
|
redisplay = 1;
|
||||||
|
@ -815,7 +815,7 @@ keyedit_menu( const char *username, STRLIST locusr, STRLIST commands,
|
||||||
int n1;
|
int n1;
|
||||||
|
|
||||||
if( !(n1=count_selected_uids(keyblock)) )
|
if( !(n1=count_selected_uids(keyblock)) )
|
||||||
tty_printf(_("You must select at least one user id.\n"));
|
tty_printf(_("You must select at least one user ID.\n"));
|
||||||
else if( menu_delsig( keyblock ) ) {
|
else if( menu_delsig( keyblock ) ) {
|
||||||
/* no redisplay here, because it may scroll away some
|
/* no redisplay here, because it may scroll away some
|
||||||
* status output of delsig */
|
* status output of delsig */
|
||||||
|
@ -1563,7 +1563,7 @@ menu_select_uid( KBNODE keyblock, int idx )
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if( !node ) {
|
if( !node ) {
|
||||||
tty_printf(_("No user id with index %d\n"), idx );
|
tty_printf(_("No user ID with index %d\n"), idx );
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -559,9 +559,8 @@ ask_expire_interval(void)
|
||||||
asctimestamp(curtime + interval ) );
|
asctimestamp(curtime + interval ) );
|
||||||
}
|
}
|
||||||
|
|
||||||
if( !cpr_enabled()
|
if( cpr_enabled() || cpr_get_answer_is_yes("keygen.valid.okay",
|
||||||
&& cpr_get_answer_is_yes("keygen.valid.okay",
|
_("Is this correct (y/n)? ")) )
|
||||||
_("Is this correct (y/n)? ")) )
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
m_free(answer);
|
m_free(answer);
|
||||||
|
|
|
@ -124,7 +124,7 @@ static int
|
||||||
add_user_id( CTX c, PACKET *pkt )
|
add_user_id( CTX c, PACKET *pkt )
|
||||||
{
|
{
|
||||||
if( !c->list ) {
|
if( !c->list ) {
|
||||||
log_error("orphaned user id\n" );
|
log_error("orphaned user ID\n" );
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
add_kbnode( c->list, new_kbnode( pkt ) );
|
add_kbnode( c->list, new_kbnode( pkt ) );
|
||||||
|
|
|
@ -793,7 +793,7 @@ dump_sig_subpkt( int hashed, int type, int critical,
|
||||||
p = "preferred key server";
|
p = "preferred key server";
|
||||||
break;
|
break;
|
||||||
case SIGSUBPKT_PRIMARY_UID:
|
case SIGSUBPKT_PRIMARY_UID:
|
||||||
p = "primary user id";
|
p = "primary user ID";
|
||||||
break;
|
break;
|
||||||
case SIGSUBPKT_POLICY:
|
case SIGSUBPKT_POLICY:
|
||||||
fputs("policy: ", stdout );
|
fputs("policy: ", stdout );
|
||||||
|
@ -803,10 +803,10 @@ dump_sig_subpkt( int hashed, int type, int critical,
|
||||||
p = "key flags";
|
p = "key flags";
|
||||||
break;
|
break;
|
||||||
case SIGSUBPKT_SIGNERS_UID:
|
case SIGSUBPKT_SIGNERS_UID:
|
||||||
p = "signer's user id";
|
p = "signer's user ID";
|
||||||
break;
|
break;
|
||||||
case SIGSUBPKT_PRIV_ADD_SIG:
|
case SIGSUBPKT_PRIV_ADD_SIG:
|
||||||
p = "signs additional user id";
|
p = "signs additional user ID";
|
||||||
break;
|
break;
|
||||||
default: p = "?"; break;
|
default: p = "?"; break;
|
||||||
}
|
}
|
||||||
|
@ -1482,7 +1482,7 @@ parse_user_id( IOBUF inp, int pkttype, unsigned long pktlen, PACKET *packet )
|
||||||
|
|
||||||
if( list_mode ) {
|
if( list_mode ) {
|
||||||
int n = packet->pkt.user_id->len;
|
int n = packet->pkt.user_id->len;
|
||||||
printf(":user id packet: \"");
|
printf(":user ID packet: \"");
|
||||||
/* fixme: Hey why don't we replace this wioth print_string?? */
|
/* fixme: Hey why don't we replace this wioth print_string?? */
|
||||||
for(p=packet->pkt.user_id->name; n; p++, n-- ) {
|
for(p=packet->pkt.user_id->name; n; p++, n-- ) {
|
||||||
if( *p >= ' ' && *p <= 'z' )
|
if( *p >= ' ' && *p <= 'z' )
|
||||||
|
|
|
@ -505,7 +505,7 @@ check_key_signature2( KBNODE root, KBNODE node, int *is_selfsig, u32 *r_expire)
|
||||||
md_close(md);
|
md_close(md);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
log_error("no user id for key signature packet\n");
|
log_error("no user ID for key signature packet\n");
|
||||||
rc = G10ERR_SIG_CLASS;
|
rc = G10ERR_SIG_CLASS;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -2058,7 +2058,7 @@ do_check( TRUSTREC *dr, unsigned *validity,
|
||||||
return G10ERR_TRUSTDB;
|
return G10ERR_TRUSTDB;
|
||||||
}
|
}
|
||||||
if( !dr->r.dir.uidlist ) {
|
if( !dr->r.dir.uidlist ) {
|
||||||
log_error(_("Ooops, no user ids\n"));
|
log_error(_("Ooops, no user IDs\n"));
|
||||||
return G10ERR_TRUSTDB;
|
return G10ERR_TRUSTDB;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,3 +1,8 @@
|
||||||
|
Wed Sep 1 15:30:44 CEST 1999 Werner Koch <wk@isil.d.shuttle.de>
|
||||||
|
|
||||||
|
|
||||||
|
* de.po: Updated.
|
||||||
|
|
||||||
Mon Aug 30 20:38:33 CEST 1999 Werner Koch <wk@isil.d.shuttle.de>
|
Mon Aug 30 20:38:33 CEST 1999 Werner Koch <wk@isil.d.shuttle.de>
|
||||||
|
|
||||||
|
|
||||||
|
|
221
po/de.po
221
po/de.po
|
@ -1,11 +1,11 @@
|
||||||
# GnuPG german translation
|
# GnuPG german translation
|
||||||
# Copyright (C) 1998 Free Software Foundation, Inc.
|
# Copyright (C) 1998 Free Software Foundation, Inc.
|
||||||
# Walter Koch <walterk@dip.de>, 1998.
|
# Walter Koch <koch@hsp.de>, 1998.
|
||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"POT-Creation-Date: 1999-08-30 19:40+0200\n"
|
"POT-Creation-Date: 1999-08-31 21:31+0200\n"
|
||||||
"PO-Revision-Date: 1999-08-05 21:56+0200\n"
|
"PO-Revision-Date: 1999-08-31 21:36+0200\n"
|
||||||
"Last-Translator: Walter Koch <walterk@mail.dip.de>\n"
|
"Last-Translator: Walter Koch <koch@hsp.de>\n"
|
||||||
"Language-Team: German <de@li.org>\n"
|
"Language-Team: German <de@li.org>\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=iso-8859-1\n"
|
"Content-Type: text/plain; charset=iso-8859-1\n"
|
||||||
|
@ -36,11 +36,11 @@ msgstr "jJyY"
|
||||||
|
|
||||||
#: util/miscutil.c:256 util/miscutil.c:284
|
#: util/miscutil.c:256 util/miscutil.c:284
|
||||||
msgid "no"
|
msgid "no"
|
||||||
msgstr ""
|
msgstr "nein"
|
||||||
|
|
||||||
#: util/miscutil.c:257 util/miscutil.c:287
|
#: util/miscutil.c:257 util/miscutil.c:287
|
||||||
msgid "nN"
|
msgid "nN"
|
||||||
msgstr ""
|
msgstr "nN"
|
||||||
|
|
||||||
#: g10/keyedit.c:564 util/miscutil.c:285
|
#: g10/keyedit.c:564 util/miscutil.c:285
|
||||||
msgid "quit"
|
msgid "quit"
|
||||||
|
@ -444,7 +444,7 @@ msgstr "|NAME|NAME als voreingestellten Empf
|
||||||
msgid "use the default key as default recipient"
|
msgid "use the default key as default recipient"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Den Standardschlüssel als voreingestellten\n"
|
"Den Standardschlüssel als voreingestellten\n"
|
||||||
"\tEmpfänger benutzen"
|
"Empfänger benutzen"
|
||||||
|
|
||||||
#: g10/g10.c:242
|
#: g10/g10.c:242
|
||||||
msgid "use this user-id to sign or decrypt"
|
msgid "use this user-id to sign or decrypt"
|
||||||
|
@ -558,7 +558,7 @@ msgstr "Den in RFC1991 beschriebenen Modus nachahmen"
|
||||||
#: g10/g10.c:273
|
#: g10/g10.c:273
|
||||||
msgid "set all packet, cipher and digest options to OpenPGP behavior"
|
msgid "set all packet, cipher and digest options to OpenPGP behavior"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"alle Paket-, Verschlüsselungs- und \n"
|
"alle Paket-, Verschlüsselungs- und\n"
|
||||||
"Hashoptionen auf OpenPGP-Verhalten einstellen"
|
"Hashoptionen auf OpenPGP-Verhalten einstellen"
|
||||||
|
|
||||||
#: g10/g10.c:274
|
#: g10/g10.c:274
|
||||||
|
@ -615,7 +615,9 @@ msgstr ""
|
||||||
|
|
||||||
#: g10/g10.c:370
|
#: g10/g10.c:370
|
||||||
msgid "Please report bugs to <gnupg-bugs@gnu.org>.\n"
|
msgid "Please report bugs to <gnupg-bugs@gnu.org>.\n"
|
||||||
msgstr "Berichte über Bugs (Programmfehler) bitte an <gnupg-bugs@gnu.org>.\n"
|
msgstr
|
||||||
|
"Berichte über Bugs (Programmfehler) bitte an <gnupg-bugs@gnu.org>.\n"
|
||||||
|
"Sinn- oder Schreibfehler in den deutschen Texten bitte an <de@li.org>.\n"
|
||||||
|
|
||||||
#: g10/g10.c:374
|
#: g10/g10.c:374
|
||||||
msgid "Usage: gpg [options] [files] (-h for help)"
|
msgid "Usage: gpg [options] [files] (-h for help)"
|
||||||
|
@ -1441,7 +1443,7 @@ msgstr ""
|
||||||
|
|
||||||
#: g10/keygen.c:857
|
#: g10/keygen.c:857
|
||||||
msgid "Key generation can only be used in interactive mode\n"
|
msgid "Key generation can only be used in interactive mode\n"
|
||||||
msgstr ""
|
msgstr
|
||||||
"Die Schlüsselerzeugung kann nur im interaktiven Modus benutzt werden.\n"
|
"Die Schlüsselerzeugung kann nur im interaktiven Modus benutzt werden.\n"
|
||||||
|
|
||||||
#: g10/keygen.c:865
|
#: g10/keygen.c:865
|
||||||
|
@ -3184,88 +3186,125 @@ msgstr ""
|
||||||
"sym.Verschlüsselung nicht vermieden werden!\n"
|
"sym.Verschlüsselung nicht vermieden werden!\n"
|
||||||
|
|
||||||
#: g10/helptext.c:47
|
#: g10/helptext.c:47
|
||||||
#, fuzzy
|
|
||||||
msgid ""
|
msgid ""
|
||||||
"It's up to you to assign a value here; this value will never be exported\n"
|
"It's up to you to assign a value here; this value will never be exported\n"
|
||||||
"to any 3rd party. We need it to implement the web-of-trust; it has nothing\n"
|
"to any 3rd party. We need it to implement the web-of-trust; it has nothing\n"
|
||||||
"to do with the (implicitly created) web-of-certificates."
|
"to do with the (implicitly created) web-of-certificates."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Sie müssen selbt entscheiden, welchen Wert Sie hier eintragen; dieser Wert\n"
|
"Sie müssen selbst entscheiden, welchen Wert Sie hier eintragen; dieser Wert\n"
|
||||||
"wird niemals an eine dritte Seite weitergegeben. Wir brauchen diesen Wert,\n"
|
"wird niemals an eine dritte Seite weitergegeben. Wir brauchen diesen Wert,\n"
|
||||||
"um das \"Netz des Vertrauens\" aufzubauen. Dieses hat nichts mit dem "
|
"um das \"Netz des Vertrauens\" aufzubauen. Dieses hat nichts mit dem\n"
|
||||||
"(implizit\n"
|
"(implizit erzeugten) \"Netz der Zertifikate\" zu tun."
|
||||||
"erzeugten) \"Netz der Zertifikate\" zu tun.\n"
|
|
||||||
|
|
||||||
#: g10/helptext.c:53
|
#: g10/helptext.c:53
|
||||||
msgid "If you want to use this revoked key anyway, answer \"yes\"."
|
msgid "If you want to use this revoked key anyway, answer \"yes\"."
|
||||||
msgstr ""
|
msgstr
|
||||||
|
"Wenn Sie diesen widerrufenen Schlüssel trotzdem benutzen wollen,\n"
|
||||||
|
"so antworten Sie mit \"ja\"."
|
||||||
|
|
||||||
#: g10/helptext.c:57
|
#: g10/helptext.c:57
|
||||||
msgid "If you want to use this untrusted key anyway, answer \"yes\"."
|
msgid "If you want to use this untrusted key anyway, answer \"yes\"."
|
||||||
msgstr ""
|
msgstr
|
||||||
|
"Wenn Sie diesen nicht vertrauenswürdigen Schlüssel trotzdem benutzen wollen,\n"
|
||||||
|
"so antworten Sie mit \"ja\"."
|
||||||
|
|
||||||
#: g10/helptext.c:61
|
#: g10/helptext.c:61
|
||||||
msgid ""
|
msgid ""
|
||||||
"Enter the user id of the addressee to whom you want to send the message."
|
"Enter the user id of the addressee to whom you want to send the message."
|
||||||
msgstr ""
|
msgstr
|
||||||
|
"Geben Sie die User-ID dessen ein, dem Sie die Botschaft senden wollen."
|
||||||
|
|
||||||
#: g10/helptext.c:65
|
#: g10/helptext.c:65
|
||||||
msgid ""
|
msgid ""
|
||||||
"Select the algorithm to use.\n"
|
"Select the algorithm to use.\n"
|
||||||
|
"\n"
|
||||||
"DSA (aka DSS) is the digital signature algorithm which can only be used\n"
|
"DSA (aka DSS) is the digital signature algorithm which can only be used\n"
|
||||||
"for signatures. This is the suggested algorithm because verification of\n"
|
"for signatures. This is the suggested algorithm because verification of\n"
|
||||||
"DSA signatures are much faster than those of ElGamal.\n"
|
"DSA signatures are much faster than those of ElGamal.\n"
|
||||||
|
"\n"
|
||||||
"ElGamal is an algorithm which can be used for signatures and encryption.\n"
|
"ElGamal is an algorithm which can be used for signatures and encryption.\n"
|
||||||
"OpenPGP distunguishs between two flavors of this algorithms: an encrypt "
|
"OpenPGP distinguishs between two flavors of this algorithms: an encrypt "
|
||||||
"only\n"
|
"only\n"
|
||||||
"and a sign+encrypt; actually it is the same, but some parameters must be\n"
|
"and a sign+encrypt; actually it is the same, but some parameters must be\n"
|
||||||
"selected in a special way to create a safe key for signatures: this program\n"
|
"selected in a special way to create a safe key for signatures: this program\n"
|
||||||
"does this but other OpenPGP implementations are not required to understand\n"
|
"does this but other OpenPGP implementations are not required to understand\n"
|
||||||
"the signature+encryption flavor.\n"
|
"the signature+encryption flavor.\n"
|
||||||
|
"\n"
|
||||||
"The first (primary) key must always be a key which is capable of signing;\n"
|
"The first (primary) key must always be a key which is capable of signing;\n"
|
||||||
"this is the reason why the encryption only ElGamal key is not available in\n"
|
"this is the reason why the encryption only ElGamal key is not available in\n"
|
||||||
"this menu."
|
"this menu."
|
||||||
msgstr ""
|
msgstr
|
||||||
|
"Wählen Sie die zu verwendende Methode aus.\n\n"
|
||||||
|
"DSA (alias DSS) bedeutet \"digital signature algorithm\" (Digitales\n"
|
||||||
|
" Unterschrift-Verfahren). Es kann nur zum Unterschreiben und Beglaubigen\n"
|
||||||
|
" benutzt werden. Dies ist das empfohlene Verfahren, da dessen Überprüfung\n"
|
||||||
|
" wesentlich schneller abläuft, als die von \"ElGamal\".\n"
|
||||||
|
"\n"
|
||||||
|
"ElGamal ist ein Verfahren für Unterschrift, Beglaubigung und Verschlüsselung\n"
|
||||||
|
" OpenPGP unterscheidet zwischen zwei Arten von ElGamal: eines nur zum\n"
|
||||||
|
" Unterschreiben/Beglaubigen und eines zusätzlich zum Verschlüsseln.\n"
|
||||||
|
" Eigentlich sind diese Arten identisch; allerdings müssen einige Parameter\n"
|
||||||
|
" auf eine besondere Art gewählt werden, um einen sicheren Schlüssel für\n"
|
||||||
|
" Unterschriften zu erzeugen. Dieses Programm macht dies zwar so, aber "
|
||||||
|
"andere\n"
|
||||||
|
" Programme sind laut der OpenPGP-Spezifikation nicht verpflichtet, die\n"
|
||||||
|
" zweite Art (die mit zusätzlichem Verschlüsseln) zu verstehen.\n"
|
||||||
|
"\n"
|
||||||
|
"Der Hauptschlüssel (\"primary Key\") muß auf jeden Fall zum Unterschreiben "
|
||||||
|
"fähig\n"
|
||||||
|
"sein. Deshalb kann ein nur-Verschlüssel-ElGamal-Schlüssel dafür nicht\n"
|
||||||
|
"verwendet werden."
|
||||||
|
|
||||||
#: g10/helptext.c:82
|
|
||||||
|
#: g10/helptext.c:85
|
||||||
msgid ""
|
msgid ""
|
||||||
"Although these keys are defined in RFC2440 they are not suggested\n"
|
"Although these keys are defined in RFC2440 they are not suggested\n"
|
||||||
"because they are not supported by all programs and signatures created\n"
|
"because they are not supported by all programs and signatures created\n"
|
||||||
"with them are quite large and very slow to verify."
|
"with them are quite large and very slow to verify."
|
||||||
msgstr ""
|
msgstr
|
||||||
|
"Obwohl diese Schlüssel in RFC 2440 definiert sind, ist ihre Verwendung "
|
||||||
|
"nicht\n"
|
||||||
|
"empfohlen. Sie werden nämlich nicht von allen Programmen unterstützt.\n"
|
||||||
|
"Außerdem sind damit ezeugte Unterschriften recht groß und ihre Überprüfung\n"
|
||||||
|
"ist langsam."
|
||||||
|
|
||||||
#: g10/helptext.c:89
|
#: g10/helptext.c:92
|
||||||
#, fuzzy
|
|
||||||
msgid "Enter the size of the key"
|
msgid "Enter the size of the key"
|
||||||
msgstr "Geben Sie die User-ID ein: "
|
msgstr "Wählen Sie die gewünschte Schlüssellänge"
|
||||||
|
|
||||||
#: g10/helptext.c:93 g10/helptext.c:98 g10/helptext.c:110 g10/helptext.c:142
|
#: g10/helptext.c:96 g10/helptext.c:101 g10/helptext.c:113 g10/helptext.c:145
|
||||||
#: g10/helptext.c:147 g10/helptext.c:152 g10/helptext.c:157
|
#: g10/helptext.c:150 g10/helptext.c:155 g10/helptext.c:160
|
||||||
msgid "Answer \"yes\" or \"no\""
|
msgid "Answer \"yes\" or \"no\""
|
||||||
msgstr ""
|
msgstr "Geben Sie \"ja\" oder \"nein\" ein"
|
||||||
|
|
||||||
#: g10/helptext.c:103
|
#: g10/helptext.c:106
|
||||||
msgid ""
|
msgid ""
|
||||||
"Enter the required value as shown in the pronpt.\n"
|
"Enter the required value as shown in the pronpt.\n"
|
||||||
"It is possible to enter a ISO date (YYYY-MM-DD) but you won't\n"
|
"It is possible to enter a ISO date (YYYY-MM-DD) but you won't\n"
|
||||||
"get a good error response - instead the system tries to interpret\n"
|
"get a good error response - instead the system tries to interpret\n"
|
||||||
"the given value as an interval."
|
"the given value as an interval."
|
||||||
msgstr ""
|
msgstr
|
||||||
|
"Geben Sie den benötigten Wert so an, wie er im Prompt erscheint.\n"
|
||||||
|
"Es ist zwar möglich ein \"ISO\"-Datum (JJJJ-MM-DD) einzugeben, aber man\n"
|
||||||
|
"erhält dann ggfs. keine brauchbaren Fehlermeldungen - stattdessen versucht\n"
|
||||||
|
"der Rechner den Wert als Intervall (von-bis) zu deuten."
|
||||||
|
|
||||||
#: g10/helptext.c:115
|
#: g10/helptext.c:118
|
||||||
msgid "Enter the name of the key holder"
|
msgid "Enter the name of the key holder"
|
||||||
msgstr ""
|
msgstr "Geben Sie den Namen des Schlüsselinhabers ein"
|
||||||
|
|
||||||
#: g10/helptext.c:120
|
#: g10/helptext.c:123
|
||||||
msgid "please enter an optional but highly suggested email address"
|
msgid "please enter an optional but highly suggested email address"
|
||||||
msgstr ""
|
msgstr
|
||||||
|
"Geben Sie eine E-Mail-Adresse ein. Dies ist zwar nicht unbedingt notwendig,\n"
|
||||||
|
"aber sehr empfehlenswert."
|
||||||
|
|
||||||
#: g10/helptext.c:124
|
|
||||||
#, fuzzy
|
#: g10/helptext.c:127
|
||||||
msgid "Please enter an optional comment"
|
msgid "Please enter an optional comment"
|
||||||
msgstr "Bitte geben Sie den Namen der Datendatei ein: "
|
msgstr "Geben Sie - bei Bedarf - einen Kommentar ein"
|
||||||
|
|
||||||
#: g10/helptext.c:129
|
#: g10/helptext.c:132
|
||||||
msgid ""
|
msgid ""
|
||||||
"N to change the name.\n"
|
"N to change the name.\n"
|
||||||
"C to change the comment.\n"
|
"C to change the comment.\n"
|
||||||
|
@ -3273,84 +3312,134 @@ msgid ""
|
||||||
"O to continue with key generation.\n"
|
"O to continue with key generation.\n"
|
||||||
"Q to to quit the key generation."
|
"Q to to quit the key generation."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
"N um den Namen zu ändern.\n"
|
||||||
|
"K um den Kommentar zu ändern.\n"
|
||||||
|
"E um die E-Mail-Adresse zu ändern.\n"
|
||||||
|
"F um mit der Schlüsselerzeugung fortzusetzen.\n"
|
||||||
|
"B um die Schlüsselerzeugung abbrechen."
|
||||||
|
|
||||||
#: g10/helptext.c:138
|
#: g10/helptext.c:141
|
||||||
msgid "Answer \"yes\" (or just \"y\") if it is okay to generate the sub key."
|
msgid "Answer \"yes\" (or just \"y\") if it is okay to generate the sub key."
|
||||||
msgstr ""
|
msgstr
|
||||||
|
"Geben Sie \"ja\" (oder nur \"j\") ein, um den Unterschlüssel zu erzeugen."
|
||||||
|
|
||||||
#: g10/helptext.c:161
|
|
||||||
|
#: g10/helptext.c:164
|
||||||
msgid "Answer \"yes\" is you want to sign ALL the user IDs"
|
msgid "Answer \"yes\" is you want to sign ALL the user IDs"
|
||||||
msgstr ""
|
msgstr
|
||||||
|
"Geben Sie \"ja\" (oder nur \"j\") ein, um alle User-IDs zu beglaubigen"
|
||||||
|
|
||||||
#: g10/helptext.c:165
|
#: g10/helptext.c:168
|
||||||
msgid ""
|
msgid ""
|
||||||
"Answer \"yes\" if you really want to delete this user ID.\n"
|
"Answer \"yes\" if you really want to delete this user ID.\n"
|
||||||
"All certificates are then also lost!"
|
"All certificates are then also lost!"
|
||||||
msgstr ""
|
msgstr
|
||||||
|
"Geben Sie \"ja\" (oder nur \"j\") ein, um diese User-ID zu LÖSCHEN.\n"
|
||||||
|
"Alle Zertifikate werden dann auch weg sein!"
|
||||||
|
|
||||||
#: g10/helptext.c:170
|
|
||||||
|
#: g10/helptext.c:173
|
||||||
msgid "Answer \"yes\" if it is okay to delete the subkey"
|
msgid "Answer \"yes\" if it is okay to delete the subkey"
|
||||||
msgstr ""
|
msgstr
|
||||||
|
"Geben Sie \"ja\" (oder nur \"j\") ein, um diesen Unterschlüssel zu löschen"
|
||||||
|
|
||||||
#: g10/helptext.c:175
|
#: g10/helptext.c:178
|
||||||
msgid ""
|
msgid ""
|
||||||
"This is a valid signature on the key; you normally don't want\n"
|
"This is a valid signature on the key; you normally don't want\n"
|
||||||
"to delete this signature may be important to establish a trust\n"
|
"to delete this signature may be important to establish a trust\n"
|
||||||
"connection to the key or another key certified by this key."
|
"connection to the key or another key certified by this key."
|
||||||
msgstr ""
|
msgstr
|
||||||
|
"Dies ist eine gültige Beglaubigung für den Schlüssel. Es ist normalerweise\n"
|
||||||
|
"unnötig sie zu löschen. Sie ist möglicherweise sogar notwendig, um einen\n"
|
||||||
|
"Trust-Weg zu diesem oder einem durch diesen Schlüssel beglaubigten "
|
||||||
|
"Schlüssel\n"
|
||||||
|
"herzustellen."
|
||||||
|
|
||||||
#: g10/helptext.c:180
|
#: g10/helptext.c:183
|
||||||
msgid ""
|
msgid ""
|
||||||
"This signature can't be checked because you don't have the\n"
|
"This signature can't be checked because you don't have the\n"
|
||||||
"corresponding key. You should postpone its deletion until you\n"
|
"corresponding key. You should postpone its deletion until you\n"
|
||||||
"know which key was used because this signing key might establisha trust "
|
"know which key was used because this signing key might establisha trust "
|
||||||
"connection through another already certified key."
|
"connection through another already certified key."
|
||||||
msgstr ""
|
msgstr
|
||||||
|
"Diese Beglaubigung kann nicht geprüft werden, da Sie den passenden Schlüssel\n"
|
||||||
|
"nicht besitzen. Sie sollten die Löschung der Beglaubigung verschieben, bis\n"
|
||||||
|
"sie wissen, welcher Schlüssel verwendet wurde. Denn vielleicht würde genau\n"
|
||||||
|
"diese Beglaubigung den \"Trust\"-Weg kompletieren."
|
||||||
|
|
||||||
#: g10/helptext.c:186
|
#: g10/helptext.c:189
|
||||||
msgid ""
|
msgid ""
|
||||||
"The signature is not valid. It does make sense to remove it from\n"
|
"The signature is not valid. It does make sense to remove it from\n"
|
||||||
"your keyring."
|
"your keyring."
|
||||||
msgstr ""
|
msgstr
|
||||||
|
"Diese Beglaubigung ist ungültig. Es ist sinnvoll sie aus Ihrem\n"
|
||||||
|
"Schlüsselbund zu entfernen."
|
||||||
|
|
||||||
#: g10/helptext.c:190
|
|
||||||
|
#: g10/helptext.c:193
|
||||||
msgid ""
|
msgid ""
|
||||||
"This is a signature which binds the user ID to the key. It is\n"
|
"This is a signature which binds the user ID to the key. It is\n"
|
||||||
"usually not a good idea to remove such a signature. Actually\n"
|
"usually not a good idea to remove such a signature. Actually\n"
|
||||||
"GnuPG might not be able to use this key anymore. So do this\n"
|
"GnuPG might not be able to use this key anymore. So do this\n"
|
||||||
"only if this self-signature is for some reason not valid and\n"
|
"only if this self-signature is for some reason not valid and\n"
|
||||||
"a second one is available."
|
"a second one is available."
|
||||||
msgstr ""
|
msgstr
|
||||||
|
"Diese Beglaubigung bindet die User-ID an den Schlüssel. Normalerweise ist\n"
|
||||||
|
"es nicht gut, solche Beglaubigungen zu entfernen. Um ehrlich zu sein:\n"
|
||||||
|
"Es könnte dann sein, daß GnuPG diesen Schlüssel gar nicht mehr benutzen kann.\n"
|
||||||
|
"Sie sollten diese Eigenbeglaubigung also nur dann entfernen, wenn sie aus\n"
|
||||||
|
"irgendeinem Grund nicht gültig ist und eine zweite Beglaubigung verfügbar "
|
||||||
|
"ist."
|
||||||
|
|
||||||
#: g10/helptext.c:199
|
#: g10/helptext.c:202
|
||||||
msgid ""
|
msgid ""
|
||||||
"Please enter the passhrase; this is a secret sentence \n"
|
"Please enter the passhrase; this is a secret sentence \n"
|
||||||
" Blurb, blurb,.... "
|
" Blurb, blurb,.... "
|
||||||
msgstr ""
|
msgstr
|
||||||
|
"Bitte geben Sie das Mantra ein. Dies ist ein geheimer Satz, der aus\n"
|
||||||
|
"beliebigen Zeichen bestehen kann. Was Sie eingegeben wird nicht angezeigt.\n"
|
||||||
|
"\n"
|
||||||
|
"Zur ihrer eigenen Sicherbeit benutzen Sie bitte einen Satz, den sie sich\n"
|
||||||
|
"gut merken könne, der aber nicht leicht zu erraten ist; Zitate und andere\n"
|
||||||
|
"bekannte Texte sind eine SCHLECHTE Wahl, da diese mit Sicherheit online\n"
|
||||||
|
"verfügbar sind und durch entsprechende Programme zum Raten des Mantras\n"
|
||||||
|
"benutzt werden. Sätze mit persönlicher Bedeutung, die auch noch durch\n"
|
||||||
|
"falsche Groß-/Kleinschreibung und eingestreute Sonderzeichen verändert "
|
||||||
|
"werden,\n"
|
||||||
|
"sind i.d.R. eine gute Wahl"
|
||||||
|
|
||||||
#: g10/helptext.c:206
|
|
||||||
|
#: g10/helptext.c:209
|
||||||
msgid "Please repeat the last passphrase, so you are sure what you typed in."
|
msgid "Please repeat the last passphrase, so you are sure what you typed in."
|
||||||
msgstr ""
|
msgstr
|
||||||
|
"Um sicher zu gehen, daß Sie sich bei der Eingabe des Mantras nicht\n"
|
||||||
|
"vertippt haben, geben Sie diese bitte nochmal ein. Nur wenn beide Eingaben\n"
|
||||||
|
"übereinstimmen, wird das Mantra akzeptiert."
|
||||||
|
|
||||||
#: g10/helptext.c:210
|
#: g10/helptext.c:213
|
||||||
msgid "Give the name fo the file to which the signature applies"
|
msgid "Give the name fo the file to which the signature applies"
|
||||||
msgstr ""
|
msgstr
|
||||||
|
"Geben Sie den Namen der Datei an, zu dem die abgetrennte Unterschrift gehört"
|
||||||
|
|
||||||
#: g10/helptext.c:215
|
#: g10/helptext.c:218
|
||||||
msgid "Answer \"yes\" if it is okay to overwrite the file"
|
msgid "Answer \"yes\" if it is okay to overwrite the file"
|
||||||
msgstr ""
|
msgstr "Geben Sie \"ja\" ein, wenn Sie die Datei überschreiben möchten"
|
||||||
|
|
||||||
#: g10/helptext.c:220
|
#: g10/helptext.c:223
|
||||||
msgid ""
|
msgid ""
|
||||||
"Please enter a new filename. If you just hit RETURN the default\n"
|
"Please enter a new filename. If you just hit RETURN the default\n"
|
||||||
"file (which is shown in brackets) will be used."
|
"file (which is shown in brackets) will be used."
|
||||||
msgstr ""
|
msgstr
|
||||||
|
"Geben Sie bitte einen neuen Dateinamen ein. Falls Sie nur die\n"
|
||||||
|
"Eingabetaste betätigen, wird der (in Klammern angezeigte) Standarddateiname\n"
|
||||||
|
"verwendet."
|
||||||
|
|
||||||
#: g10/helptext.c:234
|
|
||||||
|
#: g10/helptext.c:237
|
||||||
msgid "No help available"
|
msgid "No help available"
|
||||||
msgstr "Keine Hilfe vorhanden."
|
msgstr "Keine Hilfe vorhanden."
|
||||||
|
|
||||||
#: g10/helptext.c:242
|
#: g10/helptext.c:245
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "No help available for `%s'"
|
msgid "No help available for `%s'"
|
||||||
msgstr "Keine Hilfe für '%s' vorhanden."
|
msgstr "Keine Hilfe für '%s' vorhanden."
|
||||||
|
|
44
tools/crlf.c
Normal file
44
tools/crlf.c
Normal file
|
@ -0,0 +1,44 @@
|
||||||
|
/* crlf.c
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <stdio.h>
|
||||||
|
|
||||||
|
int
|
||||||
|
main(int argc, char **argv)
|
||||||
|
{
|
||||||
|
int c, lc;
|
||||||
|
int off=0;
|
||||||
|
|
||||||
|
if( argc > 1 ) {
|
||||||
|
fprintf(stderr, "no arguments, please\n");
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
lc = -1;
|
||||||
|
while( (c=getchar()) != EOF ) {
|
||||||
|
#if 0
|
||||||
|
if( c == '\r' && lc == ' ' )
|
||||||
|
fprintf(stderr,"SP,CR at %d\n", off );
|
||||||
|
if( c == '\n' && lc == ' ' )
|
||||||
|
fprintf(stderr,"SP,LF at %d\n", off );
|
||||||
|
#endif
|
||||||
|
if( c == '\n' && lc == '\r' )
|
||||||
|
putchar(c);
|
||||||
|
else if( c == '\n' ) {
|
||||||
|
putchar('\r');
|
||||||
|
putchar(c);
|
||||||
|
}
|
||||||
|
else if( c != '\n' && lc == '\r' ) {
|
||||||
|
putchar('\n');
|
||||||
|
putchar(c);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
putchar(c);
|
||||||
|
|
||||||
|
lc = c;
|
||||||
|
off++;
|
||||||
|
}
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
|
@ -1,3 +1,9 @@
|
||||||
|
Wed Sep 1 15:30:44 CEST 1999 Werner Koch <wk@isil.d.shuttle.de>
|
||||||
|
|
||||||
|
|
||||||
|
* argparse.c (arg_parse): Add standard options to the dump-options
|
||||||
|
output.
|
||||||
|
|
||||||
Tue Aug 31 17:20:44 CEST 1999 Werner Koch <wk@isil.d.shuttle.de>
|
Tue Aug 31 17:20:44 CEST 1999 Werner Koch <wk@isil.d.shuttle.de>
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -526,9 +526,11 @@ arg_parse( ARGPARSE_ARGS *arg, ARGPARSE_OPTS *opts)
|
||||||
exit(0);
|
exit(0);
|
||||||
}
|
}
|
||||||
else if( i < 0 && !strcmp( "dump-options", s+2) ) {
|
else if( i < 0 && !strcmp( "dump-options", s+2) ) {
|
||||||
for(i=0; opts[i].short_opt; i++ )
|
for(i=0; opts[i].short_opt; i++ ) {
|
||||||
if( opts[i].long_opt )
|
if( opts[i].long_opt )
|
||||||
printf( "--%s\n", opts[i].long_opt );
|
printf( "--%s\n", opts[i].long_opt );
|
||||||
|
}
|
||||||
|
fputs("--dump-options\n--help\n--version\n--warranty\n", stdout );
|
||||||
exit(0);
|
exit(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user