diff mbox

generic/317: use id to get user id

Message ID 1474649676-31602-1-git-send-email-eguan@redhat.com (mailing list archive)
State New, archived
Headers show

Commit Message

Eryu Guan Sept. 23, 2016, 4:54 p.m. UTC
Greping username "fsgqa" in passwd file to get user id doesn't
always work, because the given username could match multiple
entries, e.g. when we have user "123456-fsgqa" (used by other tests)
in passwd file.

Fix it by using "id -u $qa_user" to get the user id directly.

Signed-off-by: Eryu Guan <eguan@redhat.com>
---
 tests/generic/317 | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Zorro Lang Sept. 24, 2016, 11:55 a.m. UTC | #1
On Sat, Sep 24, 2016 at 12:54:36AM +0800, Eryu Guan wrote:
> Greping username "fsgqa" in passwd file to get user id doesn't
> always work, because the given username could match multiple
> entries, e.g. when we have user "123456-fsgqa" (used by other tests)
> in passwd file.
> 
> Fix it by using "id -u $qa_user" to get the user id directly.
> 
> Signed-off-by: Eryu Guan <eguan@redhat.com>
> ---
>  tests/generic/317 | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/tests/generic/317 b/tests/generic/317
> index 9d9499b..7e40b1f 100755
> --- a/tests/generic/317
> +++ b/tests/generic/317
> @@ -61,7 +61,7 @@ _require_scratch
>  _require_user
>  _require_ugid_map
>  _require_userns
> -qa_user_id=`grep $qa_user /etc/passwd |awk -F: '{print $3}'`
> +qa_user_id=`id -u $qa_user`

Looks good to me.
Reviewed-by: Zorro Lang <zlang@redhat.com>

>  
>  _filter_output()
>  {
> -- 
> 2.7.4
> 
> --
> To unsubscribe from this list: send the line "unsubscribe fstests" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
--
To unsubscribe from this list: send the line "unsubscribe fstests" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Anatoly Pugachev Sept. 26, 2016, 9:11 a.m. UTC | #2
On Fri, Sep 23, 2016 at 7:54 PM, Eryu Guan <eguan@redhat.com> wrote:
>
> Greping username "fsgqa" in passwd file to get user id doesn't
> always work, because the given username could match multiple
> entries, e.g. when we have user "123456-fsgqa" (used by other tests)
> in passwd file.
>
> Fix it by using "id -u $qa_user" to get the user id directly.
>
> Signed-off-by: Eryu Guan <eguan@redhat.com>
> ---
>  tests/generic/317 | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/tests/generic/317 b/tests/generic/317
> index 9d9499b..7e40b1f 100755
> --- a/tests/generic/317
> +++ b/tests/generic/317
> @@ -61,7 +61,7 @@ _require_scratch
>  _require_user
>  _require_ugid_map
>  _require_userns
> -qa_user_id=`grep $qa_user /etc/passwd |awk -F: '{print $3}'`
> +qa_user_id=`id -u $qa_user`


shouldn't it use _cat_passwd() from common/rc ?
--
To unsubscribe from this list: send the line "unsubscribe fstests" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Eryu Guan Sept. 26, 2016, 12:49 p.m. UTC | #3
On Mon, Sep 26, 2016 at 12:11:24PM +0300, Anatoly Pugachev wrote:
> On Fri, Sep 23, 2016 at 7:54 PM, Eryu Guan <eguan@redhat.com> wrote:
> >
> > Greping username "fsgqa" in passwd file to get user id doesn't
> > always work, because the given username could match multiple
> > entries, e.g. when we have user "123456-fsgqa" (used by other tests)
> > in passwd file.
> >
> > Fix it by using "id -u $qa_user" to get the user id directly.
> >
> > Signed-off-by: Eryu Guan <eguan@redhat.com>
> > ---
> >  tests/generic/317 | 2 +-
> >  1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/tests/generic/317 b/tests/generic/317
> > index 9d9499b..7e40b1f 100755
> > --- a/tests/generic/317
> > +++ b/tests/generic/317
> > @@ -61,7 +61,7 @@ _require_scratch
> >  _require_user
> >  _require_ugid_map
> >  _require_userns
> > -qa_user_id=`grep $qa_user /etc/passwd |awk -F: '{print $3}'`
> > +qa_user_id=`id -u $qa_user`
> 
> 
> shouldn't it use _cat_passwd() from common/rc ?

I thought about it too, but _cat_passwd has the same problem as grep
/etc/passwd directly, and "id -u $qa_user" just works fine too in NIS
env. So I think this fix is fine.

Thanks,
Eryu
--
To unsubscribe from this list: send the line "unsubscribe fstests" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

diff --git a/tests/generic/317 b/tests/generic/317
index 9d9499b..7e40b1f 100755
--- a/tests/generic/317
+++ b/tests/generic/317
@@ -61,7 +61,7 @@  _require_scratch
 _require_user
 _require_ugid_map
 _require_userns
-qa_user_id=`grep $qa_user /etc/passwd |awk -F: '{print $3}'`
+qa_user_id=`id -u $qa_user`
 
 _filter_output()
 {