diff --git a/library/cipher.c b/library/cipher.c
index 9a5e465..8b94198 100644
--- a/library/cipher.c
+++ b/library/cipher.c
@@ -870,7 +870,7 @@
         bad = mbedtls_ct_bool_or(bad, mbedtls_ct_bool_and(in_padding, different));
     }
 
-    return mbedtls_ct_uint_if_else_0(bad, MBEDTLS_ERR_CIPHER_INVALID_PADDING);
+    return -mbedtls_ct_uint_if_else_0(bad, -MBEDTLS_ERR_CIPHER_INVALID_PADDING);
 }
 #endif /* MBEDTLS_CIPHER_PADDING_PKCS7 */
 
@@ -914,7 +914,7 @@
         in_padding = mbedtls_ct_bool_and(in_padding, mbedtls_ct_bool_not(is_nonzero));
     }
 
-    return (int) mbedtls_ct_uint_if_else_0(bad, MBEDTLS_ERR_CIPHER_INVALID_PADDING);
+    return -mbedtls_ct_uint_if_else_0(bad, -MBEDTLS_ERR_CIPHER_INVALID_PADDING);
 }
 #endif /* MBEDTLS_CIPHER_PADDING_ONE_AND_ZEROS */
 
@@ -961,7 +961,7 @@
         bad = mbedtls_ct_bool_or(bad, nonzero_pad_byte);
     }
 
-    return (int) mbedtls_ct_uint_if_else_0(bad, MBEDTLS_ERR_CIPHER_INVALID_PADDING);
+    return -mbedtls_ct_uint_if_else_0(bad, -MBEDTLS_ERR_CIPHER_INVALID_PADDING);
 }
 #endif /* MBEDTLS_CIPHER_PADDING_ZEROS_AND_LEN */
 
diff --git a/library/nist_kw.c b/library/nist_kw.c
index b0d4137..bde1775 100644
--- a/library/nist_kw.c
+++ b/library/nist_kw.c
@@ -421,8 +421,8 @@
          * larger than 8, because of the type wrap around.
          */
         padlen = in_len - KW_SEMIBLOCK_LENGTH - Plen;
-        ret = (int) mbedtls_ct_uint_if(mbedtls_ct_uint_gt(padlen, 7),
-                                       MBEDTLS_ERR_CIPHER_AUTH_FAILED, ret);
+        ret = -mbedtls_ct_uint_if(mbedtls_ct_uint_gt(padlen, 7),
+                                  -MBEDTLS_ERR_CIPHER_AUTH_FAILED, -ret);
         padlen &= 7;
 
         /* Check padding in "constant-time" */
