diff --git a/library/cmac.c b/library/cmac.c
index 35c32f3..ff7cb21 100644
--- a/library/cmac.c
+++ b/library/cmac.c
@@ -210,9 +210,10 @@
 /*
  * Generate tag on complete message
  */
-static int cmac_generate( mbedtls_cmac_context *ctx,
-                          const unsigned char *input, size_t in_len,
-                          unsigned char *tag, size_t tag_len )
+int mbedtls_cmac_generate( mbedtls_cmac_context *ctx,
+                           const unsigned char *input, size_t in_len,
+                           unsigned char *tag, size_t tag_len )
+
 {
     unsigned char state[16];
     unsigned char M_last[16];
@@ -260,13 +261,6 @@
 #undef XOR_128
 #undef UPDATE_CMAC
 
-int mbedtls_cmac_generate( mbedtls_cmac_context *ctx,
-                           const unsigned char *input, size_t in_len,
-                           unsigned char *tag, size_t tag_len )
-{
-    return( cmac_generate( ctx, input, in_len, tag, tag_len ) );
-}
-
 /*
  * Authenticated decryption
  */
@@ -279,7 +273,8 @@
     unsigned char i;
     int diff;
 
-    if( ( ret = cmac_generate( ctx, input, in_len, check_tag, tag_len ) ) != 0 )
+    if( ( ret = mbedtls_cmac_generate( ctx, input, in_len,
+                                       check_tag, tag_len ) ) != 0 )
     {
         return ret;
     }
