root/include/linux/lapb.h

/* [<][>][^][v][top][bottom][index][help] */

INCLUDED FROM


/*
 * These are the public elements of the Linux LAPB module.
 */

#ifndef LAPB_KERNEL_H
#define LAPB_KERNEL_H

#define LAPB_OK                 0
#define LAPB_BADTOKEN           1
#define LAPB_INVALUE            2
#define LAPB_CONNECTED          3
#define LAPB_NOTCONNECTED       4
#define LAPB_REFUSED            5
#define LAPB_TIMEDOUT           6
#define LAPB_NOMEM              7

#define LAPB_STANDARD           0x00
#define LAPB_EXTENDED           0x01

#define LAPB_SLP                0x00
#define LAPB_MLP                0x02

#define LAPB_DTE                0x00
#define LAPB_DCE                0x04

struct lapb_register_struct {
        void (*connect_confirmation)(struct net_device *dev, int reason);
        void (*connect_indication)(struct net_device *dev, int reason);
        void (*disconnect_confirmation)(struct net_device *dev, int reason);
        void (*disconnect_indication)(struct net_device *dev, int reason);
        int  (*data_indication)(struct net_device *dev, struct sk_buff *skb);
        void (*data_transmit)(struct net_device *dev, struct sk_buff *skb);
};

struct lapb_parms_struct {
        unsigned int t1;
        unsigned int t1timer;
        unsigned int t2;
        unsigned int t2timer;
        unsigned int n2;
        unsigned int n2count;
        unsigned int window;
        unsigned int state;
        unsigned int mode;
};

extern int lapb_register(struct net_device *dev,
                         const struct lapb_register_struct *callbacks);
extern int lapb_unregister(struct net_device *dev);
extern int lapb_getparms(struct net_device *dev, struct lapb_parms_struct *parms);
extern int lapb_setparms(struct net_device *dev, struct lapb_parms_struct *parms);
extern int lapb_connect_request(struct net_device *dev);
extern int lapb_disconnect_request(struct net_device *dev);
extern int lapb_data_request(struct net_device *dev, struct sk_buff *skb);
extern int lapb_data_received(struct net_device *dev, struct sk_buff *skb);

#endif

/* [<][>][^][v][top][bottom][index][help] */