Add function to retrieve blob from network
authorMarcel Holtmann <marcel@holtmann.org>
Mon, 5 Jan 2009 02:16:54 +0000 (03:16 +0100)
committerMarcel Holtmann <marcel@holtmann.org>
Mon, 5 Jan 2009 02:16:54 +0000 (03:16 +0100)
include/network.h
src/network.c

index 14e9d87..796c4f8 100644 (file)
@@ -78,6 +78,8 @@ extern int connman_network_set_uint8(struct connman_network *network,
                                        const char *key, connman_uint8_t value);
 extern int connman_network_set_blob(struct connman_network *network,
                        const char *key, const void *data, unsigned int size);
+extern const void *connman_network_get_blob(struct connman_network *network,
+                                       const char *key, unsigned int *size);
 
 extern struct connman_device *connman_network_get_device(struct connman_network *network);
 
index 95122dd..290f588 100644 (file)
@@ -596,6 +596,26 @@ int connman_network_set_blob(struct connman_network *network,
        return 0;
 }
 
+/**
+ * connman_network_get_blob:
+ * @network: network structure
+ * @key: unique identifier
+ * @size: pointer to blob size
+ *
+ * Get binary blob value for specific key
+ */
+const void *connman_network_get_blob(struct connman_network *network,
+                                       const char *key, unsigned int *size)
+{
+       if (g_str_equal(key, "WiFi.SSID") == TRUE) {
+               if (size != NULL)
+                       *size = network->wifi.ssid_len;
+               return network->wifi.ssid;
+       }
+
+       return NULL;
+}
+
 void __connman_network_set_device(struct connman_network *network,
                                        struct connman_device *device)
 {