FAQ Search Today's Posts Mark Forums Read
» Video Reviews

» Linux Archive

Linux-archive is a website aiming to archive linux email lists and to make them easily accessible for linux users/developers.


» Sponsor

» Partners

» Sponsor

Go Back   Linux Archive > Redhat > Cluster Development

 
 
LinkBack Thread Tools
 
Old 10-12-2012, 02:37 PM
Andrew Price
 
Default mkfs.gfs2: Check locktable more strictly for valid chars

Previously mkfs.gfs2 allowed any printable characters to be used in the
locktable name. This causes problems when the locktable contains special
characters such as '/'. This patch limits the locktable to alphanumeric
characters plus hyphens and underscores.

Ref: bz#862847

Signed-off-by: Andrew Price <anprice@redhat.com>
---
gfs2/man/mkfs.gfs2.8 | 3 ++-
gfs2/mkfs/main_mkfs.c | 6 ++----
2 files changed, 4 insertions(+), 5 deletions(-)

diff --git a/gfs2/man/mkfs.gfs2.8 b/gfs2/man/mkfs.gfs2.8
index d17e272..4613305 100644
--- a/gfs2/man/mkfs.gfs2.8
+++ b/gfs2/man/mkfs.gfs2.8
@@ -73,7 +73,8 @@ Clustername must match that in cluster.conf; only members of this
cluster are permitted to use this file system.
Fsname is a unique file system name used to distinguish this GFS2 file
system from others created (1 to 16 characters). Lock_nolock doesn't
-use this field.
+use this field. Valid fIclusternamefRs and fIfsnamefRs may only contain
+alphanumeric characters, hyphens (-) and underscores (_).
.TP
fB-VfP
Print program version information, then exit.
diff --git a/gfs2/mkfs/main_mkfs.c b/gfs2/mkfs/main_mkfs.c
index 2d529d7..3bbb5b4 100644
--- a/gfs2/mkfs/main_mkfs.c
+++ b/gfs2/mkfs/main_mkfs.c
@@ -259,10 +259,8 @@ static void test_locking(char *lockproto, char *locktable)
exit(-1);
}
for (c = locktable; *c; c++) {
- if (isspace(*c))
- die( _("locktable error: contains space characters
"));
- if (!isprint(*c))
- die( _("locktable error: contains unprintable characters
"));
+ if (!isalnum(*c) && (*c != '-') && (*c != '_') && (*c != ':'))
+ die( _("locktable error: invalid character '%c'
"), *c);
}

c = strstr(locktable, ":");
--
1.7.11.4
 

Thread Tools




All times are GMT. The time now is 06:51 AM.

VBulletin, Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO ©2007, Crawlability, Inc.
Copyright 2007 - 2008, www.linux-archive.org