Improve return value handling

Signed-off-by: Dave Rodgman <dave.rodgman@arm.com>
diff --git a/library/nist_kw.c b/library/nist_kw.c
index c7fb093..f2fd82e 100644
--- a/library/nist_kw.c
+++ b/library/nist_kw.c
@@ -421,7 +421,7 @@
          * larger than 8, because of the type wrap around.
          */
         padlen = in_len - KW_SEMIBLOCK_LENGTH - Plen;
-        ret = (int) mbedtls_ct_uint_if(padlen & ~7, MBEDTLS_ERR_CIPHER_AUTH_FAILED, ret);
+        ret = -mbedtls_ct_uint_if(padlen & ~7, -MBEDTLS_ERR_CIPHER_AUTH_FAILED, -ret);
         padlen &= 7;
 
         /* Check padding in "constant-time" */