summaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorEmilia Kasper <emilia@openssl.org>2016-05-11 22:41:29 +0200
committerEmilia Kasper <emilia@openssl.org>2016-05-12 18:47:06 +0200
commitd82c27589b5f9e9128f1ae9fce89fadd03c1c229 (patch)
tree8d2b065a5b94904323c9c3e80ce7b91b9e8481e1 /include
parent6302bbd21a79bd2ed59f214d6d042031384b4d12 (diff)
Appease ubsan
ERR_LIB_USER has value 128, and shifting into the sign bit upsets the shift sanitizer. Reviewed-by: Rich Salz <rsalz@openssl.org>
Diffstat (limited to 'include')
-rw-r--r--include/openssl/err.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/include/openssl/err.h b/include/openssl/err.h
index e41fdc3efe..ce3283ebd5 100644
--- a/include/openssl/err.h
+++ b/include/openssl/err.h
@@ -235,7 +235,7 @@ typedef struct err_state_st {
# define KDFerr(f,r) ERR_PUT_error(ERR_LIB_KDF,(f),(r),OPENSSL_FILE,OPENSSL_LINE)
# define ERR_PACK(l,f,r) \
- ( (((l) & 0x0FF) << 24L) | (((f) & 0xFFF) << 12L) | ((r) & 0xFFF) )
+ ( ((unsigned int)((l) & 0x0FF) << 24L) | (((f) & 0xFFF) << 12L) | ((r) & 0xFFF) )
# define ERR_GET_LIB(l) (int)((((unsigned long)l)>>24L)&0xffL)
# define ERR_GET_FUNC(l) (int)((((unsigned long)l)>>12L)&0xfffL)
# define ERR_GET_REASON(l) (int)((l)&0xfffL)