Fix subnet-up/down scripts being called with an empty SUBNET.
Commit 052ff8b2c5
contained a bug that causes
scripts to be called with an empty, or possibly corrupted SUBNET variable when
a Subnet is added or removed while the owner is still online. In router mode,
this normally does not happen, but in switch mode this is normal.
This commit is contained in:
parent
b455111184
commit
5d194b9f87
1 changed files with 3 additions and 3 deletions
|
@ -478,7 +478,7 @@ void subnet_update(node_t *owner, subnet_t *subnet, bool up) {
|
|||
if(!net2str(netstr, sizeof netstr, subnet))
|
||||
continue;
|
||||
// Strip the weight from the subnet, and put it in its own environment variable
|
||||
char *weight = strchr(netstr + 7, '#');
|
||||
char *weight = strchr(netstr, '#');
|
||||
if(weight)
|
||||
*weight++ = 0;
|
||||
else
|
||||
|
@ -495,9 +495,9 @@ void subnet_update(node_t *owner, subnet_t *subnet, bool up) {
|
|||
execute_script(name, envp);
|
||||
}
|
||||
} else {
|
||||
if(net2str(netstr + 7, sizeof netstr - 7, subnet)) {
|
||||
if(net2str(netstr, sizeof netstr, subnet)) {
|
||||
// Strip the weight from the subnet, and put it in its own environment variable
|
||||
char *weight = strchr(netstr + 7, '#');
|
||||
char *weight = strchr(netstr, '#');
|
||||
if(weight)
|
||||
*weight++ = 0;
|
||||
else
|
||||
|
|
Loading…
Reference in a new issue