Drift Standard Libraries
Jump to navigation
Jump to search
The Drift Standard Libraries (DSL) are a collection of files that are useful in writing cross-platform code and save countless amounts of time in rewriting things for each of your projects.
DSL itself is licensed under a BSD 3-Clause license but does include some 3rd party code under various licenses as described below. (all core/included files use commercial-compatible licenses)
Download: GitHub
Documentation: https://dsldocs.driftsolutions.dev/
Included 3rd Party Code Licensing | ||
---|---|---|
Part | Function | License |
base64 | Base64 encoding/decoding | BSD 3-Clause |
getopt | Version of getopt() for Windows | MIT |
PhysicsFS | Byte swapping & UTF-8 validation | zlib |
strlcpy/strlcat | Safer string copying/concatenation functions | ISC |
MD5 | MD5 Hash function | Public Domain |
SHA-1 | SHA-1 Hash function | BSD 3-Clause |
SHA-2 | SHA-2 Hash functions | BSD 3-Clause |
SHA-3 | SHA-3/Keccak Hash functions | Public Domain |
And with compile-time definitions can use optional 3rd party libraries for enhanced functionality or just providing easy to use wrappers around them:
Optional 3rd Party Library Licensing | |||
---|---|---|---|
Part | Function | License | Define to Enable |
OpenSSL | TLS support for sockets class, additional hash/hmac functions | Version Dependent | ENABLE_OPENSSL |
GnuTLS | TLS support for sockets class, additional hash/hmac functions | LGPL+ | ENABLE_GNUTLS |
zlib | Compressed data streams in sockets | zlib | ENABLE_ZLIB |
libcurl | HTTP/HTTPS/FTP/etc. File downloads | https://curl.haxx.se/docs/copyright.html | ENABLE_CURL |
libsodium | BLAKE2b hashing, public key signing and encryption | ISC | ENABLE_SODIUM |
PhysicsFS | Enables support in our RWops system for PhyicsFS files. | zlib | ENABLE_PHYSFS |
SQLite | File-based SQL database | Public Domain | ENABLE_SQLITE |
libmariadbclient | SQL database client | LGPL | ENABLE_MYSQL |
libmysqlclient | SQL database client | GPLv2 + Universal FOSS Exception | ENABLE_MYSQL |