[PATCH] Kernel parameter parsing fix

From: Zhu, Yi
Date: Fri May 21 2004 - 20:55:39 EST



Hi,

Must all the kernel parameters have trailing '=' at the end of the param
string?
If not, I think below patch is useful to avoid potential problems.

Thanks,

--- linux-2.6.6.orig/init/main.c 2004-05-14 13:38:31.000000000
+0800
+++ linux-2.6.6/init/main.c 2004-05-15 00:25:41.339261792 +0800
@@ -149,11 +149,15 @@ static int __init obsolete_checksetup(ch {
struct obs_kernel_param *p;
extern struct obs_kernel_param __setup_start, __setup_end;
+ char *ptr;
+ int len = strlen(line);

+ if ((ptr = strchr(line, '=')))
+ len = ptr - line;
p = &__setup_start;
do {
int n = strlen(p->str);
- if (!strncmp(line, p->str, n)) {
+ if (len <= n && !strncmp(line, p->str, n)) {
if (!p->setup_func) {
printk(KERN_WARNING "Parameter %s is
obsolete, ignored\n", p->str);
return 1;


-----------------------------------------------------------------
Opinions expressed are those of the author and do not represent Intel
Corp.

- Zhu Yi (Chuyee)

GnuPG v1.0.6 (GNU/Linux)
http://cn.geocities.com/chewie_chuyee/gpg.txt or
$ gpg --keyserver wwwkeys.pgp.net --recv-keys 71C34820
1024D/71C34820 C939 2B0B FBCE 1D51 109A 55E5 8650 DB90 71C3 4820
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/