From: Pekka Riikonen Date: Sat, 28 Apr 2007 10:53:21 +0000 (+0000) Subject: Added silc_packet_error_string. X-Git-Tag: silc.toolkit.1.1.beta1~20 X-Git-Url: http://git.silcnet.org/gitweb/?p=silc.git;a=commitdiff_plain;h=a063516c64ad520c0e80ba4420dd604d8bb90fdf Added silc_packet_error_string. --- diff --git a/lib/silccore/silcpacket.c b/lib/silccore/silcpacket.c index 69204c84..ccd82119 100644 --- a/lib/silccore/silcpacket.c +++ b/lib/silccore/silcpacket.c @@ -623,6 +623,25 @@ void silc_packet_engine_stop(SilcPacketEngine engine) silc_free(engine); } +static const char *packet_error[] = { + "Cannot read from stream", + "Cannot write to stream", + "Packet MAC failed", + "Packet decryption failed", + "Unknown SID", + "Packet is malformed", + "System out of memory", +}; + +/* Return packet error string */ + +const char *silc_packet_error_string(SilcPacketError error) +{ + if (error < SILC_PACKET_ERR_READ || error > SILC_PACKET_ERR_NO_MEMORY) + return ""; + return packet_error[error]; +} + /* Return list of packet streams in the engine */ SilcDList silc_packet_engine_get_streams(SilcPacketEngine engine) diff --git a/lib/silccore/silcpacket.h b/lib/silccore/silcpacket.h index 5dfcdc93..240c446d 100644 --- a/lib/silccore/silcpacket.h +++ b/lib/silccore/silcpacket.h @@ -198,6 +198,9 @@ typedef struct SilcPacketStruct { * from the actual stream. It can retrieve the underlaying stream from * the packet stream by calling silc_packet_stream_get_stream function. * + * You may retrieve string version of the SilcPacketError by calling + * silc_packet_error_string. + * * SOURCE */ typedef enum { @@ -377,6 +380,19 @@ silc_packet_engine_start(SilcRng rng, SilcBool router, ***/ void silc_packet_engine_stop(SilcPacketEngine engine); +/****f* silccore/SilcPacketAPI/silc_packet_error_string + * + * SYNOPSIS + * + * const char *silc_packet_error_string(SilcPacketError error); + * + * DESCRIPTION + * + * Return the packet error as string. + * + ***/ +const char *silc_packet_error_string(SilcPacketError error); + /****f* silccore/SilcPacketAPI/silc_packet_engine_get_streams * * SYNOPSIS