diff options
| author | jow <jow@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2012-02-22 13:39:16 +0000 | 
|---|---|---|
| committer | jow <jow@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2012-02-22 13:39:16 +0000 | 
| commit | 0b7b8ea93fa69d0405ce63fd9e10c64394693043 (patch) | |
| tree | 82d6e9774ad5ad4fc8fa707ea8f3e84faabdaf80 /package/iwinfo/src/iwinfo_lua.c | |
| parent | edd0b0744e10440320b3285be53a7d0c94c81432 (diff) | |
[package] iwinfo: add per-station rate and mcs info to assoclist op
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@30682 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'package/iwinfo/src/iwinfo_lua.c')
| -rw-r--r-- | package/iwinfo/src/iwinfo_lua.c | 39 | 
1 files changed, 39 insertions, 0 deletions
diff --git a/package/iwinfo/src/iwinfo_lua.c b/package/iwinfo/src/iwinfo_lua.c index 533236b4d..6b78cb763 100644 --- a/package/iwinfo/src/iwinfo_lua.c +++ b/package/iwinfo/src/iwinfo_lua.c @@ -265,6 +265,45 @@ static int iwinfo_L_assoclist(lua_State *L, int (*func)(const char *, char *, in  			lua_pushnumber(L, e->noise);  			lua_setfield(L, -2, "noise"); +			lua_pushnumber(L, e->inactive); +			lua_setfield(L, -2, "inactive"); + +			lua_pushnumber(L, e->rx_packets); +			lua_setfield(L, -2, "rx_packets"); + +			lua_pushnumber(L, e->tx_packets); +			lua_setfield(L, -2, "tx_packets"); + +			lua_pushnumber(L, e->rx_rate.rate); +			lua_setfield(L, -2, "rx_rate"); + +			lua_pushnumber(L, e->tx_rate.rate); +			lua_setfield(L, -2, "tx_rate"); + +			if (e->rx_rate.mcs >= 0) +			{ +				lua_pushnumber(L, e->rx_rate.mcs); +				lua_setfield(L, -2, "rx_mcs"); + +				lua_pushboolean(L, e->rx_rate.is_40mhz); +				lua_setfield(L, -2, "rx_40mhz"); + +				lua_pushboolean(L, e->rx_rate.is_short_gi); +				lua_setfield(L, -2, "rx_short_gi"); +			} + +			if (e->tx_rate.mcs >= 0) +			{ +				lua_pushnumber(L, e->tx_rate.mcs); +				lua_setfield(L, -2, "tx_mcs"); + +				lua_pushboolean(L, e->tx_rate.is_40mhz); +				lua_setfield(L, -2, "tx_40mhz"); + +				lua_pushboolean(L, e->tx_rate.is_short_gi); +				lua_setfield(L, -2, "tx_short_gi"); +			} +  			lua_setfield(L, -2, macstr);  		}  	}  | 
