mirror of https://github.com/moparisthebest/curl
curl: remove tool_writeenv.[ch]
... and USE_ENVIRONMENT and --environment. It was once added for RISC OS
support and its platform specific behavior has been annoying ever
since. Added in commit c3c8bbd3b2
, mostly unchanged since
then. Most probably not actually used for years.
Closes #1463
This commit is contained in:
parent
ba5fa1c7a8
commit
a8e388dd10
|
@ -7,7 +7,7 @@ DPAGES = abstract-unix-socket.d anyauth.d append.d basic.d cacert.d capath.d cer
|
||||||
data-raw.d data-urlencode.d delegation.d digest.d disable.d \
|
data-raw.d data-urlencode.d delegation.d digest.d disable.d \
|
||||||
disable-eprt.d disable-epsv.d dns-interface.d dns-ipv4-addr.d \
|
disable-eprt.d disable-epsv.d dns-interface.d dns-ipv4-addr.d \
|
||||||
dns-ipv6-addr.d dns-servers.d dump-header.d egd-file.d engine.d \
|
dns-ipv6-addr.d dns-servers.d dump-header.d egd-file.d engine.d \
|
||||||
environment.d expect100-timeout.d fail.d fail-early.d false-start.d \
|
expect100-timeout.d fail.d fail-early.d false-start.d \
|
||||||
form.d form-string.d ftp-account.d ftp-alternative-to-user.d \
|
form.d form-string.d ftp-account.d ftp-alternative-to-user.d \
|
||||||
ftp-create-dirs.d ftp-method.d ftp-pasv.d ftp-port.d ftp-pret.d \
|
ftp-create-dirs.d ftp-method.d ftp-pasv.d ftp-port.d ftp-pret.d \
|
||||||
ftp-skip-pasv-ip.d ftp-ssl-ccc.d ftp-ssl-ccc-mode.d ftp-ssl-control.d \
|
ftp-skip-pasv-ip.d ftp-ssl-ccc.d ftp-ssl-ccc-mode.d ftp-ssl-control.d \
|
||||||
|
|
|
@ -1,7 +0,0 @@
|
||||||
Long: environment
|
|
||||||
Help: Write results to environment variables
|
|
||||||
Requires: RISC OS
|
|
||||||
---
|
|
||||||
Sets a range of environment variables, using the names the --write-out option
|
|
||||||
supports, to allow easier extraction of useful information after having run
|
|
||||||
curl.
|
|
|
@ -58,7 +58,6 @@ CURL_CFILES = \
|
||||||
tool_urlglob.c \
|
tool_urlglob.c \
|
||||||
tool_util.c \
|
tool_util.c \
|
||||||
tool_vms.c \
|
tool_vms.c \
|
||||||
tool_writeenv.c \
|
|
||||||
tool_writeout.c \
|
tool_writeout.c \
|
||||||
tool_xattr.c
|
tool_xattr.c
|
||||||
|
|
||||||
|
@ -103,7 +102,6 @@ CURL_HFILES = \
|
||||||
tool_util.h \
|
tool_util.h \
|
||||||
tool_version.h \
|
tool_version.h \
|
||||||
tool_vms.h \
|
tool_vms.h \
|
||||||
tool_writeenv.h \
|
|
||||||
tool_writeout.h \
|
tool_writeout.h \
|
||||||
tool_xattr.h
|
tool_xattr.h
|
||||||
|
|
||||||
|
|
|
@ -53,8 +53,6 @@ endif
|
||||||
|
|
||||||
EX_LIBS += $(WATT32_ROOT)/lib/libwatt.a
|
EX_LIBS += $(WATT32_ROOT)/lib/libwatt.a
|
||||||
|
|
||||||
CFLAGS += -DUSE_ENVIRONMENT
|
|
||||||
|
|
||||||
PROGRAM = curl.exe
|
PROGRAM = curl.exe
|
||||||
OBJECTS += $(addprefix $(OBJ_DIR)/, $(CSOURCES:.c=.o))
|
OBJECTS += $(addprefix $(OBJ_DIR)/, $(CSOURCES:.c=.o))
|
||||||
|
|
||||||
|
|
|
@ -7,7 +7,7 @@
|
||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
|
@ -151,7 +151,6 @@ struct OperationConfig {
|
||||||
bool proxybasic;
|
bool proxybasic;
|
||||||
bool proxyanyauth;
|
bool proxyanyauth;
|
||||||
char *writeout; /* %-styled format string to output */
|
char *writeout; /* %-styled format string to output */
|
||||||
bool writeenv; /* write results to environment, if available */
|
|
||||||
struct curl_slist *quote;
|
struct curl_slist *quote;
|
||||||
struct curl_slist *postquote;
|
struct curl_slist *postquote;
|
||||||
struct curl_slist *prequote;
|
struct curl_slist *prequote;
|
||||||
|
|
|
@ -84,9 +84,6 @@ static const struct LongShort aliases[]= {
|
||||||
{"*E", "epsv", ARG_BOOL},
|
{"*E", "epsv", ARG_BOOL},
|
||||||
/* 'epsv' made like this to make --no-epsv and --epsv to work
|
/* 'epsv' made like this to make --no-epsv and --epsv to work
|
||||||
although --disable-epsv is the documented option */
|
although --disable-epsv is the documented option */
|
||||||
#ifdef USE_ENVIRONMENT
|
|
||||||
{"*f", "environment", ARG_BOOL},
|
|
||||||
#endif
|
|
||||||
{"*F", "dns-servers", ARG_STRING},
|
{"*F", "dns-servers", ARG_STRING},
|
||||||
{"*g", "trace", ARG_STRING},
|
{"*g", "trace", ARG_STRING},
|
||||||
{"*G", "npn", ARG_BOOL},
|
{"*G", "npn", ARG_BOOL},
|
||||||
|
@ -562,11 +559,6 @@ ParameterError getparameter(char *flag, /* f or -long-flag */
|
||||||
case 'E': /* --epsv */
|
case 'E': /* --epsv */
|
||||||
config->disable_epsv = (!toggle)?TRUE:FALSE;
|
config->disable_epsv = (!toggle)?TRUE:FALSE;
|
||||||
break;
|
break;
|
||||||
#ifdef USE_ENVIRONMENT
|
|
||||||
case 'f':
|
|
||||||
config->writeenv = toggle;
|
|
||||||
break;
|
|
||||||
#endif
|
|
||||||
case 'F': /* --dns-servers */
|
case 'F': /* --dns-servers */
|
||||||
/* IP addrs of DNS servers */
|
/* IP addrs of DNS servers */
|
||||||
GetStr(&config->dns_servers, nextarg);
|
GetStr(&config->dns_servers, nextarg);
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
|
@ -81,9 +81,6 @@ static const char *const helptext[] = {
|
||||||
" -D, --dump-header FILE Write the received headers to FILE",
|
" -D, --dump-header FILE Write the received headers to FILE",
|
||||||
" --egd-file FILE EGD socket path for random data (SSL)",
|
" --egd-file FILE EGD socket path for random data (SSL)",
|
||||||
" --engine ENGINE Crypto engine (use \"--engine list\" for list) (SSL)",
|
" --engine ENGINE Crypto engine (use \"--engine list\" for list) (SSL)",
|
||||||
#ifdef USE_ENVIRONMENT
|
|
||||||
" --environment Write results to environment variables (RISC OS)",
|
|
||||||
#endif
|
|
||||||
" --expect100-timeout SECONDS How long to wait for 100-continue (H)",
|
" --expect100-timeout SECONDS How long to wait for 100-continue (H)",
|
||||||
" -f, --fail Fail silently (no output at all) on HTTP errors (H)",
|
" -f, --fail Fail silently (no output at all) on HTTP errors (H)",
|
||||||
" --fail-early Fail on first transfer error, do not continue",
|
" --fail-early Fail on first transfer error, do not continue",
|
||||||
|
|
|
@ -71,7 +71,6 @@
|
||||||
#include "tool_sleep.h"
|
#include "tool_sleep.h"
|
||||||
#include "tool_urlglob.h"
|
#include "tool_urlglob.h"
|
||||||
#include "tool_util.h"
|
#include "tool_util.h"
|
||||||
#include "tool_writeenv.h"
|
|
||||||
#include "tool_writeout.h"
|
#include "tool_writeout.h"
|
||||||
#include "tool_xattr.h"
|
#include "tool_xattr.h"
|
||||||
#include "tool_vms.h"
|
#include "tool_vms.h"
|
||||||
|
@ -1748,9 +1747,6 @@ static CURLcode operate_do(struct GlobalConfig *global,
|
||||||
if(config->writeout)
|
if(config->writeout)
|
||||||
ourWriteOut(curl, &outs, config->writeout);
|
ourWriteOut(curl, &outs, config->writeout);
|
||||||
|
|
||||||
if(config->writeenv)
|
|
||||||
ourWriteEnv(curl);
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
** Code within this loop may jump directly here to label 'show_error'
|
** Code within this loop may jump directly here to label 'show_error'
|
||||||
** in order to display an error message for CURLcode stored in 'res'
|
** in order to display an error message for CURLcode stored in 'res'
|
||||||
|
|
|
@ -1,113 +0,0 @@
|
||||||
/***************************************************************************
|
|
||||||
* _ _ ____ _
|
|
||||||
* Project ___| | | | _ \| |
|
|
||||||
* / __| | | | |_) | |
|
|
||||||
* | (__| |_| | _ <| |___
|
|
||||||
* \___|\___/|_| \_\_____|
|
|
||||||
*
|
|
||||||
* Copyright (C) 1998 - 2016, 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 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
|
|
||||||
* furnished to do so, under the terms of the COPYING file.
|
|
||||||
*
|
|
||||||
* This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
|
|
||||||
* KIND, either express or implied.
|
|
||||||
*
|
|
||||||
***************************************************************************/
|
|
||||||
#include "tool_setup.h"
|
|
||||||
|
|
||||||
#ifdef USE_ENVIRONMENT
|
|
||||||
|
|
||||||
#ifdef __riscos__
|
|
||||||
# include <kernel.h>
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#include <curl/mprintf.h>
|
|
||||||
#include "tool_writeenv.h"
|
|
||||||
#include "memdebug.h" /* keep this as LAST include */
|
|
||||||
|
|
||||||
static const struct
|
|
||||||
{
|
|
||||||
const char *name;
|
|
||||||
CURLINFO id;
|
|
||||||
enum {
|
|
||||||
writeenv_NONE,
|
|
||||||
writeenv_DOUBLE,
|
|
||||||
writeenv_LONG,
|
|
||||||
writeenv_STRING
|
|
||||||
} type;
|
|
||||||
} variables[14] =
|
|
||||||
{
|
|
||||||
{"curl_url_effective", CURLINFO_EFFECTIVE_URL, writeenv_STRING},
|
|
||||||
{"curl_http_code", CURLINFO_RESPONSE_CODE, writeenv_LONG},
|
|
||||||
{"curl_time_total", CURLINFO_TOTAL_TIME, writeenv_DOUBLE},
|
|
||||||
{"curl_time_namelookup", CURLINFO_NAMELOOKUP_TIME, writeenv_DOUBLE},
|
|
||||||
{"curl_time_connect", CURLINFO_CONNECT_TIME, writeenv_DOUBLE},
|
|
||||||
{"curl_time_pretransfer", CURLINFO_PRETRANSFER_TIME, writeenv_DOUBLE},
|
|
||||||
{"curl_time_starttransfer", CURLINFO_STARTTRANSFER_TIME, writeenv_DOUBLE},
|
|
||||||
{"curl_size_header", CURLINFO_HEADER_SIZE, writeenv_LONG},
|
|
||||||
{"curl_size_request", CURLINFO_REQUEST_SIZE, writeenv_LONG},
|
|
||||||
{"curl_size_download", CURLINFO_SIZE_DOWNLOAD, writeenv_DOUBLE},
|
|
||||||
{"curl_size_upload", CURLINFO_SIZE_UPLOAD, writeenv_DOUBLE},
|
|
||||||
{"curl_speed_download", CURLINFO_SPEED_DOWNLOAD, writeenv_DOUBLE},
|
|
||||||
{"curl_speed_upload", CURLINFO_SPEED_UPLOAD, writeenv_DOUBLE},
|
|
||||||
{NULL, 0, writeenv_NONE}
|
|
||||||
};
|
|
||||||
|
|
||||||
static void internalSetEnv(const char *name, char *value)
|
|
||||||
{
|
|
||||||
/* Add your OS-specific code here. */
|
|
||||||
#ifdef __riscos__
|
|
||||||
_kernel_setenv(name, value);
|
|
||||||
#elif defined (CURLDEBUG)
|
|
||||||
curl_memlog("ENV %s = %s\n", name, value);
|
|
||||||
#endif
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
void ourWriteEnv(CURL *curl)
|
|
||||||
{
|
|
||||||
unsigned int i;
|
|
||||||
char *string, numtext[10];
|
|
||||||
long longinfo;
|
|
||||||
double doubleinfo;
|
|
||||||
|
|
||||||
for(i=0; variables[i].name; i++) {
|
|
||||||
switch(variables[i].type) {
|
|
||||||
case writeenv_STRING:
|
|
||||||
if(curl_easy_getinfo(curl, variables[i].id, &string) == CURLE_OK)
|
|
||||||
internalSetEnv(variables[i].name, string);
|
|
||||||
else
|
|
||||||
internalSetEnv(variables[i].name, NULL);
|
|
||||||
break;
|
|
||||||
|
|
||||||
case writeenv_LONG:
|
|
||||||
if(curl_easy_getinfo(curl, variables[i].id, &longinfo) == CURLE_OK) {
|
|
||||||
curl_msprintf(numtext, "%5ld", longinfo);
|
|
||||||
internalSetEnv(variables[i].name, numtext);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
internalSetEnv(variables[i].name, NULL);
|
|
||||||
break;
|
|
||||||
case writeenv_DOUBLE:
|
|
||||||
if(curl_easy_getinfo(curl, variables[i].id, &doubleinfo) == CURLE_OK) {
|
|
||||||
curl_msprintf(numtext, "%6.2f", doubleinfo);
|
|
||||||
internalSetEnv(variables[i].name, numtext);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
internalSetEnv(variables[i].name, NULL);
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
#endif
|
|
|
@ -1,35 +0,0 @@
|
||||||
#ifndef HEADER_CURL_TOOL_WRITEENV_H
|
|
||||||
#define HEADER_CURL_TOOL_WRITEENV_H
|
|
||||||
/***************************************************************************
|
|
||||||
* _ _ ____ _
|
|
||||||
* Project ___| | | | _ \| |
|
|
||||||
* / __| | | | |_) | |
|
|
||||||
* | (__| |_| | _ <| |___
|
|
||||||
* \___|\___/|_| \_\_____|
|
|
||||||
*
|
|
||||||
* Copyright (C) 1998 - 2012, 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 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
|
|
||||||
* furnished to do so, under the terms of the COPYING file.
|
|
||||||
*
|
|
||||||
* This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
|
|
||||||
* KIND, either express or implied.
|
|
||||||
*
|
|
||||||
***************************************************************************/
|
|
||||||
#include "tool_setup.h"
|
|
||||||
|
|
||||||
#ifdef USE_ENVIRONMENT
|
|
||||||
|
|
||||||
void ourWriteEnv(CURL *curl);
|
|
||||||
|
|
||||||
#else
|
|
||||||
# define ourWriteEnv(x) Curl_nop_stmt
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#endif /* HEADER_CURL_TOOL_WRITEENV_H */
|
|
||||||
|
|
Loading…
Reference in New Issue