aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
| * kernel-wfp: Register a WFP provider to manage IPsec tunnelsMartin Willi2014-06-041-0/+22
| |
| * kernel-wfp: Preliminary support for transport mode connectionsMartin Willi2014-06-042-3/+698
| |
| * kernel-wfp: Fix/Complete some fwpuclnt functionality in MinGWMartin Willi2014-06-044-3/+133
| | | | | | | | | | | | | | | | | | While MinGW declares all the required symbols, some of them are missing in the library files. We provide missing variables locally, functions get a stub that call the GetProcAddress()ed function from the DLL. Also some MinGW headers define some enum values incorrectly, we overload these using defines.
| * kernel-wfp: Open and close a WFP engineMartin Willi2014-06-041-1/+33
| |
| * kernel-wfp: Create userland state for SAs/policies to install in kernelMartin Willi2014-06-041-5/+364
| |
| * kernel-wfp: Add a stub for a Windows Filtering Platform based IPsec backendMartin Willi2014-06-047-0/+365
|/
* Merge branch 'win-socket'Martin Willi2014-06-048-2/+703
|\ | | | | | | | | Adds a socket-win plugin providing an IKE socket implementation for Windows based on the native Winsock2 API.
| * travis: Include socket backend in Windows build testMartin Willi2014-06-041-1/+1
| |
| * travis: Build "all" tests without Windows socket backendMartin Willi2014-06-041-1/+1
| |
| * socket-win: Implement a Windows socket plugin using Winsock2Martin Willi2014-06-047-0/+701
|/
* Merge branch 'win'Martin Willi2014-06-04373-1974/+6730
|\ | | | | | | | | | | | | | | | | | | Ports the strongSwan core libraries and some plugins to the Windows platform using a MinGW based toolchain. Beside generic platform abstraction and the windows.[ch] compatibility layer, this merge introduces a Windows native threading backend and a charon-svc Windows IKE service. Travis adds a MinGW cross-compile build to Windows, and further enables -Werror to let builds fail for all compiler warnings with gcc and Clang.
| * travis: Define a Windows build test using MinGWMartin Willi2014-06-042-2/+20
| |
| * travis: Perform build tests with -WerrorMartin Willi2014-06-041-1/+3
| |
| * windows: Compile with -mno-ms-bitfields if option not set explicitlyMartin Willi2014-06-041-0/+5
| | | | | | | | | | -mms-bitfields is the default in newer MinGWs, but it breaks __attribute__((packed)).
| * configure: Fix attribute((packed)) test when using -WerrorMartin Willi2014-06-041-1/+2
| |
| * configure: Mark conftest variable as unused to pass test with -WerrorMartin Willi2014-06-041-1/+1
| | | | | | | | | | When using -Werror, the warning for the unused variable would let the test fail, even if in6addr_any is available.
| * configure: Don't use -rdynamic with the LLVM toolchainMartin Willi2014-06-041-1/+20
| |
| * charon-svc: Register for stop events not before reaching STATUS_RUNNINGMartin Willi2014-06-041-60/+92
| | | | | | | | | | MSDN SetServiceStatus(): "Do not register to accept controls while the status is SERVICE_START_PENDING or the service can crash."
| * charon-svc: Check if daemon has been initialized before invoking shutdown alertMartin Willi2014-06-041-2/+10
| |
| * swanctl: Stop logging with Ctrl+C on Windows as wellMartin Willi2014-06-041-4/+5
| |
| * vici: Add Windows supportMartin Willi2014-06-047-13/+54
| |
| * windows: Provide POSIX supplement errno values missing in MinGWMartin Willi2014-06-042-23/+147
| | | | | | | | | | MinGW headers do not define these values, but Windows system headers do. Windows defines them for POSIX compatibility, we do the same locally.
| * windows: Provide shutdown(2) operation aliases mapping to those on WindowsMartin Willi2014-06-041-0/+7
| |
| * x509: Check return value when signing attribute certificatesMartin Willi2014-06-041-9/+16
| | | | | | | | | | | | In addition that this lets AC generation fail properly if private key signing fails, it also fixes an issue when compiling on Windows with MinGW 4.8.1, where for some reason the attributeCertificateInfo got encoded incorrectly.
| * unit-tests: Support testable functions on Windows, avoid weak GCC symbolsMartin Willi2014-06-043-61/+61
| | | | | | | | | | | | | | Instead of using weak symbols, we use dlsym() on Windows to find an arbitrary symbol in libtest to detect its linkage. Instead of creating the associated hashtable in the test runner, we maintain it in libstrongswan, making it significantly simpler.
| * unit-tests: Seed chunk_hash() only once, but before creating any hashtablesMartin Willi2014-06-044-9/+14
| | | | | | | | | | | | | | Due to the removal of pthread_once, we manually create the seed for chunk_hash(). With the new testable functions interface, this won't work for the hashtable initiated using __attribute__((constructor)). Enforce seeding before creating that hashtable.
| * pki: Provide a fallback if strptime() not supportedMartin Willi2014-06-042-10/+64
| | | | | | | | | | For simplicity, we support the default pki datetime format only, but optionally accept four digit years for longer lifetimes.
| * openssl: Don't re-enter FIPS mode if we are already using itMartin Willi2014-06-041-2/+3
| | | | | | | | | | | | If FIPS mode has been enabled by other means, under some environments it can't be entered again. It fails with "FIPS mode already set". To avoid it, we first check the mode before changing it.
| * unit-tests: Force a CET/CEST timezone Windows understandsMartin Willi2014-06-041-0/+4
| | | | | | | | | | | | As it is currently unclear what the "three-letter-timezone" for CEST is, we use the German timezone, which actually is CET/CEST. SetEnvironmentVariable() "TZ" does not seem to affect localtime(), so we use _putenv() instead.
| * travis: Build "all" test without Windows specific charon-svc or dbghelpMartin Willi2014-06-041-1/+2
| |
| * utils: Add a wait_sigint() function to wait for SIGINT or equivalentMartin Willi2014-06-042-0/+88
| |
| * pki: Switch to binary mode on Windows when reading/writing DER to FDsMartin Willi2014-06-0413-1/+49
| |
| * pki: Stop prompting for password when entering empty stringMartin Willi2014-06-041-1/+1
| |
| * chunk: On Windows, use binary mode in chunk_write()Martin Willi2014-06-041-1/+8
| |
| * imv: Provide database table scheme for MySQLMartin Willi2014-06-042-1/+201
| |
| * libpts: Respect path separators when concatenating database filenamesMartin Willi2014-06-041-6/+15
| | | | | | | | | | As we can't use the system native directory separator on cross-platform measurements, we determine the path separator from the base directory format.
| * attest: Properly separate and build absolute path names on WindowsMartin Willi2014-06-041-13/+28
| |
| * libimcv: Pass TNC_SESSION_ID as argument instead as a environment variableMartin Willi2014-06-044-23/+16
| | | | | | | | Doing so works on Windows as well.
| * libimcv: Be a little more verbose about the Windows system reportedMartin Willi2014-06-041-8/+10
| |
| * imv: Return an empty enumerator instead of null, as expected by callersMartin Willi2014-06-041-1/+1
| |
| * imc-os: Add missing TNC_IMC_API definitions, fixes warnings on WindowsMartin Willi2014-06-041-28/+27
| |
| * imv-os: Don't build pacman on WindowsMartin Willi2014-06-041-0/+2
| |
| * file-logger: Emulate setlinebuf() if not supported by using fflush()Martin Willi2014-06-041-0/+12
| |
| * charon-svc: When running as service, change working directory to executableMartin Willi2014-06-041-1/+30
| | | | | | | | | | Services get executed with system32 as current working directory. This does not work for us, as we expect paths to be relative to the executable.
| * openssl: Be less verbose about FIPS mode when not running as daemonMartin Willi2014-06-041-2/+2
| | | | | | | | | | While this is valuable information, printing it for pki and other tools is annoying.
| * unit-tests: Adapt settings tests for WindowsMartin Willi2014-06-041-2/+13
| |
| * swanctl: Concatenate relative certificate paths correctly on WindowsMartin Willi2014-06-041-3/+5
| |
| * parser-helper: Detect absolute pathnames and concatenate paths on WindowsMartin Willi2014-06-041-2/+3
| |
| * utils: Provide a path_absolute() function to check path for non-relativenessMartin Willi2014-06-043-38/+88
| | | | | | | | The usually used trivial '/' check won't work on Windows platforms.
| * utils: Return plain drive letter as base/pathname for drive letters on WindowsMartin Willi2014-06-041-0/+9
| |