[libss7-commits] mattf: trunk r75 - in /trunk: isup.c isup.h
libss7.h
libss7-commits at lists.digium.com
libss7-commits at lists.digium.com
Mon Mar 26 09:39:42 MST 2007
Author: mattf
Date: Mon Mar 26 11:39:40 2007
New Revision: 75
URL: http://svn.digium.com/view/libss7?view=rev&rev=75
Log:
Add support for group maintenance type
Modified:
trunk/isup.c
trunk/isup.h
trunk/libss7.h
Modified: trunk/isup.c
URL: http://svn.digium.com/view/libss7/trunk/isup.c?view=diff&rev=75&r1=74&r2=75
==============================================================================
--- trunk/isup.c (original)
+++ trunk/isup.c Mon Mar 26 11:39:40 2007
@@ -593,12 +593,13 @@
static FUNC_RECV(circuit_group_supervision_receive)
{
+ c->cicgroupsupervisiontype = 0x3 & parm[0];
return 1;
}
static FUNC_SEND(circuit_group_supervision_transmit)
{
- parm[0] = 0x1;
+ parm[0] = c->cicgroupsupervisiontype & 0x3;
return 1;
}
@@ -1224,6 +1225,7 @@
e->e = ISUP_EVENT_CGB;
e->cgb.startcic = cic;
e->cgb.endcic = cic + c->range;
+ e->cgu.type = c->cicgroupsupervisiontype;
for (i = 0; i < (c->range + 1); i++)
e->cgb.status[i] = c->status[i];
@@ -1234,6 +1236,7 @@
e->e = ISUP_EVENT_CGU;
e->cgu.startcic = cic;
e->cgu.endcic = cic + c->range;
+ e->cgu.type = c->cicgroupsupervisiontype;
for (i = 0; i < (c->range + 1); i++)
e->cgu.status[i] = c->status[i];
@@ -1251,7 +1254,7 @@
}
}
-static int isup_send_cicgroupmessage(struct ss7 *ss7, int messagetype, int begincic, int endcic, unsigned char status[])
+static int isup_send_cicgroupmessage(struct ss7 *ss7, int messagetype, int begincic, int endcic, unsigned char status[], int type)
{
struct isup_call call;
int i;
@@ -1261,6 +1264,7 @@
call.cic = begincic;
call.range = endcic - begincic;
+ call.cicgroupsupervisiontype = type;
if (call.range > 31)
return -1;
@@ -1299,35 +1303,35 @@
return isup_send_message(ss7, &call, ISUP_GRA, greset_params);
}
-int isup_cgb(struct ss7 *ss7, int begincic, int endcic, unsigned char state[])
+int isup_cgb(struct ss7 *ss7, int begincic, int endcic, unsigned char state[], int type)
{
if (!ss7)
return -1;
- return isup_send_cicgroupmessage(ss7, ISUP_CGB, begincic, endcic, state);
-}
-
-int isup_cgu(struct ss7 *ss7, int begincic, int endcic, unsigned char state[])
+ return isup_send_cicgroupmessage(ss7, ISUP_CGB, begincic, endcic, state, type);
+}
+
+int isup_cgu(struct ss7 *ss7, int begincic, int endcic, unsigned char state[], int type)
{
if (!ss7)
return -1;
- return isup_send_cicgroupmessage(ss7, ISUP_CGU, begincic, endcic, state);
-}
-
-int isup_cgba(struct ss7 *ss7, int begincic, int endcic, unsigned char state[])
+ return isup_send_cicgroupmessage(ss7, ISUP_CGU, begincic, endcic, state, type);
+}
+
+int isup_cgba(struct ss7 *ss7, int begincic, int endcic, unsigned char state[], int type)
{
if (!ss7)
return -1;
- return isup_send_cicgroupmessage(ss7, ISUP_CGBA, begincic, endcic, state);
-}
-
-int isup_cgua(struct ss7 *ss7, int begincic, int endcic, unsigned char state[])
+ return isup_send_cicgroupmessage(ss7, ISUP_CGBA, begincic, endcic, state, type);
+}
+
+int isup_cgua(struct ss7 *ss7, int begincic, int endcic, unsigned char state[], int type)
{
if (!ss7)
return -1;
- return isup_send_cicgroupmessage(ss7, ISUP_CGUA, begincic, endcic, state);
+ return isup_send_cicgroupmessage(ss7, ISUP_CGUA, begincic, endcic, state, type);
}
int isup_iam(struct ss7 *ss7, struct isup_call *c)
Modified: trunk/isup.h
URL: http://svn.digium.com/view/libss7/trunk/isup.h?view=diff&rev=75&r1=74&r2=75
==============================================================================
--- trunk/isup.h (original)
+++ trunk/isup.h Mon Mar 26 11:39:40 2007
@@ -132,6 +132,7 @@
int causeloc;
int cot_check_passed;
int cot_check_required;
+ int cicgroupsupervisiontype;
unsigned char event_info;
unsigned short cic;
unsigned short slc;
Modified: trunk/libss7.h
URL: http://svn.digium.com/view/libss7/trunk/libss7.h?view=diff&rev=75&r1=74&r2=75
==============================================================================
--- trunk/libss7.h (original)
+++ trunk/libss7.h Mon Mar 26 11:39:40 2007
@@ -116,6 +116,7 @@
int e;
int startcic;
int endcic;
+ int type;
unsigned char status[255];
} ss7_event_cicrange;
@@ -222,13 +223,13 @@
int isup_grs(struct ss7 *ss7, int begincic, int endcic);
-int isup_cgb(struct ss7 *ss7, int begincic, int endcic, unsigned char state[]);
-
-int isup_cgu(struct ss7 *ss7, int begincic, int endcic, unsigned char state[]);
-
-int isup_cgba(struct ss7 *ss7, int begincic, int endcic, unsigned char state[]);
-
-int isup_cgua(struct ss7 *ss7, int begincic, int endcic, unsigned char state[]);
+int isup_cgb(struct ss7 *ss7, int begincic, int endcic, unsigned char state[], int type);
+
+int isup_cgu(struct ss7 *ss7, int begincic, int endcic, unsigned char state[], int type);
+
+int isup_cgba(struct ss7 *ss7, int begincic, int endcic, unsigned char state[], int type);
+
+int isup_cgua(struct ss7 *ss7, int begincic, int endcic, unsigned char state[], int type);
int isup_blo(struct ss7 *ss7, int cic);
More information about the libss7-commits
mailing list