Annotation of embedaddon/mpd/src/eap.h, revision 1.1
1.1 ! misho 1: /*
! 2: * See ``COPYRIGHT.mpd''
! 3: *
! 4: * $Id: eap.h,v 1.12 2008/01/06 15:10:52 amotin Exp $
! 5: *
! 6: */
! 7:
! 8:
! 9: #ifndef _EAP_H_
! 10: #define _EAP_H_
! 11:
! 12: #include "mbuf.h"
! 13: #include "timer.h"
! 14:
! 15: /*
! 16: * DEFINITIONS
! 17: */
! 18:
! 19: #define EAP_NUM_TYPES EAP_TYPE_MSCHAP_V2
! 20: #define EAP_NUM_STDTYPES 3
! 21:
! 22: /* Configuration options */
! 23: enum {
! 24: EAP_CONF_RADIUS,
! 25: EAP_CONF_MD5
! 26: };
! 27:
! 28: enum {
! 29: EAP_REQUEST = 1,
! 30: EAP_RESPONSE,
! 31: EAP_SUCCESS,
! 32: EAP_FAILURE
! 33: };
! 34:
! 35: enum {
! 36: EAP_TYPE_IDENT = 1,
! 37: EAP_TYPE_NOTIF,
! 38: EAP_TYPE_NAK,
! 39: EAP_TYPE_MD5CHAL, /* MD5 Challenge */
! 40: EAP_TYPE_OTP, /* One Time Password */
! 41: EAP_TYPE_GTC, /* Generic Token Card */
! 42: EAP_TYPE_RSA_PUB_KEY_AUTH = 9, /* RSA Public Key Authentication */
! 43: EAP_TYPE_DSS_UNILITERAL, /* DSS Unilateral */
! 44: EAP_TYPE_KEA, /* KEA */
! 45: EAP_TYPE_TYPE_KEA_VALIDATE, /* KEA-VALIDATE */
! 46: EAP_TYPE_EAP_TLS, /* EAP-TLS RFC 2716 */
! 47: EAP_TYPE_DEFENDER_TOKEN, /* Defender Token (AXENT) */
! 48: EAP_TYPE_RSA_SECURID, /* RSA Security SecurID EAP */
! 49: EAP_TYPE_ARCOT, /* Arcot Systems EAP */
! 50: EAP_TYPE_LEAP, /* EAP-Cisco LEAP (MS-CHAP) */
! 51: EAP_TYPE_NOKIA_IP_SC, /* Nokia IP smart card authentication */
! 52: EAP_TYPE_SRP_SHA1_1, /* SRP-SHA1 Part 1 */
! 53: EAP_TYPE_SRP_SHA1_2, /* SRP-SHA1 Part 2 */
! 54: EAP_TYPE_EAP_TTLS, /* EAP-TTLS */
! 55: EAP_TYPE_RAS, /* Remote Access Service */
! 56: EAP_TYPE_UMTS, /* UMTS Authentication and Key Argreement */
! 57: EAP_TYPE_3COM_WIRELESS, /* EAP-3Com Wireless */
! 58: EAP_TYPE_PEAP, /* PEAP */
! 59: EAP_TYPE_MS, /* MS-EAP-Authentication */
! 60: EAP_TYPE_MAKE, /* MAKE, Mutual Authentication w/Key Exchange */
! 61: EAP_TYPE_CRYPTOCARD, /* CRYPTOCard */
! 62: EAP_TYPE_MSCHAP_V2, /* EAP-MSCHAP-V2 */
! 63: EAP_TYPE_DYNAMID, /* DynamID */
! 64: EAP_TYPE_ROB, /* Rob EAP */
! 65: EAP_TYPE_SECURID, /* SecurID EAP */
! 66: EAP_TYPE_MS_AUTH_TLV, /* MS-Authentication-TLV */
! 67: EAP_TYPE_SENTRINET, /* SentriNET */
! 68: EAP_TYPE_ACTIONTEC_WIRELESS,/* EAP-Actiontec Wireless */
! 69: EAP_TYPE_COGENT, /* Cogent Systems Biometrics Authentication EAP */
! 70: EAP_TYPE_AIRFORTRESS, /* AirFortress EAP */
! 71: EAP_TYPE_HTTP_DIGEST, /* EAP-HTTP Digest */
! 72: EAP_TYPE_SECURESUITE, /* SecureSuite EAP */
! 73: EAP_TYPE_DEVICECONNECT, /* DeviceConnect */
! 74: EAP_TYPE_SPEKE, /* EAP-SPEKE */
! 75: EAP_TYPE_MOBAC, /* EAP-MOBAC */
! 76: EAP_TYPE_FAST /* EAP-FAST */
! 77: };
! 78:
! 79: extern const struct cmdtab EapSetCmds[];
! 80:
! 81: /* Configuration for a link */
! 82: struct eapconf {
! 83: struct optinfo options; /* Configured options */
! 84: };
! 85:
! 86: struct eapinfo {
! 87: short next_id; /* Packet id */
! 88: short retry; /* Resend count */
! 89: struct pppTimer identTimer; /* Identity timer */
! 90: struct pppTimer reqTimer; /* Request timer */
! 91: char identity[AUTH_MAX_AUTHNAME]; /* Identity */
! 92: u_char peer_types[EAP_NUM_TYPES]; /* list of acceptable types */
! 93: u_char want_types[EAP_NUM_TYPES]; /* list of requestable types */
! 94: struct eapconf conf; /* Configured options */
! 95: };
! 96: typedef struct eapinfo *EapInfo;
! 97:
! 98: struct authdata;
! 99: /*
! 100: * FUNCTIONS
! 101: */
! 102:
! 103: extern void EapInit(Link l);
! 104: extern void EapStart(Link l, int which);
! 105: extern void EapStop(EapInfo eap);
! 106: extern void EapInput(Link l, struct authdata *auth, const u_char *pkt, u_short len);
! 107: extern const char *EapCode(u_char code, char *buf, size_t len);
! 108: extern const char *EapType(u_char type);
! 109: extern int EapStat(Context ctx, int ac, char *av[], void *arg);
! 110:
! 111: #endif
! 112:
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>