]> granicus.if.org Git - apache/blob - modules/ssl/ssl_policies.h.in
XML updates.
[apache] / modules / ssl / ssl_policies.h.in
1 /* Licensed to the Apache Software Foundation (ASF) under one or more
2  * contributor license agreements.  See the NOTICE file distributed with
3  * this work for additional information regarding copyright ownership.
4  * The ASF licenses this file to You under the Apache License, Version 2.0
5  * (the "License"); you may not use this file except in compliance with
6  * the License.  You may obtain a copy of the License at
7  *
8  *     http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16
17 /**
18  * @verbatim
19                         _             _
20     _ __ ___   ___   __| |    ___ ___| |  mod_ssl
21    | '_ ` _ \ / _ \ / _` |   / __/ __| |  Apache Interface to OpenSSL
22    | | | | | | (_) | (_| |   \__ \__ \ |
23    |_| |_| |_|\___/ \__,_|___|___/___/_|
24                         |_____|
25    @endverbatim
26  * @file  ssl_policies.h
27  * @brief Additional Utility Functions for OpenSSL
28  *
29  * @defgroup MOD_SSL_UTIL Utilities
30  * @ingroup MOD_SSL
31  * @{
32  */
33
34 #ifndef __SSL_POLICIES_H__
35 #define __SSL_POLICIES_H__
36
37 #define SSL_MOD_POLICIES_KEY "ssl_module_policies"
38
39 #ifndef OPENSSL_NO_SSL3
40 #define SSL_PROTOCOL_CONSTANTS_SSLV3        SSL_PROTOCOL_SSLV3
41 #else
42 #define SSL_PROTOCOL_CONSTANTS_SSLV3        0
43 #endif
44
45 #ifdef HAVE_TLSV1_X
46 #define SSL_POLICY_LEGACY_PROTOCOLS  \
47     (SSL_PROTOCOL_CONSTANTS_SSLV3|SSL_PROTOCOL_TLSV1|SSL_PROTOCOL_TLSV1_1)
48 #endif
49
50 /* Settings for all policies */
51 #define SSL_POLICY_HONOR_ORDER              1
52 #define SSL_POLICY_COMPRESSION              0
53 #define SSL_POLICY_SESSION_TICKETS          0
54
55 /**
56  * Define a core set of policies that are always there:
57  * - 'modern' from https://wiki.mozilla.org/Security/Server_Side_TLS
58  * - 'intermediate' from https://wiki.mozilla.org/Security/Server_Side_TLS
59  * - 'old' from https://wiki.mozilla.org/Security/Server_Side_TLS
60  * The JSON version can be retrieved here:
61  * https://statics.tls.security.mozilla.org/server-side-tls-conf.json
62  */
63
64 @MOZILLA_SECURITY_POLICIES@
65
66 #endif /* __SSL_POLICIES_H__ */
67 /** @} */
68