1SSL_COMP_add_compression_method(3) OpenSSL SSL_COMP_add_compression_method(3)
2
3
4
6 SSL_COMP_add_compression_method - handle SSL/TLS integrated compression
7 methods
8
10 #include <openssl/ssl.h>
11
12 int SSL_COMP_add_compression_method(int id, COMP_METHOD *cm);
13
15 SSL_COMP_add_compression_method() adds the compression method cm with
16 the identifier id to the list of available compression methods. This
17 list is globally maintained for all SSL operations within this applica‐
18 tion. It cannot be set for specific SSL_CTX or SSL objects.
19
21 The TLS standard (or SSLv3) allows the integration of compression meth‐
22 ods into the communication. The TLS RFC does however not specify com‐
23 pression methods or their corresponding identifiers, so there is cur‐
24 rently no compatible way to integrate compression with unknown peers.
25 It is therefore currently not recommended to integrate compression into
26 applications. Applications for non-public use may agree on certain com‐
27 pression methods. Using different compression methods with the same
28 identifier will lead to connection failure.
29
30 An OpenSSL client speaking a protocol that allows compression (SSLv3,
31 TLSv1) will unconditionally send the list of all compression methods
32 enabled with SSL_COMP_add_compression_method() to the server during the
33 handshake. Unlike the mechanisms to set a cipher list, there is no
34 method available to restrict the list of compression method on a per
35 connection basis.
36
37 An OpenSSL server will match the identifiers listed by a client against
38 its own compression methods and will unconditionally activate compres‐
39 sion when a matching identifier is found. There is no way to restrict
40 the list of compression methods supported on a per connection basis.
41
42 The OpenSSL library has the compression methods COMP_rle() and (when
43 especially enabled during compilation) COMP_zlib() available.
44
46 Once the identities of the compression methods for the TLS protocol
47 have been standardized, the compression API will most likely be
48 changed. Using it in the current state is not recommended.
49
51 SSL_COMP_add_compression_method() may return the following values:
52
53 0 The operation succeeded.
54
55 1 The operation failed. Check the error queue to find out the reason.
56
58 ssl(3)
59
60
61
620.9.8b 2003-11-29SSL_COMP_add_compression_method(3)