diff mbox

mountd: group length not being set correctly in auth_unix_gid

Message ID 1307462188-13122-1-git-send-email-steved@redhat.com
State New, archived
Headers show

Commit Message

Steve Dickson June 7, 2011, 3:56 p.m. UTC
From: Rinat Bikov <becase@altlinux.org>

Commit 9274e94d introduce dynamic buffering for gids lists.
In that patch there was a bug that only used the dynamic
length on the first call, resulting in the dynamic length
not being dynamic at all.

Reported-by: Rinat Bikov <becase@altlinux.org>
Signed-off-by: Steve Dickson <steved@redhat.com>
---
 utils/mountd/cache.c |    3 ++-
 1 files changed, 2 insertions(+), 1 deletions(-)

Comments

Pavel Shilovsky June 7, 2011, 6:41 p.m. UTC | #1
2011/6/7 Steve Dickson <steved@redhat.com>:
> From: Rinat Bikov <becase@altlinux.org>
>
> Commit 9274e94d introduce dynamic buffering for gids lists.
> In that patch there was a bug that only used the dynamic
> length on the first call, resulting in the dynamic length
> not being dynamic at all.
>
> Reported-by: Rinat Bikov <becase@altlinux.org>
> Signed-off-by: Steve Dickson <steved@redhat.com>
> ---
>  utils/mountd/cache.c |    3 ++-
>  1 files changed, 2 insertions(+), 1 deletions(-)
>
> diff --git a/utils/mountd/cache.c b/utils/mountd/cache.c
> index 0c4a03d..6084893 100644
> --- a/utils/mountd/cache.c
> +++ b/utils/mountd/cache.c
> @@ -147,8 +147,9 @@ static void auth_unix_gid(FILE *f)
>                if (!groups)
>                        return;
>
> -               groups_len = ngroups = INITIAL_MANAGED_GROUPS;
> +               groups_len = INITIAL_MANAGED_GROUPS;
>        }
> +       ngroups = groups_len;
>
>        if (readline(fileno(f), &lbuf, &lbuflen) != 1)
>                return;
> --
> 1.7.5.1
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-nfs" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>

Looks good. It's almost the same, as I sent before "mountd: Fix
missing varialble assignment in auth_unix_gid"
(https://patchwork.kernel.org/patch/841452/) but it haven't got any
comments yet.
Steve Dickson June 8, 2011, 3:16 a.m. UTC | #2
On 06/07/2011 02:41 PM, Pavel Shilovsky wrote:
> 2011/6/7 Steve Dickson <steved@redhat.com>:
>> From: Rinat Bikov <becase@altlinux.org>
>>
>> Commit 9274e94d introduce dynamic buffering for gids lists.
>> In that patch there was a bug that only used the dynamic
>> length on the first call, resulting in the dynamic length
>> not being dynamic at all.
>>
>> Reported-by: Rinat Bikov <becase@altlinux.org>
>> Signed-off-by: Steve Dickson <steved@redhat.com>
>> ---
>>  utils/mountd/cache.c |    3 ++-
>>  1 files changed, 2 insertions(+), 1 deletions(-)
>>
>> diff --git a/utils/mountd/cache.c b/utils/mountd/cache.c
>> index 0c4a03d..6084893 100644
>> --- a/utils/mountd/cache.c
>> +++ b/utils/mountd/cache.c
>> @@ -147,8 +147,9 @@ static void auth_unix_gid(FILE *f)
>>                if (!groups)
>>                        return;
>>
>> -               groups_len = ngroups = INITIAL_MANAGED_GROUPS;
>> +               groups_len = INITIAL_MANAGED_GROUPS;
>>        }
>> +       ngroups = groups_len;
>>
>>        if (readline(fileno(f), &lbuf, &lbuflen) != 1)
>>                return;
>> --
>> 1.7.5.1
>>
>> --
>> To unsubscribe from this list: send the line "unsubscribe linux-nfs" in
>> the body of a message to majordomo@vger.kernel.org
>> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>>
> 
> Looks good. It's almost the same, as I sent before "mountd: Fix
> missing varialble assignment in auth_unix_gid"
> (https://patchwork.kernel.org/patch/841452/) but it haven't got any
> comments yet.
> 
yeah.. Rinat sent me some private mail about this regression and
I made this posting before I remember you had already post a 
similar patch... So I did commit your patch...

steved.
--
To unsubscribe from this list: send the line "unsubscribe linux-nfs" 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/utils/mountd/cache.c b/utils/mountd/cache.c
index 0c4a03d..6084893 100644
--- a/utils/mountd/cache.c
+++ b/utils/mountd/cache.c
@@ -147,8 +147,9 @@  static void auth_unix_gid(FILE *f)
 		if (!groups)
 			return;
 
-		groups_len = ngroups = INITIAL_MANAGED_GROUPS;
+		groups_len = INITIAL_MANAGED_GROUPS;
 	}
+	ngroups = groups_len;
 
 	if (readline(fileno(f), &lbuf, &lbuflen) != 1)
 		return;