gsm0808: Be able to parse a ciphering mode complete with layer3 contents
This commit is contained in:
parent
15be4f4af2
commit
00ee3d0ea0
28
BSSMAP.st
28
BSSMAP.st
|
@ -797,3 +797,31 @@ GSM0808IE subclass: GSM0808Classmark3IE [
|
||||||
aMsg putByteArray: cm.
|
aMsg putByteArray: cm.
|
||||||
]
|
]
|
||||||
]
|
]
|
||||||
|
|
||||||
|
GSM0808IE subclass: GSM0808Layer3MessageContents [
|
||||||
|
| layer3Message |
|
||||||
|
<category: 'OsmoGSM'>
|
||||||
|
|
||||||
|
GSM0808Layer3MessageContents class >> elementId [^32]
|
||||||
|
GSM0808Layer3MessageContents class >> initWith: aByteArray [
|
||||||
|
^self new
|
||||||
|
layer3Message: aByteArray;
|
||||||
|
yourself
|
||||||
|
]
|
||||||
|
|
||||||
|
GSM0808Layer3MessageContents class >> parseFrom: aStream [
|
||||||
|
| size |
|
||||||
|
size := aStream next.
|
||||||
|
^self initWith: (aStream next: size)
|
||||||
|
]
|
||||||
|
|
||||||
|
layer3Message: aByteArray [
|
||||||
|
layer3Message := aByteArray
|
||||||
|
]
|
||||||
|
|
||||||
|
writeOnDirect: aMsg [
|
||||||
|
aMsg
|
||||||
|
putByte: layer3Message size;
|
||||||
|
putByteArray: layer3Message.
|
||||||
|
]
|
||||||
|
]
|
||||||
|
|
6
Tests.st
6
Tests.st
|
@ -595,6 +595,12 @@ TestCase subclass: TestMessages [
|
||||||
msg := MSGParser parse: inp.
|
msg := MSGParser parse: inp.
|
||||||
self assert: msg toMessage asByteArray = inp.
|
self assert: msg toMessage asByteArray = inp.
|
||||||
|
|
||||||
|
"Ciphering mode complete..."
|
||||||
|
inp := #[16r06 16r01 16r01 16r5B 16r00 16r01 16r14 16r00 16r12 16r55 16r20 16r0D 16r06 16r32 16r17 16r09 16r33 16r15 16r49 16r00 16r93 16r89 16r31 16r62 16rF4 16r2C 16r02].
|
||||||
|
msg := MSGParser parse: inp.
|
||||||
|
self assert: msg toMessage asByteArray = inp.
|
||||||
|
|
||||||
|
|
||||||
"Assignment Command"
|
"Assignment Command"
|
||||||
inp := #(6 0 0 72 0 1 11 0 9 1 11 3 1 10 17 1 0 20 ) asByteArray.
|
inp := #(6 0 0 72 0 1 11 0 9 1 11 3 1 10 17 1 0 20 ) asByteArray.
|
||||||
msg := MSGParser parse: inp.
|
msg := MSGParser parse: inp.
|
||||||
|
|
Reference in New Issue