Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
struct iwinfo_scanlist_entry {
uint8_t mac[6];
struct iwinfo_scanlist_entry {
uint8_t mac[6];
- uint8_t ssid[IWINFO_ESSID_MAX_SIZE+1];
+ char ssid[IWINFO_ESSID_MAX_SIZE+1];
enum iwinfo_opmode mode;
uint8_t channel;
uint8_t signal;
enum iwinfo_opmode mode;
uint8_t channel;
uint8_t signal;
struct iwinfo_country_entry {
uint16_t iso3166;
struct iwinfo_country_entry {
uint16_t iso3166;
};
struct iwinfo_iso3166_label {
uint16_t iso3166;
};
struct iwinfo_iso3166_label {
uint16_t iso3166;
};
struct iwinfo_hardware_id {
};
struct iwinfo_hardware_id {
iwinfo_finish();
return rv;
iwinfo_finish();
return rv;
static int iwinfo_L_countrylist(lua_State *L, int (*func)(const char *, char *, int *))
{
static int iwinfo_L_countrylist(lua_State *L, int (*func)(const char *, char *, int *))
{
char rv[IWINFO_BUFSIZE], alpha2[3];
char *ccode;
const char *ifname = luaL_checkstring(L, 1);
char rv[IWINFO_BUFSIZE], alpha2[3];
char *ccode;
const char *ifname = luaL_checkstring(L, 1);
if (!(*func)(ifname, rv, &len))
{
if (!(*func)(ifname, rv, &len))
{
- for (l = IWINFO_ISO3166_NAMES, j = 1; l->iso3166; l++)
+ for (l = IWINFO_ISO3166_NAMES, i = 1; l->iso3166; l++)
{
if ((ccode = iwinfo_L_country_lookup(rv, len, l->iso3166)) != NULL)
{
{
if ((ccode = iwinfo_L_country_lookup(rv, len, l->iso3166)) != NULL)
{
lua_pushstring(L, l->name);
lua_setfield(L, -2, "name");
lua_pushstring(L, l->name);
lua_setfield(L, -2, "name");
- lua_rawseti(L, -2, j++);
+ lua_rawseti(L, -2, i++);
- snprintf(buf, sizeof(buf), "/sys/class/ieee80211/*", opt); /**/
+ snprintf(buf, sizeof(buf), "/sys/class/ieee80211/*"); /**/
if (glob(buf, 0, NULL, &gl))
return -1;
if (glob(buf, 0, NULL, &gl))
return -1;
static char * nl80211_phy2ifname(const char *ifname)
{
static char * nl80211_phy2ifname(const char *ifname)
{
- int fd, ifidx = -1, cifidx = -1, phyidx = -1;
+ int ifidx = -1, cifidx = -1, phyidx = -1;
char buffer[64];
static char nif[IFNAMSIZ] = { 0 };
char buffer[64];
static char nif[IFNAMSIZ] = { 0 };
static char * nl80211_ifadd(const char *ifname)
{
static char * nl80211_ifadd(const char *ifname)
{
char *rv = NULL, path[PATH_MAX];
static char nif[IFNAMSIZ] = { 0 };
char *rv = NULL, path[PATH_MAX];
static char nif[IFNAMSIZ] = { 0 };
- struct nl80211_msg_conveyor *req, *res;
+ struct nl80211_msg_conveyor *req;
FILE *sysfs;
req = nl80211_msg(ifname, NL80211_CMD_NEW_INTERFACE, 0);
FILE *sysfs;
req = nl80211_msg(ifname, NL80211_CMD_NEW_INTERFACE, 0);
struct nlattr *bss[NL80211_BSS_MAX + 1];
static struct nla_policy bss_policy[NL80211_BSS_MAX + 1] = {
struct nlattr *bss[NL80211_BSS_MAX + 1];
static struct nla_policy bss_policy[NL80211_BSS_MAX + 1] = {
- [NL80211_BSS_INFORMATION_ELEMENTS] = { },
+ [NL80211_BSS_INFORMATION_ELEMENTS] = { 0 },
[NL80211_BSS_STATUS] = { .type = NLA_U32 },
};
[NL80211_BSS_STATUS] = { .type = NLA_U32 },
};
res = nl80211_phy2ifname(ifname);
req = nl80211_msg(res ? res : ifname, NL80211_CMD_GET_SCAN, NLM_F_DUMP);
res = nl80211_phy2ifname(ifname);
req = nl80211_msg(res ? res : ifname, NL80211_CMD_GET_SCAN, NLM_F_DUMP);
+ sb.ssid = (unsigned char *)buf;
static struct nla_policy bss_policy[NL80211_BSS_MAX + 1] = {
[NL80211_BSS_TSF] = { .type = NLA_U64 },
[NL80211_BSS_FREQUENCY] = { .type = NLA_U32 },
static struct nla_policy bss_policy[NL80211_BSS_MAX + 1] = {
[NL80211_BSS_TSF] = { .type = NLA_U64 },
[NL80211_BSS_FREQUENCY] = { .type = NLA_U32 },
- [NL80211_BSS_BSSID] = { },
+ [NL80211_BSS_BSSID] = { 0 },
[NL80211_BSS_BEACON_INTERVAL] = { .type = NLA_U16 },
[NL80211_BSS_CAPABILITY] = { .type = NLA_U16 },
[NL80211_BSS_BEACON_INTERVAL] = { .type = NLA_U16 },
[NL80211_BSS_CAPABILITY] = { .type = NLA_U16 },
- [NL80211_BSS_INFORMATION_ELEMENTS] = { },
+ [NL80211_BSS_INFORMATION_ELEMENTS] = { 0 },
[NL80211_BSS_SIGNAL_MBM] = { .type = NLA_U32 },
[NL80211_BSS_SIGNAL_UNSPEC] = { .type = NLA_U8 },
[NL80211_BSS_STATUS] = { .type = NLA_U32 },
[NL80211_BSS_SEEN_MS_AGO] = { .type = NLA_U32 },
[NL80211_BSS_SIGNAL_MBM] = { .type = NLA_U32 },
[NL80211_BSS_SIGNAL_UNSPEC] = { .type = NLA_U8 },
[NL80211_BSS_STATUS] = { .type = NLA_U32 },
[NL80211_BSS_SEEN_MS_AGO] = { .type = NLA_U32 },
- [NL80211_BSS_BEACON_IES] = { },
+ [NL80211_BSS_BEACON_IES] = { 0 },
};
if (!tb[NL80211_ATTR_BSS] ||
};
if (!tb[NL80211_ATTR_BSS] ||
- out[len++] = '\e'; in++;
+ out[len++] = '\033'; in++;
struct nlattr *freqs[NL80211_FREQUENCY_ATTR_MAX + 1];
struct nlattr *band, *freq;
struct nlattr *freqs[NL80211_FREQUENCY_ATTR_MAX + 1];
struct nlattr *band, *freq;
- static struct nla_policy freq_policy[NL80211_FREQUENCY_ATTR_MAX + 1] = {
- [NL80211_FREQUENCY_ATTR_FREQ] = { .type = NLA_U32 },
- [NL80211_FREQUENCY_ATTR_DISABLED] = { .type = NLA_FLAG },
- [NL80211_FREQUENCY_ATTR_PASSIVE_SCAN] = { .type = NLA_FLAG },
- [NL80211_FREQUENCY_ATTR_NO_IBSS] = { .type = NLA_FLAG },
- [NL80211_FREQUENCY_ATTR_RADAR] = { .type = NLA_FLAG },
- [NL80211_FREQUENCY_ATTR_MAX_TX_POWER] = { .type = NLA_U32 },
- };
-
nla_for_each_nested(band, attr[NL80211_ATTR_WIPHY_BANDS], bands_remain)
{
nla_parse(bands, NL80211_BAND_ATTR_MAX,
nla_for_each_nested(band, attr[NL80211_ATTR_WIPHY_BANDS], bands_remain)
{
nla_parse(bands, NL80211_BAND_ATTR_MAX,
static int nl80211_get_countrylist(const char *ifname, char *buf, int *len)
{
static int nl80211_get_countrylist(const char *ifname, char *buf, int *len)
{
struct iwinfo_country_entry *e = (struct iwinfo_country_entry *)buf;
const struct iwinfo_iso3166_label *l;
struct iwinfo_country_entry *e = (struct iwinfo_country_entry *)buf;
const struct iwinfo_iso3166_label *l;
static int nl80211_get_hwmodelist(const char *ifname, int *buf)
{
struct nl80211_msg_conveyor *req;
static int nl80211_get_hwmodelist(const char *ifname, int *buf)
{
struct nl80211_msg_conveyor *req;
- struct nl80211_modes m = { };
+ struct nl80211_modes m = { 0 };
req = nl80211_msg(ifname, NL80211_CMD_GET_WIPHY, 0);
if (req)
req = nl80211_msg(ifname, NL80211_CMD_GET_WIPHY, 0);
if (req)
static int nl80211_get_htmodelist(const char *ifname, int *buf)
{
struct nl80211_msg_conveyor *req;
static int nl80211_get_htmodelist(const char *ifname, int *buf)
{
struct nl80211_msg_conveyor *req;
- struct nl80211_modes m = { };
+ struct nl80211_modes m = { 0 };
req = nl80211_msg(ifname, NL80211_CMD_GET_WIPHY, 0);
if (req)
req = nl80211_msg(ifname, NL80211_CMD_GET_WIPHY, 0);
if (req)
+ int fd;
+ unsigned int len, off;
char buf[128];
if (!(mtd = fopen("/proc/mtd", "r")))
return -1;
char buf[128];
if (!(mtd = fopen("/proc/mtd", "r")))
return -1;
- while (fgets(buf, sizeof(buf), mtd) > 0)
+ while (fgets(buf, sizeof(buf), mtd) != NULL)
- if (fscanf(mtd, "mtd%d: %x %*x %127s", &off, &len, buf) < 3 ||
+ if (fscanf(mtd, "mtd%u: %x %*x %127s", &off, &len, buf) < 3 ||
(strcmp(buf, "\"boardconfig\"") && strcmp(buf, "\"EEPROM\"") &&
strcmp(buf, "\"factory\"")))
{
(strcmp(buf, "\"boardconfig\"") && strcmp(buf, "\"EEPROM\"") &&
strcmp(buf, "\"factory\"")))
{
id->subsystem_vendor_id = 0x1814;
/* device */
id->subsystem_vendor_id = 0x1814;
/* device */
- if (bc[off] & 0xf0 == 0x30)
+ if ((bc[off] & 0xf0) == 0x30)
id->device_id = (bc[off] >> 8) | (bc[off] & 0x00ff) << 8;
else
id->device_id = bc[off];
id->device_id = (bc[off] >> 8) | (bc[off] & 0x00ff) << 8;
else
id->device_id = bc[off];
static inline int wext_freq2mhz(const struct iw_freq *in)
{
static inline int wext_freq2mhz(const struct iw_freq *in)
{
if( in->e == 6 )
{
return in->m;
if( in->e == 6 )
{
return in->m;