All of lore.kernel.org
 help / color / mirror / Atom feed
* [LTP] Requested user & group [was: Re: [linux-test-project/ltp] Release 20210927 - LTP 20210927]
       [not found] <linux-test-project/ltp/releases/50325863@github.com>
@ 2021-09-29  8:12 ` Petr Vorel
  2021-10-01 17:40   ` Sandeep Patil via ltp
  0 siblings, 1 reply; 8+ messages in thread
From: Petr Vorel @ 2021-09-29  8:12 UTC (permalink / raw)
  To: ltp; +Cc: Sandeep Patil, Martin Doucha

Hi,

from 20210927 LTP release:
> * Testcases were fixed not to expect certain users and groups to be present on the system
>   - some tests were expecting bin, daemon and similar groups and users to exist on the system
>   - now LTP depends only on user 'nobody' and group 'nogroup'

At least some tests (e.g. fchmod02.c, chmod07.c) require other groups ('users',
fallback to 'daemon' which is on AOSP):
ltpgroup = SAFE_GETGRNAM_FALLBACK("users", "daemon");

@Sandeep: is 'nobody' on AOSP or do we still need SAFE_GETGRNAM_FALLBACK()?

Kind regards,
Petr

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

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [LTP] Requested user & group [was: Re: [linux-test-project/ltp] Release 20210927 - LTP 20210927]
  2021-09-29  8:12 ` [LTP] Requested user & group [was: Re: [linux-test-project/ltp] Release 20210927 - LTP 20210927] Petr Vorel
@ 2021-10-01 17:40   ` Sandeep Patil via ltp
  2021-10-02 17:30     ` Petr Vorel
  2021-10-04 18:02     ` Petr Vorel
  0 siblings, 2 replies; 8+ messages in thread
From: Sandeep Patil via ltp @ 2021-10-01 17:40 UTC (permalink / raw)
  To: Petr Vorel; +Cc: Steve Muckle, Sandeep Patil, Martin Doucha, ltp


