Skip to content
This repository has been archived by the owner on Sep 22, 2024. It is now read-only.

CrySteRz/custom-concurrent-tcp-protocol

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

41 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Concurrential Programming Project

Introduction

C++ application using a custom TCP protocol for file transfer and compression. It features SQLite-based authentication and supports various file and directory operations, all of which have custom implementations.

Features

  • Custom protocol over TCP sockets
  • SQLite for user login
  • File transfer: upload, download, copy, move, delete
  • Directory management: create, list
  • Compression: multiple formats and levels
  • Admin commands for server status and settings

User Commands

  • cwd: Get current working directory
  • download : Download file from server
  • rm : Remove file/directory
  • mkdir : Create new directory
  • compress : Compress files (options: --level, --format)
  • cd : Change directory
  • mv : Move/rename file or directory
  • cp : Copy file or directory
  • getid: Get session identifier
  • logout: Logout from session
  • login : Login to server
  • upload : Upload files
  • ls: List files in current directory
  • ping: Check server connectivity
  • help: Display help message

Admin Commands

  • status: Get server status
  • get_settings: Retrieve current settings
  • set : Update settings
  • connections: Display active/pending connections
  • clean: Clean server by removing all files and directories

Database Management

The utils folder contains scripts for creating and interacting with the SQLite database. These scripts are essential for initializing and maintaining the database structure used for user authentication.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages