mirror of
https://github.com/sheumann/hush.git
synced 2025-01-14 12:30:40 +00:00
"Due to a wrong format parameter in a printf httpd does not work when
compiled for with CONFIG_LFS (large file support). The attached patch suggested by Vladimir fixes that." - Steven Scholz
This commit is contained in:
parent
e01c550eab
commit
5cd6461b6f
@ -127,6 +127,13 @@ static const char default_path_httpd_conf[] = "/etc";
|
|||||||
static const char httpd_conf[] = "httpd.conf";
|
static const char httpd_conf[] = "httpd.conf";
|
||||||
static const char home[] = "./";
|
static const char home[] = "./";
|
||||||
|
|
||||||
|
#ifdef CONFIG_LFS
|
||||||
|
# define cont_l_fmt "%lld"
|
||||||
|
#else
|
||||||
|
# define cont_l_fmt "%ld"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
// Note: bussybox xfuncs are not used because we want the server to keep running
|
// Note: bussybox xfuncs are not used because we want the server to keep running
|
||||||
// if something bad happens due to a malformed user request.
|
// if something bad happens due to a malformed user request.
|
||||||
// As a result, all memory allocation after daemonize
|
// As a result, all memory allocation after daemonize
|
||||||
@ -932,7 +939,7 @@ static int sendHeaders(HttpResponseNum responseNum)
|
|||||||
#endif
|
#endif
|
||||||
if (config->ContentLength != -1) { /* file */
|
if (config->ContentLength != -1) { /* file */
|
||||||
strftime(timeStr, sizeof(timeStr), RFC1123FMT, gmtime(&config->last_mod));
|
strftime(timeStr, sizeof(timeStr), RFC1123FMT, gmtime(&config->last_mod));
|
||||||
len += sprintf(buf+len, "Last-Modified: %s\r\n%s %ld\r\n",
|
len += sprintf(buf+len, "Last-Modified: %s\r\n%s " cont_l_fmt "\r\n",
|
||||||
timeStr, Content_length, config->ContentLength);
|
timeStr, Content_length, config->ContentLength);
|
||||||
}
|
}
|
||||||
strcat(buf, "\r\n");
|
strcat(buf, "\r\n");
|
||||||
|
Loading…
x
Reference in New Issue
Block a user