summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Grothoff <christian@grothoff.org>2015-07-13 23:51:15 +0200
committerChristian Grothoff <christian@grothoff.org>2015-07-13 23:51:15 +0200
commitf90a745abe0223d591567197983ddf60fcf70f59 (patch)
treed4653668a123a4aa5cbb20a55b8f7e2ec0fd9637
parent6582e07c476f028eaf27d964efd90e22609ffb2a (diff)
downloadexchange-f90a745abe0223d591567197983ddf60fcf70f59.tar.gz
exchange-f90a745abe0223d591567197983ddf60fcf70f59.tar.bz2
exchange-f90a745abe0223d591567197983ddf60fcf70f59.zip
add -t option to httpd
-rw-r--r--doc/taler-mint-httpd.13
-rw-r--r--src/mint/taler-mint-httpd.c9
-rw-r--r--src/mintdb/plugin_mintdb_postgres.c2
3 files changed, 14 insertions, 0 deletions
diff --git a/doc/taler-mint-httpd.1 b/doc/taler-mint-httpd.1
index 43587006e..9ff9774c4 100644
--- a/doc/taler-mint-httpd.1
+++ b/doc/taler-mint-httpd.1
@@ -25,6 +25,9 @@ Print version information.
.IP "\-f FILENAME, \-\-file\-input=FILENAME"
This option is only available if the mint was compiled with the configure option
\-\-enable\-developer\-mode. It is used for generating test cases against the mint using AFL. When this option is present, the HTTP server will (1) terminate after the first client's HTTP connection is completed, and (2) automatically start such a client using a helper process based on the 'nc' or 'ncat' binary using FILENAME as the standard input to the helper process. As a result, the process will effectively run with FILENAME as the input from an HTTP client and then immediately exit. This is useful to test taler\-mint\-httpd against many different possible inputs in a controlled way.
+.B
+.IP \"-t SECONDS, \-\-timeout=SECONDS"
+Specifies the number of SECONDS after which the HTTPD should close (idle) HTTP connections.
.SH BUGS
Report bugs by using Mantis <https://gnunet.org/bugs/> or by sending electronic mail to <taler@gnu.org>
diff --git a/src/mint/taler-mint-httpd.c b/src/mint/taler-mint-httpd.c
index 14fde3ac7..cf825e6b1 100644
--- a/src/mint/taler-mint-httpd.c
+++ b/src/mint/taler-mint-httpd.c
@@ -75,6 +75,11 @@ struct TALER_MINTDB_Plugin *TMH_plugin;
int TMH_test_mode;
/**
+ * Default timeout in seconds for HTTP requests.
+ */
+static unsigned int connection_timeout = 30;
+
+/**
* The HTTP Daemon.
*/
static struct MHD_Daemon *mydaemon;
@@ -552,6 +557,9 @@ main (int argc,
{'d', "mint-dir", "DIR",
"mint directory with configuration and keys for operating the mint", 1,
&GNUNET_GETOPT_set_filename, &TMH_mint_directory},
+ {'t', "timeout", "SECONDS",
+ "after how long do connections timeout by default (in seconds)", 1,
+ &GNUNET_GETOPT_set_uint, &connection_timeout},
#if HAVE_DEVELOPER
{'f', "file-input", "FILENAME",
"run in test-mode using FILENAME as the HTTP request to process", 1,
@@ -588,6 +596,7 @@ main (int argc,
NULL, NULL,
&handle_mhd_request, NULL,
MHD_OPTION_NOTIFY_COMPLETED, &handle_mhd_completion_callback, NULL,
+ MHD_OPTION_CONNECTION_TIMEOUT, connection_timeout,
#if HAVE_DEVELOPER
MHD_OPTION_NOTIFY_CONNECTION, &connection_done, NULL,
#endif
diff --git a/src/mintdb/plugin_mintdb_postgres.c b/src/mintdb/plugin_mintdb_postgres.c
index 8737809bc..ac0fcb7ea 100644
--- a/src/mintdb/plugin_mintdb_postgres.c
+++ b/src/mintdb/plugin_mintdb_postgres.c
@@ -166,6 +166,8 @@ static int
postgres_drop_temporary (void *cls,
struct TALER_MINTDB_Session *session)
{
+ GNUNET_log (GNUNET_ERROR_TYPE_WARNING,
+ "Dropping temporary tables\n");
SQLEXEC_ (session->conn,
"DROP SCHEMA " TALER_TEMP_SCHEMA_NAME " CASCADE;");
return GNUNET_OK;