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. From here on, let's simply say "TLS" to mean both.
Currently, retawq utilizes TLS for the URL schemes "https" and "ftps". Support for other schemes and for certificate handling is planned.
To use TLS with retawq, you can choose one of two variants: the GnuTLS library or 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 normally use the most recent version which is available; 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 - read 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 normally use the most recent version which is available; newer versions of security-related software often fix important security problems. (And it's known that you need at least OpenSSL version 0.9.5, older versions don't work with retawq.)
When you build retawq, the tool pkg-config is 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, ...