diff options
Diffstat (limited to 'src/auditor')
-rw-r--r-- | src/auditor/auditor.conf | 13 | ||||
-rw-r--r-- | src/auditor/taler-auditor-exchange.c | 39 | ||||
-rw-r--r-- | src/auditor/taler-auditor-sign.c | 2 |
3 files changed, 46 insertions, 8 deletions
diff --git a/src/auditor/auditor.conf b/src/auditor/auditor.conf index 22395cc6e..c3b9a00c6 100644 --- a/src/auditor/auditor.conf +++ b/src/auditor/auditor.conf @@ -10,3 +10,16 @@ AUDITOR_PRIV_FILE = ${TALER_DATA_HOME}/auditor/offline-keys/auditor.priv # What is the Web site of the auditor (i.e. to file complaints about # a misbehaving exchange)? # AUDITOR_URL = https://auditor.taler.net/ + + +# Network configuration for the normal API/service HTTP server +# serve via tcp socket (on PORT) +SERVE = tcp + +# Unix domain socket to listen on, +# only effective with "SERVE = unix" +UNIXPATH = ${TALER_RUNTIME_DIR}/exchange.http +UNIXPATH_MODE = 660 + +# HTTP port the auditor listens to +PORT = 8082 diff --git a/src/auditor/taler-auditor-exchange.c b/src/auditor/taler-auditor-exchange.c index b316f6026..64e12d0bb 100644 --- a/src/auditor/taler-auditor-exchange.c +++ b/src/auditor/taler-auditor-exchange.c @@ -73,12 +73,11 @@ main (int argc, "KEY", "public key of the exchange (Crockford base32 encoded)", &master_public_key)), - GNUNET_GETOPT_option_mandatory - (GNUNET_GETOPT_option_string ('u', - "exchange-url", - "URL", - "base URL of the exchange", - &exchange_url)), + GNUNET_GETOPT_option_string ('u', + "exchange-url", + "URL", + "base URL of the exchange", + &exchange_url), GNUNET_GETOPT_option_flag ('r', "remove", "remove the exchange's key (default is to add)", @@ -93,7 +92,7 @@ main (int argc, NULL)); if (GNUNET_GETOPT_run ("taler-auditor-exchange", options, - argc, argv) < 0) + argc, argv) <= 0) return 1; cfg = GNUNET_CONFIGURATION_create (); if (GNUNET_SYSERR == @@ -108,6 +107,32 @@ main (int argc, } GNUNET_free_non_null (cfgfile); + if (! remove_flag) + { + if (NULL == exchange_url) + { + FPRINTF (stderr, + _("Missing either `%s' or `%s'.\n"), + "-u URL", + "--remove"); + return 1; + } + if ( (0 == strlen (exchange_url)) || + ( (0 != strncasecmp ("http://", + exchange_url, + strlen ("http://"))) && + (0 != strncasecmp ("https://", + exchange_url, + strlen ("https://"))) ) || + ('/' != exchange_url[strlen(exchange_url)-1]) ) + { + fprintf (stderr, + "Exchange URL must begin with `http://` or `https://` and end with `/'\n"); + return 3; + } + } + + if (NULL == (adb = TALER_AUDITORDB_plugin_load (cfg))) { diff --git a/src/auditor/taler-auditor-sign.c b/src/auditor/taler-auditor-sign.c index e34537137..90efbd0ef 100644 --- a/src/auditor/taler-auditor-sign.c +++ b/src/auditor/taler-auditor-sign.c @@ -193,7 +193,7 @@ main (int argc, NULL)); if (GNUNET_GETOPT_run ("taler-auditor-sign", options, - argc, argv) < 0) + argc, argv) <= 0) return 1; cfg = GNUNET_CONFIGURATION_create (); if (GNUNET_SYSERR == |