aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--usb_application/gsmtap.py25
1 files changed, 18 insertions, 7 deletions
diff --git a/usb_application/gsmtap.py b/usb_application/gsmtap.py
index e10faf2..32977a4 100644
--- a/usb_application/gsmtap.py
+++ b/usb_application/gsmtap.py
@@ -5,13 +5,24 @@ from scapy.all import IP, UDP, sr1
ip="127.0.0.1"
port=4729
sp=58621
-data=("\x02\x04\x04"+"\x00"*13+"\x9f\x16\xa0\xc0\x00\x00\x16", "\x9f\x16\xa0\xc0\x00\x00\x16")
+gsmtap_hdr="\x02\x04\x04"+"\x00"*13
-p=IP(dst=ip, src=ip)/UDP(sport=sp, dport=port)/data[0]
+# FIXME: Is ATR something special?
-if p:
- p.show()
+def gsmtap_send_apdu(data):
+# Do we have performance penalty because the socket stays open?
+ p=IP(dst=ip, src=ip)/UDP(sport=sp, dport=port)/(gsmtap_hdr+data)
+# FIXME: remove show and ans
+ if p:
+ p.show()
-ans = sr1(p, timeout=2)
-if ans:
- print(a)
+ ans = sr1(p, timeout=2)
+ if ans:
+ print(ans)
+
+if __name__ == '__main__':
+ cmds = ("\xa0\xa4\x00\x00\x02\x6f\x7e\x9f\x0f",
+ "\xa0\xd6\x00\x00\x0b\xff\xff\xff\xff\x09\xf1\x07\xff\xfe\x00\x03\x90\x00",
+ );
+ for cmd in cmds:
+ gsmtap_send_apdu(cmd)