summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarcel Holtmann <marcel@holtmann.org>2010-07-28 15:28:07 -0700
committerMarcel Holtmann <marcel@holtmann.org>2010-07-28 15:28:07 -0700
commit3929693a476aea7761477213b6497df09f86359d (patch)
treec64f2e3f7dd094eebc9a9a33cafd91d25d7e79c8
parent7804013bd84c430cf44cbbc23b9848632d67ee83 (diff)
downloadconnman-3929693a476aea7761477213b6497df09f86359d.tar.gz
connman-3929693a476aea7761477213b6497df09f86359d.tar.bz2
connman-3929693a476aea7761477213b6497df09f86359d.zip
Fix timer handling for DHCP library test tool
-rw-r--r--tools/dhcp-test.c29
1 files changed, 11 insertions, 18 deletions
diff --git a/tools/dhcp-test.c b/tools/dhcp-test.c
index cf4ff71d..bf7b7601 100644
--- a/tools/dhcp-test.c
+++ b/tools/dhcp-test.c
@@ -46,16 +46,9 @@ static void sig_term(int sig)
g_main_loop_quit(main_loop);
}
-static void print_timestamp(void)
+static void print_elapsed(void)
{
- GTimeVal timestamp;
gdouble elapsed;
- char *str;
-
- g_get_current_time(&timestamp);
- str = g_time_val_to_iso8601(&timestamp);
- printf("=== %s ===\n", str);
- g_free(str);
elapsed = g_timer_elapsed(timer, NULL);
@@ -91,9 +84,9 @@ static void handle_error(GDHCPClientError error)
static void no_lease_cb(GDHCPClient *dhcp_client, gpointer user_data)
{
- printf("No Lease Available!\n");
+ print_elapsed();
- print_timestamp();
+ printf("No lease available\n");
g_main_loop_quit(main_loop);
}
@@ -103,6 +96,10 @@ static void lease_available_cb(GDHCPClient *dhcp_client, gpointer user_data)
GList *list, *option_value = NULL;
char *address;
+ print_elapsed();
+
+ printf("Leave available\n");
+
address = g_dhcp_client_get_address(dhcp_client);
printf("address %s\n", address);
if (address == NULL)
@@ -123,8 +120,6 @@ static void lease_available_cb(GDHCPClient *dhcp_client, gpointer user_data)
option_value = g_dhcp_client_get_option(dhcp_client, G_DHCP_HOST_NAME);
for (list = option_value; list; list = list->next)
printf("hostname %s\n", (char *) list->data);
-
- print_timestamp();
}
int main(int argc, char *argv[])
@@ -143,8 +138,6 @@ int main(int argc, char *argv[])
printf("Create DHCP client for interface %d\n", index);
- timer = g_timer_new();
-
dhcp_client = g_dhcp_client_new(G_DHCP_IPV4, index, &error);
if (dhcp_client == NULL) {
handle_error(error);
@@ -168,10 +161,10 @@ int main(int argc, char *argv[])
main_loop = g_main_loop_new(NULL, FALSE);
- print_timestamp();
-
printf("Start DHCP operation\n");
+ timer = g_timer_new();
+
g_dhcp_client_start(dhcp_client);
memset(&sa, 0, sizeof(sa));
@@ -181,11 +174,11 @@ int main(int argc, char *argv[])
g_main_loop_run(main_loop);
+ g_timer_destroy(timer);
+
g_dhcp_client_unref(dhcp_client);
g_main_loop_unref(main_loop);
- g_timer_destroy(timer);
-
return 0;
}