On Tue, Aug 26, 2008 at 10:03:46PM +0200, Alina Friedrichsen wrote:
> With this patch the BusyBox httpd pass the "Accept:" and
> "Accept-Language:" header by the environment variables to the
> CGI-Script, so this can make Content Negotiation to deliver the page in
> the language, which was selected by the user in the browser settings,
> and/or serve the XHTML page with the right MIME-Type
> application/xhtml+xml to user agents which support it und text/html
> which don't.
>
> (Needed e.g. for OpenWrt LuCI.)
>
> Signed-off-by: Alina Friedrichsen <[EMAIL PROTECTED]>

Sorry for the delay. I have added your patch as r23295.
Thanks!

>Index: networking/httpd.c
>===================================================================
>--- networking/httpd.c (Revision 23211)
>+++ networking/httpd.c (Arbeitskopie)
>@@ -254,6 +254,8 @@
>       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 *http_accept;)
>+      USE_FEATURE_HTTPD_CGI(char *http_accept_language;)
> 
>       off_t file_size;        /* -1 - unknown */
> #if ENABLE_FEATURE_HTTPD_RANGES
>@@ -299,6 +301,8 @@
> #define remoteuser        (G.remoteuser       )
> #define referer           (G.referer          )
> #define user_agent        (G.user_agent       )
>+#define http_accept       (G.http_accept      )
>+#define http_accept_language (G.http_accept_language)
> #define file_size         (G.file_size        )
> #if ENABLE_FEATURE_HTTPD_RANGES
> #define range_start       (G.range_start      )
>@@ -1384,6 +1388,10 @@
>               }
>       }
>       setenv1("HTTP_USER_AGENT", user_agent);
>+      if (http_accept)
>+              setenv1("HTTP_ACCEPT", http_accept);
>+      if (http_accept_language)
>+              setenv1("HTTP_ACCEPT_LANGUAGE", http_accept_language);
>       if (post_len)
>               putenv(xasprintf("CONTENT_LENGTH=%d", post_len));
>       if (cookie)
>@@ -2005,6 +2013,10 @@
>                               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, "Accept:") == 0) {
>+                              http_accept = xstrdup(skip_whitespace(iobuf + 
>sizeof("Accept:")-1));
>+                      } else if (STRNCASECMP(iobuf, "Accept-Language:") == 0) 
>{
>+                              http_accept_language = 
>xstrdup(skip_whitespace(iobuf + sizeof("Accept-Language:")-1));
>                       }
> #endif
> #if ENABLE_FEATURE_HTTPD_BASIC_AUTH
>

>_______________________________________________
>busybox mailing list
>[email protected]
>http://busybox.net/cgi-bin/mailman/listinfo/busybox
_______________________________________________
busybox mailing list
[email protected]
http://busybox.net/cgi-bin/mailman/listinfo/busybox

Reply via email to