Changes x509_csr to x509write_csr

This commit is contained in:
Paul Bakker 2013-09-09 12:08:11 +02:00
parent 5f45e62afe
commit cd35803684
4 changed files with 30 additions and 28 deletions

View file

@ -63,14 +63,14 @@ extern "C" {
/** /**
* Container for a CSR * Container for a CSR
*/ */
typedef struct _x509_csr typedef struct _x509write_csr
{ {
rsa_context *rsa; rsa_context *rsa;
asn1_named_data *subject; asn1_named_data *subject;
md_type_t md_alg; md_type_t md_alg;
asn1_named_data *extensions; asn1_named_data *extensions;
} }
x509_csr; x509write_csr;
#define X509_CRT_VERSION_1 0 #define X509_CRT_VERSION_1 0
#define X509_CRT_VERSION_2 1 #define X509_CRT_VERSION_2 1
@ -104,7 +104,7 @@ x509write_cert;
* *
* \param ctx CSR context to initialize * \param ctx CSR context to initialize
*/ */
void x509write_csr_init( x509_csr *ctx ); void x509write_csr_init( x509write_csr *ctx );
/** /**
* \brief Set the subject name for a CSR * \brief Set the subject name for a CSR
@ -118,7 +118,7 @@ void x509write_csr_init( x509_csr *ctx );
* \return 0 if subject name was parsed successfully, or * \return 0 if subject name was parsed successfully, or
* a specific error code * a specific error code
*/ */
int x509write_csr_set_subject_name( x509_csr *ctx, char *subject_name ); int x509write_csr_set_subject_name( x509write_csr *ctx, char *subject_name );
/** /**
* \brief Set the RSA key for a CSR (public key will be included, * \brief Set the RSA key for a CSR (public key will be included,
@ -127,7 +127,7 @@ int x509write_csr_set_subject_name( x509_csr *ctx, char *subject_name );
* \param ctx CSR context to use * \param ctx CSR context to use
* \param rsa RSA key to include * \param rsa RSA key to include
*/ */
void x509write_csr_set_rsa_key( x509_csr *ctx, rsa_context *rsa ); void x509write_csr_set_rsa_key( x509write_csr *ctx, rsa_context *rsa );
/** /**
* \brief Set the MD algorithm to use for the signature * \brief Set the MD algorithm to use for the signature
@ -136,7 +136,7 @@ void x509write_csr_set_rsa_key( x509_csr *ctx, rsa_context *rsa );
* \param ctx CSR context to use * \param ctx CSR context to use
* \param md_ald MD algorithm to use * \param md_ald MD algorithm to use
*/ */
void x509write_csr_set_md_alg( x509_csr *ctx, md_type_t md_alg ); void x509write_csr_set_md_alg( x509write_csr *ctx, md_type_t md_alg );
/** /**
* \brief Set the Key Usage Extension flags * \brief Set the Key Usage Extension flags
@ -147,7 +147,7 @@ void x509write_csr_set_md_alg( x509_csr *ctx, md_type_t md_alg );
* *
* \return 0 if successful, or POLARSSL_ERR_X509WRITE_MALLOC_FAILED * \return 0 if successful, or POLARSSL_ERR_X509WRITE_MALLOC_FAILED
*/ */
int x509write_csr_set_key_usage( x509_csr *ctx, unsigned char key_usage ); int x509write_csr_set_key_usage( x509write_csr *ctx, unsigned char key_usage );
/** /**
* \brief Set the Netscape Cert Type flags * \brief Set the Netscape Cert Type flags
@ -158,7 +158,8 @@ int x509write_csr_set_key_usage( x509_csr *ctx, unsigned char key_usage );
* *
* \return 0 if successful, or POLARSSL_ERR_X509WRITE_MALLOC_FAILED * \return 0 if successful, or POLARSSL_ERR_X509WRITE_MALLOC_FAILED
*/ */
int x509write_csr_set_ns_cert_type( x509_csr *ctx, unsigned char ns_cert_type ); int x509write_csr_set_ns_cert_type( x509write_csr *ctx,
unsigned char ns_cert_type );
/** /**
* \brief Generic function to add to or replace an extension in the CSR * \brief Generic function to add to or replace an extension in the CSR
@ -171,7 +172,7 @@ int x509write_csr_set_ns_cert_type( x509_csr *ctx, unsigned char ns_cert_type );
* *
* \return 0 if successful, or a POLARSSL_ERR_X509WRITE_MALLOC_FAILED * \return 0 if successful, or a POLARSSL_ERR_X509WRITE_MALLOC_FAILED
*/ */
int x509write_csr_set_extension( x509_csr *ctx, int x509write_csr_set_extension( x509write_csr *ctx,
const char *oid, size_t oid_len, const char *oid, size_t oid_len,
const unsigned char *val, size_t val_len ); const unsigned char *val, size_t val_len );
@ -180,7 +181,7 @@ int x509write_csr_set_extension( x509_csr *ctx,
* *
* \param ctx CSR context to free * \param ctx CSR context to free
*/ */
void x509write_csr_free( x509_csr *ctx ); void x509write_csr_free( x509write_csr *ctx );
/** /**
* \brief Initialize a CRT writing context * \brief Initialize a CRT writing context
@ -399,7 +400,7 @@ int x509write_key_der( rsa_context *rsa, unsigned char *buf, size_t size );
* \return length of data written if successful, or a specific * \return length of data written if successful, or a specific
* error code * error code
*/ */
int x509write_csr_der( x509_csr *ctx, unsigned char *buf, size_t size ); int x509write_csr_der( x509write_csr *ctx, unsigned char *buf, size_t size );
#if defined(POLARSSL_BASE64_C) #if defined(POLARSSL_BASE64_C)
/** /**
@ -445,7 +446,7 @@ int x509write_key_pem( rsa_context *rsa, unsigned char *buf, size_t size );
* *
* \return 0 successful, or a specific error code * \return 0 successful, or a specific error code
*/ */
int x509write_csr_pem( x509_csr *ctx, unsigned char *buf, size_t size ); int x509write_csr_pem( x509write_csr *ctx, unsigned char *buf, size_t size );
#endif /* POLARSSL_BASE64_C */ #endif /* POLARSSL_BASE64_C */
#ifdef __cplusplus #ifdef __cplusplus

View file

@ -134,30 +134,30 @@ static int x509_write_rsa_pubkey( unsigned char **p, unsigned char *start,
return( len ); return( len );
} }
void x509write_csr_init( x509_csr *ctx ) void x509write_csr_init( x509write_csr *ctx )
{ {
memset( ctx, 0, sizeof(x509_csr) ); memset( ctx, 0, sizeof(x509write_csr) );
} }
void x509write_csr_free( x509_csr *ctx ) void x509write_csr_free( x509write_csr *ctx )
{ {
asn1_free_named_data_list( &ctx->subject ); asn1_free_named_data_list( &ctx->subject );
asn1_free_named_data_list( &ctx->extensions ); asn1_free_named_data_list( &ctx->extensions );
memset( ctx, 0, sizeof(x509_csr) ); memset( ctx, 0, sizeof(x509write_csr) );
} }
void x509write_csr_set_md_alg( x509_csr *ctx, md_type_t md_alg ) void x509write_csr_set_md_alg( x509write_csr *ctx, md_type_t md_alg )
{ {
ctx->md_alg = md_alg; ctx->md_alg = md_alg;
} }
void x509write_csr_set_rsa_key( x509_csr *ctx, rsa_context *rsa ) void x509write_csr_set_rsa_key( x509write_csr *ctx, rsa_context *rsa )
{ {
ctx->rsa = rsa; ctx->rsa = rsa;
} }
int x509write_csr_set_subject_name( x509_csr *ctx, char *subject_name ) int x509write_csr_set_subject_name( x509write_csr *ctx, char *subject_name )
{ {
return x509write_string_to_names( &ctx->subject, subject_name ); return x509write_string_to_names( &ctx->subject, subject_name );
} }
@ -184,7 +184,7 @@ static int x509_set_extension( asn1_named_data **head,
return( 0 ); return( 0 );
} }
int x509write_csr_set_extension( x509_csr *ctx, int x509write_csr_set_extension( x509write_csr *ctx,
const char *oid, size_t oid_len, const char *oid, size_t oid_len,
const unsigned char *val, size_t val_len ) const unsigned char *val, size_t val_len )
{ {
@ -192,7 +192,7 @@ int x509write_csr_set_extension( x509_csr *ctx,
0, val, val_len ); 0, val, val_len );
} }
int x509write_csr_set_key_usage( x509_csr *ctx, unsigned char key_usage ) int x509write_csr_set_key_usage( x509write_csr *ctx, unsigned char key_usage )
{ {
unsigned char buf[4]; unsigned char buf[4];
unsigned char *c; unsigned char *c;
@ -212,7 +212,8 @@ int x509write_csr_set_key_usage( x509_csr *ctx, unsigned char key_usage )
return( 0 ); return( 0 );
} }
int x509write_csr_set_ns_cert_type( x509_csr *ctx, unsigned char ns_cert_type ) int x509write_csr_set_ns_cert_type( x509write_csr *ctx,
unsigned char ns_cert_type )
{ {
unsigned char buf[4]; unsigned char buf[4];
unsigned char *c; unsigned char *c;
@ -248,7 +249,7 @@ void x509write_crt_free( x509write_cert *ctx )
asn1_free_named_data_list( &ctx->issuer ); asn1_free_named_data_list( &ctx->issuer );
asn1_free_named_data_list( &ctx->extensions ); asn1_free_named_data_list( &ctx->extensions );
memset( ctx, 0, sizeof(x509_csr) ); memset( ctx, 0, sizeof(x509write_csr) );
} }
void x509write_crt_set_md_alg( x509write_cert *ctx, md_type_t md_alg ) void x509write_crt_set_md_alg( x509write_cert *ctx, md_type_t md_alg )
@ -644,7 +645,7 @@ static int x509_write_extensions( unsigned char **p, unsigned char *start,
return( len ); return( len );
} }
int x509write_csr_der( x509_csr *ctx, unsigned char *buf, size_t size ) int x509write_csr_der( x509write_csr *ctx, unsigned char *buf, size_t size )
{ {
int ret; int ret;
const char *sig_oid; const char *sig_oid;
@ -975,7 +976,7 @@ int x509write_key_pem( rsa_context *rsa, unsigned char *buf, size_t size )
return( 0 ); return( 0 );
} }
int x509write_csr_pem( x509_csr *ctx, unsigned char *buf, size_t size ) int x509write_csr_pem( x509write_csr *ctx, unsigned char *buf, size_t size )
{ {
int ret; int ret;
unsigned char output_buf[4096]; unsigned char output_buf[4096];

View file

@ -60,7 +60,7 @@ struct options
unsigned char ns_cert_type; /* NS cert type */ unsigned char ns_cert_type; /* NS cert type */
} opt; } opt;
int write_certificate_request( x509_csr *req, char *output_file ) int write_certificate_request( x509write_csr *req, char *output_file )
{ {
int ret; int ret;
FILE *f; FILE *f;
@ -130,7 +130,7 @@ int main( int argc, char *argv[] )
char buf[1024]; char buf[1024];
int i, j, n; int i, j, n;
char *p, *q, *r; char *p, *q, *r;
x509_csr req; x509write_csr req;
/* /*
* Set to sane values * Set to sane values

View file

@ -16,7 +16,7 @@ void x509_csr_check( char *key_file, int md_type,
{ {
rsa_context rsa; rsa_context rsa;
pem_context pem; pem_context pem;
x509_csr req; x509write_csr req;
unsigned char *c; unsigned char *c;
unsigned char buf[4000]; unsigned char buf[4000];
unsigned char check_buf[4000]; unsigned char check_buf[4000];