#include <ikesacontroller.h>
Inheritance diagram for openikev2::IkeSaController:

Public Types | |
| enum | IKE_SA_STATE { STATE_INITIAL, STATE_IKE_SA_INIT_SENT, STATE_IKE_AUTH_SENT, STATE_IKE_AUTH_EAP_INIT_SENT, STATE_IKE_AUTH_EAP_CONT_SENT, STATE_IKE_AUTH_EAP_FINISH_SENT, STATE_IKE_SA_INIT_RECV, STATE_IKE_AUTH_RECV, STATE_IKE_AUTH_EAP_INIT_RECV, STATE_IKE_AUTH_EAP_CONT_RECV, STATE_IKE_AUTH_EAP_SUCCESS, STATE_IKE_SA_ESTABLISHED, STATE_NEW_CHILD_SA_SENT, STATE_REKEY_CHILD_SA_SENT, STATE_REKEY_IKE_SA_SENT, STATE_DELETE_CHILD_SA_SENT, STATE_DELETE_IKE_SA_SENT, STATE_INFORMATIONAL_SENT, STATE_REDUNDANT_CHILD_SA, STATE_REDUNDANT_IKE_SA, STATE_IKE_SA_DYING, STATE_MAX } |
| IKE_SA States. More... | |
Public Member Functions | |
| IkeSaController (uint64_t my_spi, bool is_initiator, auto_ptr< IpAddress > my_addr, auto_ptr< IpAddress > peer_addr, auto_ptr< ChildSa > child_sa) | |
| Creates a new IkeSaController setting its parameters. | |
| IkeSaController (uint64_t my_spi, bool is_initiator, bool is_auth_initiator, auto_ptr< IpAddress > my_addr, auto_ptr< IpAddress > peer_addr, auto_ptr< ID > my_id, auto_ptr< ID > peer_id) | |
| Creates a new IkeSaController in a Rekey process. | |
| bool | processCommand () |
| Processes the next Command in the queues. | |
| void | addResponseNotifyPayload (auto_ptr< Payload_NOTIFY > payload_notify) |
| Adds a payload notify in the collection to be included in the next response messasge. | |
| Enums::MESSAGE_ACTION | close () |
| Close current IkeSaController. | |
| void | setState (IKE_SA_STATE state) |
| Changes the IKE_SA state. | |
| IKE_SA_STATE | getState () |
| Gets the current IKE_SA state. | |
| void | checkForCommands () |
| Checks if this IkeSaController has more commands to be executed TODO: BORRAME. | |
| void | pushDeferredCommand (auto_ptr< Command > command) |
| Pushes new Command into the deferred command queue. | |
| auto_ptr< Message > | createMessage (Message::EXCHANGE_TYPE exchange_type, Message::MESSAGE_TYPE message_type) const |
| Creates a new Message using the IKE_SA information. | |
| Enums::MESSAGE_ACTION | createIkeSaInitRequest () |
| Creates and sends a new IKE_SA_INIT request to the peer Uses the internal proposal and the DH group indicated in the first DH transform. | |
| Enums::MESSAGE_ACTION | createIkeSaInitResponse () |
| Creates and sends a new IKE_SA_INIT response to the peer. | |
| Enums::MESSAGE_ACTION | createIkeAuthRequest (Payload_CERT_REQ *received_payload_cert_req) |
| Creates a new IKE_AUTH request. | |
| Enums::MESSAGE_ACTION | createIkeAuthNoEapResponse (auto_ptr< Payload_CONF > payload_conf_r, auto_ptr< Certificate > my_certificate) |
| Creates a new IKE_AUTH response. | |
| Enums::MESSAGE_ACTION | createRekeyChildSaRequest (uint32_t spi_rekey) |
| Creates a new CREATE_CHILD_SA exchange request to rekey a CHILD_SA. | |
| Enums::MESSAGE_ACTION | createNewChildSaRequest (auto_ptr< ChildSa > child_sa) |
| Creates a new CREATE_CHILD_SA exchange request to create a new CHILD_SA. | |
| Enums::MESSAGE_ACTION | createChildSaResponse () |
| Creates a new CREATE_CHILD_SA response. | |
| Enums::MESSAGE_ACTION | generateInformationalRequest (AutoVector< Payload > payloads) |
| Creates a new INFORMATIONAL request. | |
| Enums::MESSAGE_ACTION | createInformationalResponse (AutoVector< Payload > responses) |
| Creates a new INFORMATIONAL response. | |
| Enums::MESSAGE_ACTION | createRekeyIkeSaRequest () |
| Creates a new IKE_SA REKEY request. | |
| Enums::MESSAGE_ACTION | createRekeyIkeSaResponse () |
| Creates a new IKE_SA REKEY response. | |
| Enums::MESSAGE_ACTION | createEapInitResponse (auto_ptr< Certificate > my_certificate) |
| Creates a new EAP_INIT response. | |
| Enums::MESSAGE_ACTION | createEapContinueRequest (auto_ptr< Payload_EAP > payload_eap) |
| Creates a new EAP_CONTINUE request. | |
| Enums::MESSAGE_ACTION | createEapContinueResponse (auto_ptr< Payload_EAP > payload_eap) |
| Creates a new EAP_CONTINUE response. | |
| Enums::MESSAGE_ACTION | createEapFinishRequest () |
| Creates a new EAP_FINISH request. | |
| Enums::MESSAGE_ACTION | createEapFinishResponse (auto_ptr< Payload_CONF > payload_conf_r) |
| Creates a new EAP_FINISH response. | |
| Enums::MESSAGE_ACTION | createDeleteChildSaRequest (uint32_t spi) |
| Creates a new INFORMATIONAL request to delete a CHILD_SA. | |
| Enums::MESSAGE_ACTION | createDeleteIkeSaRequest () |
| Creates a new INFORMATIONAL request to delete the IKE_SA. | |
| Enums::MESSAGE_ACTION | createInformationalRequest (AutoVector< Payload > payloads) |
| Creates a new INFORMATIONAL request with generic information. | |
| Enums::MESSAGE_ACTION | processIkeSaInitRequest (Message &message) |
| Process an IKE_SA_INIT request Message and performs adequated actions. | |
| Enums::MESSAGE_ACTION | processIkeSaInitResponse (Message &message) |
| Process an IKE_SA_INIT response Message and performs adequated actions. | |
| Enums::MESSAGE_ACTION | processIkeAuthRequest (Message &message) |
| Process an IKE_AUTH request Message and performs adequated actions. | |
| Enums::MESSAGE_ACTION | processIkeAuthNoEapRequest (Message &message) |
| Process an IKE_AUTH request when no EAP is being used, and perform the adequated actions. | |
| Enums::MESSAGE_ACTION | processIkeAuthResponse (Message &message) |
| Process an IKE_AUTH response Message and performs adequated actions. | |
| Enums::MESSAGE_ACTION | processIkeAuthNoEapResponse (Message &message) |
| Process an IKE_AUTH response when no EAP is being used, and perform the adequated actions. | |
| Enums::MESSAGE_ACTION | processCreateChildSaRequest (Message &message) |
| Process an CREATE_CHILD_SA request Message and performs adequated actions. | |
| Enums::MESSAGE_ACTION | processNewChildSaRequest (Message &message) |
| Enums::MESSAGE_ACTION | processRekeyChildSaRequest (Message &message) |
| Enums::MESSAGE_ACTION | processRekeyIkeSaRequest (Message &message) |
| Enums::MESSAGE_ACTION | processCreateChildSaResponse (Message &message) |
| Enums::MESSAGE_ACTION | processNewChildSaResponse (Message &message) |
| Enums::MESSAGE_ACTION | processRekeyChildSaResponse (Message &message) |
| Enums::MESSAGE_ACTION | processRekeyIkeSaResponse (Message &message) |
| Enums::MESSAGE_ACTION | processInformationalRequest (Message &message) |
| Process an INFORMATIONAL request Message and performs adequated actions. | |
| Enums::MESSAGE_ACTION | processInformationalResponse (Message &message) |
| Enums::MESSAGE_ACTION | processEapInitRequest (Message &message) |
| Process an EAP_INIT request Message and performs adequated actions. | |
| Enums::MESSAGE_ACTION | processEapInitResponse (Message &message) |
| Process an EAP_INIT response Message and performs adequated actions. | |
| Enums::MESSAGE_ACTION | processEapContinueRequest (Message &message) |
| Process an EAP_CONTINUE request Message and performs adequated actions. | |
| Enums::MESSAGE_ACTION | processEapContinueResponse (Message &message) |
| Process an EAP_CONTINUE response Message and performs adequated actions. | |
| Enums::MESSAGE_ACTION | processEapFinishRequest (Message &message) |
| Process an EAP_FINISH request Message and performs adequated actions. | |
| Enums::MESSAGE_ACTION | processEapFinishResponse (Message &message) |
| Process and EAP_FINISH response Message and performs appropiated actions. | |
| Enums::MESSAGE_ACTION | processMessage (Message &message) |
| Process a received Message. | |
| Enums::NOTIFY_ACTION | processNotifies (Message &message, ChildSa *child_sa) |
| Process the notification payloads included in message and perform the apropiated actions. | |
| void | sendNotifyResponse (Message::EXCHANGE_TYPE type, auto_ptr< Payload_NOTIFY > notify) |
| AutoVector< Payload > | processDeleteRequest (vector< Payload * > payloads_delete) |
| Process delete requests. | |
| AutoVector< Payload > | processNotifyRequest (Message &message) |
| Process notify requests. | |
| AutoVector< Payload > | processConfigRequest (vector< Payload * > payloads_config) |
| Process configuration requests. | |
| void | processDeleteResponse (vector< Payload * > payloads_delete) |
| Process delete response. | |
| void | processNotifyResponse (Message &message) |
| Process notify response. | |
| void | processConfigResponse (vector< Payload * > payloads_config) |
| Process configuration response. | |
| Enums::MESSAGE_ACTION | retransmitLastRequest () |
| Retransmits last sent request. | |
| void | retransmitLastResponse () |
| Retransmit las sent response. | |
| void | notifyAlarm (Alarm &alarm) |
| Executes tasks associated to alarm events. | |
| Enums::MESSAGE_ACTION | processAlarm (Alarm &alarm) |
| void | IKE_SA_ERROR_i (string error1, string error2, Payload_NOTIFY::NOTIFY_TYPE error_type) |
| Performs the common actions associated to a IKE_SA error in the initiator side. | |
| void | IKE_SA_ERROR_r (string error1, string error2, Payload_NOTIFY::NOTIFY_TYPE error_type, Message::EXCHANGE_TYPE exchange_type) |
| Performs the common actions associated to a IKE_SA error in the responder side. | |
| void | IKE_SA_ERROR (bool initiator, string error1, string error2, Payload_NOTIFY::NOTIFY_TYPE error_type, Message::EXCHANGE_TYPE exchange_type) |
| void | CHILD_SA_ERROR_i (string error1, string error2, Payload_NOTIFY::NOTIFY_TYPE error_type, ChildSa &child_sa) |
| Performs the common actions associated to a CHILD_SA error in the initiator side These actions are: Write a log message, send a bus event, delete the ike configuration object and push an ExitCommand. | |
| void | CHILD_SA_ERROR_r (string error1, string error2, Payload_NOTIFY::NOTIFY_TYPE error_type, Message::EXCHANGE_TYPE exchange_type, ChildSa &child_sa) |
| Performs the common actions associated to a CHILD_SA error in the responder side These actions are: Send a error notify, write a log message, send a bus event, delete the ike configuration object and push an ExitCommand. | |
| IkeConfiguration & | getIkeConfiguration () const |
Static Public Member Functions | |
| static string | IKE_SA_STATE_STR (IKE_SA_STATE state) |
| Gets a textual representation of an IKE_SA state. | |
Public Attributes | |
| uint64_t | my_spi |
| Our SPI. | |
| uint64_t | peer_spi |
| Peer SPI. | |
| auto_ptr< IpAddress > | my_addr |
| Our address. | |
| auto_ptr< IpAddress > | peer_addr |
| Peer IP address. | |
| uint32_t | my_message_id |
| Current own message id. | |
| uint32_t | peer_message_id |
| Expected peer message id. | |
| bool | is_initiator |
| Indicates if we are the original initiator. | |
| bool | is_auth_initiator |
| Indicates if we are the original authentication initiator. | |
| auto_ptr< Message > | ike_sa_init_req |
| IKE_SA_INIT request message. | |
| auto_ptr< Message > | ike_sa_init_res |
| IKE_SA_INIT response message. | |
| auto_ptr< Message > | last_sent_request |
| Last sent request. | |
| auto_ptr< Message > | last_sent_response |
| Last sent response. | |
| uint32_t | remaining_timeout_retries |
| Remaining retries to send the current request. | |
| auto_ptr< Alarm > | retransmition_alarm |
| Retransmition alarm. | |
| auto_ptr< EapClientController > | eap_client_controller |
| EAP Controller. | |
| auto_ptr< EapServerController > | eap_server_controller |
| EAP Controller. | |
| bool | is_half_open |
| Indicates if this IKE_SA is half open. | |
| auto_ptr< ID > | my_id |
| Our identification. | |
| auto_ptr< ID > | peer_id |
| Peer identification. | |
| auto_ptr< AttributeMap > | attributemap |
| Extra attributes. | |
| bool | peer_support_hash_url |
| Indicates if peer supports HASH & URL certificates. | |
| map< uint32_t, ChildSa * > | child_sa_collection_inbound |
| Child SA collection (indexed by inbound SPI). | |
| map< uint32_t, ChildSa * > | child_sa_collection_outbound |
| Child SA collection (indexed by outbound SPI). | |
| auto_ptr< ChildSa > | my_creating_child_sa |
| CHILD SA being created by us. | |
| auto_ptr< ChildSa > | peer_creating_child_sa |
| CHILD SA being created by the peer. | |
| auto_ptr< Alarm > | rekey_ike_sa_alarm |
| Rekey IKE SA notification alarm. | |
| auto_ptr< Alarm > | halfopen_alarm |
| Alarm limiting the negotiation time of the IKE SA. | |
| auto_ptr< ByteArray > | my_nonce |
| Our nonce payload. | |
| auto_ptr< ByteArray > | peer_nonce |
| Peer nonce payload. | |
| bool | is_idle |
| If the IKE_SA is not used since the last rekeying. | |
| auto_ptr< IkeSaController > | my_creating_ike_sa |
| IKE SA being created by us. | |
| auto_ptr< IkeSaController > | peer_creating_ike_sa |
| IKE SA being created by the peer. | |
| bool | is_dying |
| Indicates if this IkeSaController is dying. | |
| auto_ptr< ByteArray > | my_vendor_id |
| Our VENDOR ID. | |
| auto_ptr< ByteArray > | peer_vendor_id |
| Peer VENDOR ID. | |
| auto_ptr< DiffieHellman > | dh |
| Diffie Hellman used to compute IKE SA shared secret. | |
Protected Member Functions | |
| void | base (uint64_t my_spi, bool is_initiator, auto_ptr< IpAddress > my_addr, auto_ptr< IpAddress > peer_addr) |
| Base IkeSaController creation method. | |
| void | pushCommand (auto_ptr< Command > command, bool priority) |
| Pushes a new Command into the queue. | |
| auto_ptr< Command > | popDeferredCommand () |
| Extracts the first Message from the deferred queue. | |
| auto_ptr< Command > | popCommand () |
| Extracts the first Message from the queue. | |
| bool | checkPeerIkeSpi (Message &message) |
| Checks the peer SPI value of the Message. | |
| bool | checkMessageId (Message &message) |
| Checks the sequence number of the MEssage. | |
| void | createChildSa (auto_ptr< ChildSa > child_sa) |
| Creates physically a new ChildSa and adds it into collection. | |
| void | inheritIkeSaStatus (IkeSaController &other) |
| ChildSa * | getChildSa (uint32_t spi) |
| Proposal & | getProposal () const |
| void | setProposal (auto_ptr< Proposal > proposal) |
| Enums::MESSAGE_ACTION | createIkeSaNegotiationRequest (Message &message, IkeSaController &ike_sa_controller) |
| Enums::MESSAGE_ACTION | processIkeSaNegotiationResponse (Message &message, IkeSaController &ike_sa_controller) |
| Enums::MESSAGE_ACTION | processIkeSaNegotiationRequest (Message &message, IkeSaController &ike_sa_controller) |
| Enums::MESSAGE_ACTION | createIkeSaNegotiationResponse (Message &message, IkeSaController &ike_sa_controller) |
| Enums::MESSAGE_ACTION | createChildSaNegotiationRequest (Message &message) |
| Enums::MESSAGE_ACTION | processChildSaNegotiationResponse (Message &message) |
| Enums::MESSAGE_ACTION | processChildSaNegotiationRequest (Message &message) |
| Enums::MESSAGE_ACTION | createChildSaNegotiationResponse (Message &message) |
Static Protected Member Functions | |
| static IkeSaController & | hasMinNonce (const IkeSaController &ike_sa_controller1, const IkeSaController &ike_sa_controller2) |
| Determines what IkeSaController has the minimal nonce value. | |
Protected Attributes | |
| IKE_SA_STATE | state |
| IKE SA state. | |
| auto_ptr< IkeConfiguration > | ike_configuration |
| IKE SA configuration. | |
| auto_ptr< IpsecConfiguration > | ipsec_configuration |
| Configuration for all the Child SAs. | |
| deque< Command * > | command_queue |
| Command Queue. | |
| deque< Command * > | deferred_queue |
| Deferred Command Queue. | |
| bool | has_pending_command |
| Indicates if the IKE SA has pending commands to be executed. | |
| auto_ptr< Mutex > | mutex_command_queue |
| Mutex to protect command queue accesses. | |
| AutoVector< Payload_NOTIFY > | response_notifies_to_be_included |
| Payload collection that must be included in the next response message. | |
| auto_ptr< Cipher > | send_cipher |
| Cipher used to encrypt outgoing messages. | |
| auto_ptr< Cipher > | receive_cipher |
| Cipher used to decrypt incoming messages. | |
| auto_ptr< PseudoRandomFunction > | prf |
| PRF used to create AUTH payloads and more. | |
| auto_ptr< KeyRing > | key_ring |
| IKE SA KeyRing. | |
Friends | |
| class | ThreadControllerImpl |
| class | BusEventIkeSa |
IKE_SA States.
| openikev2::IkeSaController::IkeSaController | ( | uint64_t | my_spi, | |
| bool | is_initiator, | |||
| auto_ptr< IpAddress > | my_addr, | |||
| auto_ptr< IpAddress > | peer_addr, | |||
| auto_ptr< ChildSa > | child_sa | |||
| ) |
Creates a new IkeSaController setting its parameters.
| openikev2::IkeSaController::IkeSaController | ( | uint64_t | my_spi, | |
| bool | is_initiator, | |||
| bool | is_auth_initiator, | |||
| auto_ptr< IpAddress > | my_addr, | |||
| auto_ptr< IpAddress > | peer_addr, | |||
| auto_ptr< ID > | my_id, | |||
| auto_ptr< ID > | peer_id | |||
| ) |
Creates a new IkeSaController in a Rekey process.
| spi | SPI given to this IKE_SA. | |
| is_initiator | Indicates if this is the initiator. | |
| is_auth_initiator | Indicates if this is the authentication initiator. | |
| addr | Own IpAddress used to communicate with the Peer. | |
| peer_addr | Peer IpAddress wich communicates with us. | |
| my_id | Own ID to use with this IKE_SA | |
| peer_id | Peer ID to use with this IKE_SA |
| void openikev2::IkeSaController::base | ( | uint64_t | my_spi, | |
| bool | is_initiator, | |||
| auto_ptr< IpAddress > | my_addr, | |||
| auto_ptr< IpAddress > | peer_addr | |||
| ) | [protected] |
Base IkeSaController creation method.
Used in all the different constructors.
| spi | IKE_SA SPI | |
| is_initiator | Indicates if we are initiators | |
| addr | Own IP Address | |
| peer_addr | Peer IP Address |
| IkeSaController & openikev2::IkeSaController::hasMinNonce | ( | const IkeSaController & | ike_sa_controller1, | |
| const IkeSaController & | ike_sa_controller2 | |||
| ) | [static, protected] |
Determines what IkeSaController has the minimal nonce value.
| ike_sa_controller1 | IkeSaController object to compare its nonces | |
| ike_sa_controller2 | IkeSaController object to compare its nonces |
| void openikev2::IkeSaController::pushCommand | ( | auto_ptr< Command > | command, | |
| bool | priority | |||
| ) | [protected] |
| auto_ptr< Command > openikev2::IkeSaController::popDeferredCommand | ( | ) | [protected] |
| auto_ptr< Command > openikev2::IkeSaController::popCommand | ( | ) | [protected] |
| bool openikev2::IkeSaController::checkPeerIkeSpi | ( | Message & | message | ) | [protected] |
| bool openikev2::IkeSaController::checkMessageId | ( | Message & | message | ) | [protected] |
Checks the sequence number of the MEssage.
| message | Message to be checked. |
| void openikev2::IkeSaController::createChildSa | ( | auto_ptr< ChildSa > | child_sa | ) | [protected] |
| string openikev2::IkeSaController::IKE_SA_STATE_STR | ( | IKE_SA_STATE | state | ) | [static] |
Gets a textual representation of an IKE_SA state.
| state | IKE_SA state |
| bool openikev2::IkeSaController::processCommand | ( | ) |
Processes the next Command in the queues.
| void openikev2::IkeSaController::addResponseNotifyPayload | ( | auto_ptr< Payload_NOTIFY > | payload_notify | ) |
Adds a payload notify in the collection to be included in the next response messasge.
| payload_notify | Payload_NOTIFY to be included in the collection |
| void openikev2::IkeSaController::setState | ( | IKE_SA_STATE | state | ) |
Changes the IKE_SA state.
| state | New IKE_SA state |
| IkeSaController::IKE_SA_STATE openikev2::IkeSaController::getState | ( | ) |
Gets the current IKE_SA state.
| void openikev2::IkeSaController::pushDeferredCommand | ( | auto_ptr< Command > | command | ) |
| auto_ptr< Message > openikev2::IkeSaController::createMessage | ( | Message::EXCHANGE_TYPE | exchange_type, | |
| Message::MESSAGE_TYPE | message_type | |||
| ) | const |
| Enums::MESSAGE_ACTION openikev2::IkeSaController::createIkeSaInitRequest | ( | ) |
Creates and sends a new IKE_SA_INIT request to the peer Uses the internal proposal and the DH group indicated in the first DH transform.
| Enums::MESSAGE_ACTION openikev2::IkeSaController::createIkeSaInitResponse | ( | ) |
Creates and sends a new IKE_SA_INIT response to the peer.
| Enums::MESSAGE_ACTION openikev2::IkeSaController::createIkeAuthRequest | ( | Payload_CERT_REQ * | received_payload_cert_req | ) |
Creates a new IKE_AUTH request.
| received_payload_cert_req | Received PAYLOAD_CERT_REQ in the IKE_SA_INIT exchange response. NULL if not received |
| Enums::MESSAGE_ACTION openikev2::IkeSaController::createIkeAuthNoEapResponse | ( | auto_ptr< Payload_CONF > | payload_conf_r, | |
| auto_ptr< Certificate > | my_certificate | |||
| ) |
Creates a new IKE_AUTH response.
| payload_conf_r | Response configuration payload. | |
| my_certificate | My certificate to sign the AUTH |
| Enums::MESSAGE_ACTION openikev2::IkeSaController::createRekeyChildSaRequest | ( | uint32_t | spi_rekey | ) |
Creates a new CREATE_CHILD_SA exchange request to rekey a CHILD_SA.
| spi_rekey | SPI of the CHILD_SA to be rekeyed |
| Enums::MESSAGE_ACTION openikev2::IkeSaController::createNewChildSaRequest | ( | auto_ptr< ChildSa > | child_sa | ) |
Creates a new CREATE_CHILD_SA exchange request to create a new CHILD_SA.
| child_sa | CHILD_SA to be created |
| Enums::MESSAGE_ACTION openikev2::IkeSaController::createChildSaResponse | ( | ) |
Creates a new CREATE_CHILD_SA response.
| Enums::MESSAGE_ACTION openikev2::IkeSaController::generateInformationalRequest | ( | AutoVector< Payload > | payloads | ) |
Creates a new INFORMATIONAL request.
| Enums::MESSAGE_ACTION openikev2::IkeSaController::createInformationalResponse | ( | AutoVector< Payload > | responses | ) |
Creates a new INFORMATIONAL response.
| Enums::MESSAGE_ACTION openikev2::IkeSaController::createRekeyIkeSaRequest | ( | ) |
Creates a new IKE_SA REKEY request.
| Enums::MESSAGE_ACTION openikev2::IkeSaController::createRekeyIkeSaResponse | ( | ) |
Creates a new IKE_SA REKEY response.
| Enums::MESSAGE_ACTION openikev2::IkeSaController::createEapInitResponse | ( | auto_ptr< Certificate > | my_certificate | ) |
Creates a new EAP_INIT response.
| Enums::MESSAGE_ACTION openikev2::IkeSaController::createEapContinueRequest | ( | auto_ptr< Payload_EAP > | payload_eap | ) |
Creates a new EAP_CONTINUE request.
| payload_eap | The EAP payload to be included in the message |
| Enums::MESSAGE_ACTION openikev2::IkeSaController::createEapContinueResponse | ( | auto_ptr< Payload_EAP > | payload_eap | ) |
Creates a new EAP_CONTINUE response.
| payload_eap | The EAP payload to be included in the message |
| Enums::MESSAGE_ACTION openikev2::IkeSaController::createEapFinishRequest | ( | ) |
Creates a new EAP_FINISH request.
| Enums::MESSAGE_ACTION openikev2::IkeSaController::createEapFinishResponse | ( | auto_ptr< Payload_CONF > | payload_conf_r | ) |
Creates a new EAP_FINISH response.
| payload_conf_r | Response Payload_CONF to be included in the response |
| Enums::MESSAGE_ACTION openikev2::IkeSaController::createDeleteChildSaRequest | ( | uint32_t | spi | ) |
Creates a new INFORMATIONAL request to delete a CHILD_SA.
| spi | SPI of the SA to be deleted. If 0 value, then IKE_SA delete is assumed. |
| Enums::MESSAGE_ACTION openikev2::IkeSaController::createDeleteIkeSaRequest | ( | ) |
Creates a new INFORMATIONAL request to delete the IKE_SA.
| Enums::MESSAGE_ACTION openikev2::IkeSaController::createInformationalRequest | ( | AutoVector< Payload > | payloads | ) |
Creates a new INFORMATIONAL request with generic information.
| payloads | Payloads to be sent within the message |
| Enums::MESSAGE_ACTION openikev2::IkeSaController::processIkeSaInitRequest | ( | Message & | message | ) |
| Enums::MESSAGE_ACTION openikev2::IkeSaController::processIkeSaInitResponse | ( | Message & | message | ) |
| Enums::MESSAGE_ACTION openikev2::IkeSaController::processIkeAuthRequest | ( | Message & | message | ) |
| Enums::MESSAGE_ACTION openikev2::IkeSaController::processIkeAuthNoEapRequest | ( | Message & | message | ) |
Process an IKE_AUTH request when no EAP is being used, and perform the adequated actions.
| message | IKE_AUTH request Message. |
| Enums::MESSAGE_ACTION openikev2::IkeSaController::processIkeAuthResponse | ( | Message & | message | ) |
| Enums::MESSAGE_ACTION openikev2::IkeSaController::processIkeAuthNoEapResponse | ( | Message & | message | ) |
Process an IKE_AUTH response when no EAP is being used, and perform the adequated actions.
| message | IKE_AUTH response Message. |
| Enums::MESSAGE_ACTION openikev2::IkeSaController::processCreateChildSaRequest | ( | Message & | message | ) |
| Enums::MESSAGE_ACTION openikev2::IkeSaController::processInformationalRequest | ( | Message & | message | ) |
| Enums::MESSAGE_ACTION openikev2::IkeSaController::processEapInitRequest | ( | Message & | message | ) |
| Enums::MESSAGE_ACTION openikev2::IkeSaController::processEapInitResponse | ( | Message & | message | ) |
| Enums::MESSAGE_ACTION openikev2::IkeSaController::processEapContinueRequest | ( | Message & | message | ) |
| Enums::MESSAGE_ACTION openikev2::IkeSaController::processEapContinueResponse | ( | Message & | message | ) |
Process an EAP_CONTINUE response Message and performs adequated actions.
| message | EAP_CONTINUE response message. |
| Enums::MESSAGE_ACTION openikev2::IkeSaController::processEapFinishRequest | ( | Message & | message | ) |
| Enums::MESSAGE_ACTION openikev2::IkeSaController::processEapFinishResponse | ( | Message & | message | ) |
| Enums::MESSAGE_ACTION openikev2::IkeSaController::processMessage | ( | Message & | message | ) |
| Enums::NOTIFY_ACTION openikev2::IkeSaController::processNotifies | ( | Message & | message, | |
| ChildSa * | child_sa | |||
| ) |
Process the notification payloads included in message and perform the apropiated actions.
| message | Received message | |
| child_sa | Child SA needed to process notifications (NULL if not needed) |
| AutoVector< Payload > openikev2::IkeSaController::processDeleteRequest | ( | vector< Payload * > | payloads_delete | ) |
Process delete requests.
| payloads_delete | Delete payload collection (outbound half) |
| AutoVector< Payload > openikev2::IkeSaController::processNotifyRequest | ( | Message & | message | ) |
Process notify requests.
| message | Received INFORMATIONAL request |
| AutoVector< Payload > openikev2::IkeSaController::processConfigRequest | ( | vector< Payload * > | payloads_config | ) |
Process configuration requests.
| payloads_config | Configuration payload collection |
| void openikev2::IkeSaController::processDeleteResponse | ( | vector< Payload * > | payloads_delete | ) |
Process delete response.
| payloads_delete | Delete payload collection (outbound half) |
| void openikev2::IkeSaController::processNotifyResponse | ( | Message & | message | ) |
Process notify response.
| message | Received INFORMATIONAL response |
| void openikev2::IkeSaController::processConfigResponse | ( | vector< Payload * > | payloads_config | ) |
| void openikev2::IkeSaController::notifyAlarm | ( | Alarm & | alarm | ) | [virtual] |
Executes tasks associated to alarm events.
| alarm | Alarm that produces current event. |
Implements openikev2::Alarmable.
| void openikev2::IkeSaController::IKE_SA_ERROR_i | ( | string | error1, | |
| string | error2, | |||
| Payload_NOTIFY::NOTIFY_TYPE | error_type | |||
| ) |
Performs the common actions associated to a IKE_SA error in the initiator side.
| error1 | Text string shown before IKE_SA SPI value | |
| error2 | Text string shown after IKE_SA SPI value | |
| error_type | Type of the error. |
| void openikev2::IkeSaController::IKE_SA_ERROR_r | ( | string | error1, | |
| string | error2, | |||
| Payload_NOTIFY::NOTIFY_TYPE | error_type, | |||
| Message::EXCHANGE_TYPE | exchange_type | |||
| ) |
Performs the common actions associated to a IKE_SA error in the responder side.
These actions are: Write a log message, send a bus event, delete the ike configuration object and push an ExitCommand.
| error1 | Text string shown before IKE_SA SPI value | |
| error2 | Text string shown after IKE_SA SPI value | |
| error_type | Type of the error. | |
| exchange_type | Exchange type. |
| void openikev2::IkeSaController::CHILD_SA_ERROR_i | ( | string | error1, | |
| string | error2, | |||
| Payload_NOTIFY::NOTIFY_TYPE | error_type, | |||
| ChildSa & | child_sa | |||
| ) |
Performs the common actions associated to a CHILD_SA error in the initiator side These actions are: Write a log message, send a bus event, delete the ike configuration object and push an ExitCommand.
| error1 | Text string shown before IKE_SA SPI value | |
| error2 | Text string shown after IKE_SA SPI value | |
| error_type | Type of the error. | |
| child_sa | Failed Child SA (the method will delete it) . |
| void openikev2::IkeSaController::CHILD_SA_ERROR_r | ( | string | error1, | |
| string | error2, | |||
| Payload_NOTIFY::NOTIFY_TYPE | error_type, | |||
| Message::EXCHANGE_TYPE | exchange_type, | |||
| ChildSa & | child_sa | |||
| ) |
Performs the common actions associated to a CHILD_SA error in the responder side These actions are: Send a error notify, write a log message, send a bus event, delete the ike configuration object and push an ExitCommand.
| error1 | Text string shown before IKE_SA SPI value | |
| error2 | Text string shown after IKE_SA SPI value | |
| error_type | Type of the error. | |
| exchange_type | Exchange type | |
| child_sa | Failed Child SA (the method will delete it) . |
IKE_SA_INIT request message.
It is stored in order to generate and check the AUTH payload
IKE_SA_INIT response message.
It is stored in order to generete and check the AUTH payload
Extra attributes.
This attribute will be inherit by the new IKE_SA when rekeying
| map<uint32_t, ChildSa*> openikev2::IkeSaController::child_sa_collection_outbound |
Child SA collection (indexed by outbound SPI).
This collection is redundant and it exist only for performance reasons.
1.5.1