Return to vendorid.h CVS log | Up to [ELWIX - Embedded LightWeight unIX -] / embedaddon / ipsec-tools / src / racoon |
1.1 ! misho 1: /* $NetBSD: vendorid.h,v 1.6 2009/01/23 08:06:56 tteras Exp $ */ ! 2: ! 3: /* Id: vendorid.h,v 1.11 2006/02/17 14:09:10 vanhu Exp */ ! 4: ! 5: /* ! 6: * Copyright (C) 1995, 1996, 1997, and 1998 WIDE Project. ! 7: * All rights reserved. ! 8: * ! 9: * Redistribution and use in source and binary forms, with or without ! 10: * modification, are permitted provided that the following conditions ! 11: * are met: ! 12: * 1. Redistributions of source code must retain the above copyright ! 13: * notice, this list of conditions and the following disclaimer. ! 14: * 2. Redistributions in binary form must reproduce the above copyright ! 15: * notice, this list of conditions and the following disclaimer in the ! 16: * documentation and/or other materials provided with the distribution. ! 17: * 3. Neither the name of the project nor the names of its contributors ! 18: * may be used to endorse or promote products derived from this software ! 19: * without specific prior written permission. ! 20: * ! 21: * THIS SOFTWARE IS PROVIDED BY THE PROJECT AND CONTRIBUTORS ``AS IS'' AND ! 22: * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE ! 23: * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ! 24: * ARE DISCLAIMED. IN NO EVENT SHALL THE PROJECT OR CONTRIBUTORS BE LIABLE ! 25: * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL ! 26: * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS ! 27: * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) ! 28: * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT ! 29: * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY ! 30: * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF ! 31: * SUCH DAMAGE. ! 32: */ ! 33: ! 34: #ifndef _VENDORID_H ! 35: #define _VENDORID_H ! 36: ! 37: #ifndef BIT ! 38: #define BIT(x) (1 << (x)) ! 39: #endif ! 40: ! 41: /* The unknown vendor ID. */ ! 42: #define VENDORID_UNKNOWN -1 ! 43: ! 44: /* Our default vendor ID. */ ! 45: #define VENDORID_DEFAULT VENDORID_IPSEC_TOOLS ! 46: ! 47: #define VENDORID_IPSEC_TOOLS 0 ! 48: ! 49: /* Refer to draft-ietf-ipsec-isakmp-gss-auth-06.txt. */ ! 50: #define VENDORID_GSSAPI_LONG 1 ! 51: #define VENDORID_GSSAPI 2 ! 52: #define VENDORID_MS_NT5 3 ! 53: ! 54: #define VENDORID_GSSAPI_MASK (BIT(VENDORID_GSSAPI_LONG) | \ ! 55: BIT(VENDORID_GSSAPI) | \ ! 56: BIT(VENDORID_MS_NT5)) ! 57: ! 58: /* NAT-T support */ ! 59: #define VENDORID_NATT_00 4 ! 60: #define VENDORID_NATT_01 5 ! 61: #define VENDORID_NATT_02 6 ! 62: #define VENDORID_NATT_02_N 7 ! 63: #define VENDORID_NATT_03 8 ! 64: #define VENDORID_NATT_04 9 ! 65: #define VENDORID_NATT_05 10 ! 66: #define VENDORID_NATT_06 11 ! 67: #define VENDORID_NATT_07 12 ! 68: #define VENDORID_NATT_08 13 ! 69: #define VENDORID_NATT_RFC 14 ! 70: ! 71: #define VENDORID_NATT_FIRST VENDORID_NATT_00 ! 72: #define VENDORID_NATT_LAST VENDORID_NATT_RFC ! 73: ! 74: #define MAX_NATT_VID_COUNT (VENDORID_NATT_LAST - VENDORID_NATT_FIRST + 1) ! 75: ! 76: /* Hybrid auth */ ! 77: #define VENDORID_XAUTH 15 ! 78: #define VENDORID_UNITY 16 ! 79: ! 80: /* IKE fragmentation */ ! 81: #define VENDORID_FRAG 17 ! 82: ! 83: /* Dead Peer Detection */ ! 84: #define VENDORID_DPD 18 ! 85: ! 86: ! 87: /* Other Vendors... ! 88: * XXX: do some cleanup to have separate lists for "real" vendors (to complete) ! 89: * and "features" VendorIDs ! 90: */ ! 91: #define VENDORID_KAME 19 ! 92: ! 93: struct vendor_id { ! 94: int id; ! 95: const char *string; ! 96: vchar_t *hash; ! 97: }; ! 98: ! 99: vchar_t *set_vendorid __P((int)); ! 100: int handle_vendorid __P((struct ph1handle *, struct isakmp_gen *)); ! 101: ! 102: void compute_vendorids __P((void)); ! 103: const char *vid_string_by_id __P((int id)); ! 104: ! 105: #endif /* _VENDORID_H */