#include <menu.h>
extern WINDOW *main_sub, *win_for_help, *main_win;
+extern short ap_type, ap_vendorext;
enum { dBm, percentage, rawval } sts_viewtype = dBm;
struct MacListStat *curr = first;
char message[100];
- clear_main(3);
+ clear_main(row);
while (i++ < begin)
curr = curr->next;
i = 0;
while (end-- > begin) {
if (stat == 1) {
- /* NWN view */
+ /* NWN STAtions listing */
sprintf(message,
- (sts_viewtype == dBm) ?
- "%4u %02X%02X%02X%02X%02X%02X %3u%5u %3udBm"
- :
- (sts_viewtype == percentage) ?
- "%4u %02X%02X%02X%02X%02X%02X %3u%5u %3u%%"
- :
- "%4u %02X%02X%02X%02X%02X%02X %3u%5u %3u",
+ "%4u %02X%02X%02X%02X%02X%02X %3u%5u %3d",
begin + i, curr->addr[0] & 0xFF, curr->addr[1] & 0xFF,
curr->addr[2] & 0xFF, curr->addr[3] & 0xFF,
curr->addr[4] & 0xFF, curr->addr[5] & 0xFF,
conv_rssi(curr->rssi)
);
} else if (stat == 2) {
- /* ATMEL410_SBRIDGES (firmware 1.4k.1) view */
- sprintf(message,
- (sts_viewtype == dBm) ?
- "%2u %02X%02X%02X%02X%02X%02X %3d%% %4ddBm %3u %2u %s"
- :
- (sts_viewtype == percentage) ?
- "%2u %02X%02X%02X%02X%02X%02X %3d%% %3u%% %3u %2u %s"
- :
- "%2u %02X%02X%02X%02X%02X%02X %3d%% %3u %3u %2u %s",
- begin + i,
- curr->addr[0] & 0xFF, curr->addr[1] & 0xFF,
- curr->addr[2] & 0xFF, curr->addr[3] & 0xFF,
- curr->addr[4] & 0xFF, curr->addr[5] & 0xFF,
- curr->quality,
- conv_rssi(curr->rssi),
- curr->Status,
- curr->Port,
- inet_ntoa(curr->IP)
- );
- } else if (stat == 3) {
- /* ATMEL12350_VERNET view */
- sprintf(message,
- (sts_viewtype == dBm) ?
- "%2u %02X%02X%02X%02X%02X%02X %02X%02X%02X%02X%02X%02X "
- "%4ddBm %3u %2u %s"
- :
- (sts_viewtype == percentage) ?
- "%2u %02X%02X%02X%02X%02X%02X %02X%02X%02X%02X%02X%02X "
- " %3u%% %3u %2u %s"
- :
- "%2u %02X%02X%02X%02X%02X%02X %02X%02X%02X%02X%02X%02X "
- " %3u %3u %2u %s",
+ /* ATMEL STAtions listing */
+ char parentmac[13] = " - ";
+ char rssi[5] = " -";
+ char quality[5] = " -";
+ char status[4] = " -";
+ char port[4] = " -";
+ char ip[16] = " - ";
+
+ if (curr->ParentMacAddress[0] | curr->ParentMacAddress[1] |
+ curr->ParentMacAddress[2] | curr->ParentMacAddress[3] |
+ curr->ParentMacAddress[4] | curr->ParentMacAddress[5])
+ sprintf(parentmac, "%02X%02X%02X%02X%02X%02X",
+ curr->ParentMacAddress[0] & 0xFF,
+ curr->ParentMacAddress[1] & 0xFF,
+ curr->ParentMacAddress[2] & 0xFF,
+ curr->ParentMacAddress[3] & 0xFF,
+ curr->ParentMacAddress[4] & 0xFF,
+ curr->ParentMacAddress[5] & 0xFF);
+
+ if (curr->rssi)
+ sprintf(rssi, "%4d", conv_rssi(curr->rssi));
+
+ if (curr->quality)
+ sprintf(quality, "%3u%%", curr->quality);
+
+ if (curr->Status)
+ sprintf(status, "%3u", curr->Status);
+
+ if (curr->Port)
+ sprintf(port, "%2u", curr->Port);
+
+ if(curr->IP.s_addr)
+ sprintf(ip, "%s", inet_ntoa(curr->IP));
+
+ sprintf(message, "%3u %02X%02X%02X%02X%02X%02X %s %s %s %s %s %s",
begin + i,
curr->addr[0] & 0xFF, curr->addr[1] & 0xFF,
curr->addr[2] & 0xFF, curr->addr[3] & 0xFF,
curr->addr[4] & 0xFF, curr->addr[5] & 0xFF,
- curr->ParentMacAddress[0] & 0xFF,
- curr->ParentMacAddress[1] & 0xFF,
- curr->ParentMacAddress[2] & 0xFF,
- curr->ParentMacAddress[3] & 0xFF,
- curr->ParentMacAddress[4] & 0xFF,
- curr->ParentMacAddress[5] & 0xFF,
- conv_rssi(curr->rssi),
- curr->Status,
- curr->Port,
- inet_ntoa(curr->IP)
+ parentmac, rssi, quality, status, port, ip
);
} else {
- /* generic ATMEL view */
- sprintf(message, "%2u %02X%02X%02X%02X%02X%02X",
+ /* MAC auth table listing */
+ sprintf(message, " %3u %02X%02X%02X%02X%02X%02X",
begin + i, curr->addr[0] & 0xFF, curr->addr[1] & 0xFF,
curr->addr[2] & 0xFF, curr->addr[3] & 0xFF,
curr->addr[4] & 0xFF, curr->addr[5] & 0xFF
void print_helperr(char *mess)
{
- wattrset(win_for_help, COLOR_PAIR(4) | A_BOLD);
+ wattrset(win_for_help, COLOR_PAIR(14) | A_BOLD);
print_help(mess);
- wattrset(win_for_help, COLOR_PAIR(1));
+ wattrset(win_for_help, COLOR_PAIR(11));
}
void print_bold(WINDOW *wptr, char *mess)
{
char message_l[200];
- sprintf(message_l, "%s", VIEW);
+ sprintf(message_l, "%s", "RSSI: ");
switch (sts_viewtype) {
case dBm:
- strcat(message_l, "RSSI in dBm");
+ strcat(message_l, "dBm");
break;
case percentage:
- strcat(message_l, "RSSI in percentage");
+ strcat(message_l, "%");
break;
case rawval:
- strcat(message_l, "RSSI in raw values");
+ strcat(message_l, "raw");
}
print_top(message_l, message_r);
}
{
switch (sts_viewtype) {
case dBm:
- return (-96 + raw_rssi);
+ return (dbmconv(raw_rssi));
case percentage:
return ((int)((minimum (raw_rssi, 40)) * (float)2.5));
case rawval: