When I turn on the static arp feature, it executes the code in red.  When I turn off the feature, it does not execute the code in blue.  This appears to be why turning this off is broken, so my question is why?  I don't know how to debug php, but the if statement looks logical.
 
TESTING-SNAPSHOT-02-19-06
 
/etc/inc/services.inc
 
function interfaces_staticarp_configure($if) {
 global $config, $g;
 if(isset($config['system']['developerspew'])) {
  $mt = microtime();
  echo "interfaces_staticarp_configure($if) being called $mt\n";
 }
       
        $ifcfg = $config['interfaces'][$if];
        /* Enable staticarp, if enabled */
        if(isset($config['dhcpd'][$if]['staticarp'])) {
                mwexec("/sbin/ifconfig " . escapeshellarg($ifcfg['if']) . " staticarp " );
                mwexec("/usr/sbin/arp -ad > /dev/null 2>&1 ");

                if (is_array($config['dhcpd'][$if]['staticmap'])) {
                        foreach ($config['dhcpd'][$if]['staticmap'] as $arpent) {
                                mwexec("/usr/sbin/arp -s " . escapeshellarg($arpent['ipaddr']) . " " . escapeshellarg($arpent['mac']));
                        }
                       
                }
        } else {
                mwexec("/sbin/ifconfig " . escapeshellarg($ifcfg['if']) . " -staticarp " );
                mwexec("/usr/sbin/arp -ad > /dev/null 2>&1 ");

        }
        return 0;
}

Reply via email to