Commit 74af8ff8 authored by Alessandro Rubini's avatar Alessandro Rubini

userspace/tools/radiusvlan: be less verbose when verbose

Now that the state machine is known to work, we'd better only report
state changes. So this is the new output for the whole cycle
when a fiber is plugged (including kernel messages on the console):

   wri3: Link up, lpa 0x41a0.
   device wri3 entered promiscuous mode
   FSM: wri3: down -> sniff
   device wri3 left promiscuous mode
   recvfrom(wri3): 0800-90e2ba456c6b  FSM: wri3: sniff -> auth
   dev wri3, got 55 bytes so far
   dev wri3: vlan 31
   FSM: wri3: auth -> config
   FSM: wri3: config -> configured

While this is a port already up twhen the tool starts, in an ssh run:

   FSM: wri17: justup -> sniff
   recvfrom(wri17): 88f7-00267b0003d4
   FSM: wri17: sniff -> auth
   dev wri17, got 185 bytes so far
   dev wri17: vlan 31
   FSM: wri17: auth -> config
   FSM: wri17: config -> configured
Signed-off-by: Alessandro Rubini's avatarAlessandro Rubini <rubini@gnudd.com>
parent 010ef2ea
......@@ -96,12 +96,6 @@ int rvlan_fsm(struct rvlan_dev *dev, fd_set *rdset)
if (dev->up_now && dev->fsm_state == RVLAN_DOWN)
dev->fsm_state = RVLAN_JUSTUP;
if (verbose) {
if (dev == devs)
printf("\n"); /* new stanza */
printf("FSM: %s = %s ", dev->name, fsm_names[dev->fsm_state]);
}
switch(dev->fsm_state) {
case RVLAN_DOWN:
break;
......@@ -173,7 +167,7 @@ int rvlan_fsm(struct rvlan_dev *dev, fd_set *rdset)
printf("got %02x%02x%02x%02x%02x%02x ",
frame[6], frame[7], frame[8],
frame[9], frame[10], frame[11]);
printf("own %02x%02x%02x%02x%02x%02x ",
printf("own %02x%02x%02x%02x%02x%02x\n",
dev->mac[0], dev->mac[1], dev->mac[2],
dev->mac[3], dev->mac[4], dev->mac[5]);
}
......@@ -186,7 +180,7 @@ int rvlan_fsm(struct rvlan_dev *dev, fd_set *rdset)
frame[6], frame[7], frame[8],
frame[9], frame[10], frame[11]);
if (verbose)
printf("recvfrom(%s): %04x-%s ", dev->name,
printf("recvfrom(%s): %04x-%s\n", dev->name,
frame[12] << 8 | frame[13], dev->peer_mac);
close(dev->poll_fd);
dev->poll_fd = -1;
......@@ -270,7 +264,7 @@ int rvlan_fsm(struct rvlan_dev *dev, fd_set *rdset)
dev->radbuffer_size += i;
dev->radbuffer[dev->radbuffer_size] = '\0';
if (verbose)
printf("dev %s, got %i bytes so far ",
printf("dev %s, got %i bytes so far\n",
dev->name, dev->radbuffer_size);
break;
}
......@@ -307,7 +301,7 @@ int rvlan_fsm(struct rvlan_dev *dev, fd_set *rdset)
if (rvlan_obey_dotconfig)
dev->chosen_vlan = dev->dotconfig_vlan;
if (verbose)
printf("dev %s: vlan %i ", dev->name,
printf("dev %s: vlan %i\n", dev->name,
dev->chosen_vlan);
dev->fsm_state = RVLAN_CONFIG;
break;
......@@ -357,8 +351,6 @@ int rvlan_fsm(struct rvlan_dev *dev, fd_set *rdset)
dev->fsm_state = RVLAN_DOWN;
break;
}
if (verbose)
printf("-> %s\n", fsm_names[dev->fsm_state]);
return 0;
}
......@@ -612,8 +604,14 @@ int rvlan_poll_devices(int sock)
if (FD_ISSET(sock, &rdset))
rvlan_process_netlink(sock);
/* This netlink event may fire a fsm action, so call them all */
for (dev = devs; dev; dev = dev->next)
for (dev = devs; dev; dev = dev->next) {
int prevstate = dev->fsm_state;
rvlan_fsm(dev, &rdset);
if (verbose && dev->fsm_state != prevstate)
printf("FSM: %s: %s -> %s\n", dev->name,
fsm_names[prevstate],
fsm_names[dev->fsm_state]);
}
return 0;
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment