1
0
mirror of git://git.gnupg.org/gnupg.git synced 2025-01-03 12:11:33 +01:00

See ChangeLog: Tue May 25 19:50:32 CEST 1999 Werner Koch

This commit is contained in:
Werner Koch 1999-05-25 17:56:15 +00:00
parent 0a43b97773
commit 9a2ce9b391
17 changed files with 268 additions and 118 deletions

View File

@ -1,3 +1,7 @@
Tue May 25 19:50:32 CEST 1999 Werner Koch <wk@isil.d.shuttle.de>
* configure.in (IS_DEVELOPMENT_VERSION): Fixed detection.
Sun May 23 14:20:22 CEST 1999 Werner Koch <wk@isil.d.shuttle.de>
* acinclude.m4 (GNUPG_SYS_SYMBOL_UNDERSCORE): assume yes when

6
NEWS
View File

@ -1,3 +1,9 @@
* New option -N to insert notations
Noteworthy changes in version 0.9.7
-----------------------------------

6
TODO
View File

@ -1,4 +1,10 @@
* gppm links in doc und bin sind inkonsistent
* remove signature:
Got an idea: just specify the keyid of the signature - this can be
done quite easily.
* add some status output put for signing and encryption.
replace the putc in primegen with some kind of status-fd outputs.

View File

@ -1 +1 @@
0.9.7
0.9.7a

View File

@ -494,7 +494,10 @@ fi
fi
AC_SUBST(ZLIBS)
if echo "$VERSION" | grep '[a-zA-Z]' >/dev/null ; then
changequote(,)dnl
tmp_pat='[a-zA-Z]'
changequote([,])dnl
if echo "$VERSION" | grep $tmp_pat >/dev/null ; then
AC_DEFINE(IS_DEVELOPMENT_VERSION)
fi

View File

@ -390,6 +390,13 @@ B<--no-comment>
B<--comment> I<string>
Use I<string> as comment string in clear text signatures.
B<--notation-data>, B<-N> I<name>=<value>
Put the name value pair into the signature as notation data.
I<name> Must consists only of alphanumeric characters, digits
or the underscore; the first character muts not be a digit.
B<value> May be any printable string; it will encoded in UTF8,
so sou should have check that your B<--charset> is set right.
B<--set-filename> I<string>
Use I<string> as the name of file which is stored in
messages.

View File

@ -1,3 +1,16 @@
Tue May 25 19:50:32 CEST 1999 Werner Koch <wk@isil.d.shuttle.de>
* sign.c (sign_file): Always use compression algo 1 for signed
onyl file becuase we can´ be sure the the verifier supports other
algorithms.
* build-packet.c (build_sig_subpkt): Support for notation data.
* sign.c (sign_file,clearsign_file,make_keysig_packet): Ditto.
(mk_notation): New.
* g10.c (add_notation_data): New and add option -N
* mainproc.c (print_notation_data): New.
(check_sig_and_print): Print any notation data of the signed text.
Sun May 23 14:20:22 CEST 1999 Werner Koch <wk@isil.d.shuttle.de>
* pkclist.c (check_signatures_trust): Print a warning and return

View File

@ -646,6 +646,7 @@ build_sig_subpkt( PKT_signature *sig, sigsubpkttype_t type,
case SIGSUBPKT_PREF_COMPR:
case SIGSUBPKT_KS_FLAGS:
case SIGSUBPKT_KEY_EXPIRE:
case SIGSUBPKT_NOTATION:
hashed = 1; break;
default: hashed = 0; break;
}

View File

