diff options
author | Alok Barsode <alok.barsode@linux.intel.com> | 2012-02-03 20:26:02 +0200 |
---|---|---|
committer | Samuel Ortiz <sameo@linux.intel.com> | 2012-02-04 01:15:36 +0100 |
commit | d92c0506baf62cce92341b42e705b1c237959df1 (patch) | |
tree | 28c88fcb58fb6a7fcfa65ef7d37e350d40164d6b /src/timeserver.c | |
parent | f97c14e2606c64df0ae23c81a8a4066d27367091 (diff) | |
download | connman-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.c | 11 |
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(); |