aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorgrothoff <grothoff@140774ce-b5e7-0310-ab8b-a85725594a96>2013-01-24 10:16:44 +0000
committergrothoff <grothoff@140774ce-b5e7-0310-ab8b-a85725594a96>2013-01-24 10:16:44 +0000
commit018b81a376a505b60d41329608f3ab06c8572723 (patch)
treef1465066b6fb5bd7080300f8a3eaf5ba129be391
parent9119dae7173174ffc427bba9e8bbc6dc1e17dffd (diff)
-parse time nicely
git-svn-id: https://gnunet.org/svn/gnunet@25873 140774ce-b5e7-0310-ab8b-a85725594a96
-rw-r--r--doc/man/gnunet-vpn.14
-rw-r--r--src/vpn/gnunet-vpn.c9
2 files changed, 6 insertions, 7 deletions
diff --git a/doc/man/gnunet-vpn.1 b/doc/man/gnunet-vpn.1
index ad5b9db10f..80b78ce148 100644
--- a/doc/man/gnunet-vpn.1
+++ b/doc/man/gnunet-vpn.1
@@ -27,8 +27,8 @@ Display IP address only after the tunnel is fully connected.
.IP "\-c FILENAME, \-\-config=FILENAME"
Use the configuration file FILENAME.
.B
-.IP "\-d SEC, \-\-duration SEC"
-The mapping should be established for SEC seconds. Default is 5 minutes.
+.IP "\-d TIME, \-\-duration TIME"
+The mapping should be established for TIME. The value given must be a number followed by a space and a time unit, for example "500 ms". Note that the quotes are required on the shell. Default is 5 minutes.
.B
.IP "\-h, \-\-help"
Print short help on options.
diff --git a/src/vpn/gnunet-vpn.c b/src/vpn/gnunet-vpn.c
index 61d145c6e6..6402e1063a 100644
--- a/src/vpn/gnunet-vpn.c
+++ b/src/vpn/gnunet-vpn.c
@@ -92,7 +92,7 @@ static int ret;
/**
* Option '-d': duration of the mapping
*/
-static unsigned long long duration = 5 * 60;
+static struct GNUNET_TIME_Relative duration = { 5 * 60 * 1000} ;
/**
@@ -180,8 +180,7 @@ run (void *cls, char *const *args, const char *cfgfile,
uint8_t protocol;
struct GNUNET_TIME_Absolute etime;
- etime = GNUNET_TIME_relative_to_absolute (GNUNET_TIME_relative_multiply (GNUNET_TIME_UNIT_SECONDS,
- (unsigned int) duration));
+ etime = GNUNET_TIME_relative_to_absolute (duration);
GNUNET_SCHEDULER_add_delayed (GNUNET_TIME_UNIT_FOREVER_REL,
&do_disconnect, NULL);
handle = GNUNET_VPN_connect (cfg);
@@ -301,9 +300,9 @@ main (int argc, char *const *argv)
{'a', "after-connect", NULL,
gettext_noop ("print IP address only after mesh tunnel has been created"),
0, &GNUNET_GETOPT_set_one, &ipv6},
- {'d', "duration", "SECONDS",
+ {'d', "duration", "TIME",
gettext_noop ("how long should the mapping be valid for new tunnels?"),
- 1, &GNUNET_GETOPT_set_ulong, &duration},
+ 1, &GNUNET_GETOPT_set_relative_time, &duration},
{'i', "ip", "IP",
gettext_noop ("destination IP for the tunnel"),
1, &GNUNET_GETOPT_set_string, &target_ip},