summaryrefslogtreecommitdiff
path: root/src/lib/libssl/s3_both.c
diff options
context:
space:
mode:
authordoug <>2015-06-15 07:35:49 +0000
committerdoug <>2015-06-15 07:35:49 +0000
commitf06caa67ef95efe3935b9b1e51f4e8a10a52d973 (patch)
treed870273c7da5901692fed25ce0bccf96a3a77d50 /src/lib/libssl/s3_both.c
parentd95277cd2ce585f3b393ef8e10e3032d4fc20b26 (diff)
downloadopenbsd-f06caa67ef95efe3935b9b1e51f4e8a10a52d973.tar.gz
openbsd-f06caa67ef95efe3935b9b1e51f4e8a10a52d973.tar.bz2
openbsd-f06caa67ef95efe3935b9b1e51f4e8a10a52d973.zip
Make CBS_get_any_asn1_element() more compliant with DER encoding.
CBS_get_any_asn1_element violates DER encoding by allowing indefinite form. All callers except bs_ber.c expect DER encoding. The callers must check to see if it was indefinite or not. Rather than exposing all callers to this behavior, cbs_get_any_asn1_element_internal() allows specifying whether you want to allow the normally forbidden indefinite form. This is used by CBS_get_any_asn1_element() for strict DER encoding and by a new static function in bs_ber.c for the relaxed version. While I was here, I added comments to differentiate between ASN.1 restrictions and CBS limitations. ok miod@
Diffstat (limited to 'src/lib/libssl/s3_both.c')
0 files changed, 0 insertions, 0 deletions