Bug #12947 » dhcp6c-renew-12947.diff
| src/etc/inc/interfaces.inc | ||
|---|---|---|
|
if ($debugOption == '-D') {
|
||
|
$dhcp6cscriptwithoutra .= "/usr/bin/logger -t dhcp6c \"dhcp6c EXIT or RELEASE on {$wanif} running rc.newwanipv6\"\n";
|
||
|
}
|
||
|
$dhcp6cscriptwithoutra .= "/usr/local/sbin/fcgicli -f /etc/rc.newwanipv6 -d \"interface={$wanif}&dmnames=\${dmnames}&dmips=\${dmips}\"\n";
|
||
|
$dhcp6cscriptwithoutra .= "/usr/local/sbin/fcgicli -f /etc/rc.newwanipv6 -d \"interface={$wanif}&dmnames=\${dmnames}&dmips=\${dmips}&reason=\${REASON}\"\n";
|
||
|
$dhcp6cscriptwithoutra .= ";;\n";
|
||
|
$dhcp6cscriptwithoutra .= "RENEW|INFO)\n";
|
||
|
$dhcp6cscriptwithoutra .= "RENEW)\n";
|
||
|
if ($debugOption == '-D') {
|
||
|
$dhcp6cscriptwithoutra .= "/usr/bin/logger -t dhcp6c \"dhcp6c renew, no change - bypassing update on {$wanif}\"\n";
|
||
|
$dhcp6cscriptwithoutra .= "/usr/bin/logger -t dhcp6c \"dhcp6c renew on {$wanif}\"\n";
|
||
|
}
|
||
|
$dhcp6cscriptwithoutra .= "/usr/local/sbin/fcgicli -f /etc/rc.newwanipv6 -d \"interface={$wanif}&dmnames=\${dmnames}&dmips=\${dmips}&reason=\${REASON}\"\n";
|
||
|
$dhcp6cscriptwithoutra .= ";;\n";
|
||
|
$dhcp6cscriptwithoutra .= "INFO)\n";
|
||
|
if ($debugOption == '-D') {
|
||
|
$dhcp6cscriptwithoutra .= "/usr/bin/logger -t dhcp6c \"dhcp6c info request on {$wanif}, no changes\"\n";
|
||
|
}
|
||
|
$dhcp6cscriptwithoutra .= "esac\n";
|
||
|
if (!@file_put_contents(
|
||
| ... | ... | |
|
if ($debugOption == '-D') {
|
||
|
$dhcp6cscript .= "/usr/bin/logger -t dhcp6c \"dhcp6c RELEASE, REQUEST or EXIT on {$wanif} running rc.newwanipv6\"\n";
|
||
|
}
|
||
|
$dhcp6cscript .= "/usr/local/sbin/fcgicli -f /etc/rc.newwanipv6 -d \"interface={$wanif}&dmnames=\${dmnames}&dmips=\${dmips}\"\n";
|
||
|
$dhcp6cscript .= "/usr/local/sbin/fcgicli -f /etc/rc.newwanipv6 -d \"interface={$wanif}&dmnames=\${dmnames}&dmips=\${dmips}&reason=\${REASON}\"\n";
|
||
|
$dhcp6cscript .= ";;\n";
|
||
|
$dhcp6cscript .= "RENEW)\n";
|
||
|
if ($debugOption == '-D') {
|
||
|
$dhcp6cscript .= "/usr/bin/logger -t dhcp6c \"dhcp6c renew on {$wanif}\"\n";
|
||
|
}
|
||
|
$dhcp6cscript .= "/usr/local/sbin/fcgicli -f /etc/rc.newwanipv6 -d \"interface={$wanif}&dmnames=\${dmnames}&dmips=\${dmips}&reason=\${REASON}\"\n";
|
||
|
$dhcp6cscript .= ";;\n";
|
||
|
$dhcp6cscript .= "RENEW|INFO)\n";
|
||
|
$dhcp6cscript .= "INFO)\n";
|
||
|
if ($debugOption == '-D') {
|
||
|
$dhcp6cscript .= "/usr/bin/logger -t dhcp6c \"dhcp6c renew, no change - bypassing update on {$wanif}\"\n";
|
||
|
$dhcp6cscript .= "/usr/bin/logger -t dhcp6c \"dhcp6c info request on {$wanif}, no changes\"\n";
|
||
|
}
|
||
|
$dhcp6cscript .= "esac\n";
|
||
|
$rtsold_ra_ifs[] = $wanif;
|
||
| src/etc/rc.newwanipv6 | ||
|---|---|---|
|
return;
|
||
|
}
|
||
|
if (isset($_GET['reason'])) {
|
||
|
$reason = $_GET['reason'];
|
||
|
} else {
|
||
|
$reason = getenv("REASON");
|
||
|
}
|
||
|
if ((strtolower($reason) == "renew") &&
|
||
|
file_exists("{$g['vardb_path']}/{$interface}_ipv6")) {
|
||
|
/* Compare current WAN IPv6 to file */
|
||
|
$old_ipv6 = chop(file_get_contents("/var/db/${interface}_ipv6"));
|
||
|
if (is_ipaddrv6($old_ipv6) && ($old_ipv6 != $curwanipv6)) {
|
||
|
log_error("rc.newwanipv6: IPv6 address changed for interface {$interface_descr} [{$interface}] (Old: {$old_ipv6}, New: {$curwanipv6}).");
|
||
|
} else {
|
||
|
log_error("rc.newwanipv6: No change in IPv6 address for interface {$interface_descr} [{$interface}]: {$curwanipv6}.");
|
||
|
return;
|
||
|
}
|
||
|
}
|
||
|
if (isset($_GET['dmips'])) {
|
||
|
$new_domain_name_servers = $_GET['dmips'];
|
||
|
} else {
|
||