Commit Graph
390 Commits
Author SHA1 Message Date
Martin Willi 7b25135ecf Send certificates and requests when using Hybrid authentication 2012-03-20 17:31:21 +01:00
Martin Willi d1b986eb48 Look for an XAuth authentication config both in the first and the second round 2012-03-20 17:31:21 +01:00
Martin Willi d548435a02 Added hybrid authentication support to Main Mode 2012-03-20 17:31:21 +01:00
Martin Willi 29101ce978 Added a IKEv1 hybrid authenticator based on Pubkey/PSK authenticators 2012-03-20 17:31:21 +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
Martin Willi 0b0191e143 Ignore additional TRANSACTION request if we already queued one 2012-03-20 17:31:21 +01:00
Martin Willi fce566a876 Keep a history of received response hashes to detect late retransmissions
If we receive an old response and we already sent out the next request,
we must be able to identify that it is not the response to the new
request.
2012-03-20 17:31:20 +01:00
Martin Willi 3643179535 Narrow down received and configured traffic selector to a common subset 2012-03-20 17:31:20 +01:00
Martin Willi 7b34de45c3 Don't send a retransmit for a request we never have sent a response 2012-03-20 17:31:20 +01:00
Martin Willi f5ef357791 Print unsigned IKEv1 message IDs 2012-03-20 17:31:20 +01:00
Tobias Brunner 6a6e000134 Log selected peer config during Main Mode. 2012-03-20 17:31:20 +01:00
Martin Willi 9f10b95a3b Added a bunch of well known IKEv1 vendor IDs to database 2012-03-20 17:31:20 +01:00
Martin Willi 156cd8827f Use a generic IKEv1 vendor ID database to send and receive vendor IDs 2012-03-20 17:31:20 +01:00
Martin Willi 360c3394cf Fixed compiler warning (set but unused variable) 2012-03-20 17:31:20 +01:00
Martin Willi f91b6ac77a Queue a TRANSACTION message for later processing if Main Mode not yet completed 2012-03-20 17:31:20 +01:00
Martin Willi 41fbde4544 Reset task manager state when build() completes an exchange (quick mode) 2012-03-20 17:31:19 +01:00
Martin Willi 92aa6e0255 Include COOKIES in IKEv1 delete payloads 2012-03-20 17:31:19 +01:00
Tobias Brunner 5383b50d88 Fixed missing shared_key initialization in main_mode task. 2012-03-20 17:31:19 +01:00
Martin Willi c9fc577a8a Use version specific DELETE payload identifier in ike_delete task 2012-03-20 17:31:19 +01:00
Martin Willi 8ef2bae4db Activate DELETE tasks when queued 2012-03-20 17:31:19 +01:00
Martin Willi 5dec456b69 Fix IKEv1 DELETE subtask creation and processing 2012-03-20 17:31:19 +01:00
Martin Willi 10e18713f1 Handle DELETE as responder as INFORMATIONAL subtask 2012-03-20 17:31:19 +01:00
Martin Willi 46505067c7 Close SA immediately after sending an INFORMATIONAL error 2012-03-20 17:31:18 +01:00
Martin Willi 97933967a0 Moved responder informational handling to task 2012-03-20 17:31:18 +01:00
Martin Willi 1cc3e92ccc Check if IKEv1 exchange type matches before handling it as response 2012-03-20 17:31:18 +01:00
Martin Willi e7ae90c194 Use informational task in quick mode to send notifies 2012-03-20 17:31:18 +01:00
Martin Willi b47052694f Cleaned up notification sending in IKEv1 task manager 2012-03-20 17:31:18 +01:00
Martin Willi accf46129a Use informational taks to send notify errors 2012-03-20 17:31:18 +01:00
Martin Willi f492907667 Added a task stub to create and process IKEv1 informational exchanges 2012-03-20 17:31:18 +01:00
Martin Willi 590ca1d482 Allow IKEv1 tasks to return ALREADY_DONE to flush all active or passive tasks 2012-03-20 17:31:18 +01:00
Martin Willi 0f61964ed7 Support flushing of single tasks queues in IKEv1 task manager 2012-03-20 17:31:18 +01:00
Martin Willi 9862852823 Double check if we have a packet before retransmitting it 2012-03-20 17:31:18 +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
Clavister OpenSource 5c6abd2865 Added possibility to send notifications from the Quick Mode task 2012-03-20 17:31:17 +01:00
Clavister OpenSource e647c98a13 Setting Protocol ID of notifys sent from task manager to ISAKMP 2012-03-20 17:31:17 +01:00
Martin Willi cc6b03bb5a If no IKEv1 shared key found for hosts, try to find one based on config identities 2012-03-20 17:31:17 +01:00
Martin Willi 033dfba01f Log peer cfg enumeration externally for flexibility 2012-03-20 17:31:17 +01:00
Martin Willi d7376e2ab4 Accept NULL identities passed to peer config enumeration 2012-03-20 17:31:17 +01:00
Martin Willi 0e2cc3fed9 Fixed authentication method selection for main mode PSK authentication 2012-03-20 17:31:17 +01:00
Martin Willi ea9e047bc5 Use virtual IP to substitute dynamic traffic selectors in quick mode 2012-03-20 17:31:17 +01:00
Martin Willi 156b8662a6 Queue Mode Config tasks when required 2012-03-20 17:31:16 +01:00
Martin Willi b155084c42 Added IKEv1 Mode Config task based on IKEv2 ike_config 2012-03-20 17:31:16 +01:00
Martin Willi a22b9e4f33 Reject quick modes if IKE_SA not yet established 2012-03-20 17:31:16 +01:00
Martin Willi 67a753b95c Use a common function to set IKE_SA to established 2012-03-20 17:31:16 +01:00
Martin Willi 9f43868a01 Implemented responder part of XAUTH task 2012-03-20 17:31:16 +01:00
Martin Willi d192cc9dc8 Implemented initiator part of xauth task 2012-03-20 17:31:16 +01:00
Martin Willi 59ee898326 Get first XAuth backend if none configured 2012-03-20 17:31:16 +01:00