[-- Attachment #1.1: Type: text/plain, Size: 1069 bytes --]

On Wed, Sep 29, 2021 at 1:12 AM Petr Vorel <pvorel@suse.cz> wrote:

> Hi,
>
> from 20210927 LTP release:
> > * Testcases were fixed not to expect certain users and groups to be
> present on the system
> >   - some tests were expecting bin, daemon and similar groups and users
> to exist on the system
> >   - now LTP depends only on user 'nobody' and group 'nogroup'
>
> At least some tests (e.g. fchmod02.c, chmod07.c) require other groups
> ('users',
> fallback to 'daemon' which is on AOSP):
> ltpgroup = SAFE_GETGRNAM_FALLBACK("users", "daemon");
>
> @Sandeep: is 'nobody' on AOSP or do we still need SAFE_GETGRNAM_FALLBACK()?


AID_NOBODY seems to be part of the AOSP already[1], so I think that might
work.
I dont have a way to test this immediately right now, so adding others who
may be able
to verify in CC.

- ssp

1.
https://cs.android.com/android/platform/superproject/+/master:system/core/libcutils/include/private/android_filesystem_config.h;l=183?q=AID_NOBODY



>
> Kind regards,
> Petr
>
> --
> Mailing list info: https://lists.linux.it/listinfo/ltp
>

[-- Attachment #1.2: Type: text/html, Size: 1986 bytes --]

[-- Attachment #2: Type: text/plain, Size: 60 bytes --]


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

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [LTP] Requested user & group [was: Re: [linux-test-project/ltp] Release 20210927 - LTP 20210927]
  2021-10-01 17:40   ` Sandeep Patil via ltp
@ 2021-10-02 17:30     ` Petr Vorel
  2021-10-04 18:02     ` Petr Vorel
  1 sibling, 0 replies; 8+ messages in thread
From: Petr Vorel @ 2021-10-02 17:30 UTC (permalink / raw)
  To: Sandeep Patil; +Cc: Sandeep Patil, ltp, Martin Doucha

Hi Sandeep,

> On Wed, Sep 29, 2021 at 1:12 AM Petr Vorel <pvorel@suse.cz> wrote:

> > Hi,

> > from 20210927 LTP release:
> > > * Testcases were fixed not to expect certain users and groups to be
> > present on the system
> > >   - some tests were expecting bin, daemon and similar groups and users
> > to exist on the system
> > >   - now LTP depends only on user 'nobody' and group 'nogroup'

> > At least some tests (e.g. fchmod02.c, chmod07.c) require other groups
> > ('users',
> > fallback to 'daemon' which is on AOSP):
> > ltpgroup = SAFE_GETGRNAM_FALLBACK("users", "daemon");

> > @Sandeep: is 'nobody' on AOSP or do we still need SAFE_GETGRNAM_FALLBACK()?


> AID_NOBODY seems to be part of the AOSP already[1], so I think that might
> work.
> I dont have a way to test this immediately right now, so adding others who
> may be able
> to verify in CC.

Thanks for info, it'd be great to have anybody to test it before we drop it.

Kind regards,
Petr

> - ssp

> 1.
> https://cs.android.com/android/platform/superproject/+/master:system/core/libcutils/include/private/android_filesystem_config.h;l=183?q=AID_NOBODY




> > Kind regards,
> > Petr

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

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

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [LTP] Requested user & group [was: Re: [linux-test-project/ltp] Release 20210927 - LTP 20210927]
  2021-10-01 17:40   ` Sandeep Patil via ltp
  2021-10-02 17:30     ` Petr Vorel
@ 2021-10-04 18:02     ` Petr Vorel
  2021-10-04 22:10       ` Steve Muckle via ltp
  1 sibling, 1 reply; 8+ messages in thread
From: Petr Vorel @ 2021-10-04 18:02 UTC (permalink / raw)
  To: Sandeep Patil; +Cc: Sandeep Patil, ltp, Martin Doucha

> On Wed, Sep 29, 2021 at 1:12 AM Petr Vorel <pvorel@suse.cz> wrote:

> > Hi,

> > from 20210927 LTP release:
> > > * Testcases were fixed not to expect certain users and groups to be
> > present on the system
> > >   - some tests were expecting bin, daemon and similar groups and users
> > to exist on the system
> > >   - now LTP depends only on user 'nobody' and group 'nogroup'

> > At least some tests (e.g. fchmod02.c, chmod07.c) require other groups
> > ('users',
> > fallback to 'daemon' which is on AOSP):
> > ltpgroup = SAFE_GETGRNAM_FALLBACK("users", "daemon");

> > @Sandeep: is 'nobody' on AOSP or do we still need SAFE_GETGRNAM_FALLBACK()?


> AID_NOBODY seems to be part of the AOSP already[1], so I think that might
> work.
> I dont have a way to test this immediately right now, so adding others who
> may be able
> to verify in CC.

I'm sorry, I was wrong, I meant GID "nogroup". Looking into the source, there is
no "AID_NOGROUP", thus we need to keep using GID "daemon" for AOSP instead
"nogroup". IMHO instead SAFE_GETGRNAM_FALLBACK() this should be set somewhere in
the library, so that it's for all tests.


Kind regards,
Petr

> - ssp

> 1.
> https://cs.android.com/android/platform/superproject/+/master:system/core/libcutils/include/private/android_filesystem_config.h;l=183?q=AID_NOBODY




> > Kind regards,
> > Petr

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

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

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [LTP] Requested user & group [was: Re: [linux-test-project/ltp] Release 20210927 - LTP 20210927]
  2021-10-04 18:02     ` Petr Vorel
@ 2021-10-04 22:10       ` Steve Muckle via ltp
  2021-10-05 20:24         ` Petr Vorel
  0 siblings, 1 reply; 8+ messages in thread
From: Steve Muckle via ltp @ 2021-10-04 22:10 UTC (permalink / raw)
  To: Petr Vorel, Sandeep Patil; +Cc: Sandeep Patil, ltp, Martin Doucha

On 10/4/21 11:02 AM, Petr Vorel wrote:
> I'm sorry, I was wrong, I meant GID "nogroup". Looking into the source, there is
> no "AID_NOGROUP", thus we need to keep using GID "daemon" for AOSP instead
> "nogroup". IMHO instead SAFE_GETGRNAM_FALLBACK() this should be set somewhere in
> the library, so that it's for all tests.

Hi Petr, I've created an issue internally to track adding 'nogroup'. It 
may be a little while before it goes in though.

cheers,
Steve

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

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [LTP] Requested user & group [was: Re: [linux-test-project/ltp] Release 20210927 - LTP 20210927]
  2021-10-04 22:10       ` Steve Muckle via ltp
@ 2021-10-05 20:24         ` Petr Vorel
  2021-10-05 22:16           ` Steve Muckle via ltp
  2021-10-06  8:12           ` Martin Doucha
  0 siblings, 2 replies; 8+ messages in thread
From: Petr Vorel @ 2021-10-05 20:24 UTC (permalink / raw)
  To: Steve Muckle; +Cc: Sandeep Patil, Martin Doucha, ltp

> On 10/4/21 11:02 AM, Petr Vorel wrote:
> > I'm sorry, I was wrong, I meant GID "nogroup". Looking into the source, there is
> > no "AID_NOGROUP", thus we need to keep using GID "daemon" for AOSP instead
> > "nogroup". IMHO instead SAFE_GETGRNAM_FALLBACK() this should be set somewhere in
> > the library, so that it's for all tests.

> Hi Petr, I've created an issue internally to track adding 'nogroup'. It may
> be a little while before it goes in though.

Hi Steve, Martin, Sandeep, Cyril,

@Steve, I'm very sorry, I didn't interpret the changelog correctly. As Martin
notified me, since his patchset [1][2] merged as dc84a2490~..7d4fdf3bb the only
groups queried by name are "users" and "daemon" (these in
SAFE_GETGRNAM_FALLBACK()). He actually removed all references to "nobody" and
"nogroup" in the patchset, tests now use tst_get_gids(), getgid() or get the
primary group through getpwnam("nobody"). Thus there is no need to create group
"nogroup", please close that internal aosp ticket.

Looking into tst_get_{g,u}ids() implementation it "The function will fill the
remaining (size-start) entries with unique UID/GID values.". But the problem is
that it expect there are no gaps in UID/GID values. While this is true for
traditional linux distros (not sure about embedded distros), it's definitely not
true for aosp, see AID_ definitions in libcutils source [1].

e.g. tst_get_gids(test_groups, 0, 2) (from setregid03.c) returns GID 1 and 2.
But on aosp getpwuid(1) and getpwuid(2) fails (I verified that by running code
on aosp 8). There is GID AID_DAEMON 1 ("daemon") and AID_BIN 2 ("bin"), which
has been added for aosp 9 (8e8648463d7 ("libcutils: Add "daemon" and "bin" users
for testing only")) and IMHO no use of tst_get_gids() so far does require higher
GID that 2, but once higher ID is needed it will break (and even adding GID
"nobody" would help much).

Fix would be to actually try to run getpwuid(with expected id) until
it's found, but next GID for aosp is AID_SYSTEM 1000, thus it wouldn't scale.
But it would work with aosp < 9 (not sure if anybody cares for old aosp).

Back to tests which use SAFE_GETGRNAM_FALLBACK() (used in chmod07.c, fchmod02.c).
With current implementation, it'd be possible to replace it with tst_get_gids().

Kind regards,
Petr

[1] https://cs.android.com/android/platform/superproject/+/master:system/core/libcutils/include/private/android_filesystem_config.h;l=43?q=AID_

> cheers,
> Steve

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

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [LTP] Requested user & group [was: Re: [linux-test-project/ltp] Release 20210927 - LTP 20210927]
  2021-10-05 20:24         ` Petr Vorel
@ 2021-10-05 22:16           ` Steve Muckle via ltp
  2021-10-06  8:12           ` Martin Doucha
  1 sibling, 0 replies; 8+ messages in thread
From: Steve Muckle via ltp @ 2021-10-05 22:16 UTC (permalink / raw)
  To: Petr Vorel; +Cc: Sandeep Patil, Martin Doucha, ltp

On 10/5/21 1:24 PM, Petr Vorel wrote:> Hi Steve, Martin, Sandeep, Cyril,
> 
> @Steve, I'm very sorry, I didn't interpret the changelog correctly. As Martin
> notified me, since his patchset [1][2] merged as dc84a2490~..7d4fdf3bb the only
> groups queried by name are "users" and "daemon" (these in
> SAFE_GETGRNAM_FALLBACK()). He actually removed all references to "nobody" and
> "nogroup" in the patchset, tests now use tst_get_gids(), getgid() or get the
> primary group through getpwnam("nobody"). Thus there is no need to create group
> "nogroup", please close that internal aosp ticket.

Thanks for letting me know.

> Looking into tst_get_{g,u}ids() implementation it "The function will fill the
> remaining (size-start) entries with unique UID/GID values.". But the problem is
> that it expect there are no gaps in UID/GID values. While this is true for
> traditional linux distros (not sure about embedded distros), it's definitely not
> true for aosp, see AID_ definitions in libcutils source [1].
> 
> e.g. tst_get_gids(test_groups, 0, 2) (from setregid03.c) returns GID 1 and 2.
> But on aosp getpwuid(1) and getpwuid(2) fails (I verified that by running code
> on aosp 8). There is GID AID_DAEMON 1 ("daemon") and AID_BIN 2 ("bin"), which
> has been added for aosp 9 (8e8648463d7 ("libcutils: Add "daemon" and "bin" users
> for testing only")) and IMHO no use of tst_get_gids() so far does require higher
> GID that 2, but once higher ID is needed it will break (and even adding GID
> "nobody" would help much).
> 
> Fix would be to actually try to run getpwuid(with expected id) until
> it's found, but next GID for aosp is AID_SYSTEM 1000, thus it wouldn't scale.
> But it would work with aosp < 9 (not sure if anybody cares for old aosp).

I'm personally not worried about aosp < 9. As this will be an issue on 
Android if a test uses tst_get_gids() for more groups, I'll repurpose 
the bug I filed to work on that, if and when we can get time for it.

> 
> Back to tests which use SAFE_GETGRNAM_FALLBACK() (used in chmod07.c, fchmod02.c).
> With current implementation, it'd be possible to replace it with tst_get_gids().
> 
> Kind regards,
> Petr
> 
> [1] https://cs.android.com/android/platform/superproject/+/master:system/core/libcutils/include/private/android_filesystem_config.h;l=43?q=AID_

thanks,
Steve

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

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [LTP] Requested user & group [was: Re: [linux-test-project/ltp] Release 20210927 - LTP 20210927]
  2021-10-05 20:24         ` Petr Vorel
  2021-10-05 22:16           ` Steve Muckle via ltp
@ 2021-10-06  8:12           ` Martin Doucha
  1 sibling, 0 replies; 8+ messages in thread
From: Martin Doucha @ 2021-10-06  8:12 UTC (permalink / raw)
  To: Petr Vorel, Steve Muckle; +Cc: Sandeep Patil, ltp, Martin Doucha

On 05. 10. 21 22:24, Petr Vorel wrote:
>> On 10/4/21 11:02 AM, Petr Vorel wrote:
> Looking into tst_get_{g,u}ids() implementation it "The function will fill the
> remaining (size-start) entries with unique UID/GID values.". But the problem is
> that it expect there are no gaps in UID/GID values. While this is true for
> traditional linux distros (not sure about embedded distros), it's definitely not
> true for aosp, see AID_ definitions in libcutils source [1].
> 
> e.g. tst_get_gids(test_groups, 0, 2) (from setregid03.c) returns GID 1 and 2.
> But on aosp getpwuid(1) and getpwuid(2) fails (I verified that by running code
> on aosp 8). There is GID AID_DAEMON 1 ("daemon") and AID_BIN 2 ("bin"), which
> has been added for aosp 9 (8e8648463d7 ("libcutils: Add "daemon" and "bin" users
> for testing only")) and IMHO no use of tst_get_gids() so far does require higher
> GID that 2, but once higher ID is needed it will break (and even adding GID
> "nobody" would help much).

Actually, the tests using tst_get_uids() or tst_get_gids() currently do
not query any additional information about the returned UID/GID values.
Those tests will work just fine even if there is no corresponding user
account or group.

-- 
Martin Doucha   mdoucha@suse.cz
QA Engineer for Software Maintenance
SUSE LINUX, s.r.o.
CORSO IIa
Krizikova 148/34
186 00 Prague 8
Czech Republic

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

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2021-10-06  8:12 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <linux-test-project/ltp/releases/50325863@github.com>
2021-09-29  8:12 ` [LTP] Requested user & group [was: Re: [linux-test-project/ltp] Release 20210927 - LTP 20210927] Petr Vorel
2021-10-01 17:40   ` Sandeep Patil via ltp
2021-10-02 17:30     ` Petr Vorel
2021-10-04 18:02     ` Petr Vorel
2021-10-04 22:10       ` Steve Muckle via ltp
2021-10-05 20:24         ` Petr Vorel
2021-10-05 22:16           ` Steve Muckle via ltp
2021-10-06  8:12           ` Martin Doucha

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.