lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Tue, 8 Mar 2011 17:09:32 +0800 From: Dave Young <hidave.darkstar@...il.com> To: Alexey Dobriyan <adobriyan@...il.com> Cc: linux-kernel@...r.kernel.org, akpm@...ux-foundation.org Subject: Re: + sysctl-add-proc_dointvec_unsigned-handler.patch added to -mm tree On Tue, Mar 8, 2011 at 5:02 PM, Alexey Dobriyan <adobriyan@...il.com> wrote: > On Tue, Mar 08, 2011 at 04:43:36PM +0800, Dave Young wrote: >> On Tue, Mar 8, 2011 at 4:24 PM, Alexey Dobriyan <adobriyan@...il.com> wrote: >> > On Tue, Mar 08, 2011 at 01:43:31PM +0800, Dave Young wrote: >> >> On Tue, Mar 8, 2011 at 1:15 PM, Dave Young <hidave.darkstar@...il.com> wrote: >> >> > On Tue, Mar 8, 2011 at 7:26 AM, Alexey Dobriyan <adobriyan@...il.com> wrote: >> >> >> On Mon, Mar 07, 2011 at 03:05:43PM -0800, akpm@...ux-foundation.org wrote: >> >> >>> Add a proc_dointvec_unsigned() sysctl handler for positive value cases. >> >> >> >> >> >>> --- a/kernel/sysctl.c~sysctl-add-proc_dointvec_unsigned-handler >> >> >>> +++ a/kernel/sysctl.c >> >> >> >> >> >>> +int proc_dointvec_unsigned(struct ctl_table *table, int write, >> >> >>> + void __user *buffer, size_t *lenp, loff_t *ppos) >> >> >>> +{ >> >> >>> + struct do_proc_dointvec_minmax_conv_param param = { >> >> >>> + .min = &zero, >> >> >>> + }; >> >> >>> + return do_proc_dointvec(table, write, buffer, lenp, ppos, >> >> >>> + do_proc_dointvec_minmax_conv, ¶m); >> >> >>> +} >> >> >> >> >> >> This silently ignored max value in .extra2 . >> >> > >> >> > Hi, >> >> > >> >> > Good cache, should set .max = NULL here >> >> >> >> Oh, c99 set default value to 0, isn't it? >> >> >> >> What do you mean silently ignore here? >> >> >> >> Let's see the code: >> >> >> >> if ((param->min && *param->min > val) || >> >> (param->max && *param->max < val)) >> >> return -EINVAL; >> >> >> >> There's no problem max == NULL >> > >> > I mean literally "silently ignore". >> > >> > Try >> > { >> > .name = "foo", >> > .data = &foo, >> > .maxlen = sizeof(foo), >> > .proc_handler = proc_dointvec_unsigned, >> > .extra2 = &_42, >> > } >> > >> >> Yes, extra2 is ignored, what would you like to do for this kind of ignore? > > Obviously it should remain upper bound. > This function is intend for case val >=0, So I don't think extra2 should be added. -- Regards dave -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@...r.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists