Fixes #4360 allow marking a connection as responder only, the same behviour as mobile connections

This commit is contained in:
Ermal LUÇI 2015-01-31 19:49:17 +01:00
parent 908edbd3d1
commit fdc9ac09ef
2 changed files with 17 additions and 0 deletions

View File

@ -597,6 +597,9 @@ EOD;
$right_spec = "%any";
$passive = 'add';
} else {
if (isset($ph1ent['responderonly']))
$passive = 'add';
$right_spec = $ph1ent['remote-gateway'];
if (is_ipaddr($right_spec))
$sourcehost = $right_spec;

View File

@ -113,6 +113,8 @@ if (isset($p1index) && $a_phase1[$p1index]) {
$pconfig['reauth_enable'] = true;
if (isset($a_phase1[$p1index]['rekey_enable']))
$pconfig['rekey_enable'] = true;
if (isset($a_phase1[$p1index]['responderonly']))
$pconfig['responderonly'] = true;
if ($a_phase1[$p1index]['dpd_delay'] && $a_phase1[$p1index]['dpd_maxfail']) {
$pconfig['dpd_enable'] = true;
@ -383,6 +385,11 @@ if ($_POST) {
else
unset($ph1ent['rekey_enable']);
if (isset($pconfig['responderonly']))
$ph1ent['responderonly'] = true;
else
unset($ph1ent['responderonly']);
if (isset($pconfig['dpd_enable'])) {
$ph1ent['dpd_delay'] = $pconfig['dpd_delay'];
$ph1ent['dpd_maxfail'] = $pconfig['dpd_maxfail'];
@ -887,6 +894,13 @@ function dpdchkbox_change() {
<?=gettext("Whether rekeying of an IKE_SA should also reauthenticate the peer. In IKEv1, reauthentication is always done."); ?><br />
</td>
</tr>
<tr>
<td width="22%" valign="top" class="vncell"><?=gettext("Only repsonder");?></td>
<td width="78%" class="vtable">
<input name="responderonly" type="checkbox" id="responderonly" value="yes" <?php if (isset($pconfig['responderonly'])) echo "checked=\"checked\""; ?> />
<?=gettext("Whether a connection should be passive on a connection and just wait connectivity from the other peer.."); ?><br />
</td>
</tr>
<tr>
<td width="22%" valign="top" class="vncell"><?=gettext("NAT Traversal"); ?></td>
<td width="78%" class="vtable">