aboutsummaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
...
* unit-tests: created bliss_sign test suiteAndreas Steffen2014-11-295-1/+91
|
* Finished BLISS signature generationAndreas Steffen2014-11-2912-157/+1170
|
* Implemented Gaussian rejection samplerAndreas Steffen2014-11-296-16/+496
| | | | | The bliss_sampler class uses the mgf1_bitspender as a pseudo-random source.
* Implemented get_byte() method for mgf1_bitspender classAndreas Steffen2014-11-294-26/+78
| | | | | | The new get_byte() method returns a pseudo-random byte at a time. Changed the get_bits() interface to the same interface as get_byte(). Updated the mgf1 unit-tests accordingly.
* Added support for BLISS-IIIAndreas Steffen2014-11-291-2/+17
|
* Started implementing BLISS signature generationAndreas Steffen2014-11-298-24/+34
|
* Store and parse BLISS private and public keys in DER and PEM formatAndreas Steffen2014-11-299-32/+441
| | | | | | | | Additionally generate SHA-1 fingerprints of raw BLISS subjectPublicKey and subjectPublicKeyInfo objects. Some basic functions used by the bliss_public_key class are shared with the bliss_private_key class.
* unit-tests: Created separate mgf1 test suiteAndreas Steffen2014-11-295-147/+270
|
* Use mgf1_bitspender in ntru_poly_create_from_seedAndreas Steffen2014-11-292-52/+16
|
* Use mgf1_bitspender to generate random secret keyAndreas Steffen2014-11-291-280/+226
|
* Implemented bitspender based on the MGF1 mask generator functionAndreas Steffen2014-11-294-3/+223
|
* unit-tests: Added bliss_fft test suiteAndreas Steffen2014-11-295-0/+193
|
* Moved mgf1 class to libstrongswan/crypto/mgf1Andreas Steffen2014-11-297-62/+51
|
* Defined BLISS I and IV parameter setsAndreas Steffen2014-11-294-19/+365
|
* Added BLISS OIDs in ITA-HSR OID treeAndreas Steffen2014-11-291-0/+10
|
* Implemented Number Theoretic Transform using the FFT algorithmAndreas Steffen2014-11-298-3/+869
| | | | | | By pre-multiplying the input arrays with a linear phase the fast multiplication via FFT and inverse FFT computes a negative wrapped convolution corresponding to a modulus of x^n+1.
* Created framework for BLISS post-quantum signature algorithmAndreas Steffen2014-11-2911-8/+659
|
* libtls: Catch POLLHUP/NVAL in TLS socket splicingMartin Willi2014-11-281-2/+2
| | | | | If one of the sockets gets disconnected, some systems return POLLHUP. Signal the socket as ready to let the read/write call fail properly.
* watcher: Proper handle poll() POLLHUP/NVAL signalingMartin Willi2014-11-281-13/+36
| | | | | | | poll() may return POLLHUP or POLLNVAL for given file descriptors. To handle these properly, we signal them to the EXCEPT watcher state, if registered. If not, we call the read/write callbacks, so they can properly fail when trying to read from or write to the file descriptor.
* windows: Properly set errno for read/write functions using WinsockMartin Willi2014-11-281-4/+4
|
* ikev2: Fix ike_rekey switch statement broken with last commitMartin Willi2014-11-241-1/+1
|
* ikev2: Prevent IKE_SA rekeying if we are currently retrying a CHILD_SA rekeyMartin Willi2014-11-211-0/+1
|
* controller: Keep following initiate() if the first DH guess was wrongMartin Willi2014-11-211-0/+12
|
* child-sa: Introduce a CHILD_RETRYING state to detect DH group retriesMartin Willi2014-11-213-0/+7
|
* windows: Move the compatibility header to the compat subfolderMartin Willi2014-11-214-6/+6
|
* apple: Wrap accept() and recvfrom() with poll(2) instead of selectMartin Willi2014-11-211-5/+11
|
* apple: Introduce a central compatibility header with all __APPLE__ quirksMartin Willi2014-11-216-87/+113
|
* watcher: Use Windows read/write(2) wrappers instead of compile-conditionsMartin Willi2014-11-211-8/+0
|
* windows: Provide a write(2) wrapper that uses send(2) on socketsMartin Willi2014-11-212-0/+22
|
* windows: Provide a read(2) wrapper that uses recv(2) on socketsMartin Willi2014-11-212-0/+25
|
* unit-tests: Test cancellability of some cancellation points we rely onMartin Willi2014-11-211-0/+192
|
* thread: Test for pending cancellation requests before poll()ing on OS XMartin Willi2014-11-211-0/+20
| | | | | As we are now using poll(2) instead of select(2), we need the work-around from 76dc329e for poll() as well.
* kernel-libipsec: Use poll(2) instead of selectMartin Willi2014-11-211-54/+56
|
* watcher: Use poll(2) instead of selectMartin Willi2014-11-211-24/+38
|
* libtls: Use poll(2) instead of select() in tls_socketMartin Willi2014-11-211-8/+7
|
* socket-default: Use round-robin selection of sockets to read fromMartin Willi2014-11-211-5/+13
| | | | | If multiple sockets are ready, we previously preferred the IPv4 non-NAT socket over others. To handle all with equal priority, use a round-robin selection.
* socket-default: Use poll(2) instead of selectMartin Willi2014-11-211-46/+20
| | | | | It is not only simpler, but also allows the use of arbitrary high fd numbers, which silently fails with select().
* tun-device: Read from tun to buffer on stack to avoid over-allocation of packetsMartin Willi2014-11-211-8/+6
| | | | | | | Instead of allocating MTU-sized buffers for each packet, read to a stack buffer and copy to an allocation of the actual packet size. While it requires an additional copy on non-Apple platforms, this should make allocation more efficient for small packets.
* tun-device: Remove the superfluous use of select() before read()Martin Willi2014-11-212-19/+6
|
* libradius: Use poll(2) to wait for RADIUS responsesMartin Willi2014-11-211-46/+41
|
* windows: Provide a poll(2) wrapper calling WSAPoll()Martin Willi2014-11-213-0/+40
|
* kernel-netlink: Optionally ignore errors resulting from response message lossMartin Willi2014-11-211-0/+82
| | | | | | | | | | | | | | | As some backends over unreliable transport do not cache response messages, retransmissions due the loss of responses perform the operation again. Add an option to ignore some errors arising from such duplicate operations. Note: This approach can't distinguish between real EXIST/NOTFOUND errors and packet failures, and therefore is a source of race conditions and can't detect any of these errors actually happening. Therefore that behavior is disabled by default, and can be enabled with the ignore_retransmit_errors strongswan.conf option. To properly distinguish between real and retransmission errors, a Netlink backend should implement retransmission detection using sequence numbers.
* kernel-netlink: Add an option to enforce using XFRM_MSG_UPDPOLICYMartin Willi2014-11-211-0/+12
|
* kernel-netlink: Fallback to UDP if detecting socket protocol failsMartin Willi2014-11-211-2/+4
| | | | | getsockopt(SO_PROTOCOL) is not supported before 2.6.32. Default to UDP if either the SO_PROTOCOL define is missing or the syscall fails.
* kernel-netlink: Alternatively support global port based IKE bypass policiesMartin Willi2014-11-211-3/+160
| | | | | | The socket based IKE bypass policies are usually superior, but not supported on all networking stacks. The port based variant uses global policies for the UDP ports we have IKE sockets for.
* kernel-netlink: Add options to enable parallel Netlink queries explicitlyMartin Willi2014-11-215-20/+39
| | | | | | As under vanilla Linux the kernel can't handle parallel dump queries and returns EBUSY, it makes not much sense to use them. Disable parallel queries by default to basically restore original behavior, improving performance.
* kernel-netlink: Release lock while doing Netlink NEW/DELADDR operationsMartin Willi2014-11-211-8/+17
| | | | | | | | Besides that it can improve throughput, it avoids a deadlock situation. If all threads are busy, watcher will invoke the FD notification for NEWADDR events itself. If the lock is held, it gets locked up. As watcher is not dispatching anymore, it can't signal Netlink socket send() completion, and the send() operation does not return and keeps the lock.
* kernel-netlink: Add non-dumping variants of echo and stress testsMartin Willi2014-11-211-0/+84
|
* kernel-netlink: Add test cases for successful and timing out retransmissionsMartin Willi2014-11-212-0/+90
|
* kernel-netlink: Add a compile-time hook to simulate request message lossMartin Willi2014-11-211-0/+15
|