From 0e92c213f51bae95605c19dfee843902e7c8a0ad Mon Sep 17 00:00:00 2001 From: Roman Arutyunyan Date: Mon, 18 Dec 2017 21:09:39 +0300 Subject: Improved the capabilities feature detection. Previously included file sys/capability.h mentioned in capset(2) man page, belongs to the libcap-dev package, which may not be installed on some Linux systems when compiling nginx. This prevented the capabilities feature from being detected and compiled on that systems. Now linux/capability.h system header is included instead. Since capset() declaration is located in sys/capability.h, now capset() syscall is defined explicitly in code using the SYS_capset constant, similarly to other Linux-specific features in nginx. --- auto/os/linux | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'auto/os/linux') diff --git a/auto/os/linux b/auto/os/linux index e4aa0e549..135280f99 100644 --- a/auto/os/linux +++ b/auto/os/linux @@ -174,7 +174,8 @@ ngx_feature_test="if (prctl(PR_SET_KEEPCAPS, 1, 0, 0, 0) == -1) return 1" ngx_feature="capabilities" ngx_feature_name="NGX_HAVE_CAPABILITIES" ngx_feature_run=no -ngx_feature_incs="#include " +ngx_feature_incs="#include + #include " ngx_feature_path= ngx_feature_libs= ngx_feature_test="struct __user_cap_data_struct data; @@ -184,7 +185,7 @@ ngx_feature_test="struct __user_cap_data_struct data; data.effective = CAP_TO_MASK(CAP_NET_RAW); data.permitted = 0; - (void) capset(&header, &data)" + (void) SYS_capset" . auto/feature -- cgit