diff --git a/ChangeLog b/ChangeLog index 9cbb59962..2e2521122 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +Fri Sep 17 12:56:42 CEST 1999 Werner Koch + + + * configure.in: Add "-lcap" when capabilities are requested. + Add the conditional CROSS_COMPILING. + * Makefile.am: Don't use checks when CROSS_COMPILING. + + Wed Sep 15 16:22:17 CEST 1999 Werner Koch diff --git a/Makefile.am b/Makefile.am index e3add598e..bf6e3e2da 100644 --- a/Makefile.am +++ b/Makefile.am @@ -8,7 +8,13 @@ gcrypt = my_clean_gcrypt = gcrypt/Makefile endif -SUBDIRS = intl zlib util mpi cipher tools g10 po doc checks ${gcrypt} +if CROSS_COMPILING +checks = +else +checks = checks +endif + +SUBDIRS = intl zlib util mpi cipher tools g10 po doc ${checks} ${gcrypt} EXTRA_DIST = VERSION PROJECTS BUGS # gettext never gets it right, so we take here care of deleting the # symlink. my_clean_gcrypt is just a kludge until we can include diff --git a/TODO b/TODO index e55ab645b..090fdcdd0 100644 --- a/TODO +++ b/TODO @@ -1,6 +1,7 @@ * try to do --verify even if the files are swapped on the commandline - (requested by Herny Spencer) + (requested by Herny Spencer) or change the error message to + a more clear one. Scheduled for 1.1 ----------------- @@ -25,6 +26,9 @@ Scheduled for 1.1 * Check the beginning of file to detect already compressed files (gzip, bzip2, xdelta and some picture formats) + * Delay the read of the passphrase-fd afte a NEED_PASSPHRASE. But this + may break some scripts. + Nice to have ------------ diff --git a/configure.in b/configure.in index a56847ae8..ef3479a4b 100644 --- a/configure.in +++ b/configure.in @@ -435,6 +435,7 @@ if test "$ac_cv_header_sys_capability_h" = "yes" ; then AC_CHECK_LIB(cap, cap_init, ac_need_libcap=1) if test "$ac_cv_lib_cap_cap_init" = "yes"; then AC_DEFINE(USE_CAPABILITIES) + LIBS="$LIBS -lcap" use_capabilities=yes fi fi @@ -683,6 +684,8 @@ if echo "$VERSION" | grep $tmp_pat >/dev/null ; then AC_DEFINE(IS_DEVELOPMENT_VERSION) fi +AM_CONDITIONAL(CROSS_COMPILING, test x$cross_compiling = xyes) + GNUPG_DO_LINK_FILES diff --git a/doc/FAQ b/doc/FAQ index 0bb9b0368..788b85751 100644 --- a/doc/FAQ +++ b/doc/FAQ @@ -342,3 +342,11 @@ where pgpkeyring is the original keyring and not the GnuPG one you might have created in the first step. + Q: Are the headerlines of a cleartext signater part of the signed + material? + A: No. For example you can add or remove "Comment:" lines. They + have a purpose like the mail header lines. However a "Hash:" + line is needed for modern signatures, to tell the parser which + hash algorithm to use. + + diff --git a/g10/ChangeLog b/g10/ChangeLog index 82c6709e0..a614d0f25 100644 --- a/g10/ChangeLog +++ b/g10/ChangeLog @@ -1,3 +1,12 @@ +Fri Sep 17 12:56:42 CEST 1999 Werner Koch + + + * g10.c: Add UK spelling as alias for armor options ;-) + + * import.c (append_uid): Fixed a SEGV when there is no selfsig and + no subkey. + (merge_sigs): Ditto. Removed the assertion. + Wed Sep 15 16:22:17 CEST 1999 Werner Koch diff --git a/g10/g10.c b/g10/g10.c index 1a72fa652..5fa2cade5 100644 --- a/g10/g10.c +++ b/g10/g10.c @@ -223,7 +223,9 @@ static ARGPARSE_OPTS opts[] = { "check-trustdb",0 , N_("|[NAMES]|check the trust database")}, { aFixTrustDB, "fix-trustdb",0 , N_("fix a corrupted trust database")}, { aDeArmor, "dearmor", 256, N_("De-Armor a file or stdin") }, + { aDeArmor, "dearmour", 256, "@" }, { aEnArmor, "enarmor", 256, N_("En-Armor a file or stdin") }, + { aEnArmor, "enarmour", 256, "@" }, { aPrintMD, "print-md" , 256, N_("|algo [files]|print message digests")}, { aPrimegen, "gen-prime" , 256, "@" }, { aGenRandom, "gen-random" , 256, "@" }, @@ -231,6 +233,7 @@ static ARGPARSE_OPTS opts[] = { { 301, NULL, 0, N_("@\nOptions:\n ") }, { oArmor, "armor", 0, N_("create ascii armored output")}, + { oArmor, "armour", 0, "@" }, { oRecipient, "recipient", 2, N_("|NAME|encrypt for NAME")}, { oRecipient, "remote-user", 2, "@"}, /* old option name */ { oDefRecipient, "default-recipient" ,2, @@ -303,6 +306,7 @@ static ARGPARSE_OPTS opts[] = { { oTrustDBName, "trustdb-name", 2, "@" }, { oNoSecmemWarn, "no-secmem-warning", 0, "@" }, /* used only by regression tests */ { oNoArmor, "no-armor", 0, "@"}, + { oNoArmor, "no-armour", 0, "@"}, { oNoDefKeyring, "no-default-keyring", 0, "@" }, { oNoGreeting, "no-greeting", 0, "@" }, { oNoOptions, "no-options", 0, "@" }, /* shortcut for --options /dev/null */ diff --git a/g10/import.c b/g10/import.c index 85a45582e..92cd93c24 100644 --- a/g10/import.c +++ b/g10/import.c @@ -1124,7 +1124,7 @@ append_uid( KBNODE keyblock, KBNODE node, int *n_sigs, KBNODE n, n_where=NULL; assert(node->pkt->pkttype == PKT_USER_ID ); - if( node->next->pkt->pkttype == PKT_USER_ID ) { + if( !node->next || node->next->pkt->pkttype == PKT_USER_ID ) { log_error( _("key %08lX: our copy has no self-signature\n"), (ulong)keyid[1]); return G10ERR_GENERAL; @@ -1177,9 +1177,7 @@ merge_sigs( KBNODE dst, KBNODE src, int *n_sigs, assert(dst->pkt->pkttype == PKT_USER_ID ); assert(src->pkt->pkttype == PKT_USER_ID ); - /* at least a self signature comes next to the user IDs */ - assert(src->next->pkt->pkttype != PKT_USER_ID ); - if( dst->next->pkt->pkttype == PKT_USER_ID ) { + if( !dst->next || dst->next->pkt->pkttype == PKT_USER_ID ) { log_error( _("key %08lX: our copy has no self-signature\n"), (ulong)keyid[1]); return 0; diff --git a/util/ChangeLog b/util/ChangeLog index d5b661095..9d2220540 100644 --- a/util/ChangeLog +++ b/util/ChangeLog @@ -1,3 +1,13 @@ +Fri Sep 17 12:56:42 CEST 1999 Werner Koch + + + * secmem.c (lock_pool): Check for ENOSYS return my mlock() on + old SCOs. + + * ttyio.c (do_get): Replaced #if __MINGW32__ by #ifdef becuase + gcc 2.95.1 assigns a floating point value (0.2) to this macro, + which in turn can't be used in an expression. + Wed Sep 15 16:22:17 CEST 1999 Werner Koch diff --git a/util/secmem.c b/util/secmem.c index 3f253d6db..db4ee4148 100644 --- a/util/secmem.c +++ b/util/secmem.c @@ -97,8 +97,11 @@ lock_pool( void *p, size_t n ) #ifdef EAGAIN /* OpenBSD returns this */ && errno != EAGAIN #endif + #ifdef ENOSYS /* Some SCOs return this (function not implemented) */ + && errno != ENOSYS + #endif ) - log_error("canīt lock memory: %s\n", strerror(err)); + log_error("can't lock memory: %s\n", strerror(err)); show_warning = 1; } @@ -134,8 +137,11 @@ lock_pool( void *p, size_t n ) #ifdef EAGAIN /* OpenBSD returns this */ && errno != EAGAIN #endif + #ifdef ENOSYS /* Some SCOs return this (function not implemented) */ + && errno != ENOSYS + #endif ) - log_error("canīt lock memory: %s\n", strerror(err)); + log_error("can't lock memory: %s\n", strerror(err)); show_warning = 1; } diff --git a/util/simple-gettext.c b/util/simple-gettext.c index bf25e8b18..21f39382d 100644 --- a/util/simple-gettext.c +++ b/util/simple-gettext.c @@ -464,5 +464,20 @@ gettext( const char *msgid ) return msgid; } +#if 0 + unsigned int cp1, cp2; + + cp1 = GetConsoleCP(); + cp2 = GetConsoleOutputCP(); + + log_info("InputCP=%u OutputCP=%u\n", cp1, cp2 ); + + if( !SetConsoleOutputCP( 1252 ) ) + log_info("SetConsoleOutputCP failed: %d\n", (int)GetLastError() ); + + cp1 = GetConsoleCP(); + cp2 = GetConsoleOutputCP(); + log_info("InputCP=%u OutputCP=%u after switch1\n", cp1, cp2 ); +#endif #endif /* USE_SIMPLE_GETTEXT */ diff --git a/util/ttyio.c b/util/ttyio.c index 6c1a5059a..35e0d318f 100644 --- a/util/ttyio.c +++ b/util/ttyio.c @@ -107,23 +107,6 @@ init_ttyfp(void) SetConsoleMode(con.in, DEF_INPMODE ); SetConsoleMode(con.out, DEF_OUTMODE ); -#warning DEBUG CODE - { - unsigned int cp1, cp2; - - cp1 = GetConsoleCP(); - cp2 = GetConsoleOutputCP(); - - log_info("InputCP=%u OutputCP=%u\n", cp1, cp2 ); - - if( !SetConsoleOutputCP( 1252 ) ) - log_info("SetConsoleOutputCP failed: %d\n", (int)GetLastError() ); - - cp1 = GetConsoleCP(); - cp2 = GetConsoleOutputCP(); - log_info("InputCP=%u OutputCP=%u after switch1\n", cp1, cp2 ); - - } #elif defined(__EMX__) ttyfp = stdout; /* Fixme: replace by the real functions: see wklib */ #else @@ -304,7 +287,7 @@ do_get( const char *prompt, int hidden ) buf = m_alloc(n=50); i = 0; - #if __MINGW32__ /* windoze version */ + #ifdef __MINGW32__ /* windoze version */ if( hidden ) SetConsoleMode(con.in, HID_INPMODE ); @@ -419,7 +402,7 @@ tty_kill_prompt() last_prompt_len = 0; if( !last_prompt_len ) return; - #if __MINGW32__ + #ifdef __MINGW32__ tty_printf("\r%*s\r", last_prompt_len, ""); #else {