Line | Count | Source (jump to first uncovered line) |
1 | | /* |
2 | | * Copyright (C) 2000-2012 Free Software Foundation, Inc. |
3 | | * |
4 | | * Author: Nikos Mavrogiannopoulos |
5 | | * |
6 | | * This file is part of GnuTLS. |
7 | | * |
8 | | * The GnuTLS is free software; you can redistribute it and/or |
9 | | * modify it under the terms of the GNU Lesser General Public License |
10 | | * as published by the Free Software Foundation; either version 2.1 of |
11 | | * the License, or (at your option) any later version. |
12 | | * |
13 | | * This library is distributed in the hope that it will be useful, but |
14 | | * WITHOUT ANY WARRANTY; without even the implied warranty of |
15 | | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
16 | | * Lesser General Public License for more details. |
17 | | * |
18 | | * You should have received a copy of the GNU Lesser General Public License |
19 | | * along with this program. If not, see <https://www.gnu.org/licenses/> |
20 | | * |
21 | | */ |
22 | | |
23 | | #ifndef GNUTLS_LIB_STATE_H |
24 | | #define GNUTLS_LIB_STATE_H |
25 | | |
26 | | #include "gnutls_int.h" |
27 | | |
28 | | void _gnutls_session_client_cert_type_set(gnutls_session_t session, |
29 | | gnutls_certificate_type_t); |
30 | | void _gnutls_session_server_cert_type_set(gnutls_session_t session, |
31 | | gnutls_certificate_type_t); |
32 | | |
33 | | inline static const gnutls_group_entry_st *get_group(gnutls_session_t session) |
34 | 15.7k | { |
35 | 15.7k | return session->security_parameters.grp; |
36 | 15.7k | } Unexecuted instantiation: kx.c:get_group Line | Count | Source | 34 | 7.40k | { | 35 | 7.40k | return session->security_parameters.grp; | 36 | 7.40k | } |
Unexecuted instantiation: dtls.c:get_group Unexecuted instantiation: system_override.c:get_group Unexecuted instantiation: prf.c:get_group Unexecuted instantiation: cert-session.c:get_group Unexecuted instantiation: client_cert_type.c:get_group Unexecuted instantiation: ec_point_formats.c:get_group Line | Count | Source | 34 | 2.33k | { | 35 | 2.33k | return session->security_parameters.grp; | 36 | 2.33k | } |
Unexecuted instantiation: server_cert_type.c:get_group Unexecuted instantiation: signature.c:get_group Unexecuted instantiation: cert.c:get_group Unexecuted instantiation: ciphersuites.c:get_group Unexecuted instantiation: record.c:get_group Unexecuted instantiation: cipher.c:get_group Unexecuted instantiation: handshake-tls13.c:get_group Unexecuted instantiation: buffers.c:get_group Unexecuted instantiation: handshake.c:get_group Unexecuted instantiation: session_pack.c:get_group Unexecuted instantiation: cert-cred.c:get_group Unexecuted instantiation: constate.c:get_group Unexecuted instantiation: fingerprint.c:get_group Unexecuted instantiation: tls-sig.c:get_group Unexecuted instantiation: cert-cred-x509.c:get_group Unexecuted instantiation: dh-session.c:get_group Unexecuted instantiation: handshake-checks.c:get_group Unexecuted instantiation: hello_retry.c:get_group Unexecuted instantiation: post_handshake.c:get_group Unexecuted instantiation: anon.c:get_group Unexecuted instantiation: anon_ecdh.c:get_group Unexecuted instantiation: dh_common.c:get_group Unexecuted instantiation: dhe.c:get_group Line | Count | Source | 34 | 781 | { | 35 | 781 | return session->security_parameters.grp; | 36 | 781 | } |
Line | Count | Source | 34 | 1.34k | { | 35 | 1.34k | return session->security_parameters.grp; | 36 | 1.34k | } |
Unexecuted instantiation: rsa_psk.c:get_group Unexecuted instantiation: vko_gost.c:get_group Line | Count | Source | 34 | 3.86k | { | 35 | 3.86k | return session->security_parameters.grp; | 36 | 3.86k | } |
Unexecuted instantiation: session.c:get_group Unexecuted instantiation: psk.c:get_group Unexecuted instantiation: srp.c:get_group |
37 | | |
38 | | int _gnutls_session_is_ecc(gnutls_session_t session); |
39 | | |
40 | | inline static void _gnutls_session_group_set(gnutls_session_t session, |
41 | | const gnutls_group_entry_st *e) |
42 | 16.6k | { |
43 | 16.6k | _gnutls_handshake_log("HSK[%p]: Selected group %s (%d)\n", session, |
44 | 16.6k | e->name, e->id); |
45 | 16.6k | session->security_parameters.grp = e; |
46 | 16.6k | } Unexecuted instantiation: kx.c:_gnutls_session_group_set Unexecuted instantiation: state.c:_gnutls_session_group_set Unexecuted instantiation: dtls.c:_gnutls_session_group_set Unexecuted instantiation: system_override.c:_gnutls_session_group_set Unexecuted instantiation: prf.c:_gnutls_session_group_set Unexecuted instantiation: cert-session.c:_gnutls_session_group_set Unexecuted instantiation: client_cert_type.c:_gnutls_session_group_set Unexecuted instantiation: ec_point_formats.c:_gnutls_session_group_set key_share.c:_gnutls_session_group_set Line | Count | Source | 42 | 10.5k | { | 43 | 10.5k | _gnutls_handshake_log("HSK[%p]: Selected group %s (%d)\n", session, | 44 | 10.5k | e->name, e->id); | 45 | 10.5k | session->security_parameters.grp = e; | 46 | 10.5k | } |
Unexecuted instantiation: server_cert_type.c:_gnutls_session_group_set Unexecuted instantiation: signature.c:_gnutls_session_group_set Unexecuted instantiation: cert.c:_gnutls_session_group_set ciphersuites.c:_gnutls_session_group_set Line | Count | Source | 42 | 2.03k | { | 43 | 2.03k | _gnutls_handshake_log("HSK[%p]: Selected group %s (%d)\n", session, | 44 | 2.03k | e->name, e->id); | 45 | 2.03k | session->security_parameters.grp = e; | 46 | 2.03k | } |
Unexecuted instantiation: record.c:_gnutls_session_group_set Unexecuted instantiation: cipher.c:_gnutls_session_group_set Unexecuted instantiation: handshake-tls13.c:_gnutls_session_group_set Unexecuted instantiation: buffers.c:_gnutls_session_group_set Unexecuted instantiation: handshake.c:_gnutls_session_group_set Unexecuted instantiation: session_pack.c:_gnutls_session_group_set Unexecuted instantiation: cert-cred.c:_gnutls_session_group_set Unexecuted instantiation: constate.c:_gnutls_session_group_set Unexecuted instantiation: fingerprint.c:_gnutls_session_group_set Unexecuted instantiation: tls-sig.c:_gnutls_session_group_set Unexecuted instantiation: cert-cred-x509.c:_gnutls_session_group_set Unexecuted instantiation: dh-session.c:_gnutls_session_group_set Unexecuted instantiation: handshake-checks.c:_gnutls_session_group_set Unexecuted instantiation: hello_retry.c:_gnutls_session_group_set Unexecuted instantiation: post_handshake.c:_gnutls_session_group_set Unexecuted instantiation: anon.c:_gnutls_session_group_set Unexecuted instantiation: anon_ecdh.c:_gnutls_session_group_set dh_common.c:_gnutls_session_group_set Line | Count | Source | 42 | 4 | { | 43 | 4 | _gnutls_handshake_log("HSK[%p]: Selected group %s (%d)\n", session, | 44 | 4 | e->name, e->id); | 45 | 4 | session->security_parameters.grp = e; | 46 | 4 | } |
Unexecuted instantiation: dhe.c:_gnutls_session_group_set Unexecuted instantiation: dhe_psk.c:_gnutls_session_group_set ecdhe.c:_gnutls_session_group_set Line | Count | Source | 42 | 4.07k | { | 43 | 4.07k | _gnutls_handshake_log("HSK[%p]: Selected group %s (%d)\n", session, | 44 | 4.07k | e->name, e->id); | 45 | 4.07k | session->security_parameters.grp = e; | 46 | 4.07k | } |
Unexecuted instantiation: rsa_psk.c:_gnutls_session_group_set Unexecuted instantiation: vko_gost.c:_gnutls_session_group_set Unexecuted instantiation: dh.c:_gnutls_session_group_set Unexecuted instantiation: session.c:_gnutls_session_group_set Unexecuted instantiation: psk.c:_gnutls_session_group_set Unexecuted instantiation: srp.c:_gnutls_session_group_set |
47 | | |
48 | | inline static void set_default_version(gnutls_session_t session, |
49 | | const version_entry_st *ver) |
50 | 31.5k | { |
51 | 31.5k | if (ver->tls13_sem) { |
52 | 6.31k | session->internals.default_record_version[0] = 3; |
53 | 6.31k | session->internals.default_record_version[1] = 1; |
54 | 25.2k | } else { |
55 | 25.2k | session->internals.default_record_version[0] = ver->major; |
56 | 25.2k | session->internals.default_record_version[1] = ver->minor; |
57 | 25.2k | } |
58 | 31.5k | } Unexecuted instantiation: kx.c:set_default_version Unexecuted instantiation: state.c:set_default_version Unexecuted instantiation: dtls.c:set_default_version Unexecuted instantiation: system_override.c:set_default_version Unexecuted instantiation: prf.c:set_default_version Unexecuted instantiation: cert-session.c:set_default_version Unexecuted instantiation: client_cert_type.c:set_default_version Unexecuted instantiation: ec_point_formats.c:set_default_version Unexecuted instantiation: key_share.c:set_default_version Unexecuted instantiation: server_cert_type.c:set_default_version Unexecuted instantiation: signature.c:set_default_version Unexecuted instantiation: cert.c:set_default_version Unexecuted instantiation: ciphersuites.c:set_default_version Unexecuted instantiation: record.c:set_default_version Unexecuted instantiation: cipher.c:set_default_version Unexecuted instantiation: handshake-tls13.c:set_default_version Unexecuted instantiation: buffers.c:set_default_version handshake.c:set_default_version Line | Count | Source | 50 | 31.5k | { | 51 | 31.5k | if (ver->tls13_sem) { | 52 | 6.31k | session->internals.default_record_version[0] = 3; | 53 | 6.31k | session->internals.default_record_version[1] = 1; | 54 | 25.2k | } else { | 55 | 25.2k | session->internals.default_record_version[0] = ver->major; | 56 | 25.2k | session->internals.default_record_version[1] = ver->minor; | 57 | 25.2k | } | 58 | 31.5k | } |
Unexecuted instantiation: session_pack.c:set_default_version Unexecuted instantiation: cert-cred.c:set_default_version Unexecuted instantiation: constate.c:set_default_version Unexecuted instantiation: fingerprint.c:set_default_version Unexecuted instantiation: tls-sig.c:set_default_version Unexecuted instantiation: cert-cred-x509.c:set_default_version Unexecuted instantiation: dh-session.c:set_default_version Unexecuted instantiation: handshake-checks.c:set_default_version Unexecuted instantiation: hello_retry.c:set_default_version Unexecuted instantiation: post_handshake.c:set_default_version Unexecuted instantiation: anon.c:set_default_version Unexecuted instantiation: anon_ecdh.c:set_default_version Unexecuted instantiation: dh_common.c:set_default_version Unexecuted instantiation: dhe.c:set_default_version Unexecuted instantiation: dhe_psk.c:set_default_version Unexecuted instantiation: ecdhe.c:set_default_version Unexecuted instantiation: rsa_psk.c:set_default_version Unexecuted instantiation: vko_gost.c:set_default_version Unexecuted instantiation: dh.c:set_default_version Unexecuted instantiation: session.c:set_default_version Unexecuted instantiation: psk.c:set_default_version Unexecuted instantiation: srp.c:set_default_version |
59 | | |
60 | | void _gnutls_record_set_default_version(gnutls_session_t session, |
61 | | unsigned char major, |
62 | | unsigned char minor); |
63 | | |
64 | | void _gnutls_hello_set_default_version(gnutls_session_t session, |
65 | | unsigned char major, |
66 | | unsigned char minor); |
67 | | |
68 | | #include "auth.h" |
69 | | |
70 | | #define CHECK_AUTH_TYPE(auth, ret) \ |
71 | 0 | if (gnutls_auth_get_type(session) != auth) { \ |
72 | 0 | gnutls_assert(); \ |
73 | 0 | return ret; \ |
74 | 0 | } |
75 | | |
76 | | bool _gnutls_session_is_cert_type_supported(gnutls_session_t session, |
77 | | gnutls_certificate_type_t cert_type, |
78 | | bool check_credentials, |
79 | | gnutls_ctype_target_t target); |
80 | | int _gnutls_dh_set_secret_bits(gnutls_session_t session, unsigned bits); |
81 | | |
82 | | int _gnutls_dh_set_peer_public(gnutls_session_t session, bigint_t public); |
83 | | int _gnutls_dh_save_group(gnutls_session_t session, bigint_t gen, |
84 | | bigint_t prime); |
85 | | |
86 | | static inline int _gnutls_dh_get_min_prime_bits(gnutls_session_t session) |
87 | 3.74k | { |
88 | 3.74k | if (session->internals.dh_prime_bits != 0) |
89 | 0 | return session->internals.dh_prime_bits; |
90 | 3.74k | else |
91 | 3.74k | return gnutls_sec_param_to_pk_bits( |
92 | 3.74k | GNUTLS_PK_DH, session->internals.priorities->level); |
93 | 3.74k | } Unexecuted instantiation: kx.c:_gnutls_dh_get_min_prime_bits Unexecuted instantiation: state.c:_gnutls_dh_get_min_prime_bits Unexecuted instantiation: dtls.c:_gnutls_dh_get_min_prime_bits Unexecuted instantiation: system_override.c:_gnutls_dh_get_min_prime_bits Unexecuted instantiation: prf.c:_gnutls_dh_get_min_prime_bits Unexecuted instantiation: cert-session.c:_gnutls_dh_get_min_prime_bits Unexecuted instantiation: client_cert_type.c:_gnutls_dh_get_min_prime_bits Unexecuted instantiation: ec_point_formats.c:_gnutls_dh_get_min_prime_bits Unexecuted instantiation: key_share.c:_gnutls_dh_get_min_prime_bits Unexecuted instantiation: server_cert_type.c:_gnutls_dh_get_min_prime_bits Unexecuted instantiation: signature.c:_gnutls_dh_get_min_prime_bits Unexecuted instantiation: cert.c:_gnutls_dh_get_min_prime_bits Unexecuted instantiation: ciphersuites.c:_gnutls_dh_get_min_prime_bits Unexecuted instantiation: record.c:_gnutls_dh_get_min_prime_bits Unexecuted instantiation: cipher.c:_gnutls_dh_get_min_prime_bits Unexecuted instantiation: handshake-tls13.c:_gnutls_dh_get_min_prime_bits Unexecuted instantiation: buffers.c:_gnutls_dh_get_min_prime_bits Unexecuted instantiation: handshake.c:_gnutls_dh_get_min_prime_bits Unexecuted instantiation: session_pack.c:_gnutls_dh_get_min_prime_bits Unexecuted instantiation: cert-cred.c:_gnutls_dh_get_min_prime_bits Unexecuted instantiation: constate.c:_gnutls_dh_get_min_prime_bits Unexecuted instantiation: fingerprint.c:_gnutls_dh_get_min_prime_bits Unexecuted instantiation: tls-sig.c:_gnutls_dh_get_min_prime_bits Unexecuted instantiation: cert-cred-x509.c:_gnutls_dh_get_min_prime_bits Unexecuted instantiation: dh-session.c:_gnutls_dh_get_min_prime_bits Unexecuted instantiation: handshake-checks.c:_gnutls_dh_get_min_prime_bits Unexecuted instantiation: hello_retry.c:_gnutls_dh_get_min_prime_bits Unexecuted instantiation: post_handshake.c:_gnutls_dh_get_min_prime_bits Unexecuted instantiation: anon.c:_gnutls_dh_get_min_prime_bits Unexecuted instantiation: anon_ecdh.c:_gnutls_dh_get_min_prime_bits dh_common.c:_gnutls_dh_get_min_prime_bits Line | Count | Source | 87 | 3.74k | { | 88 | 3.74k | if (session->internals.dh_prime_bits != 0) | 89 | 0 | return session->internals.dh_prime_bits; | 90 | 3.74k | else | 91 | 3.74k | return gnutls_sec_param_to_pk_bits( | 92 | 3.74k | GNUTLS_PK_DH, session->internals.priorities->level); | 93 | 3.74k | } |
Unexecuted instantiation: dhe.c:_gnutls_dh_get_min_prime_bits Unexecuted instantiation: dhe_psk.c:_gnutls_dh_get_min_prime_bits Unexecuted instantiation: ecdhe.c:_gnutls_dh_get_min_prime_bits Unexecuted instantiation: rsa_psk.c:_gnutls_dh_get_min_prime_bits Unexecuted instantiation: vko_gost.c:_gnutls_dh_get_min_prime_bits Unexecuted instantiation: dh.c:_gnutls_dh_get_min_prime_bits Unexecuted instantiation: session.c:_gnutls_dh_get_min_prime_bits Unexecuted instantiation: psk.c:_gnutls_dh_get_min_prime_bits Unexecuted instantiation: srp.c:_gnutls_dh_get_min_prime_bits |
94 | | |
95 | | void _gnutls_handshake_internal_state_clear(gnutls_session_t); |
96 | | |
97 | | int _gnutls_session_is_psk(gnutls_session_t session); |
98 | | |
99 | | void reset_binders(gnutls_session_t session); |
100 | | |
101 | | inline static int _gnutls_PRF(gnutls_session_t session, const uint8_t *secret, |
102 | | unsigned int secret_size, const char *label, |
103 | | int label_size, const uint8_t *seed, |
104 | | int seed_size, int total_bytes, void *ret) |
105 | 14.6k | { |
106 | 14.6k | return _gnutls_prf_raw(session->security_parameters.prf->id, |
107 | 14.6k | secret_size, secret, label_size, label, |
108 | 14.6k | seed_size, seed, total_bytes, ret); |
109 | 14.6k | } Line | Count | Source | 105 | 5.01k | { | 106 | 5.01k | return _gnutls_prf_raw(session->security_parameters.prf->id, | 107 | 5.01k | secret_size, secret, label_size, label, | 108 | 5.01k | seed_size, seed, total_bytes, ret); | 109 | 5.01k | } |
Unexecuted instantiation: state.c:_gnutls_PRF Unexecuted instantiation: dtls.c:_gnutls_PRF Unexecuted instantiation: system_override.c:_gnutls_PRF Unexecuted instantiation: prf.c:_gnutls_PRF Unexecuted instantiation: cert-session.c:_gnutls_PRF Unexecuted instantiation: client_cert_type.c:_gnutls_PRF Unexecuted instantiation: ec_point_formats.c:_gnutls_PRF Unexecuted instantiation: key_share.c:_gnutls_PRF Unexecuted instantiation: server_cert_type.c:_gnutls_PRF Unexecuted instantiation: signature.c:_gnutls_PRF Unexecuted instantiation: cert.c:_gnutls_PRF Unexecuted instantiation: ciphersuites.c:_gnutls_PRF Unexecuted instantiation: record.c:_gnutls_PRF Unexecuted instantiation: cipher.c:_gnutls_PRF Unexecuted instantiation: handshake-tls13.c:_gnutls_PRF Unexecuted instantiation: buffers.c:_gnutls_PRF Line | Count | Source | 105 | 4.57k | { | 106 | 4.57k | return _gnutls_prf_raw(session->security_parameters.prf->id, | 107 | 4.57k | secret_size, secret, label_size, label, | 108 | 4.57k | seed_size, seed, total_bytes, ret); | 109 | 4.57k | } |
Unexecuted instantiation: session_pack.c:_gnutls_PRF Unexecuted instantiation: cert-cred.c:_gnutls_PRF Line | Count | Source | 105 | 5.01k | { | 106 | 5.01k | return _gnutls_prf_raw(session->security_parameters.prf->id, | 107 | 5.01k | secret_size, secret, label_size, label, | 108 | 5.01k | seed_size, seed, total_bytes, ret); | 109 | 5.01k | } |
Unexecuted instantiation: fingerprint.c:_gnutls_PRF Unexecuted instantiation: tls-sig.c:_gnutls_PRF Unexecuted instantiation: cert-cred-x509.c:_gnutls_PRF Unexecuted instantiation: dh-session.c:_gnutls_PRF Unexecuted instantiation: handshake-checks.c:_gnutls_PRF Unexecuted instantiation: hello_retry.c:_gnutls_PRF Unexecuted instantiation: post_handshake.c:_gnutls_PRF Unexecuted instantiation: anon.c:_gnutls_PRF Unexecuted instantiation: anon_ecdh.c:_gnutls_PRF Unexecuted instantiation: dh_common.c:_gnutls_PRF Unexecuted instantiation: dhe.c:_gnutls_PRF Unexecuted instantiation: dhe_psk.c:_gnutls_PRF Unexecuted instantiation: ecdhe.c:_gnutls_PRF Unexecuted instantiation: rsa_psk.c:_gnutls_PRF Unexecuted instantiation: vko_gost.c:_gnutls_PRF Unexecuted instantiation: dh.c:_gnutls_PRF Unexecuted instantiation: session.c:_gnutls_PRF Unexecuted instantiation: psk.c:_gnutls_PRF Unexecuted instantiation: srp.c:_gnutls_PRF |
110 | | |
111 | 110k | #define DEFAULT_CERT_TYPE GNUTLS_CRT_X509 |
112 | | |
113 | | #endif /* GNUTLS_LIB_STATE_H */ |