IPsec crashes



  • I think I'm running what's more or less one of the last RC0 versions that installs properly.
    My IPsec links are (mostly?) up, so things seem to work (mostly).

    Still, I keep semi-regularly these sort of crash reports:

    Crash report begins.  Anonymous machine information:
    
    amd64
    8.3-RELEASE-p8
    FreeBSD 8.3-RELEASE-p8 #1: Fri May 31 09:46:00 EDT 2013     root@snapshots-8_3-amd64.builders.pfsense.org:/usr/obj.pfSense/usr/pfSensesrc/src/sys/pfSense_SMP.8
    
    Crash report details:
    
    PHP Errors:
    [02-Jun-2013 03:28:45 Etc/UTC] PHP Fatal error:  Call to undefined function ipsec_get_phase1_src() in /etc/inc/vpn.inc on line 151
    [02-Jun-2013 13:57:09 Etc/UTC] PHP Fatal error:  Call to undefined function ipsec_get_phase1_src() in /etc/inc/vpn.inc on line 151
    
    Filename: /var/crash/minfree
    2048
    
    

    Any clue what's going on?



  • I'm no expert but I'll have a first stab.  On one of my systems, that line calls a function called ipsec_get_phase1_src.  A quick grep finds /etc/inc/ipsec.inc which has a function around line 150:

    
    /*
     * Return phase1 local address
     */
    function ipsec_get_phase1_src(& $ph1ent) {
    
            if ($ph1ent['interface']) {
                    if (!is_ipaddr($ph1ent['interface'])) {
                            if ($ph1ent['protocol'] == "inet6") { 
                                    $if = get_failover_interface($ph1ent['interface'], "inet6");
                                    $interfaceip = get_interface_ipv6($if);
                            } else {
                                    $if = get_failover_interface($ph1ent['interface']);
                                    $interfaceip = get_interface_ip($if);
                            }
                    } else {
                            $interfaceip=$ph1ent['interface'];
                    }
            } else {
                    $if = "wan";
                    if ($ph1ent['protocol'] == "inet6")
                            $interfaceip = get_interface_ipv6($if);
                    else
                            $interfaceip = get_interface_ip($if);
            }
    
            return $interfaceip;
    }
    
    

    Do you have that file and does it contain that function?

    Cheers
    Jon


  • Rebel Alliance Developer Netgate