Annotation of embedaddon/mpd/src/ecp.h, revision 1.1.1.1

1.1       misho       1: 
                      2: /*
                      3:  * ecp.h
                      4:  *
                      5:  * Written by Archie Cobbs <archie@freebsd.org>
                      6:  * Copyright (c) 1998-1999 Whistle Communications, Inc. All rights reserved.
                      7:  * See ``COPYRIGHT.whistle''
                      8:  */
                      9: 
                     10: #ifndef _ECP_H_
                     11: #define        _ECP_H_
                     12: 
                     13: #include "defs.h"
                     14: #include "fsm.h"
                     15: #include "mbuf.h"
                     16: #include "encrypt.h"
                     17: #include "command.h"
                     18: 
                     19: #ifdef ECP_DES
                     20: #include "ecp_dese.h"
                     21: #include "ecp_dese_bis.h"
                     22: #endif
                     23: 
                     24: /*
                     25:  * DEFINITIONS
                     26:  */
                     27: 
                     28:   #define ECP_DIR_XMIT         1
                     29:   #define ECP_DIR_RECV         2
                     30: 
                     31: /* Encryption types */
                     32: 
                     33:   #define ECP_TY_OUI           0
                     34:   #define ECP_TY_DESE          1
                     35:   #define ECP_TY_3DESE         2
                     36:   #define ECP_TY_DESE_bis      3
                     37: 
                     38: /* Max supported key length */
                     39: 
                     40:   #define ECP_MAX_KEY  32
                     41: 
                     42: /* ECP state */
                     43: 
                     44:   struct ecpstate
                     45:   {
                     46:     char               key[ECP_MAX_KEY];       /* Encryption key */
                     47:     EncType            xmit;           /* Xmit encryption type */
                     48:     EncType            recv;           /* Recv encryption type */
                     49:     uint32_t           self_reject;
                     50:     uint32_t           peer_reject;
                     51:     struct fsm         fsm;            /* PPP FSM */
                     52:     struct optinfo     options;        /* Configured options */
                     53: #ifdef ECP_DES
                     54:     struct desinfo     des;            /* DESE info */
                     55:     struct desebisinfo desebis;        /* DESE-bis info */
                     56: #endif
                     57:     uint32_t           xmit_resets;    /* Number of ResetReq we have got from other side */
                     58:     uint32_t           recv_resets;    /* Number of ResetReq we have sent to other side */
                     59:   };
                     60:   typedef struct ecpstate      *EcpState;
                     61: 
                     62: /*
                     63:  * VARIABLES
                     64:  */
                     65: 
                     66:   extern const struct cmdtab   EcpSetCmds[];
                     67: 
                     68:   extern int           gEcpCsock;              /* Socket node control socket */
                     69:   extern int           gEcpDsock;              /* Socket node data socket */
                     70: 
                     71: /*
                     72:  * FUNCTIONS
                     73:  */
                     74: 
                     75:   extern void  EcpInit(Bund b);
                     76:   extern void  EcpInst(Bund b, Bund bt);
                     77:   extern void  EcpUp(Bund b);
                     78:   extern void  EcpDown(Bund b);
                     79:   extern void  EcpOpen(Bund b);
                     80:   extern void  EcpClose(Bund b);
                     81:   extern int   EcpOpenCmd(Context ctx);
                     82:   extern int   EcpCloseCmd(Context ctx);
                     83:   extern int   EcpSubtractBloat(Bund b, int size);
                     84:   extern void  EcpInput(Bund b, Mbuf bp);
                     85:   extern Mbuf  EcpDataInput(Bund b, Mbuf bp);
                     86:   extern Mbuf  EcpDataOutput(Bund b, Mbuf bp);
                     87:   extern void  EcpSendResetReq(Fsm fp);
                     88:   extern int   EcpStat(Context ctx, int ac, char *av[], void *arg);
                     89: 
                     90:   extern int   EcpsInit(void);
                     91:   extern void  EcpsShutdown(void);
                     92: 
                     93: #endif
                     94: 

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>