apparmor: fix build failure on sparc caused by undeclared signals
authorJohn Johansen <john.johansen@canonical.com>
Wed, 23 Aug 2017 19:10:39 +0000 (12:10 -0700)
committerJohn Johansen <john.johansen@canonical.com>
Fri, 22 Sep 2017 20:00:58 +0000 (13:00 -0700)
  In file included from security/apparmor/ipc.c:23:0:
  security/apparmor/include/sig_names.h:26:3: error: 'SIGSTKFLT' undeclared here (not in a function)
    [SIGSTKFLT] = 16, /* -, 16, - */
     ^
  security/apparmor/include/sig_names.h:26:3: error: array index in initializer not of integer type
  security/apparmor/include/sig_names.h:26:3: note: (near initialization for 'sig_map')
  security/apparmor/include/sig_names.h:51:3: error: 'SIGUNUSED' undeclared here (not in a function)
    [SIGUNUSED] = 34, /* -, 31, - */
     ^
  security/apparmor/include/sig_names.h:51:3: error: array index in initializer not of integer type
  security/apparmor/include/sig_names.h:51:3: note: (near initialization for 'sig_map')

Reported-by: Stephen Rothwell <sfr@canb.auug.org.au>
Fixes: c6bf1adaecaa ("apparmor: add the ability to mediate signals")
Signed-off-by: John Johansen <john.johansen@canonical.com>
security/apparmor/include/sig_names.h

index 0d4395f..92e62fe 100644 (file)
@@ -23,7 +23,9 @@ static const int sig_map[MAXMAPPED_SIG] = {
        [SIGPIPE] = 13,
        [SIGALRM] = 14,
        [SIGTERM] = 15,
+#ifdef SIGSTKFLT
        [SIGSTKFLT] = 16,       /* -, 16, - */
+#endif
        [SIGCHLD] = 17,         /* 20, 17, 18.  SIGCHLD -, -, 18 */
        [SIGCONT] = 18,         /* 19, 18, 25 */
        [SIGSTOP] = 19,         /* 17, 19, 23 */
@@ -47,7 +49,8 @@ static const int sig_map[MAXMAPPED_SIG] = {
 #if defined(SIGLOST) && SIGPWR != SIGLOST              /* sparc */
        [SIGLOST] = 33,         /* unused on Linux */
 #endif
-#if defined(SIGLOST) && defined(SIGSYS) && SIGLOST != SIGSYS
+#if defined(SIGUNUSED) && \
+    defined(SIGLOST) && defined(SIGSYS) && SIGLOST != SIGSYS
        [SIGUNUSED] = 34,       /* -, 31, - */
 #endif
 };