Commit Graph
100 Commits
Author SHA1 Message Date
Tobias Brunner 3cc0cc4332 Increased the buffer for netlink responses.
If an error occurs while manipulating policies in the kernel, the
original netlink request gets attached to the response.

Prior to Linux 2.6.32 the size in the netlink header of the response was
wrong.
2010-02-05 20:10:54 +01:00
Tobias Brunner 41faec0791 Some whitespace and code cleanups concerning the mediation extension. 2010-02-02 15:53:22 +01:00
Tobias Brunner dc5969242f Join pluto's fetching thread instead of detaching it in order to avoid that the leak-detective reports a memleak. 2010-02-02 15:23:39 +01:00
Tobias Brunner 776f59f7be Block the signals before the call to sigwait. 2010-01-12 11:52:03 +01:00
Tobias Brunner e9a1852aac Pluto's fetcher thread is now created via libstrongswan. 2009-12-26 15:50:34 +01:00
Tobias Brunner ff4d4aa99a Adapted the load_tester kernel-interface to the changes introduced in 6ec949e02. 2009-12-23 17:15:28 +01:00
Tobias Brunner cb186f9922 Added some IPv6 tweaks for Android.
Android 1.6 does not yet support the Advanced Sockets API for IPv6 as defined in
RFC 3542. Also, in6addr_any is missing.
2009-12-23 17:03:42 +01:00
Tobias Brunner a37cf4580a Semicolon removed. 2009-12-23 17:03:42 +01:00
Tobias Brunner 3f490ff978 According to the man page (and the header files in Android) prctl takes a total of 5 arguments. 2009-12-23 17:03:42 +01:00
Tobias Brunner 85202e8795 Added a workaround for the missing pthread_cancel on Android. 2009-12-23 17:03:42 +01:00
Tobias Brunner b2944d71ca Use pthread_cond_timedwait_monotonic on Android. 2009-12-23 17:03:41 +01:00
Tobias Brunner 01e606546c Cache queue locking in credential manager corrected. 2009-12-23 17:03:41 +01:00
Tobias Brunner 47e98cda5f Join worker threads when destroying the processor. 2009-12-23 17:03:41 +01:00
Tobias Brunner b97cc0ab3f Callback job refactored and fixed. 2009-12-23 17:03:41 +01:00
Tobias Brunner 89ec5bef08 Whitespace cleanup. 2009-12-23 17:03:41 +01:00
Tobias Brunner 4ec2c94b5d Readding changes that got lost during refactoring/rebasing. 2009-12-23 17:03:41 +01:00
Tobias Brunner 4a5a5dd290 Using the thread wrapper in charon, libstrongswan and their plugins. 2009-12-23 17:03:41 +01:00
Tobias Brunner c48eea9203 Adding an object-oriented wrapper for thread-specific values. 2009-12-23 17:02:26 +01:00
Tobias Brunner 0d5c6a28d5 Adding an object-oriented wrapper for threads. 2009-12-23 17:02:26 +01:00
Tobias Brunner 070ac5b0b7 Check if libpthread is required or not. 2009-12-23 17:02:26 +01:00
Tobias Brunner 866dc0134a Check for pthread_condattr_init added to configure script. 2009-12-23 17:02:25 +01:00
Tobias Brunner c33d4f29bc Generating the apidoc in an out-of-tree build fixed. 2009-12-23 17:02:25 +01:00
Tobias Brunner 5fe538504e Moved implementation of condvar_t to mutex.c because it requires access to private_mutex_t. 2009-12-23 17:02:25 +01:00
Tobias Brunner eba64cef41 Separated the public interfaces of the threading primitives. 2009-12-23 17:01:53 +01:00
Tobias Brunner f36143b0ba Implemented a read-write lock using only mutex_t and condvar_t (in case the pthread_rwlock_* group of functions is not available). 2009-12-23 17:01:30 +01:00
Tobias Brunner b1f35d0695 Threading primitives separated. 2009-12-23 17:01:30 +01:00
Tobias Brunner 14f7091280 Moved mutex.c to a separate folder in order to cleanly wrap other threading primitives (and utils/mutex.h is now threading.h). 2009-12-23 17:00:58 +01:00
Tobias Brunner 268911a5cc The attribute manager was moved from daemon_t to libstrongswan. 2009-12-07 16:00:27 +01:00
Tobias Brunner 6e6975395e Using the correct type for ME_ENDPOINT payloads in connectivity checks. 2009-09-24 11:29:34 +02:00
Tobias Brunner 0755e98e5c Cleaned up some code of the mediation extension. 2009-09-04 15:48:30 +02:00
Tobias Brunner f4b975a65d Moved set_state after the DBG0 statement, so that the message gets logged also for mediation connections without CHILD_SA. 2009-09-04 15:13:12 +02:00
Tobias Brunner a20e98749a Simplified the search for ME_CONNECTID notifies. 2009-09-02 17:30:47 +02:00
Tobias Brunner 484a06bce7 Fixed some typos; whitespace cleanup. 2009-09-02 17:30:46 +02:00
Tobias Brunner 5293b02945 Missing commas added. 2009-09-02 17:29:44 +02:00
Tobias Brunner deddfde91b Description of new lifetime limits added to manpage. 2009-09-01 12:54:33 +02:00
Tobias Brunner 686aba2589 Added lifetime/margintime keywords as alias for keylife/rekeymargin. 2009-09-01 12:54:33 +02:00
Tobias Brunner e75f423753 Refactored the lifetime_cfg_t struct to be simpler and more expressive. Initialization is now static. 2009-09-01 12:54:33 +02:00
Tobias Brunner abff49a7ff Handling of new lifetime limits added to stroke. 2009-09-01 12:53:44 +02:00
Tobias Brunner ca41aa0602 Added keywords for the new lifetime limits to starter. 2009-09-01 12:53:44 +02:00
Tobias Brunner 9c7faa8618 Added parser for unsigned long long ints to starter. 2009-09-01 12:53:44 +02:00
Tobias Brunner f40c115531 If no inbound CHILD_SA is found, try to find an outbound SA.
Due to the new lifetime limits in- and outbound SAs may expire
individually.
2009-09-01 12:53:44 +02:00
Tobias Brunner 1087b9cebb Set the packet and byte limits in the netlink and pfkey kernel interfaces. 2009-09-01 12:53:44 +02:00
Tobias Brunner e3c7e72973 Terminology and return value of get_lifetime of child_sa_t corrected. 2009-09-01 12:53:44 +02:00
Tobias Brunner cb123493d1 child_sa_t adapted to the new lifetime configuration. 2009-09-01 12:53:43 +02:00
Tobias Brunner 888af96343 Adapted the kernel interfaces to the new lifetime configuration. 2009-09-01 12:53:13 +02:00
Tobias Brunner e0a8a8c3ec Adapted the config backends to the new lifetime configuration. 2009-09-01 12:50:50 +02:00
Tobias Brunner caf87c7dcb child_cfg_t now takes a lifetime_cfg_t to configure the lifetime limits. Also adjusted the jitter calculation, so it works for values > RAND_MAX. 2009-09-01 12:50:50 +02:00
Tobias Brunner 86e4728550 lifetime_cfg_t added to configure lifetime limits of a CHILD_SA. 2009-09-01 12:50:50 +02:00
Tobias Brunner e822fc576a Added side effect free min and max macros. 2009-09-01 12:50:50 +02:00
Tobias Brunner 333b461aa6 Fixing address resolution via getaddrinfo in libfreeswan. 2009-08-18 12:30:11 +02:00
Tobias Brunner f1777dff59 Replacing gethostbyname, gethostbyname2 and their _r variants with getaddrinfo to increase portability. 2009-08-14 16:14:32 +02:00
Tobias Brunner 26965b4ef3 OpenSolaris needs libsocket and libnsl for socket(). 2009-08-14 14:50:53 +02:00
Tobias Brunner 932fdc38de Enable CMSG headers and macros on OpenSolaris. 2009-08-14 14:50:52 +02:00
Tobias Brunner 8c3627c5ae Added define to get sigwait with two parameters on OpenSolaris. 2009-08-14 14:50:51 +02:00
Tobias Brunner e580e0a9a2 sockio.h is required on OpenSolaris for SIOCGIFADDR. 2009-08-14 14:50:50 +02:00
Tobias Brunner 647bd246e4 Replaced the strange definitions of IN6ADDR_ANY_INIT and IN6ADDR_LOOPBACK_INIT on OpenSolaris. 2009-08-14 14:50:49 +02:00
Tobias Brunner cc396286e8 Defined some missing fixed-width int types on OpenSolaris. 2009-08-14 14:50:22 +02:00
Tobias Brunner a3ccf95f3f LOG_AUTHPRIV is not defined on OpenSolaris. 2009-08-14 13:37:07 +02:00
Tobias Brunner 3901937d14 OpenSolaris defines MUTEX_DEFAULT therefore we rename the members of the enums mutex/condvar/rwlock_type_t. 2009-08-14 13:30:59 +02:00
Tobias Brunner 8b6a5ce5ba We need to include alloca.h on OpenSolaris. 2009-08-14 13:25:22 +02:00
Tobias Brunner 3974b2fb07 FreeBSD's libc does not support backtrace(), but libexecinfo optionally replicates this function (and the other defined in execinfo.h). 2009-08-07 18:46:25 +02:00
Tobias Brunner 79ff614144 Use LONG_MAX instead of a hard-coded value. 2009-08-06 18:22:01 +02:00
Tobias Brunner bfca7aa5ed FreeBSD returns the current policy use time only after specifying a hard lifetime when installing the policy. 2009-08-06 18:14:44 +02:00
Tobias Brunner c3a78360a8 Fixed a race condition when querying stats of a child_sa in different order. 2009-08-06 16:47:32 +02:00
Tobias Brunner dd83c6d490 Don't query the policy usetime if there was no traffic on the SA.
This helps in cases where a policy is assigned to more than one SA. That
is, SAs now should have different usetimes even if they use the same policy.
2009-08-06 15:14:54 +02:00
Tobias Brunner b3f8ea8346 Reverted the interface changes introduced in 3f720dc7. 2009-08-06 13:31:54 +02:00
Tobias Brunner 1e7b4b0028 Reversed the check for udp.h, fixes compilation on Linux. 2009-08-06 10:01:59 +02:00
Tobias Brunner 7da1f4a0ff Enabling UDP encapsulation via setsockopt fails on Mac OS X (it is also not required as this is done using sysctl). 2009-08-05 12:31:10 +02:00
Tobias Brunner 524f9ac470 FreeBSD only reports a policy's usetime if a lifetime has been specified when the policy was added (we only specify a lifetime on the SA, not on the policy). 2009-08-04 11:08:58 +02:00
Tobias Brunner 56ee8fcc96 FreeBSD and Mac OS X both set the sequence number of an SADB_X_SPDGET response to zero, we accept that for now. 2009-08-04 11:08:58 +02:00
Tobias Brunner e8c3cdb25b Missing check for udp.h added. 2009-08-04 11:08:57 +02:00
Tobias Brunner eab05274f4 Handling of unsupported policy directions (FWD) fixed. 2009-07-30 14:06:26 +02:00
Tobias Brunner e20bd8b6ea Enabling NAT-T on Mac OS X using the private SADB_X_EXT_NATT flag and sadb_sa_2 struct. 2009-07-30 14:06:26 +02:00
Tobias Brunner 789ba17024 Configure the NAT-T port via sysctl on Mac OS X to enable handling of incoming UDP encapsulated ESP packets in the kernel. 2009-07-30 14:06:26 +02:00
Tobias Brunner b2117eee20 Make accept(2) and recvfrom(2) cancellation points on Mac OS X. 2009-07-30 14:06:26 +02:00
Tobias Brunner 6ff7ab850b Fixed GID lookup in cases where the configured group is a prefix of another group. 2009-07-20 21:20:03 +02:00
Tobias Brunner 9af7715c3d Fixed installation of config files in out-of-tree builds. 2009-07-20 21:13:45 +02:00
Tobias Brunner 7cdf712d3e Use the numerical UID/GID to install the config files and create the ipsec.d directories. 2009-07-20 21:03:05 +02:00
Tobias Brunner 7d2b06da6a Translate the configured user and group to a numerical UID and GID. 2009-07-20 21:01:13 +02:00
Tobias Brunner 375a91bb9b Fixing distribution build (checksum.c is created on the user's system). 2009-07-16 16:53:43 +02:00
Tobias Brunner 69fc782000 Check for gperf version added to configure script. 2009-07-16 15:15:40 +02:00
Tobias Brunner c7e0f07ced Typo fixed. 2009-07-16 15:15:35 +02:00
Tobias Brunner cf00cffef2 Added an option to the configure script to disable building the scripts. 2009-07-16 15:15:26 +02:00
Tobias Brunner 599d2bcea8 Revert "gperf under FreeBSD does not know the -m option."
This reverts commit 0ead254919.
2009-07-16 15:15:09 +02:00
Tobias Brunner 233a132634 Removed an unnecessary include of a header that is not available on Mac OS X. 2009-07-15 22:42:22 +02:00
Tobias Brunner 0ead254919 gperf under FreeBSD does not know the -m option.
We could use AC_PATH_PROGS_FEATURE_CHECK (added in Autoconf 2.62) to check for this option.
2009-07-14 12:09:22 +02:00
Tobias Brunner fd0df7ec75 Corrected check for valid ASN1 types in rdn_enumerate.
Because of the range of u_char the comparison was always TRUE before.
2009-07-14 12:09:22 +02:00
Tobias Brunner 0b5f2a81da Added --with-lib-prefix option to the configure script.
This option enables users to add additional search paths for include
files and libraries.
2009-07-14 12:09:22 +02:00
Tobias Brunner 272c81134c Typo in configure script fixed. 2009-06-12 10:42:07 +02:00
Tobias Brunner a6ae2a1490 Fixing IPSEC_* checks on older Linux distros. 2009-05-21 10:03:27 +02:00
Tobias Brunner 617e59b7bc Portably check for IPSEC_* constants (defined in ipsec.h).
The problem is that FreeBSD defines them as #defines whereas Linux defines them as enums.
2009-05-20 20:15:06 +02:00
Tobias Brunner ad36ab252e Automatically build (and install) the DUMM Ruby extension. 2009-05-20 19:38:01 +02:00
Tobias Brunner 2d9ce480fa Enable building the DUMM Ruby extension in a VPATH build. 2009-05-20 19:38:01 +02:00
Tobias Brunner d2e9cbc9a2 The configure script now tries to figure out where ruby.h is located.
This is required because the location depends on the architecture.
2009-05-20 19:38:01 +02:00
Tobias Brunner 68173e1fea typo 2009-05-18 13:04:18 +02:00
Tobias Brunner 28154e35be documented the idea behind the current implementation of the scheduler 2009-05-15 14:43:15 +02:00
Tobias Brunner 5020a456c0 more intuitive leap year check 2009-05-15 09:36:55 +02:00
Tobias Brunner 7cdb1ddf08 Mac OS X doesn't have SADB_X_AALG_AES_XCBC_MAC 2009-05-14 17:38:36 +02:00
Tobias Brunner 9f090745cf added another possible location for the ipsec.h header file 2009-05-14 17:38:32 +02:00
Tobias Brunner c1532e840d fixed compiler warning 2009-05-14 17:38:27 +02:00