aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTobias Brunner <tobias@strongswan.org>2009-12-01 18:18:49 +0100
committerTobias Brunner <tobias@strongswan.org>2010-02-12 10:57:39 +0100
commit38da64fe12cf6fd969fa67ad8e32bdeed365c3dc (patch)
treeb27ac3a4acef8399af1bded4f54a3c53ae1d0fb8
parent71baf5a8f0f80fa3d2a03cfb597b6babe33394dd (diff)
downloadstrongswan-38da64fe12cf6fd969fa67ad8e32bdeed365c3dc.tar.bz2
strongswan-38da64fe12cf6fd969fa67ad8e32bdeed365c3dc.tar.xz
Detect windows hosts to add specific workarounds.
-rw-r--r--src/pluto/demux.h1
-rw-r--r--src/pluto/vendor.c6
2 files changed, 7 insertions, 0 deletions
diff --git a/src/pluto/demux.h b/src/pluto/demux.h
index 4faf6e532..2161bbd02 100644
--- a/src/pluto/demux.h
+++ b/src/pluto/demux.h
@@ -61,6 +61,7 @@ struct msg_digest {
notification_t note; /* reason for failure */
bool dpd; /* peer supports RFC 3706 DPD */
bool openpgp; /* peer supports OpenPGP certificates */
+ bool ms_nt5; /* peer is a windows 2000+ host */
# define PAYLIMIT 40
struct payload_digest
diff --git a/src/pluto/vendor.c b/src/pluto/vendor.c
index 7d3c96c87..bb7167fff 100644
--- a/src/pluto/vendor.c
+++ b/src/pluto/vendor.c
@@ -382,6 +382,12 @@ static void handle_known_vendorid (struct msg_digest *md, const char *vidstr,
vid_useful = TRUE;
break;
+ /* Remote side is a Windows 2000+ host */
+ case VID_MS_NT5:
+ md->ms_nt5 = TRUE;
+ vid_useful = TRUE;
+ break;
+
/*
* Use most recent supported NAT-Traversal method and ignore the
* other ones (implementations will send all supported methods but