aboutsummaryrefslogtreecommitdiffstats
path: root/src/libstrongswan/threading
Commit message (Collapse)AuthorAgeFilesLines
* Use a ./configure check to detect pthread spinlock availabilityMartin Willi2012-12-181-15/+7
| | | | | _POSIX_SPIN_LOCKS does not seem to be defined correctly on all systems (Debian libc 2.3.6). Fixes #262.
* Moved debug.[ch] to utils folderTobias Brunner2012-10-244-4/+4
|
* Moved data structures to new collections subfolderTobias Brunner2012-10-241-1/+1
|
* Use a helper function to add milliseconds to timeval structsTobias Brunner2012-10-182-13/+2
|
* Properly handle thread cancelation in rwlock_condvar_tTobias Brunner2012-09-211-15/+20
|
* Added a condvar implementation that works with rwlock_tTobias Brunner2012-09-212-0/+216
|
* Don't use POSIX semaphores if a MONOTONIC clock is availableMartin Willi2012-08-201-0/+8
| | | | | | POSIX semaphores use CLOCK_REALTIME, but our semaphore_t abstraction expects CLOCK_MONOTONIC based times. Use the mutex/condvar based fallback if time_monotonic() actuall returns monotonic times.
* Add a mutex/condvar based semaphore implementation if sem_timedwait is ↵Martin Willi2012-08-201-2/+67
| | | | | | unavailable Fixes #214.
* Merge branch 'android-app'Tobias Brunner2012-08-131-2/+2
|\ | | | | | | | | | | | | | | This branch introduces a userland IPsec implementation (libipsec) and an Android App which targets the VpnService API that is provided by Android 4+. The implementation is based on the bachelor thesis 'Userland IPsec for Android 4' by Giuliano Grassi and Ralf Sager.
| * Ensure thread IDs always start with 1 even if the library is reusedTobias Brunner2012-08-131-2/+2
| | | | | | | | | | | | Within the Android App the library stays loaded in memory and is just initialized/deinitialized with each connection, the static thread counter would continuously increase without this patch.
* | If _POSIX_SPIN_LOCKS is defined as -1, it is not availableMartin Willi2012-08-101-0/+4
|/
* Implemented recursive mutex without thread-specific counterTobias Brunner2012-08-031-23/+17
|
* Use a single thread-specific value for our custom rwlock_t implementationTobias Brunner2012-08-031-50/+67
| | | | | | The pthread implementation on Android currently only supports 64 different thread-specific values per process, which we hit easily when every rwlock_t requires one.
* Properly cleanup thread-local values for the threads destroying ↵Tobias Brunner2012-07-121-2/+19
| | | | thread_value_t objects
* Added wrapper for POSIX spin locksTobias Brunner2012-07-042-0/+190
|
* Added recursive read_lock support to our own implementation of rwlock_t.Tobias Brunner2012-05-021-4/+35
|
* Added a wrapper class around POSIX semaphores.Tobias Brunner2012-05-022-0/+191
|
* Fix gettid() on Android, which is defined in unistd.h there.Tobias Brunner2012-01-121-3/+4
|
* Use native gettid() if available (which is the case on Android).Tobias Brunner2012-01-101-3/+11
|
* Log native thread ID when a thread is created.Tobias Brunner2011-12-161-1/+16
| | | | | If possible gettid() is used, otherwise pthread_self() is logged (which is not completely portable, but seems to work on most supported platforms).
* Create a dummy pthread key for value "0", as some buggy PKCS#11 libraries ↵Martin Willi2011-12-071-0/+10
| | | | mangle it
* Migrated thread_t to INIT/METHOD macros.Tobias Brunner2011-10-031-34/+26
|
* Migrated mutex_t to INIT/METHOD macros.Tobias Brunner2011-10-031-72/+56
|
* Migrated rwlock_t to INIT/METHOD macros.Tobias Brunner2011-10-031-61/+45
|
* Migrated thread_value_t to INIT/METHOD macros.Tobias Brunner2011-10-031-17/+15
|
* id of non-registered threads defaults to 0Andreas Steffen2011-05-061-1/+18
|
* Option to skip slow addr2line resolution in leak-detectiveMartin Willi2010-05-201-1/+1
|
* We have to rename thread_create on Mac OS X because it conflicts with a syscall.Tobias Brunner2010-04-291-0/+6
|
* The mutex of a thread has to be locked when destroying it.Tobias Brunner2010-04-291-0/+2
|
* Adding DBG_LIB to all calls of libstrongswan's version of DBG*.Tobias Brunner2010-04-063-11/+11
|
* corrected captionsAndreas Steffen2010-02-011-2/+2
|
* Added a workaround for the missing pthread_cancel on Android.Tobias Brunner2009-12-231-0/+35
|
* Use pthread_cond_timedwait_monotonic on Android.Tobias Brunner2009-12-231-0/+5
|
* Readding changes that got lost during refactoring/rebasing.Tobias Brunner2009-12-231-4/+17
|
* Using the thread wrapper in charon, libstrongswan and their plugins.Tobias Brunner2009-12-232-29/+1
|
* Adding an object-oriented wrapper for thread-specific values.Tobias Brunner2009-12-232-0/+146
|
* Adding an object-oriented wrapper for threads.Tobias Brunner2009-12-232-0/+592
|
* Check for pthread_condattr_init added to configure script.Tobias Brunner2009-12-231-5/+9
|
* Moved implementation of condvar_t to mutex.c because it requires access to ↵Tobias Brunner2009-12-232-177/+156
| | | | private_mutex_t.
* Separated the public interfaces of the threading primitives.Tobias Brunner2009-12-236-87/+293
|
* Implemented a read-write lock using only mutex_t and condvar_t (in case the ↵Tobias Brunner2009-12-232-0/+186
| | | | pthread_rwlock_* group of functions is not available).
* Threading primitives separated.Tobias Brunner2009-12-237-393/+525
|
* Moved mutex.c to a separate folder in order to cleanly wrap other threading ↵Tobias Brunner2009-12-231-0/+551
primitives (and utils/mutex.h is now threading.h).