@ -63,6 +63,7 @@ enum cmd_and_opt_values { aNull = 0,
oUser = 'u',
oVerbose = 'v',
oCompress = 'z',
oNotation = 'N',
oBatch = 500,
aClearsign,
aStore,
@ -254,6 +255,7 @@ static ARGPARSE_OPTS opts[] = {
{ oDigestAlgo, "digest-algo", 2 , N_("|NAME|use message digest algorithm NAME")},
{ oCompressAlgo, "compress-algo", 1 , N_("|N|use compress algorithm N")},
{ oThrowKeyid, "throw-keyid", 0, N_("throw keyid field of encrypted packets")},
{ oNotation, "notation-data", 2, N_("|NAME=VALUE|use this notation data")},
{ 302, NULL, 0, N_("@\nExamples:\n\n"
" -se -r Bob [file] sign and encrypt for user Bob\n"
@ -312,6 +314,7 @@ static void set_cmd( enum cmd_and_opt_values *ret_cmd,
enum cmd_and_opt_values new_cmd );
static void print_hex( byte *p, size_t n );
static void print_mds( const char *fname, int algo );
static void add_notation_data( const char *string );
const char *
strusage( int level )
@ -741,6 +744,7 @@ main( int argc, char **argv )
case oEscapeFrom: opt.escape_from = 1; break;
case oLockOnce: opt.lock_once = 1; break;
case oKeyServer: opt.keyserver_name = pargs.r.ret_str; break;
case oNotation: add_notation_data( pargs.r.ret_str ); break;
default : pargs.err = configfp? 1:2; break;
}
@ -1382,3 +1386,53 @@ print_mds( const char *fname, int algo )
fclose(fp);
}
/****************
* Check the supplied name,value string and add it to the notation
* data to be used for signatures.
*/
static void
add_notation_data( const char *string )
{
const char *s = string;
const char *s2;
int highbit=0;
if( !*s || (*s & 0x80) || (!isalpha(*s) && *s != '_') ) {
log_error(_("the first character of a notation name "
"must be a letter or an underscore\n") );
return;
}
for(s++; *s != '='; s++ ) {
if( !*s || (*s & 0x80) || (!isalnum(*s) && *s != '_' && *s != '.' ) ) {
log_error(_("a notation name must have only letters, "
"digits, dots or underscores and end with an '='\n") );
return;
}
}
if( s[-1] == '.' || ((s2=strstr(string, "..")) && s2 < s ) ) {
log_error(_("dots in a notation name must be surrounded "
"by other characters\n") );
return;
}
/* we do only support printabe text - therefore we enforce the use
* of only printable characters (an empty value is valid) */
for( s++; *s ; s++ ) {
if( iscntrl(*s) ) {
log_error(_("a notation value must not use "
"any control characters\n") );
return;
}
else if( *s & 0x80 )
highbit = 1;
}
if( highbit ) { /* must use UTF8 encoding */
char *p = native_to_utf8( string );
add_to_strlist( &opt.notation_data, p );
m_free( p );
}
else
add_to_strlist( &opt.notation_data, string );
}

View File

@ -492,6 +492,35 @@ print_fingerprint( PKT_public_key *pk, PKT_secret_key *sk )
putchar('\n');
}
static void
print_notation_data( PKT_signature *sig )
{
size_t n, n1, n2;
const byte *p;
/* FIXME: we can not handle multiple notaion data packets yet */
p = parse_sig_subpkt( sig->hashed_data, SIGSUBPKT_NOTATION, &n );
if( !p )
return;
if( n < 8 ) {
log_info(_("WARNING: invalid notation data found\n"));
return;
}
if( !(*p & 0x80) )
return; /* not human readable */
n1 = (p[4] << 8) | p[5];
n2 = (p[6] << 8) | p[7];
p += 8;
if( 8+n1+n2 != n ) {
log_info(_("WARNING: invalid notation data found\n"));
return;
}
log_info(_("Notation: ") );
print_string( log_stream(), p, n1, 0 );
putc( '=', log_stream() );
print_string( log_stream(), p+n1, n2, 0 );
putc( '\n', log_stream() );
}
/****************
* List the certificate in a user friendly way
@ -935,7 +964,8 @@ check_sig_and_print( CTX c, KBNODE node )
fputs("[?]\"\n", log_stream() );
}
release_kbnode( keyblock );
if( !rc )
print_notation_data( sig );
if( !rc && is_status_enabled() ) {
/* print a status response with the fingerprint */

View File

@ -20,6 +20,7 @@
#ifndef G10_OPTIONS_H
#define G10_OPTIONS_H
#include <types.h>
#undef ENABLE_COMMENT_PACKETS /* don't create comment packets */
@ -73,6 +74,7 @@ struct {
const char *keyserver_name;
int no_encrypt_to;
int interactive;
STRLIST notation_data;
} opt;

View File

@ -745,7 +745,28 @@ dump_sig_subpkt( int hashed, int type, int critical,
(ulong)buffer_to_u32(buffer+4) );
break;
case SIGSUBPKT_NOTATION:
p = "notation data";
{
fputs("notation: ", stdout );
if( length < 8 )
p = "[too short]";
else if( !(*buffer & 0x80) )
p = "[not human readable]";
else {
const byte *s = buffer;
size_t n1, n2;
n1 = (s[4] << 8) | s[5];
n2 = (s[6] << 8) | s[7];
s += 8;
if( 8+n1+n2 != length )
p = "[error]";
else {
print_string( stdout, s, n1, 0 );
putc( '=', stdout );
print_string( stdout, s+n1, n2, 0 );
}
}
}
break;
case SIGSUBPKT_PREF_HASH:
fputs("pref-hash-algos:", stdout );
@ -808,6 +829,10 @@ parse_one_sig_subpkt( const byte *buffer, size_t n, int type )
if( n < 8 )
break;
return 0;
case SIGSUBPKT_NOTATION:
if( n < 8 ) /* minimum length needed */
break;
return 0;
case SIGSUBPKT_PREF_SYM:
case SIGSUBPKT_PREF_HASH:
case SIGSUBPKT_PREF_COMPR:

View File

@ -39,6 +39,46 @@
#include "i18n.h"
/****************
* Create a notation. It is assumed that the stings in STRLIST
* are already checked to contain only printable data and have a valid
* NAME=VALUE format.
*/
static void
mk_notation( PKT_signature *sig, STRLIST nd )
{
const char *string, *s;
byte *buf;
unsigned n1, n2;
if( sig->version < 4 ) {
log_info("can't put notation data into v3 signatures\n");
return;
}
for( ; nd; nd = nd->next ) {
string = nd->d;
s = strchr( string, '=' );
if( !s )
BUG(); /* we have already parsed this */
n1 = s - string;
s++;
n2 = strlen(s);
buf = m_alloc( 8 + n1 + n2 );
buf[0] = 0x80; /* human readable */
buf[1] = buf[2] = buf[3] = 0;
buf[4] = n1 >> 8;
buf[5] = n1;
buf[6] = n2 >> 8;
buf[7] = n2;
memcpy(buf+8, string, n1 );
memcpy(buf+8+n1, s, n2 );
build_sig_subpkt( sig, SIGSUBPKT_NOTATION, buf, 8+n1+n2 );
}
}
static int
do_sign( PKT_secret_key *sk, PKT_signature *sig,
MD_HANDLE md, int digest_algo )
@ -253,8 +293,10 @@ sign_file( STRLIST filenames, int detached, STRLIST locusr,
if( !compr_algo )
; /* don't use compression */
else {
if( old_style || compr_algo == 1 )
zfx.algo = 1;
if( old_style
|| compr_algo == 1
|| (compr_algo == -1 && !encrypt) )
zfx.algo = 1; /* use the non optional algorithm */
iobuf_push_filter( out, compress_filter, &zfx );
}
}
@ -392,6 +434,10 @@ sign_file( STRLIST filenames, int detached, STRLIST locusr,
build_sig_subpkt_from_sig( sig );
md_putc( md, sig->version );
}
if( opt.notation_data )
mk_notation( sig, opt.notation_data );
md_putc( md, sig->sig_class );
if( sig->version < 4 ) {
u32 a = sig->timestamp;
@ -578,6 +624,10 @@ clearsign_file( const char *fname, STRLIST locusr, const char *outfile )
build_sig_subpkt_from_sig( sig );
md_putc( md, sig->version );
}
if( opt.notation_data )
mk_notation( sig, opt.notation_data );
md_putc( md, sig->sig_class );
if( sig->version < 4 ) {
u32 a = sig->timestamp;
@ -706,6 +756,8 @@ make_keysig_packet( PKT_signature **ret_sig, PKT_public_key *pk,
rc = (*mksubpkt)( sig, opaque );
if( !rc ) {
if( opt.notation_data )
mk_notation( sig, opt.notation_data );
if( sig->version >= 4 )
md_putc( md, sig->version );
md_putc( md, sig->sig_class );

View File

@ -152,7 +152,7 @@ u32 add_days_to_timestamp( u32 stamp, u16 days );
const char *strtimevalue( u32 stamp );
const char *strtimestamp( u32 stamp ); /* GMT */
const char *asctimestamp( u32 stamp ); /* localized */
void print_string( FILE *fp, byte *p, size_t n, int delim );
void print_string( FILE *fp, const byte *p, size_t n, int delim );
int answer_is_yes( const char *s );
/*-- strgutil.c --*/

View File

@ -1,3 +1,7 @@
Tue May 25 19:50:32 CEST 1999 Werner Koch <wk@isil.d.shuttle.de>
* fr.po: Imported new version.
Mon May 17 21:54:43 CEST 1999 Werner Koch <wk@isil.d.shuttle.de>
* de.po, de.glo: New version from Walter.

163
po/fr.po
View File

@ -4,11 +4,11 @@
#
msgid ""
msgstr ""
"Project-Id-Version: gnupg 0.9.4a\n"
"POT-Creation-Date: 1999-05-23 15:36+0200\n"
"PO-Revision-Date: 1999-03-20 20:09+01:00\n"
"Project-Id-Version: gnupg 0.9.7\n"
"POT-Creation-Date: 1999-05-24 20:18+0200\n"
"PO-Revision-Date: 1999-05-24 21:48+02:00\n"
"Last-Translator: Gaël Quéri <gqueri@mail.dotcom.fr>\n"
"Language-Team: French <fr@li.org>\n"
"Language-Team: French <traduc@Linux.EU.ORG>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=ISO-8859-1\n"
"Content-Transfer-Encoding: 8-bit\n"
@ -224,9 +224,8 @@ msgid "network error"
msgstr "erreur de réseau"
#: util/errors.c:102
#, fuzzy
msgid "not encrypted"
msgstr "données chiffrées avec %s\n"
msgstr "non chiffré"
#: util/logger.c:218
#, c-format
@ -353,9 +352,8 @@ msgid "export keys to a key server"
msgstr "exporter les clés vers un serveur de clés"
#: g10/g10.c:187
#, fuzzy
msgid "import keys from a key server"
msgstr "exporter les clés vers un serveur de clés"
msgstr "importer les clés d'un serveur de clés"
#: g10/g10.c:190
msgid "import/merge keys"
@ -414,7 +412,7 @@ msgstr ""
#: g10/g10.c:213
msgid "create ascii armored output"
msgstr "créer une sortie ascii armurée"
msgstr "créer une sortie ascii avec armure"
#: g10/g10.c:214
msgid "|NAME|encrypt for NAME"
@ -430,7 +428,7 @@ msgstr "|N|niveau de compression N (0 d
#: g10/g10.c:221
msgid "use canonical text mode"
msgstr "utiliser le mode de texte canonique"
msgstr "utiliser le mode texte canonique"
#: g10/g10.c:222
msgid "use as output file"
@ -451,7 +449,7 @@ msgstr "forcer les signatures en v3"
#: g10/g10.c:226
msgid "always use a MDC for encryption"
msgstr ""
msgstr "toujours utiliser un sceau pour le chiffrement"
#: g10/g10.c:227
msgid "do not make any changes"
@ -512,11 +510,11 @@ msgstr "ne pas
#: g10/g10.c:243
msgid "(default is 1)"
msgstr "(1 par défaut)"
msgstr "nombre de signatures complètes requises (1)"
#: g10/g10.c:244
msgid "(default is 3)"
msgstr "(3 par défaut)"
msgstr "nombre de signatures marginales requises (3)"
#: g10/g10.c:246
msgid "|FILE|load extension module FILE"
@ -805,7 +803,7 @@ msgstr "erreur dans la ligne de remorque\n"
#: g10/armor.c:1001
msgid "no valid OpenPGP data found.\n"
msgstr "aucune de donnée OpenPGP valide n'a été trouvée.\n"
msgstr "aucune donnée OpenPGP valide n'a été trouvée.\n"
#: g10/armor.c:1005
#, c-format
@ -840,15 +838,17 @@ msgid ""
" 4 = I trust fully\n"
" s = please show me more information\n"
msgstr ""
"Décidez à quel point vous avez confiance en cet utilisateur pour vérifier\n"
"correctement les clés des autres utilisateurs (en regardant des passeports,\n"
"en vérifiant les empreintes de diverses sources...)?\n"
"À quel point avez-vous confiance en cet utilisateur pour vérifier "
"correctement\n"
"les clés des autres utilisateurs (vous pouvez vérifier son passeport, "
"vérifier\n"
"les empreintes de diverses sources...) ?\n"
"\n"
" 1 = je ne sais pas\n"
" 2 = je ne lui fais pas confiance\n"
" 3 = je le crois marginalement\n"
" 4 = je le crois totalement\n"
" s = montrez moi plus d'informations\n"
" s = montrez-moi plus d'informations\n"
#: g10/pkclist.c:156
msgid " m = back to the main menu\n"
@ -914,9 +914,9 @@ msgid "Use this key anyway? "
msgstr "Utiliser cette clé quand-même ? "
#: g10/pkclist.c:291
#, fuzzy, c-format
#, c-format
msgid "key %08lX: subkey has been revoked!\n"
msgstr "clé %08lX : la clé a été révoquée !\n"
msgstr "clé %08lX : la sous-clé a été révoquée !\n"
#: g10/pkclist.c:321
#, c-format
@ -976,9 +976,8 @@ msgid " This could mean that the signature is forgery.\n"
msgstr " Cela pourrait signifier que la signature est fausse.\n"
#: g10/pkclist.c:459
#, fuzzy
msgid "WARNING: This subkey has been revoked by its owner!\n"
msgstr "ATTENTION : Cette clé à été révoquée par son propriétaire !\n"
msgstr "ATTENTION : Cette sous-clé à été révoquée par son propriétaire !\n"
#: g10/pkclist.c:480
msgid "Note: This key has expired!\n"
@ -1130,9 +1129,9 @@ msgstr "taille trop petite ; 768 est la plus petite valeur permise.\n"
#. * you start a discussion with Marvin about this theme and then
#. * do whatever you want.
#: g10/keygen.c:466
#, fuzzy, c-format
#, c-format
msgid "keysize too large; %d is largest value allowed.\n"
msgstr "taille trop petite ; 768 est la plus petite valeur permise.\n"
msgstr "taille trop importante ; %d est la plus grande valeur permise.\n"
#: g10/keygen.c:471
msgid ""
@ -1232,7 +1231,7 @@ msgstr "Caract
#: g10/keygen.c:612
msgid "Name may not start with a digit\n"
msgstr "Le nom ne doit pas commencer avec un chiffre\n"
msgstr "Le nom ne doit pas commencer par un chiffre\n"
#: g10/keygen.c:614
msgid "Name must be at least 5 characters long\n"
@ -1436,9 +1435,9 @@ msgstr ""
"principale %08lX\n"
#: g10/import.c:116
#, fuzzy, c-format
#, c-format
msgid "can't open `%s': %s\n"
msgstr "ne peut ouvrir %s: %s\n"
msgstr "impossible d'ouvrir `%s': %s\n"
#: g10/import.c:160
#, c-format
@ -1451,9 +1450,9 @@ msgid "%lu keys so far processed\n"
msgstr "%lu clés traitées jusqu'ici\n"
#: g10/import.c:172
#, fuzzy, c-format
#, c-format
msgid "error reading `%s': %s\n"
msgstr "erreur pendant la création du mot de passe : %s\n"
msgstr "erreur pendant la lecture de `%s' : %s\n"
#: g10/import.c:175
#, c-format
@ -1539,14 +1538,12 @@ msgid "writing to `%s'\n"
msgstr "écriture de `%s'\n"
#: g10/import.c:379 g10/import.c:435
#, fuzzy
msgid "can't lock keyring `%': %s\n"
msgstr "ne peut verrouiller le porte-clés public : %s\n"
msgstr "ne peut verrouiller le porte-clés `%' : %s\n"
#: g10/import.c:382
#, fuzzy
msgid "error writing keyring `%': %s\n"
msgstr "%s : erreur pendant l'écriture de l'enregistrement de version : %s\n"
msgstr "erreur durant la lecture du porte-clés `%' : %s\n"
#: g10/import.c:387
#, c-format
@ -1569,9 +1566,9 @@ msgid "key %08lX: can't read original keyblock: %s\n"
msgstr "clé %08lX : ne peut lire le bloc de clés original : %s\n"
#: g10/import.c:438 g10/import.c:547 g10/import.c:648
#, fuzzy, c-format
#, c-format
msgid "error writing keyring `%s': %s\n"
msgstr "%s : erreur pendant l'écriture de l'enregistrement de version : %s\n"
msgstr "erreur durant l'écriture du porte-clés `%s' : %s\n"
#: g10/import.c:444
#, c-format
@ -1609,9 +1606,9 @@ msgid "key %08lX: not changed\n"
msgstr "clé %08lX : n'a pas changé\n"
#: g10/import.c:544 g10/import.c:645
#, fuzzy, c-format
#, c-format
msgid "can't lock keyring `%s': %s\n"
msgstr "ne peut verrouiller le porte-clés public : %s\n"
msgstr "ne peut verrouiller le porte-clés `%s' : %s\n"
#: g10/import.c:552
#, c-format
@ -1703,7 +1700,7 @@ msgstr "cl
#: g10/import.c:915
#, c-format
msgid "key %08lX: duplicated user ID detected - merged\n"
msgstr ""
msgstr "clé %08lX: nom d'utilisateur doublon fusionné\n"
#: g10/import.c:966
#, c-format
@ -1722,7 +1719,7 @@ msgstr "%s : utilisateur non trouv
#: g10/keyedit.c:177
msgid "[revocation]"
msgstr ""
msgstr "[révocation]"
#: g10/keyedit.c:178
msgid "[self-signature]"
@ -2016,29 +2013,25 @@ msgid "change the ownertrust"
msgstr "changer la confiance"
#: g10/keyedit.c:564
#, fuzzy
msgid "revsig"
msgstr "signer"
msgstr "revsig"
#
#: g10/keyedit.c:564
#, fuzzy
msgid "revoke signatures"
msgstr "forcer les signatures en v3"
msgstr "révoquer les signatures"
#: g10/keyedit.c:565
#, fuzzy
msgid "revkey"
msgstr "clé"
msgstr "revclé"
#: g10/keyedit.c:565
#, fuzzy
msgid "revoke a secondary key"
msgstr "enlever une clé secondaire"
msgstr "révoquer une clé secondaire"
#: g10/keyedit.c:584
msgid "can't do that in batchmode\n"
msgstr "ne peut faire cela en mode automatique\n"
msgstr "impossible de faire cela en mode automatique\n"
#. check that they match
#. FIXME: check that they both match
@ -2118,14 +2111,12 @@ msgid "Do you really want to delete this key? "
msgstr "Voulez-vous vraiment supprimer cette clé ? "
#: g10/keyedit.c:846
#, fuzzy
msgid "Do you really want to revoke the selected keys? "
msgstr "Voulez-vous vraiment supprimer les clés sélectionnées ? "
msgstr "Voulez-vous vraiment révoquer les clés sélectionnées ? "
#: g10/keyedit.c:847
#, fuzzy
msgid "Do you really want to revoke this key? "
msgstr "Voulez-vous vraiment supprimer cette clé ? "
msgstr "Voulez-vous vraiment révoquer cette clé ? "
#: g10/keyedit.c:901
msgid "Invalid command (try \"help\")\n"
@ -2166,31 +2157,29 @@ msgid "No secondary key with index %d\n"
msgstr "Pas de clé secondaire avec l'index %d\n"
#: g10/keyedit.c:1566
#, fuzzy
msgid "user ID: \""
msgstr "Entrez le nom d'utilisateur : "
msgstr "nom d'utilisateur : « "
#: g10/keyedit.c:1569
#, fuzzy, c-format
#, c-format
msgid ""
"\"\n"
"signed with your key %08lX at %s\n"
msgstr "Rien à signer avec la clé %08lX\n"
msgstr ""
" »\n"
"signé avec votre clé %08lX à %s\n"
#: g10/keyedit.c:1573
#, fuzzy
msgid "Create a revocation certificate for this signature? (y/N)"
msgstr "générer un certificat de révocation"
msgstr "Générer un certificat de révocation pour cette signature ? (o/N)"
#: g10/keyedit.c:1653
#, fuzzy
msgid "Really create the revocation certificates? (y/N)"
msgstr "générer un certificat de révocation"
msgstr "Faut-il vraiment générer les certificats de révocation ? (o/N)"
#: g10/keyedit.c:1676
#, fuzzy
msgid "no secret key\n"
msgstr "mauvaise clé secrète"
msgstr "pas de clé secrète\n"
#: g10/mainproc.c:184
#, c-format
@ -2216,7 +2205,7 @@ msgstr "le d
#: g10/mainproc.c:252
msgid "WARNING: encrypted message has been manipulated!\n"
msgstr ""
msgstr "ATTENTION: le message chiffré a été manipulé !\n"
#: g10/mainproc.c:257
#, c-format
@ -2385,11 +2374,8 @@ msgid "WARNING: Weak key detected - please change passphrase again.\n"
msgstr "ATTENTION : Clé faible détectée - changez encore le mot de passe.\n"
#: g10/sig-check.c:187
#, fuzzy
msgid "assuming bad MDC due to an unknown critical bit\n"
msgstr ""
"la signature est supposée être fausse car un bit critique est\n"
"inconnu\n"
msgstr "le sceau (MDC) est supposé être faux car un bit critique est inconnu\n"
#: g10/sig-check.c:283
msgid ""
@ -3257,46 +3243,3 @@ msgstr "Pas d'aide disponible"
#, c-format
msgid "No help available for `%s'"
msgstr "Pas d'aide disponible pour `%s'"
#~ msgid "can't open file: %s\n"
#~ msgstr "ne peut ouvrir le fichier : %s\n"
#~ msgid "read error: %s\n"
#~ msgstr "erreur de lecture : %s\n"
#~ msgid "can't write to keyring: %s\n"
#~ msgstr "ne peut écrire le porte-clés : %s\n"
#~ msgid "writing keyblock\n"
#~ msgstr "écriture du bloc de clés\n"
#~ msgid "can't write keyblock: %s\n"
#~ msgstr "ne peut écrire le bloc de clés : %s\n"
#~ msgid "can't lock secret keyring: %s\n"
#~ msgstr "ne peut verrouiller le porte-clés secret : %s\n"
#~ msgid "can't write keyring: %s\n"
#~ msgstr "ne peut écrire le porte-clés : %s\n"
#, fuzzy
#~ msgid "encrypted message is valid\n"
#~ msgstr "la fonction de hachage sélectionnée est invalide\n"
#, fuzzy
#~ msgid "Can't check MDC: %s\n"
#~ msgstr "Ne peut vérifier la signature : %s\n"
#~ msgid "Usage: gpgm [options] [files] (-h for help)"
#~ msgstr "Utilisation: gpgm [options] [fichiers] (-h pour l'aide)"
#
#~ msgid ""
#~ "Syntax: gpgm [options] [files]\n"
#~ "GnuPG maintenance utility\n"
#~ msgstr ""
#~ "Syntaxe: gpgm [options] [fichiers]\n"
#~ "utilitaire de maitenance de GnuPG\n"
#~ msgid "usage: gpgm [options] "
#~ msgstr "utilisation: gpgm [options] "

View File

@ -125,7 +125,7 @@ asctimestamp( u32 stamp )
* Print a string to FP, but filter all control characters out.
*/
void
print_string( FILE *fp, byte *p, size_t n, int delim )
print_string( FILE *fp, const byte *p, size_t n, int delim )
{
for( ; n; n--, p++ )
if( iscntrl( *p ) || *p == delim ) {