This is a simple file service that supports the following operations:
ls
- list files in the current directorycwd
- get the current working directorycd <filepath>
- change the current working directory to the specified pathdwd <filepath>
- download the specified file from the serverupd <filepath>
- upload the specified file to the server
Layered architecture is used to implement the file service. The following diagram shows the layers and their interactions.
Layer | Description | Scripts |
---|---|---|
File Service | The file service layer is the top layer. It is responsible for handling the client requests and sending the appropriate responses. | client.py, server.py |
Crypto Service | The crypto service layer is responsible for encrypting and decrypting the data sent between the client and the server. | encryption.py |
Networking | The networking layer is responsible for sending and receiving data over the network. | utils.py |
- Clone the repository
- No additional setup is required.