]>
git.ipfire.org Git - thirdparty/strongswan.git/log
Martin Willi [Fri, 6 Dec 2013 10:33:40 +0000 (11:33 +0100)]
thread-value: Immediately cleanup all Windows TLS values on destroy
Martin Willi [Wed, 28 May 2014 15:34:48 +0000 (17:34 +0200)]
windows: Prevent queueing of multiple thread cancel APCs
This avoids any races during cleanup invocation if multiple cancel() requests
come in.
Martin Willi [Mon, 21 Oct 2013 16:07:51 +0000 (18:07 +0200)]
windows: Provide a complete native Windows threading backend
Martin Willi [Wed, 23 Oct 2013 13:50:10 +0000 (15:50 +0200)]
windows: Provide a cancellable usleep(), but with ms resolution only
Martin Willi [Mon, 21 Oct 2013 14:58:54 +0000 (16:58 +0200)]
windows: Add a sleep function acting as cancellation point
Martin Willi [Wed, 23 Oct 2013 14:44:14 +0000 (16:44 +0200)]
windows: Provide a sched_yield() implementation
Martin Willi [Mon, 10 Mar 2014 16:06:57 +0000 (17:06 +0100)]
libipsec: Avoid name clash with sched.h clone()
Martin Willi [Fri, 18 Oct 2013 12:19:32 +0000 (14:19 +0200)]
windows: Provide a time_monotonic() based on GetTickCount64()
Martin Willi [Mon, 21 Oct 2013 11:00:29 +0000 (13:00 +0200)]
library: Change init/deinit order to allow utils to depend on threading
Martin Willi [Fri, 18 Oct 2013 13:04:55 +0000 (15:04 +0200)]
chunk: Don't depend on pthread directly
Martin Willi [Wed, 28 May 2014 10:17:15 +0000 (12:17 +0200)]
utils: Don't directly depend on pthread
Martin Willi [Wed, 28 May 2014 10:15:10 +0000 (12:15 +0200)]
strerror: Don't directly depend on pthread
Martin Willi [Thu, 17 Oct 2013 15:12:34 +0000 (17:12 +0200)]
windows: Link libhydra against Winsock2
Martin Willi [Thu, 17 Oct 2013 14:23:43 +0000 (16:23 +0200)]
windows: Provide a strdup variant safe when passing zero-length strings
Martin Willi [Thu, 17 Oct 2013 13:09:17 +0000 (15:09 +0200)]
unit-tests: Don't test Unix socket stream/services on Windows
Martin Willi [Wed, 16 Oct 2013 17:32:15 +0000 (19:32 +0200)]
unit-tests: Use send/recv on socket in watcher tests
Windows does not support read/write on sockets.
Martin Willi [Fri, 11 Oct 2013 13:32:10 +0000 (15:32 +0200)]
stream: Separate TCP/Unix stream helpers from stream/service implementations
This allows us to disable Unix sockets cleanly on Windows. Replaces some
read/write calls with recv/send counterparts, as Winsock does not like
read/writes.
Martin Willi [Thu, 17 Oct 2013 09:56:15 +0000 (11:56 +0200)]
watcher: Add Windows support
Instead of a pipe we use a TCP socketpair (can't select() a _pipe()), and
Windsock2 send/recv functions instead of read/write.
Currently supported (and required) are file descriptors provided by Winsock
only; we might use a separate mechanism for traditional file handles if
required (or switch to Windows events and WaitForMultipleObjects) for a future
version.
Martin Willi [Thu, 17 Oct 2013 09:32:48 +0000 (11:32 +0200)]
windows: Map WSAGetLastError() to errno failures in wrapped send/recv/from/to
Martin Willi [Wed, 16 Oct 2013 16:31:24 +0000 (18:31 +0200)]
windows: Add send/recv and sendto/recvfrom wrappers supporting MSG_DONTWAIT
Martin Willi [Wed, 16 Oct 2013 15:44:32 +0000 (17:44 +0200)]
windows: Implement socketpair() using TCP sockets
Martin Willi [Wed, 16 Oct 2013 15:27:19 +0000 (17:27 +0200)]
windows: Add utils_init/deinit functions to initialize Winsock2
Martin Willi [Tue, 15 Oct 2013 16:27:27 +0000 (18:27 +0200)]
windows: Provide a setenv() wrapper
Martin Willi [Thu, 21 Nov 2013 15:26:18 +0000 (16:26 +0100)]
unit-tests: Use Windows path for chunk tests, and socket functions if required
Martin Willi [Tue, 15 Oct 2013 16:12:39 +0000 (18:12 +0200)]
unit-tests: Don't depend on sockaddr_un to test invalid host_t family
Martin Willi [Tue, 15 Oct 2013 16:09:06 +0000 (18:09 +0200)]
.gitignore: Add Windows .exe files
Martin Willi [Tue, 15 Oct 2013 15:40:58 +0000 (17:40 +0200)]
unit-tests: Add support for Windows build
Instead of signals we catch Windows exceptions. Currently not supported are
timers, which is more a convenience thing anyway.
Martin Willi [Tue, 15 Oct 2013 15:40:06 +0000 (17:40 +0200)]
windows: Fix up PRI* printf formatters when building against own backend
Martin Willi [Tue, 15 Oct 2013 14:23:44 +0000 (16:23 +0200)]
windows: Use localtime/gmtime to implement _r variants
The _s variants and friends do not seem to work on Windows 7 and always fail.
Martin Willi [Tue, 15 Oct 2013 14:11:19 +0000 (16:11 +0200)]
asn1: Return a zeroed ASN1 time if gmtime_r() conversion fails
Martin Willi [Tue, 15 Oct 2013 14:10:05 +0000 (16:10 +0200)]
utils: Printf() defined time output should gmtime/localtime_r() fail
Martin Willi [Thu, 2 Jan 2014 13:33:32 +0000 (14:33 +0100)]
backtrace: Inline esc() helper, making it available to all build variants
Martin Willi [Tue, 19 Nov 2013 17:40:51 +0000 (18:40 +0100)]
backtrace: Support backtraces on Windows without DbgHelp
While DbgHelp provides a convenient API to create backtraces, any executable
linking against DbgHelp gets a more than a significant slow down. Further, it
can only lookup global symbols, as it expects PDB files we can't produce with a
MinGW build.
With some core Kernel32.dll functionality, we can capture stack traces much
faster. Together with the optional libbfd, we can print very fine backtraces.
When --enable-bfd-backtraces is used on Windows, a libbfd.dll is required for
the build. Such a DLL can be created from the binutils sources using:
# build binutils with mingw...
# extract archive members from binutils libraries
x86_64-w64-mingw32-ar x $BINUTILS/bfd/.libs/libbfd.a
x86_64-w64-mingw32-ar x $BINUTILS/intl/libintl.a
x86_64-w64-mingw32-ar x $BINUTILS/libiberty/libiberty.a
# create self-contained libbfd.a, with index
x86_64-w64-mingw32-ar qs libbfd.a *.o
# create DLL from static library
x86_64-w64-mingw32-dlltool -e libbfd.o -l libbfd.lib libbfd.a
x86_64-w64-mingw32-gcc -shared libbfd.a libbfd.o -o libbfd.dll
Martin Willi [Mon, 14 Oct 2013 09:55:12 +0000 (11:55 +0200)]
backtrace: Add DbgHelp based Windows support for creating/printing backtraces
Martin Willi [Tue, 15 Oct 2013 13:45:11 +0000 (15:45 +0200)]
printf-hook-builtin: Support Windows console colors using TTY escape codes
Martin Willi [Fri, 11 Oct 2013 16:03:47 +0000 (18:03 +0200)]
windows: Link libstrongswan against ws2_32.dll
Martin Willi [Fri, 11 Oct 2013 15:48:33 +0000 (17:48 +0200)]
capabilities: Add build support for Windows
We might extend it in the future using some Windows rights management.
Martin Willi [Fri, 11 Oct 2013 15:27:25 +0000 (17:27 +0200)]
windows: Use _getmaxstdio as replacement for syscall(_SC_OPEN_MAX)
Martin Willi [Fri, 11 Oct 2013 15:26:35 +0000 (17:26 +0200)]
windows: replace mkdir() with Windows _mkdir() variant
Martin Willi [Fri, 11 Oct 2013 15:14:04 +0000 (17:14 +0200)]
thread: Add a Windows pthread variant to print thread identifiers
Martin Willi [Fri, 11 Oct 2013 14:58:02 +0000 (16:58 +0200)]
windows: Provide wrappers for dlopen() function family
Martin Willi [Fri, 11 Oct 2013 13:59:37 +0000 (15:59 +0200)]
crl: Undefine <wincrypt.h>'s CRL_REASON_* and use our enum values instead
Martin Willi [Fri, 11 Oct 2013 13:43:30 +0000 (15:43 +0200)]
tun-device: Rearrange headers to build properly when tun devices not supported
Martin Willi [Fri, 11 Oct 2013 13:26:01 +0000 (15:26 +0200)]
configure.ac: Define USE_WINDOWS for Automake when building for Windows
Martin Willi [Fri, 11 Oct 2013 12:45:56 +0000 (14:45 +0200)]
windows: Add a common Windows header for platform specific wrappers
Include some more basic system headers in utils.h, so we can use that common
header on the different platforms.
Martin Willi [Tue, 3 Jun 2014 10:20:28 +0000 (12:20 +0200)]
imv-swid: Cast json object strings when using it as chunk pointer
While the string is actually const, we don't have a const chunk to handle such
strings properly in chunks. Fixes compiler warnings.
Martin Willi [Tue, 3 Jun 2014 08:16:33 +0000 (10:16 +0200)]
travis: Install libjson dependency for "all" tests
Tobias Brunner [Mon, 2 Jun 2014 15:45:42 +0000 (17:45 +0200)]
testing: Cache packages downloaded with pip for strongTNC
This way no network connections is required to rebuild the root/guest images.
Andreas Steffen [Sun, 1 Jun 2014 19:12:15 +0000 (21:12 +0200)]
First swanctl scenario
Andreas Steffen [Sat, 31 May 2014 18:52:37 +0000 (20:52 +0200)]
Added SWID IMV REST API implementation to NEWS
Andreas Steffen [Sat, 31 May 2014 18:33:19 +0000 (20:33 +0200)]
Allow large lines output by swid_generator to be processed
Andreas Steffen [Sat, 31 May 2014 18:29:21 +0000 (20:29 +0200)]
Make REST POST request timeout configurable
Andreas Steffen [Sat, 31 May 2014 18:23:15 +0000 (20:23 +0200)]
Test SWID REST API ins tnc/tnccs-20-pdp scenarios
Andreas Steffen [Sat, 31 May 2014 18:19:12 +0000 (20:19 +0200)]
Detect RADIUS packet retransmissions
Andreas Steffen [Fri, 30 May 2014 08:00:08 +0000 (10:00 +0200)]
Updated IMC/IMV entries in strongswan.conf man page
Andreas Steffen [Fri, 30 May 2014 07:31:59 +0000 (09:31 +0200)]
Migration from Debian 7.4 to 7.5
Andreas Steffen [Fri, 30 May 2014 07:29:56 +0000 (09:29 +0200)]
Fixed swid_generator interface
Andreas Steffen [Thu, 29 May 2014 11:05:39 +0000 (13:05 +0200)]
Detect oversize SWID tags
Andreas Steffen [Thu, 29 May 2014 11:04:30 +0000 (13:04 +0200)]
max_attr_size is an uint32_t value
Andreas Steffen [Wed, 28 May 2014 13:21:43 +0000 (15:21 +0200)]
Update of Ubuntu 14.04 kernel
Andreas Steffen [Tue, 27 May 2014 19:15:12 +0000 (21:15 +0200)]
Wait for the arrival of the TCPG_PTS_DH_NONCE_PARAMS_RESP
Andreas Steffen [Tue, 27 May 2014 17:36:36 +0000 (19:36 +0200)]
Increased maximum PT-TLS message size to 2MB
Andreas Steffen [Tue, 27 May 2014 17:29:16 +0000 (19:29 +0200)]
log SWID tags and tag IDs on debug level 3
Andreas Steffen [Tue, 27 May 2014 17:03:49 +0000 (19:03 +0200)]
Automatic determination of maximum PB-TNC batch and PA-TNC message size
Andreas Steffen [Tue, 27 May 2014 17:02:36 +0000 (19:02 +0200)]
Completed the command line options of the pt-tls-client
Andreas Steffen [Mon, 26 May 2014 07:36:31 +0000 (09:36 +0200)]
Split TCG SWID Request attribute into chunks if needed
Andreas Steffen [Mon, 26 May 2014 05:51:44 +0000 (07:51 +0200)]
Check for libjson
Andreas Steffen [Sun, 25 May 2014 15:58:36 +0000 (17:58 +0200)]
Added Debian 7.5 product and all Debian armv6l products
Andreas Steffen [Sun, 25 May 2014 15:58:00 +0000 (17:58 +0200)]
Fixed typo in tables.sql
Andreas Steffen [Sat, 24 May 2014 10:26:20 +0000 (12:26 +0200)]
Additional index to improve performance
Andreas Steffen [Fri, 23 May 2014 21:26:44 +0000 (23:26 +0200)]
Support targeted retrieval of SWID tags
Tobias Brunner [Thu, 22 May 2014 13:11:23 +0000 (15:11 +0200)]
curl: Don't set CURLOPT_FAILONERROR
With the strongTNC REST API some errors will actually be accompanied by
a response we want to receive completely.
Andreas Steffen [Fri, 23 May 2014 13:21:38 +0000 (15:21 +0200)]
Implemented SWID REST API
Andreas Steffen [Fri, 23 May 2014 11:45:18 +0000 (13:45 +0200)]
Set entity_name to strongSwan Project
Andreas Steffen [Fri, 23 May 2014 11:35:34 +0000 (13:35 +0200)]
Updated strongSwan SWID Tag from ISO 2009 to 2014 format
Andreas Steffen [Sat, 31 May 2014 18:37:26 +0000 (20:37 +0200)]
Version bump to 5.2.0dr5
Tobias Brunner [Thu, 29 May 2014 10:25:21 +0000 (12:25 +0200)]
Make sure getpass() is available
It's not on Android for example.
Tobias Brunner [Wed, 28 May 2014 16:20:42 +0000 (18:20 +0200)]
starter: Fix build on Android
While the (default) ipsec script does not work on Android starter still
passes the script's name to charon if leftfirewall is configured.
Andreas Steffen [Wed, 21 May 2014 12:00:25 +0000 (14:00 +0200)]
Some more files to measure
Andreas Steffen [Wed, 21 May 2014 11:51:44 +0000 (13:51 +0200)]
Added all SWID tables and example regids
Tobias Brunner [Tue, 20 May 2014 16:56:43 +0000 (18:56 +0200)]
scripts: Ignore settings-test script
Martin Willi [Mon, 19 May 2014 16:04:41 +0000 (18:04 +0200)]
peer-cfg: Add missing UNIQUE_NEVER to unique_policy_names
Tobias Brunner [Mon, 19 May 2014 14:06:52 +0000 (16:06 +0200)]
unit-tests: Sync threads with main thread in test_cleanup_cancel()
Without synchronization threads could get canceled before they could
disable their cancelability.
Tobias Brunner [Mon, 19 May 2014 12:53:24 +0000 (14:53 +0200)]
pfkey: Always include stdint.h
On some systems (e.g. on Debian/kFreeBSD) that header is required when
including ipsec.h, on Linux we require it too when including pfkeyv2.h,
so to simplify things we just always include it.
Tobias Brunner [Mon, 19 May 2014 12:31:22 +0000 (14:31 +0200)]
Merge branch 'fetcher-response-code'
Extends the fetcher API to retrieve the response status code for a request.
Tobias Brunner [Fri, 9 May 2014 17:02:28 +0000 (19:02 +0200)]
soup: Add support to retrieve the response code
Tobias Brunner [Fri, 9 May 2014 16:44:17 +0000 (18:44 +0200)]
unit-tests: Allow some HTTP write operations to fail
Because CURLOPT_FAILONERROR is enabled in the curl plugin an error code
will often (not always) cause the client to close the TCP connection
before the server has written the complete response.
Tobias Brunner [Fri, 9 May 2014 16:35:20 +0000 (18:35 +0200)]
curl: Add support to return the response code
Tobias Brunner [Fri, 9 May 2014 16:34:25 +0000 (18:34 +0200)]
unit-tests: Add a test case for HTTP response codes
Tobias Brunner [Wed, 7 May 2014 14:59:07 +0000 (16:59 +0200)]
fetcher: Add option to retrieve response code from a fetcher
Tobias Brunner [Fri, 9 May 2014 15:42:37 +0000 (17:42 +0200)]
unit-tests: Defer failures by worker threads
In some cases the main thread is not ready to immediately call siglongjmp(),
e.g. if it currently holds a mutex that is later required during
shutdown.
Therefore, we delay handling errors in worker threads until the main
thread performs the next check itself (or the test function ends).
The same issue remains with SIGALRM.
Tobias Brunner [Fri, 9 May 2014 11:28:06 +0000 (13:28 +0200)]
unit-tests: Make sure plugins in the builddir are loaded
When running the tests in GDB the working directory apparently is
different. With the relative path used previously the plugins would not
be found and those installed on the system would get used.
Tobias Brunner [Fri, 16 May 2014 15:43:42 +0000 (17:43 +0200)]
unit-tests: Don't assert failures for unreadable settings files as root
The file can still be read by root even if nobody has read privileges.
Martin Willi [Fri, 16 May 2014 14:54:04 +0000 (16:54 +0200)]
Merge branch 'aead-proposal'
Encode default AEAD encryption algorithms to a proposal separate from non-AEAD
algorithms. RFC 4306 and 5282 where less explicit, but RFC 5996 requires
separate proposals for AEAD and non-AEAD algorithms. As responder we still
accept both encoding variants.
Fixes #573.
Martin Willi [Fri, 16 May 2014 14:18:16 +0000 (16:18 +0200)]
proposal: Don't return a default IKE proposal without encryption/AEAD algs
Martin Willi [Thu, 24 Apr 2014 12:28:57 +0000 (14:28 +0200)]
ike: Add an additional but separate AEAD proposal to CHILD config
This currently has no effect: We don't include AEAD algorithms in the default
ESP proposal, as we don't know if it is supported by the backend. But as we
hopefully get an algorithm query mechanism on kernel interfaces some day, we
add the appropriate functionality nonetheless.
Martin Willi [Thu, 24 Apr 2014 12:24:43 +0000 (14:24 +0200)]
ike: Add an additional but separate AEAD proposal to IKE config, if supported
Martin Willi [Thu, 24 Apr 2014 12:20:21 +0000 (14:20 +0200)]
child-cfg: Allow passing NULL as proposal to add_proposal()
Making the API consistent to the one of ike_cfg.
Martin Willi [Thu, 24 Apr 2014 12:19:12 +0000 (14:19 +0200)]
ike-cfg: Allow passing NULL to add_proposal()
This simplifies adding default proposals with constructors potentially
returning NULL.
Martin Willi [Thu, 24 Apr 2014 12:15:49 +0000 (14:15 +0200)]
proposal: Use an additional "default" constructor specific to AEAD algorithms
This allows a caller to create a separated proposal for supported AEAD
algorithms, as required by RFC 5996.