fixed case with wildcard peer ID and static peer address
authorAndreas Steffen <andreas.steffen@strongswan.org>
Tue, 28 Nov 2006 16:01:15 +0000 (16:01 -0000)
committerAndreas Steffen <andreas.steffen@strongswan.org>
Tue, 28 Nov 2006 16:01:15 +0000 (16:01 -0000)
src/pluto/ipsec_doi.c

index be5a7ad..57b3161 100644 (file)
@@ -3048,6 +3048,13 @@ main_inI1_outR1(struct msg_digest *md)
            c = rw_instantiate(c, &md->sender, md->sender_port, NULL, NULL);
        }
     }
+    else if (c->kind == CK_TEMPLATE)
+    {
+       /* Create an instance
+        * This is a rare case: wildcard peer ID but static peer IP address
+        */
+        c = rw_instantiate(c, &md->sender, md->sender_port, NULL, &c->spd.that.id);
+    }
 
     /* Set up state */
     md->st = st = new_state();