summaryrefslogtreecommitdiffstats
path: root/http.h
diff options
context:
space:
mode:
authorbertrand <bertrand@b3059339-0415-0410-9bf9-f77b7e298cf2>2001-05-25 13:58:32 +0000
committerbertrand <bertrand@b3059339-0415-0410-9bf9-f77b7e298cf2>2001-05-25 13:58:32 +0000
commit6555a6c73576e4b95c47da01cdb2e40344eb1449 (patch)
tree45561e37237ee030d8ef34e8aa1f1f87e063e125 /http.h
parent89ef6acd52ae4cf1696a196ed6b699656432839f (diff)
downloadmpv-6555a6c73576e4b95c47da01cdb2e40344eb1449.tar.bz2
mpv-6555a6c73576e4b95c47da01cdb2e40344eb1449.tar.xz
Some simple code to handle HTTP requests/responses.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@871 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'http.h')
-rw-r--r--http.h33
1 files changed, 33 insertions, 0 deletions
diff --git a/http.h b/http.h
new file mode 100644
index 0000000000..7c3963ffb3
--- /dev/null
+++ b/http.h
@@ -0,0 +1,33 @@
+#ifndef __HTTP_H
+#define __HTTP_H
+
+#define HTTP_FIELD_MAX 20
+
+typedef struct {
+ char *protocol;
+ char *method;
+ char *uri;
+ int status_code;
+ char *reason_phrase;
+ int http_minor_version;
+ char *fields[HTTP_FIELD_MAX];
+ int field_nb;
+ char *field_search;
+ int search_pos;
+ char *body;
+ int body_size;
+} HTTP_header_t;
+
+HTTP_header_t* http_new_header();
+void http_free( HTTP_header_t *http_hdr );
+HTTP_header_t* http_new_response( char *data, int length );
+char* http_get_request( HTTP_header_t *http_hdr );
+char* http_get_field( HTTP_header_t *http_hdr, const char *field_name );
+char* http_get_next_field( HTTP_header_t *http_hdr );
+void http_set_field( HTTP_header_t *http_hdr, const char *field );
+void http_set_method( HTTP_header_t *http_hdr, const char *method );
+void http_set_uri( HTTP_header_t *http_hdr, const char *uri );
+
+void http_debug_hdr( HTTP_header_t *http_hdr );
+
+#endif // __HTTP_H