|
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/tcap/tcap_output.c
#ident "@(#) $RCSfile: tcap_output.c,v $ $Name: $($Revision: 0.8.2.2 $) $Date: 2003/04/03 19:51:40 $"
static char const ident[] =
"$RCSfile: tcap_output.c,v $ $Name: $($Revision: 0.8.2.2 $) $Date: 2003/04/03 19:51:40 $";
#define __NO_VERSION__
#include <linux/config.h>
#include <linux/version.h>
#ifdef MODVERSIONS
#include <linux/modversions.h>
#endif
#include <linux/module.h>
#include <sys/stream.h>
#include <sys/stropts.h>
#include <sys/cmn_err.h>
#include "../debug.h"
#include "../bufq.h"
#include "tcap.h"
#include "tcap_data.h"
#include "tcap_msgs.h"
#include "tcap_ctrl.h"
#include "tcap_prov.h"
/*
* =========================================================================
*
* TCAP OUTPUT EVENT Translator
*
* =========================================================================
*/
/*
* TCAP_MT_UNI
* -----------------------------------
*/
static int tcap_o_uni(queue_t * q, mblk_t * mp)
{
(void) q;
(void) mp;
return (-EFAULT);
}
/*
* TCAP_MT_QWP
* -----------------------------------
*/
static int tcap_o_qwp(queue_t * q, mblk_t * mp)
{
(void) q;
(void) mp;
return (-EFAULT);
}
/*
* TCAP_MT_QWOP
* -----------------------------------
*/
static int tcap_o_qwop(queue_t * q, mblk_t * mp)
{
(void) q;
(void) mp;
return (-EFAULT);
}
/*
* TCAP_MT_CWP
* -----------------------------------
*/
static int tcap_o_cwp(queue_t * q, mblk_t * mp)
{
(void) q;
(void) mp;
return (-EFAULT);
}
/*
* TCAP_MT_CWOP
* -----------------------------------
*/
static int tcap_o_cwop(queue_t * q, mblk_t * mp)
{
(void) q;
(void) mp;
return (-EFAULT);
}
/*
* TCAP_MT_RESP
* -----------------------------------
*/
static int tcap_o_resp(queue_t * q, mblk_t * mp)
{
(void) q;
(void) mp;
return (-EFAULT);
}
/*
* TCAP_MT_ABORT
* -----------------------------------
*/
static int tcap_o_abort(queue_t * q, mblk_t * mp)
{
(void) q;
(void) mp;
return (-EFAULT);
}
static int (*tcap_o_msgs[]) (queue_t *, mblk_t *) = {
NULL, /* (none) 0 - (not used) */
tcap_o_uni, /* TCAP_MT_UNI 1 - Unidirectional */
tcap_o_qwp, /* TCAP_MT_QWP 2 - Query w/ permission */
tcap_o_qwop, /* TCAP_MT_QWOP 3 - Query w/o permission */
tcap_o_cwp, /* TCAP_MT_CWP 4 - Conversation w/ permission */
tcap_o_cwop, /* TCAP_MT_CWOP 5 - Conversation w/o permission */
tcap_o_resp, /* TCAP_MT_RESP 6 - Response */
tcap_o_abort /* TCAP_MT_ABORT 7 - Abort */
};
static inline int tcap_o_proto(queue_t * q, mblk_t * mp)
{
tr_msg_t *m = (tr_msg_t *) mp->b_wptr;
return (*tcap_o_msgs[m->type]) (q, mp);
}
/*
* =========================================================================
*
* QUEUE PUT and SERVICE routines
*
* =========================================================================
*/
/*
* WRITE SERVICE (Message from above as output from TCAP State Machines)
* -------------------------------------------------------------------------
*/
int tcap_l_w_prim(queue_t * q, mblk_t * mp)
{
switch (mp->b_datap->db_type) {
case M_PROTO:
case M_PCPROTO:
return tcap_o_proto(q, mp);
case M_FLUSH:
return tcap_w_flush(q, mp);
}
return (5);
}
|
|||||||||||||||||||||||||||
|
OpenSS7 SS7 for the Common Man |
Home | Overview | Status | News | Documentation | Resources | About | ||||||||||||||||||||
|
© Copyright 1997-2004,OpenSS7 Corporation, All Rights Reserved. |
|||||||||||||||||||||||||||