From: Julien Massot <[email protected]>

---
 src/service.c |   20 ++++++++++++++++++++
 1 files changed, 20 insertions(+), 0 deletions(-)

diff --git a/src/service.c b/src/service.c
index 1e3c5af..b471465 100644
--- a/src/service.c
+++ b/src/service.c
@@ -4279,6 +4279,26 @@ int __connman_service_add_passphrase(struct 
connman_service *service,
        return err;
 }

+static int check_wpspin(const char *wpspin)
+{
+       guint i;
+
+       if (wpspin == NULL)
+               return 0;
+
+       /* A WPS PIN is always 8 chars length,
+        * its content is in digit representation.
+        */
+       if (strlen(wpspin) != 8)
+               return -ENOKEY;
+
+       for (i = 0; i < 8; i++)
+               if (!isdigit((unsigned char) wpspin[i]))
+                       return -ENOKEY;
+
+       return 0;
+}
+
 static void request_input_cb (struct connman_service *service,
                        connman_bool_t values_received,
                        const char *name, int name_len,
--
1.7.5.4

_______________________________________________
connman mailing list
[email protected]
http://lists.connman.net/listinfo/connman

Reply via email to