]> git.ipfire.org Git - people/ms/strongswan.git/blobdiff - src/libcharon/sa/ikev2/tasks/ike_vendor.c
ike-vendor: Add some Microsoft vendor IDs
[people/ms/strongswan.git] / src / libcharon / sa / ikev2 / tasks / ike_vendor.c
index fb29d05cd0c604f9efa9df962ee3f104849515b0..cb3c270dc9fc46fb7e7dfd51afe6cc512e3351ea 100644 (file)
@@ -76,6 +76,16 @@ static vid_data_t vids[] = {
          "CISCO(COPYRIGHT)&Copyright (c) 2009 Cisco Systems, Inc." },
        { "FRAGMENTATION", 0, 16,
          "\x40\x48\xb7\xd5\x6e\xbc\xe8\x85\x25\xe7\xde\x7f\x00\xd6\xc2\xd3"},
+       { "MS NT5 ISAKMPOAKLEY v7", 0, 20,
+         "\x1e\x2b\x51\x69\x05\x99\x1c\x7d\x7c\x96\xfc\xbf\xb5\x87\xe4\x61\x00\x00\x00\x07"},
+       { "MS NT5 ISAKMPOAKLEY v8", 0, 20,
+         "\x1e\x2b\x51\x69\x05\x99\x1c\x7d\x7c\x96\xfc\xbf\xb5\x87\xe4\x61\x00\x00\x00\x08"},
+       { "MS NT5 ISAKMPOAKLEY v9", 0, 20,
+         "\x1e\x2b\x51\x69\x05\x99\x1c\x7d\x7c\x96\xfc\xbf\xb5\x87\xe4\x61\x00\x00\x00\x09"},
+       { "MS-Negotiation Discovery Capable", 0, 16,
+         "\xfb\x1d\xe3\xcd\xf3\x41\xb7\xea\x16\xb7\xe5\xbe\x08\x55\xf1\x20"},
+       { "Vid-Initial-Contact", 0, 16,
+         "\x26\x24\x4d\x38\xed\xdb\x61\xb3\x17\x2a\x36\xe3\xd0\xcf\xb8\x19"},
 };
 
 METHOD(task_t, build, status_t,
@@ -86,13 +96,13 @@ METHOD(task_t, build, status_t,
        int i;
 
        strongswan = lib->settings->get_bool(lib->settings,
-                                                       "%s.send_vendor_id", FALSE, charon->name);
+                                                       "%s.send_vendor_id", FALSE, lib->ns);
        for (i = 0; i < countof(vids); i++)
        {
                if (vids[i].extension == EXT_STRONGSWAN && strongswan)
                {
                        DBG2(DBG_IKE, "sending %s vendor ID", vids[i].desc);
-                       vid = vendor_id_payload_create_data(VENDOR_ID,
+                       vid = vendor_id_payload_create_data(PLV2_VENDOR_ID,
                                                                                chunk_clone(get_vid_data(&vids[i])));
                        message->add_payload(message, &vid->payload_interface);
                }
@@ -111,7 +121,7 @@ METHOD(task_t, process, status_t,
        enumerator = message->create_payload_enumerator(message);
        while (enumerator->enumerate(enumerator, &payload))
        {
-               if (payload->get_type(payload) == VENDOR_ID)
+               if (payload->get_type(payload) == PLV2_VENDOR_ID)
                {
                        vendor_id_payload_t *vid;
                        chunk_t data;