diff http.h @ 870:f641c96e431b

Some simple code to handle HTTP requests/responses.
author bertrand
date Fri, 25 May 2001 13:58:32 +0000
parents
children ede5785faa53
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/http.h	Fri May 25 13:58:32 2001 +0000
@@ -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