WPS_UPNP: Use monotonic time for event debouncing
authorJohannes Berg <johannes.berg@intel.com>
Mon, 16 Dec 2013 20:08:38 +0000 (21:08 +0100)
committerJouni Malinen <j@w1.fi>
Tue, 24 Dec 2013 05:57:10 +0000 (07:57 +0200)
The event debouncing isn't very accurate (since it doesn't
take sub-second resolution into account), but it should use
monotonic time anyway since it doesn't care about the wall
clock.

Signed-hostap: Johannes Berg <johannes.berg@intel.com>

src/wps/wps_upnp.c

index bea2b33..29e8320 100644 (file)
@@ -480,14 +480,14 @@ static void upnp_wps_device_send_event(struct upnp_wps_device_sm *sm)
                "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n"
                "<e:propertyset xmlns:e=\"urn:schemas-upnp-org:event-1-0\">\n";
        const char *format_tail = "</e:propertyset>\n";
                "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n"
                "<e:propertyset xmlns:e=\"urn:schemas-upnp-org:event-1-0\">\n";
        const char *format_tail = "</e:propertyset>\n";
-       struct os_time now;
+       struct os_reltime now;
 
        if (dl_list_empty(&sm->subscriptions)) {
                /* optimize */
                return;
        }
 
 
        if (dl_list_empty(&sm->subscriptions)) {
                /* optimize */
                return;
        }
 
-       if (os_get_time(&now) == 0) {
+       if (os_get_reltime(&now) == 0) {
                if (now.sec != sm->last_event_sec) {
                        sm->last_event_sec = now.sec;
                        sm->num_events_in_sec = 1;
                if (now.sec != sm->last_event_sec) {
                        sm->last_event_sec = now.sec;
                        sm->num_events_in_sec = 1;