+
+ system 'brctl addif virtual ' . $param->{addif} if $param->{addif};
+ system 'brctl delif virtual ' . $param->{delif} if $param->{delif};
+
+ my $in_virtual;
+
+ my @table =
+ map {
+ my @c = split(/\t+/,$_,4);
+ if ( $#c == 1 ) {
+ $in_virtual->{ $c[1] }++;
+ @c = ( '', '', '', $c[1] );
+ } else {
+ $in_virtual->{ $c[3] }++;
+ }
+ if ( $c[3] =~ m{\d$} ) {
+ $c[3] = qq|<input type=submit name=delif value=$c[3] style="color:red" title="remove $c[3] from bridge">|;
+ }
+ @c
+ } split(/\n/, `brctl show`)
+ ;
+
+ my @add_ifs = grep { ! $in_virtual->{$_} && $_ ne 'virtual' } ip::devices_up;
+
+ push @table, ( '', '', '', html::select( 'addif', @add_ifs ) . qq|<input type=submit value=add></form>| );
+