diff options
Diffstat (limited to '')
-rw-r--r-- | gemini/request.mli | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/gemini/request.mli b/gemini/request.mli new file mode 100644 index 0000000..b96a5ae --- /dev/null +++ b/gemini/request.mli @@ -0,0 +1,37 @@ +module type GEMINI_TRANSACTION = +sig + module M : MimeType.MIME_TYPE + + type status = + | INPUT + | SUCCESS + | SUCCESS_EOCSS + | REDIR_TEMP + | REDIR_PERM + | TEMP_FAIL + | SERVER_UNAVAILABLE + | CGI_ERROR + | PROXY_ERROR + | SLOW_DOWN + | PERM_FAIL + | NOT_FOUND + | GONE + | PROXY_REQ_REFUSED + | BAD_REQ + | CLIENT_CERT_REQUIRED + | TRANSIENT_CERT_REQUESTED + | AUTHORISED_CERT_REQUIRED + | CERT_NOT_ACCEPTED + | FUTURE_CERT_REJECTED + | EXPIRED_CERT_REJECTED + + type mime_type = M.t + + type response = status * mime_type * string + + val int_to_status : int -> status option + + val request : string -> response option +end + +module GeminiTransaction (M : MimeType.MIME_TYPE) : GEMINI_TRANSACTION with module M = M |