return "FLUSHED"
-def create_socket(socket_name):
+def open_socket(socket_name):
sock = socket.socket(socket.AF_UNIX, socket.SOCK_STREAM)
sock.bind(socket_name)
return sock
+def close_socket(sock):
+ try:
+ sock.close()
+ except:
+ pass
+
def recv_msg(conn):
msg = []
chunk = ''
ns3_wrapper.logger.info("STARTING...")
# create unix socket to receive instructions
- sock = create_socket(socket_name)
+ sock = open_socket(socket_name)
sock.listen(0)
# wait for messages to arrive and process them
(msg_type, args, kwargs) = recv_msg(conn)
except socket.timeout, e:
# Ingore time-out
+ close_socket(conn)
continue
if not msg_type:
# Ignore - connection lost
+ close_socket(conn)
continue
if msg_type == NS3WrapperMessage.SHUTDOWN:
import traceback
err = traceback.format_exc()
ns3_wrapper.logger.error(err)
+ close_socket(conn)
raise
try:
import traceback
err = traceback.format_exc()
ns3_wrapper.logger.error(err)
+ close_socket(conn)
raise
+ close_socket(conn)
+
+ close_socket(sock)
+
ns3_wrapper.logger.info("EXITING...")
if __name__ == '__main__':