[lockdev-devel] [PATCH 04/10] RedHat patch 4
Ludwig Nussel
ludwig.nussel at suse.de
Wed Feb 10 11:45:34 UTC 2010
- allow locking devices in subdirectories (brc#74454)
---
src/lockdev.c | 15 ++++++++-------
1 files changed, 8 insertions(+), 7 deletions(-)
diff --git a/src/lockdev.c b/src/lockdev.c
index bcc565f..afaba57 100644
--- a/src/lockdev.c
+++ b/src/lockdev.c
@@ -487,18 +487,19 @@ _dl_check_devname (const char *devname)
_debug( 3, "_dl_check_devname(%s) stripped name = %s\n", devname, p);
} else {
/* Otherwise, strip off everything but the device name. */
- while ( (m=strrchr( p, '/')) != 0 ) {
- p = m+1; /* was pointing to the slash */
+ p += strspn(p, " \t\r\n\v\f\a"); /* skip leading whitespace */
+ if (strncmp(p, DEV_PATH, strlen(DEV_PATH)) == 0) {
+ p += strlen(DEV_PATH); /* 1st char after slash */
_debug( 3, "_dl_check_devname(%s) name = %s\n", devname, p);
}
}
if ( strcmp( p, "tty") == 0 )
p = ttyname( 0); /* this terminal, if it exists */
- if ( ((l=strlen( p)) == 0 ) || ( l > (MAXPATHLEN - strlen(LOCK_PATH)) ))
- return 0;
- if ( ! (m = malloc( 1 + l)) )
- return 0;
- return strcpy( m, p);
+ if (((l = strlen(p)) == 0) || (l > (MAXPATHLEN - strlen(LOCK_PATH))))
+ return NULL;
+ if ((m = malloc(++l)) == NULL)
+ return NULL;
+ return strcpy(m, p);
}
--
1.6.4.2
More information about the lockdev-devel
mailing list