From: Shi Weihua <shiwh@cn.fujitsu.com>
To: Rishikesh K Rajak <risrajak@linux.vnet.ibm.com>
Cc: LTP <ltp-list@lists.sourceforge.net>
Subject: Re: [LTP] [PATCH] sysctl03: sysctl returns EACCES after 2.6.33-rc1
Date: Mon, 22 Feb 2010 15:15:58 +0800 [thread overview]
Message-ID: <4B822F2E.9030609@cn.fujitsu.com> (raw)
In-Reply-To: <20100218042532.GC13013@rishikesh.in.ibm.com>
at 2010-2-18 12:25, Rishikesh K Rajak wrote:
> On Wed, Feb 17, 2010 at 09:10:48AM -0800, Garrett Cooper wrote:
>> On Wed, Feb 17, 2010 at 12:01 AM, Rishikesh <risrajak@linux.vnet.ibm.com> wrote:
>>> Hi Shi,
>>>
>>> Thanks for your patch, still i am finding time to look into your patch.
>>> Will reply you soon.
>>>
>>> http://marc.info/?l=ltp-list&m=126502355614857&w=2
>>
>> I looked at the patch finally.
>
> Thanks garret.
>>
>> Please use TTERRNO instead of strerror(...) for the reported value.
>> There's no reason why you should use strerror(...) there as that's
>> already done with tst_res(3).
>
> Shi, can you please incorporate changes which garret has suggested and
> resend the patch again to ltp-list@ .
Ok, i recreated the patch based on garret's suggestion.
Signed-off-by: Shi Weihua <shiwh@cn.fujitsu.com>
---
--- testcases/kernel/syscalls/sysctl/sysctl03.c.orig 2010-02-22 14:38:26.000000000 -0500
+++ testcases/kernel/syscalls/sysctl/sysctl03.c 2010-02-22 15:08:03.000000000 -0500
@@ -22,15 +22,18 @@
* sysctl03.c
*
* DESCRIPTION
- * Testcase to check that sysctl(2) sets errno to EPERM correctly.
+ * Testcase to check that sysctl(2) sets errno to EPERM or EACCES
+ * correctly. But it will return EACCES on kernels that are 2.6.33-rc1
+ * and higher.
*
* ALGORITHM
* a. Call sysctl(2) as a root user, and attempt to write data
* to the kernel_table[]. Since the table does not have write
- * permissions even for the root, it should fail EPERM.
+ * permissions even for the root, it should fail EPERM or EACCES.
* b. Call sysctl(2) as a non-root user, and attempt to write data
* to the kernel_table[]. Since the table does not have write
- * permission for the regular user, it should fail with EPERM.
+ * permission for the regular user, it should fail with EPERM
+ * or EACCES.
*
* USAGE: <for command-line>
* sysctl03 [-c n] [-e] [-i n] [-I x] [-P x] [-t]
@@ -43,6 +46,7 @@
*
* HISTORY
* 07/2001 Ported by Wayne Boyer
+ * 02/2010 Updated by shiwh@cn.fujitsu.com
*
* RESTRICTIONS
* Test must be run as root.
@@ -82,6 +86,7 @@ int main(int ac, char **av)
{
int lc;
char *msg;
+ int exp_eno;
char osname[OSNAMESZ];
int osnamelth, status;
@@ -96,6 +101,13 @@ int main(int ac, char **av)
setup();
+ if ((tst_kvercmp(2, 6, 32)) <= 0){
+ exp_eno = EPERM;
+ } else {
+ exp_eno = EACCES;
+ exp_enos[0] = EACCES;
+ }
+
TEST_EXP_ENOS(exp_enos);
/* check looping state if -i option is given */
@@ -114,13 +126,10 @@ int main(int ac, char **av)
} else {
TEST_ERROR_LOG(TEST_ERRNO);
- if (TEST_ERRNO != EPERM) {
- tst_resm(TFAIL,
- "Expected EPERM (%d), got %d: %s",
- EPERM, TEST_ERRNO,
- strerror(TEST_ERRNO));
+ if (TEST_ERRNO != exp_eno) {
+ tst_resm(TFAIL|TTERRNO, "Got unxpected error");
} else {
- tst_resm(TPASS, "Got expected EPERM error");
+ tst_resm(TPASS|TTERRNO, "Got expected error");
}
}
@@ -147,12 +156,10 @@ int main(int ac, char **av)
} else {
TEST_ERROR_LOG(TEST_ERRNO);
- if (TEST_ERRNO != EPERM) {
- tst_resm(TFAIL, "Expected EPERM, got "
- "%d", TEST_ERRNO);
+ if (TEST_ERRNO != exp_eno) {
+ tst_resm(TFAIL|TTERRNO, "Got unxpected error");
} else {
- tst_resm(TPASS, "Got expected EPERM "
- "error");
+ tst_resm(TPASS|TTERRNO, "Got expected error");
}
}
Thank you.
- Shi Weihua
>
> Thanks for your support.
> - Rishi
>
>> Thanks,
>> -Garrett
>
>
------------------------------------------------------------------------------
Download Intel® Parallel Studio Eval
Try the new software tools for yourself. Speed compiling, find bugs
proactively, and fine-tune applications for parallel performance.
See why Intel Parallel Studio got high marks during beta.
http://p.sf.net/sfu/intel-sw-dev
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list
next prev parent reply other threads:[~2010-02-22 7:16 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-02-17 8:01 [LTP] [PATCH] sysctl03: sysctl returns EACCES after 2.6.33-rc1 Rishikesh
2010-02-17 17:10 ` Garrett Cooper
2010-02-18 4:25 ` Rishikesh K Rajak
2010-02-22 7:15 ` Shi Weihua [this message]
2010-02-22 7:44 ` Garrett Cooper
2010-02-23 1:48 ` Shi Weihua
2010-02-25 1:18 ` Garrett Cooper
2010-03-04 8:38 ` Shi Weihua
2010-03-04 18:35 ` Garrett Cooper
2010-03-04 18:37 ` Garrett Cooper
2010-03-04 19:57 ` Eric W. Biederman
2010-03-05 7:20 ` Garrett Cooper
2010-03-05 7:50 ` Eric W. Biederman
-- strict thread matches above, loose matches on Subject: below --
2010-02-01 11:25 Shi Weihua
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=4B822F2E.9030609@cn.fujitsu.com \
--to=shiwh@cn.fujitsu.com \
--cc=ltp-list@lists.sourceforge.net \
--cc=risrajak@linux.vnet.ibm.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox