View | Details | Raw Unified | Return to bug 210957
Collapse All | Expand All

(-)b/usr.sbin/mountd/exports.5 (-1 / +1 lines)
Lines 108-114 any Link Here
108
.Dq Pa \&.
108
.Dq Pa \&.
109
or
109
or
110
.Dq Pa ..
110
.Dq Pa ..
111
components.
111
components or end with a trailing / other than "/" itself.
112
Mount points for a file system may appear on multiple lines each with
112
Mount points for a file system may appear on multiple lines each with
113
different sets of hosts and export options.
113
different sets of hosts and export options.
114
.Pp
114
.Pp
(-)b/usr.sbin/mountd/mountd.c (-1 / +6 lines)
Lines 3149-3155 check_options(struct dirlist *dp) Link Here
3149
}
3149
}
3150
3150
3151
/*
3151
/*
3152
 * Check an absolute directory path for any symbolic links. Return true
3152
 * Check an absolute directory path for any symbolic links and
3153
 * the path does not end with a /. Return true
3153
 */
3154
 */
3154
int
3155
int
3155
check_dirpath(char *dirp)
3156
check_dirpath(char *dirp)
Lines 3168-3173 check_dirpath(char *dirp) Link Here
3168
		}
3169
		}
3169
		cp++;
3170
		cp++;
3170
	}
3171
	}
3172
	--cp;
3173
	/* If dirp is not root and ends with a / */
3174
	if (cp != dirp && *cp == '/')
3175
		ret = 0;
3171
	if (lstat(dirp, &sb) < 0 || !S_ISDIR(sb.st_mode))
3176
	if (lstat(dirp, &sb) < 0 || !S_ISDIR(sb.st_mode))
3172
		ret = 0;
3177
		ret = 0;
3173
	return (ret);
3178
	return (ret);

Return to bug 210957