26 #define ENABLE_CURLX_PRINTF 49 const size_t cb = size * nmemb;
50 const char *end = (
char *)ptr + cb;
59 size_t failure = (size && nmemb) ? 0 : 1;
81 (void)fflush(heads->
stream);
92 (cb > 20) &&
checkprefix(
"Content-disposition:", str) &&
95 const char *
p = str + 20;
103 while(*p && (p < end) && !
ISALPHA(*p))
108 if(memcmp(p,
"filename=", 9)) {
110 while((p < end) && (*p !=
';'))
156 if(*p ==
'\'' || *p ==
'"') {
165 q = strrchr(copy,
'/');
177 q = strrchr(p,
'\\');
187 for(q = p; *q; ++q) {
204 memmove(copy, p, strlen(p) + 1);
206 #if defined(MSDOS) || defined(WIN32) 209 SANITIZEcode sc = sanitize_file_name(&sanitized, copy, 0);
226 snprintf(buffer,
sizeof(buffer),
"%s/%s", tdir, copy);
CURL_EXTERN void curl_free(void *p)
UNITTEST_START char * ptr
struct GlobalConfig * global
memcpy(filename, filename1, strlen(filename1))
#define curl_easy_getinfo(handle, info, arg)
struct OperationConfig * config
#define Curl_safefree(ptr)
#define CURL_MAX_HTTP_HEADER
static size_t cb(char *d, size_t n, size_t l, void *p)
#define checkprefix(a, b)