* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2014, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
*
* This software is licensed as described in the file COPYING, which
* you should have received as part of this distribution. The terms
- * are also available at http://curl.haxx.se/docs/copyright.html.
+ * are also available at https://curl.haxx.se/docs/copyright.html.
*
* You may opt to use, copy, modify, merge, publish, distribute and/or sell
* copies of the Software, and permit persons to whom the Software is
return "expected a positive numerical parameter";
case PARAM_LIBCURL_DOESNT_SUPPORT:
return "the installed libcurl version doesn't support this";
+ case PARAM_LIBCURL_UNSUPPORTED_PROTOCOL:
+ return "a specified protocol is unsupported by libcurl";
case PARAM_NO_MEM:
return "out of memory";
default:
int SetHTTPrequest(struct OperationConfig *config, HttpReq req, HttpReq *store)
{
+ /* this mirrors the HttpReq enum in tool_sdecls.h */
+ const char *reqname[]= {
+ "", /* unspec */
+ "GET (-G, --get)",
+ "HEAD (-I, --head)",
+ "multipart formpost (-F, --form)",
+ "POST (-d, --data)"
+ };
+
if((*store == HTTPREQ_UNSPEC) ||
(*store == req)) {
*store = req;
return 0;
}
- warnf(config, "You can only select one HTTP request!\n");
+ warnf(config->global, "You can only select one HTTP request method! "
+ "You asked for both %s and %s.\n",
+ reqname[req], reqname[*store]);
+
return 1;
}
+
+void customrequest_helper(struct OperationConfig *config, HttpReq req,
+ char *method)
+{
+ /* this mirrors the HttpReq enum in tool_sdecls.h */
+ const char *dflt[]= {
+ "GET",
+ "GET",
+ "HEAD",
+ "POST",
+ "POST"
+ };
+
+ if(!method)
+ ;
+ else if(curl_strequal(method, dflt[req])) {
+ notef(config->global, "Unnecessary use of -X or --request, %s is already "
+ "inferred.\n", dflt[req]);
+ }
+ else if(curl_strequal(method, "head")) {
+ warnf(config->global,
+ "Setting custom HTTP method to HEAD with -X/--request may not work "
+ "the way you want. Consider using -I/--head instead.\n");
+ }
+}