mirror of
https://gitea.osmocom.org/cellular-infrastructure/osmo-mgw.git
synced 2025-10-23 08:12:01 +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)
|
|
|