summaryrefslogtreecommitdiff
path: root/src/exchange/taler-exchange-httpd.c
diff options
context:
space:
mode:
authorChristian Grothoff <christian@grothoff.org>2020-01-19 22:30:52 +0100
committerChristian Grothoff <christian@grothoff.org>2020-01-19 22:30:52 +0100
commite5b92f8b5effeb0e3c6f42de3776870bfc1bd0b9 (patch)
treee73502304039e080e978b230bcdc957161a93efc /src/exchange/taler-exchange-httpd.c
parente46467510daf1dc55b9d01fcca42eb9912492133 (diff)
downloadexchange-e5b92f8b5effeb0e3c6f42de3776870bfc1bd0b9.tar.gz
exchange-e5b92f8b5effeb0e3c6f42de3776870bfc1bd0b9.tar.bz2
exchange-e5b92f8b5effeb0e3c6f42de3776870bfc1bd0b9.zip
enable stdin for -f
Diffstat (limited to 'src/exchange/taler-exchange-httpd.c')
-rw-r--r--src/exchange/taler-exchange-httpd.c16
1 files changed, 12 insertions, 4 deletions
diff --git a/src/exchange/taler-exchange-httpd.c b/src/exchange/taler-exchange-httpd.c
index 1c9290467..e2d3680c4 100644
--- a/src/exchange/taler-exchange-httpd.c
+++ b/src/exchange/taler-exchange-httpd.c
@@ -632,7 +632,11 @@ run_fake_client ()
int ret;
int status;
- fd = open (input_filename, O_RDONLY);
+ if (0 == strcmp (input_filename,
+ "-"))
+ fd = 0;
+ else
+ fd = open (input_filename, O_RDONLY);
if (-1 == fd)
{
fprintf (stderr,
@@ -672,9 +676,13 @@ run_fake_client ()
_exit (1);
}
/* parent process */
- GNUNET_break (0 == close (fd));
+ if (0 != strcmp (input_filename,
+ "-"))
+ GNUNET_break (0 == close (fd));
ret = TEH_KS_loop ();
- if (cld != waitpid (cld, &status, 0))
+ if (cld != waitpid (cld,
+ &status,
+ 0))
fprintf (stderr,
"Waiting for `nc' child failed: %s\n",
strerror (errno));
@@ -802,7 +810,7 @@ main (int argc,
GNUNET_GETOPT_option_filename ('f',
"file-input",
"FILENAME",
- "run in test-mode using FILENAME as the HTTP request to process",
+ "run in test-mode using FILENAME as the HTTP request to process, use '-' to read from stdin",
&input_filename),
#endif
GNUNET_GETOPT_option_help (