mirror of
https://gitea.osmocom.org/cellular-infrastructure/osmo-mgw.git
synced 2025-11-03 13:33:29 +00:00
This is a BSC to be used by on-waves.com to connect to a real
MSC using SCCP over IP.
The following messages and features are currently implemented:
- IPA identity ack's
- COMPLETE LAYER3 INFORMATION
- DTAP
- PAGING COMMAND
- CLEAR COMPLETE/CLEAR REQUEST
- CIPHER MODE COMMAND/ REJECT /COMPLETE
It comes with a tool to create the enum's from the spec and
a very simple test server to do the handshaking.
31 lines
660 B
Python
Executable File
31 lines
660 B
Python
Executable File
#!/usr/bin/env python
|
|
|
|
import sys
|
|
|
|
# packages
|
|
ACK ="\x00\x01\xfe\x06"
|
|
RESET_ACK = "\x00\x13\xfd\x09\x00\x03\x07\x0b\x04\x43\x01\x00\xfe\x04\x43\x5c\x00\xfe\x03\x00\x01\x31"
|
|
PAGE = "\x00\x20\xfd\x09\x00\x03\x07\x0b\x04\x43\x01\x00\xfe\x04\x43\x5c\x00\xfe\x10\x00\x0e\x52\x08\x08\x29\x42\x08\x05\x03\x12\x23\x42\x1a\x01\x06"
|
|
|
|
|
|
# simple handshake...
|
|
sys.stdout.write(ACK)
|
|
sys.stdout.flush()
|
|
sys.stdin.read(4)
|
|
|
|
# wait for some data and send reset ack
|
|
sys.stdin.read(21)
|
|
sys.stdout.write(RESET_ACK)
|
|
sys.stdout.flush()
|
|
|
|
sys.stdout.write(RESET_ACK)
|
|
sys.stdout.flush()
|
|
|
|
# page a subscriber
|
|
sys.stdout.write(PAGE)
|
|
sys.stdout.flush()
|
|
|
|
while True:
|
|
sys.stdin.read(1)
|
|
|