cluster-devel.redhat.com archive mirror
 help / color / mirror / Atom feed
From: teigland@sourceware.org <teigland@sourceware.org>
To: cluster-devel.redhat.com
Subject: [Cluster-devel] cluster/gfs2/mount mount.gfs2.c
Date: 23 Apr 2007 19:18:18 -0000	[thread overview]
Message-ID: <20070423191818.15012.qmail@sourceware.org> (raw)

CVSROOT:	/cvs/cluster
Module name:	cluster
Branch: 	RHEL5
Changes by:	teigland at sourceware.org	2007-04-23 20:18:18

Modified files:
	gfs2/mount     : mount.gfs2.c 

Log message:
	Use realpath(3) to canonicalize path names for device and mount point.
	bz 237544

Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/cluster/gfs2/mount/mount.gfs2.c.diff?cvsroot=cluster&only_with_tag=RHEL5&r1=1.20&r2=1.20.2.1

--- cluster/gfs2/mount/mount.gfs2.c	2006/10/25 06:24:43	1.20
+++ cluster/gfs2/mount/mount.gfs2.c	2007/04/23 19:18:17	1.20.2.1
@@ -38,7 +38,7 @@
 {
 	int cont = 1;
 	int optchar;
-	int l;
+	char *real;
 
 	/* FIXME: check for "quiet" option and don't print in that case */
 
@@ -77,18 +77,22 @@
 		}
 	}
 
-	if (optind < argc && argv[optind])
-		strncpy(mo->dev, argv[optind], PATH_MAX);
+	if (optind < argc && argv[optind]) {
+		real = realpath(argv[optind], NULL);
+		if (!real)
+			die("invalid device path \"%s\"\n", argv[optind]);
+		strncpy(mo->dev, real, PATH_MAX);
+		free(real);
+	}
 
 	++optind;
 
 	if (optind < argc && argv[optind]) {
-		strncpy(mo->dir, argv[optind], PATH_MAX);
-		l = strlen(mo->dir) - 1;
-		while (l > 0 && mo->dir[l] == '/') {
-			mo->dir[l] = '\0';
-			l--;
-		};
+		real = realpath(argv[optind], NULL);
+		if (!real)
+			die("invalid mount point path \"%s\"\n", argv[optind]);
+		strncpy(mo->dir, real, PATH_MAX);
+		free(real);
 	}
 
 	log_debug("mount %s %s", mo->dev, mo->dir);



             reply	other threads:[~2007-04-23 19:18 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-04-23 19:18 teigland [this message]
  -- strict thread matches above, loose matches on Subject: below --
2008-01-18 17:51 [Cluster-devel] cluster/gfs2/mount mount.gfs2.c adas
2008-01-18 17:51 adas
2007-08-06 19:26 teigland
2007-08-06 19:23 teigland
2007-07-26 16:36 cfeist
2007-07-26 16:34 cfeist
2007-07-19 22:21 adas
2007-07-19 22:21 adas
2007-07-19 22:20 adas
2007-05-14 19:08 rpeterso
2007-05-14 19:01 rpeterso
2007-04-23 19:18 teigland
2006-08-11 16:59 teigland

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20070423191818.15012.qmail@sourceware.org \
    --to=teigland@sourceware.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).