]> matita.cs.unibo.it Git - helm.git/blobdiff - helm/DEVEL/ocaml-http/http_misc.mli
- the mathql interpreter is not helm-dependent any more
[helm.git] / helm / DEVEL / ocaml-http / http_misc.mli
index 6e5fdfcf6425daf10beedcbc60b0269fe4184077..d19535e948b3913096caf552eba2ae36b6f4501d 100644 (file)
@@ -20,7 +20,7 @@
 *)
 
 (** Helpers and other not better classified functions which should not be
-visible to the final user *)
+exposed in the final API *)
 
   (** @return the current date compliant to RFC 1123, which updates RFC 822
   zone info are retrieved from UTC *)
@@ -44,6 +44,7 @@ val ls: Unix.dir_handle -> string list
 
   (** explode a string in a char list *)
 val string_explode: string -> char list
+
   (** implode a char list in a string *)
 val string_implode: char list -> string
 
@@ -53,6 +54,7 @@ val reason_phrase_of_code: int -> string
   (** build a Unix.sockaddr inet address from a string representation of an IP
   address and a port number *)
 val build_sockaddr: string * int -> Unix.sockaddr
+
   (** explode an _inet_ Unix.sockaddr address in a string representation of an
   IP address and a port number *)
 val explode_sockaddr: Unix.sockaddr -> string * int
@@ -60,6 +62,24 @@ val explode_sockaddr: Unix.sockaddr -> string * int
   (** given an out_channel build on top of a socket, return peername related to
   that socket *)
 val peername_of_out_channel: out_channel -> Unix.sockaddr
+
   (** as above but works on in_channels *)
 val peername_of_in_channel: in_channel -> Unix.sockaddr
 
+  (** given an out_channel build on top of a socket, return sockname related to
+  that socket *)
+val sockname_of_out_channel: out_channel -> Unix.sockaddr
+
+  (** as above but works on in_channels *)
+val sockname_of_in_channel: in_channel -> Unix.sockaddr
+
+  (* TODO replace with Buffer.add_channel which does almost the same :-((( *)
+  (** reads from an input channel till it End_of_file and returns what has been
+  read; if limit is given returned buffer will contains at most first 'limit'
+  bytes read from input channel *)
+val buf_of_inchan: ?limit: int -> in_channel -> Buffer.t
+
+  (** like List.assoc but return all bindings of a given key instead of the
+  leftmost one only *)
+val list_assoc_all: 'a -> ('a * 'b) list -> 'b list
+