From 0336ab8173e95cb6f9ea1ec1c56b0d394b92e1a2 Mon Sep 17 00:00:00 2001 From: Robert Swiecki Date: Sat, 17 Feb 2018 03:28:10 +0100 Subject: [PATCH] caps: use standard CAP_TO_INDEX/CAP_TO_MASK --- caps.cc | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/caps.cc b/caps.cc index a5ad3e5..53723a0 100644 --- a/caps.cc +++ b/caps.cc @@ -138,27 +138,27 @@ static void clearInheritable(cap_user_data_t cap_data) { } static bool getPermitted(cap_user_data_t cap_data, unsigned int cap) { - size_t off_byte = cap / (sizeof(cap_data->permitted) * 8); - size_t off_bit = cap % (sizeof(cap_data->permitted) * 8); - return cap_data[off_byte].permitted & (1U << off_bit); + size_t off_byte = CAP_TO_INDEX(cap); + unsigned mask = CAP_TO_MASK(cap); + return cap_data[off_byte].permitted & mask; } static bool getEffective(cap_user_data_t cap_data, unsigned int cap) { - size_t off_byte = cap / (sizeof(cap_data->effective) * 8); - size_t off_bit = cap % (sizeof(cap_data->effective) * 8); - return cap_data[off_byte].effective & (1U << off_bit); + size_t off_byte = CAP_TO_INDEX(cap); + unsigned mask = CAP_TO_MASK(cap); + return cap_data[off_byte].effective & mask; } static bool getInheritable(cap_user_data_t cap_data, unsigned int cap) { - size_t off_byte = cap / (sizeof(cap_data->inheritable) * 8); - size_t off_bit = cap % (sizeof(cap_data->inheritable) * 8); - return cap_data[off_byte].inheritable & (1U << off_bit); + size_t off_byte = CAP_TO_INDEX(cap); + unsigned mask = CAP_TO_MASK(cap); + return cap_data[off_byte].inheritable & mask; } static void setInheritable(cap_user_data_t cap_data, unsigned int cap) { - size_t off_byte = cap / (sizeof(cap_data->inheritable) * 8); - size_t off_bit = cap % (sizeof(cap_data->inheritable) * 8); - cap_data[off_byte].inheritable |= (1U << off_bit); + size_t off_byte = CAP_TO_INDEX(cap); + unsigned mask = CAP_TO_MASK(cap); + cap_data[off_byte].inheritable |= mask; } #if !defined(PR_CAP_AMBIENT)