Upstream-Status: Backport Index: gnupg-1.4.7/g10/getkey.c =================================================================== --- gnupg-1.4.7.orig/g10/getkey.c 2007-03-05 16:54:41.000000000 +0800 +++ gnupg-1.4.7/g10/getkey.c 2013-11-28 14:41:59.640212240 +0800 @@ -1454,7 +1454,11 @@ if(flags) key_usage |= PUBKEY_USAGE_UNKNOWN; + if (!key_usage) + key_usage |= PUBKEY_USAGE_NONE; } + else if (p) + key_usage |= PUBKEY_USAGE_NONE; /* We set PUBKEY_USAGE_UNKNOWN to indicate that this key has a capability that we do not handle. This serves to distinguish Index: gnupg-1.4.7/g10/keygen.c =================================================================== --- gnupg-1.4.7.orig/g10/keygen.c 2007-02-05 00:27:40.000000000 +0800 +++ gnupg-1.4.7/g10/keygen.c 2013-11-28 14:43:05.016670092 +0800 @@ -209,9 +209,6 @@ if (use & PUBKEY_USAGE_AUTH) buf[0] |= 0x20; - if (!buf[0]) - return; - build_sig_subpkt (sig, SIGSUBPKT_KEY_FLAGS, buf, 1); } Index: gnupg-1.4.7/include/cipher.h =================================================================== --- gnupg-1.4.7.orig/include/cipher.h 2006-04-21 20:39:49.000000000 +0800 +++ gnupg-1.4.7/include/cipher.h 2013-11-28 14:49:24.159322744 +0800 @@ -52,6 +52,7 @@ #define PUBKEY_USAGE_CERT 4 /* key is also good to certify other keys*/ #define PUBKEY_USAGE_AUTH 8 /* key is good for authentication */ #define PUBKEY_USAGE_UNKNOWN 128 /* key has an unknown usage bit */ +#define PUBKEY_USAGE_NONE 256 /* No usage given. */ #define DIGEST_ALGO_MD5 1 #define DIGEST_ALGO_SHA1 2