From Rene Piltz:

Due to the fact that 3G Signaling appears at an undefined VPI/VCI I added a heuristics (very simple) which should take care of this fact.

svn path=/trunk/; revision=16108
This commit is contained in:
Anders Broman 2005-10-04 05:42:18 +00:00
parent 1f02bfa0af
commit e1ebb0953d
2 changed files with 32 additions and 1 deletions

11
AUTHORS
View File

@ -2395,6 +2395,16 @@ Jim Young <sysjhy [AT] langate.gsu.edu> {
}
Jeff Snyder <jeff [AT] mxtelecom.com> {
H.223 Support
}
Richard van der Hoff <richardv [AT] mxtelecom.com> {
H.223 Support
}
And assorted fixes and enhancements by the people listed above
and by:
@ -2515,6 +2525,7 @@ Timo Metsala <timo.metsala [AT] gmail.com>
Tomer Shani <thetour [AT} japan.com>
Manu Pathak <mapathak [AT] cisco.com>
Kaul <mykaul [AT] gmail.com>
John Sullivan <john [AT] kanargh.force9.co.uk>
Alain Magloire <alainm[AT]rcsm.ece.mcgill.ca> was kind enough to
give his permission to use his version of snprintf.c.

View File

@ -88,7 +88,14 @@ atm_guess_traffic_type(const guint8 *pd, guint32 len,
pseudo_header->atm.type = TRAF_LANE;
atm_guess_lane_type(pd, len, pseudo_header);
}
return;
}
else
/*
* Not only VCI 5 is used for signaling. It might be
* one of these VCIs
*/
pseudo_header->atm.aal = AAL_SIGNALLING;
}
void
@ -102,6 +109,10 @@ atm_guess_lane_type(const guint8 *pd, guint32 len,
*/
pseudo_header->atm.subtype = TRAF_ST_LANE_LE_CTRL;
} else {
guint32 len_802_3;
len_802_3 = pd[10];
len_802_3 <<= 8;
len_802_3 |= pd[11];
/*
* XXX - Ethernet, or Token Ring?
* Assume Ethernet for now; if we see earlier
@ -110,7 +121,16 @@ atm_guess_lane_type(const guint8 *pd, guint32 len,
* still be situations where the user has to
* tell us.
*/
pseudo_header->atm.subtype = TRAF_ST_LANE_802_3;
if (( len_802_3 + 5 + 5 + 2 ) == len )
pseudo_header->atm.subtype = TRAF_ST_LANE_802_3;
else
/*
* When it is not a 802.3 frame it might be a signalling one.
*/
{
pseudo_header->atm.aal = AAL_SIGNALLING;
pseudo_header->atm.subtype = TRAF_ST_UNKNOWN;
}
}
}
}