Tobias Brunner
5c162dd944
List registered nonce generators in statusall output.
2012-05-18 08:15:41 +02:00
Tobias Brunner
b826b192ba
Add enumerator for registered nonce generators.
2012-05-18 08:15:41 +02:00
Tobias Brunner
b3089ab74c
Free name of application using libcharon.
2012-05-15 11:37:07 +02:00
Tobias Brunner
d3590016e9
starter: Initialize thread pool so kernel events are consumed.
2012-05-15 08:55:19 +02:00
Tobias Brunner
c732e22019
Fix route reinstallation if preferred source IP is not on outgoing interface.
2012-05-07 19:00:47 +02:00
Tobias Brunner
5de5b04ce4
Fixed #include in tnc-ifmap plugin.
2012-05-07 11:22:51 +02:00
Tobias Brunner
0aa90701f6
It seems charon-nm has to be linked against libnm-util.
...
That's at least the case for NetworkManager 0.9.4 in Ubuntu 12.04.
2012-05-03 15:17:57 +02:00
Tobias Brunner
983c667481
Use proper getter for settings in sender and receiver.
2012-05-03 13:57:04 +02:00
Tobias Brunner
42500c274a
Use name from initialization to access settings in libcharon.
...
Also fixes several whitespace errors.
2012-05-03 13:57:04 +02:00
Tobias Brunner
18758e3d2e
Store the name of the binary using libcharon to enable specific settings.
2012-05-03 13:57:04 +02:00
Tobias Brunner
37d9334366
Changed default path to charon for NM frontend.
2012-05-03 13:57:04 +02:00
Tobias Brunner
b64f333612
Integrate nm plugin directly in charon-nm.
2012-05-03 13:57:03 +02:00
Tobias Brunner
1c7a733e36
Added a small libcharon wrapper intended to directly host the nm plugin.
...
For this reason it reclaims the --enable-nm configure option.
2012-05-03 13:38:14 +02:00
Tobias Brunner
94b48e071a
Provide plugin list from charon, not internally in libcharon.
2012-05-03 13:14:07 +02:00
Tobias Brunner
088020fbac
Updated Android.mk for 5.0 (no IKEv1 support yet).
2012-05-03 09:37:35 +02:00
Tobias Brunner
ed7186cbe1
NEWS about route reinstallation added.
2012-05-02 15:24:48 +02:00
Tobias Brunner
bc798c9ce8
Route reinstallation in kernel_ipsec_t implementations is not needed anymore.
2012-05-02 15:24:47 +02:00
Tobias Brunner
f834249c59
Reinstall routes in kernel-netlink plugin, if interfaces get reactivated or IPs reappear.
2012-05-02 15:24:47 +02:00
Tobias Brunner
74ba22c992
Keep track of installed source routes in kernel-netlink plugin.
2012-05-02 14:56:08 +02:00
Tobias Brunner
d55c240474
NEWS about bus_t refactorings added.
2012-05-02 14:45:38 +02:00
Tobias Brunner
ead92870b8
Loggers specify what log messages they want to receive during registration.
...
This also allows us to generate the log message only once for all
loggers that need it (avoids calls to custom printf specifier callbacks).
To update the log levels loggers can simply be registered again.
2012-05-02 14:45:38 +02:00
Tobias Brunner
d724fcd624
Ensure that multi-line log messages are not torn apart.
2012-05-02 14:45:38 +02:00
Tobias Brunner
4d21000cf7
Added recursive read_lock support to our own implementation of rwlock_t.
2012-05-02 14:45:38 +02:00
Tobias Brunner
0e474f9148
Use a separate interface for loggers.
...
The new interface does not allow loggers to unregister themselves from
the bus. This allows us to use a rwlock_t for them.
The latter also means that loggers can now be called concurrently by
multiple threads.
2012-05-02 14:45:38 +02:00
Tobias Brunner
f9f867899a
Use a separate list and mutex for loggers.
...
This avoids deadlocks caused by extensive listener_t implementations
which might want to acquire a lock which is currently held by another
thread wanting to log messages. Since the latter requires that thread
to acquire the same lock the initial thread currently holds this
previously resulted in a deadlock.
With this change logging messages does not require threads to acquire
the main lock in bus_t and thus avoids the deadlock.
2012-05-02 14:45:38 +02:00
Tobias Brunner
ecb5abd7fa
Fixed return value of controller_t functions if callback returns FALSE.
2012-05-02 14:45:38 +02:00
Tobias Brunner
052e0a17b8
Use wrapped semaphore in callback_job_t.
2012-05-02 14:45:38 +02:00
Tobias Brunner
aac20ec784
Removed remaining parts of controller_t.listen() implementation.
2012-05-02 14:45:38 +02:00
Tobias Brunner
a629513961
Remove obsolete bus_t.listen() method.
2012-05-02 14:45:38 +02:00
Tobias Brunner
5a073784e2
Implement wait_for_listener in controller_t with semaphores.
...
This eliminates even the slightest chance of a deadlock.
2012-05-02 14:45:37 +02:00
Tobias Brunner
8f6c13271c
Added a wrapper class around POSIX semaphores.
2012-05-02 14:45:37 +02:00
Tobias Brunner
b6e9c41861
Implement bus_t.listen() directly in controller_t (the only user).
...
This will hopefully allow us to later simplify bus_t.
2012-05-02 14:45:37 +02:00
Tobias Brunner
13de38e354
Documented strongswan.conf options for radattr plugin.
2012-05-01 13:32:43 +02:00
Tobias Brunner
88206458ce
Properly initialize optional subject in PEM builder.
2012-04-30 10:48:57 +02:00
Tobias Brunner
00d79edc20
Typo fixed.
2012-04-30 10:47:42 +02:00
Tobias Brunner
23cb8ba72b
Fixed null-pointer dereference in smp plugin.
2012-04-26 08:54:04 +02:00
Tobias Brunner
7d85bebc49
pluto: Fix for null-terminated XAuth secrets (as sent by Android 4).
2012-04-24 09:25:38 +02:00
Tobias Brunner
5895c2e948
Option added to set identifier for syslog(3) logging.
...
This identifier is added to each log message by syslog.
2012-04-20 09:26:12 +02:00
Tobias Brunner
7e84c4275c
Removed auth_cfg_t.replace_value() and replaced usages with add().
...
replace_value() was used to replace identities. Since for these the latest is
now returned by get(), adding the new identity with add() is sufficient.
2012-04-18 18:50:14 +02:00
Tobias Brunner
ebc1ffe451
Changed the order and semantics of rules we expect only once in auth_cfg_t.
...
These rules are now inserted at the front of the internal list, this
allows to retrieve the rule added last with get(). For other rules the
order in which they are added is maintained (this allows to properly
enumerate them).
2012-04-18 18:50:14 +02:00
Tobias Brunner
80067cf9e6
Store password with remote ID to tie it stronger to a specific connection.
2012-04-18 13:32:49 +02:00
Tobias Brunner
9f1b303afc
Added stroke user-creds command, to set username/password for a connection.
2012-04-17 14:20:58 +02:00
Tobias Brunner
7b00fdeb84
Added method to add additional shared secrets to stroke_cred_t.
2012-04-17 14:20:58 +02:00
Tobias Brunner
ff5cb888f6
Additional prompt keyword added to stroke.
2012-04-17 14:20:58 +02:00
Tobias Brunner
4c31657d2c
Typo fixed.
2012-04-17 14:20:58 +02:00
Tobias Brunner
7fd6c078b6
Use IP address as ID as responder if not configured or no IDr received.
2012-04-16 14:09:51 +02:00
Tobias Brunner
b241a37411
Fall back on IP address as IDi if none is configured at all.
2012-04-16 13:44:27 +02:00
Tobias Brunner
b447af658c
Use auth_cfg_t.replace_value where appropriate.
2012-04-16 13:44:27 +02:00
Tobias Brunner
68cca941cf
Added a simple method to replace the value of a rule in auth_cfg_t.
2012-04-16 13:44:27 +02:00
Tobias Brunner
4b32bde48e
Fixed IDi in case neither left nor leftid is configured.
2012-04-16 13:44:27 +02:00
Tobias Brunner
4e2e77d540
Typo fixed in NEWS.
2012-04-14 08:41:32 +02:00
Tobias Brunner
ae9ce83511
Properly initialize src in ike_sa_t.is_any_path_valid().
2012-04-06 10:54:44 +02:00
Tobias Brunner
bad192069f
Make AES-CMAC actually usable for IKEv2.
2012-04-04 10:51:46 +02:00
Tobias Brunner
37d43ebbde
Doxygen fixes.
2012-04-03 10:56:47 +02:00
Tobias Brunner
d7590217c3
Added NEWS about cmac plugin.
2012-04-03 10:48:03 +02:00
Tobias Brunner
811e7490f6
Added test vectors for AES-CMAC.
2012-04-03 10:45:09 +02:00
Tobias Brunner
c0d39c205c
Implemented AES-CMAC based PRF and signer.
...
The cmac plugin implements AES-CMAC as defined in RFC 4493 and the
signer and PRF based on it as defined in RFC 4494 and RFC 4615,
respectively.
2012-04-03 10:40:47 +02:00
Tobias Brunner
9a6b1cb412
Fixed GNU license header in hmac and xcbc plugins.
2012-04-03 10:33:59 +02:00
Tobias Brunner
ef511fc03d
Add support for dnQualifier in DNs.
2012-03-29 10:01:55 +02:00
Tobias Brunner
a281494abd
Added NEWS about resolvconf support.
2012-03-27 10:44:21 +02:00
Tobias Brunner
ed2cab08d2
Make resolvconf interface prefix configurable.
2012-03-27 10:44:21 +02:00
Tobias Brunner
caae5a5c0f
Added support for the resolvconf framework in resolve plugin.
...
If /sbin/resolvconf is found nameservers are not written directly to
/etc/resolv.conf but instead resolvconf is invoked.
2012-03-27 10:44:21 +02:00
Tobias Brunner
6e921f2017
Use single DBG2 statements in kernel_netlink plugin (i.e. ignore mark.value).
2012-03-27 10:37:56 +02:00
Tobias Brunner
817ab8a8d4
Don't cast second argument of mem_printf_hook (%b) to size_t.
...
Also treat the given number as unsigned int.
Due to the printf hook registration the second argument of
mem_printf_hook (if called via printf etc.) is always of type int*.
Casting this to a size_t pointer and then dereferencing that as int does
not work on big endian machines if int is smaller than size_t (e.g. on ppc64).
In order to make this change work if the argument is of a type larger
than int, size_t for instance, the second argument for %b has to be casted
to (u_)int.
2012-03-27 09:10:34 +02:00
Tobias Brunner
adfd3b992f
smp: Use proper signed type to get return value of read(2).
2012-03-27 09:10:33 +02:00
Tobias Brunner
008e2df477
pluto: Use time_monotonic() instead of a custom implementation.
2012-03-27 09:10:33 +02:00
Tobias Brunner
8e066237a7
Don't include individual glib headers in nm plugin.
...
Expections are glib/gi18n.h, glib/gi18n-lib.h, glib/gprintf.h and
glib/gstdio.h.
2012-03-26 15:23:17 +02:00
Tobias Brunner
d112a7e1fe
Properly handle retransmitted initial IKE messages.
...
This change allows to properly handle retransmits of initial IKE
messages when we've already processed them (i.e. our response is now resent
immediately).
2012-03-20 17:31:41 +01:00
Tobias Brunner
de9357bb44
Implemented table of init hashes without linked_list_t.
2012-03-20 17:31:41 +01:00
Tobias Brunner
6f0cca20d8
Implemented table of connected peers without linked_list_t.
2012-03-20 17:31:41 +01:00
Tobias Brunner
3489370458
Implemented table of half open IKE_SAs without linked_list_t.
2012-03-20 17:31:41 +01:00
Tobias Brunner
e49bb4e3e3
Don't use linked_list_t for buckets in main IKE_SA hash table.
2012-03-20 17:31:41 +01:00
Tobias Brunner
894c52cba2
Fixed deadlock if checkin_and_destroy is called during shutdown.
2012-03-20 17:31:40 +01:00
Tobias Brunner
4b2f428f40
Do not clone hashes of initial IKE messages when storing them in the hash table.
2012-03-20 17:31:40 +01:00
Tobias Brunner
20e3d5ea00
Store IKEv2 IKE_SAs by local SPI in the IKE_SA manager hash table.
...
For IKEv1 the previous behavior of always using the initiator's SPI as
key is maintained.
2012-03-20 17:31:40 +01:00
Tobias Brunner
71cf97871f
Added separate hashtable for hashes of initial IKE messages.
...
This does not require us to do a lookup for an SA by SPI first.
2012-03-20 17:31:40 +01:00
Tobias Brunner
68611395dc
chunk_equals_ptr added to compare chunks given as pointers.
2012-03-20 17:31:40 +01:00
Tobias Brunner
1726795fa9
Store the major IKE version on ike_sa_id_t.
2012-03-20 17:31:40 +01:00
Tobias Brunner
8254e7ecb8
Implemented handling of UNITY_LOAD_BALANCE as reauthentication.
2012-03-20 17:31:40 +01:00
Tobias Brunner
eff331f799
Parse IKEv1 Cisco Load Balancing notify (can't act on it yet).
2012-03-20 17:31:40 +01:00
Tobias Brunner
3a9d5cbc14
Fixed transform numbering in IKEv1 proposal.
2012-03-20 17:31:40 +01:00
Tobias Brunner
dcbdc914fa
Compiler warning fixed.
2012-03-20 17:31:40 +01:00
Tobias Brunner
bd8d1f1d9c
Accept unencrypted Aggressive Mode messages.
...
Racoon does not encrypt the third message during Aggressive Mode.
2012-03-20 17:31:34 +01:00
Tobias Brunner
db1dc81329
IKEv1 ATTRIBUTES_NOT_SUPPORTED error notify added.
2012-03-20 17:31:30 +01:00
Tobias Brunner
fd5d6bb08e
Use IPSEC DOI also for ISAKMP SA deletes.
2012-03-20 17:31:29 +01:00
Tobias Brunner
4bc4e8e17b
Added support for iKEIntermediate flag to ipsec pki.
2012-03-20 17:31:25 +01:00
Tobias Brunner
f29a4f1c64
Added support for iKEIntermediate X.509 extended key usage flag.
...
Mac OS X requires server certificates to have this flag set.
2012-03-20 17:31:24 +01:00
Tobias Brunner
00cc2188d4
Some whitespace fixes.
2012-03-20 17:31:24 +01:00
Tobias Brunner
b46b56fac1
Log parsed unsigned ints with proper format strings.
2012-03-20 17:31:24 +01:00
Tobias Brunner
a6c328a6e9
Use real ID payload to build HASH_I|R for Main Mode authentication.
...
This is required for clients like the iPhone which set the protocol
and/or port fields of the ID payload.
2012-03-20 17:31:21 +01:00
Tobias Brunner
19965ffe56
Create authenticators right when they are used during Main Mode.
2012-03-20 17:31:21 +01:00
Tobias Brunner
33493a5253
Added method to get encoded version if ID_V1 payload.
2012-03-20 17:31:21 +01:00
Tobias Brunner
6a6e000134
Log selected peer config during Main Mode.
2012-03-20 17:31:20 +01:00
Tobias Brunner
0a43f4b6c4
Log configured IKE version in stroke plugin.
2012-03-20 17:31:20 +01:00
Tobias Brunner
e6503db2cf
Fixed SIGSEGV when logging peer config matches.
2012-03-20 17:31:20 +01:00
Tobias Brunner
5383b50d88
Fixed missing shared_key initialization in main_mode task.
2012-03-20 17:31:19 +01:00
Tobias Brunner
0793ac497a
Fixed memory leak when handling IKEv1 error notifications.
2012-03-20 17:31:18 +01:00
Tobias Brunner
4dbd81c669
Destroy IKE_SA after failed XAuth authentication.
2012-03-20 17:31:17 +01:00
Tobias Brunner
3d44d735c6
Added generic XAuth backend, using secrets provided by credential sets.
2012-03-20 17:31:17 +01:00
Tobias Brunner
41e1e435d9
Removed xauth-null dummy plugin.
2012-03-20 17:31:17 +01:00