Support TLS client authentication Extended Key Usage in x509 generation

This commit is contained in:
Martin Willi
2010-01-14 12:00:43 +01:00
parent 776f59f7be
commit 7eab4a1be6
6 changed files with 38 additions and 21 deletions
@@ -15,12 +15,14 @@
#include "x509.h"
ENUM(x509_flag_names, X509_NONE, X509_SELF_SIGNED,
ENUM(x509_flag_names, X509_NONE, X509_IP_ADDR_BLOCKS,
"X509_NONE",
"X509_CA",
"X509_AA",
"X509_OCSP_SIGNER",
"X509_SERVER_AUTH",
"X509_CLIENT_AUTH",
"X509_SELF_SIGNED",
"X509_IP_ADDR_BLOCKS",
);
@@ -35,19 +35,21 @@ typedef enum x509_flag_t x509_flag_t;
*/
enum x509_flag_t {
/** cert has no constraints */
X509_NONE = 0,
X509_NONE = 0,
/** cert has CA constraint */
X509_CA = (1<<0),
X509_CA = (1<<0),
/** cert has AA constraint */
X509_AA = (1<<1),
X509_AA = (1<<1),
/** cert has OCSP signer constraint */
X509_OCSP_SIGNER = (1<<2),
/** cert has serverAuth constraint */
X509_SERVER_AUTH = (1<<3),
X509_OCSP_SIGNER = (1<<2),
/** cert has serverAuth key usage */
X509_SERVER_AUTH = (1<<3),
/** cert has clientAuth key usage */
X509_CLIENT_AUTH = (1<<4),
/** cert is self-signed */
X509_SELF_SIGNED = (1<<4),
X509_SELF_SIGNED = (1<<5),
/** cert has an ipAddrBlocks extension */
X509_IP_ADDR_BLOCKS = (1<<5),
X509_IP_ADDR_BLOCKS = (1<<6),
};
/**