module Value: sig
.. end
type
pc =
| |
Primitive |
| |
Constructed |
type
value =
| |
Bool of bool |
| |
Integer of int_value |
| |
Enum of int_value |
| |
Real of real_value |
| |
Bitstring of bitstring_value |
| |
Octetstring of string |
| |
Null |
| |
Seq of value list |
| |
Set of value list |
| |
Tagptr of tag_class * int * pc * string * int * int |
| |
Tag of tag_class * int * pc * value |
| |
OID of int array |
| |
ROID of int array |
| |
ObjectDescriptor of string |
| |
External of value list |
| |
Embedded_PDV of value list |
| |
NumericString of string |
| |
PrintableString of string |
| |
TeletexString of string |
| |
VideotexString of string |
| |
VisibleString of string |
| |
IA5String of string |
| |
GraphicString of string |
| |
GeneralString of string |
| |
UniversalString of string |
| |
BMPString of string |
| |
UTF8String of string |
| |
CharString of string |
| |
UTCTime of time_value |
| |
GeneralizedTime of time_value |
type
tag_class =
| |
Universal |
| |
Application |
| |
Context |
| |
Private |
type
int_value
type
real_value
type
bitstring_value
type
time_value
val get_int_str : int_value -> string
Get an integer as bytes
val get_int_b256 : int_value -> int array
Get an integer in base 256 notation, big endian. Negative values are
represented using two's complement (i.e. the first array element is
>= 128). The empty array means 0.
val get_int : int_value -> int
Get an integer as int
if representable, or raise Out_of_range
val get_int32 : int_value -> int32
Get an integer as int32
if representable, or raise Out_of_range
val get_int64 : int_value -> int64
Get an integer as int64
if representable, or raise Out_of_range
val get_real_str : real_value -> string
Get the byte representation of the real
val get_bitstring_size : bitstring_value -> int
Get the number of bits
val get_bitstring_data : bitstring_value -> string
Get the data. The last byte may be partial. The order of the bits
in every byte: bit 7 (MSB) contains the first bit
val get_bitstring_bits : bitstring_value -> bool array
Get the bitstring as bool array
val get_time_str : time_value -> string
Get the raw time string
val get_time : time_value -> Netdate.t
Get the time. Notes:
- UTCTime years are two-digit years, and
interpreted so that 0-49 is understood as 2000-2049, and 50-99
is understood as 1950-1999 (as required by X.509).
get_time_nsec
returns the fractional part as nanoseconds. Higher
resolutions than that are truncated.
- This function is restricted to the time formats occurring in DER
val equal : value -> value -> bool
Checks for equality. Notes:
Tag
and Tagptr
are considered different
Tagptr
is checked by comparing the equality of the substring
Set
is so far not compared as set, but as sequence (i.e. order
matters)