]> git.ipfire.org Git - thirdparty/strongswan.git/commitdiff
swanctl: Pass optional connection name to --initiate/install/uninstall
authorTobias Brunner <tobias@strongswan.org>
Tue, 11 Oct 2016 16:27:29 +0000 (18:27 +0200)
committerTobias Brunner <tobias@strongswan.org>
Thu, 16 Feb 2017 18:24:07 +0000 (19:24 +0100)
src/swanctl/commands/initiate.c
src/swanctl/commands/install.c

index eb7b6adbdc3ee6c4ddf1f17066c41bdd90766f1d..8e452a6f6a9b8a75f1c46636e2e043f2ecf85acf 100644 (file)
@@ -37,7 +37,7 @@ static int initiate(vici_conn_t *conn)
        vici_req_t *req;
        vici_res_t *res;
        command_format_options_t format = COMMAND_FORMAT_NONE;
-       char *arg, *child = NULL;
+       char *arg, *child = NULL, *ike = NULL;
        int ret = 0, timeout = 0, level = 1;
 
        while (TRUE)
@@ -55,6 +55,9 @@ static int initiate(vici_conn_t *conn)
                        case 'c':
                                child = arg;
                                continue;
+                       case 'i':
+                               ike = arg;
+                               continue;
                        case 't':
                                timeout = atoi(arg);
                                continue;
@@ -80,6 +83,10 @@ static int initiate(vici_conn_t *conn)
        {
                vici_add_key_valuef(req, "child", "%s", child);
        }
+       if (ike)
+       {
+               vici_add_key_valuef(req, "ike", "%s", ike);
+       }
        if (timeout)
        {
                vici_add_key_valuef(req, "timeout", "%d", timeout * 1000);
@@ -121,10 +128,11 @@ static void __attribute__ ((constructor))reg()
 {
        command_register((command_t) {
                initiate, 'i', "initiate", "initiate a connection",
-               {"--child <name> [--timeout <s>] [--raw|--pretty]"},
+               {"--child <name> [--ike <name>] [--timeout <s>] [--raw|--pretty]"},
                {
                        {"help",                'h', 0, "show usage information"},
                        {"child",               'c', 1, "initate a CHILD_SA configuration"},
+                       {"ike",                 'i', 1, "name of the connection to which the child belongs"},
                        {"timeout",             't', 1, "timeout in seconds before detaching"},
                        {"raw",                 'r', 0, "dump raw response message"},
                        {"pretty",              'P', 0, "dump raw response message in pretty print"},
index 59c5c24ab9f24a4d372d0c4ad8c036d2b0ba487a..24a397b873407eb62bba227922c94ddd8a828772 100644 (file)
@@ -22,7 +22,7 @@ static int manage_policy(vici_conn_t *conn, char *label)
        vici_req_t *req;
        vici_res_t *res;
        command_format_options_t format = COMMAND_FORMAT_NONE;
-       char *arg, *child = NULL;
+       char *arg, *child = NULL, *ike = NULL;
        int ret = 0;
 
        while (TRUE)
@@ -40,6 +40,9 @@ static int manage_policy(vici_conn_t *conn, char *label)
                        case 'c':
                                child = arg;
                                continue;
+                       case 'i':
+                               ike = arg;
+                               continue;
                        case EOF:
                                break;
                        default:
@@ -52,6 +55,10 @@ static int manage_policy(vici_conn_t *conn, char *label)
        {
                vici_add_key_valuef(req, "child", "%s", child);
        }
+       if (ike)
+       {
+               vici_add_key_valuef(req, "ike", "%s", ike);
+       }
        res = vici_submit(req, conn);
        if (!res)
        {
@@ -98,10 +105,11 @@ static void __attribute__ ((constructor))reg_uninstall()
 {
        command_register((command_t) {
                uninstall, 'u', "uninstall", "uninstall a trap or shunt policy",
-               {"--child <name> [--raw|--pretty]"},
+               {"--child <name> [--ike <name>] [--raw|--pretty]"},
                {
                        {"help",                'h', 0, "show usage information"},
                        {"child",               'c', 1, "CHILD_SA configuration to uninstall"},
+                       {"ike",                 'i', 1, "name of the connection to which the child belongs"},
                        {"raw",                 'r', 0, "dump raw response message"},
                        {"pretty",              'P', 0, "dump raw response message in pretty print"},
                }
@@ -115,10 +123,11 @@ static void __attribute__ ((constructor))reg_install()
 {
        command_register((command_t) {
                install, 'p', "install", "install a trap or shunt policy",
-               {"--child <name> [--raw|--pretty]"},
+               {"--child <name> [--ike <name>] [--raw|--pretty]"},
                {
                        {"help",                'h', 0, "show usage information"},
                        {"child",               'c', 1, "CHILD_SA configuration to install"},
+                       {"ike",                 'i', 1, "name of the connection to which the child belongs"},
                        {"raw",                 'r', 0, "dump raw response message"},
                        {"pretty",              'P', 0, "dump raw response message in pretty print"},
                }