OpenSS7 SS7 for the Common Man |
© Copyright 1997-2004,OpenSS7 Corporation, All Rights Reserved. |
||||||||||||||||||||||||||
Home | Overview | Status | News | Documentation | Resources | About | |||||||||||||||||||||
File /code/strss7/drivers/m3ua/m3ua_lm.h#ifndef __M3UA_LM_H__ #define __M3UA_LM_H__ /* * ========================================================================= * * M3UA --> LM (Upstream Primitives to Layer Management) * * ========================================================================= */ /* * LM_LINK_IND * ------------------------------------------------------------------------- * This is the bottom half of pass-through control of any of the links under * the multiplexor from the configuration daemon stream. */ static __inline__ int lm_link_ind(queue_t * q, mblk_t * dp) { mblk_t *mp; lm_link_ind_t *p; lp_t *lp = (lp_t *) q->q_ptr; if ((mp = allocb(sizeof(*p), BPRI_MED))) { mp->b_datap->db_type = dp->b_datap->db_type; p = (lm_link_ind_t *) mp->b_wptr; p->primitive = LM_EVENT_IND; p->muxid = lp->muxid; p->type = lp->type; p->mode = lp->mode; p->class = lp->class; mp->b_wptr += sizeof(*p); mp->b_cont = dp; pullmsg(mp, -1); m3ua_u_rput(m3ua_lmq, mp); return (0); } return (-ENOBUFS); } /* * M_NOTIFY_IND * ------------------------------------------------------------------------- */ static __inline__ mblk_t *m3_notify_ind(void) { mblk_t *mp; m3_notify_ind_t *p; if ((mp = allocb(sizeof(*p), BPRI_MED))) { mp->b_datap->db_type = M_PCPROTO; p = (m3_notify_ind_t *) mp->b_wptr; p->primitive = M3_NOTIFY_IND; /* * FIXME: do some more... */ mp->b_wptr += sizeof(*p); } return (mp); } /* * M_ERROR_IND * ------------------------------------------------------------------------- */ static __inline__ mblk_t *m3_error_ind(void) { mblk_t *mp; m3_error_ind_t *p; if ((mp = allocb(sizeof(*p), BPRI_MED))) { mp->b_datap->db_type = M_PCPROTO; p = (m3_error_ind_t *) mp->b_wptr; p->primitive = M3_ERROR_IND; /* * FIXME: do some more... */ mp->b_wptr += sizeof(*p); } return (mp); } /* * M_LINK_NOTIFY_IND */ /* * LM_AS_EVENT_IND * ------------------------------------------------------------------------- */ static __inline__ int lm_as_event_ind(uint muxid, uint event, uint asid, uint aspid) { mblk_t *mp; LM_as_event_ind_t *p; if ((mp = allocb(sizeof(*p), BPRI_MED))) { mp->b_datap->db_type = M_PROTO; p = (LM_as_event_ind_t *) mp->b_wptr; p->PRIM_type = LM_AS_EVENT_IND; p->MUX_identifier = muxid; p->AS_identifier = asid; p->ASP_identifier = aspid; mp->b_wptr += sizeof(*p); m3ua_u_rput(m3ua_lmq, mp); return (0); } return (-ENOBUFS); } #endif /* __M3UA_LM_H__ */
|
|||||||||||||||||||||||||||
OpenSS7 SS7 for the Common Man |
Home | Overview | Status | News | Documentation | Resources | About | ||||||||||||||||||||
© Copyright 1997-2004,OpenSS7 Corporation, All Rights Reserved. |