#include #include #include #include #include #include #include #include #ifndef PR_CAP_AMBIENT #define PR_CAP_AMBIENT 47 # define PR_CAP_AMBIENT_IS_SET 1 # define PR_CAP_AMBIENT_RAISE 2 # define PR_CAP_AMBIENT_LOWER 3 # define PR_CAP_AMBIENT_CLEAR_ALL 4 #endif #if __GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 19) # define HAVE_GETAUXVAL #endif static bool bool_arg(char **argv, int i) { if (!strcmp(argv[i], "0")) return false; else if (!strcmp(argv[i], "1")) return true; else errx(1, "wrong argv[%d]", i); } int main(int argc, char **argv) { const char *atsec = ""; /* * Be careful just in case a setgid or setcapped copy of this * helper gets out. */ if (argc != 5) errx(1, "wrong argc"); #ifdef HAVE_GETAUXVAL if (getauxval(AT_SECURE)) atsec = " (AT_SECURE is set)"; else atsec = " (AT_SECURE is not set)"; #endif capng_get_caps_process(); if (capng_have_capability(CAPNG_EFFECTIVE, CAP_NET_BIND_SERVICE) != bool_arg(argv, 1)) { printf("[FAIL]\tWrong effective state%s\n", atsec); return 1; } if (capng_have_capability(CAPNG_PERMITTED, CAP_NET_BIND_SERVICE) != bool_arg(argv, 2)) { printf("[FAIL]\tWrong permitted state%s\n", atsec); return 1; } if (capng_have_capability(CAPNG_INHERITABLE, CAP_NET_BIND_SERVICE) != bool_arg(argv, 3)) { printf("[FAIL]\tWrong inheritable state%s\n", atsec); return 1; } if (prctl(PR_CAP_AMBIENT, PR_CAP_AMBIENT_IS_SET, CAP_NET_BIND_SERVICE, 0, 0, 0) != bool_arg(argv, 4)) { printf("[FAIL]\tWrong ambient state%s\n", atsec); return 1; } printf("[OK]\tCapabilities after execve were correct\n"); return 0; } tooth/l2cap_sock.c'>logtreecommitdiff
diff options
context:
space:
mode:
authorRuslan Ruslichenko <rruslich@cisco.com>2017-01-17 16:13:52 +0200
committerThomas Gleixner <tglx@linutronix.de>2017-01-18 15:37:28 +0100
commit020eb3daaba2857b32c4cf4c82f503d6a00a67de (patch)
tree329a05b424d783db675a4c711bd7633575e8181b /net/bluetooth/l2cap_sock.c
parent49def1853334396f948dcb4cedb9347abb318df5 (diff)
x86/ioapic: Restore IO-APIC irq_chip retrigger callback
commit d32932d02e18 removed the irq_retrigger callback from the IO-APIC chip and did not add it to the new IO-APIC-IR irq chip. Unfortunately the software resend fallback is not enabled on X86, so edge interrupts which are received during the lazy disabled state of the interrupt line are not retriggered and therefor lost. Restore the callbacks. [ tglx: Massaged changelog ] Fixes: d32932d02e18 ("x86/irq: Convert IOAPIC to use hierarchical irqdomain interfaces") Signed-off-by: Ruslan Ruslichenko <rruslich@cisco.com> Cc: xe-linux-external@cisco.com Cc: stable@vger.kernel.org Link: http://lkml.kernel.org/r/1484662432-13580-1-git-send-email-rruslich@cisco.com Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'net/bluetooth/l2cap_sock.c')