aboutsummaryrefslogtreecommitdiffstats
path: root/src/starter/confread.c
diff options
context:
space:
mode:
authorMartin Willi <martin@revosec.ch>2012-08-27 11:19:46 +0200
committerMartin Willi <martin@revosec.ch>2012-08-30 16:43:42 +0200
commit96c2b3cf89aa1825d70c51ddb3d800ed4720d6c0 (patch)
treeecd0ebc021baeefb9ff204c8f199b303f8447540 /src/starter/confread.c
parent497ce2cf51d3e80302e24e5bdf7df566d80b4828 (diff)
downloadstrongswan-96c2b3cf89aa1825d70c51ddb3d800ed4720d6c0.tar.bz2
strongswan-96c2b3cf89aa1825d70c51ddb3d800ed4720d6c0.tar.xz
Support multiple addresses/pools in left/rightsourceip
Diffstat (limited to 'src/starter/confread.c')
-rw-r--r--src/starter/confread.c53
1 files changed, 0 insertions, 53 deletions
diff --git a/src/starter/confread.c b/src/starter/confread.c
index 9199fce18..f30f2188c 100644
--- a/src/starter/confread.c
+++ b/src/starter/confread.c
@@ -231,59 +231,6 @@ static void kw_end(starter_conn_t *conn, starter_end_t *end, kw_token_t token,
end->host = strdupnull(value);
break;
case KW_SOURCEIP:
- if (value[0] == '%')
- {
- if (streq(value, "%modeconfig") || streq(value, "%modecfg") ||
- streq(value, "%config") || streq(value, "%cfg"))
- {
- /* request ip via config payload */
- free(end->sourceip);
- end->sourceip = NULL;
- end->sourceip_mask = 1;
- }
- else
- { /* %poolname, strip %, serve ip requests */
- free(end->sourceip);
- end->sourceip = strdupnull(value+1);
- end->sourceip_mask = 0;
- }
- end->modecfg = TRUE;
- }
- else
- {
- host_t *host;
- char *sep;
-
- sep = strchr(value, '/');
- if (sep)
- { /* CIDR notation, address pool */
- *sep = '\0';
- host = host_create_from_string(value, 0);
- if (!host)
- {
- DBG1(DBG_APP, "# bad subnet: %s=%s", name, value);
- goto err;
- }
- host->destroy(host);
- free(end->sourceip);
- end->sourceip = strdupnull(value);
- end->sourceip_mask = atoi(sep + 1);
- /* restore the original text in case also= is used */
- *sep = '/';
- }
- else
- { /* fixed srcip */
- host = host_create_from_string(value, 0);
- if (!host)
- {
- DBG1(DBG_APP, "# bad addr: %s=%s", name, value);
- goto err;
- }
- end->sourceip_mask = (host->get_family(host) == AF_INET) ?
- 32 : 128;
- host->destroy(host);
- }
- }
conn->mode = MODE_TUNNEL;
conn->proxy_mode = FALSE;
break;