[PATCH] Correct strdup error handling and insmod.static handling
authorTobias Stoeckmann <tobias@bugol.de>
Wed, 21 Feb 2007 20:09:59 +0000 (15:09 -0500)
committerJon Masters <jcm@perihelion.int.jonmasters.org>
Wed, 21 Feb 2007 20:09:59 +0000 (15:09 -0500)
commita5644bb415e4bf53d6e13739b67c783a3ae4d119
treeb408fe6a5c9e764d523de05e48dbc001f174d499
parentb0c1e293dc962368117875c3684cee6362a79238
[PATCH] Correct strdup error handling and insmod.static handling

There is one more problem about memory allocation in insmod: strdup("") could
fail. If this happens, realloc() accesses later on strlen(options). A call like
strlen(NULL) segfaults on my system (glibc 2.4).

Another thing worth to mention is that strstr() on argv[0] raises another
little problem - or perhaps intented behaviour:

/my/path/insmod.static/../../../sbin/insmod
(or anything else that contains insmod.static)

This call results in using old insmod. Fix for this is to check only the string
after last occurence of "/".

Signed-off-by: Jon Masters <jcm@redhat.com>
Signed-off-by: Tobias Stoeckmann <tobias@bugol.de>
insmod.c