From 5d1071f68ffabadf718824378304df4b2cfd4783 Mon Sep 17 00:00:00 2001 From: frankmorgner Date: Mon, 7 Nov 2011 15:51:43 +0000 Subject: [PATCH] car and certificate description are now optional for npa_ctx_create git-svn-id: https://vsmartcard.svn.sourceforge.net/svnroot/vsmartcard@630 96b47cad-a561-4643-ad3b-153ac7d7599c --- npa/src/npa.c | 21 ++++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) diff --git a/npa/src/npa.c b/npa/src/npa.c index 0219e0d..9becebc 100644 --- a/npa/src/npa.c +++ b/npa/src/npa.c @@ -216,18 +216,25 @@ npa_sm_ctx_create(EAC_CTX *ctx, const unsigned char *certificate_description, out->ctx = ctx; - out->certificate_description = BUF_MEM_create_init(certificate_description, - certificate_description_length); - if (!out->certificate_description) - goto err; + if (certificate_description && certificate_description_length) { + out->certificate_description = + BUF_MEM_create_init(certificate_description, + certificate_description_length); + if (!out->certificate_description) + goto err; + } else + out->certificate_description = NULL; out->id_icc = BUF_MEM_create_init(id_icc, id_icc_length); if (!out->id_icc) goto err; - out->cur_car = BUF_MEM_create_init(car, car_length); - if (!out->cur_car) - goto err; + if (car && car_length) { + out->cur_car = BUF_MEM_create_init(car, car_length); + if (!out->cur_car) + goto err; + } else + out->cur_car = NULL; out->nonce = NULL; out->next_car = NULL;