Commit | Line | Data |
---|---|---|
b9fb70ca RW |
1 | This patch was taken from Nixpkgs. |
2 | ||
3 | From 616381bc25b0e90198683fb049f994e82d467d96 Mon Sep 17 00:00:00 2001 | |
4 | From: =?UTF-8?q?Niklas=20Hamb=C3=BCchen?= <mail@nh2.me> | |
5 | Date: Sat, 13 May 2017 02:45:49 +0200 | |
6 | Subject: [PATCH] Don't use hardcoded /sbin, /usr/bin etc. paths. Fixes | |
7 | #1450546. | |
8 | ||
9 | Instead, rely on programs to be in PATH, as gluster already | |
10 | does in many places across its code base. | |
11 | ||
12 | Change-Id: Id21152fe42f5b67205d8f1571b0656c4d5f74246 | |
13 | --- | |
14 | contrib/fuse-lib/mount-common.c | 8 ++++---- | |
15 | xlators/mgmt/glusterd/src/glusterd-ganesha.c | 6 +++--- | |
16 | xlators/mgmt/glusterd/src/glusterd-quota.c | 6 +++--- | |
17 | xlators/mgmt/glusterd/src/glusterd-snapshot.c | 4 ++-- | |
18 | xlators/mgmt/glusterd/src/glusterd-utils.c | 14 +------------- | |
19 | 5 files changed, 13 insertions(+), 25 deletions(-) | |
20 | ||
21 | diff --git a/contrib/fuse-lib/mount-common.c b/contrib/fuse-lib/mount-common.c | |
22 | index e9f80fe81..6380dd867 100644 | |
23 | --- a/contrib/fuse-lib/mount-common.c | |
24 | +++ b/contrib/fuse-lib/mount-common.c | |
25 | @@ -255,16 +255,16 @@ fuse_mnt_umount (const char *progname, const char *abs_mnt, | |
26 | exit (1); | |
27 | } | |
28 | #ifdef GF_LINUX_HOST_OS | |
29 | - execl ("/bin/umount", "/bin/umount", "-i", rel_mnt, | |
30 | + execl ("umount", "umount", "-i", rel_mnt, | |
31 | lazy ? "-l" : NULL, NULL); | |
32 | - GFFUSE_LOGERR ("%s: failed to execute /bin/umount: %s", | |
33 | + GFFUSE_LOGERR ("%s: failed to execute umount: %s", | |
34 | progname, strerror (errno)); | |
35 | #elif __NetBSD__ | |
36 | /* exitting the filesystem causes the umount */ | |
37 | exit (0); | |
38 | #else | |
39 | - execl ("/sbin/umount", "/sbin/umount", "-f", rel_mnt, NULL); | |
40 | - GFFUSE_LOGERR ("%s: failed to execute /sbin/umount: %s", | |
41 | + execl ("umount", "umount", "-f", rel_mnt, NULL); | |
42 | + GFFUSE_LOGERR ("%s: failed to execute umount: %s", | |
43 | progname, strerror (errno)); | |
44 | #endif /* GF_LINUX_HOST_OS */ | |
45 | exit (1); | |
46 | diff --git a/xlators/mgmt/glusterd/src/glusterd-quota.c b/xlators/mgmt/glusterd/src/glusterd-quota.c | |
47 | index 0e6629cf0..fcb4738b7 100644 | |
48 | --- a/xlators/mgmt/glusterd/src/glusterd-quota.c | |
49 | +++ b/xlators/mgmt/glusterd/src/glusterd-quota.c | |
50 | @@ -30,7 +30,7 @@ | |
51 | ||
52 | #ifndef _PATH_SETFATTR | |
53 | # ifdef GF_LINUX_HOST_OS | |
54 | -# define _PATH_SETFATTR "/usr/bin/setfattr" | |
55 | +# define _PATH_SETFATTR "setfattr" | |
56 | # endif | |
57 | # ifdef __NetBSD__ | |
58 | # define _PATH_SETFATTR "/usr/pkg/bin/setfattr" | |
59 | @@ -335,7 +335,7 @@ _glusterd_quota_initiate_fs_crawl (glusterd_conf_t *priv, | |
60 | ||
61 | if (type == GF_QUOTA_OPTION_TYPE_ENABLE || | |
62 | type == GF_QUOTA_OPTION_TYPE_ENABLE_OBJECTS) | |
63 | - runner_add_args (&runner, "/usr/bin/find", ".", NULL); | |
64 | + runner_add_args (&runner, "find", ".", NULL); | |
65 | ||
66 | else if (type == GF_QUOTA_OPTION_TYPE_DISABLE) { | |
67 | ||
68 | @@ -351,7 +351,7 @@ _glusterd_quota_initiate_fs_crawl (glusterd_conf_t *priv, | |
69 | VIRTUAL_QUOTA_XATTR_CLEANUP_KEY, "1", | |
70 | "{}", "\\", ";", NULL); | |
71 | #else | |
72 | - runner_add_args (&runner, "/usr/bin/find", ".", | |
73 | + runner_add_args (&runner, "find", ".", | |
74 | "-exec", _PATH_SETFATTR, "-n", | |
75 | VIRTUAL_QUOTA_XATTR_CLEANUP_KEY, "-v", | |
76 | "1", "{}", "\\", ";", NULL); | |
77 | diff --git a/xlators/mgmt/glusterd/src/glusterd-snapshot.c b/xlators/mgmt/glusterd/src/glusterd-snapshot.c | |
78 | index da0152366..f0d135350 100644 | |
79 | --- a/xlators/mgmt/glusterd/src/glusterd-snapshot.c | |
80 | +++ b/xlators/mgmt/glusterd/src/glusterd-snapshot.c | |
81 | @@ -121,7 +121,7 @@ glusterd_build_snap_device_path (char *device, char *snapname, | |
82 | } | |
83 | ||
84 | runinit (&runner); | |
85 | - runner_add_args (&runner, "/sbin/lvs", "--noheadings", "-o", "vg_name", | |
86 | + runner_add_args (&runner, "lvs", "--noheadings", "-o", "vg_name", | |
87 | device, NULL); | |
88 | runner_redir (&runner, STDOUT_FILENO, RUN_PIPE); | |
89 | snprintf (msg, sizeof (msg), "Get volume group for device %s", device); | |
90 | @@ -1982,7 +1982,7 @@ glusterd_is_thinp_brick (char *device, uint32_t *op_errno) | |
91 | ||
92 | runinit (&runner); | |
93 | ||
94 | - runner_add_args (&runner, "/sbin/lvs", "--noheadings", "-o", "pool_lv", | |
95 | + runner_add_args (&runner, "lvs", "--noheadings", "-o", "pool_lv", | |
96 | device, NULL); | |
97 | runner_redir (&runner, STDOUT_FILENO, RUN_PIPE); | |
98 | runner_log (&runner, this->name, GF_LOG_DEBUG, msg); | |
99 | diff --git a/xlators/mgmt/glusterd/src/glusterd-utils.c b/xlators/mgmt/glusterd/src/glusterd-utils.c | |
100 | index 51db13df0..6fa7b92f9 100644 | |
101 | --- a/xlators/mgmt/glusterd/src/glusterd-utils.c | |
102 | +++ b/xlators/mgmt/glusterd/src/glusterd-utils.c | |
103 | @@ -6027,7 +6027,6 @@ static struct fs_info { | |
104 | char *fs_tool_pattern; | |
105 | char *fs_tool_pkg; | |
106 | } glusterd_fs[] = { | |
107 | - /* some linux have these in /usr/sbin/and others in /sbin/? */ | |
108 | { "xfs", "xfs_info", NULL, "isize=", "xfsprogs" }, | |
109 | { "ext3", "tune2fs", "-l", "Inode size:", "e2fsprogs" }, | |
110 | { "ext4", "tune2fs", "-l", "Inode size:", "e2fsprogs" }, | |
111 | @@ -6048,7 +6047,6 @@ glusterd_add_inode_size_to_dict (dict_t *dict, int count) | |
112 | char *trail = NULL; | |
113 | runner_t runner = {0, }; | |
114 | struct fs_info *fs = NULL; | |
115 | - char fs_tool_name[256] = {0, }; | |
116 | static dict_t *cached_fs = NULL; | |
117 | ||
118 | memset (key, 0, sizeof (key)); | |
119 | @@ -6085,17 +6083,7 @@ glusterd_add_inode_size_to_dict (dict_t *dict, int count) | |
120 | cur_word = "N/A"; | |
121 | goto cached; | |
122 | } | |
123 | - | |
124 | - snprintf (fs_tool_name, sizeof (fs_tool_name), | |
125 | - "/usr/sbin/%s", fs->fs_tool_name); | |
126 | - if (sys_access (fs_tool_name, R_OK|X_OK) == 0) | |
127 | - runner_add_arg (&runner, fs_tool_name); | |
128 | - else { | |
129 | - snprintf (fs_tool_name, sizeof (fs_tool_name), | |
130 | - "/sbin/%s", fs->fs_tool_name); | |
131 | - if (sys_access (fs_tool_name, R_OK|X_OK) == 0) | |
132 | - runner_add_arg (&runner, fs_tool_name); | |
133 | - } | |
134 | + runner_add_arg (&runner, fs->fs_tool_name); | |
135 | break; | |
136 | } | |
137 | } | |
138 | -- | |
139 | 2.12.0 | |
140 |