aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog4
-rw-r--r--THANKS1
-rw-r--r--configure.in8
-rw-r--r--g10/ChangeLog6
-rw-r--r--g10/keylist.c79
-rw-r--r--mpi/ChangeLog4
-rw-r--r--mpi/config.links9
7 files changed, 105 insertions, 6 deletions
diff --git a/ChangeLog b/ChangeLog
index 4d6100cf3..42496d09f 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+Wed Jul 19 11:26:43 CEST 2000 Werner Koch <wk@>
+
+ * configure.in (mingw32): Changes to allow for mingw32msvc
+
Fri Jul 14 10:17:30 CEST 2000 Werner Koch <wk@>
* acinclude.m4 (GNUPG_CHECK_MLOCK): Fixed syntax error in C code.
diff --git a/THANKS b/THANKS
index dd9ea4ffe..455ce9701 100644
--- a/THANKS
+++ b/THANKS
@@ -40,6 +40,7 @@ Frank Donahoe [email protected]
Frank Heckenbach [email protected]
Frank Stajano [email protected]
Frank Tobin [email protected]
+Gabriel Rosenkoetter [email protected]
Ga�l Qu�ri [email protected]
Greg Louis [email protected]
Greg Troxel [email protected]
diff --git a/configure.in b/configure.in
index 0e976e33c..9a22b56e1 100644
--- a/configure.in
+++ b/configure.in
@@ -125,7 +125,7 @@ dnl
dnl Setup some stuff depending on host/target.
dnl
case "${target}" in
- *-*-mingw32)
+ *-*-mingw32*)
# special stuff for Windoze NT
# Do we need to set cross_compiling here or is it sufficient
# to rely on AC_PROG_CC which is called later?
@@ -163,7 +163,7 @@ MPI_OPT_FLAGS=""
try_gettext=yes
try_gdbm=yes
case "${target}" in
- *-*-mingw32)
+ *-*-mingw32*)
# special stuff for Windoze NT
ac_cv_have_dev_random=no
AC_DEFINE(USE_ONLY_8DOT3)
@@ -225,7 +225,7 @@ fi
case "${target}" in
- *-*-mingw32)
+ *-*-mingw32*)
PRINTABLE_OS_NAME="MingW32"
;;
i?86-emx-os2 | i?86-*-os2*emx )
@@ -481,7 +481,7 @@ if test "$use_static_rnd" = default; then
static_random_module="rndlinux"
else
case "${target}" in
- *-*-mingw32)
+ *-*-mingw32*)
static_random_module="rndw32"
AC_DEFINE(USE_STATIC_RNDW32)
;;
diff --git a/g10/ChangeLog b/g10/ChangeLog
index ecee8821b..dd7406b70 100644
--- a/g10/ChangeLog
+++ b/g10/ChangeLog
@@ -1,3 +1,9 @@
+Wed Jul 19 11:26:43 CEST 2000 Werner Koch <wk@>
+
+ * keylist.c (is_uid_valid): New.
+ (list_keyblock): Print validity information for all user IDs. Note, this
+ has to be done at other places too; for now we have only minimal support.
+
Wed Jul 12 13:32:06 CEST 2000 Werner Koch <wk@>
* helptext.c, pkclist.c: s/superseeded/superseded/
diff --git a/g10/keylist.c b/g10/keylist.c
index 5fc89d765..3be29a89e 100644
--- a/g10/keylist.c
+++ b/g10/keylist.c
@@ -105,6 +105,77 @@ list_all( int secret )
}
+/****************
+ * Check whether the user ID at NODE is valid; that is it has a
+ * valid self-signature but no later valid revocation.
+ * Caller has to pass the keyID of the primary in mainkey.
+ * Returns: NULL = valid
+ * string with the reason why it is invalid
+ */
+static const char *
+is_uid_valid ( KBNODE keyblock, KBNODE uidnode, u32 *mainkid )
+{
+ KBNODE node;
+ PKT_signature *selfsig = NULL; /* the latest valid self signature */
+
+ assert ( uidnode->pkt->pkttype == PKT_USER_ID
+ || uidnode->pkt->pkttype == PKT_PHOTO_ID );
+
+ /* first find out about the latest valid self-signature */
+ for ( node = uidnode->next; node; node = node->next ) {
+ PKT_signature *sig;
+
+ if ( node->pkt->pkttype == PKT_USER_ID
+ || node->pkt->pkttype == PKT_PHOTO_ID
+ || node->pkt->pkttype == PKT_PUBLIC_SUBKEY
+ || node->pkt->pkttype == PKT_SECRET_SUBKEY )
+ break;
+ if ( node->pkt->pkttype != PKT_SIGNATURE )
+ continue;
+ sig = node->pkt->pkt.signature;
+ if ( mainkid[0] != sig->keyid[0] || mainkid[1] != sig->keyid[1] )
+ continue; /* we only care about self-signatures for now */
+
+ if ( (sig->sig_class&~3) == 0x10 ) { /* regular self signature */
+ if ( !check_key_signature( keyblock, node, NULL ) ) {
+ if ( !selfsig )
+ selfsig = sig; /* use the first valid sig */
+ else if ( sig->timestamp > selfsig->timestamp
+ && sig->sig_class >= selfsig->sig_class )
+ selfsig = sig; /* but this one is newer */
+ }
+ }
+ }
+
+ if ( !selfsig )
+ return _("invalid"); /* no valid self signature */
+
+ /* watch out for a newer revocation */
+ for ( node = uidnode->next; node; node = node->next ) {
+ PKT_signature *sig;
+
+ if ( node->pkt->pkttype == PKT_USER_ID
+ || node->pkt->pkttype == PKT_PHOTO_ID
+ || node->pkt->pkttype == PKT_PUBLIC_SUBKEY
+ || node->pkt->pkttype == PKT_SECRET_SUBKEY )
+ break;
+ if ( node->pkt->pkttype != PKT_SIGNATURE )
+ continue;
+ sig = node->pkt->pkt.signature;
+ if ( mainkid[0] != sig->keyid[0] || mainkid[1] != sig->keyid[1] )
+ continue; /* we only care about self-signatures for now */
+
+ if ( sig->sig_class == 0x30
+ && sig->timestamp >= selfsig->timestamp ) {
+ if ( !check_key_signature( keyblock, node, NULL ) )
+ return _("revoked");
+ }
+ }
+
+ return NULL; /* UID is valid */
+}
+
+
static void
list_one( STRLIST names, int secret )
@@ -257,14 +328,18 @@ list_keyblock( KBNODE keyblock, int secret )
printf("uid%*s", 28, "");
}
if( opt.with_colons ) {
+ /* FIXME: check that uID is valid here too */
print_string( stdout, node->pkt->pkt.user_id->name,
node->pkt->pkt.user_id->len, ':' );
putchar(':');
}
- else
+ else {
+ const char *s = is_uid_valid ( keyblock, node, keyid );
+ if ( s )
+ printf ("[%s] ", s );
print_utf8_string( stdout, node->pkt->pkt.user_id->name,
node->pkt->pkt.user_id->len );
-
+ }
putchar('\n');
if( !any ) {
if( opt.fingerprint )
diff --git a/mpi/ChangeLog b/mpi/ChangeLog
index 56dd3bb91..c1bb7f072 100644
--- a/mpi/ChangeLog
+++ b/mpi/ChangeLog
@@ -1,3 +1,7 @@
+Wed Jul 19 11:26:43 CEST 2000 Werner Koch <wk@>
+
+ * config.links: Support for powerpc--netbsd by Gabriel Rosenkoetter.
+
Wed Mar 22 13:50:24 CET 2000 Werner Koch <[email protected]>
* config.links: Add support for FreeBSD 5 and made the case stmt
diff --git a/mpi/config.links b/mpi/config.links
index 6a2cbfb53..71906a06d 100644
--- a/mpi/config.links
+++ b/mpi/config.links
@@ -178,6 +178,15 @@ case "${target}" in
cat $srcdir/mpi/powerpc32/syntax.h >>./mpi/asm-syntax.h
path="powerpc32"
;;
+
+ powerpc*-*-netbsd*)
+ echo '/* configured NetBSD on powerpc */' >>./mpi/asm-syntax.h
+ echo '#define ELF_SYNTAX' >>./mpi/asm-syntax.h
+ cat $srcdir/mpi/powerpc32/syntax.h >>./mpi/asm-syntax.h
+ mpi_sflags="-Wa,-mppc"
+ path="powerpc32"
+ ;;
+
rs6000-*-aix[456789]* | \
rs6000-*-aix3.2.[456789])
mpi_sflags="-Wa,-mpwr"