diff options
author | Frank Gevaerts <frank@gevaerts.be> | 2016-11-23 10:44:18 +0100 |
---|---|---|
committer | Daniel Stenberg <daniel@haxx.se> | 2016-11-25 00:45:18 +0100 |
commit | ba410f6c64af26292d1dc549829c25af5602fbf7 (patch) | |
tree | c48cefe5f5626983fab185baeec1970a6c53f45f /src | |
parent | 54789f94448e1a624f02cb4e4e739afe4a687656 (diff) |
add CURLINFO_SCHEME, CURLINFO_PROTOCOL, and %{scheme}
Adds access to the effectively used protocol/scheme to both libcurl and
curl, both in string and numeric (CURLPROTO_*) form.
Note that the string form will be uppercase, as it is just the internal
string.
As these strings are declared internally as const, and all other strings
returned by curl_easy_getinfo() are de-facto const as well, string
handling in getinfo.c got const-ified.
Closes #1137
Diffstat (limited to 'src')
-rw-r--r-- | src/tool_writeout.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/tool_writeout.c b/src/tool_writeout.c index dfe86471e..3737df801 100644 --- a/src/tool_writeout.c +++ b/src/tool_writeout.c @@ -59,6 +59,7 @@ typedef enum { VAR_LOCAL_IP, VAR_LOCAL_PORT, VAR_HTTP_VERSION, + VAR_SCHEME, VAR_NUM_OF_VARS /* must be the last */ } replaceid; @@ -99,6 +100,7 @@ static const struct variable replacements[]={ {"local_ip", VAR_LOCAL_IP}, {"local_port", VAR_LOCAL_PORT}, {"http_version", VAR_HTTP_VERSION}, + {"scheme", VAR_SCHEME}, {NULL, VAR_NONE} }; @@ -308,6 +310,12 @@ void ourWriteOut(CURL *curl, struct OutStruct *outs, const char *writeinfo) fprintf(stream, version); } break; + case VAR_SCHEME: + if(CURLE_OK == + curl_easy_getinfo(curl, CURLINFO_SCHEME, + &stringp)) + fprintf(stream, "%s", stringp); + break; default: break; } |