2 * Copyright (C) 2001-2012 Free Software Foundation, Inc.
4 * Author: Nikos Mavrogiannopoulos
6 * This file is part of GnuTLS.
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 3 of
11 * the License, or (at your option) any later version.
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.
18 * You should have received a copy of the GNU Lesser General Public License
19 * along with this program. If not, see <http://www.gnu.org/licenses/>
23 #include "gnutls_int.h"
24 #include "gnutls_errors.h"
28 #include <gnutls_mpi.h>
32 _gnutls_dump_mpi (const char *prefix
, bigint_t a
)
35 char buf_hex
[2 * sizeof (buf
)];
36 size_t n
= sizeof buf
;
38 if (_gnutls_mpi_print (a
, buf
, &n
))
39 strcpy (buf
, "[can't print value]"); /* Flawfinder: ignore */
40 _gnutls_debug_log ("MPI: length: %d\n\t%s%s\n", (int) n
, prefix
,
41 _gnutls_bin2hex (buf
, n
, buf_hex
, sizeof (buf_hex
),
47 _gnutls_packet2str (content_type_t packet
)
51 case GNUTLS_CHANGE_CIPHER_SPEC
:
52 return "ChangeCipherSpec";
55 case GNUTLS_HANDSHAKE
:
57 case GNUTLS_APPLICATION_DATA
:
58 return "Application Data";
59 case GNUTLS_HEARTBEAT
:
62 return "Unknown Packet";
67 _gnutls_handshake2str (gnutls_handshake_description_t handshake
)
72 case GNUTLS_HANDSHAKE_HELLO_REQUEST
:
73 return "HELLO REQUEST";
75 case GNUTLS_HANDSHAKE_CLIENT_HELLO
:
76 return "CLIENT HELLO";
78 case GNUTLS_HANDSHAKE_CLIENT_HELLO_V2
:
79 return "SSL2 CLIENT HELLO";
81 case GNUTLS_HANDSHAKE_SERVER_HELLO
:
82 return "SERVER HELLO";
84 case GNUTLS_HANDSHAKE_HELLO_VERIFY_REQUEST
:
85 return "HELLO VERIFY REQUEST";
87 case GNUTLS_HANDSHAKE_CERTIFICATE_PKT
:
90 case GNUTLS_HANDSHAKE_SERVER_KEY_EXCHANGE
:
91 return "SERVER KEY EXCHANGE";
93 case GNUTLS_HANDSHAKE_CERTIFICATE_REQUEST
:
94 return "CERTIFICATE REQUEST";
96 case GNUTLS_HANDSHAKE_SERVER_HELLO_DONE
:
97 return "SERVER HELLO DONE";
99 case GNUTLS_HANDSHAKE_CERTIFICATE_VERIFY
:
100 return "CERTIFICATE VERIFY";
102 case GNUTLS_HANDSHAKE_CLIENT_KEY_EXCHANGE
:
103 return "CLIENT KEY EXCHANGE";
105 case GNUTLS_HANDSHAKE_FINISHED
:
108 case GNUTLS_HANDSHAKE_SUPPLEMENTAL
:
109 return "SUPPLEMENTAL";
111 case GNUTLS_HANDSHAKE_CERTIFICATE_STATUS
:
112 return "CERTIFICATE STATUS";
114 case GNUTLS_HANDSHAKE_NEW_SESSION_TICKET
:
115 return "NEW SESSION TICKET";
117 case GNUTLS_HANDSHAKE_CHANGE_CIPHER_SPEC
:
118 return "CHANGE CIPHER SPEC";
121 return "Unknown Handshake packet";