def __init__( self, sockAddr ): #takes the socket and address tuple returned from .accept() Thread.__init__(self) self.sock, self.addr = sockAddr #putting the tuple into seperate variables self.fsock = EncapFramedSock( sockAddr ) #create an object from EncapFramedSock to recieve an EncapFramedSock message from the client
def main(): arguments = parseArguments() addrFamily = socket.AF_INET socktype = socket.SOCK_STREAM addrPort = (arguments["host"], arguments["port"]) clientSocket = socket.socket(addrFamily, socktype) if clientSocket is None: print('could not open socket') sys.exit(1) clientSocket.connect(addrPort) fsock = EncapFramedSock((clientSocket, addrPort)) sendFile(fsock, arguments["source"], arguments["destination"]) transferResult = fsock.receive() transferResult = transferResult.decode() print(transferResult)
print("Can't parse server:port from '%s'" % server) sys.exit(1) addrFamily = socket.AF_INET socktype = socket.SOCK_STREAM addrPort = (serverHost, serverPort) sock = socket.socket(addrFamily, socktype) if sock is None: print('could not open socket') sys.exit(1) sock.connect(addrPort) fsock = EncapFramedSock((sock, addrPort)) ############################################ print( "please write name of file you want to transfer to server(include extension i.e: .txt)" ) fileName = input() try: with open(fileName, 'r') as fl: allLines = fl.readlines() if len(allLines) == 0: print("file's empty....exiting") sys.exit(0) except FileNotFoundError: print("no such file or directory") sys.exit(1) ############################################
print("Can not parse server: port from '%s'" % server) sys.exit(1) addrFamily = socket.AF_INET #gets the address family(IPv4) socktype = socket.SOCK_STREAM #gets the type of scoket(TCP) addrPort = (serverHost, serverPort) s = socket.socket(addrFamily, socktype) #opens a socket if s is None: print("could not open socket") sys.exit(1) s.connect(addrPort) #establish a connection to the server encapSock = EncapFramedSock( (s, addrPort) ) #creat a EncapFramesSock object with the socket to use it to encapsulate the contents of the file to send to the server where it will recieve it fileContents = file.read() #get the file contents if len(fileContents) == 0: print("File is empty, exit...") sys.exit(1) print("sending filename") encapSock.send( fileName, fileContents, debug ) #send the encapsulated file contents to server along with the file name
def __init__(self, sockAddr): Thread.__init__(self) self.sock, self.addr = sockAddr self.threadSock = EncapFramedSock(sockAddr)
server, usage, debug = paramMap["server"], paramMap["usage"], paramMap["debug"] if usage: params.usage() try: print(server) HOST, PORT = re.split(":", server) PORT = int(PORT) except: print("Can't parse server:port from '%s'" % server) sys.exit(1) with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as s: if s is None: print('could not open socket') sys.exit(1) try: s.connect((HOST, PORT)) encapSock = EncapFramedSock((s, (HOST, PORT))) file, filename = getFile() data = file.read() if len(data) == 0: print("Empty file.") sys.exit(1) print("sending file") encapSock.send(filename, data, debug) file.close() except ConnectionRefusedError: print("Could not connect to server!")
fsock = None for res in socket.getaddrinfo(serverHost, serverPort, socket.AF_UNSPEC, socket.SOCK_STREAM): af, socketType, proto, cannonname, sa = res try: print("Creating Socket: af=%d, type=%d, proto=%d" % (af, socketType, proto)) s = socket.socket(af, socketType, proto) except socket.error as msg: print(" error: %s" % msg) s = None continue try: print("Attempting to connect to %s" % repr(sa)) s.connect(sa) fsock = EncapFramedSock((s, sa)) except socket.error as msg: print("Error: %s" % msg) s.close() s = None continue break if s is None: print("Could not open socket") sys.exit(1) files = os.listdir(os.curdir) print(files) inputFile = input("Please select a file to send \n") #Attempt to read input as file
print("ERROR: Can't parse server:port from '%s'" %server) sys.exit(1) addrFamily = socket.AF_INET socktype = socket.SOCK_STREAM addrPort = (serverHost, serverPort) clientSocket = socket.socket(addrFamily, socktype) if clientSocket is None: print('Could not open socket') sys.exit(1) clientSocket.connect(addrPort) framedSocket = EncapFramedSock((clientSocket, addrPort)) while True: filename = input("Enter file: ") filename.strip() # exit client if filename == "exit": sys.exit(0) else: if not filename: continue elif os.path.exists(filename): # open file and get data file = open(filename, "rb") data = file.read()
def __init__(self, sockAddr): Thread.__init__(self) self.clientSock, self.cliendAddr = sockAddr self.fsock = EncapFramedSock(sockAddr)
socktype = socket.SOCK_STREAM addrPort = (serverHost, serverPort) s = socket.socket(addrFamily, socktype) if s is None: print('could not open socket') sys.exit(1) print("Waiting to be connected...") s.connect(addrPort) print("Connected...") while True: try: filename = input( str("Enter a file name to be transferred or enter exit: ")) if filename == "exit": sys.exit(0) sending = open(filename, 'rb') break except FileNotFoundError: print("File Not Found!") fs = EncapFramedSock((s, addrPort)) data = sending.read() if len(data) == 0: print("File was empty! Try a different file") sys.exit(1) fs.send(filename, data, debug) print("The file has been transferred successfully!") s.close()
def __init__(self, sockAddress): Thread.__init__(self) self.sock, self.address = sockAddress self.fsock = EncapFramedSock(sockAddress)
def client(): switchesVarDefaults = ( (('1', '--server'), 'server', "127.0.0.1:50001"), (('?', '--usage'), 'usage', False), (('d', '--debug'), 'debug', False), ) parameterMap = params.parseParams(switchesVarDefaults) server, usage = parameterMap['server'], parameterMap['usage'] if usage: params.usage() try: serverHost, serverPort = re.split(":", server) serverPort = int(serverPort) except: print("Can't parse server:port from '%s'" % server) sys.exit(1) port = (serverHost, serverPort) # create socket listenSocket = socket.socket(socket.AF_INET, socket.SOCK_STREAM) listenSocket.connect(port) encapSocket = EncapFramedSock((listenSocket, port)) while 1: fileName = input("Enter a filename > ") fileName.strip() if fileName == "exit": # terminate sys.exit(0) else: if not fileName: continue elif os.path.exists(PATH + fileName): f = open(PATH + fileName, "rb") contents = f.read() if len(contents) < 1: print("Error: File %s is empty" % fileName) continue print("encapSocket Before ********") encapSocket.send(fileName, contents) print("encapSocket After *********") # check if server captured and receive the file status = encapSocket.Status() status = int(status.decode()) if status: print("File %s received by server." % fileName) sys.exit(0) else: print( "File Transfer Error: File %s was not received by server." % fileName) sys.exit(1) else: print("File Not Found Error: File %s not found!" % fileName)