version 1.1.2.11, 2010/11/02 01:54:58
|
version 1.1.2.12, 2010/11/02 02:12:49
|
Line 58 RtMsg(struct dwds_if **wds, struct rt_msghdr *msg, siz
|
Line 58 RtMsg(struct dwds_if **wds, struct rt_msghdr *msg, siz
|
struct if_announcemsghdr *ifan; |
struct if_announcemsghdr *ifan; |
const u_char *v; |
const u_char *v; |
struct ether_addr bssid; |
struct ether_addr bssid; |
char szStr[STRSIZ] = { 0 }, szCmd[MAXPATHLEN] = { 0 }, szIdent[STRSIZ] = { 0 }; | char szStr[STRSIZ] = { 0 }, szCmd[MAXPATHLEN] = { 0 }, szIdent[STRSIZ] = { 0 }, |
| szName[IFNAMSIZ] = { 0 }; |
int f, stat; |
int f, stat; |
|
|
assert(wds); |
assert(wds); |
Line 98 RtMsg(struct dwds_if **wds, struct rt_msghdr *msg, siz
|
Line 99 RtMsg(struct dwds_if **wds, struct rt_msghdr *msg, siz
|
break; |
break; |
memcpy(&bssid, V(ieee80211_leave_event)->iev_addr, ETHER_ADDR_LEN); |
memcpy(&bssid, V(ieee80211_leave_event)->iev_addr, ETHER_ADDR_LEN); |
VERB(1) syslog(LOG_INFO, "BSSID:%s Station leave\n", ether_ntoa(&bssid)); |
VERB(1) syslog(LOG_INFO, "BSSID:%s Station leave\n", ether_ntoa(&bssid)); |
if (!wifi_leaveWDS(bssid, wds)) { | if (!wifi_leaveWDS(bssid, wds, szName, IFNAMSIZ)) { |
cfg_LoadAttribute(&cfg, CFG("dwds"), CFG("name"), |
cfg_LoadAttribute(&cfg, CFG("dwds"), CFG("name"), |
CFG(szIdent), STRSIZ, DWDS_NAME); |
CFG(szIdent), STRSIZ, DWDS_NAME); |
/* delete state file ... */ |
/* delete state file ... */ |
Line 106 RtMsg(struct dwds_if **wds, struct rt_msghdr *msg, siz
|
Line 107 RtMsg(struct dwds_if **wds, struct rt_msghdr *msg, siz
|
if (v && strtol((char*) v, NULL, 0)) { |
if (v && strtol((char*) v, NULL, 0)) { |
memset(szCmd, 0, STRSIZ); |
memset(szCmd, 0, STRSIZ); |
snprintf(szCmd, MAXPATHLEN, "%s/%s-%s-%s", (char*) v, |
snprintf(szCmd, MAXPATHLEN, "%s/%s-%s-%s", (char*) v, |
(*wds)->if_name, ether_ntoa(&bssid), szIdent); | szName, ether_ntoa(&bssid), szIdent); |
unlink(szCmd); |
unlink(szCmd); |
VERB(2) syslog(LOG_DEBUG, "Debug:: delete session name %s\n", szCmd); |
VERB(2) syslog(LOG_DEBUG, "Debug:: delete session name %s\n", szCmd); |
} |
} |
Line 119 RtMsg(struct dwds_if **wds, struct rt_msghdr *msg, siz
|
Line 120 RtMsg(struct dwds_if **wds, struct rt_msghdr *msg, siz
|
CFG(szIdent), STRSIZ, DWDS_NAME); |
CFG(szIdent), STRSIZ, DWDS_NAME); |
memset(szCmd, 0, MAXPATHLEN); |
memset(szCmd, 0, MAXPATHLEN); |
snprintf(szCmd, MAXPATHLEN, "%s %s %s %s", szStr, |
snprintf(szCmd, MAXPATHLEN, "%s %s %s %s", szStr, |
(*wds)->if_name, ether_ntoa(&bssid), szIdent); | szName, ether_ntoa(&bssid), szIdent); |
VERB(3) syslog(LOG_DEBUG, "Debug:: Command line: %s\n", szCmd); |
VERB(3) syslog(LOG_DEBUG, "Debug:: Command line: %s\n", szCmd); |
|
|
if ((stat = system(szCmd))) |
if ((stat = system(szCmd))) |