From ddfe821bcf9522247cd057b12b8a1b0af01f2d37 Mon Sep 17 00:00:00 2001 From: Dave Reisner Date: Sun, 4 Mar 2012 23:07:03 +0000 Subject: curl tool: add filename_effective token for --write-out By modifying the parameter list for ourWriteOut() and passing the OutStruct that collects data in tool_operate, we get access to the remote name that we're writing to. Shell scripters should find this useful when used in conjuntion with the --remote-header-name option. --- src/tool_writeout.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'src/tool_writeout.c') diff --git a/src/tool_writeout.c b/src/tool_writeout.c index 1ea1c9881..361f3657e 100644 --- a/src/tool_writeout.c +++ b/src/tool_writeout.c @@ -26,6 +26,7 @@ #define _MPRINTF_REPLACE /* we want curl-functions instead of native ones */ #include +#include "tool_cfgable.h" #include "tool_writeout.h" #include "memdebug.h" /* keep this as LAST include */ @@ -54,6 +55,7 @@ typedef enum { VAR_FTP_ENTRY_PATH, VAR_REDIRECT_URL, VAR_SSL_VERIFY_RESULT, + VAR_EFFECTIVE_FILENAME, VAR_NUM_OF_VARS /* must be the last */ } replaceid; @@ -87,10 +89,11 @@ static const struct variable replacements[]={ {"ftp_entry_path", VAR_FTP_ENTRY_PATH}, {"redirect_url", VAR_REDIRECT_URL}, {"ssl_verify_result", VAR_SSL_VERIFY_RESULT}, + {"filename_effective", VAR_EFFECTIVE_FILENAME}, {NULL, VAR_NONE} }; -void ourWriteOut(CURL *curl, const char *writeinfo) +void ourWriteOut(CURL *curl, struct OutStruct *outs, const char *writeinfo) { FILE *stream = stdout; const char *ptr = writeinfo; @@ -242,6 +245,10 @@ void ourWriteOut(CURL *curl, const char *writeinfo) &longinfo)) fprintf(stream, "%ld", longinfo); break; + case VAR_EFFECTIVE_FILENAME: + if(outs->filename) + fprintf(stream, "%s", outs->filename); + break; default: break; } -- cgit v1.2.3