libfilezilla
Loading...
Searching...
No Matches
libfilezilla

Introduction

Welcome to the libfilezilla documentation.

libfilezilla is a small and modern C++ library, offering some basic functionality to build high-performing, platform-independent programs. Some of the highlights include:

  • A typesafe, multi-threaded event system that's very simple to use yet extremely efficient
  • Timers for periodic events
  • A socket class for TCP communication with infrastructure to easily add layers on top
  • A TLS layer to secure communication
  • A rate-limited socket layer to control traffic flow
  • A datetime class that not only tracks timestamp but also their accuracy, which simplifies dealing with timestamps originating from different sources
  • Simple process handling for spawning child processes with redirected I/O

libfilezilla works on most modern platforms that have a C++17 compiler, including, but not limited to, Linux, *BSD, OS X and Windows.

License

libfilezilla is distributed under the terms and conditions of the GNU General Public License version 2 or higher.

Using libfilezilla

libfilezilla uses the GNU autotools as build system. See the INSTALL file for details.

To use libfilezilla in your project, you can use pkg-config to add the required compiler and linker flags.

If your compiler does not enable C++17 (or higher) by default, you may need to add -std=c++17 or similar to your compiler flags. Check your compiler's manual for details.