version 1.1.1.1.2.3, 2012/03/09 12:33:41
|
version 1.1.1.1.2.7, 2012/03/09 16:42:31
|
Line 135 www_initCGI(void)
|
Line 135 www_initCGI(void)
|
if (!str) { |
if (!str) { |
LOGERR; |
LOGERR; |
return NULL; |
return NULL; |
} | } else |
for (i = 0; i < ctlen && (rlen = | memset(str, 0, ctlen + 1); |
| for (i = 0; i <= ctlen && (rlen = |
read(STDIN_FILENO, (void*) str + i, ctlen - i)) > 0; i += rlen); |
read(STDIN_FILENO, (void*) str + i, ctlen - i)) > 0; i += rlen); |
str[ctlen] = 0; |
str[ctlen] = 0; |
|
|
Line 524 www_parseMultiPart(const char *str, int ctlen, const c
|
Line 525 www_parseMultiPart(const char *str, int ctlen, const c
|
} |
} |
mime = mime_parseMultiPart(str, ctlen, www_getAttribute(attr, "boundary"), NULL); |
mime = mime_parseMultiPart(str, ctlen, www_getAttribute(attr, "boundary"), NULL); |
www_freeAttributes(&attr); |
www_freeAttributes(&attr); |
|
if (!mime) { |
|
www_closeCGI(&cgi); |
|
return NULL; |
|
} |
|
|
SLIST_FOREACH(m, mime, mime_node) { |
SLIST_FOREACH(m, mime, mime_node) { |
s = mime_getValue(m, "content-disposition"); |
s = mime_getValue(m, "content-disposition"); |
attr = www_parseAttributes(&s); |
attr = www_parseAttributes(&s); |
|
if (!www_getAttribute(attr, "name")) { |
|
www_freeAttributes(&attr); |
|
continue; |
|
} |
|
|
t = malloc(sizeof(struct tagCGI)); |
t = malloc(sizeof(struct tagCGI)); |
if (!t) { |
if (!t) { |