|
Data Structures |
| struct | IKEv2Session |
| | IKEv2 Session data. This structure is also used as a element of linked list with all active IKEv2 sessions. More...
|
| struct | ikev2_ctx |
| | IKEv2 context structure. Used for storing global configuration options and list of active IKEv2 sessions. More...
|
Defines |
| #define | IKEv2_STY_INITIATOR 1 |
| #define | IKEv2_STY_RESPONDER 2 |
| #define | IKEv2_DEFAULT_DH_COUNTER_MAX 3 |
| #define | IKEv2_DEFAULT_DH_COUNTER_MAX_STR TOSTRING(IKEv2_DEFAULT_DH_COUNTER_MAX) |
| #define | IKEv2_DEFAULT_MAX_FRAGMENT_SIZE 1398 |
| #define | IKEv2_DEFAULT_MAX_FRAGMENT_SIZE_STR TOSTRING(IKEv2_DEFAULT_MAX_FRAGMENT_SIZE) |
| #define | IKEv2_DEFAULT_IDTYPE IKEv2_IDT_KEY_ID |
| #define | IKEv2_DEFAULT_IDTYPE_STR "KEY_ID" |
| #define | RAW_FASTID_LEN 20 |
Typedefs |
| typedef ikev2_ctx | ikev2_ctx |
| | IKEv2 context structure. Used for storing global configuration options and list of active IKEv2 sessions.
|
Enumerations |
| enum | IKEv2_SST { IKEv2_SST_NORMAL = 0,
IKEv2_SST_FAILED,
IKEv2_SST_ESTABLISHED,
IKEv2_SST_REKEYING
} |
Functions |
| IKEv2Session * | NewSession (struct ikev2_ctx *i2, uint64_t iSPI, uint64_t rSPI, int Type) |
| | Begin new IKEv2 session.
|
| IKEv2Session * | FindISession (struct ikev2_ctx *i2, uint64_t iSPI) |
| | Search a session with a given initiator SPI.
|
| IKEv2Session * | FindRSession (struct ikev2_ctx *i2, uint64_t rSPI) |
| | Search a session with a given responder SPI.
|
| IKEv2Session * | FindSession (struct ikev2_ctx *i2, uint64_t SPI) |
| | Search a session with a given SPI.
|
| IKEv2Session * | FindSessionByFastid (struct ikev2_ctx *i2, const char *fastid) |
| | Find session with given fastID which is ready to fast reconnect.
|
| void | DeleteSession (struct ikev2_ctx *i2, struct IKEv2Session *s) |
| | Delete a session entry.
|
| void | ComputeSessionKeys (struct IKEv2Session *s) |
| | Compute all needed session keys.
|
| void | ComputeNewKeys (struct IKEv2Session *s, int dhex) |
| | Compute all needed session keys in case of rekeying.
|
| ikev2_ctx * | Create_ikev2_ctx (void) |
| | Create an empty IKEv2 context structure with initialized mutex variable.
|
| void | Free_ikev2_ctx (struct ikev2_ctx *i2) |
| | Free IKEv2 context data.
|
| void | FreeSession (struct IKEv2Session *s) |
| | Release all resources of IKEv2 session.
|
| void | FreeSessionList (struct IKEv2Session *s) |
| | Free whole session list.
|
| int | FreeSessionIfExpired (struct ikev2_ctx *i2, uint32_t currentTime) |
| | Free any session from list if last activity time was greater than ikev2_ctx.fastExpire.
|
| void | DumpIKEv2SessionKeys (const struct IKEv2Session *s) |