diff options
author | Yang Tse <yangsita@gmail.com> | 2011-09-17 14:09:36 +0200 |
---|---|---|
committer | Yang Tse <yangsita@gmail.com> | 2011-09-18 01:59:21 +0200 |
commit | f50d4647d0f4e34f74b48dfc05e60739e737b890 (patch) | |
tree | 8a34e7db94cfddd6cdc507dc0c99205c5128b89c /src/tool_cfgable.c | |
parent | 805b4740c7113c73cc3efc81c2baa79dfcdd9215 (diff) |
curl tool: reorder free_config_fields() field handling
Reorder handling of fields to match same order as the one given by current
definition order of 'Configurable' struct fields. Fields currently not handled
marked for further inspection.
Diffstat (limited to 'src/tool_cfgable.c')
-rw-r--r-- | src/tool_cfgable.c | 107 |
1 files changed, 67 insertions, 40 deletions
diff --git a/src/tool_cfgable.c b/src/tool_cfgable.c index a666951ec..c2cfac673 100644 --- a/src/tool_cfgable.c +++ b/src/tool_cfgable.c @@ -27,72 +27,99 @@ #include "memdebug.h" /* keep this as LAST include */ -/* TODO: review that all dinamically allocated fields are free'd */ +/* TODO: review handling of unhandled fields marked below */ void free_config_fields(struct Configurable *config) { + if(config->easy) { + curl_easy_cleanup(config->easy); + config->easy = NULL; + } + Curl_safefree(config->random_file); Curl_safefree(config->egd_file); - Curl_safefree(config->trace_dump); - Curl_safefree(config->cipher_list); - Curl_safefree(config->userpwd); - Curl_safefree(config->postfields); - Curl_safefree(config->proxy); - Curl_safefree(config->proxyuserpwd); - Curl_safefree(config->noproxy); + + /* config->useragent not handled */ + Curl_safefree(config->cookie); + Curl_safefree(config->cookiejar); Curl_safefree(config->cookiefile); - Curl_safefree(config->krblevel); + + Curl_safefree(config->postfields); + Curl_safefree(config->referer); + Curl_safefree(config->headerfile); Curl_safefree(config->ftpport); + Curl_safefree(config->iface); + Curl_safefree(config->range); - Curl_safefree(config->customrequest); - Curl_safefree(config->writeout); - if(config->httppost) { - curl_formfree(config->httppost); - config->httppost = NULL; - } + Curl_safefree(config->userpwd); + Curl_safefree(config->tls_username); + Curl_safefree(config->tls_password); + Curl_safefree(config->tls_authtype); + Curl_safefree(config->proxyuserpwd); + Curl_safefree(config->proxy); + + Curl_safefree(config->noproxy); + Curl_safefree(config->mail_from); + curl_slist_free_all(config->mail_rcpt); Curl_safefree(config->netrc_file); + + /* config->url_list not handled */ + /* config->url_last not handled */ + /* config->url_get not handled */ + /* config->url_out not handled */ + + Curl_safefree(config->cipher_list); Curl_safefree(config->cert); - Curl_safefree(config->cacert); Curl_safefree(config->cert_type); + Curl_safefree(config->cacert); Curl_safefree(config->capath); Curl_safefree(config->crlfile); - Curl_safefree(config->cookiejar); - Curl_safefree(config->ftp_account); - Curl_safefree(config->ftp_alternative_to_user); - Curl_safefree(config->iface); - Curl_safefree(config->socksproxy); - Curl_safefree(config->libcurl); - Curl_safefree(config->key_passwd); Curl_safefree(config->key); Curl_safefree(config->key_type); + Curl_safefree(config->key_passwd); Curl_safefree(config->pubkey); - Curl_safefree(config->referer); Curl_safefree(config->hostpubmd5); - Curl_safefree(config->mail_from); -#ifdef USE_TLS_SRP - Curl_safefree(config->tls_authtype); - Curl_safefree(config->tls_username); - Curl_safefree(config->tls_password); -#endif -#if defined(HAVE_GSSAPI) || defined(USE_WINDOWS_SSPI) - Curl_safefree(config->socks5_gssapi_service); -#endif + /* config->engine not handled */ - curl_slist_free_all(config->quote); /* checks for config->quote == NULL */ - curl_slist_free_all(config->prequote); + Curl_safefree(config->customrequest); + Curl_safefree(config->krblevel); + Curl_safefree(config->trace_dump); + + /* config->trace_stream not handled */ + + Curl_safefree(config->writeout); + + /* config->errors not handled */ + + curl_slist_free_all(config->quote); curl_slist_free_all(config->postquote); + curl_slist_free_all(config->prequote); + curl_slist_free_all(config->headers); + + if(config->httppost) { + curl_formfree(config->httppost); + config->httppost = NULL; + } + + /* config->last_post not handled */ + curl_slist_free_all(config->telnet_options); - curl_slist_free_all(config->mail_rcpt); curl_slist_free_all(config->resolve); - if(config->easy) { - curl_easy_cleanup(config->easy); - config->easy = NULL; - } + Curl_safefree(config->socksproxy); + Curl_safefree(config->socks5_gssapi_service); + + Curl_safefree(config->ftp_account); + Curl_safefree(config->ftp_alternative_to_user); + + Curl_safefree(config->libcurl); + + /* config->outs not handled */ + } |