/* IBM_PROLOG_BEGIN_TAG */ /* This is an automatically generated prolog. */ /* */ /* bos720 src/bos/kernel/sys/hdlc_demux.h 1.3 */ /* */ /* Licensed Materials - Property of IBM */ /* */ /* Restricted Materials of IBM */ /* */ /* COPYRIGHT International Business Machines Corp. 1996,1997 */ /* All Rights Reserved */ /* */ /* US Government Users Restricted Rights - Use, duplication or */ /* disclosure restricted by GSA ADP Schedule Contract with IBM Corp. */ /* */ /* IBM_PROLOG_END_TAG */ /* @(#)12 1.3 src/bos/kernel/sys/hdlc_demux.h, dmxhdlc, bos720 9/4/97 16:10:22 */ /* * COMPONENT_NAME: SYSXHDLC * * FUNCTIONS: none * * ORIGINS: 27 * * * (C) COPYRIGHT International Business Machines Corp. 1995 * All Rights Reserved * Licensed Materials - Property of IBM * US Government Users Restricted Rights - Use, duplication or * disclosure restricted by GSA ADP Schedule Contract with IBM Corp. */ #ifndef _HDLC_DEMUX_H #define _HDLC_DEMUX_H #include #include #include #include #define HDLC_FILTER (NS_LAST_FILTER + 1) /* * hdlc_filter_t structure is used to specify a filter for an hdlc packet. * HDLC supports two types of filters, NS_TAP and HDLC_FILTER */ struct hdlc_filter { uint filtertype; /* flag that identifies the type of */ /* filter the user is requesting */ }; typedef struct hdlc_filter hdlc_filter_t; /* * hdlc_dmx_pnd_t structure is used to specify a status filter pending * deletion. */ struct hdlc_dmx_pnd { struct hdlc_dmx_pnd *next; ndd_t *p_ndd; ns_com_status_t *p_filter; /* points to status filter pending */ /* deletion */ }; typedef struct hdlc_dmx_pnd hdlc_dmx_pnd_t; /* * hdlc_dmx_config_t structure defines the data passed to the hdlc demuxer * from its config method. */ struct hdlc_dmx_config { uchar lname[ERR_NAMESIZE]; /* device logical name (i.e. dpm0) */ }; typedef struct hdlc_dmx_config hdlc_dmx_config_t; /* * hdlc_dmx_ctl_t structure is used to hold the demuxer information specific * to a particular adapter. */ struct hdlc_dmx_ctl { struct hdlc_dmx_ctl *next; uchar lname[ERR_NAMESIZE]; /* device logical name*/ ns_user_t tap_user; /* tap user info */ ns_user_t user_filter; /* user information */ ulong stat_users; /* number of user's */ /* that have added */ /* status filters */ Simple_lock stat_lock; /* lock used to */ /* control access to */ /* the status */ /* functions */ hdlc_dmx_pnd_t *p_hdlc_pnd; /* pointer to global list */ /* of hdlc dmx status filters */ /* pending deletion */ int status_pending; /* status in progress */ }; typedef struct hdlc_dmx_ctl hdlc_dmx_ctl_t; #endif