TLS (Transport Layer Security) is a low-level network protocol which provides secure communications in networks; that is, communications which cannot be intercepted, understood or disturbed by "third parties". SSL (Secure Sockets Layer) is the predecessor of TLS.
Currently, retawq utilizes TLS only for the URL scheme "https". Support for other schemes (e.g. "ftps") is planned.
To use TLS/SSL with retawq, you can choose one of two variants: the GnuTLS library and the OpenSSL library. Don't use library versions which are older than those mentioned below - that could e.g. cause compilation or security problems.
To use this variant, you must have the GnuTLS library installed on your computer, and the compile-time configuration option OPTION_TLS must be set to 1.
Support for GnuTLS was introduced in retawq 0.1.6 and was developed and tested with the - at that time current - GnuTLS version 0.8.9, but you should always use the most recent version; newer versions of security-related software often fix important security problems. On the other hand, please note that GnuTLS itself requires certain (sometimes old) versions of other libraries to be installed on your computer and won't work correctly otherwise - have a look at GnuTLS's own documentation.
To use this variant, you must have the OpenSSL library installed on your computer, and the compile-time configuration option OPTION_TLS must be set to 2.
Support for OpenSSL was introduced in retawq 0.1.7 and was developed and tested with the - at that time current - OpenSSL version 0.9.7b, but you should always use the most recent version; newer versions of security-related software often fix important security problems. (And it's known that you'll need at least OpenSSL version 0.9.5, older versions won't work.)
When you compile retawq, the tool pkg-config will be run to find out where and how OpenSSL is installed on your computer. Especially if the final linking of retawq fails, please make sure that this tool works; for example, the command "pkg-config --libs openssl" should output a text which roughly (!) looks similar to the following: "-L/usr/local/lib -lssl -lcrypto -ldl"; if you get an error message instead, ...