diff options
author | Werner Koch <[email protected]> | 2000-10-04 13:51:27 +0000 |
---|---|---|
committer | Werner Koch <[email protected]> | 2000-10-04 13:51:27 +0000 |
commit | 6dc268a8a1911e46259cf86946fcab80a98c8dc2 (patch) | |
tree | dcc8303b40552997697ecc66d33c13375d5bc822 | |
parent | Added FAQ to my Nils' of files (diff) | |
download | gnupg-6dc268a8a1911e46259cf86946fcab80a98c8dc2.tar.gz gnupg-6dc268a8a1911e46259cf86946fcab80a98c8dc2.zip |
See ChangeLog: Wed Oct 4 15:50:18 CEST 2000 Werner Koch
-rw-r--r-- | ChangeLog | 6 | ||||
-rw-r--r-- | NEWS | 13 | ||||
-rw-r--r-- | THANKS | 2 | ||||
-rw-r--r-- | TODO | 9 | ||||
-rw-r--r-- | VERSION | 2 | ||||
-rw-r--r-- | cipher/ChangeLog | 5 | ||||
-rw-r--r-- | cipher/sha1.c | 2 | ||||
-rw-r--r-- | configure.in | 6 | ||||
-rw-r--r-- | doc/ChangeLog | 5 | ||||
-rw-r--r-- | doc/Makefile.am | 8 | ||||
-rw-r--r-- | doc/gpgv.sgml | 227 | ||||
-rw-r--r-- | g10/ChangeLog | 9 | ||||
-rw-r--r-- | g10/Makefile.am | 61 | ||||
-rw-r--r-- | g10/gpgv.c | 305 | ||||
-rw-r--r-- | g10/mainproc.c | 5 | ||||
-rw-r--r-- | g10/parse-packet.c | 1 | ||||
-rw-r--r-- | g10/sign.c | 22 | ||||
-rw-r--r-- | po/da.po | 18 | ||||
-rw-r--r-- | po/de.po | 18 | ||||
-rw-r--r-- | po/eo.po | 18 | ||||
-rw-r--r-- | po/es_ES.po | 18 | ||||
-rw-r--r-- | po/fr.po | 18 | ||||
-rw-r--r-- | po/id.po | 18 | ||||
-rw-r--r-- | po/it.po | 18 | ||||
-rw-r--r-- | po/ja.po | 18 | ||||
-rw-r--r-- | po/nl.po | 18 | ||||
-rw-r--r-- | po/pl.po | 18 | ||||
-rw-r--r-- | po/pt_BR.po | 18 | ||||
-rw-r--r-- | po/pt_PT.po | 18 | ||||
-rw-r--r-- | po/ru.po | 18 | ||||
-rw-r--r-- | po/sv.po | 18 | ||||
-rwxr-xr-x | scripts/mk-w32-dist | 6 | ||||
-rwxr-xr-x | tools/mail-signed-keys | 15 |
33 files changed, 786 insertions, 175 deletions
@@ -1,3 +1,9 @@ +Wed Oct 4 15:50:18 CEST 2000 Werner Koch <[email protected]> + + * configure.in: Set DYNLINK_MOD_CFLAGS for Irix. It seems that Irix + needs the -shared flag. In 1.1 we are going to use libtool, so this + module stuff will get redesigned anyway. Suggested by Jeff Long. + Thu Sep 14 14:20:38 CEST 2000 Werner Koch <[email protected]> * acinclude.m4 (GNUPG_CHECK_FAQPROG): New. @@ -1,5 +1,10 @@ -Noteworthy changes in the current CVS branch STABLE-BRANCH-1-0 --------------------------------------------------------------- + + * New utility gpgv which is a stripped down version of gpg to + be used to verify signatures against a list of trusted keys. + + +Noteworthy changes in version 1.0.3 (2000-09-18) +------------------------------------------------ * Fixed problems with piping to/from other MS-Windows software @@ -18,7 +23,7 @@ Noteworthy changes in the current CVS branch STABLE-BRANCH-1-0 * The --trusted-key option is back after it left us with 0.9.5 * RSA is supported. Key generation does not yet work but will come - soon. + soon. * CAST5 and SHA-1 are now the default algorithms to protect the key and for symmetric-only encryption. This should solve a couple @@ -29,8 +34,6 @@ Noteworthy changes in the current CVS branch STABLE-BRANCH-1-0 this. Older versions of GnuPG don't support it, so they should be upgraded to at least 1.0.2 - - Noteworthy changes in version 1.0.2 (2000-07-12) ---------------------------------------------- @@ -38,7 +38,7 @@ Ed Boraas [email protected] Edmund GRIMLEY EVANS [email protected] Enzo Michelangeli [email protected] Ernst Molitor [email protected] -Fabio Coatti [email protected] +Fabio Coatti [email protected] Felix von Leitner [email protected] Frank Donahoe [email protected] Frank Heckenbach [email protected] @@ -1,4 +1,13 @@ + * If there is no secure memory, allocate more memory for the secure + memory block or do it in all cases. + + * for detached signatures: Allow to specify a filedescriptor (maybe + we can use a generic way to specify filedescriptors - "-" is already + used to specify 0/1). + + * List all UserID with GOODSIG? + * add a way to set expiration time for key signatures. * add some minor things vor VMS. @@ -1 +1 @@ -1.0.2d +1.0.3a diff --git a/cipher/ChangeLog b/cipher/ChangeLog index 7b73fb6a1..0c94910f4 100644 --- a/cipher/ChangeLog +++ b/cipher/ChangeLog @@ -1,3 +1,8 @@ +Wed Oct 4 15:50:18 CEST 2000 Werner Koch <[email protected]> + + * sha1.c (transform): Use rol() macro. Actually this is not needed + for a newer gcc but there are still aoter compilers. + Thu Sep 14 14:20:38 CEST 2000 Werner Koch <[email protected]> * random.c (fast_random_poll): Check ENOSYS for getrusage. diff --git a/cipher/sha1.c b/cipher/sha1.c index 2c2a10a7b..bd21aeea4 100644 --- a/cipher/sha1.c +++ b/cipher/sha1.c @@ -108,7 +108,7 @@ transform( SHA1_CONTEXT *hd, byte *data ) #define M(i) ( tm = x[i&0x0f] ^ x[(i-14)&0x0f] \ ^ x[(i-8)&0x0f] ^ x[(i-3)&0x0f] \ - , (x[i&0x0f] = (tm << 1) | (tm >> 31)) ) + , (x[i&0x0f] = rol(tm,1)) ) #define R(a,b,c,d,e,f,k,m) do { e += rol( a, 5 ) \ + f( b, c, d ) \ diff --git a/configure.in b/configure.in index 9d23be5e9..349956756 100644 --- a/configure.in +++ b/configure.in @@ -272,6 +272,12 @@ case "${target}" in DYNLINK_MOD_CFLAGS="-shared $CFLAGS_PIC" ;; + *-irix*) + NAME_OF_DEV_RANDOM="/dev/random" + NAME_OF_DEV_URANDOM="/dev/urandom" + DYNLINK_MOD_CFLAGS="-shared $CFLAGS_PIC" + ;; + *) NAME_OF_DEV_RANDOM="/dev/random" NAME_OF_DEV_URANDOM="/dev/urandom" diff --git a/doc/ChangeLog b/doc/ChangeLog index e708aeae3..bca46abef 100644 --- a/doc/ChangeLog +++ b/doc/ChangeLog @@ -1,3 +1,8 @@ +Wed Oct 4 15:50:18 CEST 2000 Werner Koch <[email protected]> + + * gpgv.sgml: New. + * Makefile.am: build it. + Thu Sep 14 14:20:38 CEST 2000 Werner Koch <[email protected]> * faq.raw: New. diff --git a/doc/Makefile.am b/doc/Makefile.am index cb6874b6d..058fc4e9c 100644 --- a/doc/Makefile.am +++ b/doc/Makefile.am @@ -1,9 +1,9 @@ ## Process this file with automake to create Makefile.in -EXTRA_DIST = DETAILS gpg.sgml gpg.1 faq.raw FAQ faq.html \ +EXTRA_DIST = DETAILS gpg.sgml gpg.1 gpgv.sgml gpgv.1 faq.raw FAQ faq.html \ HACKING OpenPGP README.W32 -man_MANS = gpg.1 +man_MANS = gpg.1 gpgv.1 pkgdata_DATA = FAQ faq.html @@ -49,3 +49,7 @@ dist-hook: + + + + diff --git a/doc/gpgv.sgml b/doc/gpgv.sgml new file mode 100644 index 000000000..8d60a3726 --- /dev/null +++ b/doc/gpgv.sgml @@ -0,0 +1,227 @@ +<!-- gpgv.sgml - the man page for GnuPG + Copyright (C) 2000 Free Software Foundation, Inc. + + This file is part of GnuPG. + + GnuPG is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + GnuPG is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +--> +<!-- This file should be processed by docbook-to-man to + create a manual page. This program has currently the bug + not to remove leading white space. So this source file does + not look very pretty + + FIXME: generated a file with entity (e.g. pathnames) from the + configure scripts and include it here +--> + + +<!DOCTYPE refentry PUBLIC "-//Davenport//DTD DocBook V3.0//EN" [ +<!entity ParmDir "<parameter>directory</parameter>"> +<!entity ParmFile "<parameter>file</parameter>"> +<!entity OptParmFile "<optional>&ParmFile;</optional>"> +<!entity ParmFiles "<parameter>files</parameter>"> +<!entity OptParmFiles "<optional>&ParmFiles;</optional>"> +<!entity ParmNames "<parameter>names</parameter>"> +<!entity OptParmNames "<optional>&ParmNames;</optional>"> +<!entity ParmName "<parameter>name</parameter>"> +<!entity OptParmName "<optional>&ParmName;</optional>"> +<!entity ParmKeyIDs "<parameter>key IDs</parameter>"> +<!entity ParmN "<parameter>n</parameter>"> +<!entity ParmFlags "<parameter>flags</parameter>"> +<!entity ParmString "<parameter>string</parameter>"> +<!entity ParmValue "<parameter>value</parameter>"> +<!entity ParmNameValue "<parameter>name=value</parameter>"> +]> + +<refentry id="gpgb"> +<refmeta> + <refentrytitle>gpgv</refentrytitle> + <manvolnum>1</manvolnum> + <refmiscinfo class="gnu">GNU Tools</refmiscinfo> +</refmeta> +<refnamediv> + <refname/gpg/ + <refpurpose>signature verification tool</> +</refnamediv> +<refsynopsisdiv> + <synopsis> +<command>gpg</> + <optional><parameter/options/</optional> + <optional><parameter/signed files/</optional> + </synopsis> +</refsynopsisdiv> + +<refsect1> + <title>DESCRIPTION</title> + <para> +<command/gpgv/ is the OpenPGP signature checking tool. + </para> + <para> +This program is a stripped down version of <command/gpg/ which is only +able +to check signatures. It is somewhat smaller than the full blown +<command/gpg/ and uses a different (and more simple way) to check that +the public keys used to made the signature are trustworth. There is +no options files and only very few options are implemented. +</para> +<para> +<command/gpgv/ assumes that all keys in the keyring are trustworty. +It uses by default a keyring named <filename/trustedkeys.gpg/ which is +assumed to be in the home directory as defined by GnuPG or set by an +option or an environment variable. An option may be used to specify +another keyring or even multiple keyrings. +</para> +</refsect1> + +<refsect1> +<title>OPTIONS</title> +<para> +<command/gpgv/ recognizes these options: +</para> + +<variablelist> + + +<varlistentry> +<term>-v, --verbose</term> +<listitem><para> +Give more information during processing. If used +twice, the input data is listed in detail. +</para></listitem></varlistentry> + + +<varlistentry> +<term>-q, --quiet</term> +<listitem><para> +Try to be as quiet as possible. +</para></listitem></varlistentry> + + +<varlistentry> +<term>--keyring &ParmFile;</term> +<listitem><para> +Add &ParmFile to the list of keyrings. +If &ParmFile begins with a tilde and a slash, these +are replaced by the HOME directory. If the filename +does not contain a slash, it is assumed to be in the +home-directory ("~/.gnupg" if --homedir is not used). +The filename may be prefixed with a scheme:</para> +<para>"gnupg-ring:" is the default one.</para> +<para>"gnupg-gdbm:" may be used for a GDBM ring. Note that GDBM +is experimental and likely to be removed in future versions.</para> +<para>It might make sense to use it together with --no-default-keyring. +</para></listitem></varlistentry> + + +<varlistentry> +<term>--homedir &ParmDir;</term> +<listitem><para> +Set the name of the home directory to &ParmDir; If this +option is not used it defaults to "~/.gnupg". It does +not make sense to use this in a options file. This +also overrides the environment variable "GNUPGHOME". +</para></listitem></varlistentry> + + +<varlistentry> +<term>--status-fd &ParmN;</term> +<listitem><para> +Write special status strings to the file descriptor &ParmN;. +See the file DETAILS in the documentation for a listing of them. +</para></listitem></varlistentry> + + +<varlistentry> +<term>--logger-fd &ParmN;</term> +<listitem><para> +Write log output to file descriptor &ParmN; and not to stderr. +</para></listitem></varlistentry> + + +<varlistentry> +<term>--ignore-time-conflict</term> +<listitem><para> +GnuPG normally checks that the timestamps associated with keys and +signatures have plausible values. However, sometimes a signature seems to +be older than the key due to clock problems. This option makes these +checks just a warning. +</para></listitem></varlistentry> + + +</variablelist> +</refsect1> + + +<refsect1> + <title>RETURN VALUE</title> + <para> +The program returns 0 if everything was fine, 1 if at least +one signature was bad, and other error codes for fatal errors. + </para> +</refsect1> + +<refsect1> + <title>EXAMPLES</title> + <variablelist> + +<varlistentry> +<term>gpgv <parameter/pgpfile/</term> +<term>gpgv <parameter/sigfile/ &OptParmFiles;</term> +<listitem><para> +Verify the signature of the file. The second form +is used for detached signatures, where <parameter/sigfile/ is the detached +signature (either ASCII armored or binary) and &OptParmFiles are the signed +data; if this is not given the name of the file holding the signed data is +constructed by cutting off the extension (".asc", ".sig" or ".sign") from +<parameter/sigfile/. +</para></listitem></varlistentry> + + </variablelist> +</refsect1> + + +<refsect1> + <title>ENVIRONMENT</title> + + <variablelist> +<varlistentry> +<term>HOME</term> +<listitem><para>Used to locate the default home directory.</para></listitem> +</varlistentry> +<varlistentry> +<term>GNUPGHOME</term> +<listitem><para>If set directory used instead of "~/.gnupg".</para></listitem> +</varlistentry> + + </variablelist> + +</refsect1> + +<refsect1> + <title>FILES</title> + <variablelist> + +<varlistentry> +<term>~/.gnupg/trustedkeys.gpg</term> +<listitem><para>The default keyring with the allowed keys</para></listitem> +</varlistentry> + + </variablelist> +</refsect1> + +<!-- SEE ALSO not yet needed--> + +</refentry> + diff --git a/g10/ChangeLog b/g10/ChangeLog index 5a903c625..8bd087ae1 100644 --- a/g10/ChangeLog +++ b/g10/ChangeLog @@ -1,3 +1,12 @@ +Wed Oct 4 15:50:18 CEST 2000 Werner Koch <[email protected]> + + * sign.c (hash_for): New arg to take packet version in account, changed + call callers. + + * gpgv.c: New. + * Makefile.am: Rearranged source files so that gpgv can be build with + at least files as possible. + Mon Sep 18 12:13:52 CEST 2000 Werner Koch <[email protected]> * hkp.c (not_implemented): Print a notice for W32 diff --git a/g10/Makefile.am b/g10/Makefile.am index 6170b1691..fcf443ecb 100644 --- a/g10/Makefile.am +++ b/g10/Makefile.am @@ -7,7 +7,7 @@ LDFLAGS = @LDFLAGS@ @DYNLINK_LDFLAGS@ needed_libs = ../cipher/libcipher.a ../mpi/libmpi.a ../util/libutil.a #noinst_PROGRAMS = gpgd -bin_PROGRAMS = gpg +bin_PROGRAMS = gpg gpgv common_source = \ build-packet.c \ @@ -15,57 +15,64 @@ common_source = \ filter.h \ free-packet.c \ getkey.c \ - keydb.h \ - delkey.c \ - pkclist.c \ - skclist.c \ ringedit.c \ + seskey.c \ + keydb.h \ kbnode.c \ main.h \ mainproc.c \ armor.c \ mdfilter.c \ textfilter.c \ - cipher.c \ misc.c \ options.h \ openfile.c \ keyid.c \ - trustdb.c \ - trustdb.h \ - tdbdump.c \ - tdbio.c \ - tdbio.h \ - hkp.h \ - hkp.c \ packet.h \ parse-packet.c \ - passphrase.c \ - pubkey-enc.c \ - seckey-cert.c \ - seskey.c \ - import.c \ - export.c \ comment.c \ status.c \ status.h \ - sign.c \ plaintext.c \ - encr-data.c \ - encode.c \ - revoke.c \ - keylist.c \ sig-check.c \ - signal.c \ - helptext.c + signal.c gpg_SOURCES = g10.c \ $(common_source) \ + pkclist.c \ + skclist.c \ + pubkey-enc.c \ + passphrase.c \ + seckey-cert.c \ + encr-data.c \ + cipher.c \ + keylist.c \ + encode.c \ + sign.c \ verify.c \ + revoke.c \ decrypt.c \ keyedit.c \ dearmor.c \ - keygen.c + import.c \ + export.c \ + hkp.h \ + hkp.c \ + trustdb.c \ + trustdb.h \ + tdbdump.c \ + tdbio.c \ + tdbio.h \ + delkey.c \ + keygen.c \ + helptext.c + +gpgv_SOURCES = gpgv.c \ + $(common_source) \ + verify.c + + + #gpgd_SOURCES = gpgd.c \ # ks-proto.h \ diff --git a/g10/gpgv.c b/g10/gpgv.c new file mode 100644 index 000000000..bcd97ecb5 --- /dev/null +++ b/g10/gpgv.c @@ -0,0 +1,305 @@ +/* gpgv.c - The GnuPG signature verify utility + * Copyright (C) 2000 Free Software Foundation, Inc. + * + * This file is part of GnuPG. + * + * GnuPG is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * GnuPG is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA + */ + +#include <config.h> +#include <errno.h> +#include <stdio.h> +#include <stdlib.h> +#include <string.h> +#include <ctype.h> +#include <unistd.h> +#ifdef HAVE_DOSISH_SYSTEM + #include <fcntl.h> /* for setmode() */ +#endif + + +#include "packet.h" +#include "iobuf.h" +#include "memory.h" +#include "util.h" +#include "main.h" +#include "options.h" +#include "keydb.h" +#include "trustdb.h" +#include "mpi.h" +#include "cipher.h" +#include "filter.h" +#include "ttyio.h" +#include "i18n.h" +#include "status.h" +#include "g10defs.h" +#include "hkp.h" + + +enum cmd_and_opt_values { aNull = 0, + oQuiet = 'q', + oVerbose = 'v', + oBatch = 500, + oKeyring, + oIgnoreTimeConflict, + oStatusFD, + oLoggerFD, + oHomedir, +aTest }; + + +static ARGPARSE_OPTS opts[] = { + + { 301, NULL, 0, N_("@\nOptions:\n ") }, + + { oVerbose, "verbose", 0, N_("verbose") }, + { oQuiet, "quiet", 0, N_("be somewhat more quiet") }, + { oKeyring, "keyring" ,2, N_("take the keys from this keyring")}, + { oIgnoreTimeConflict, "ignore-time-conflict", 0, + N_("make timestamp conflicts only a warning") }, + { oStatusFD, "status-fd" ,1, N_("|FD|write status info to this FD") }, + { oLoggerFD, "logger-fd",1, "@" }, + { oHomedir, "homedir", 2, "@" }, /* defaults to "~/.gnupg" */ + +{0} }; + + + +int g10_errors_seen = 0; + +const char * +strusage( int level ) +{ + const char *p; + switch( level ) { + case 11: p = "gpgv (GnuPG)"; + break; + case 13: p = VERSION; break; + case 17: p = PRINTABLE_OS_NAME; break; + case 19: p = + _("Please report bugs to <[email protected]>.\n"); + break; + case 1: + case 40: p = + _("Usage: gpgv [options] [files] (-h for help)"); + break; + case 41: p = + _("Syntax: gpg [options] [files]\n" + "Check signatures against known trusted keys\n"); + break; + + default: p = default_strusage(level); + } + return p; +} + + + + +static void +i18n_init(void) +{ + #ifdef USE_SIMPLE_GETTEXT + set_gettext_file( PACKAGE ); + #else + #ifdef ENABLE_NLS + #ifdef HAVE_LC_MESSAGES + setlocale( LC_TIME, "" ); + setlocale( LC_MESSAGES, "" ); + #else + setlocale( LC_ALL, "" ); + #endif + bindtextdomain( PACKAGE, G10_LOCALEDIR ); + textdomain( PACKAGE ); + #endif + #endif +} + + +int +main( int argc, char **argv ) +{ + ARGPARSE_ARGS pargs; + int rc=0; + STRLIST sl; + STRLIST nrings=NULL; + unsigned configlineno; + + log_set_name("gpgv"); + init_signals(); + i18n_init(); + opt.command_fd = -1; /* no command fd */ + opt.pgp2_workarounds = 1; + opt.auto_key_retrieve = 1; + opt.always_trust = 1; + opt.batch = 1; + + #ifdef __MINGW32__ + opt.homedir = read_w32_registry_string( NULL, "Software\\GNU\\GnuPG", "HomeDir" ); + #else + opt.homedir = getenv("GNUPGHOME"); + #endif + if( !opt.homedir || !*opt.homedir ) { + opt.homedir = GNUPG_HOMEDIR; + } + tty_no_terminal(1); + tty_batchmode(1); + disable_dotlock(); + + pargs.argc = &argc; + pargs.argv = &argv; + pargs.flags= 1; /* do not remove the args */ + while( optfile_parse( NULL, NULL, &configlineno, &pargs, opts) ) { + switch( pargs.r_opt ) { + case oQuiet: opt.quiet = 1; break; + case oVerbose: g10_opt_verbose++; + opt.verbose++; opt.list_sigs=1; break; + case oKeyring: append_to_strlist( &nrings, pargs.r.ret_str); break; + case oStatusFD: set_status_fd( pargs.r.ret_int ); break; + case oLoggerFD: log_set_logfile( NULL, pargs.r.ret_int ); break; + case oHomedir: opt.homedir = pargs.r.ret_str; break; + default : pargs.err = 2; break; + } + } + + if( log_get_errorcount(0) ) + g10_exit(2); + + g10_opt_homedir = opt.homedir; + + if( opt.verbose > 1 ) + set_packet_list_mode(1); + + if( !nrings ) /* no keyring given: use default one */ + add_keyblock_resource("trustedkeys.gpg", 0, 0); + for(sl = nrings; sl; sl = sl->next ) + add_keyblock_resource( sl->d, 0, 0 ); + + FREE_STRLIST(nrings); + + if( (rc = verify_signatures( argc, argv ) )) + log_error("verify signatures failed: %s\n", g10_errstr(rc) ); + + /* cleanup */ + g10_exit(0); + return 8; /*NEVER REACHED*/ +} + + +void +g10_exit( int rc ) +{ + rc = rc? rc : log_get_errorcount(0)? 2 : + g10_errors_seen? 1 : 0; + exit(rc ); +} + + +/* Stub: + * We have to override the trustcheck from pkclist.c becuase + * this utility assumes that all keys in the keyring are trustworthy + */ +int +check_signatures_trust( PKT_signature *sig ) +{ + return 0; +} + + +/* Stub: + * We don't have the trustdb , so we have to provide some stub functions + * instead + */ +int +keyid_from_lid( ulong lid, u32 *keyid ) +{ + return G10ERR_TRUSTDB; +} + +/* Stub: */ +int +query_trust_info( PKT_public_key *pk, const byte *namehash ) +{ + return '?'; +} + +/* Stub: */ +int +get_ownertrust_info( ulong lid ) +{ + return '?'; +} + + +/* Stub: + * Because we only work with trusted keys, it does not make sense to + * get them from a keyserver + */ +int +hkp_ask_import( u32 *keyid ) +{ + return -1; +} + +/* Stub: + * No encryption here but mainproc links to these functions. + */ +int +get_session_key( PKT_pubkey_enc *k, DEK *dek ) +{ + return G10ERR_GENERAL; +} +/* Stub: */ +int +get_override_session_key( DEK *dek, const char *string ) +{ + return G10ERR_GENERAL; +} +/* Stub: */ +int +decrypt_data( void *procctx, PKT_encrypted *ed, DEK *dek ) +{ + return G10ERR_GENERAL; +} + + +/* Stub: + * No interactive commnds, so we don't need the helptexts + */ +void +display_online_help( const char *keyword ) +{ +} + +/* Stub: + * We don't use secret keys, but getkey.c links to this + */ +int +check_secret_key( PKT_secret_key *sk, int n ) +{ + return G10ERR_GENERAL; +} + +/* Stub: + * No secret key, so no passphrase needed + */ +DEK * +passphrase_to_dek( u32 *keyid, int pubkey_algo, + int cipher_algo, STRING2KEY *s2k, int mode ) +{ + return NULL; +} + + diff --git a/g10/mainproc.c b/g10/mainproc.c index 882db04e2..6449d3823 100644 --- a/g10/mainproc.c +++ b/g10/mainproc.c @@ -1262,6 +1262,11 @@ proc_tree( CTX c, KBNODE node ) */ /* c->mfx.md2? 0 :(sig->sig_class == 0x01) */ #endif + if ( DBG_HASHING ) { + md_start_debug( c->mfx.md, "verify" ); + if ( c->mfx.md2 ) + md_start_debug( c->mfx.md2, "verify2" ); + } if( c->sigs_only ) { rc = hash_datafiles( c->mfx.md, c->mfx.md2, c->signed_data, c->sigfilename, diff --git a/g10/parse-packet.c b/g10/parse-packet.c index 91aa231b0..3521951b9 100644 --- a/g10/parse-packet.c +++ b/g10/parse-packet.c @@ -1734,6 +1734,7 @@ parse_encrypted( IOBUF inp, int pkttype, unsigned long pktlen, if( version != 1 ) { log_error("encrypted_mdc packet with unknown version %d\n", version); + /*skip_rest(inp, pktlen); should we really do this? */ goto leave; } ed->mdc_method = DIGEST_ALGO_SHA1; diff --git a/g10/sign.c b/g10/sign.c index 5d87dad84..588b70372 100644 --- a/g10/sign.c +++ b/g10/sign.c @@ -162,13 +162,13 @@ complete_sig( PKT_signature *sig, PKT_secret_key *sk, MD_HANDLE md ) } static int -hash_for(int pubkey_algo ) +hash_for(int pubkey_algo, int packet_version ) { if( opt.def_digest_algo ) return opt.def_digest_algo; if( pubkey_algo == PUBKEY_ALGO_DSA ) return DIGEST_ALGO_SHA1; - if( pubkey_algo == PUBKEY_ALGO_RSA ) + if( pubkey_algo == PUBKEY_ALGO_RSA && packet_version < 4 ) return DIGEST_ALGO_MD5; return DEFAULT_DIGEST_ALGO; } @@ -304,7 +304,7 @@ sign_file( STRLIST filenames, int detached, STRLIST locusr, for( sk_rover = sk_list; sk_rover; sk_rover = sk_rover->next ) { PKT_secret_key *sk = sk_rover->sk; - md_enable(mfx.md, hash_for(sk->pubkey_algo)); + md_enable(mfx.md, hash_for(sk->pubkey_algo, sk->version )); } if( !multifile ) @@ -361,7 +361,7 @@ sign_file( STRLIST filenames, int detached, STRLIST locusr, sk = sk_rover->sk; ops = m_alloc_clear( sizeof *ops ); ops->sig_class = opt.textmode && !outfile ? 0x01 : 0x00; - ops->digest_algo = hash_for(sk->pubkey_algo); + ops->digest_algo = hash_for(sk->pubkey_algo, sk->version); ops->pubkey_algo = sk->pubkey_algo; keyid_from_sk( sk, ops->keyid ); ops->last = skcount == 1; @@ -488,7 +488,7 @@ sign_file( STRLIST filenames, int detached, STRLIST locusr, sig = m_alloc_clear( sizeof *sig ); sig->version = old_style || opt.force_v3_sigs ? 3 : sk->version; keyid_from_sk( sk, sig->keyid ); - sig->digest_algo = hash_for(sk->pubkey_algo); + sig->digest_algo = hash_for(sk->pubkey_algo, sk->version); sig->pubkey_algo = sk->pubkey_algo; sig->timestamp = make_timestamp(); sig->sig_class = opt.textmode && !outfile? 0x01 : 0x00; @@ -538,7 +538,7 @@ sign_file( STRLIST filenames, int detached, STRLIST locusr, } md_final( md ); - rc = do_sign( sk, sig, md, hash_for(sig->pubkey_algo) ); + rc = do_sign( sk, sig, md, hash_for(sig->pubkey_algo, sk->version) ); md_close( md ); if( !rc ) { /* and write it */ @@ -621,7 +621,7 @@ clearsign_file( const char *fname, STRLIST locusr, const char *outfile ) for( sk_rover = sk_list; sk_rover; sk_rover = sk_rover->next ) { PKT_secret_key *sk = sk_rover->sk; - if( hash_for(sk->pubkey_algo) == DIGEST_ALGO_MD5 ) + if( hash_for(sk->pubkey_algo, sk->version) == DIGEST_ALGO_MD5 ) only_md5 = 1; else { only_md5 = 0; @@ -640,7 +640,7 @@ clearsign_file( const char *fname, STRLIST locusr, const char *outfile ) iobuf_writestr(out, "Hash: " ); for( sk_rover = sk_list; sk_rover; sk_rover = sk_rover->next ) { PKT_secret_key *sk = sk_rover->sk; - int i = hash_for(sk->pubkey_algo); + int i = hash_for(sk->pubkey_algo, sk->version); if( !hashs_seen[ i & 0xff ] ) { s = digest_algo_to_string( i ); @@ -665,7 +665,7 @@ clearsign_file( const char *fname, STRLIST locusr, const char *outfile ) textmd = md_open(0, 0); for( sk_rover = sk_list; sk_rover; sk_rover = sk_rover->next ) { PKT_secret_key *sk = sk_rover->sk; - md_enable(textmd, hash_for(sk->pubkey_algo)); + md_enable(textmd, hash_for(sk->pubkey_algo, sk->version)); } if ( DBG_HASHING ) md_start_debug( textmd, "clearsign" ); @@ -690,7 +690,7 @@ clearsign_file( const char *fname, STRLIST locusr, const char *outfile ) sig = m_alloc_clear( sizeof *sig ); sig->version = old_style || opt.force_v3_sigs ? 3 : sk->version; keyid_from_sk( sk, sig->keyid ); - sig->digest_algo = hash_for(sk->pubkey_algo); + sig->digest_algo = hash_for(sk->pubkey_algo, sk->version); sig->pubkey_algo = sk->pubkey_algo; sig->timestamp = make_timestamp(); sig->sig_class = 0x01; @@ -739,7 +739,7 @@ clearsign_file( const char *fname, STRLIST locusr, const char *outfile ) } md_final( md ); - rc = do_sign( sk, sig, md, hash_for(sig->pubkey_algo) ); + rc = do_sign( sk, sig, md, hash_for(sig->pubkey_algo, sk->version) ); md_close( md ); if( !rc ) { /* and write it */ @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: gnupg 1.0.0h\n" -"POT-Creation-Date: 2000-09-14 17:35+0200\n" +"POT-Creation-Date: 2000-09-18 12:17+0200\n" "PO-Revision-Date: 2000-03-07 22:51+01:00\n" "Last-Translator: Birger Langkjer <[email protected]>\n" "Language-Team: Danish <[email protected]>\n" @@ -2687,41 +2687,41 @@ msgstr "" msgid "NOTE: secret key %08lX expired at %s\n" msgstr "" -#: g10/hkp.c:62 +#: g10/hkp.c:72 #, c-format msgid "requesting key %08lX from %s ...\n" msgstr "" -#: g10/hkp.c:75 +#: g10/hkp.c:85 #, fuzzy, c-format msgid "can't get key from keyserver: %s\n" msgstr "import�r n�gler fra en n�gleserver" -#: g10/hkp.c:98 g10/hkp.c:136 +#: g10/hkp.c:109 g10/hkp.c:148 msgid "no keyserver known (use option --keyserver)\n" msgstr "" -#: g10/hkp.c:106 +#: g10/hkp.c:117 #, fuzzy, c-format msgid "%s: not a valid key ID\n" msgstr "%s er ikke et gyldigt tegns�t\n" -#: g10/hkp.c:158 +#: g10/hkp.c:170 #, fuzzy, c-format msgid "can't connect to `%s': %s\n" msgstr "kan ikke �bne '%s': %s\n" -#: g10/hkp.c:182 +#: g10/hkp.c:194 #, fuzzy, c-format msgid "error sending to `%s': %s\n" msgstr "fejl ved l�sning af '%s': %s\n" -#: g10/hkp.c:194 +#: g10/hkp.c:206 #, c-format msgid "success sending to `%s' (status=%u)\n" msgstr "" -#: g10/hkp.c:197 +#: g10/hkp.c:209 #, c-format msgid "failed sending to `%s': status=%u\n" msgstr "" @@ -4,7 +4,7 @@ msgid "" msgstr "" "Project-Id-Version: gnupg 1.0.0h\n" -"POT-Creation-Date: 2000-09-14 17:35+0200\n" +"POT-Creation-Date: 2000-09-18 12:17+0200\n" "PO-Revision-Date: 2000-06-12 12:50+0200\n" "Last-Translator: Walter Koch <[email protected]>\n" "Language-Team: German <[email protected]>\n" @@ -2804,41 +2804,41 @@ msgstr "Hinweis: Verfahren %d ist kein bevorzugtes Verschl�sselungsverfahren\n" msgid "NOTE: secret key %08lX expired at %s\n" msgstr "Hinweis: geheimer Schl�ssel %08lX verf�llt am %s\n" -#: g10/hkp.c:62 +#: g10/hkp.c:72 #, c-format msgid "requesting key %08lX from %s ...\n" msgstr "Schl�ssel %08lX von %s wird angefordert ...\n" -#: g10/hkp.c:75 +#: g10/hkp.c:85 #, c-format msgid "can't get key from keyserver: %s\n" msgstr "Schl�ssel ist beim Schl�sselserver nicht erh�ltlich: %s\n" -#: g10/hkp.c:98 g10/hkp.c:136 +#: g10/hkp.c:109 g10/hkp.c:148 msgid "no keyserver known (use option --keyserver)\n" msgstr "Kein Schl�sselserver bekannt (Option --keyserver verwenden)\n" -#: g10/hkp.c:106 +#: g10/hkp.c:117 #, c-format msgid "%s: not a valid key ID\n" msgstr "%s: Dies ist keine g�ltige Schl�ssel-ID\n" -#: g10/hkp.c:158 +#: g10/hkp.c:170 #, c-format msgid "can't connect to `%s': %s\n" msgstr "Verbindung zu '%s' kann nicht aufgebaut werden: %s\n" -#: g10/hkp.c:182 +#: g10/hkp.c:194 #, c-format msgid "error sending to `%s': %s\n" msgstr "Fehler beim Senden an `%s': %s\n" -#: g10/hkp.c:194 +#: g10/hkp.c:206 #, c-format msgid "success sending to `%s' (status=%u)\n" msgstr "Senden an `%s' erfolgreich (status=%u)\n" -#: g10/hkp.c:197 +#: g10/hkp.c:209 #, c-format msgid "failed sending to `%s': status=%u\n" msgstr "Senden an `%s' erfolglos (status=%u)\n" @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: gnupg 1.0.1e\n" -"POT-Creation-Date: 2000-09-14 17:35+0200\n" +"POT-Creation-Date: 2000-09-18 12:17+0200\n" "PO-Revision-Date: 2000-08-16 23:19+01:00\n" "Last-Translator: Edmund GRIMLEY EVANS <[email protected]>\n" "Language-Team: Esperanto <[email protected]>\n" @@ -2757,41 +2757,41 @@ msgstr "NOTO: �ifrad-metodo %d ne trovita en preferoj\n" msgid "NOTE: secret key %08lX expired at %s\n" msgstr "NOTO: sekreta �losilo %08lX eksvalidi�is je %s\n" -#: g10/hkp.c:62 +#: g10/hkp.c:72 #, c-format msgid "requesting key %08lX from %s ...\n" msgstr "petas la �losilon %08lX de %s ...\n" -#: g10/hkp.c:75 +#: g10/hkp.c:85 #, c-format msgid "can't get key from keyserver: %s\n" msgstr "ne povas akiri �losilon de �losilservilo: %s\n" -#: g10/hkp.c:98 g10/hkp.c:136 +#: g10/hkp.c:109 g10/hkp.c:148 msgid "no keyserver known (use option --keyserver)\n" msgstr "neniu �losilservilo konata (uzu la opcion --keyserver)\n" -#: g10/hkp.c:106 +#: g10/hkp.c:117 #, c-format msgid "%s: not a valid key ID\n" msgstr "%s: ne valida �losilidentigilo\n" -#: g10/hkp.c:158 +#: g10/hkp.c:170 #, c-format msgid "can't connect to `%s': %s\n" msgstr "ne povas konekti�i al '%s': %s\n" -#: g10/hkp.c:182 +#: g10/hkp.c:194 #, c-format msgid "error sending to `%s': %s\n" msgstr "eraro dum sendo al '%s': %s\n" -#: g10/hkp.c:194 +#: g10/hkp.c:206 #, c-format msgid "success sending to `%s' (status=%u)\n" msgstr "sukceso dum sendo al '%s' (statuso=%u)\n" -#: g10/hkp.c:197 +#: g10/hkp.c:209 #, c-format msgid "failed sending to `%s': status=%u\n" msgstr "malsukceso dum sendo al '%s': statuso=%u\n" diff --git a/po/es_ES.po b/po/es_ES.po index 3c026a5f8..51c189b97 100644 --- a/po/es_ES.po +++ b/po/es_ES.po @@ -7,7 +7,7 @@ # GPG version: 1.0.0 msgid "" msgstr "" -"POT-Creation-Date: 2000-09-14 17:35+0200\n" +"POT-Creation-Date: 2000-09-18 12:17+0200\n" "PO-Revision-Date: 1999-10-27 06:35+0200\n" "Content-Type: text/plain; charset=iso-8859-1\n" "Date: 1998-11-13 10:49:25+0100\n" @@ -2791,41 +2791,41 @@ msgstr "NOTA: algoritmo de cifrado %d no encontrado en las preferencias\n" msgid "NOTE: secret key %08lX expired at %s\n" msgstr "NOTA: clave de la firma caducada el %s\n" -#: g10/hkp.c:62 +#: g10/hkp.c:72 #, c-format msgid "requesting key %08lX from %s ...\n" msgstr "" -#: g10/hkp.c:75 +#: g10/hkp.c:85 #, fuzzy, c-format msgid "can't get key from keyserver: %s\n" msgstr "no puede escribirse en el anillo: %s\n" -#: g10/hkp.c:98 g10/hkp.c:136 +#: g10/hkp.c:109 g10/hkp.c:148 msgid "no keyserver known (use option --keyserver)\n" msgstr "" -#: g10/hkp.c:106 +#: g10/hkp.c:117 #, fuzzy, c-format msgid "%s: not a valid key ID\n" msgstr "'%s' no es un identificativo largo de clave v�lido\n" -#: g10/hkp.c:158 +#: g10/hkp.c:170 #, fuzzy, c-format msgid "can't connect to `%s': %s\n" msgstr "no puede abrirse `%s': %s\n" -#: g10/hkp.c:182 +#: g10/hkp.c:194 #, fuzzy, c-format msgid "error sending to `%s': %s\n" msgstr "error leyendo `%s': %s\n" -#: g10/hkp.c:194 +#: g10/hkp.c:206 #, c-format msgid "success sending to `%s' (status=%u)\n" msgstr "" -#: g10/hkp.c:197 +#: g10/hkp.c:209 #, c-format msgid "failed sending to `%s': status=%u\n" msgstr "" @@ -10,7 +10,7 @@ msgid "" msgstr "" "Project-Id-Version: gnupg 1.0.1h\n" -"POT-Creation-Date: 2000-09-14 17:35+0200\n" +"POT-Creation-Date: 2000-09-18 12:17+0200\n" "PO-Revision-Date: 2000-06-28 18:41+02:00\n" "Last-Translator: Ga�l Qu�ri <[email protected]>\n" "Language-Team: French <[email protected]>\n" @@ -2796,41 +2796,41 @@ msgstr "" msgid "NOTE: secret key %08lX expired at %s\n" msgstr "NOTE: la cl� secr�te %08lX a expir� le %s\n" -#: g10/hkp.c:62 +#: g10/hkp.c:72 #, c-format msgid "requesting key %08lX from %s ...\n" msgstr "requ�te de la cl� %08lX de %s...\n" -#: g10/hkp.c:75 +#: g10/hkp.c:85 #, c-format msgid "can't get key from keyserver: %s\n" msgstr "impossible d'obtenir les cl�s du serveur: %s\n" -#: g10/hkp.c:98 g10/hkp.c:136 +#: g10/hkp.c:109 g10/hkp.c:148 msgid "no keyserver known (use option --keyserver)\n" msgstr "aucun serveur de cl�s n'est connu (utilisez l'option �--keyserver�)\n" -#: g10/hkp.c:106 +#: g10/hkp.c:117 #, c-format msgid "%s: not a valid key ID\n" msgstr "%s: l'identification de la cl� est invalide\n" -#: g10/hkp.c:158 +#: g10/hkp.c:170 #, c-format msgid "can't connect to `%s': %s\n" msgstr "impossible de se connecter � `%s': %s\n" -#: g10/hkp.c:182 +#: g10/hkp.c:194 #, c-format msgid "error sending to `%s': %s\n" msgstr "erreur pendant l'envoi de `%s': %s\n" -#: g10/hkp.c:194 +#: g10/hkp.c:206 #, c-format msgid "success sending to `%s' (status=%u)\n" msgstr "l'envoi � `%s' s'est d�roul� avec succ�s (r�sultat=%u)\n" -#: g10/hkp.c:197 +#: g10/hkp.c:209 #, c-format msgid "failed sending to `%s': status=%u\n" msgstr "l'envoi � `%s' a �chou�: le r�sultat est %u\n" @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: GNU Privacy Guard 1.0.1\n" -"POT-Creation-Date: 2000-09-14 17:35+0200\n" +"POT-Creation-Date: 2000-09-18 12:17+0200\n" "PO-Revision-Date: 2000-02-06 18:04+07:00\n" "Last-Translator: Tedi Heriyanto <[email protected]>\n" "Language-Team: Indonesia <[email protected]>\n" @@ -2757,41 +2757,41 @@ msgstr "CATATAN: algoritma cipher %d tidak ditemukan dalam preferensi\n" msgid "NOTE: secret key %08lX expired at %s\n" msgstr "CATATAN: kunci signature berakhir %s\n" -#: g10/hkp.c:62 +#: g10/hkp.c:72 #, c-format msgid "requesting key %08lX from %s ...\n" msgstr "" -#: g10/hkp.c:75 +#: g10/hkp.c:85 #, fuzzy, c-format msgid "can't get key from keyserver: %s\n" msgstr "impor kunci dari key server" -#: g10/hkp.c:98 g10/hkp.c:136 +#: g10/hkp.c:109 g10/hkp.c:148 msgid "no keyserver known (use option --keyserver)\n" msgstr "" -#: g10/hkp.c:106 +#: g10/hkp.c:117 #, fuzzy, c-format msgid "%s: not a valid key ID\n" msgstr "%s bukanlah set karakter yang valid\n" -#: g10/hkp.c:158 +#: g10/hkp.c:170 #, fuzzy, c-format msgid "can't connect to `%s': %s\n" msgstr "tidak dapat membuka `%s': %s\n" -#: g10/hkp.c:182 +#: g10/hkp.c:194 #, fuzzy, c-format msgid "error sending to `%s': %s\n" msgstr "kesalahan membaca `%s': %s\n" -#: g10/hkp.c:194 +#: g10/hkp.c:206 #, c-format msgid "success sending to `%s' (status=%u)\n" msgstr "" -#: g10/hkp.c:197 +#: g10/hkp.c:209 #, c-format msgid "failed sending to `%s': status=%u\n" msgstr "" @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: gnupg-1.0.0h\n" -"POT-Creation-Date: 2000-09-14 17:35+0200\n" +"POT-Creation-Date: 2000-09-18 12:17+0200\n" "PO-Revision-Date: 1999-12-08 15:51+02:00\n" "Last-Translator: Marco d'Itri <[email protected]>\n" "Language-Team: Italian <[email protected]>\n" @@ -2774,41 +2774,41 @@ msgstr "" msgid "NOTE: secret key %08lX expired at %s\n" msgstr "NOTA: chiave per firmare scaduta il %s\n" -#: g10/hkp.c:62 +#: g10/hkp.c:72 #, c-format msgid "requesting key %08lX from %s ...\n" msgstr "" -#: g10/hkp.c:75 +#: g10/hkp.c:85 #, fuzzy, c-format msgid "can't get key from keyserver: %s\n" msgstr "importa le chiavi da un key server" -#: g10/hkp.c:98 g10/hkp.c:136 +#: g10/hkp.c:109 g10/hkp.c:148 msgid "no keyserver known (use option --keyserver)\n" msgstr "" -#: g10/hkp.c:106 +#: g10/hkp.c:117 #, fuzzy, c-format msgid "%s: not a valid key ID\n" msgstr "%s non � un set di caratteri valido\n" -#: g10/hkp.c:158 +#: g10/hkp.c:170 #, fuzzy, c-format msgid "can't connect to `%s': %s\n" msgstr "impossibile aprire `%s': %s\n" -#: g10/hkp.c:182 +#: g10/hkp.c:194 #, fuzzy, c-format msgid "error sending to `%s': %s\n" msgstr "errore leggendo `%s': %s\n" -#: g10/hkp.c:194 +#: g10/hkp.c:206 #, c-format msgid "success sending to `%s' (status=%u)\n" msgstr "" -#: g10/hkp.c:197 +#: g10/hkp.c:209 #, c-format msgid "failed sending to `%s': status=%u\n" msgstr "" @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: gnupg 1.0.0h\n" -"POT-Creation-Date: 2000-09-14 17:35+0200\n" +"POT-Creation-Date: 2000-09-18 12:17+0200\n" "PO-Revision-Date: 2000-02-16 20:10+09:00\n" "Last-Translator: IIDA Yosiaki <[email protected]>\n" "Language-Team: Japanese <[email protected]>\n" @@ -2752,41 +2752,41 @@ msgstr "����: �Ź楢�르�ꥺ�� %d ��ͥ�������äƤ��ޤ���\n" msgid "NOTE: secret key %08lX expired at %s\n" msgstr "����: ��̾�θ��ϴ����ڤ�Ǥ� %s\n" -#: g10/hkp.c:62 +#: g10/hkp.c:72 #, c-format msgid "requesting key %08lX from %s ...\n" msgstr "" -#: g10/hkp.c:75 +#: g10/hkp.c:85 #, fuzzy, c-format msgid "can't get key from keyserver: %s\n" msgstr "�������С����鸰���ɤ߹���" -#: g10/hkp.c:98 g10/hkp.c:136 +#: g10/hkp.c:109 g10/hkp.c:148 msgid "no keyserver known (use option --keyserver)\n" msgstr "" -#: g10/hkp.c:106 +#: g10/hkp.c:117 #, fuzzy, c-format msgid "%s: not a valid key ID\n" msgstr "%s ��������ʸ�������ɤǤϤ���ޤ���\n" -#: g10/hkp.c:158 +#: g10/hkp.c:170 #, fuzzy, c-format msgid "can't connect to `%s': %s\n" msgstr "`%s' �������ޤ���: %s\n" -#: g10/hkp.c:182 +#: g10/hkp.c:194 #, fuzzy, c-format msgid "error sending to `%s': %s\n" msgstr "`%s' ���ɤ߹��ߤ˼���: %s\n" -#: g10/hkp.c:194 +#: g10/hkp.c:206 #, c-format msgid "success sending to `%s' (status=%u)\n" msgstr "" -#: g10/hkp.c:197 +#: g10/hkp.c:209 #, c-format msgid "failed sending to `%s': status=%u\n" msgstr "" @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: gnupg 1.0.0h\n" -"POT-Creation-Date: 2000-09-14 17:35+0200\n" +"POT-Creation-Date: 2000-09-18 12:17+0200\n" "PO-Revision-Date: 2000-02-20 21:30+01:00\n" "Last-Translator: Ivo Timmermans <[email protected]>\n" "Language-Team: Dutch <[email protected]>\n" @@ -2793,41 +2793,41 @@ msgstr "LET OP: versleutelalgoritme %d niet gevonden in de voorkeuren\n" msgid "NOTE: secret key %08lX expired at %s\n" msgstr "LET OP: sleutel voor ondertekening is vervallen op %s\n" -#: g10/hkp.c:62 +#: g10/hkp.c:72 #, c-format msgid "requesting key %08lX from %s ...\n" msgstr "opvragen van sleutel %08lX van %s ...\n" -#: g10/hkp.c:75 +#: g10/hkp.c:85 #, c-format msgid "can't get key from keyserver: %s\n" msgstr "kan de sleutel niet opvragen van de server: %s\n" -#: g10/hkp.c:98 g10/hkp.c:136 +#: g10/hkp.c:109 g10/hkp.c:148 msgid "no keyserver known (use option --keyserver)\n" msgstr "geen sleutelserver bekend (gebruik de optie --keyserver)\n" -#: g10/hkp.c:106 +#: g10/hkp.c:117 #, c-format msgid "%s: not a valid key ID\n" msgstr "%s: ongeldig sleutelnummer\n" -#: g10/hkp.c:158 +#: g10/hkp.c:170 #, c-format msgid "can't connect to `%s': %s\n" msgstr "kan geen verbinding maken met `%s': %s\n" -#: g10/hkp.c:182 +#: g10/hkp.c:194 #, c-format msgid "error sending to `%s': %s\n" msgstr "fout bij versturen naar `%s': %s\n" -#: g10/hkp.c:194 +#: g10/hkp.c:206 #, c-format msgid "success sending to `%s' (status=%u)\n" msgstr "versturen naar `%s' gelukt (status=%u)\n" -#: g10/hkp.c:197 +#: g10/hkp.c:209 #, c-format msgid "failed sending to `%s': status=%u\n" msgstr "fout bij versturen naar `%s': status=%u\n" @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: gnupg 1.0.0h\n" -"POT-Creation-Date: 2000-09-14 17:35+0200\n" +"POT-Creation-Date: 2000-09-18 12:17+0200\n" "PO-Revision-Date: 1999-12-05 21:29+01:00\n" "Last-Translator: Janusz A. Urbanowicz <[email protected]>\n" "Language-Team: Polish <[email protected]>\n" @@ -2805,41 +2805,41 @@ msgstr "UWAGA: brak algorytmu szyfruj�cego %d w ustawieniach\n" msgid "NOTE: secret key %08lX expired at %s\n" msgstr "UWAGA: klucz podpisuj�cy przekroczy� dat� wa�no�ci %s\n" -#: g10/hkp.c:62 +#: g10/hkp.c:72 #, c-format msgid "requesting key %08lX from %s ...\n" msgstr "" -#: g10/hkp.c:75 +#: g10/hkp.c:85 #, fuzzy, c-format msgid "can't get key from keyserver: %s\n" msgstr "niemo�liwy jest zapis do zbioru kluczy: %s\n" -#: g10/hkp.c:98 g10/hkp.c:136 +#: g10/hkp.c:109 g10/hkp.c:148 msgid "no keyserver known (use option --keyserver)\n" msgstr "" -#: g10/hkp.c:106 +#: g10/hkp.c:117 #, fuzzy, c-format msgid "%s: not a valid key ID\n" msgstr "'%s\" nie jest w�a�ciwym identyfikatorem klucza\n" -#: g10/hkp.c:158 +#: g10/hkp.c:170 #, fuzzy, c-format msgid "can't connect to `%s': %s\n" msgstr "nie mo�na otworzy� %s: %s\n" -#: g10/hkp.c:182 +#: g10/hkp.c:194 #, fuzzy, c-format msgid "error sending to `%s': %s\n" msgstr "b��d odczytu '%s': %s\n" -#: g10/hkp.c:194 +#: g10/hkp.c:206 #, c-format msgid "success sending to `%s' (status=%u)\n" msgstr "" -#: g10/hkp.c:197 +#: g10/hkp.c:209 #, c-format msgid "failed sending to `%s': status=%u\n" msgstr "" diff --git a/po/pt_BR.po b/po/pt_BR.po index 3ee042daf..a723b3462 100644 --- a/po/pt_BR.po +++ b/po/pt_BR.po @@ -5,7 +5,7 @@ # msgid "" msgstr "" -"POT-Creation-Date: 2000-09-14 17:35+0200\n" +"POT-Creation-Date: 2000-09-18 12:17+0200\n" "Content-Type: text/plain; charset=iso-8859-1\n" "Date: 1998-11-20 23:46:36-0200\n" "From: Thiago Jung Bauermann <[email protected]>\n" @@ -2800,41 +2800,41 @@ msgstr "NOTA: algoritmo de criptografia %d n�o encontrado nas prefer�ncias\n" msgid "NOTE: secret key %08lX expired at %s\n" msgstr "NOTA: chave de assinatura expirou %s\n" -#: g10/hkp.c:62 +#: g10/hkp.c:72 #, c-format msgid "requesting key %08lX from %s ...\n" msgstr "" -#: g10/hkp.c:75 +#: g10/hkp.c:85 #, fuzzy, c-format msgid "can't get key from keyserver: %s\n" msgstr "imposs�vel escrever para o chaveiro: %s\n" -#: g10/hkp.c:98 g10/hkp.c:136 +#: g10/hkp.c:109 g10/hkp.c:148 msgid "no keyserver known (use option --keyserver)\n" msgstr "" -#: g10/hkp.c:106 +#: g10/hkp.c:117 #, fuzzy, c-format msgid "%s: not a valid key ID\n" msgstr "%s n�o � um mapa de caracteres v�lido\n" -#: g10/hkp.c:158 +#: g10/hkp.c:170 #, fuzzy, c-format msgid "can't connect to `%s': %s\n" msgstr "imposs�vel abrir `%s': %s\n" -#: g10/hkp.c:182 +#: g10/hkp.c:194 #, fuzzy, c-format msgid "error sending to `%s': %s\n" msgstr "erro na leitura de `%s': %s\n" -#: g10/hkp.c:194 +#: g10/hkp.c:206 #, c-format msgid "success sending to `%s' (status=%u)\n" msgstr "" -#: g10/hkp.c:197 +#: g10/hkp.c:209 #, c-format msgid "failed sending to `%s': status=%u\n" msgstr "" diff --git a/po/pt_PT.po b/po/pt_PT.po index 5e8c8a111..7c7d13a75 100644 --- a/po/pt_PT.po +++ b/po/pt_PT.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: gnupg\n" -"POT-Creation-Date: 2000-09-14 17:35+0200\n" +"POT-Creation-Date: 2000-09-18 12:17+0200\n" "PO-Revision-Date: 1999-09-09 20:28+0000\n" "Last-Translator: Pedro Morais <[email protected]>\n" "Language-Team: pt\n" @@ -2794,41 +2794,41 @@ msgstr "NOTA: algoritmo de cifragem %d n�o encontrado nas prefer�ncias\n" msgid "NOTE: secret key %08lX expired at %s\n" msgstr "NOTA: chave de assinatura expirou %s\n" -#: g10/hkp.c:62 +#: g10/hkp.c:72 #, c-format msgid "requesting key %08lX from %s ...\n" msgstr "" -#: g10/hkp.c:75 +#: g10/hkp.c:85 #, fuzzy, c-format msgid "can't get key from keyserver: %s\n" msgstr "importar chaves de um servidor" -#: g10/hkp.c:98 g10/hkp.c:136 +#: g10/hkp.c:109 g10/hkp.c:148 msgid "no keyserver known (use option --keyserver)\n" msgstr "" -#: g10/hkp.c:106 +#: g10/hkp.c:117 #, fuzzy, c-format msgid "%s: not a valid key ID\n" msgstr "%s n�o � um conjunto de caracteres v�lido\n" -#: g10/hkp.c:158 +#: g10/hkp.c:170 #, fuzzy, c-format msgid "can't connect to `%s': %s\n" msgstr "imposs�vel abrir `%s': %s\n" -#: g10/hkp.c:182 +#: g10/hkp.c:194 #, fuzzy, c-format msgid "error sending to `%s': %s\n" msgstr "erro na leitura de `%s': %s\n" -#: g10/hkp.c:194 +#: g10/hkp.c:206 #, c-format msgid "success sending to `%s' (status=%u)\n" msgstr "" -#: g10/hkp.c:197 +#: g10/hkp.c:209 #, c-format msgid "failed sending to `%s': status=%u\n" msgstr "" @@ -9,7 +9,7 @@ # QingLong <qinglong@Bolizm> (couldn't send an email to let you know) msgid "" msgstr "" -"POT-Creation-Date: 2000-09-14 17:35+0200\n" +"POT-Creation-Date: 2000-09-18 12:17+0200\n" "Content-Type: text/plain; charset=\n" "Date: 1998-01-26 22:08:36+0100\n" "From: Gregory Steuck <[email protected]>\n" @@ -2918,41 +2918,41 @@ msgstr "���������: ������������ �������� %d �� ������ � �������������\n" msgid "NOTE: secret key %08lX expired at %s\n" msgstr "��������������: ���� ������� ������� %s\n" -#: g10/hkp.c:62 +#: g10/hkp.c:72 #, c-format msgid "requesting key %08lX from %s ...\n" msgstr "" -#: g10/hkp.c:75 +#: g10/hkp.c:85 #, fuzzy, c-format msgid "can't get key from keyserver: %s\n" msgstr "���������� �������� � ������ ������: %s\n" -#: g10/hkp.c:98 g10/hkp.c:136 +#: g10/hkp.c:109 g10/hkp.c:148 msgid "no keyserver known (use option --keyserver)\n" msgstr "" -#: g10/hkp.c:106 +#: g10/hkp.c:117 #, fuzzy, c-format msgid "%s: not a valid key ID\n" msgstr "������������ ������ � �����������.\n" -#: g10/hkp.c:158 +#: g10/hkp.c:170 #, fuzzy, c-format msgid "can't connect to `%s': %s\n" msgstr "���������� ������� ���� `%s': %s\n" -#: g10/hkp.c:182 +#: g10/hkp.c:194 #, fuzzy, c-format msgid "error sending to `%s': %s\n" msgstr "Fehler beim Erzeugen der \"Passphrase\": %s\n" -#: g10/hkp.c:194 +#: g10/hkp.c:206 #, c-format msgid "success sending to `%s' (status=%u)\n" msgstr "" -#: g10/hkp.c:197 +#: g10/hkp.c:209 #, c-format msgid "failed sending to `%s': status=%u\n" msgstr "" @@ -13,7 +13,7 @@ msgid "" msgstr "" "Project-Id-Version: gnupg 1.0.1e\n" -"POT-Creation-Date: 2000-09-14 17:35+0200\n" +"POT-Creation-Date: 2000-09-18 12:17+0200\n" "PO-Revision-Date: 2000-04-23 16:43+02:00\n" "Last-Translator: Daniel Resare <[email protected]>\n" "Language-Team: Swedish <[email protected]>\n" @@ -2816,41 +2816,41 @@ msgstr "NOTERA: chifferalgoritmen %d finns inte i inst�llningarna\n" msgid "NOTE: secret key %08lX expired at %s\n" msgstr "NOTERA: den hemliga nyckeln %08lX gick ut %s\n" -#: g10/hkp.c:62 +#: g10/hkp.c:72 #, c-format msgid "requesting key %08lX from %s ...\n" msgstr "fr�ga efter nyckeln %08lX fr�n %s ...\n" -#: g10/hkp.c:75 +#: g10/hkp.c:85 #, c-format msgid "can't get key from keyserver: %s\n" msgstr "kan inte h�mta nyckeln fr�n en nyckelserver: %s\n" -#: g10/hkp.c:98 g10/hkp.c:136 +#: g10/hkp.c:109 g10/hkp.c:148 msgid "no keyserver known (use option --keyserver)\n" msgstr "k�nner inte till n�gon nyckelserver (anv�nd flaggan --keyserver)\n" -#: g10/hkp.c:106 +#: g10/hkp.c:117 #, c-format msgid "%s: not a valid key ID\n" msgstr "%s: ogiltig nyckelidentitet\n" -#: g10/hkp.c:158 +#: g10/hkp.c:170 #, c-format msgid "can't connect to `%s': %s\n" msgstr "kan inte ansluta till \"%s\": %s\n" -#: g10/hkp.c:182 +#: g10/hkp.c:194 #, c-format msgid "error sending to `%s': %s\n" msgstr "fel vid s�ndning till \"%s\": %s\n" -#: g10/hkp.c:194 +#: g10/hkp.c:206 #, c-format msgid "success sending to `%s' (status=%u)\n" msgstr "lyckades s�nda till \"%s\" (status=%u)\n" -#: g10/hkp.c:197 +#: g10/hkp.c:209 #, c-format msgid "failed sending to `%s': status=%u\n" msgstr "misslyckades s�nda till \"%s\": status=%u\n" diff --git a/scripts/mk-w32-dist b/scripts/mk-w32-dist index 235abb98b..0a070a905 100755 --- a/scripts/mk-w32-dist +++ b/scripts/mk-w32-dist @@ -20,7 +20,11 @@ fi rm * || true ln ../g10/gpg gpg.exe i386--mingw32-strip gpg.exe -man -T latin1 -l ../doc/gpg.1 >gpg.man +if [ -t ../doc/gpg.man ] ; then + cat ../doc/gpg.man >gpg.man +else + man -T latin1 -l ../doc/gpg.1 >gpg.man +fi todos gpg.man cp ${srcdir}/README . todos README diff --git a/tools/mail-signed-keys b/tools/mail-signed-keys index 3f9f01831..a9ec154bd 100755 --- a/tools/mail-signed-keys +++ b/tools/mail-signed-keys @@ -1,5 +1,7 @@ #!/bin/sh +# FIXME: Add --dry-run, use only valid email addreses, extract only given keys + if [ -z "$1" -o -z "$2" ]; then echo "usage: mail-signed-keys keyring signedby" >&2 exit 1 @@ -73,3 +75,16 @@ function myflush() ' + + + + + + + + + + + + + |