New ASN1 external type LONG. This parses an ASN1 INTEGER
commit1f345c052798dc6dcdff746b4a34b2cfa2c88a94
authorsteve <steve>
Thu, 30 Nov 2000 02:42:51 +0000 (30 02:42 +0000)
committersteve <steve>
Thu, 30 Nov 2000 02:42:51 +0000 (30 02:42 +0000)
treedb363670f231aa70c89d187ea2db75a6fabeb144
parent4bbd40f2bf72c6dafe7e70c847220975b4cd6447
New ASN1 external type LONG. This parses an ASN1 INTEGER
and stores the result in a long directly. This handles
negative longs OK and has range checking.

The value ASN1_LONG_UNDEF is used to indicate that the long
should be omitted (for OPTIONAL types). This is set to
0x7fffffff which is well beyond the normal expected range
of this type: it will typically be used for version numbers
where only a small value is used.

Also used the return value 2 from the callbacks to new/free
as a magic value which means that the callback itself will
handle new/free operations and the standard behaviour is
inappropriate.
crypto/asn1/Makefile.ssl
crypto/asn1/asn1.h
crypto/asn1/asn1_err.c
crypto/asn1/asn1t.h
crypto/asn1/p8_pkey.c
crypto/asn1/tasn_fre.c
crypto/asn1/tasn_new.c
crypto/asn1/x_long.c [copied from crypto/asn1/p8_pkey.c with 52% similarity]