forked from wolfSSL/wolfssl
Merge pull request #1417 from dgarske/asn_x509_header
Cleanup of the ASN X509 header logic
This commit is contained in:
@ -7264,6 +7264,8 @@ WOLFSSL_LOCAL int GetSerialNumber(const byte* input, word32* inOutIdx,
|
||||
}
|
||||
|
||||
|
||||
/* Max X509 header length indicates the max length + 2 ('\n', '\0') */
|
||||
#define MAX_X509_HEADER_SZ (37 + 2)
|
||||
|
||||
const char* const BEGIN_CERT = "-----BEGIN CERTIFICATE-----";
|
||||
const char* const END_CERT = "-----END CERTIFICATE-----";
|
||||
@ -7318,12 +7320,11 @@ int wc_DerToPemEx(const byte* der, word32 derSz, byte* output, word32 outSz,
|
||||
char* header = NULL;
|
||||
char* footer = NULL;
|
||||
#else
|
||||
char header[40 + HEADER_ENCRYPTED_KEY_SIZE];
|
||||
char footer[40];
|
||||
char header[MAX_X509_HEADER_SZ + HEADER_ENCRYPTED_KEY_SIZE];
|
||||
char footer[MAX_X509_HEADER_SZ];
|
||||
#endif
|
||||
|
||||
int headerLen = 40 + HEADER_ENCRYPTED_KEY_SIZE;
|
||||
int footerLen = 40;
|
||||
int headerLen = MAX_X509_HEADER_SZ + HEADER_ENCRYPTED_KEY_SIZE;
|
||||
int footerLen = MAX_X509_HEADER_SZ;
|
||||
int i;
|
||||
int err;
|
||||
int outLen; /* return length or error */
|
||||
@ -7344,10 +7345,8 @@ int wc_DerToPemEx(const byte* der, word32 derSz, byte* output, word32 outSz,
|
||||
#endif
|
||||
|
||||
/* null term and leave room for \n */
|
||||
header[headerLen-1] = '\0';
|
||||
footer[footerLen-1] = '\0';
|
||||
headerLen -= 2;
|
||||
footerLen -= 2;
|
||||
header[--headerLen] = '\0';
|
||||
footer[--footerLen] = '\0';
|
||||
|
||||
if (type == CERT_TYPE) {
|
||||
XSTRNCPY(header, BEGIN_CERT, headerLen);
|
||||
|
Reference in New Issue
Block a user