bug in 2.6.22.6, net/sunrpc/svcsock.c

From: Wolfgang Walter
Date: Mon Sep 03 2007 - 13:12:14 EST


Hello,

in 2.6.22.6, net/sunrpc/svcsock.c

random characters are printed by svc_tcp_accept:

lockd: last TCP connect from <some random chars>

because buf is used unitialized:

printk(KERN_NOTICE
"%s: last TCP connect from %s\n",
serv->sv_name, buf);


Probably it should be

printk(KERN_NOTICE
"%s: last TCP connect from %s\n",
serv->sv_name, __svc_print_addr(sin, buf, sizeof(buf)));


=============================
--- linux-2.6.22.6/net/sunrpc/svcsock.c 2007-08-27 18:10:14.000000000 +0200
+++ linux-2.6.22.6w/net/sunrpc/svcsock.c 2007-09-03 18:27:30.000000000 +0200
@@ -1090,7 +1090,7 @@
serv->sv_name);
printk(KERN_NOTICE
"%s: last TCP connect from %s\n",
- serv->sv_name, buf);
+ serv->sv_name, __svc_print_addr(sin, buf, sizeof(buf)));
}
/*
* Always select the oldest socket. It's not fair,
===============================

Regards,
--
Wolfgang Walter
Studentenwerk München
Anstalt des öffentlichen Rechts
-
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/