🌸 CppDrive
CppDrive is a simple, lightweight file-sharing application built in C/C++.
Hoặc đơn giản là bài tập lớn môn thực hành lập trình mạng - IT4062 Hedspi k65 HUST, chủ đề file-sharing 🥴
This app simulates the action when you ssh to your cloud server then use unix-like commands to do file operations.
- User-friendly shell interface, offering a familiar environment for developers.
- Secure authentication using hashed passwords.
- Comprehensive file and folder management: creation, deletion, renaming, moving, copying, searching, viewing (cat), along with upload and download capabilities.
- File and folder sharing feature, allowing permissions to be set for other users.
- Robust end-to-end encryption for enhanced security.
- Detailed logging system.
.
├── CMakeLists.txt
├── app
│ └── main.cpp # Application source code.
├── include
│ ├── example.h # Library header file.
├── src
└── example.cpp # Library source code.
Sources go in src/, header files in include/, main programs in app/.
If you add a new executable, say app/hello.cpp, you only need to add the following two lines to CMakeLists.txt:
add_executable(main app/main.cpp) # Name of exec. and location of file.
target_link_libraries(main PRIVATE ${LIBRARY_NAME}) # Link the executable to lib built from src/*.cpp (if it uses it).On Ubuntu:
$ sudo apt-get install build-essential cmake fd-find zip unzip libssl-dev
$ ln -s $(which fdfind) ~/.local/bin/fd # or add it to your PATH
Note
Should use branch tokyo for stable version. master branch may have some error now.
Build by making a build directory (i.e. build/), run cmake in that dir, and then use make to build the desired target.
Example:
$ mkdir build && cd build
$ cmake ..
$ make
$ ./mainWarning
After register account, should exit app, then login again, login right after register may contain error.
Install the following extensions:
- Dương Hữu Huynh - 20205087
