From 05d5c3e7348b331a0d92d7abfba9fad136629b3b Mon Sep 17 00:00:00 2001 From: Przemek Stekiel Date: Tue, 16 May 2023 16:24:44 +0200 Subject: [PATCH] Further test improvements Signed-off-by: Przemek Stekiel --- tests/data_files/Makefile | 4 ++-- .../authorityKeyId_no_authorityKeyId.crt.der | Bin 0 -> 809 bytes .../authorityKeyId_no_issuer_serial.crt.der | Bin 809 -> 0 bytes .../authorityKeyId_subjectKeyId.conf | 2 +- tests/suites/test_suite_x509parse.data | 10 +++++----- tests/suites/test_suite_x509parse.function | 17 ++++++++++++----- 6 files changed, 20 insertions(+), 13 deletions(-) create mode 100644 tests/data_files/authorityKeyId_no_authorityKeyId.crt.der delete mode 100644 tests/data_files/authorityKeyId_no_issuer_serial.crt.der diff --git a/tests/data_files/Makefile b/tests/data_files/Makefile index 14cf5ae8da..8ec84c1049 100644 --- a/tests/data_files/Makefile +++ b/tests/data_files/Makefile @@ -556,8 +556,8 @@ authorityKeyId_subjectKeyId.crt.der: authorityKeyId_no_keyid.crt.der: $(OPENSSL) req -x509 -nodes -days 7300 -key server2.key -outform DER -out $@ -config authorityKeyId_subjectKeyId.conf -extensions 'v3_req_authorityKeyId_no_keyid' -authorityKeyId_no_issuer_serial.crt.der: - $(OPENSSL) req -x509 -nodes -days 7300 -key server2.key -outform DER -out $@ -config authorityKeyId_subjectKeyId.conf -extensions 'v3_req_authorityKeyId_no_issuer_serial' +authorityKeyId_no_authorityKeyId.crt.der: + $(OPENSSL) req -x509 -nodes -days 7300 -key server2.key -outform DER -out $@ -config authorityKeyId_subjectKeyId.conf -extensions 'v3_req_no_authorityKeyId' authorityKeyId_empty.crt.der: $(OPENSSL) req -x509 -nodes -days 7300 -key server2.key -outform DER -out $@ -config authorityKeyId_subjectKeyId.conf -extensions 'v3_req_authorityKeyId_empty' diff --git a/tests/data_files/authorityKeyId_no_authorityKeyId.crt.der b/tests/data_files/authorityKeyId_no_authorityKeyId.crt.der new file mode 100644 index 0000000000000000000000000000000000000000..452d9d135d91032b4b7062e6e110de5902ecb25a GIT binary patch literal 809 zcmXqLVpcV1V&YxE%*4pVB*NGB^XQcMu`@YjAFhe`X!kZ$-z>p^myJ`a&7|-ctAPy2@<`IAiDTJgJmnb+p z8pw(B8W|gy8k!jzn;ICIMv3#9fVhTGE@g%{F)ATDmXVc#xrvdV!Jvtei>Zl`k>Q~4 z;=9k!%3fr-?pd^B<{G|=CssCI=dFarE<`;!yO^P4`8&DnY0HDQOn9$bRAr|!>(4fm zH7Z}rAE>4D%-Nt(yYSYlo@XazrtSH6kR@od*_Fk=9&RkVG2vk1mb4(VMQXvTR+q%F z*Ge|s*193T;3lt(u4mf!Xw_o37u;R`nLJw=COo{=B#>6SE=0RKwQ}OZM~R2eI(Txt z%i#Ig-FC@s|Aif^1exXP!&XSixk&Kyw|3v^c8Pl=aV$yycv|nT*c-K<)jKsAk51sT zSN~{m!i(?ywR^{pt7ji)wXHhBWHU?Fj{k+pjOf$F-a*rD2rklT=*YB;y3D`fUZlR@ z@$avM7!9T~F*7nSE><*meK))y%|?%Yq{4-oQASdp^cx7&F#av%a@ z92kg<3=@??i(JK{YW=)C1RYoUeyZZ-z!rV_QZd{3ttIn^ukziX>vHJ0jIhuMmw)}C|oF(#Pd%bzF`4__*f7NB*9&Zrm z*x7DeYg(SZeRf>2UH_aV@xLt{#I0JBuARIm>$>j6^Q6QHGTxIs58j@>=OW`@hLwva zwi*AP8&wrpvGqK2zx-t9xoQy{$;G~GDk8pY1` S`-&ef2)HW0$b#x7~kA1m!`NJ*iz+kBX0G9@cw%Mab>2!?>_XI&vx^xzmcNtBp0+$_%Y^s3MOAhxv;J%| zS)=l`{DE3Z&zub!wF_^(>UnljX4;;A2U&tPn_XG_>*2<-8xsyDZb=I=Tcj4eYIR8* zd#z;CZLJ&f3vTkt=z6Aok5(;qd%@l1pUJb8VZy^(O#*4P>q4}-EEiL_FvesN|0HuK5T`QoQniMe{1)xZkM=6633GCkEiwiioH?$S-n$}@#q9T zd-ab7C%pLHU%PkwxO(<+R@>V`ihTtNdhK@|jsLT8t?nUYg z9{>JIh|yp=6Eh`Hs{K)dLh_Q$)Wqpyd3}BL^Zd z#({yz$RN2r@$wJ#ZD;KMXS-IhI7P|axX-&yv1CcnB5}tP(P!)b&XS(CYu*B_?wh9y zR(y_#Gke^w8Cvtb=ax@{-BwYxqZ@51`2q{n-fdrXdFh*(78g|2!;*qlbamdFarM($ zhff?~ek$LWY~CgFRc}ee?qe~FyP0_Q3oUHBbIByeu2MoX_DNopbmH3B4K6%8w`c5o z`}h#^fpvR!%uLHve9#xtwB~8Jc+8B)a>;JB)^le5JmawH;hKA2zwME?`=qdAI(wYv zLN86;1)&E6+Iyd0wJyH(@%Gj%i 0) + if (keyId->len > 0) { TEST_EQUAL(crt.authority_key_id.keyIdentifier.tag, MBEDTLS_ASN1_OCTET_STRING); TEST_EQUAL(memcmp(crt.authority_key_id.keyIdentifier.p, keyId->x, keyId->len), 0); TEST_EQUAL(crt.authority_key_id.keyIdentifier.len, keyId->len); + } else { + TEST_EQUAL(crt.authority_key_id.keyIdentifier.tag, 0); + TEST_EQUAL(crt.authority_key_id.keyIdentifier.len, 0); } + /* Issuer test */ - if (crt.authority_key_id.authorityCertIssuer.buf.len > 0) + if (strlen(authorityKeyId_issuer) > 0) { mbedtls_x509_sequence *issuerPtr = &crt.authority_key_id.authorityCertIssuer; @@ -1621,13 +1625,16 @@ void x509_crt_parse_authoritykeyid(char *file, } /* Serial test */ - if (crt.authority_key_id.authorityCertSerialNumber.len > 0) + if (serial->len > 0) { TEST_EQUAL(crt.authority_key_id.authorityCertSerialNumber.tag, MBEDTLS_ASN1_INTEGER); TEST_EQUAL(memcmp(crt.authority_key_id.authorityCertSerialNumber.p, serial->x, serial->len), 0); TEST_EQUAL(crt.authority_key_id.authorityCertSerialNumber.len, serial->len); + } else { + TEST_EQUAL(crt.authority_key_id.authorityCertSerialNumber.tag, 0); + TEST_EQUAL(crt.authority_key_id.authorityCertSerialNumber.len, 0); } } else {