📄 ipsec_doi.h
字号:
/* * Copyright (C) 1995, 1996, 1997, and 1998 WIDE Project. * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * 3. Neither the name of the project nor the names of its contributors * may be used to endorse or promote products derived from this software * without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE PROJECT AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE PROJECT OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. *//* YIPS @(#)$Id: ipsec_doi.h,v 1.4 2000/10/04 03:00:29 itojun Exp $ *//* refer to RFC 2407 */#if !defined(_IPSEC_DOI_H_)#define _IPSEC_DOI_H_#define IPSEC_DOI 1/* 4.2 IPSEC Situation Definition */#define IPSECDOI_SIT_IDENTITY_ONLY 0x00000001#define IPSECDOI_SIT_SECRECY 0x00000002#define IPSECDOI_SIT_INTEGRITY 0x00000004/* 4.4.1 IPSEC Security Protocol Identifiers */ /* 4.4.2 IPSEC ISAKMP Transform Values */#define IPSECDOI_PROTO_ISAKMP 1#define IPSECDOI_KEY_IKE 1/* 4.4.1 IPSEC Security Protocol Identifiers */#define IPSECDOI_PROTO_IPSEC_AH 2 /* 4.4.3 IPSEC AH Transform Values */#define IPSECDOI_AH_MD5 2#define IPSECDOI_AH_SHA 3#define IPSECDOI_AH_DES 4#define IPSECDOI_AH_SHA2_256 5#define IPSECDOI_AH_SHA2_384 6#define IPSECDOI_AH_SHA2_512 7/* 4.4.1 IPSEC Security Protocol Identifiers */#define IPSECDOI_PROTO_IPSEC_ESP 3 /* 4.4.4 IPSEC ESP Transform Identifiers */#define IPSECDOI_ESP_DES_IV64 1#define IPSECDOI_ESP_DES 2#define IPSECDOI_ESP_3DES 3#define IPSECDOI_ESP_RC5 4#define IPSECDOI_ESP_IDEA 5#define IPSECDOI_ESP_CAST 6#define IPSECDOI_ESP_BLOWFISH 7#define IPSECDOI_ESP_3IDEA 8#define IPSECDOI_ESP_DES_IV32 9#define IPSECDOI_ESP_RC4 10#define IPSECDOI_ESP_NULL 11#define IPSECDOI_ESP_RIJNDAEL 12#define IPSECDOI_ESP_AES 12/* 4.4.1 IPSEC Security Protocol Identifiers */#define IPSECDOI_PROTO_IPCOMP 4 /* 4.4.5 IPSEC IPCOMP Transform Identifiers */#define IPSECDOI_IPCOMP_OUI 1#define IPSECDOI_IPCOMP_DEFLATE 2#define IPSECDOI_IPCOMP_LZS 3/* 4.5 IPSEC Security Association Attributes */#define IPSECDOI_ATTR_SA_LTYPE 1 /* B */#define IPSECDOI_ATTR_SA_LTYPE_DEFAULT 1#define IPSECDOI_ATTR_SA_LTYPE_SEC 1#define IPSECDOI_ATTR_SA_LTYPE_KB 2#define IPSECDOI_ATTR_SA_LDUR 2 /* V */#define IPSECDOI_ATTR_SA_LDUR_DEFAULT 28800 /* 8 hours */#define IPSECDOI_ATTR_GRP_DESC 3 /* B */#define IPSECDOI_ATTR_ENC_MODE 4 /* B */ /* default value: host dependent */#define IPSECDOI_ATTR_ENC_MODE_TUNNEL 1#define IPSECDOI_ATTR_ENC_MODE_TRNS 2#define IPSECDOI_ATTR_AUTH 5 /* B */ /* 0 means not to use authentication. */#define IPSECDOI_ATTR_AUTH_HMAC_MD5 1#define IPSECDOI_ATTR_AUTH_HMAC_SHA1 2#define IPSECDOI_ATTR_AUTH_DES_MAC 3#define IPSECDOI_ATTR_AUTH_KPDK 4 /*RFC-1826(Key/Pad/Data/Key)*/ /* * When negotiating ESP without authentication, the Auth * Algorithm attribute MUST NOT be included in the proposal. * When negotiating ESP without confidentiality, the Auth * Algorithm attribute MUST be included in the proposal and * the ESP transform ID must be ESP_NULL. */#define IPSECDOI_ATTR_KEY_LENGTH 6 /* B */#define IPSECDOI_ATTR_KEY_ROUNDS 7 /* B */#define IPSECDOI_ATTR_COMP_DICT_SIZE 8 /* B */#define IPSECDOI_ATTR_COMP_PRIVALG 9 /* V *//* 4.6.1 Security Association Payload */struct ipsecdoi_sa { struct isakmp_gen h; u_int32_t doi; /* Domain of Interpretation */ u_int32_t sit; /* Situation */};struct ipsecdoi_secrecy_h { u_int16_t len; u_int16_t reserved;};/* 4.6.2.1 Identification Type Values */struct ipsecdoi_id { struct isakmp_gen h; u_int8_t type; /* ID Type */ u_int8_t proto_id; /* Protocol ID */ u_int16_t port; /* Port */ /* Identification Data */};#define IPSECDOI_ID_IPV4_ADDR 1#define IPSECDOI_ID_FQDN 2#define IPSECDOI_ID_USER_FQDN 3#define IPSECDOI_ID_IPV4_ADDR_SUBNET 4#define IPSECDOI_ID_IPV6_ADDR 5#define IPSECDOI_ID_IPV6_ADDR_SUBNET 6#define IPSECDOI_ID_IPV4_ADDR_RANGE 7#define IPSECDOI_ID_IPV6_ADDR_RANGE 8#define IPSECDOI_ID_DER_ASN1_DN 9#define IPSECDOI_ID_DER_ASN1_GN 10#define IPSECDOI_ID_KEY_ID 11/* 4.6.3 IPSEC DOI Notify Message Types *//* Notify Messages - Status Types */#define IPSECDOI_NTYPE_RESPONDER_LIFETIME 24576#define IPSECDOI_NTYPE_REPLAY_STATUS 24577#define IPSECDOI_NTYPE_INITIAL_CONTACT 24578#endif /* !defined(_IPSEC_DOI_H_) */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -