aboutsummaryrefslogtreecommitdiff
path: root/netsec-assignment1-S4498062/exercise2
diff options
context:
space:
mode:
authorCamil Staps2015-09-05 13:47:35 +0200
committerCamil Staps2015-09-05 13:47:57 +0200
commitbe217b0370ecc19dd205615b739e6995c066bdd1 (patch)
tree0603788062d94a5681f43f87af66cd93e7cc1c0d /netsec-assignment1-S4498062/exercise2
Assignment 1
Diffstat (limited to 'netsec-assignment1-S4498062/exercise2')
-rwxr-xr-xnetsec-assignment1-S4498062/exercise2/netcat-l.py32
-rwxr-xr-xnetsec-assignment1-S4498062/exercise2/netcat.py12
2 files changed, 44 insertions, 0 deletions
diff --git a/netsec-assignment1-S4498062/exercise2/netcat-l.py b/netsec-assignment1-S4498062/exercise2/netcat-l.py
new file mode 100755
index 0000000..8a4ce2f
--- /dev/null
+++ b/netsec-assignment1-S4498062/exercise2/netcat-l.py
@@ -0,0 +1,32 @@
+#!/usr/bin/env python3
+
+import socket
+
+def handle(passedconn):
+ data = b""
+ newdata, addr = passedconn.recvfrom(size)
+ print(newdata, addr)
+ while newdata:
+ datastring = newdata.decode("utf-8")
+ print(handlestring(datastring, len("spam "), "\n"))
+ newdata, addr = passedconn.recvfrom(size)
+
+def handlestring(datastring, length, delimiter):
+ stringlist = datastring.split(sep=delimiter)
+ filteredlist = [s[length:] for s in stringlist]
+ filteredstring = delimiter.join(filteredlist)
+ return filteredstring
+
+def main():
+ s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
+ s.bind((host, port))
+ handle(s)
+ s.close()
+
+host = "localhost"
+port = 42424
+size = 2 ** 16 - 1
+
+if __name__ == "__main__":
+ main()
+
diff --git a/netsec-assignment1-S4498062/exercise2/netcat.py b/netsec-assignment1-S4498062/exercise2/netcat.py
new file mode 100755
index 0000000..5585c32
--- /dev/null
+++ b/netsec-assignment1-S4498062/exercise2/netcat.py
@@ -0,0 +1,12 @@
+#!/usr/bin/env python3
+
+import socket
+
+s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
+stringbuf = ""
+for i in range(0, 1000):
+ stringbuf = stringbuf + "spam " + str(i) + "\n"
+buf = stringbuf.encode("utf-8")
+s.sendto(buf, ("localhost", 42424))
+s.close()
+