diff --git a/programs/x509/cert_write.c b/programs/x509/cert_write.c index c276321b6..691c13b54 100644 --- a/programs/x509/cert_write.c +++ b/programs/x509/cert_write.c @@ -124,12 +124,19 @@ int write_certificate( x509write_cert *crt, char *output_file, return( 0 ); } +#if defined(POLARSSL_X509_CSR_PARSE_C) +#define USAGE_CSR \ + " request_file=%%s default: (empty)\n" \ + " If request_file is specified, subject_key,\n" \ + " subject_pwd and subject_name are ignored!\n" +#else +#define USAGE_CSR "" +#endif /* POLARSSL_X509_CSR_PARSE_C */ + #define USAGE \ "\n usage: cert_write param=<>...\n" \ "\n acceptable parameters:\n" \ - " request_file=%%s default: (empty)\n" \ - " If request_file is specified, subject_key,\n" \ - " subject_pwd and subject_name are ignored!\n" \ + USAGE_CSR \ " subject_key=%%s default: subject.key\n" \ " subject_pwd=%%s default: (empty)\n" \ " subject_name=%%s default: CN=Cert,O=PolarSSL,C=NL\n" \ @@ -180,10 +187,12 @@ int main( int argc, char *argv[] ) *subject_key = &loaded_subject_key; char buf[1024]; char issuer_name[128]; - char subject_name[128]; int i, j, n; char *p, *q, *r; +#if defined(POLARSSL_X509_CSR_PARSE_C) + char subject_name[128]; x509_csr csr; +#endif x509write_cert crt; mpi serial; entropy_context entropy; @@ -198,7 +207,9 @@ int main( int argc, char *argv[] ) pk_init( &loaded_issuer_key ); pk_init( &loaded_subject_key ); mpi_init( &serial ); +#if defined(POLARSSL_X509_CSR_PARSE_C) memset( &csr, 0, sizeof(x509_csr) ); +#endif memset( &issuer_crt, 0, sizeof(x509_cert) ); memset( buf, 0, 1024 ); @@ -419,6 +430,7 @@ int main( int argc, char *argv[] ) printf( " ok\n" ); } +#if defined(POLARSSL_X509_CSR_PARSE_C) // Parse certificate request if present // if( !opt.selfsign && strlen( opt.request_file ) ) @@ -450,6 +462,7 @@ int main( int argc, char *argv[] ) printf( " ok\n" ); } +#endif /* POLARSSL_X509_CSR_PARSE_C */ /* * 1.1. Load the keys