Deleted Added
full compact
38c38
< __FBSDID("$FreeBSD: head/lib/libc/gen/fstab.c 90045 2002-02-01 01:32:19Z obrien $");
---
> __FBSDID("$FreeBSD: head/lib/libc/gen/fstab.c 113219 2003-04-07 12:55:00Z mdodd $");
56a57,59
> static char *path_fstab;
> static char fstab_path[PATH_MAX];
> static int fsp_set = 0;
61a65,90
> void
> setfstab(const char *file)
> {
>
> if (file == NULL) {
> path_fstab = _PATH_FSTAB;
> } else {
> strncpy(fstab_path, file, PATH_MAX);
> fstab_path[PATH_MAX - 1] = '\0';
> path_fstab = fstab_path;
> }
> fsp_set = 1;
>
> return;
> }
>
> const char *
> getfstab (void)
> {
>
> if (fsp_set)
> return (path_fstab);
> else
> return (_PATH_FSTAB);
> }
>
229c258,264
< if ((_fs_fp = fopen(_PATH_FSTAB, "r")) != NULL) {
---
> if (fsp_set == 0) {
> if (issetugid())
> setfstab(NULL);
> else
> setfstab(getenv("PATH_FSTAB"));
> }
> if ((_fs_fp = fopen(path_fstab, "r")) != NULL) {
243a279,280
>
> fsp_set = 0;
254c291
< (void)_write(STDERR_FILENO, _PATH_FSTAB, sizeof(_PATH_FSTAB) - 1);
---
> (void)_write(STDERR_FILENO, path_fstab, strlen(path_fstab));