ccm.c: Return early when ccm* is used without tag.

Signed-off-by: Minos Galanakis <minos.galanakis@arm.com>
diff --git a/library/ccm.c b/library/ccm.c
index 45ed697..969c6c7 100644
--- a/library/ccm.c
+++ b/library/ccm.c
@@ -170,11 +170,12 @@
     }
 
     /* CCM expects non-empty tag.
-     * CCM* allows empty tag. For CCM* without tag, ignore plaintext length.
+     * CCM* allows empty tag. For CCM* without tag, the tag calculation is skipped.
      */
     if (ctx->tag_len == 0) {
         if (ctx->mode == MBEDTLS_CCM_STAR_ENCRYPT || ctx->mode == MBEDTLS_CCM_STAR_DECRYPT) {
             ctx->plaintext_len = 0;
+            return 0;
         } else {
             return MBEDTLS_ERR_CCM_BAD_INPUT;
         }