summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorNikos Mavrogiannopoulos <nmav@gnutls.org>2002-02-21 20:42:27 +0000
committerNikos Mavrogiannopoulos <nmav@gnutls.org>2002-02-21 20:42:27 +0000
commit281b955b43e5aea756d8757ddc92f4fbb68e15a6 (patch)
tree847f696feafc9623cf6ac2275a4d8140036e9267 /lib
parent9b0557dbf920e87da377907ebc850c8d14cd5730 (diff)
downloadgnutls-281b955b43e5aea756d8757ddc92f4fbb68e15a6.tar.gz
Added gnutls_alert_str (allows printing alert number descriptions)
Diffstat (limited to 'lib')
-rw-r--r--lib/debug.c87
-rw-r--r--lib/debug.h5
-rw-r--r--lib/gnutls.h.in.in1
-rw-r--r--lib/gnutls_alert.c88
4 files changed, 93 insertions, 88 deletions
diff --git a/lib/debug.c b/lib/debug.c
index 32e65b3617..8e048153d2 100644
--- a/lib/debug.c
+++ b/lib/debug.c
@@ -1,5 +1,5 @@
/*
- * Copyright (C) 2000 Nikos Mavroyanopoulos
+ * Copyright (C) 2000,2002 Nikos Mavroyanopoulos
*
* This file is part of GNUTLS.
*
@@ -70,89 +70,8 @@ void _gnutls_print_state(GNUTLS_STATE state)
}
-const char* _gnutls_alert2str( int alert) {
-static char str[512];
-
- switch(alert) {
- case GNUTLS_A_CLOSE_NOTIFY:
- strcpy(str, "Close Notify");
- break;
- case GNUTLS_A_UNEXPECTED_MESSAGE:
- strcpy(str, "Unexpected message");
- break;
- case GNUTLS_A_BAD_RECORD_MAC:
- strcpy(str, "Bad record MAC");
- break;
-
- case GNUTLS_A_DECRYPTION_FAILED:
- strcpy(str, "Decryption Failed");
- break;
- case GNUTLS_A_RECORD_OVERFLOW:
- strcpy(str, "Record Overflow");
- break;
-
- case GNUTLS_A_DECOMPRESSION_FAILURE:
- strcpy(str, "Decompression Failed");
- break;
-
- case GNUTLS_A_HANDSHAKE_FAILURE:
- strcpy(str, "Handshake failed");
- break;
- case GNUTLS_A_BAD_CERTIFICATE:
- strcpy(str, "Certificate is bad");
- break;
- case GNUTLS_A_UNSUPPORTED_CERTIFICATE:
- strcpy(str, "Certificate is not supported");
- break;
- case GNUTLS_A_CERTIFICATE_REVOKED:
- strcpy(str, "Certificate was revoked");
- break;
- case GNUTLS_A_CERTIFICATE_EXPIRED:
- strcpy(str, "Certificate is expired");
- break;
- case GNUTLS_A_CERTIFICATE_UNKNOWN:
- strcpy(str, "Unknown Certificate");
- break;
- case GNUTLS_A_ILLEGAL_PARAMETER:
- strcpy(str, "Illegal Parameter");
- break;
- case GNUTLS_A_UNKNOWN_CA:
- strcpy(str, "CA is not known");
- break;
- case GNUTLS_A_ACCESS_DENIED:
- strcpy(str, "Access was denied");
- break;
- case GNUTLS_A_DECODE_ERROR:
- strcpy(str, "Decode error");
- break;
- case GNUTLS_A_DECRYPT_ERROR:
- strcpy(str, "Decrypt error");
- break;
- case GNUTLS_A_EXPORT_RESTRICTION:
- strcpy(str, "Export Restriction");
- break;
- case GNUTLS_A_PROTOCOL_VERSION:
- strcpy(str, "Error in protocol version");
- break;
- case GNUTLS_A_INSUFFICIENT_SECURITY:
- strcpy(str, "Insufficient Security");
- break;
- case GNUTLS_A_USER_CANCELED:
- strcpy(str, "User Canceled");
- break;
- case GNUTLS_A_NO_RENEGOTIATION:
- strcpy(str, "No renegotiation is allowed");
- break;
- default:
- strcpy(str, "Unknown Alert");
-
- }
- return str;
-
-}
-
-char* _gnutls_packet2str( int packet) {
+const char* _gnutls_packet2str( int packet) {
static char str[512];
switch(packet) {
@@ -177,7 +96,7 @@ static char str[512];
}
-char* _gnutls_handshake2str( int handshake) {
+const char* _gnutls_handshake2str( int handshake) {
static char str[512];
switch(handshake) {
diff --git a/lib/debug.h b/lib/debug.h
index f95145d84d..471f94f36d 100644
--- a/lib/debug.h
+++ b/lib/debug.h
@@ -22,8 +22,7 @@
void _gnutls_print_state(GNUTLS_STATE state);
char * _gnutls_bin2hex(const unsigned char *old, const size_t oldlen);
void _gnutls_dump_mpi(char* prefix,MPI a);
-char* _gnutls_packet2str( int packet);
-char* _gnutls_alert2str( int alert);
-char* _gnutls_handshake2str( int handshake);
+const char* _gnutls_packet2str( int packet);
+const char* _gnutls_handshake2str( int handshake);
char* GET_CN( gnutls_datum);
#endif
diff --git a/lib/gnutls.h.in.in b/lib/gnutls.h.in.in
index ceff03b222..f936b7d436 100644
--- a/lib/gnutls.h.in.in
+++ b/lib/gnutls.h.in.in
@@ -108,6 +108,7 @@ int gnutls_rehandshake( GNUTLS_STATE state);
GNUTLS_AlertDescription gnutls_alert_get_last( GNUTLS_STATE state);
int gnutls_alert_send( GNUTLS_STATE, GNUTLS_AlertLevel, GNUTLS_AlertDescription);
int gnutls_alert_send_appropriate( GNUTLS_STATE state, int err);
+const char* gnutls_alert_str( int alert);
/* get information on the current state */
GNUTLS_BulkCipherAlgorithm gnutls_cipher_get( GNUTLS_STATE state);
diff --git a/lib/gnutls_alert.c b/lib/gnutls_alert.c
index 1aa4bd6e2e..b8e8f6602e 100644
--- a/lib/gnutls_alert.c
+++ b/lib/gnutls_alert.c
@@ -1,5 +1,5 @@
/*
- * Copyright (C) 2000,2001 Nikos Mavroyanopoulos
+ * Copyright (C) 2000,2001,2002 Nikos Mavroyanopoulos
*
* This file is part of GNUTLS.
*
@@ -127,3 +127,89 @@ int ret = GNUTLS_E_UNIMPLEMENTED_FEATURE;
GNUTLS_AlertDescription gnutls_alert_get_last( GNUTLS_STATE state) {
return state->gnutls_internals.last_alert;
}
+
+/**
+ * gnutls_alert_str - Returns a string describing the alert number given
+ * @alert: is an alert number &GNUTLS_STATE structure.
+ *
+ * Returns a string that describes the given alert number.
+ * See. gnutls_alert_get_last().
+ *
+ **/
+const char* gnutls_alert_str( int alert) {
+
+ switch(alert) {
+ case GNUTLS_A_CLOSE_NOTIFY:
+ return "Close Notify";
+ break;
+ case GNUTLS_A_UNEXPECTED_MESSAGE:
+ return "Unexpected message";
+ break;
+ case GNUTLS_A_BAD_RECORD_MAC:
+ return "Bad record MAC";
+ break;
+
+ case GNUTLS_A_DECRYPTION_FAILED:
+ return "Decryption Failed";
+ break;
+ case GNUTLS_A_RECORD_OVERFLOW:
+ return "Record Overflow";
+ break;
+
+ case GNUTLS_A_DECOMPRESSION_FAILURE:
+ return "Decompression Failed";
+ break;
+
+ case GNUTLS_A_HANDSHAKE_FAILURE:
+ return "Handshake failed";
+ break;
+ case GNUTLS_A_BAD_CERTIFICATE:
+ return "Certificate is bad";
+ break;
+ case GNUTLS_A_UNSUPPORTED_CERTIFICATE:
+ return "Certificate is not supported";
+ break;
+ case GNUTLS_A_CERTIFICATE_REVOKED:
+ return "Certificate was revoked";
+ break;
+ case GNUTLS_A_CERTIFICATE_EXPIRED:
+ return "Certificate is expired";
+ break;
+ case GNUTLS_A_CERTIFICATE_UNKNOWN:
+ return "Unknown Certificate";
+ break;
+ case GNUTLS_A_ILLEGAL_PARAMETER:
+ return "Illegal Parameter";
+ break;
+ case GNUTLS_A_UNKNOWN_CA:
+ return "CA is not known";
+ break;
+ case GNUTLS_A_ACCESS_DENIED:
+ return "Access was denied";
+ break;
+ case GNUTLS_A_DECODE_ERROR:
+ return "Decode error";
+ break;
+ case GNUTLS_A_DECRYPT_ERROR:
+ return "Decrypt error";
+ break;
+ case GNUTLS_A_EXPORT_RESTRICTION:
+ return "Export Restriction";
+ break;
+ case GNUTLS_A_PROTOCOL_VERSION:
+ return "Error in protocol version";
+ break;
+ case GNUTLS_A_INSUFFICIENT_SECURITY:
+ return "Insufficient Security";
+ break;
+ case GNUTLS_A_USER_CANCELED:
+ return "User Canceled";
+ break;
+ case GNUTLS_A_NO_RENEGOTIATION:
+ return "No renegotiation is allowed";
+ break;
+ default:
+ return "Unknown Alert";
+
+ }
+}