def TestMonkeyPatchUDP(address): # replace the system socket with this module def UDPServer(address): listenSocket = socket.socket(AF_INET, SOCK_DGRAM) listenSocket.setsockopt(SOL_SOCKET, SO_REUSEADDR, 1) listenSocket.bind(address) i = 1 cnt = 0 while 1: #print "waiting for connection test", i #currentSocket, clientAddress = listenSocket.accept() #print "received connection", i, "from", clientAddress print "waiting to receive" t = listenSocket.recvfrom(256) cnt += len(t[0]) print "received", t[0], cnt if cnt == 512: break def UDPClient(address): clientSocket = socket.socket(AF_INET, SOCK_DGRAM) # clientSocket.connect(address) print "sending 512 byte packet" sentBytes = clientSocket.sendto("-" + ("*" * 510) + "-", address) print "sent 512 byte packet", sentBytes micro(UDPServer, (address, )) micro(UDPClient, (address, )) allmicro_run()
def TestMonkeyPatchUDP(address): # replace the system socket with this module def UDPServer(address): listenSocket = socket.socket(AF_INET, SOCK_DGRAM) listenSocket.setsockopt(SOL_SOCKET, SO_REUSEADDR, 1) listenSocket.bind(address) i = 1 cnt = 0 while 1: #print "waiting for connection test", i #currentSocket, clientAddress = listenSocket.accept() #print "received connection", i, "from", clientAddress print "waiting to receive" t = listenSocket.recvfrom(256) cnt += len(t[0]) print "received", t[0], cnt if cnt == 512: break def UDPClient(address): clientSocket = socket.socket(AF_INET, SOCK_DGRAM) # clientSocket.connect(address) print "sending 512 byte packet" sentBytes = clientSocket.sendto("-"+ ("*" * 510) +"-", address) print "sent 512 byte packet", sentBytes micro(UDPServer, (address,)) micro(UDPClient, (address,)) allmicro_run()
def run_test_tcp(): print 'Starting tcp server...' rpc.MicroTCPServer(mod, (ip_to_str(N.net[0].ip), PORT), 'lo', N, N.net[0], Sock) micro(tcp_client) allmicro_run()
def run_test_tcp(): print 'Starting tcp server...' rpc.MicroTCPServer(mod, ('localhost', PORT)) micro(tcp_client) allmicro_run()
def run_test_udp(): print 'Starting udp server...' rpc.MicroUDPServer(mod, ('', PORT)) micro(udp_client) allmicro_run()
def csend_atomic(ch, n): print 'csend_atomic start',n ch.send('take the atom') print 'csend_atomic sent', n def xf():print 'csend_atomic xf1',n micro(xf) print 'csend_atomic ch.recv',n,': ',ch.recv() print 'csend_atomic end',n
def csend(ch,n): print 'csend start',n ch.send('take') print 'csend sent', n def xf():print 'csend xf1',n micro(xf) print 'csend',n,' ch.recv: ',ch.recv() print 'csend end',n
def csend(ch, n): print 'csend start', n ch.send('take') print 'csend sent', n def xf(): print 'csend xf1', n micro(xf) print 'csend', n, ' ch.recv: ', ch.recv() print 'csend end', n
def csend_atomic(ch, n): print 'csend_atomic start', n ch.send('take the atom') print 'csend_atomic sent', n def xf(): print 'csend_atomic xf1', n micro(xf) print 'csend_atomic ch.recv', n, ': ', ch.recv() print 'csend_atomic end', n
def run_sim(): # Fill the options to pass to the nodes. s = Settings() s.SIMULATED = True s.IP_VERSION = 4 s.NICS = [] s.EXCLUDE_NICS = [] # Add the node N.net[0], and N.net[1] to the simulation. They are the # nodes loaded by N.net_file_load(). micro(NtkNode(N, N.net[0], Sock, xtime, s).run) # Wait 10 time units before adding N.net[1] xtime.swait(10) micro(NtkNode(N, N.net[1], Sock, xtime, s).run)
def test_sequence_II(): global T, T1, T2 T1=T[:] T=[] mf(1,1) micro(f, (4,4)) mft(5,5) micro(f, (6,6)) mf(2,2) mft(7,7) mf(3,3) micro(f, (8,8))
def test_sequence_II(): global T, T1, T2 T1 = T[:] T = [] mf(1, 1) micro(f, (4, 4)) mft(5, 5) micro(f, (6, 6)) mf(2, 2) mft(7, 7) mf(3, 3) micro(f, (8, 8))
@microfunc(is_atomic=True) def csend_atomic(ch, n): print 'csend_atomic start', n ch.send('take the atom') print 'csend_atomic sent', n def xf(): print 'csend_atomic xf1', n micro(xf) print 'csend_atomic ch.recv', n, ': ', ch.recv() print 'csend_atomic end', n mf(1, 1) micro(f, (4, 4)) mft(5, 5) micro(f, (6, 6)) mf(2, 2) mft(7, 7) mf(3, 3) micro(f, (8, 8)) @microfunc(1) def test_sequence_II(): global T, T1, T2 T1 = T[:] T = [] mf(1, 1) micro(f, (4, 4))
def micro_stream_request_handler(sock, clientaddr, dev, rpcdispatcher): micro(stream_request_handler, (sock, clientaddr, dev, rpcdispatcher))
def run_test_udp(): print "Starting udp server..." rpc.MicroUDPServer(mod, ("", PORT), "lo", N, N.net[0], Sock) micro(udp_client)
def run_test_tcp(): print "Starting tcp server..." rpc.MicroTCPServer(mod, (ip_to_str(N.net[0].ip), PORT), "lo", N, N.net[0], Sock) micro(tcp_client) allmicro_run()
print 'csend',n,' ch.recv: ',ch.recv() print 'csend end',n @microfunc(is_atomic=True) def csend_atomic(ch, n): print 'csend_atomic start',n ch.send('take the atom') print 'csend_atomic sent', n def xf():print 'csend_atomic xf1',n micro(xf) print 'csend_atomic ch.recv',n,': ',ch.recv() print 'csend_atomic end',n mf(1,1) micro(f, (4,4)) mft(5,5) micro(f, (6,6)) mf(2,2) mft(7,7) mf(3,3) micro(f, (8,8)) @microfunc(1) def test_sequence_II(): global T, T1, T2 T1=T[:] T=[] mf(1,1) micro(f, (4,4)) mft(5,5)
def StartManager(): global managerRunning if not managerRunning: managerRunning = True micro(ManageSockets)
def run(self, started=0): if not started: micro(self.run, (1, )) else: while True: self.radar()
print "sending 512 byte packet" sentBytes = clientSocket.sendto("-"+ ("*" * 510) +"-", address) print "sent 512 byte packet", sentBytes micro(UDPServer, (address,)) micro(UDPClient, (address,)) allmicro_run() if len(sys.argv) == 2: if sys.argv[1] == "client": print "client started" TestTCPClient(testAddress, socket.socket) print "client exited" elif sys.argv[1] == "slpclient": print "client started" micro(TestTCPClient, (testAddress,)) allmicro_run() print "client exited" elif sys.argv[1] == "server": print "server started" TestTCPServer(testAddress, socket.socket) print "server exited" elif sys.argv[1] == "slpserver": print "server started" micro(TestTCPServer,(testAddress,)) allmicro_run() print "server exited" else: print "Usage:", sys.argv[0], "[client|server|slpclient|slpserver]" sys.exit(1)
def run(self, started=0): if not started: micro(self.run, (1,)) else: while True: self.radar()
def run_test_udp(): print 'Starting udp server...' rpc.MicroUDPServer(mod, ('', PORT), 'lo', N, N.net[0], Sock) micro(udp_client)
sentBytes = clientSocket.sendto("-" + ("*" * 510) + "-", address) print "sent 512 byte packet", sentBytes micro(UDPServer, (address, )) micro(UDPClient, (address, )) allmicro_run() if len(sys.argv) == 2: if sys.argv[1] == "client": print "client started" TestTCPClient(testAddress, socket.socket) print "client exited" elif sys.argv[1] == "slpclient": print "client started" micro(TestTCPClient, (testAddress, )) allmicro_run() print "client exited" elif sys.argv[1] == "server": print "server started" TestTCPServer(testAddress, socket.socket) print "server exited" elif sys.argv[1] == "slpserver": print "server started" micro(TestTCPServer, (testAddress, )) allmicro_run() print "server exited" else: print "Usage:", sys.argv[0], "[client|server|slpclient|slpserver]" sys.exit(1)
def micro_dgram_request_handler(sock, clientaddr, packet, dev, rpcdispatcher): micro(dgram_request_handler, (sock, clientaddr, packet, dev, rpcdispatcher))