update busybox to v1.3.1, i was too lazy to update patch 320, feel free to do so
[openwrt/staging/mkresin.git] / package / busybox / patches / 330-httpd_user_agent.patch
index bbe01f782627c262f2dbaa305833bd627988149c..a5b6c0a963abccc9cdb644d05f23f910b1cc7ee8 100644 (file)
@@ -1,30 +1,28 @@
-diff -Nur busybox-1.1.1/networking/httpd.c busybox-1.1.1-owrt/networking/httpd.c
---- busybox-1.1.1/networking/httpd.c   2006-04-01 19:42:36.000000000 +0200
-+++ busybox-1.1.1-owrt/networking/httpd.c      2006-04-01 19:43:59.000000000 +0200
-@@ -247,6 +247,7 @@
-   const char *query;
+diff -ruN busybox-1.3.1-old/networking/httpd.c busybox-1.3.1/networking/httpd.c
+--- busybox-1.3.1-old/networking/httpd.c       2006-12-27 05:52:39.000000000 +0100
++++ busybox-1.3.1/networking/httpd.c   2006-12-28 18:04:53.000000000 +0100
+@@ -137,6 +137,7 @@
+       const char *query;
  
-   USE_FEATURE_HTTPD_CGI(char *referer;)
-+  USE_FEATURE_HTTPD_CGI(char *user_agent;)
+       USE_FEATURE_HTTPD_CGI(char *referer;)
++      USE_FEATURE_HTTPD_CGI(char *user_agent;)
  
-   const char *configFile;
+       const char *configFile;
  
-@@ -1208,6 +1209,7 @@
-       addEnv("SERVER",         "PROTOCOL", "HTTP/1.0");
-       addEnv("GATEWAY_INTERFACE", "",      "CGI/1.1");
-       addEnv("REMOTE",         "ADDR",     config->rmt_ip_str);
-+      addEnv("HTTP","USER_AGENT", config->user_agent);
- #ifdef CONFIG_FEATURE_HTTPD_SET_REMOTE_PORT_TO_ENV
-       addEnvPort("REMOTE");
+@@ -1062,6 +1063,7 @@
+               putenv("SERVER_PROTOCOL=HTTP/1.0");
+               putenv("GATEWAY_INTERFACE=CGI/1.1");
+               setenv1("REMOTE_ADDR", config->rmt_ip_str);
++              setenv1("HTTP_USER_AGENT", config->user_agent);
+ #if ENABLE_FEATURE_HTTPD_SET_REMOTE_PORT_TO_ENV
+               setenv_long("REMOTE_PORT", config->port);
  #endif
-@@ -1771,6 +1773,10 @@
-                 for(test = buf + 8; isspace(*test); test++)
-                         ;
-                 config->referer = strdup(test);
-+      } else if ((strncasecmp(buf, "User-Agent:",11) ==0)) {
-+              for(test = buf + 11; isspace(*test); test++)
-+                      ;
-+              config->user_agent = strdup(test);
-       }
+@@ -1605,6 +1607,8 @@
+                                       content_type = strdup(skip_whitespace(buf + sizeof("Content-Type:")-1));
+                               } else if ((STRNCASECMP(buf, "Referer:") == 0)) {
+                                       config->referer = strdup(skip_whitespace(buf + sizeof("Referer:")-1));
++                              } else if ((STRNCASECMP(buf, "User-Agent:") == 0)) {
++                                      config->user_agent = strdup(skip_whitespace(buf + sizeof("User-Agent:")-1));
+                               }
  #endif