taskrambler  0.1.9
Web server and task management solution.
message.h
Go to the documentation of this file.
1 /**
2  * \file
3  * Generic HTTP message. Parent for request and response.
4  *
5  * \author Georg Hopp
6  *
7  * \copyright
8  * Copyright © 2012 Georg Hopp
9  *
10  * This program is free software: you can redistribute it and/or modify
11  * it under the terms of the GNU General Public License as published by
12  * the Free Software Foundation, either version 3 of the License, or
13  * (at your option) any later version.
14  *
15  * This program is distributed in the hope that it will be useful,
16  * but WITHOUT ANY WARRANTY; without even the implied warranty of
17  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18  * GNU General Public License for more details.
19  *
20  * You should have received a copy of the GNU General Public License
21  * along with this program. If not, see <http://www.gnu.org/licenses/>.
22  */
23 
24 #ifndef __HTTP_MESSAGE__
25 #define __HTTP_MESSAGE__
26 
27 #include "class.h"
28 #include "hash.h"
29 #include "stream.h"
30 #include "asset.h"
31 
32 CLASS(HttpMessage) {
33  char * version;
34 
35  Hash header;
36 
37  Asset asset;
38  char * body;
39 
40  int nbody;
41  int dbody;
42 };
43 
44 char httpMessageHasKeepAlive(HttpMessage);
45 size_t httpMessageHeaderSizeGet(HttpMessage);
46 char * httpMessageHeaderToString(HttpMessage, char *);
47 
48 int httpMessageGetVersion(HttpMessage, int *, int *);
49 int httpMessageHasValidVersion(HttpMessage);
50 
51 #endif // __HTTP_MESSAGE__
52 
53 // vim: set ts=4 sw=4:
int httpMessageHasValidVersion(HttpMessage)
CLASS(HttpMessage)
Definition: message.h:32
size_t httpMessageHeaderSizeGet(HttpMessage)
int httpMessageGetVersion(HttpMessage, int *, int *)
Definition: get_version.c:29
char * httpMessageHeaderToString(HttpMessage, char *)
char httpMessageHasKeepAlive(HttpMessage)