wpa_supplicant: Fix couple of C++ compiler errors with header files
authorRoshan Pius <rpius@google.com>
Thu, 21 Jan 2016 23:15:13 +0000 (15:15 -0800)
committerJouni Malinen <j@w1.fi>
Sat, 6 Feb 2016 13:26:48 +0000 (15:26 +0200)
Need to include these headers in C++ files for adding a binder interface
to wpa_supplicant. So, fix the following C++ compiler errors in them:
1. Add explicit C-style casts in wpa_buf.h header.
2. Move the nested definition of wpa_driver_scan_ssid in driver.h
outside of wpa_driver_scan_params because it is used in another
structure below.

Signed-off-by: Roshan Pius <rpius@google.com>
src/drivers/driver.h
src/utils/wpabuf.h

index 6fd72c5..aad0e04 100644 (file)
@@ -293,6 +293,18 @@ struct wpa_interface_info {
 #define WPAS_MAX_SCAN_SSIDS 16
 
 /**
+ * struct wpa_driver_scan_ssid - SSIDs to scan for
+ * @ssid - specific SSID to scan for (ProbeReq)
+ *     %NULL or zero-length SSID is used to indicate active scan
+ *     with wildcard SSID.
+ * @ssid_len - Length of the SSID in octets
+ */
+struct wpa_driver_scan_ssid {
+       const u8 *ssid;
+       size_t ssid_len;
+};
+
+/**
  * struct wpa_driver_scan_params - Scan parameters
  * Data for struct wpa_driver_ops::scan2().
  */
@@ -300,18 +312,7 @@ struct wpa_driver_scan_params {
        /**
         * ssids - SSIDs to scan for
         */
-       struct wpa_driver_scan_ssid {
-               /**
-                * ssid - specific SSID to scan for (ProbeReq)
-                * %NULL or zero-length SSID is used to indicate active scan
-                * with wildcard SSID.
-                */
-               const u8 *ssid;
-               /**
-                * ssid_len: Length of the SSID in octets
-                */
-               size_t ssid_len;
-       } ssids[WPAS_MAX_SCAN_SSIDS];
+       struct wpa_driver_scan_ssid ssids[WPAS_MAX_SCAN_SSIDS];
 
        /**
         * num_ssids - Number of entries in ssids array
index c3ef1ba..9cd8a07 100644 (file)
@@ -81,7 +81,7 @@ static inline const void * wpabuf_head(const struct wpabuf *buf)
 
 static inline const u8 * wpabuf_head_u8(const struct wpabuf *buf)
 {
-       return wpabuf_head(buf);
+       return (const u8 *) wpabuf_head(buf);
 }
 
 /**
@@ -96,42 +96,42 @@ static inline void * wpabuf_mhead(struct wpabuf *buf)
 
 static inline u8 * wpabuf_mhead_u8(struct wpabuf *buf)
 {
-       return wpabuf_mhead(buf);
+       return (u8 *) wpabuf_mhead(buf);
 }
 
 static inline void wpabuf_put_u8(struct wpabuf *buf, u8 data)
 {
-       u8 *pos = wpabuf_put(buf, 1);
+       u8 *pos = (u8 *) wpabuf_put(buf, 1);
        *pos = data;
 }
 
 static inline void wpabuf_put_le16(struct wpabuf *buf, u16 data)
 {
-       u8 *pos = wpabuf_put(buf, 2);
+       u8 *pos = (u8 *) wpabuf_put(buf, 2);
        WPA_PUT_LE16(pos, data);
 }
 
 static inline void wpabuf_put_le32(struct wpabuf *buf, u32 data)
 {
-       u8 *pos = wpabuf_put(buf, 4);
+       u8 *pos = (u8 *) wpabuf_put(buf, 4);
        WPA_PUT_LE32(pos, data);
 }
 
 static inline void wpabuf_put_be16(struct wpabuf *buf, u16 data)
 {
-       u8 *pos = wpabuf_put(buf, 2);
+       u8 *pos = (u8 *) wpabuf_put(buf, 2);
        WPA_PUT_BE16(pos, data);
 }
 
 static inline void wpabuf_put_be24(struct wpabuf *buf, u32 data)
 {
-       u8 *pos = wpabuf_put(buf, 3);
+       u8 *pos = (u8 *) wpabuf_put(buf, 3);
        WPA_PUT_BE24(pos, data);
 }
 
 static inline void wpabuf_put_be32(struct wpabuf *buf, u32 data)
 {
-       u8 *pos = wpabuf_put(buf, 4);
+       u8 *pos = (u8 *) wpabuf_put(buf, 4);
        WPA_PUT_BE32(pos, data);
 }