static CURLcode tool2curlparts(CURL *curl, struct tool_mime *m,
curl_mime *mime)
{
- CURLcode ret = CURLE_OK;
+ CURLcode result = CURLE_OK;
curl_mimepart *part = NULL;
curl_mime *submime = NULL;
const char *filename = NULL;
if(m) {
- ret = tool2curlparts(curl, m->prev, mime);
- if(!ret) {
+ result = tool2curlparts(curl, m->prev, mime);
+ if(!result) {
part = curl_mime_addpart(mime);
if(!part)
- ret = CURLE_OUT_OF_MEMORY;
+ result = CURLE_OUT_OF_MEMORY;
}
- if(!ret) {
+ if(!result) {
filename = m->filename;
switch(m->kind) {
case TOOLMIME_PARTS:
- ret = tool2curlmime(curl, m, &submime);
- if(!ret) {
- ret = curl_mime_subparts(part, submime);
- if(ret)
+ result = tool2curlmime(curl, m, &submime);
+ if(!result) {
+ result = curl_mime_subparts(part, submime);
+ if(result)
curl_mime_free(submime);
}
break;
case TOOLMIME_DATA:
- ret = curl_mime_data(part, m->data, CURL_ZERO_TERMINATED);
+ result = curl_mime_data(part, m->data, CURL_ZERO_TERMINATED);
break;
case TOOLMIME_FILE:
case TOOLMIME_FILEDATA:
- ret = curl_mime_filedata(part, m->data);
- if(!ret && m->kind == TOOLMIME_FILEDATA && !filename)
- ret = curl_mime_filename(part, NULL);
+ result = curl_mime_filedata(part, m->data);
+ if(!result && m->kind == TOOLMIME_FILEDATA && !filename)
+ result = curl_mime_filename(part, NULL);
break;
case TOOLMIME_STDIN:
filename = "-";
FALLTHROUGH();
case TOOLMIME_STDINDATA:
- ret = curl_mime_data_cb(part, m->size,
- (curl_read_callback)tool_mime_stdin_read,
- (curl_seek_callback)tool_mime_stdin_seek,
- NULL, m);
+ result = curl_mime_data_cb(part, m->size,
+ (curl_read_callback)tool_mime_stdin_read,
+ (curl_seek_callback)tool_mime_stdin_seek,
+ NULL, m);
break;
default:
break;
}
}
- if(!ret && filename)
- ret = curl_mime_filename(part, filename);
- if(!ret)
- ret = curl_mime_type(part, m->type);
- if(!ret)
- ret = curl_mime_headers(part, m->headers, 0);
- if(!ret)
- ret = curl_mime_encoder(part, m->encoder);
- if(!ret)
- ret = curl_mime_name(part, m->name);
+ if(!result && filename)
+ result = curl_mime_filename(part, filename);
+ if(!result)
+ result = curl_mime_type(part, m->type);
+ if(!result)
+ result = curl_mime_headers(part, m->headers, 0);
+ if(!result)
+ result = curl_mime_encoder(part, m->encoder);
+ if(!result)
+ result = curl_mime_name(part, m->name);
}
- return ret;
+ return result;
}
CURLcode tool2curlmime(CURL *curl, struct tool_mime *m, curl_mime **mime)
{
- CURLcode ret = CURLE_OK;
+ CURLcode result = CURLE_OK;
*mime = curl_mime_init(curl);
if(!*mime)
- ret = CURLE_OUT_OF_MEMORY;
+ result = CURLE_OUT_OF_MEMORY;
else
- ret = tool2curlparts(curl, m->subparts, *mime);
- if(ret) {
+ result = tool2curlparts(curl, m->subparts, *mime);
+ if(result) {
curl_mime_free(*mime);
*mime = NULL;
}
- return ret;
+ return result;
}
/*
char *encoder = NULL;
struct curl_slist *headers = NULL;
struct tool_mime *part = NULL;
- CURLcode res;
+ CURLcode result;
int err = 1;
/* Allocate the main mime structure if needed. */
}
/* Store that file in a part. */
- part = tool_mime_new_filedata(subparts, data, TRUE, &res);
+ part = tool_mime_new_filedata(subparts, data, TRUE, &result);
if(!part)
goto fail;
part->headers = headers;
headers = NULL;
- if(res == CURLE_READ_ERROR) {
+ if(result == CURLE_READ_ERROR) {
/* An error occurred while reading stdin: if read has started,
issue the error now. Else, delay it until processed by libcurl. */
if(part->size > 0) {
}
tool_safefree(part->data);
part->size = -1;
- res = CURLE_OK;
+ result = CURLE_OK;
}
SET_TOOL_MIME_PTR(part, filename);
SET_TOOL_MIME_PTR(part, type);
if(sep < 0)
goto fail;
- part = tool_mime_new_filedata(*mimecurrent, data, FALSE, &res);
+ part = tool_mime_new_filedata(*mimecurrent, data, FALSE, &result);
if(!part)
goto fail;
part->headers = headers;
headers = NULL;
- if(res == CURLE_READ_ERROR) {
+ if(result == CURLE_READ_ERROR) {
/* An error occurred while reading stdin: if read has started,
issue the error now. Else, delay it until processed by
libcurl. */
}
tool_safefree(part->data);
part->size = -1;
- res = CURLE_OK;
+ result = CURLE_OK;
}
}
else {
result = curlx_dyn_addf(&escaped,
/* Octal escape to avoid >2 digit hex. */
(len > 1 && ISXDIGIT(s[1])) ?
- "\\%03o" : "\\x%02x",
+ "\\%03o" : "\\x%02x",
(unsigned int)*(const unsigned char *)s);
}
}
CURLcode tool_setopt_enum(CURL *curl, const char *name, CURLoption tag,
const struct NameValue *nvlist, long lval)
{
- CURLcode ret = CURLE_OK;
+ CURLcode result = CURLE_OK;
bool skip = FALSE;
- ret = curl_easy_setopt(curl, tag, lval);
+ result = curl_easy_setopt(curl, tag, lval);
if(!lval)
skip = TRUE;
- if(global->libcurl && !skip && !ret) {
+ if(global->libcurl && !skip && !result) {
/* we only use this for real if --libcurl was used */
const struct NameValue *nv = NULL;
for(nv = nvlist; nv->name; nv++) {
/* If no definition was found, output an explicit value.
* This could happen if new values are defined and used
* but the NameValue list is not updated. */
- ret = easysrc_addf(&easysrc_code, "curl_easy_setopt(hnd, %s, %ldL);",
- name, lval);
- }
- else {
- ret = easysrc_addf(&easysrc_code, "curl_easy_setopt(hnd, %s, (long)%s);",
- name, nv->name);
+ result = easysrc_addf(&easysrc_code, "curl_easy_setopt(hnd, %s, %ldL);",
+ name, lval);
}
+ else
+ result =
+ easysrc_addf(&easysrc_code, "curl_easy_setopt(hnd, %s, (long)%s);",
+ name, nv->name);
}
#ifdef DEBUGBUILD
- if(ret)
- warnf("option %s returned error (%d)", name, (int)ret);
+ if(result)
+ warnf("option %s returned error (%d)", name, (int)result);
#endif
- return ret;
+ return result;
}
/* setopt wrapper for CURLOPT_SSLVERSION */
CURLcode tool_setopt_SSLVERSION(CURL *curl, const char *name, CURLoption tag,
long lval)
{
- CURLcode ret = CURLE_OK;
+ CURLcode result = CURLE_OK;
bool skip = FALSE;
- ret = curl_easy_setopt(curl, tag, lval);
+ result = curl_easy_setopt(curl, tag, lval);
if(!lval)
skip = TRUE;
- if(global->libcurl && !skip && !ret) {
+ if(global->libcurl && !skip && !result) {
/* we only use this for real if --libcurl was used */
const struct NameValue *nv = NULL;
const struct NameValue *nv2 = NULL;
/* If no definition was found, output an explicit value.
* This could happen if new values are defined and used
* but the NameValue list is not updated. */
- ret = easysrc_addf(&easysrc_code, "curl_easy_setopt(hnd, %s, %ldL);",
- name, lval);
+ result = easysrc_addf(&easysrc_code, "curl_easy_setopt(hnd, %s, %ldL);",
+ name, lval);
}
else {
if(nv2->name && *nv2->name)
/* if max is set */
- ret = easysrc_addf(&easysrc_code,
- "curl_easy_setopt(hnd, %s, (long)(%s | %s));",
- name, nv->name, nv2->name);
+ result = easysrc_addf(&easysrc_code,
+ "curl_easy_setopt(hnd, %s, (long)(%s | %s));",
+ name, nv->name, nv2->name);
else
/* without a max */
- ret = easysrc_addf(&easysrc_code,
- "curl_easy_setopt(hnd, %s, (long)%s);",
- name, nv->name);
+ result = easysrc_addf(&easysrc_code,
+ "curl_easy_setopt(hnd, %s, (long)%s);",
+ name, nv->name);
}
}
#ifdef DEBUGBUILD
- if(ret)
- warnf("option %s returned error (%d)", name, (int)ret);
+ if(result)
+ warnf("option %s returned error (%d)", name, (int)result);
#endif
- return ret;
+ return result;
}
/* setopt wrapper for bitmasks */
long lval)
{
bool skip = FALSE;
- CURLcode ret = curl_easy_setopt(curl, tag, lval);
+ CURLcode result = curl_easy_setopt(curl, tag, lval);
if(!lval)
skip = TRUE;
- if(global->libcurl && !skip && !ret) {
+ if(global->libcurl && !skip && !result) {
/* we only use this for real if --libcurl was used */
char preamble[80];
unsigned long rest = (unsigned long)lval;
if((nv->value & ~rest) == 0) {
/* all value flags contained in rest */
rest &= ~nv->value; /* remove bits handled here */
- ret = easysrc_addf(&easysrc_code, "%s(long)%s%s",
+ result = easysrc_addf(&easysrc_code, "%s(long)%s%s",
preamble, nv->name, rest ? " |" : ");");
- if(!rest || ret)
+ if(!rest || result)
break; /* handled them all */
/* replace with all spaces for continuation line */
curl_msnprintf(preamble, sizeof(preamble), "%*s",
/* If any bits have no definition, output an explicit value.
* This could happen if new bits are defined and used
* but the NameValue list is not updated. */
- if(rest && !ret)
- ret = easysrc_addf(&easysrc_code, "%s%luUL);", preamble, rest);
+ if(rest && !result)
+ result = easysrc_addf(&easysrc_code, "%s%luUL);", preamble, rest);
}
- return ret;
+ return result;
}
/* Generate code for a struct curl_slist. */
static CURLcode libcurl_generate_slist(struct curl_slist *slist, int *slistno)
{
- CURLcode ret = CURLE_OK;
+ CURLcode result = CURLE_OK;
/* May need several slist variables, so invent name */
*slistno = ++easysrc_slist_count;
- ret = easysrc_addf(&easysrc_decl, "struct curl_slist *slist%d;", *slistno);
- if(!ret)
- ret = easysrc_addf(&easysrc_data, "slist%d = NULL;", *slistno);
- if(!ret)
- ret = easysrc_addf(&easysrc_clean, "curl_slist_free_all(slist%d);",
- *slistno);
- if(!ret)
- ret = easysrc_addf(&easysrc_clean, "slist%d = NULL;", *slistno);
- if(ret)
- return ret;
- for(; slist && !ret; slist = slist->next) {
+ result = easysrc_addf(&easysrc_decl, "struct curl_slist *slist%d;",
+ *slistno);
+ if(!result)
+ result = easysrc_addf(&easysrc_data, "slist%d = NULL;", *slistno);
+ if(!result)
+ result = easysrc_addf(&easysrc_clean, "curl_slist_free_all(slist%d);",
+ *slistno);
+ if(!result)
+ result = easysrc_addf(&easysrc_clean, "slist%d = NULL;", *slistno);
+ if(result)
+ return result;
+ for(; slist && !result; slist = slist->next) {
char *escaped = c_escape(slist->data, ZERO_TERMINATED);
if(!escaped)
return CURLE_OUT_OF_MEMORY;
- ret = easysrc_addf(&easysrc_data,
- "slist%d = curl_slist_append(slist%d, \"%s\");",
- *slistno, *slistno, escaped);
+ result = easysrc_addf(&easysrc_data,
+ "slist%d = curl_slist_append(slist%d, \"%s\");",
+ *slistno, *slistno, escaped);
curlx_free(escaped);
}
- return ret;
+ return result;
}
static CURLcode libcurl_generate_mime(CURL *curl,
struct tool_mime *part,
int mimeno)
{
- CURLcode ret = CURLE_OK;
+ CURLcode result = CURLE_OK;
int submimeno = 0;
const char *data = NULL;
const char *filename = part->filename;
/* Parts are linked in reverse order. */
if(part->prev)
- ret = libcurl_generate_mime_part(curl, config, part->prev, mimeno);
+ result = libcurl_generate_mime_part(curl, config, part->prev, mimeno);
/* Create the part. */
- if(!ret)
- ret = easysrc_addf(&easysrc_code, "part%d = curl_mime_addpart(mime%d);",
- mimeno, mimeno);
- if(ret)
- return ret;
+ if(!result)
+ result = easysrc_addf(&easysrc_code, "part%d = curl_mime_addpart(mime%d);",
+ mimeno, mimeno);
+ if(result)
+ return result;
switch(part->kind) {
case TOOLMIME_PARTS:
- ret = libcurl_generate_mime(curl, config, part, &submimeno);
- if(!ret) {
- ret = easysrc_addf(&easysrc_code, "curl_mime_subparts(part%d, mime%d);",
- mimeno, submimeno);
- if(!ret)
+ result = libcurl_generate_mime(curl, config, part, &submimeno);
+ if(!result) {
+ result =
+ easysrc_addf(&easysrc_code, "curl_mime_subparts(part%d, mime%d);",
+ mimeno, submimeno);
+ if(!result)
/* Avoid freeing in CLEAN. */
- ret = easysrc_addf(&easysrc_code, "mime%d = NULL;", submimeno);
+ result = easysrc_addf(&easysrc_code, "mime%d = NULL;", submimeno);
}
break;
case TOOLMIME_DATA:
data = part->data;
- if(!ret) {
+ if(!result) {
char *escaped = c_escape(data, ZERO_TERMINATED);
- ret =
+ result =
easysrc_addf(&easysrc_code,
"curl_mime_data(part%d, \"%s\", CURL_ZERO_TERMINATED);",
mimeno, escaped);
case TOOLMIME_FILE:
case TOOLMIME_FILEDATA: {
char *escaped = c_escape(part->data, ZERO_TERMINATED);
- ret = easysrc_addf(&easysrc_code,
- "curl_mime_filedata(part%d, \"%s\");", mimeno, escaped);
- if(part->kind == TOOLMIME_FILEDATA && !filename && !ret) {
- ret = easysrc_addf(&easysrc_code,
- "curl_mime_filename(part%d, NULL);", mimeno);
+ result =
+ easysrc_addf(&easysrc_code,
+ "curl_mime_filedata(part%d, \"%s\");", mimeno, escaped);
+ if(part->kind == TOOLMIME_FILEDATA && !filename && !result) {
+ result = easysrc_addf(&easysrc_code,
+ "curl_mime_filename(part%d, NULL);", mimeno);
}
curlx_free(escaped);
break;
FALLTHROUGH();
case TOOLMIME_STDINDATA:
/* Can only be reading stdin in the current context. */
- ret = easysrc_addf(&easysrc_code, "curl_mime_data_cb(part%d, -1, "
- "(curl_read_callback) fread, \\", mimeno);
- if(!ret)
- ret = easysrc_addf(&easysrc_code, " "
- "(curl_seek_callback) fseek, NULL, stdin);");
+ result = easysrc_addf(&easysrc_code, "curl_mime_data_cb(part%d, -1, "
+ "(curl_read_callback) fread, \\", mimeno);
+ if(!result)
+ result = easysrc_addf(&easysrc_code, " "
+ "(curl_seek_callback) fseek, NULL, stdin);");
break;
default:
/* Other cases not possible in this context. */
break;
}
- if(!ret && part->encoder) {
+ if(!result && part->encoder) {
char *escaped = c_escape(part->encoder, ZERO_TERMINATED);
- ret = easysrc_addf(&easysrc_code, "curl_mime_encoder(part%d, \"%s\");",
- mimeno, escaped);
+ result = easysrc_addf(&easysrc_code, "curl_mime_encoder(part%d, \"%s\");",
+ mimeno, escaped);
curlx_free(escaped);
}
- if(!ret && filename) {
+ if(!result && filename) {
char *escaped = c_escape(filename, ZERO_TERMINATED);
- ret = easysrc_addf(&easysrc_code, "curl_mime_filename(part%d, \"%s\");",
- mimeno, escaped);
+ result = easysrc_addf(&easysrc_code, "curl_mime_filename(part%d, \"%s\");",
+ mimeno, escaped);
curlx_free(escaped);
}
- if(!ret && part->name) {
+ if(!result && part->name) {
char *escaped = c_escape(part->name, ZERO_TERMINATED);
- ret = easysrc_addf(&easysrc_code, "curl_mime_name(part%d, \"%s\");",
- mimeno, escaped);
+ result = easysrc_addf(&easysrc_code, "curl_mime_name(part%d, \"%s\");",
+ mimeno, escaped);
curlx_free(escaped);
}
- if(!ret && part->type) {
+ if(!result && part->type) {
char *escaped = c_escape(part->type, ZERO_TERMINATED);
- ret = easysrc_addf(&easysrc_code, "curl_mime_type(part%d, \"%s\");",
- mimeno, escaped);
+ result = easysrc_addf(&easysrc_code, "curl_mime_type(part%d, \"%s\");",
+ mimeno, escaped);
curlx_free(escaped);
}
- if(!ret && part->headers) {
+ if(!result && part->headers) {
int slistno;
- ret = libcurl_generate_slist(part->headers, &slistno);
- if(!ret) {
- ret = easysrc_addf(&easysrc_code,
- "curl_mime_headers(part%d, slist%d, 1);",
- mimeno, slistno);
- if(!ret)
- ret = easysrc_addf(&easysrc_code, "slist%d = NULL;", slistno);
+ result = libcurl_generate_slist(part->headers, &slistno);
+ if(!result) {
+ result = easysrc_addf(&easysrc_code,
+ "curl_mime_headers(part%d, slist%d, 1);",
+ mimeno, slistno);
+ if(!result)
+ result = easysrc_addf(&easysrc_code, "slist%d = NULL;", slistno);
}
}
- return ret;
+ return result;
}
/* Wrapper to generate source code for a mime structure. */
struct tool_mime *toolmime,
int *mimeno)
{
- CURLcode ret = CURLE_OK;
+ CURLcode result = CURLE_OK;
/* May need several mime variables, so invent name. */
*mimeno = ++easysrc_mime_count;
- ret = easysrc_addf(&easysrc_decl, "curl_mime *mime%d;", *mimeno);
- if(!ret)
- ret = easysrc_addf(&easysrc_data, "mime%d = NULL;", *mimeno);
- if(!ret)
- ret = easysrc_addf(&easysrc_code, "mime%d = curl_mime_init(hnd);",
- *mimeno);
- if(!ret)
- ret = easysrc_addf(&easysrc_clean, "curl_mime_free(mime%d);", *mimeno);
- if(!ret)
- ret = easysrc_addf(&easysrc_clean, "mime%d = NULL;", *mimeno);
-
- if(toolmime->subparts && !ret) {
- ret = easysrc_addf(&easysrc_decl, "curl_mimepart *part%d;", *mimeno);
- if(!ret)
- ret = libcurl_generate_mime_part(curl, config,
- toolmime->subparts, *mimeno);
+ result = easysrc_addf(&easysrc_decl, "curl_mime *mime%d;", *mimeno);
+ if(!result)
+ result = easysrc_addf(&easysrc_data, "mime%d = NULL;", *mimeno);
+ if(!result)
+ result = easysrc_addf(&easysrc_code, "mime%d = curl_mime_init(hnd);",
+ *mimeno);
+ if(!result)
+ result = easysrc_addf(&easysrc_clean, "curl_mime_free(mime%d);", *mimeno);
+ if(!result)
+ result = easysrc_addf(&easysrc_clean, "mime%d = NULL;", *mimeno);
+
+ if(toolmime->subparts && !result) {
+ result = easysrc_addf(&easysrc_decl, "curl_mimepart *part%d;", *mimeno);
+ if(!result)
+ result = libcurl_generate_mime_part(curl, config,
+ toolmime->subparts, *mimeno);
}
- return ret;
+ return result;
}
/* setopt wrapper for CURLOPT_MIMEPOST */
const char *name, CURLoption tag,
curl_mime *mimepost)
{
- CURLcode ret = curl_easy_setopt(curl, tag, mimepost);
+ CURLcode result = curl_easy_setopt(curl, tag, mimepost);
int mimeno = 0;
- if(!ret && global->libcurl) {
- ret = libcurl_generate_mime(curl, config, config->mimeroot, &mimeno);
+ if(!result && global->libcurl) {
+ result = libcurl_generate_mime(curl, config, config->mimeroot, &mimeno);
- if(!ret)
- ret = easysrc_addf(&easysrc_code, "curl_easy_setopt(hnd, %s, mime%d);",
- name, mimeno);
+ if(!result)
+ result =
+ easysrc_addf(&easysrc_code, "curl_easy_setopt(hnd, %s, mime%d);",
+ name, mimeno);
}
- return ret;
+ return result;
}
/* setopt wrapper for curl_slist options */
CURLcode tool_setopt_slist(CURL *curl, const char *name, CURLoption tag,
struct curl_slist *list)
{
- CURLcode ret = CURLE_OK;
+ CURLcode result = CURLE_OK;
- ret = curl_easy_setopt(curl, tag, list);
+ result = curl_easy_setopt(curl, tag, list);
- if(global->libcurl && list && !ret) {
+ if(global->libcurl && list && !result) {
int i;
- ret = libcurl_generate_slist(list, &i);
- if(!ret)
- ret = easysrc_addf(&easysrc_code, "curl_easy_setopt(hnd, %s, slist%d);",
- name, i);
+ result = libcurl_generate_slist(list, &i);
+ if(!result)
+ result =
+ easysrc_addf(&easysrc_code, "curl_easy_setopt(hnd, %s, slist%d);",
+ name, i);
}
- return ret;
+ return result;
}
/* options that set long */
{
long defval = 0L;
const struct NameValue *nv = NULL;
- CURLcode ret = CURLE_OK;
+ CURLcode result = CURLE_OK;
DEBUGASSERT(tag < CURLOPTTYPE_OBJECTPOINT);
for(nv = setopt_nv_CURLNONZERODEFAULTS; nv->name; nv++) {
}
}
- ret = curl_easy_setopt(curl, tag, lval);
- if((lval != defval) && global->libcurl && !ret) {
+ result = curl_easy_setopt(curl, tag, lval);
+ if((lval != defval) && global->libcurl && !result) {
/* we only use this for real if --libcurl was used */
- ret = easysrc_addf(&easysrc_code, "curl_easy_setopt(hnd, %s, %ldL);",
- name, lval);
+ result = easysrc_addf(&easysrc_code, "curl_easy_setopt(hnd, %s, %ldL);",
+ name, lval);
}
- return ret;
+ return result;
}
/* options that set curl_off_t */
CURLcode tool_setopt_offt(CURL *curl, const char *name, CURLoption tag,
curl_off_t lval)
{
- CURLcode ret = CURLE_OK;
+ CURLcode result = CURLE_OK;
DEBUGASSERT((tag >= CURLOPTTYPE_OFF_T) && (tag < CURLOPTTYPE_BLOB));
- ret = curl_easy_setopt(curl, tag, lval);
- if(global->libcurl && !ret && lval) {
+ result = curl_easy_setopt(curl, tag, lval);
+ if(global->libcurl && !result && lval) {
/* we only use this for real if --libcurl was used */
- ret = easysrc_addf(&easysrc_code, "curl_easy_setopt(hnd, %s, (curl_off_t)%"
- CURL_FORMAT_CURL_OFF_T ");", name, lval);
+ result =
+ easysrc_addf(&easysrc_code, "curl_easy_setopt(hnd, %s, (curl_off_t)%"
+ CURL_FORMAT_CURL_OFF_T ");", name, lval);
}
- return ret;
+ return result;
}
/* setopt wrapper for setting object and function pointers */