diff options
author | Qihao Chencao <twose@qq.com> | 2022-06-28 16:57:55 +0800 |
---|---|---|
committer | Adhemerval Zanella <adhemerval.zanella@linaro.org> | 2023-02-17 17:07:44 -0300 |
commit | cc4d6614b5922c1104125b1f4d0850a88a551882 (patch) | |
tree | aade315fd79153cf930e8dfd15581dcbdffea0b8 /crypt/sha256-crypt.c | |
parent | dab63442791e334d592ce91827ffa9d14ca92ea9 (diff) | |
download | glibc-cc4d6614b5922c1104125b1f4d0850a88a551882.zip glibc-cc4d6614b5922c1104125b1f4d0850a88a551882.tar.gz glibc-cc4d6614b5922c1104125b1f4d0850a88a551882.tar.bz2 |
Use uintptr_t instead of performing pointer subtraction with a null pointer
Signed-off-by: Qihao Chencao <twose@qq.com>
Reviewed-by: Adhemerval Zanella <adhemerval.zanella@linaro.org>
Diffstat (limited to 'crypt/sha256-crypt.c')
-rw-r--r-- | crypt/sha256-crypt.c | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/crypt/sha256-crypt.c b/crypt/sha256-crypt.c index 2a2b356..1ef16af 100644 --- a/crypt/sha256-crypt.c +++ b/crypt/sha256-crypt.c @@ -142,7 +142,7 @@ __sha256_crypt_r (const char *key, const char *salt, char *buffer, int buflen) salt_len = MIN (strcspn (salt, "$"), SALT_LEN_MAX); key_len = strlen (key); - if ((key - (char *) 0) % __alignof__ (uint32_t) != 0) + if (((uintptr_t) key) % __alignof__ (uint32_t) != 0) { char *tmp; @@ -157,20 +157,20 @@ __sha256_crypt_r (const char *key, const char *salt, char *buffer, int buflen) key = copied_key = memcpy (tmp + __alignof__ (uint32_t) - - (tmp - (char *) 0) % __alignof__ (uint32_t), + - ((uintptr_t) tmp) % __alignof__ (uint32_t), key, key_len); - assert ((key - (char *) 0) % __alignof__ (uint32_t) == 0); + assert (((uintptr_t) key) % __alignof__ (uint32_t) == 0); } - if ((salt - (char *) 0) % __alignof__ (uint32_t) != 0) + if (((uintptr_t) salt) % __alignof__ (uint32_t) != 0) { char *tmp = (char *) alloca (salt_len + __alignof__ (uint32_t)); alloca_used += salt_len + __alignof__ (uint32_t); salt = copied_salt = memcpy (tmp + __alignof__ (uint32_t) - - (tmp - (char *) 0) % __alignof__ (uint32_t), + - ((uintptr_t) tmp) % __alignof__ (uint32_t), salt, salt_len); - assert ((salt - (char *) 0) % __alignof__ (uint32_t) == 0); + assert (((uintptr_t) salt) % __alignof__ (uint32_t) == 0); } #ifdef USE_NSS |