Files
osmo-mgw/tests/mgcp/mgcp_test.ok
Philipp Maier 3d7b58d77a protocol: reject illegal lco options
At the moment osmo-mgw will accept multiple lco options. (e.g.
p:10, a:PCMU, p:10) If LCO appear multiple times, than the first
appearance of will be parsed and used, all following appearances
will be ignored. However, having multiple appearances of LCO is
illegal and affected requests should be rejected. Also osmo-mgw
should reject illegal formatted LCO strings

- make sure that multiple appearances of LCOs will be rejected
- make sure that illegal formated LCOs are rejected
- add testcases with garbeled LCO and valid LCO examples

Change-Id: Iae2fddfa5f2bcfc952f8ab217b3056694e5f7812
Closes: OS#3119
2018-06-06 16:41:04 +02:00

1122 lines
33 KiB
Plaintext

line: 'one CR'
line: 'two CR'
line: ''
line: 'one CRLF'
line: 'two CRLF'
line: ''
line: 'one LF'
line: 'two LF'
line: ''
line: 'mixed (4 lines)'
line: ''
line: ''
line: ''
================================================
Testing AUEP1
creating message from statically defined input:
---------8<---------
AUEP 158663169 ds/e1-1/2@mgw MGCP 1.0
---------8<---------
checking response:
using message as statically defined for comparison
Response matches our expectations.
(response contains a connection id)
================================================
Testing AUEP2
creating message from statically defined input:
---------8<---------
AUEP 18983213 ds/e1-2/1@mgw MGCP 1.0
---------8<---------
checking response:
using message as statically defined for comparison
Response matches our expectations.
(response contains a connection id)
================================================
Testing MDCX1
creating message from statically defined input:
---------8<---------
MDCX 18983213 ds/e1-3/1@mgw MGCP 1.0
---------8<---------
checking response:
using message as statically defined for comparison
Response matches our expectations.
(response contains a connection id)
================================================
Testing MDCX2
creating message from statically defined input:
---------8<---------
MDCX 18983214 ds/e1-1/2@mgw MGCP 1.0
---------8<---------
checking response:
using message as statically defined for comparison
Response matches our expectations.
(response contains a connection id)
================================================
Testing CRCX
creating message from statically defined input:
---------8<---------
CRCX 2 1@mgw MGCP 1.0
M: recvonly
C: 2
L: p:20
v=0
c=IN IP4 123.12.12.123
m=audio 5904 RTP/AVP 97
a=rtpmap:97 GSM-EFR/8000
a=ptime:40
---------8<---------
checking response:
using message with patched conn_id for comparison
Response matches our expectations.
(response does not contain a connection id)
Dummy packets: 2
================================================
Testing MDCX3
creating message from statically defined input:
---------8<---------
MDCX 18983215 1@mgw MGCP 1.0
I: %s
---------8<---------
checking response:
using message with patched conn_id for comparison
Response matches our expectations.
(response does not contain a connection id)
Dummy packets: 2
================================================
Testing MDCX4
creating message from statically defined input:
---------8<---------
MDCX 18983216 1@mgw MGCP 1.0
M: sendrecv
C: 2
I: %s
L: p:20, a:AMR, nt:IN
v=0
o=- %s 23 IN IP4 0.0.0.0
c=IN IP4 0.0.0.0
t=0 0
m=audio 4441 RTP/AVP 99
a=rtpmap:99 AMR/8000
a=ptime:40
---------8<---------
checking response:
using message with patched conn_id for comparison
Response matches our expectations.
(response does not contain a connection id)
Dummy packets: 2
================================================
Testing MDCX4_PT1
creating message from statically defined input:
---------8<---------
MDCX 18983217 1@mgw MGCP 1.0
M: sendrecv
C: 2
I: %s
L: p:20-40, a:AMR, nt:IN
v=0
o=- %s 23 IN IP4 0.0.0.0
c=IN IP4 0.0.0.0
t=0 0
m=audio 4441 RTP/AVP 99
a=rtpmap:99 AMR/8000
a=ptime:40
---------8<---------
checking response:
using message with patched conn_id for comparison
Response matches our expectations.
(response does not contain a connection id)
Dummy packets: 2
================================================
Testing MDCX4_PT2
creating message from statically defined input:
---------8<---------
MDCX 18983218 1@mgw MGCP 1.0
M: sendrecv
C: 2
I: %s
L: p:20-20, a:AMR, nt:IN
v=0
o=- %s 23 IN IP4 0.0.0.0
c=IN IP4 0.0.0.0
t=0 0
m=audio 4441 RTP/AVP 99
a=rtpmap:99 AMR/8000
a=ptime:40
---------8<---------
checking response:
using message with patched conn_id for comparison
Response matches our expectations.
(response does not contain a connection id)
Dummy packets: 2
================================================
Testing MDCX4_PT3
creating message from statically defined input:
---------8<---------
MDCX 18983219 1@mgw MGCP 1.0
M: sendrecv
C: 2
I: %s
L: a:AMR, nt:IN
v=0
o=- %s 23 IN IP4 0.0.0.0
c=IN IP4 0.0.0.0
t=0 0
m=audio 4441 RTP/AVP 99
a=rtpmap:99 AMR/8000
a=ptime:40
---------8<---------
checking response:
using message with patched conn_id for comparison
Response matches our expectations.
(response does not contain a connection id)
Dummy packets: 2
================================================
Testing MDCX4_SO
creating message from statically defined input:
---------8<---------
MDCX 18983220 1@mgw MGCP 1.0
M: sendonly
C: 2
I: %s
L: p:20, a:AMR, nt:IN
v=0
o=- %s 23 IN IP4 0.0.0.0
c=IN IP4 0.0.0.0
t=0 0
m=audio 4441 RTP/AVP 99
a=rtpmap:99 AMR/8000
a=ptime:40
---------8<---------
checking response:
using message with patched conn_id for comparison
Response matches our expectations.
(response does not contain a connection id)
================================================
Testing MDCX4_RO
creating message from statically defined input:
---------8<---------
MDCX 18983221 1@mgw MGCP 1.0
M: recvonly
C: 2
I: %s
L: p:20, a:AMR, nt:IN
---------8<---------
checking response:
using message with patched conn_id for comparison
Response matches our expectations.
(response does not contain a connection id)
Dummy packets: 2
================================================
Testing DLCX
creating message from statically defined input:
---------8<---------
DLCX 7 1@mgw MGCP 1.0
I: %s
C: 2
---------8<---------
checking response:
using message as statically defined for comparison
Response matches our expectations.
(response contains a connection id)
================================================
Testing CRCX_ZYN
creating message from statically defined input:
---------8<---------
CRCX 2 1@mgw MGCP 1.0
M: recvonly
C: 2
v=0
c=IN IP4 123.12.12.123
m=audio 5904 RTP/AVP 97
a=rtpmap:97 GSM-EFR/8000
---------8<---------
checking response:
using message with patched conn_id for comparison
Response matches our expectations.
(response does not contain a connection id)
Dummy packets: 2
================================================
Testing EMPTY
creating message from statically defined input:
---------8<---------
---------8<---------
================================================
Testing SHORT1
creating message from statically defined input:
---------8<---------
CRCX
---------8<---------
checking response:
using message as statically defined for comparison
Response matches our expectations.
(response contains a connection id)
================================================
Testing SHORT2
creating message from statically defined input:
---------8<---------
CRCX 1
---------8<---------
checking response:
using message as statically defined for comparison
Response matches our expectations.
(response contains a connection id)
================================================
Testing SHORT3
creating message from statically defined input:
---------8<---------
CRCX 1 1@mgw
---------8<---------
checking response:
using message as statically defined for comparison
Response matches our expectations.
(response contains a connection id)
================================================
Testing SHORT4
creating message from statically defined input:
---------8<---------
CRCX 1 1@mgw MGCP
---------8<---------
checking response:
using message as statically defined for comparison
Response matches our expectations.
(response contains a connection id)
================================================
Testing RQNT1
creating message from statically defined input:
---------8<---------
RQNT 186908780 1@mgw MGCP 1.0
X: B244F267488
S: D/9
---------8<---------
checking response:
using message as statically defined for comparison
Response matches our expectations.
(response contains a connection id)
================================================
Testing RQNT2
creating message from statically defined input:
---------8<---------
RQNT 186908781 1@mgw MGCP 1.0
X: ADD4F26746F
R: D/[0-9#*](N), G/ft, fxr/t38
---------8<---------
checking response:
using message as statically defined for comparison
Response matches our expectations.
(response contains a connection id)
================================================
Testing DLCX
creating message from statically defined input:
---------8<---------
DLCX 7 1@mgw MGCP 1.0
I: %s
C: 2
---------8<---------
checking response:
using message as statically defined for comparison
Response matches our expectations.
(response contains a connection id)
================================================
Testing CRCX
creating message from statically defined input:
---------8<---------
CRCX 2 1@mgw MGCP 1.0
M: recvonly
C: 2
L: p:20
v=0
c=IN IP4 123.12.12.123
m=audio 5904 RTP/AVP 97
a=rtpmap:97 GSM-EFR/8000
a=ptime:40
---------8<---------
checking response:
using message with patched conn_id for comparison
Response matches our expectations.
(response does not contain a connection id)
Dummy packets: 2
================================================
Testing MDCX3
creating message from statically defined input:
---------8<---------
MDCX 18983215 1@mgw MGCP 1.0
I: %s
---------8<---------
checking response:
using message with patched conn_id for comparison
Response matches our expectations.
(response does not contain a connection id)
Dummy packets: 2
================================================
Testing DLCX
creating message from statically defined input:
---------8<---------
DLCX 7 1@mgw MGCP 1.0
I: %s
C: 2
---------8<---------
checking response:
using message as statically defined for comparison
Response matches our expectations.
(response contains a connection id)
================================================
Testing CRCX
creating message from statically defined input:
---------8<---------
CRCX 2 1@mgw MGCP 1.0
M: recvonly
C: 2
L: p:20
v=0
c=IN IP4 123.12.12.123
m=audio 5904 RTP/AVP 97
a=rtpmap:97 GSM-EFR/8000
a=ptime:40
---------8<---------
checking response:
using message with patched conn_id for comparison
Response matches our expectations.
Re-transmitting CRCX
creating message from statically defined input:
---------8<---------
CRCX 2 1@mgw MGCP 1.0
M: recvonly
C: 2
L: p:20
v=0
c=IN IP4 123.12.12.123
m=audio 5904 RTP/AVP 97
a=rtpmap:97 GSM-EFR/8000
a=ptime:40
---------8<---------
checking response:
using message with patched conn_id for comparison
Response matches our expectations.
================================================
Testing RQNT1
creating message from statically defined input:
---------8<---------
RQNT 186908780 1@mgw MGCP 1.0
X: B244F267488
S: D/9
---------8<---------
checking response:
using message as statically defined for comparison
Response matches our expectations.
Re-transmitting RQNT1
creating message from statically defined input:
---------8<---------
RQNT 186908780 1@mgw MGCP 1.0
X: B244F267488
S: D/9
---------8<---------
checking response:
using message as statically defined for comparison
Response matches our expectations.
================================================
Testing RQNT2
creating message from statically defined input:
---------8<---------
RQNT 186908781 1@mgw MGCP 1.0
X: ADD4F26746F
R: D/[0-9#*](N), G/ft, fxr/t38
---------8<---------
checking response:
using message as statically defined for comparison
Response matches our expectations.
Re-transmitting RQNT2
creating message from statically defined input:
---------8<---------
RQNT 186908781 1@mgw MGCP 1.0
X: ADD4F26746F
R: D/[0-9#*](N), G/ft, fxr/t38
---------8<---------
checking response:
using message as statically defined for comparison
Response matches our expectations.
================================================
Testing MDCX3
creating message from statically defined input:
---------8<---------
MDCX 18983215 1@mgw MGCP 1.0
I: %s
---------8<---------
checking response:
using message with patched conn_id for comparison
Response matches our expectations.
Re-transmitting MDCX3
creating message from statically defined input:
---------8<---------
MDCX 18983215 1@mgw MGCP 1.0
I: %s
---------8<---------
checking response:
using message with patched conn_id for comparison
Response matches our expectations.
================================================
Testing DLCX
creating message from statically defined input:
---------8<---------
DLCX 7 1@mgw MGCP 1.0
I: %s
C: 2
---------8<---------
checking response:
using message as statically defined for comparison
Response matches our expectations.
Re-transmitting DLCX
creating message from statically defined input:
---------8<---------
DLCX 7 1@mgw MGCP 1.0
I: %s
C: 2
---------8<---------
checking response:
using message as statically defined for comparison
Response matches our expectations.
Testing packet loss calculation.
creating message from statically defined input:
---------8<---------
CRCX 2 1@mgw MGCP 1.0
M: recvonly
C: 2
L: p:20
v=0
c=IN IP4 123.12.12.123
m=audio 5904 RTP/AVP 97
a=rtpmap:97 GSM-EFR/8000
a=ptime:40
---------8<---------
creating message from statically defined input:
---------8<---------
RQNT 186908780 1@mgw MGCP 1.0
X: B244F267488
S: D/9
---------8<---------
creating message from statically defined input:
---------8<---------
DLCX 7 1@mgw MGCP 1.0
I: %s
C: 2
---------8<---------
Testing stat parsing
creating message from statically defined input:
---------8<---------
250 7 OK
P: PS=0, OS=0, PR=0, OR=0, PL=0, JI=0
---------8<---------
Parsing result: 0
creating message from statically defined input:
---------8<---------
250 7 OK
P: PS=10, OS=20, PR=30, OR=40, PL=-3, JI=40
---------8<---------
Parsing result: 0
Testing packet error detection, patch SSRC.
Output SSRC changed to 11223344
In TS: 0, dTS: 0, Seq: 0
Out TS change: 0, dTS: 0, Seq change: 0, TS Err change: in +0, out +0
Stats: Jitter = 0, Transit = 0
In TS: 160, dTS: 160, Seq: 1
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 0, Transit = 0
In TS: 320, dTS: 160, Seq: 2
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 0, Transit = 0
In TS: 320, dTS: 160, Seq: 3
Out TS change: 0, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 10, Transit = 160
In TS: 480, dTS: 160, Seq: 4
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 9, Transit = 160
In TS: 640, dTS: 160, Seq: 5
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 8, Transit = 160
In TS: 960, dTS: 320, Seq: 6
Out TS change: 320, dTS: 320, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 18, Transit = 0
In TS: 1120, dTS: 160, Seq: 7
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 17, Transit = 0
In TS: 1280, dTS: 160, Seq: 8
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 16, Transit = 0
In TS: 1400, dTS: 120, Seq: 9
Out TS change: 120, dTS: 120, Seq change: 1, TS Err change: in +1, out +1
Stats: Jitter = 17, Transit = 40
In TS: 1560, dTS: 160, Seq: 10
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 16, Transit = 40
In TS: 1720, dTS: 160, Seq: 11
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 15, Transit = 40
In TS: 34688, dTS: 0, Seq: 12
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 0, Transit = -32768
In TS: 34848, dTS: 160, Seq: 13
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 0, Transit = -32768
In TS: 35008, dTS: 160, Seq: 14
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 0, Transit = -32768
In TS: 35128, dTS: 120, Seq: 15
Out TS change: 120, dTS: 120, Seq change: 1, TS Err change: in +1, out +1
Stats: Jitter = 2, Transit = -32728
In TS: 35288, dTS: 160, Seq: 16
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 2, Transit = -32728
In TS: 35448, dTS: 160, Seq: 17
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 2, Transit = -32728
In TS: 35768, dTS: 160, Seq: 19
Out TS change: 320, dTS: 160, Seq change: 2, TS Err change: in +0, out +0
Stats: Jitter = 12, Transit = -32888
In TS: 35928, dTS: 160, Seq: 20
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 11, Transit = -32888
In TS: 36088, dTS: 160, Seq: 21
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 20, Transit = -33048
In TS: 36088, dTS: 160, Seq: 21
Out TS change: 0, dTS: 160, Seq change: 0, TS Err change: in +0, out +0
Stats: Jitter = 29, Transit = -32888
In TS: 36248, dTS: 160, Seq: 22
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 27, Transit = -32888
In TS: 36408, dTS: 160, Seq: 23
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 25, Transit = -32888
In TS: 36568, dTS: 160, Seq: 23
Out TS change: 160, dTS: 160, Seq change: 0, TS Err change: in +1, out +1
Stats: Jitter = 24, Transit = -32888
In TS: 36728, dTS: 160, Seq: 24
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 22, Transit = -32888
In TS: 36888, dTS: 160, Seq: 25
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 21, Transit = -32888
In TS: 160000, dTS: 0, Seq: 1000
Out TS change: 12000, dTS: 12000, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 0, Transit = -144000
In TS: 160160, dTS: 160, Seq: 1001
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 0, Transit = -144000
In TS: 160320, dTS: 160, Seq: 1002
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 0, Transit = -144000
Testing packet error detection.
Output SSRC changed to 11223344
In TS: 0, dTS: 0, Seq: 0
Out TS change: 0, dTS: 0, Seq change: 0, TS Err change: in +0, out +0
Stats: Jitter = 0, Transit = 0
In TS: 160, dTS: 160, Seq: 1
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 0, Transit = 0
In TS: 320, dTS: 160, Seq: 2
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 0, Transit = 0
In TS: 320, dTS: 160, Seq: 3
Out TS change: 0, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 10, Transit = 160
In TS: 480, dTS: 160, Seq: 4
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 9, Transit = 160
In TS: 640, dTS: 160, Seq: 5
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 8, Transit = 160
In TS: 960, dTS: 320, Seq: 6
Out TS change: 320, dTS: 320, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 18, Transit = 0
In TS: 1120, dTS: 160, Seq: 7
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 17, Transit = 0
In TS: 1280, dTS: 160, Seq: 8
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 16, Transit = 0
In TS: 1400, dTS: 120, Seq: 9
Out TS change: 120, dTS: 120, Seq change: 1, TS Err change: in +1, out +1
Stats: Jitter = 17, Transit = 40
In TS: 1560, dTS: 160, Seq: 10
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 16, Transit = 40
In TS: 1720, dTS: 160, Seq: 11
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 15, Transit = 40
Output SSRC changed to 10203040
In TS: 34688, dTS: 0, Seq: 12
Out TS change: 32968, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 0, Transit = -32768
In TS: 34848, dTS: 160, Seq: 13
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 0, Transit = -32768
In TS: 35008, dTS: 160, Seq: 14
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 0, Transit = -32768
In TS: 35128, dTS: 120, Seq: 15
Out TS change: 120, dTS: 120, Seq change: 1, TS Err change: in +1, out +1
Stats: Jitter = 2, Transit = -32728
In TS: 35288, dTS: 160, Seq: 16
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 2, Transit = -32728
In TS: 35448, dTS: 160, Seq: 17
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 2, Transit = -32728
In TS: 35768, dTS: 160, Seq: 19
Out TS change: 320, dTS: 160, Seq change: 2, TS Err change: in +0, out +0
Stats: Jitter = 12, Transit = -32888
In TS: 35928, dTS: 160, Seq: 20
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 11, Transit = -32888
In TS: 36088, dTS: 160, Seq: 21
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 20, Transit = -33048
In TS: 36088, dTS: 160, Seq: 21
Out TS change: 0, dTS: 160, Seq change: 0, TS Err change: in +0, out +0
Stats: Jitter = 29, Transit = -32888
In TS: 36248, dTS: 160, Seq: 22
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 27, Transit = -32888
In TS: 36408, dTS: 160, Seq: 23
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 25, Transit = -32888
In TS: 36568, dTS: 160, Seq: 23
Out TS change: 160, dTS: 160, Seq change: 0, TS Err change: in +1, out +1
Stats: Jitter = 24, Transit = -32888
In TS: 36728, dTS: 160, Seq: 24
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 22, Transit = -32888
In TS: 36888, dTS: 160, Seq: 25
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 21, Transit = -32888
Output SSRC changed to 50607080
In TS: 160000, dTS: 0, Seq: 1000
Out TS change: 123112, dTS: 160, Seq change: 975, TS Err change: in +0, out +0
Stats: Jitter = 0, Transit = -144000
In TS: 160160, dTS: 160, Seq: 1001
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 0, Transit = -144000
In TS: 160320, dTS: 160, Seq: 1002
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 0, Transit = -144000
Testing packet error detection, patch timestamps.
Output SSRC changed to 11223344
In TS: 0, dTS: 0, Seq: 0
Out TS change: 0, dTS: 0, Seq change: 0, TS Err change: in +0, out +0
Stats: Jitter = 0, Transit = 0
In TS: 160, dTS: 160, Seq: 1
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 0, Transit = 0
In TS: 320, dTS: 160, Seq: 2
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 0, Transit = 0
In TS: 320, dTS: 160, Seq: 3
Out TS change: 0, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 10, Transit = 160
In TS: 480, dTS: 160, Seq: 4
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 9, Transit = 160
In TS: 640, dTS: 160, Seq: 5
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 8, Transit = 160
In TS: 960, dTS: 320, Seq: 6
Out TS change: 320, dTS: 320, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 18, Transit = 0
In TS: 1120, dTS: 160, Seq: 7
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 17, Transit = 0
In TS: 1280, dTS: 160, Seq: 8
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 16, Transit = 0
In TS: 1400, dTS: 120, Seq: 9
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +1, out +0
Stats: Jitter = 17, Transit = 40
In TS: 1560, dTS: 160, Seq: 10
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 16, Transit = 40
In TS: 1720, dTS: 160, Seq: 11
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 15, Transit = 40
Output SSRC changed to 10203040
In TS: 34688, dTS: 0, Seq: 12
Out TS change: 32968, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 0, Transit = -32768
In TS: 34848, dTS: 160, Seq: 13
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 0, Transit = -32768
In TS: 35008, dTS: 160, Seq: 14
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 0, Transit = -32768
In TS: 35128, dTS: 120, Seq: 15
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +1, out +0
Stats: Jitter = 2, Transit = -32728
In TS: 35288, dTS: 160, Seq: 16
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 2, Transit = -32728
In TS: 35448, dTS: 160, Seq: 17
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 2, Transit = -32728
In TS: 35768, dTS: 160, Seq: 19
Out TS change: 320, dTS: 160, Seq change: 2, TS Err change: in +0, out +0
Stats: Jitter = 12, Transit = -32888
In TS: 35928, dTS: 160, Seq: 20
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 11, Transit = -32888
In TS: 36088, dTS: 160, Seq: 21
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 20, Transit = -33048
In TS: 36088, dTS: 160, Seq: 21
Out TS change: 0, dTS: 160, Seq change: 0, TS Err change: in +0, out +0
Stats: Jitter = 29, Transit = -32888
In TS: 36248, dTS: 160, Seq: 22
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 27, Transit = -32888
In TS: 36408, dTS: 160, Seq: 23
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 25, Transit = -32888
In TS: 36568, dTS: 160, Seq: 23
Out TS change: 160, dTS: 160, Seq change: 0, TS Err change: in +1, out +1
Stats: Jitter = 24, Transit = -32888
In TS: 36728, dTS: 160, Seq: 24
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 22, Transit = -32888
In TS: 36888, dTS: 160, Seq: 25
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 21, Transit = -32888
Output SSRC changed to 50607080
In TS: 160000, dTS: 0, Seq: 1000
Out TS change: 123112, dTS: 160, Seq change: 975, TS Err change: in +0, out +0
Stats: Jitter = 0, Transit = -144000
In TS: 160160, dTS: 160, Seq: 1001
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 0, Transit = -144000
In TS: 160320, dTS: 160, Seq: 1002
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 0, Transit = -144000
Testing packet error detection, patch SSRC, patch timestamps.
Output SSRC changed to 11223344
In TS: 0, dTS: 0, Seq: 0
Out TS change: 0, dTS: 0, Seq change: 0, TS Err change: in +0, out +0
Stats: Jitter = 0, Transit = 0
In TS: 160, dTS: 160, Seq: 1
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 0, Transit = 0
In TS: 320, dTS: 160, Seq: 2
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 0, Transit = 0
In TS: 320, dTS: 160, Seq: 3
Out TS change: 0, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 10, Transit = 160
In TS: 480, dTS: 160, Seq: 4
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 9, Transit = 160
In TS: 640, dTS: 160, Seq: 5
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 8, Transit = 160
In TS: 960, dTS: 320, Seq: 6
Out TS change: 320, dTS: 320, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 18, Transit = 0
In TS: 1120, dTS: 160, Seq: 7
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 17, Transit = 0
In TS: 1280, dTS: 160, Seq: 8
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 16, Transit = 0
In TS: 1400, dTS: 120, Seq: 9
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +1, out +0
Stats: Jitter = 17, Transit = 40
In TS: 1560, dTS: 160, Seq: 10
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 16, Transit = 40
In TS: 1720, dTS: 160, Seq: 11
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 15, Transit = 40
In TS: 34688, dTS: 0, Seq: 12
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 0, Transit = -32768
In TS: 34848, dTS: 160, Seq: 13
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 0, Transit = -32768
In TS: 35008, dTS: 160, Seq: 14
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 0, Transit = -32768
In TS: 35128, dTS: 120, Seq: 15
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +1, out +0
Stats: Jitter = 2, Transit = -32728
In TS: 35288, dTS: 160, Seq: 16
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 2, Transit = -32728
In TS: 35448, dTS: 160, Seq: 17
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 2, Transit = -32728
In TS: 35768, dTS: 160, Seq: 19
Out TS change: 320, dTS: 160, Seq change: 2, TS Err change: in +0, out +0
Stats: Jitter = 12, Transit = -32888
In TS: 35928, dTS: 160, Seq: 20
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 11, Transit = -32888
In TS: 36088, dTS: 160, Seq: 21
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 20, Transit = -33048
In TS: 36088, dTS: 160, Seq: 21
Out TS change: 0, dTS: 160, Seq change: 0, TS Err change: in +0, out +0
Stats: Jitter = 29, Transit = -32888
In TS: 36248, dTS: 160, Seq: 22
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 27, Transit = -32888
In TS: 36408, dTS: 160, Seq: 23
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 25, Transit = -32888
In TS: 36568, dTS: 160, Seq: 23
Out TS change: 160, dTS: 160, Seq change: 0, TS Err change: in +1, out +1
Stats: Jitter = 24, Transit = -32888
In TS: 36728, dTS: 160, Seq: 24
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 22, Transit = -32888
In TS: 36888, dTS: 160, Seq: 25
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 21, Transit = -32888
In TS: 160000, dTS: 0, Seq: 1000
Out TS change: 12000, dTS: 12000, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 0, Transit = -144000
In TS: 160160, dTS: 160, Seq: 1001
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 0, Transit = -144000
In TS: 160320, dTS: 160, Seq: 1002
Out TS change: 160, dTS: 160, Seq change: 1, TS Err change: in +0, out +0
Stats: Jitter = 0, Transit = -144000
Testing multiple payload types
creating message from statically defined input:
---------8<---------
CRCX 2 1@mgw MGCP 1.0
M: recvonly
C: 2
X
L: p:20
v=0
c=IN IP4 123.12.12.123
m=audio 5904 RTP/AVP 18 97
a=rtpmap:18 G729/8000
a=rtpmap:97 GSM-EFR/8000
a=ptime:40
---------8<---------
creating message from statically defined input:
---------8<---------
CRCX 2 2@mgw MGCP 1.0
M: recvonly
C: 2
X
L: p:20
v=0
c=IN IP4 123.12.12.123
m=audio 5904 RTP/AVP 18 97 101
a=rtpmap:18 G729/8000
a=rtpmap:97 GSM-EFR/8000
a=rtpmap:101 FOO/8000
a=ptime:40
---------8<---------
creating message from statically defined input:
---------8<---------
CRCX 2 3@mgw MGCP 1.0
M: recvonly
C: 2
X
L: p:20
v=0
c=IN IP4 123.12.12.123
m=audio 5904 RTP/AVP
a=rtpmap:18 G729/8000
a=rtpmap:97 GSM-EFR/8000
a=rtpmap:101 FOO/8000
a=ptime:40
---------8<---------
creating message from statically defined input:
---------8<---------
CRCX 2 4@mgw MGCP 1.0
M: recvonly
C: 2
X
L: p:20
v=0
c=IN IP4 123.12.12.123
m=audio 5904 RTP/AVP 18
a=rtpmap:18 G729/8000
a=rtpmap:97 GSM-EFR/8000
a=rtpmap:101 FOO/8000
a=ptime:40
---------8<---------
creating message from statically defined input:
---------8<---------
CRCX 259260421 5@mgw MGCP 1.0
C: 1355c6041e
L: p:20, a:GSM, nt:IN
M: recvonly
v=0
o=- 1439038275 1439038275 IN IP4 192.168.181.247
s=-
c=IN IP4 192.168.181.247
t=0 0
m=audio 29084 RTP/AVP 255 0 8 3 18 4 96 97 101
a=rtpmap:0 PCMU/8000
a=rtpmap:8 PCMA/8000
a=rtpmap:3 gsm/8000
a=rtpmap:18 G729/8000
a=fmtp:18 annexb=no
a=rtpmap:4 G723/8000
a=rtpmap:96 iLBC/8000
a=fmtp:96 mode=20
a=rtpmap:97 iLBC/8000
a=fmtp:97 mode=30
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-15
a=recvonly
---------8<---------
creating message from statically defined input:
---------8<---------
MDCX 23 5@mgw MGCP 1.0
C: 1355c6041e
I: %s
c=IN IP4 8.8.8.8
m=audio 16434 RTP/AVP 255
---------8<---------
creating message from statically defined input:
---------8<---------
CRCX 259260421 5@mgw MGCP 1.0
C: 1355c6041e
L: p:20, a:GSM, nt:IN
M: recvonly
v=0
o=- 1439038275 1439038275 IN IP4 192.168.181.247
s=-
c=IN IP4 192.168.181.247
t=0 0
m=audio 29084 RTP/AVP 255 0 8 3 18 4 96 97 101
a=rtpmap:0 PCMU/8000
a=rtpmap:8 PCMA/8000
a=rtpmap:3 gsm/8000
a=rtpmap:18 G729/8000
a=fmtp:18 annexb=no
a=rtpmap:4 G723/8000
a=rtpmap:96 iLBC/8000
a=fmtp:96 mode=20
a=rtpmap:97 iLBC/8000
a=fmtp:97 mode=30
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-15
a=recvonly
---------8<---------
Testing no sequence flow on initial packet
Testing no rtpmap name
creating message from statically defined input:
---------8<---------
CRCX 2 1@mgw MGCP 1.0
M: recvonly
C: 2
L: p:20
v=0
c=IN IP4 123.12.12.123
m=audio 5904 RTP/AVP 97
a=rtpmap:97 GSM-EFR/8000
a=ptime:40
---------8<---------
checking response:
using message with patched conn_id for comparison
Response matches our expectations.
Testing get_lco_identifier()
p:10, a:PCMU -> p:10, a:PCMU
p:10, a:PCMU -> p:10, a:PCMU
'XXXX, p:10, a:PCMU' -> 'p:10, a:PCMU'
'XXXX,p:10,a:PCMU' -> 'p:10,a:PCMU'
'10,a:PCMU' -> 'a:PCMU'
'10, a:PCMU' -> 'a:PCMU'
'10,a: PCMU' -> 'a: PCMU'
'10 ,a: PCMU' -> 'a: PCMU'
', a:PCMU' -> 'a:PCMU'
' a:PCMU' -> 'a:PCMU'
'' -> '(null)'
p10, aPCMU -> (null)
'10,a :PCMU' -> '(null)'
Done