All of lore.kernel.org
 help / color / mirror / Atom feed
From: Ma Xinjian via ltp <ltp@lists.linux.it>
To: ltp@lists.linux.it
Subject: [LTP] [PATCH] sigsuspend: Add testcase for EFAULT
Date: Tue,  9 Jul 2024 17:50:45 +0800	[thread overview]
Message-ID: <20240709095045.30896-1-maxj.fnst@fujitsu.com> (raw)

Add a testcase with the mask parameter points to an invalid address.

Signed-off-by: Ma Xinjian <maxj.fnst@fujitsu.com>
---
 runtest/syscalls                              |  1 +
 .../kernel/syscalls/sigsuspend/.gitignore     |  1 +
 .../kernel/syscalls/sigsuspend/sigsuspend02.c | 34 +++++++++++++++++++
 3 files changed, 36 insertions(+)
 create mode 100644 testcases/kernel/syscalls/sigsuspend/sigsuspend02.c

diff --git a/runtest/syscalls b/runtest/syscalls
index b6cadb2df..373f4d2e6 100644
--- a/runtest/syscalls
+++ b/runtest/syscalls
@@ -1496,6 +1496,7 @@ sigprocmask01 sigprocmask01
 sigrelse01 sigrelse01
 
 sigsuspend01 sigsuspend01
+sigsuspend02 sigsuspend02
 
 sigtimedwait01 sigtimedwait01
 
diff --git a/testcases/kernel/syscalls/sigsuspend/.gitignore b/testcases/kernel/syscalls/sigsuspend/.gitignore
index 46ea52f73..926b73571 100644
--- a/testcases/kernel/syscalls/sigsuspend/.gitignore
+++ b/testcases/kernel/syscalls/sigsuspend/.gitignore
@@ -1 +1,2 @@
 /sigsuspend01
+/sigsuspend02
diff --git a/testcases/kernel/syscalls/sigsuspend/sigsuspend02.c b/testcases/kernel/syscalls/sigsuspend/sigsuspend02.c
new file mode 100644
index 000000000..5bfed9d2d
--- /dev/null
+++ b/testcases/kernel/syscalls/sigsuspend/sigsuspend02.c
@@ -0,0 +1,34 @@
+// SPDX-License-Identifier: GPL-2.0-or-later
+/*
+ * Copyright (c) 2024 FUJITSU LIMITED. All Rights Reserved.
+ * Copyright (c) Linux Test Project, 2024
+ * Author: Ma Xinjian <maxj.fnst@fujitsu.com>
+
+/*\
+ * [Description]
+ *
+ * Verify that sigsuspend(2) fails with
+ *
+ * - EFAULT mask points to memory which is not a valid part of the
+ *          process address space.
+ */
+
+#include "tst_test.h"
+
+static void *invalid_mask;
+
+static void setup(void)
+{
+        invalid_mask = tst_get_bad_addr(NULL);
+}
+
+static void verify_sigsuspend(void)
+{
+        TST_EXP_FAIL(sigsuspend(invalid_mask), EFAULT);
+}
+
+static struct tst_test test = {
+        .test_all = verify_sigsuspend,
+        .setup = setup,
+};
+
-- 
2.18.1

-- 
Mailing list info: https://lists.linux.it/listinfo/ltp

             reply	other threads:[~2024-07-09  9:51 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-07-09  9:50 Ma Xinjian via ltp [this message]
2024-09-17  9:44 ` [LTP] [PATCH] sigsuspend: Add testcase for EFAULT Cyril Hrubis
2024-09-17  9:49   ` Cyril Hrubis

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20240709095045.30896-1-maxj.fnst@fujitsu.com \
    --to=ltp@lists.linux.it \
    --cc=maxj.fnst@fujitsu.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.