added natip support

This commit is contained in:
Andreas Steffen
2006-10-25 08:47:02 +00:00
parent 7b220e7a9d
commit e00cc0641d
+5 -2
View File
@@ -845,6 +845,7 @@ extract_end(struct end *dst, const whack_end_t *src, const char *which)
dst->host_addr = src->host_addr; dst->host_addr = src->host_addr;
dst->host_nexthop = src->host_nexthop; dst->host_nexthop = src->host_nexthop;
dst->host_srcip = src->host_srcip; dst->host_srcip = src->host_srcip;
dst->has_natip = src->has_natip;
dst->client = src->client; dst->client = src->client;
dst->protocol = src->protocol; dst->protocol = src->protocol;
dst->port = src->port; dst->port = src->port;
@@ -863,6 +864,7 @@ extract_end(struct end *dst, const whack_end_t *src, const char *which)
*/ */
if (addrbytesptr(&dst->host_srcip, NULL) if (addrbytesptr(&dst->host_srcip, NULL)
&& !isanyaddr(&dst->host_srcip) && !isanyaddr(&dst->host_srcip)
&& !dst->has_natip
&& !dst->has_client) && !dst->has_client)
{ {
err_t ugh = addrtosubnet(&dst->host_srcip, &dst->client); err_t ugh = addrtosubnet(&dst->host_srcip, &dst->client);
@@ -1985,7 +1987,8 @@ cannot_oppo(struct connection *c
char state_buf2[LOG_WIDTH]; char state_buf2[LOG_WIDTH];
time_t n = now(); time_t n = now();
fmt_state(st, n, state_buf, sizeof(state_buf) fmt_state(FALSE, st, n
, state_buf, sizeof(state_buf)
, state_buf2, sizeof(state_buf2)); , state_buf2, sizeof(state_buf2));
DBG_log("cannot_oppo, failure SA1: %s", state_buf); DBG_log("cannot_oppo, failure SA1: %s", state_buf);
DBG_log("cannot_oppo, failure SA2: %s", state_buf2); DBG_log("cannot_oppo, failure SA2: %s", state_buf2);
@@ -3031,7 +3034,7 @@ ISAKMP_SA_established(struct connection *c, so_serial_t serial)
/* the connection is now oriented so that we are able to determine /* the connection is now oriented so that we are able to determine
* whether we are a mode config server with a virtual IP to send. * whether we are a mode config server with a virtual IP to send.
*/ */
if (!isanyaddr(&c->spd.that.host_srcip)) if (!isanyaddr(&c->spd.that.host_srcip) && !c->spd.that.has_natip)
c->spd.that.modecfg = TRUE; c->spd.that.modecfg = TRUE;
if (uniqueIDs) if (uniqueIDs)