version 1.3, 1993/08/26 00:44:32 |
version 1.6, 1995/02/27 03:43:12 |
|
|
|
/* $NetBSD$ */ |
|
|
/* |
/* |
* Copyright (c) 1980, 1988 Regents of the University of California. |
* Copyright (c) 1980, 1988, 1993 |
* All rights reserved. |
* The Regents of the University of California. All rights reserved. |
* |
* |
* Redistribution and use in source and binary forms, with or without |
* Redistribution and use in source and binary forms, with or without |
* modification, are permitted provided that the following conditions |
* modification, are permitted provided that the following conditions |
|
|
*/ |
*/ |
|
|
#if defined(LIBC_SCCS) && !defined(lint) |
#if defined(LIBC_SCCS) && !defined(lint) |
/*static char *sccsid = "from: @(#)fstab.c 5.15 (Berkeley) 2/23/91";*/ |
#if 0 |
static char *rcsid = "$Id$"; |
static char sccsid[] = "@(#)fstab.c 8.1 (Berkeley) 6/4/93"; |
|
#else |
|
static char rcsid[] = "$NetBSD$"; |
|
#endif |
#endif /* LIBC_SCCS and not lint */ |
#endif /* LIBC_SCCS and not lint */ |
|
|
#include <sys/errno.h> |
#include <errno.h> |
#include <fstab.h> |
#include <fstab.h> |
#include <unistd.h> |
|
#include <stdio.h> |
#include <stdio.h> |
#include <stdlib.h> |
#include <stdlib.h> |
#include <string.h> |
#include <string.h> |
|
#include <unistd.h> |
|
|
static FILE *_fs_fp; |
static FILE *_fs_fp; |
static struct fstab _fs_fstab; |
static struct fstab _fs_fstab; |
static error(); |
|
|
static error __P((int)); |
|
static fstabscan __P((void)); |
|
|
static |
static |
fstabscan() |
fstabscan() |
|
|
/* OLD_STYLE_FSTAB */ |
/* OLD_STYLE_FSTAB */ |
if (!strpbrk(cp, " \t")) { |
if (!strpbrk(cp, " \t")) { |
_fs_fstab.fs_spec = strtok(cp, ":\n"); |
_fs_fstab.fs_spec = strtok(cp, ":\n"); |
|
if (!_fs_fstab.fs_spec || *_fs_fstab.fs_spec == '#') |
|
continue; |
_fs_fstab.fs_file = strtok((char *)NULL, ":\n"); |
_fs_fstab.fs_file = strtok((char *)NULL, ":\n"); |
_fs_fstab.fs_type = strtok((char *)NULL, ":\n"); |
_fs_fstab.fs_type = strtok((char *)NULL, ":\n"); |
if (_fs_fstab.fs_type) { |
if (_fs_fstab.fs_type) { |
|
|
error(err) |
error(err) |
int err; |
int err; |
{ |
{ |
char *p; |
struct iovec iov[5]; |
|
|
(void)write(STDERR_FILENO, "fstab: ", 7); |
iov[0].iov_base = "fstab: "; |
(void)write(STDERR_FILENO, _PATH_FSTAB, sizeof(_PATH_FSTAB) - 1); |
iov[0].iov_len = 7; |
p = strerror(err); |
iov[1].iov_base = _PATH_FSTAB; |
(void)write(STDERR_FILENO, p, strlen(p)); |
iov[1].iov_len = sizeof(_PATH_FSTAB) - 1; |
(void)write(STDERR_FILENO, "\n", 1); |
iov[2].iov_base = ": "; |
|
iov[2].iov_len = 2; |
|
iov[3].iov_base = strerror(err); |
|
iov[3].iov_len = strlen(iov[3].iov_base); |
|
iov[4].iov_base = "\n"; |
|
iov[4].iov_len = 1; |
|
(void)writev(STDERR_FILENO, iov, 5); |
} |
} |