/usr/lib/ocaml/netstring/netdn.mli is in libocamlnet-ocaml-dev 4.1.2-3.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 | (* $Id$ *)
(** X.500 distinguished names *)
type oid = Netoid.t
type dn = (oid * Netasn1.Value.value) list list
(** This is the raw version of the DN: a sequence of relative DNs,
and a relative DN is a set of (type,value) pairs. The types are
things like cn, country, organization, ...
*)
module type AT_LOOKUP = sig
val attribute_types : (oid * string * string list) list
(** The above types in the format [(oid, full_name, short_names)] *)
val lookup_attribute_type_by_oid : oid -> string * string list
(** Looks the OID up, and returns [(full_name, short_names)].
May raise [Not_found].
*)
val lookup_attribute_type_by_name : string -> oid * string * string list
(** Looks the name up, which can either be a full name or a short name.
Returns the whole triple [(oid, full_name, short_names)], or
raises [Not_found].
*)
end
module type DN_string = sig
(** For a given attribute lookup module [L] this module provides parser
and printer for distinguished names in string format (RFC 4514).
This implementation is restricted to attributes using the ASN.1
types [PrintableString], [TeletexString], [IA5String],
[UniversalString], [BMPString], and [UTF8String]. It is not
possible to parse hexencoded strings ('#' notation).
(NB. We'd need a generic BER printer for supporting this.)
*)
val parse : string -> dn
(** Parses the string (or fails). The string must use UTF-8 encoding. *)
val print : dn -> string
(** Prints the DN (cannot fail), using UTF-8 encoding *)
end
module DN_string_generic (L : AT_LOOKUP) : DN_string
(** For a given attribute lookup module [L] this module provides parser
and printer for distinguished names in string format (RFC 4514).
*)
(**/**)
val directory_string_from_ASN1 : Netasn1.Value.value -> string
(* See Netx509, where this function is exported officially *)
|