Add and use POLARSSL_ERR_SSL_BUFFER_TOO_SMALL
diff --git a/library/error.c b/library/error.c
index 44ac31e..35ecb97 100644
--- a/library/error.c
+++ b/library/error.c
@@ -454,6 +454,8 @@
             snprintf( buf, buflen, "SSL - Unexpected message at ServerHello in renegotiation" );
         if( use_ret == -(POLARSSL_ERR_SSL_HELLO_VERIFY_REQUIRED) )
             snprintf( buf, buflen, "SSL - DTLS client must retry for hello verification" );
+        if( use_ret == -(POLARSSL_ERR_SSL_BUFFER_TOO_SMALL) )
+            snprintf( buf, buflen, "SSL - A buffer is too small to receive or write a message" );
 #endif /* POLARSSL_SSL_TLS_C */
 
 #if defined(POLARSSL_X509_USE_C) || defined(POLARSSL_X509_CREATE_C)
diff --git a/library/ssl_cookie.c b/library/ssl_cookie.c
index 7e1df42..c090b32 100644
--- a/library/ssl_cookie.c
+++ b/library/ssl_cookie.c
@@ -130,7 +130,7 @@
     unsigned char hmac_out[COOKIE_MD_OUTLEN];
 
     if( (size_t)( end - *p ) < COOKIE_HMAC_LEN )
-        return( POLARSSL_ERR_SSL_BAD_INPUT_DATA );
+        return( POLARSSL_ERR_SSL_BUFFER_TOO_SMALL );
 
     if( ( ret = md_hmac_reset(  hmac_ctx ) ) != 0 ||
         ( ret = md_hmac_update( hmac_ctx, time, 4 ) ) != 0 ||
@@ -160,7 +160,7 @@
         return( POLARSSL_ERR_SSL_BAD_INPUT_DATA );
 
     if( (size_t)( end - *p ) < COOKIE_LEN )
-        return( POLARSSL_ERR_SSL_BAD_INPUT_DATA );
+        return( POLARSSL_ERR_SSL_BUFFER_TOO_SMALL );
 
 #if defined(POLARSSL_HAVE_TIME)
     t = (unsigned long) time( NULL );