summaryrefslogtreecommitdiff
path: root/src/timeserver.c
diff options
context:
space:
mode:
authorAlok Barsode <alok.barsode@linux.intel.com>2012-02-03 20:26:02 +0200
committerSamuel Ortiz <sameo@linux.intel.com>2012-02-04 01:15:36 +0100
commitd92c0506baf62cce92341b42e705b1c237959df1 (patch)
tree28c88fcb58fb6a7fcfa65ef7d37e350d40164d6b /src/timeserver.c
parentf97c14e2606c64df0ae23c81a8a4066d27367091 (diff)
downloadconnman-d92c0506baf62cce92341b42e705b1c237959df1.tar.gz
connman-d92c0506baf62cce92341b42e705b1c237959df1.tar.bz2
connman-d92c0506baf62cce92341b42e705b1c237959df1.zip
timeserver: Use service timeserver, if any, before system timeservers
Diffstat (limited to 'src/timeserver.c')
-rw-r--r--src/timeserver.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/timeserver.c b/src/timeserver.c
index a3614337..b00f1091 100644
--- a/src/timeserver.c
+++ b/src/timeserver.c
@@ -35,6 +35,7 @@ static GSList *driver_list = NULL;
static GHashTable *server_hash = NULL;
static char **system_timeservers = NULL;
+static char **timeservers = NULL;
static GResolv *resolv = NULL;
static int resolv_id = 0;
@@ -289,6 +290,14 @@ int __connman_timeserver_sync(struct connman_service *service)
system_timeservers = load_timeservers();
+ timeservers = connman_service_get_timeservers(service);
+
+ if (timeservers != NULL && timeservers[0] != NULL) {
+ DBG("Using service tiemservers");
+ __connman_ntp_start(timeservers[0]);
+ return 0;
+ }
+
if (system_timeservers == NULL || system_timeservers[count] == NULL) {
DBG("No timeservers set.");
return 0;
@@ -315,6 +324,8 @@ void __connman_timeserver_stop()
system_timeservers = NULL;
}
+ timeservers = NULL;
+
count = 0;
__connman_ntp_stop();