Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | identification: parse identities having a "@@" prefix as ID_RFC822_ADDR | Martin Willi | 2013-07-18 | 1 | -11/+10 | |
| | | | | Original patch by Gerald Richter. | |||||
* | capabilities: Add function to check if a capability is held, without keeping it | Tobias Brunner | 2013-07-18 | 2 | -45/+75 | |
| | | | | | This can be useful if capabilities are not required anymore after dropping privileges. | |||||
* | leak-detective: remove hdr entry when reallocating zero bytes | Martin Willi | 2013-07-12 | 1 | -0/+6 | |
| | ||||||
* | leak-detective: print total of allocated/leaked bytes in usage/report | Martin Willi | 2013-07-12 | 1 | -5/+13 | |
| | ||||||
* | leak-detective: add a usage threshold option based on the number of allocations | Martin Willi | 2013-07-10 | 1 | -6/+11 | |
| | ||||||
* | leak-detective: set_state() only affects the calling thread | Martin Willi | 2013-07-10 | 2 | -15/+2 | |
| | | | | | The only user (bfd backtraces) is fine with that, and we really should not mess the enable flag while doing allocations with other threads. | |||||
* | leak-detective: take a copy of backtrace while printing traces | Martin Willi | 2013-07-10 | 1 | -2/+3 | |
| | | | | | As we don't want to hold the lock, we must make sure backtraces keep valid while printing them. | |||||
* | backtrace: add a clone() method | Martin Willi | 2013-07-10 | 2 | -7/+44 | |
| | ||||||
* | leak-detective: remove hdr from the allocation list during realloc() | Martin Willi | 2013-07-10 | 1 | -39/+60 | |
| | | | | | | | If realloc moves an allocation, the original allocation gets freed. We therefore must remove the hdr from the list, as it is invalid. We can add it afterwards once it has been updated, allowing us to unlock the list during reallocation. | |||||
* | utils: Add helper function to check a string for a given prefix | Tobias Brunner | 2013-07-08 | 1 | -0/+8 | |
| | ||||||
* | utils: Convert string helper macros to static inline functions | Tobias Brunner | 2013-07-08 | 1 | -6/+15 | |
| | ||||||
* | integrity-checker: Use chunk_hash_static() to calculate checksums | Tobias Brunner | 2013-06-28 | 1 | -7/+2 | |
| | ||||||
* | chunk: Add predictable hash function | Tobias Brunner | 2013-06-28 | 2 | -1/+53 | |
| | | | | | Since chunk_hash() is randomized its output is not predictable, that is, it is only within the same process. | |||||
* | integrity-checker: Fix checksum calculation after randomizing chunk_hash() | Tobias Brunner | 2013-06-27 | 1 | -2/+7 | |
| | ||||||
* | capabilities: Return effective UID/GID if user did not configure anything | Tobias Brunner | 2013-06-25 | 1 | -2/+2 | |
| | ||||||
* | capabilities: Report effective UID/GID after dropping capabilities | Tobias Brunner | 2013-06-25 | 1 | -1/+1 | |
| | ||||||
* | capabilities: Handle CAP_CHOWN specially as it might not be required | Tobias Brunner | 2013-06-25 | 2 | -2/+63 | |
| | ||||||
* | capabilities: Check effective UID as fallback if capabilities are not supported | Tobias Brunner | 2013-06-25 | 1 | -1/+1 | |
| | ||||||
* | dhcp: Require CAP_NET_BIND_SERVICE and CAP_NET_RAW to open/bind sockets | Tobias Brunner | 2013-06-25 | 1 | -0/+3 | |
| | ||||||
* | socket-default: Require CAP_NET_BIND_SERVICE for ports < 1024 | Tobias Brunner | 2013-06-25 | 1 | -1/+4 | |
| | | | | | Since we don't know which ports are used with socket-dynamic we can't demand the capability there, but it might still be required. | |||||
* | capabilities: Only plugins that require CAP_NET_ADMIN demand it | Tobias Brunner | 2013-06-25 | 1 | -0/+4 | |
| | | | | The daemon as such does not require this capability. | |||||
* | capabilities: Move global capabilities_t instance to libstrongswan | Tobias Brunner | 2013-06-25 | 1 | -2/+2 | |
| | ||||||
* | capabilities: Ensure required capabilities are actually held by the process/user | Tobias Brunner | 2013-06-25 | 2 | -4/+58 | |
| | ||||||
* | printf-hook: Avoid double-free when freeing Vstr config | Tobias Brunner | 2013-06-21 | 1 | -1/+0 | |
| | | | | | | | Thread-specific objects get freed when the thread value object is destroyed (wasn't the case earlier, i.e. before 2b19dd35), which may cause the second call to vstr_free_conf() to fail in an assert in Vstr (depending on how it was built). | |||||
* | leak-detective: (re-)whitelist some OpenSSL functions | Martin Willi | 2013-06-21 | 1 | -0/+5 | |
| | | | | | | | Some static allocations in plugins won't get freed, because in the test case process the plugins are not destroyed. If a plugin would clean up allocations done while just using the plugin, these show up as leak in the child process, letting tests fail. | |||||
* | backtrace: use backtrace_symbols() only if we have backtrace() and dladdr() ↵ | Martin Willi | 2013-06-19 | 1 | -5/+16 | |
| | | | | fails | |||||
* | utils: Remove volatile qualifier from refcount_t typedef | Tobias Brunner | 2013-06-19 | 1 | -2/+1 | |
| | | | | | It's not really required anymore (if it ever was) and may cause compiler warnings when using the non atomic versions of ref_get/ref_put. | |||||
* | utils: ref_get() returns the new value of the reference counter | Martin Willi | 2013-06-11 | 2 | -4/+9 | |
| | | | | This allows us to use ref_get() for getting unique values. | |||||
* | leak-detective: Resolve hooked functions during initialization | Tobias Brunner | 2013-06-11 | 1 | -1/+4 | |
| | | | | | | | | | If uses of dlopen(), e.g. when loading plugins, produce errors an error string could get allocated dynamically. At this point realloc() might not yet be resolved and when dlsym() is later called by leak detective to do so the error string might get freed while leak detective is disabled and real_free() will be called with a pointer into one of leak detective's memory blocks instead of a pointer to the block itself, causing a SIGSEGV. | |||||
* | Add getter for the number of leaks to leak_detective_t | Tobias Brunner | 2013-06-11 | 2 | -2/+23 | |
| | ||||||
* | Gracefully handle NULL as argument for enum_from_name() | Tobias Brunner | 2013-06-11 | 1 | -1/+1 | |
| | ||||||
* | Fail DN parsing if OID is unterminated | Tobias Brunner | 2013-06-11 | 1 | -2/+6 | |
| | | | | | This is the case if the last OID is not followed by a = or if the string starts with a =. | |||||
* | Fix DN printing if last RDN has an empty value | Tobias Brunner | 2013-06-11 | 1 | -11/+32 | |
| | ||||||
* | Fix DN parsing if last RDN has an empty value | Tobias Brunner | 2013-06-11 | 1 | -1/+1 | |
| | ||||||
* | Fix output of ASN.1 GN | Tobias Brunner | 2013-06-11 | 1 | -1/+1 | |
| | ||||||
* | Use chunk_from_str in identification_from_string | Tobias Brunner | 2013-06-11 | 1 | -17/+5 | |
| | | | | | We always have a non-empty string in those cases as "" is now handled as ID_ANY. | |||||
* | Use local variable in chunk_from_str() | Tobias Brunner | 2013-06-11 | 1 | -2/+2 | |
| | | | | | This allows using strdup() or other string functions as argument without calling them twice. | |||||
* | Parse empty string as ID_ANY | Tobias Brunner | 2013-06-11 | 1 | -2/+3 | |
| | ||||||
* | Allow memstr() to be called with NULL arguments | Tobias Brunner | 2013-06-11 | 1 | -1/+6 | |
| | ||||||
* | Removed unused clalloc() function | Tobias Brunner | 2013-06-11 | 2 | -18/+0 | |
| | ||||||
* | timeval_add_ms() fixed | Tobias Brunner | 2013-06-11 | 1 | -1/+1 | |
| | | | | 1000000us are exactly 1s so. | |||||
* | Randomly allocate chunk_hash() key during first use | Tobias Brunner | 2013-06-11 | 1 | -1/+46 | |
| | | | | This avoids hash flooding attacks. | |||||
* | Replace chunk_hash() with output from chunk_mac() | Tobias Brunner | 2013-06-11 | 2 | -75/+31 | |
| | | | | | | | The quality is way better, the calculation is a bit slower though. The key is statically initialized to zero, which will be changed later to prevent hash flooding. | |||||
* | Adding chunk_mac() which calculates a 64-bit MAC using SipHash-2-4 | Tobias Brunner | 2013-06-11 | 2 | -3/+133 | |
| | ||||||
* | Allow memwipe() to be called with NULL argument | Tobias Brunner | 2013-05-27 | 1 | -0/+4 | |
| | ||||||
* | capabilities: leak-detective using dlsym() does not need CAP_SYS_NICE anymore | Martin Willi | 2013-05-15 | 1 | -6/+0 | |
| | ||||||
* | capabilities: initialize supplementary groups only when doing a setuid() | Martin Willi | 2013-05-15 | 1 | -1/+1 | |
| | ||||||
* | openssl: Properly cleanup OpenSSL library | Tobias Brunner | 2013-05-08 | 1 | -7/+0 | |
| | ||||||
* | settings: Add a set_default_str() to set a different default for a key | Martin Willi | 2013-05-06 | 2 | -0/+31 | |
| | | | | | The value is set only if it is not configured in strongswan.conf or has not been set() otherwise. | |||||
* | backtrace: use atos instead of addr2line on OS X to resolve source lines | Martin Willi | 2013-05-06 | 1 | -3/+11 | |
| |