1 #ifndef LWIP_HTTPD_STRUCTS_H 2 #define LWIP_HTTPD_STRUCTS_H 6 #if LWIP_HTTPD_DYNAMIC_HEADERS 11 const char *extension;
12 const char *content_type;
17 static const char *
const g_psHTTPHeaderStrings[] =
19 "HTTP/1.0 200 OK\r\n",
20 "HTTP/1.0 404 File not found\r\n",
21 "HTTP/1.0 400 Bad Request\r\n",
22 "HTTP/1.0 501 Not Implemented\r\n",
23 "HTTP/1.1 200 OK\r\n",
24 "HTTP/1.1 404 File not found\r\n",
25 "HTTP/1.1 400 Bad Request\r\n",
26 "HTTP/1.1 501 Not Implemented\r\n",
28 "Connection: Close\r\n",
29 "Connection: keep-alive\r\n",
31 "\r\n<html><body><h2>404: The requested file cannot be found.</h2></body></html>\r\n" 36 #define HTTP_HDR_NOT_FOUND 1 37 #define HTTP_HDR_BAD_REQUEST 2 38 #define HTTP_HDR_NOT_IMPL 3 39 #define HTTP_HDR_OK_11 4 40 #define HTTP_HDR_NOT_FOUND_11 5 41 #define HTTP_HDR_BAD_REQUEST_11 6 42 #define HTTP_HDR_NOT_IMPL_11 7 43 #define HTTP_HDR_CONTENT_LENGTH 8 44 #define HTTP_HDR_CONN_CLOSE 9 45 #define HTTP_HDR_CONN_KEEPALIVE 10 46 #define HTTP_HDR_SERVER 11 47 #define DEFAULT_404_HTML 12 50 #define HTTP_HDR_HTML "Content-type: text/html\r\n\r\n" 51 #define HTTP_HDR_SSI "Content-type: text/html\r\nExpires: Fri, 10 Apr 2008 14:00:00 GMT\r\nPragma: no-cache\r\n\r\n" 52 #define HTTP_HDR_GIF "Content-type: image/gif\r\n\r\n" 53 #define HTTP_HDR_PNG "Content-type: image/png\r\n\r\n" 54 #define HTTP_HDR_JPG "Content-type: image/jpeg\r\n\r\n" 55 #define HTTP_HDR_BMP "Content-type: image/bmp\r\n\r\n" 56 #define HTTP_HDR_ICO "Content-type: image/x-icon\r\n\r\n" 57 #define HTTP_HDR_APP "Content-type: application/octet-stream\r\n\r\n" 58 #define HTTP_HDR_JS "Content-type: application/javascript\r\n\r\n" 59 #define HTTP_HDR_RA "Content-type: application/javascript\r\n\r\n" 60 #define HTTP_HDR_CSS "Content-type: text/css\r\n\r\n" 61 #define HTTP_HDR_SWF "Content-type: application/x-shockwave-flash\r\n\r\n" 62 #define HTTP_HDR_XML "Content-type: text/xml\r\n\r\n" 63 #define HTTP_HDR_PDF "Content-type: application/pdf\r\n\r\n" 65 #define HTTP_HDR_DEFAULT_TYPE "Content-type: text/plain\r\n\r\n" 70 static const tHTTPHeader g_psHTTPHeaders[] =
72 {
"html", HTTP_HDR_HTML},
73 {
"htm", HTTP_HDR_HTML},
74 {
"shtml",HTTP_HDR_SSI},
75 {
"shtm", HTTP_HDR_SSI},
76 {
"ssi", HTTP_HDR_SSI},
77 {
"gif", HTTP_HDR_GIF},
78 {
"png", HTTP_HDR_PNG},
79 {
"jpg", HTTP_HDR_JPG},
80 {
"bmp", HTTP_HDR_BMP},
81 {
"ico", HTTP_HDR_ICO},
82 {
"class",HTTP_HDR_APP},
83 {
"cls", HTTP_HDR_APP},
85 {
"ram", HTTP_HDR_RA},
86 {
"css", HTTP_HDR_CSS},
87 {
"swf", HTTP_HDR_SWF},
88 {
"xml", HTTP_HDR_XML},
89 {
"xsl", HTTP_HDR_XML},
90 {
"pdf", HTTP_HDR_PDF}
93 #define NUM_HTTP_HEADERS (sizeof(g_psHTTPHeaders) / sizeof(tHTTPHeader)) 98 static const char *
const g_pcSSIExtensions[] = {
99 ".shtml",
".shtm",
".ssi",
".xml" 101 #define NUM_SHTML_EXTENSIONS (sizeof(g_pcSSIExtensions) / sizeof(const char *))
#define HTTPD_SERVER_AGENT