diff options
author | Jo-Philipp Wich <jow@openwrt.org> | 2011-12-04 03:42:17 +0000 |
---|---|---|
committer | Jo-Philipp Wich <jow@openwrt.org> | 2011-12-04 03:42:17 +0000 |
commit | 0d587a173c3ab39ea95719110d8e6791bd3dfbb1 (patch) | |
tree | 96b02527f41c9a14ec51ec7d631e3785930d9e8f /package/iwinfo/src/include | |
parent | 83e6c14f82f6c2d9028f4ec9f4da943c0e524345 (diff) | |
download | upstream-0d587a173c3ab39ea95719110d8e6791bd3dfbb1.tar.gz upstream-0d587a173c3ab39ea95719110d8e6791bd3dfbb1.tar.bz2 upstream-0d587a173c3ab39ea95719110d8e6791bd3dfbb1.zip |
iwinfo: add initial hardware detection capabilities
SVN-Revision: 29421
Diffstat (limited to 'package/iwinfo/src/include')
-rw-r--r-- | package/iwinfo/src/include/iwinfo.h | 21 | ||||
-rw-r--r-- | package/iwinfo/src/include/iwinfo/lua.h | 3 | ||||
-rw-r--r-- | package/iwinfo/src/include/iwinfo/madwifi.h | 4 | ||||
-rw-r--r-- | package/iwinfo/src/include/iwinfo/nl80211.h | 4 | ||||
-rw-r--r-- | package/iwinfo/src/include/iwinfo/utils.h | 2 | ||||
-rw-r--r-- | package/iwinfo/src/include/iwinfo/wext.h | 4 | ||||
-rw-r--r-- | package/iwinfo/src/include/iwinfo/wl.h | 4 |
7 files changed, 40 insertions, 2 deletions
diff --git a/package/iwinfo/src/include/iwinfo.h b/package/iwinfo/src/include/iwinfo.h index 824b945365..86bf8b1b6d 100644 --- a/package/iwinfo/src/include/iwinfo.h +++ b/package/iwinfo/src/include/iwinfo.h @@ -95,7 +95,26 @@ struct iwinfo_iso3166_label { uint8_t name[28]; }; +struct iwinfo_hardware_id { + uint16_t vendor_id; + uint16_t device_id; + uint16_t subsystem_vendor_id; + uint16_t subsystem_device_id; +}; + +struct iwinfo_hardware_entry { + const char *vendor_name; + const char *device_name; + uint16_t vendor_id; + uint16_t device_id; + uint16_t subsystem_vendor_id; + uint16_t subsystem_device_id; + int16_t txpower_offset; + int16_t frequency_offset; +}; + extern const struct iwinfo_iso3166_label IWINFO_ISO3166_NAMES[]; +extern const struct iwinfo_hardware_entry IWINFO_HARDWARE_ENTRIES[]; struct iwinfo_ops { @@ -113,6 +132,8 @@ struct iwinfo_ops { int (*ssid)(const char *, char *); int (*bssid)(const char *, char *); int (*country)(const char *, char *); + int (*hardware_id)(const char *, char *); + int (*hardware_name)(const char *, char *); int (*encryption)(const char *, char *); int (*assoclist)(const char *, char *, int *); int (*txpwrlist)(const char *, char *, int *); diff --git a/package/iwinfo/src/include/iwinfo/lua.h b/package/iwinfo/src/include/iwinfo/lua.h index 65a3a5cb91..d976c0cf46 100644 --- a/package/iwinfo/src/include/iwinfo/lua.h +++ b/package/iwinfo/src/include/iwinfo/lua.h @@ -71,11 +71,10 @@ return 1; \ } -#define LUA_WRAP_LIST(type,op) \ +#define LUA_WRAP_STRUCT(type,op) \ static int iwinfo_L_##type##_##op(lua_State *L) \ { \ return iwinfo_L_##op(L, type##_get_##op); \ } #endif - diff --git a/package/iwinfo/src/include/iwinfo/madwifi.h b/package/iwinfo/src/include/iwinfo/madwifi.h index 4de48557d4..ecbe749c8a 100644 --- a/package/iwinfo/src/include/iwinfo/madwifi.h +++ b/package/iwinfo/src/include/iwinfo/madwifi.h @@ -46,6 +46,8 @@ int madwifi_get_freqlist(const char *ifname, char *buf, int *len); int madwifi_get_countrylist(const char *ifname, char *buf, int *len); int madwifi_get_hwmodelist(const char *ifname, int *buf); int madwifi_get_mbssid_support(const char *ifname, int *buf); +int madwifi_get_hardware_id(const char *ifname, char *buf); +int madwifi_get_hardware_name(const char *ifname, char *buf); void madwifi_close(void); static const struct iwinfo_ops madwifi_ops = { @@ -63,6 +65,8 @@ static const struct iwinfo_ops madwifi_ops = { .ssid = madwifi_get_ssid, .bssid = madwifi_get_bssid, .country = madwifi_get_country, + .hardware_id = madwifi_get_hardware_id, + .hardware_name = madwifi_get_hardware_name, .encryption = madwifi_get_encryption, .assoclist = madwifi_get_assoclist, .txpwrlist = madwifi_get_txpwrlist, diff --git a/package/iwinfo/src/include/iwinfo/nl80211.h b/package/iwinfo/src/include/iwinfo/nl80211.h index dce508cf0a..3df25d34b4 100644 --- a/package/iwinfo/src/include/iwinfo/nl80211.h +++ b/package/iwinfo/src/include/iwinfo/nl80211.h @@ -77,6 +77,8 @@ int nl80211_get_freqlist(const char *ifname, char *buf, int *len); int nl80211_get_countrylist(const char *ifname, char *buf, int *len); int nl80211_get_hwmodelist(const char *ifname, int *buf); int nl80211_get_mbssid_support(const char *ifname, int *buf); +int nl80211_get_hardware_id(const char *ifname, char *buf); +int nl80211_get_hardware_name(const char *ifname, char *buf); void nl80211_close(void); static const struct iwinfo_ops nl80211_ops = { @@ -94,6 +96,8 @@ static const struct iwinfo_ops nl80211_ops = { .ssid = nl80211_get_ssid, .bssid = nl80211_get_bssid, .country = nl80211_get_country, + .hardware_id = nl80211_get_hardware_id, + .hardware_name = nl80211_get_hardware_name, .encryption = nl80211_get_encryption, .assoclist = nl80211_get_assoclist, .txpwrlist = nl80211_get_txpwrlist, diff --git a/package/iwinfo/src/include/iwinfo/utils.h b/package/iwinfo/src/include/iwinfo/utils.h index 57958b1b54..e897b2718a 100644 --- a/package/iwinfo/src/include/iwinfo/utils.h +++ b/package/iwinfo/src/include/iwinfo/utils.h @@ -37,4 +37,6 @@ int iwinfo_ifmac(const char *ifname); void iwinfo_close(void); +struct iwinfo_hardware_entry * iwinfo_hardware(struct iwinfo_hardware_id *id); + #endif diff --git a/package/iwinfo/src/include/iwinfo/wext.h b/package/iwinfo/src/include/iwinfo/wext.h index 69b7a8e3d0..4d2f4aa0a2 100644 --- a/package/iwinfo/src/include/iwinfo/wext.h +++ b/package/iwinfo/src/include/iwinfo/wext.h @@ -47,6 +47,8 @@ int wext_get_freqlist(const char *ifname, char *buf, int *len); int wext_get_countrylist(const char *ifname, char *buf, int *len); int wext_get_hwmodelist(const char *ifname, int *buf); int wext_get_mbssid_support(const char *ifname, int *buf); +int wext_get_hardware_id(const char *ifname, char *buf); +int wext_get_hardware_name(const char *ifname, char *buf); void wext_close(void); static const struct iwinfo_ops wext_ops = { @@ -64,6 +66,8 @@ static const struct iwinfo_ops wext_ops = { .ssid = wext_get_ssid, .bssid = wext_get_bssid, .country = wext_get_country, + .hardware_id = wext_get_hardware_id, + .hardware_name = wext_get_hardware_name, .encryption = wext_get_encryption, .assoclist = wext_get_assoclist, .txpwrlist = wext_get_txpwrlist, diff --git a/package/iwinfo/src/include/iwinfo/wl.h b/package/iwinfo/src/include/iwinfo/wl.h index e931f7c6e3..10be96aeb9 100644 --- a/package/iwinfo/src/include/iwinfo/wl.h +++ b/package/iwinfo/src/include/iwinfo/wl.h @@ -47,6 +47,8 @@ int wl_get_freqlist(const char *ifname, char *buf, int *len); int wl_get_countrylist(const char *ifname, char *buf, int *len); int wl_get_hwmodelist(const char *ifname, int *buf); int wl_get_mbssid_support(const char *ifname, int *buf); +int wl_get_hardware_id(const char *ifname, char *buf); +int wl_get_hardware_name(const char *ifname, char *buf); void wl_close(void); static const struct iwinfo_ops wl_ops = { @@ -64,6 +66,8 @@ static const struct iwinfo_ops wl_ops = { .ssid = wl_get_ssid, .bssid = wl_get_bssid, .country = wl_get_country, + .hardware_id = wl_get_hardware_id, + .hardware_name = wl_get_hardware_name, .encryption = wl_get_encryption, .assoclist = wl_get_assoclist, .txpwrlist = wl_get_txpwrlist, |