Martin Willi
23750961d5
thread-value: Defer cleanup handling to thread termination on Windows
...
Instead of cleaning up all thread-values during destruction, cleanup handler
is invoked when a thread detaches. Thread detaching is cough using the Windows
DllMain() entry point, and allows us to basically revert 204098a7 .
Using this mechanism, we make sure that the cleanup handler is invoked by the
the correct thread. Further, this mechanism works for externally-spawned
threads which run outside of our thread_cb() routine, and works more efficiently
with short-running threads.
2014-06-17 15:19:40 +02:00
Martin Willi
2d846c2035
socket-win: Use non-overlapped I/O and socket event selection
...
The use of overlapped I/O was incorrect, as we passed stack based buffers, but
did not cancel/wait for pending completion on all sockets. Our receive-from-all
socket interface is actually tricky to implement using overlapped I/O. Switch
to WSAEventSelect() event management, which can be canceled properly while
working in a select()-like way.
2014-06-17 15:19:25 +02:00
Martin Willi
31f2696076
Merge branch 'attr-enum'
...
Introduces a handle_vips() hook very similar to assign_vips(), but for clients
handling virtual IPs and other configuration attributes. Non-handled attributes
are stored on the IKE_SA as well and can be enumerated.
2014-06-17 15:15:02 +02:00
Martin Willi
eef7427b0f
bus: Add a handle_vips() hook invoked after handling configuration attributes
...
Similar to assign_vips() used by a peer assigning virtual IPs to the other peer,
the handle_vips() hook gets invoked on a peers after receiving attributes. On
release of the same attributes the hook gets invoked again.
This is useful to inspect handled attributes, as the ike_updown() hook is
invoked after authentication, when attributes have not been handled yet.
2014-06-17 15:14:51 +02:00
Martin Willi
7fc98a840b
ikev1: Invoke the assign_vips() bus hook for IKEv1 as well
2014-06-16 15:59:17 +02:00
Martin Willi
9d257034d8
ike: Create an enumerator for (un-)handled configuration attributes on IKE_SA
2014-06-16 15:59:17 +02:00
Martin Willi
5ae3221075
ike: Store unhandled attributes on IKE_SA as well
2014-06-16 15:59:16 +02:00
Andreas Steffen
b16e177e06
Version bump to 5.2.0rc1
2014-06-15 11:40:15 +02:00
Andreas Steffen
733037009f
Mentioned first six swanctl scenarios in NEWS
2014-06-14 15:43:44 +02:00
Andreas Steffen
39d6469d76
Added swanctl/rw-psk-fqdn and swanctl/rw-psk-ipv4 scenarios
2014-06-14 15:40:23 +02:00
Andreas Steffen
3eb22f1f00
Single-line --raw mode simplifies evaltest of swanctl scenarios
2014-06-14 15:40:23 +02:00
Andreas Steffen
dacb75f5c0
Split swanctl --raw mode into single-line and --pretty mode
2014-06-14 15:40:22 +02:00
Andreas Steffen
12d618e280
Added swanctl/ip-pool-db scenario
2014-06-11 18:12:35 +02:00
Andreas Steffen
cda2a1e4dc
Updated strongTNC configuration
2014-06-11 18:12:34 +02:00
Andreas Steffen
d643f2cf91
Added swanctl/ip-pool scenario
2014-06-10 16:48:16 +02:00
Andreas Steffen
3a9602d58b
Allow multiple hash values in the file reference database
2014-06-10 16:48:15 +02:00
Andreas Steffen
c621847395
Added swanctl/rw-cert scenario
2014-06-10 16:48:15 +02:00
Andreas Steffen
8fc0eae37b
Added Android 4.3 and 4.4.3 to imv database
2014-06-10 16:19:00 +02:00
Andreas Steffen
b09016377a
Define default swanctl credentials in hosts directory
2014-06-10 16:19:00 +02:00
Andreas Steffen
6d092615e3
Added missing units (s = seconds)
2014-06-10 16:18:23 +02:00
Andreas Steffen
352fd7a94b
Fixes in SWID entity support
2014-06-08 11:13:51 +02:00
Martin Willi
4f31b3f724
Merge branch 'win-32bit'
...
Fixes some issues when building 32-bit Windows binaries. Mostly related
to the call API. Introduces a Travis 32-bit Windows build variant.
2014-06-06 16:33:50 +02:00
Martin Willi
fd372e13a2
travis: Add a Windows 32-bit variant build test
2014-06-06 16:28:28 +02:00
Martin Willi
9c62511c08
windows: Link against psapi32
...
On some version GetModuleFileNameEx/GetModuleInformation is in psapi32 instead
of kernel32. We link to both libraries to make sure we have it.
2014-06-06 16:28:28 +02:00
Martin Willi
8c2c63e09d
backtrace: Use GetModuleInformation/GetModuleFileNameEx directly on Win32
...
The K32 variants are actually needed on 64-bit only.
2014-06-06 16:28:28 +02:00
Martin Willi
cab59c73fc
windows: Use WINAPI call convention for Windows API callbacks
...
For x86_64 it does not actually matter, but for i686 builds the call convention
is different with WINAPI.
2014-06-06 16:28:28 +02:00
Martin Willi
bd19e27ae3
windows: Do not check if having clock_gettime()
...
Windows does not have it, but libwinpthread has. If this library is available
during build, it will be linked, which we prefer to avoid.
2014-06-06 15:34:12 +02:00
Andreas Steffen
9d228ddb04
Version bump to 5.2.0dr6
2014-06-06 11:18:17 +02:00
Andreas Steffen
e247acb8a9
Ubuntu 14.04 updated to 3.13.0-29 kernel
2014-06-06 11:18:17 +02:00
Andreas Steffen
438df3d696
Extended pt-tls-client PLUGINS list
2014-06-06 11:18:17 +02:00
Andreas Steffen
b23c7d6a38
Updated REST API
2014-06-06 10:56:12 +02:00
Tobias Brunner
35e08cde3c
android: Add all Android.mk files to the tarball
2014-06-06 10:12:26 +02:00
Andreas Steffen
18ba2a3035
Fixed typo in strongswan.conf
2014-06-05 11:26:54 +02:00
Martin Willi
4c5e52f52c
NEWS: Introduce Windows support
2014-06-04 16:41:50 +02:00
Martin Willi
c81a03e300
Merge branch 'win-fetcher'
...
Implements a HTTP/HTTPS fetcher for the Windows platform using the native
WinHTTP API.
2014-06-04 16:35:33 +02:00
Martin Willi
c572401b34
travis: Build "all" tests without Windows HTTP fetcher
...
We don't include it in the Windows build test either, as MinGW does not come
with -lwinhttp.
2014-06-04 16:34:16 +02:00
Martin Willi
f48c26bce3
pki: Support complex trustchain and revocation checking in --verify
2014-06-04 16:34:16 +02:00
Martin Willi
74eedc8061
unit-tests: Zero-initialize chunk to avoid free on non-successful fetch
...
If the fetch fails, the fetcher is not required to return an empty chunk. Avoid
the resulting invalid free() by initializing data.ptr to NULL.
2014-06-04 16:34:16 +02:00
Martin Willi
8a072fc50a
winhttp: Support basic authentication for URLs having credentials
2014-06-04 16:34:16 +02:00
Martin Willi
2e0816e1df
winhttp: Support new response code fetcher option
2014-06-04 16:34:15 +02:00
Martin Willi
6f90fc8061
winhttp: Implement a http(s) fetcher based on Microsofts WinHTTP API
2014-06-04 16:34:15 +02:00
Martin Willi
d2859f5251
Merge branch 'win-kernel'
...
Adds the kernel-iph and kernel-wfp kernel backends for the Windows platform.
kernel-iph provides a networking backend using the IP Helper native Windows
API, while the kernel-wfp backend implements an interface to the Windows Kernel
IPsec layer using the Windows Filtering Platform API.
2014-06-04 16:32:23 +02:00
Martin Willi
4732e29a1d
travis: Build "all" tests without Windows kernel backends
2014-06-04 16:32:12 +02:00
Martin Willi
4b9848a2cc
kernel-wfp: Include Windows header patch for MinGW 4.8.1
2014-06-04 16:32:12 +02:00
Martin Willi
75afbeee21
kernel-wfp: Clone acquire traffic selectors only if they exist
2014-06-04 16:32:11 +02:00
Martin Willi
78bde29a7c
kernel-wfp: Install routes for trap policies
2014-06-04 16:32:11 +02:00
Martin Willi
e36d1d4124
kernel-wfp: Refactor route management to separate function
2014-06-04 16:32:11 +02:00
Martin Willi
4a8ba369b6
kernel-wfp: Install tunnel mode policies to appropriate sub-layers
...
While it is unclear if this has any effect at all, we prefer specific sublayers
to install policies as suggested.
2014-06-04 16:32:11 +02:00
Martin Willi
be32be01a8
kernel-wfp: Declare GUIDs and auth/cipher configs missing in some MinGW builds
2014-06-04 16:32:11 +02:00
Martin Willi
4b51280344
kernel-wfp: Support multiple traffic selectors on tunnel mode SAs
2014-06-04 16:32:11 +02:00