| 107 | } |
| 108 | |
| 109 | static void |
| 110 | do_bridgeflag(int sock, const char *ifs, int flag, int set) |
| 111 | { |
| 112 | struct ifbreq req; |
| 113 | |
| 114 | strlcpy(req.ifbr_ifsname, ifs, sizeof(req.ifbr_ifsname)); |
| 115 | |
| 116 | if (do_cmd(sock, BRDGGIFFLGS, &req, sizeof(req), 0) < 0) |
| 117 | err(1, "unable to get bridge flags"); |
| 118 | |
| 119 | if (set) |
| 120 | req.ifbr_ifsflags |= flag; |
| 121 | else |
| 122 | req.ifbr_ifsflags &= ~flag; |
| 123 | |
| 124 | if (do_cmd(sock, BRDGSIFFLGS, &req, sizeof(req), 1) < 0) |
| 125 | err(1, "unable to set bridge flags"); |
| 126 | } |
| 127 | |
| 128 | static void |
| 129 | bridge_interfaces(int s, const char *prefix) |
no test coverage detected