timeserver: Try all resolved timeserver IP addresses
authorJukka Rissanen <jukka.rissanen@linux.intel.com>
Mon, 16 Jul 2012 08:00:47 +0000 (11:00 +0300)
committerDaniel Wagner <daniel.wagner@bmw-carit.de>
Mon, 16 Jul 2012 16:03:29 +0000 (18:03 +0200)
If we get more than one IP address, then add those
server addresses to the time server list so that they
can be tried if the first entry fails.

src/timeserver.c

index 467da52..439d6f5 100644 (file)
@@ -87,8 +87,14 @@ static void resolv_result(GResolvResultStatus status, char **results, gpointer u
 
        if (status == G_RESOLV_RESULT_STATUS_SUCCESS) {
                if (results != NULL) {
-                       for (i = 0; results[i]; i++)
-                               DBG("result: %s", results[i]);
+                       for (i = 0; results[i]; i++) {
+                               DBG("result[%d]: %s", i, results[i]);
+                               if (i == 0)
+                                       continue;
+
+                               ts_list = __connman_timeserver_add_list(
+                                                       ts_list, results[i]);
+                       }
 
                        __connman_ntp_start(results[0]);