Struct ipsec_parser::NotifyType
[−]
[src]
pub struct NotifyType(pub u16);
Notify Message Type
Notification information can be error messages specifying why an SA could not be established. It can also be status data that a process managing an SA database wishes to communicate with a peer process.
The table below lists the notification messages and their corresponding values. The number of different error statuses was greatly reduced from IKEv1 both for simplification and to avoid giving configuration information to probers.
Types in the range 0 - 16383 are intended for reporting errors. An implementation receiving a Notify payload with one of these types that it does not recognize in a response MUST assume that the corresponding request has failed entirely. Unrecognized error types in a request and status types in a request or response MUST be ignored, and they should be logged.
Notify payloads with status types MAY be added to any message and MUST be ignored if not recognized. They are intended to indicate capabilities, and as part of SA negotiation, are used to negotiate non-cryptographic parameters.
Defined in RFC7296 section 3.10.1
Extensions:
- RFC4555 IKEv2 Mobility and Multihoming Protocol (MOBIKE)
- RFC4739 Multiple Authentication Exchanges in the Internet Key Exchange (IKEv2) Protocol
- RFC5685 Redirect Mechanism for the Internet Key Exchange Protocol Version 2 (IKEv2)
- RFC5723 Internet Key Exchange Protocol Version 2 (IKEv2) Session Resumption
- RFC7427 Signature Authentication in the Internet Key Exchange Version 2 (IKEv2)
See also IKEV2IANA for the latest values.
Methods
impl NotifyType
[src]
const UNSUPPORTED_CRITICAL_PAYLOAD: NotifyType
UNSUPPORTED_CRITICAL_PAYLOAD: NotifyType = NotifyType(1)
const INVALID_IKE_SPI: NotifyType
INVALID_IKE_SPI: NotifyType = NotifyType(4)
const INVALID_MAJOR_VERSION: NotifyType
INVALID_MAJOR_VERSION: NotifyType = NotifyType(5)
const INVALID_SYNTAX: NotifyType
INVALID_SYNTAX: NotifyType = NotifyType(7)
const INVALID_MESSAGE_ID: NotifyType
INVALID_MESSAGE_ID: NotifyType = NotifyType(9)
const INVALID_SPI: NotifyType
INVALID_SPI: NotifyType = NotifyType(11)
const NO_PROPOSAL_CHOSEN: NotifyType
NO_PROPOSAL_CHOSEN: NotifyType = NotifyType(14)
const INVALID_KE_PAYLOAD: NotifyType
INVALID_KE_PAYLOAD: NotifyType = NotifyType(17)
const AUTHENTICATION_FAILED: NotifyType
AUTHENTICATION_FAILED: NotifyType = NotifyType(24)
const SINGLE_PAIR_REQUIRED: NotifyType
SINGLE_PAIR_REQUIRED: NotifyType = NotifyType(34)
const NO_ADDITIONAL_SAS: NotifyType
NO_ADDITIONAL_SAS: NotifyType = NotifyType(35)
const INTERNAL_ADDRESS_FAILURE: NotifyType
INTERNAL_ADDRESS_FAILURE: NotifyType = NotifyType(36)
const FAILED_CP_REQUIRED: NotifyType
FAILED_CP_REQUIRED: NotifyType = NotifyType(37)
const TS_UNACCEPTABLE: NotifyType
TS_UNACCEPTABLE: NotifyType = NotifyType(38)
const INVALID_SELECTORS: NotifyType
INVALID_SELECTORS: NotifyType = NotifyType(39)
const TEMPORARY_FAILURE: NotifyType
TEMPORARY_FAILURE: NotifyType = NotifyType(43)
const CHILD_SA_NOT_FOUND: NotifyType
CHILD_SA_NOT_FOUND: NotifyType = NotifyType(44)
const INITIAL_CONTACT: NotifyType
INITIAL_CONTACT: NotifyType = NotifyType(16384)
const SET_WINDOW_SIZE: NotifyType
SET_WINDOW_SIZE: NotifyType = NotifyType(16385)
const ADDITIONAL_TS_POSSIBLE: NotifyType
ADDITIONAL_TS_POSSIBLE: NotifyType = NotifyType(16386)
const IPCOMP_SUPPORTED: NotifyType
IPCOMP_SUPPORTED: NotifyType = NotifyType(16387)
const NAT_DETECTION_SOURCE_IP: NotifyType
NAT_DETECTION_SOURCE_IP: NotifyType = NotifyType(16388)
const NAT_DETECTION_DESTINATION_IP: NotifyType
NAT_DETECTION_DESTINATION_IP: NotifyType = NotifyType(16389)
const COOKIE: NotifyType
COOKIE: NotifyType = NotifyType(16390)
const USE_TRANSPORT_MODE: NotifyType
USE_TRANSPORT_MODE: NotifyType = NotifyType(16391)
const HTTP_CERT_LOOKUP_SUPPORTED: NotifyType
HTTP_CERT_LOOKUP_SUPPORTED: NotifyType = NotifyType(16392)
const REKEY_SA: NotifyType
REKEY_SA: NotifyType = NotifyType(16393)
const ESP_TFC_PADDING_NOT_SUPPORTED: NotifyType
ESP_TFC_PADDING_NOT_SUPPORTED: NotifyType = NotifyType(16394)
const NON_FIRST_FRAGMENTS_ALSO: NotifyType
NON_FIRST_FRAGMENTS_ALSO: NotifyType = NotifyType(16395)
const MULTIPLE_AUTH_SUPPORTED: NotifyType
MULTIPLE_AUTH_SUPPORTED: NotifyType = NotifyType(16404)
const ANOTHER_AUTH_FOLLOWS: NotifyType
ANOTHER_AUTH_FOLLOWS: NotifyType = NotifyType(16405)
const REDIRECT_SUPPORTED: NotifyType
REDIRECT_SUPPORTED: NotifyType = NotifyType(16406)
const IKEV2_FRAGMENTATION_SUPPORTED: NotifyType
IKEV2_FRAGMENTATION_SUPPORTED: NotifyType = NotifyType(16430)
const SIGNATURE_HASH_ALGORITHMS: NotifyType
SIGNATURE_HASH_ALGORITHMS: NotifyType = NotifyType(16431)
fn is_error(&self) -> bool
[src]
fn is_status(&self) -> bool
[src]
Trait Implementations
impl Clone for NotifyType
[src]
fn clone(&self) -> NotifyType
[src]
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0[src]
Performs copy-assignment from source
. Read more
impl Copy for NotifyType
[src]
impl PartialEq for NotifyType
[src]
fn eq(&self, __arg_0: &NotifyType) -> bool
[src]
This method tests for self
and other
values to be equal, and is used by ==
. Read more
fn ne(&self, __arg_0: &NotifyType) -> bool
[src]
This method tests for !=
.