svn commit: trunk/busybox/networking

vda at busybox.net vda at busybox.net
Sat Nov 22 20:29:35 UTC 2008


Author: vda
Date: 2008-11-22 12:29:35 -0800 (Sat, 22 Nov 2008)
New Revision: 24127

Log:
httpd: set $HOST to Host: header value. +83 bytes.
by Tobias Poschwatta (tp AT fonz.de)



Modified:
   trunk/busybox/networking/httpd.c


Changeset:
Modified: trunk/busybox/networking/httpd.c
===================================================================
--- trunk/busybox/networking/httpd.c	2008-11-22 20:18:37 UTC (rev 24126)
+++ trunk/busybox/networking/httpd.c	2008-11-22 20:29:35 UTC (rev 24127)
@@ -254,6 +254,7 @@
 	USE_FEATURE_HTTPD_BASIC_AUTH(char *remoteuser;)
 	USE_FEATURE_HTTPD_CGI(char *referer;)
 	USE_FEATURE_HTTPD_CGI(char *user_agent;)
+	USE_FEATURE_HTTPD_CGI(char *host;)
 	USE_FEATURE_HTTPD_CGI(char *http_accept;)
 	USE_FEATURE_HTTPD_CGI(char *http_accept_language;)
 
@@ -301,6 +302,7 @@
 #define remoteuser        (G.remoteuser       )
 #define referer           (G.referer          )
 #define user_agent        (G.user_agent       )
+#define host              (G.host             )
 #define http_accept       (G.http_accept      )
 #define http_accept_language (G.http_accept_language)
 #define file_size         (G.file_size        )
@@ -1406,6 +1408,7 @@
 #endif
 	if (referer)
 		setenv1("HTTP_REFERER", referer);
+	setenv1("HTTP_HOST", host); /* set to "" if NULL */
 
 	xpiped_pair(fromCgi);
 	xpiped_pair(toCgi);
@@ -2013,6 +2016,8 @@
 				referer = xstrdup(skip_whitespace(iobuf + sizeof("Referer:")-1));
 			} else if (STRNCASECMP(iobuf, "User-Agent:") == 0) {
 				user_agent = xstrdup(skip_whitespace(iobuf + sizeof("User-Agent:")-1));
+			} else if (STRNCASECMP(iobuf, "Host:") == 0) {
+				host = xstrdup(skip_whitespace(iobuf + sizeof("Host:")-1));
 			} else if (STRNCASECMP(iobuf, "Accept:") == 0) {
 				http_accept = xstrdup(skip_whitespace(iobuf + sizeof("Accept:")-1));
 			} else if (STRNCASECMP(iobuf, "Accept-Language:") == 0) {




More information about the busybox-cvs mailing list