added a "ipsec down-srcip <start> [<end>]" command to terminate IKE_SAs by remote virtual ip

This commit is contained in:
Martin Willi
2008-07-01 12:48:56 +00:00
parent d01783dba4
commit 131064995a
8 changed files with 141 additions and 0 deletions
+17
View File
@@ -215,6 +215,20 @@ static void stroke_terminate(private_stroke_socket_t *this, stroke_msg_t *msg, F
DBG1(DBG_CFG, "received stroke: terminate '%s'", msg->terminate.name);
this->control->terminate(this->control, msg, out);
}
/**
* terminate a connection by peers virtual IP
*/
static void stroke_terminate_srcip(private_stroke_socket_t *this,
stroke_msg_t *msg, FILE *out)
{
pop_string(msg, &msg->terminate_srcip.start);
pop_string(msg, &msg->terminate_srcip.end);
DBG1(DBG_CFG, "received stroke: terminate-srcip %s-%s",
msg->terminate_srcip.start, msg->terminate_srcip.end);
this->control->terminate_srcip(this->control, msg, out);
}
/**
@@ -430,6 +444,9 @@ static job_requeue_t process(stroke_job_context_t *ctx)
case STR_TERMINATE:
stroke_terminate(this, msg, out);
break;
case STR_TERMINATE_SRCIP:
stroke_terminate_srcip(this, msg, out);
break;
case STR_STATUS:
stroke_status(this, msg, out, FALSE);
break;