Virgin import of AMD (am-utils) v6.0.1

This commit is contained in:
obrien 1999-09-15 02:50:52 +00:00
parent c9384f1d98
commit 422815db96
136 changed files with 4832 additions and 803 deletions

View File

@ -32,6 +32,10 @@ for hesiod zone files. Always use /etc/amd.conf if exists.
August 8, 1998: add detection support for NFS V.3 for NetBSD 1.3F.
February 1, 1998: fixes for NetBSD to better detect its features.
September 4, 1999: assorted fixes for NetBSD 1.4+.
* Hannes Reinecke <hare@MathI.UNI-Heidelberg.DE>
Back in 1995, contributed code for linux. A new parser for file system
@ -112,6 +116,15 @@ February 24, 1998: lots of patches for ultrix 4.3 port.
February 28, 1998: lots of documentation fixes!
January 8, 1999: texi fixes, and more Ultrix 4.3 fixes, among others.
January 11, 1999: hesiod_isup function. Fix format errors in dlog/plog.
Remove obsolete or unnecessary files/macros. Don't report disabled file
systems. More misc fixes.
February 3, 1998: don't start autofs listener unless autofs maps were in
use.
* Jason Thorpe <thorpej@nas.nasa.gov>
August 25, 1997: make amd work when talking to NIS+ servers in NIS
@ -154,6 +167,8 @@ November 5, 1997: NFS v.3 support for AIX 4.2.1, which does *not* include
headers for this. Bill had to guess at the right structures, field names,
sizes, alignment, etc.
January 15, 1999: small ldap bug fixes.
* Stefan Vogel <vogel@physik-rzu.unizh.ch>
November 14, 1997: typo in the subscription instructions to amd-dev.
@ -215,3 +230,36 @@ of a looked up entry before unmounting it.
* Douglas K. Rand" <rand@aero.und.edu>
December 3, 1998: case insensitive host name match for nfsl.
* David Wolfskill <dhw@whistle.com>
January 28, 1999: don't turn on/off noconn option if it was already in that
state.
* Jeffrey C Honig <jch@BSDI.COM>
March 14, 1999: clean up more autogenerated files upon "make distclean".
March 15, 1999: avoid overly verbose NIS warning even on systems that don't
run NIS. On BSD systems, wire.c uses getifaddrs(), sysctl(), IRS routines,
and more fixes. Numerous IP packet security fixes.
March 16, 1999: documentation typos. new cdfs options. ufs structure
detection for bsdi4.
* Paul Balyoz <pbalyoz@sedona.ch.intel.com>
March 26, 1999: ensure lostaltmail displays Y2K compliant dates.
* Jon Peatfield <J.S.Peatfield@damtp.cam.ac.uk>
March 30, 1999: turn off incomplete NFS V.3 support in HPUX 10.20.
* Peter Breitenlohner <peb@mppmu.mpg.de>
July 24, 1999: patch for linux 2.2.x to work with older libc5 systems, and
nis_isup mis-logic fixes.
* Dale Talcott <aeh@quest.cc.purdue.edu>
July 26, 1999: added NFS3 support for AIX mounting.
* Christophe Kalt <Christophe-Kalt@deshaw.com>
July 14, 1999: add netgrpd() syntax function which uses FQHN.
* Andrew J. Korty <ajk@purdue.edu>
September 5, 1999: pawd works for type:=nfsl.

View File

@ -36,12 +36,35 @@ main()
exit(0);
}
It is possible that sufficiently newer version of libc for RH4.2 fix this
problem.
(3) mips-dec-ultrix4.3
Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> reports
[3A] At least the gcc 2.7.0 fixincludes-mangled <sys/utsname.h> needs a
[3A] One needs the Kernel Config Files (UDTBIN430) subset installed to
compile am-utils, otherwise essential header files (net/if.h, net/route.h,
rpcsvc/mount.h, rpcsvc/yp_prot.h, rpcsvc/ypclnt.h, sys/proc.h) are
missing.
[3B] It's probably impossible to build am-utils with DEC C on Ultrix V4.3.
This compiler is pseudo-ANSI only. Maybe the new ANSI C compiler in V4.3A
and beyond will do. I successfully used gcc 2.8.1.
[3C] You need to build against a recent libhesiod (I used 3.0.2) and
libresolv/lib44bsd (I used BIND 4.9.5-P1). The resolver routines in
libc seem to cause random memory corruption. It is necessary to specify
LIBS=-l44bsd. lib44bsd is a helper library of libresolv used to supply
functions like strdup which are missing on the host system. This isn't
currently autoconfiscated.
[3D] You need to configure with CONFIG_SHELL=/bin/sh5 /bin/sh5 buildall;
/bin/sh cannot handle the shell functions used in buildall and is both
buggy and slow.
[3E] At least the gcc 2.7.0 fixincludes-mangled <sys/utsname.h> needs a
forward declaration of struct utsname to avoid lots of gcc warnings:
RCS file: RCS/utsname.h,v
@ -58,9 +81,6 @@ diff -u -r1.1 utsname.h
#endif
#define __SYS_NMLN 32
[3B] It autoconfigures and compiles cleanly, but currently hangs after a
couple of hours without leaving any traces in the syslog output.
(4) powerpc-ibm-aix4.2.1.0

View File

@ -1,4 +1,4 @@
Copyright (c) 1997-1998 Erez Zadok
Copyright (c) 1997-1999 Erez Zadok
Copyright (c) 1989 Jan-Simon Pendry
Copyright (c) 1989 Imperial College of Science, Technology & Medicine
Copyright (c) 1989 The Regents of the University of California.

File diff suppressed because it is too large Load Diff

View File

@ -10,6 +10,7 @@ SYSTEM AUTOCONF COMPILE RUN SHLIB
alpha-dec-osf2.1 ezk ezk ezk !ezk
alpha-dec-osf4.0 ezk ezk dsr[3] ezk
alphaev5-unknown-linux-gnu ezk ezk finkel ezk
alphaev5-unknown-linux-gnu-rh5.2 ezk ezk ezk ezk
hppa1.0-hp-hpux11.00 ezk ezk ezk
hppa1.1-hp-hpux10.10 ezk ezk ezk ezk
hppa1.1-hp-hpux10.20 ezk ezk ezk ezk
@ -21,6 +22,7 @@ i386-pc-bsdi2.1 ezk ezk ezk !ezk
i386-pc-bsdi3.0 ezk ezk ezk !ezk
i386-pc-bsdi3.1 ezk ezk ezk !ezk
i386-pc-bsdi4.0 ezk ezk ezk ezk
i386-pc-bsdi4.0.1 ezk ezk ezk ezk
i386-pc-solaris2.5.1 ezk ezk ezk ezk
i386-pc-solaris2.6 ezk ezk ezk ezk
i386-pc-solaris2.7 ezk ezk ezk ezk
@ -30,21 +32,34 @@ i386-unknown-freebsd2.2.6 ezk ezk ezk ezk
i386-unknown-freebsd2.2.7 ezk ezk ezk ezk
i386-unknown-freebsd2.2.8 ezk ezk ezk ezk
i386-unknown-freebsd3.0 ezk ezk ezk ezk
i386-unknown-freebsdelf3.0 ezk ezk ezk ezk
i386-unknown-freebsdelf3.1 ezk ezk ezk ezk
i386-unknown-freebsdelf3.2 ezk ezk ezk ezk
i386-unknown-freebsdelf4.0 ezk ezk ezk ezk
i386-unknown-netbsd1.2.1 ezk ezk ezk ezk
i386-unknown-netbsd1.3 ezk ezk ezk ezk
i386-unknown-netbsd1.3.1 ezk ezk ezk ezk
i386-unknown-netbsd1.3.2 ezk ezk ezk ezk
i386-unknown-netbsd1.3.3 ezk ezk ezk ezk
i386-unknown-netbsd1.4 ezk ezk ezk ezk
i386-unknown-openbsd2.1 ezk ezk ezk ezk
i386-unknown-openbsd2.2 ezk ezk ezk ezk
i386-unknown-openbsd2.3 ezk ezk ezk ezk
i386-unknown-openbsd2.4 ezk ezk ezk ezk
i386-unknown-openbsd2.5 ezk ezk ezk ezk
i486-ncr-sysv4.3.03 ezk ezk ezk
i486-pc-linux-gnu-rh6.0 ezk ezk ezk ezk
i486-pc-linux-gnulibc1 ezk ezk ezk ezk
i486-pc-linux-gnulibc1-rh4.2 ezk ezk ezk ezk
i486-pc-linux-gnuoldld ezk ezk ezk ezk
i586-pc-linux-gnu ezk ezk ezk ezk
i586-pc-linux-gnu-rh5.2 ezk ezk ezk ezk
i586-pc-linux-gnu-rh6.0 ezk ezk ezk ezk
i586-pc-linux-gnulibc1 ezk ezk ezk ezk
i586-pc-linux-gnulibc1-rh4.2 ezk ezk ezk ezk
i686-pc-linux-gnu ezk ezk ezk ezk
i686-pc-linux-gnu-rh5.2 ezk ezk ezk ezk
i686-pc-linux-gnu-rh6.0 ezk ezk ezk ezk
i686-pc-linux-gnulibc ezk ezk ezk ezk
i686-pc-linux-gnulibc1 ezk ezk ezk ezk
m68k-hp-hpux9.00 ezk[4] ezk[4] nrh/ezk

View File

@ -1,7 +1,7 @@
Begin3
Title: am-utils
Version: 6.0
Entered-date: 01JAN99
Version: 6.0.1
Entered-date: 08SEP99
Description: BSD Automounter Utilities
Replaces the old amd-upl102. Offers NFS V3 support, many
new features, and numerous ports. The home page for
@ -10,9 +10,9 @@ Keywords: amd amq hlfsd fsinfo wire-test fixmount mk-amd-map automount
Author: ezk@cs.columbia.edu (Erez Zadok)
Maintained-by: ezk@cs.columbia.edu (Erez Zadok)
Primary-site: shekel.mcl.cs.columbia.edu /pub/am-utils
1.6MB am-utils-6.0.tar.gz
1.6MB am-utils.tar.gz
1.6MB am-utils-snapshot.tar.gz
1.3MB am-utils-6.0.1.tar.gz
1.3MB am-utils.tar.gz
1.3MB am-utils-snapshot.tar.gz
Alternate-site: http://www.cs.columbia.edu/~ezk/am-utils/mirrors.html
Original-site: ftp.cs.columbia.edu /pub/amd
Platforms: all modern Unix systems

View File

@ -28,8 +28,8 @@ Europe:
Sweden:
ftp://ftp.sunet.se/pub/unix/admin/am-utils
Maintainer: archive@ftp.sunet.se
Sweden:
ftp://ftp.matematik.su.se/pub/mirrors/shekel.mcl.cs.columbia.edu/pub/am-utils
Sweden (Stockholm University, Math Depat):
ftp://mirror.matematik.su.se/pub/am-utils
Maintainer: leifj@matematik.su.se
UK:
ftp://sunsite.org.uk/packages/am-utils

View File

@ -1,3 +1,63 @@
# -*- text -*-
*** Notes specific to am-utils version 6.0.1:
- updated or minor new ports:
i386-pc-bsdi4.0.1
i386-unknown-freebsdelf3.0
i386-unknown-freebsdelf3.1
i386-unknown-freebsdelf3.2
i386-unknown-freebsdelf4.0
i386-unknown-netbsd1.4
i386-unknown-openbsd2.5
powerpc-unknown-linux-gnu
- automount2amd added, a new script to convert Sun automount maps to Amd maps
- new map function netgrpd(ARG), same as netgrp() but matches FQHN
- 'ignore' is a generic mount option
- hesiod info service isup() function to check if service is up
- more Y2K fixes (see README.y2k for the full story)
- using alloca.c on systems that don't have it (hpux9 with /bin/cc)
- configure script reduced in size by using M4/sh loops instead of repeated
entries
- documentation updates
- too many bugs fixed to list here:
'addopts' option works with 'remopts' as well as 'opts'
AIX can perform NFS V.3 mounts explicitly
NIS is_up fixed, especially for NIS+ running in compatibility mode
amd -v incorrectly listing file systems that don't really work
amd's own mounts use reserved ports if possible
browsable directories works for Linux 2.3 (NFS cookies)
bsd44 systems check for isofs flags
bsd44 systems check for new options: norrio, gens, and extatt
buildall works better on Ultrix's /bin/sh
compile and build on Linux kernels 2.2 and newer
compile and build on RedHat Linux 6.0 (glibc 2.1)
compile and build on Solaris 7 (with or without vendor LDAP)
completely eliminate all of amd's amq -M code, when not enabled
correctly interpret failure code of unmount of type:=program
don't create autofs listener service unless used
don't list or process amq's -M option unless feature was turned on
don't turn on/off noconn option if it was already in that state
ldap info service: don't strcmp null strings
lostaltmail correctly sets struct sockaddr_in
make sure Linux systems have configured kernel headers
test for bsize/namlen fields in nfs_args (linux mount versions 2/3)
turn off broken NFS V.3 support for HPUX
use getifaddrs() on bsd44 systems makes wire.c more reliable
use matching NFS rsize/wsize on Linux 2.0 and 2.[123] kernels.
verify that RPC requests come from reserved, privileged local ports
warn when Linux kernel headers mismatch with running kernel
pawd works for type:=nfsl too
*** Notes specific to am-utils version 6.0:
- updated or minor new ports:

View File

@ -12,6 +12,17 @@ the ctime(3) call.
However, on Friday, September 18th 1998, Matthew Crosby <mcrosby@ms.com>
reported that they evaluated 6.0a16 and found it to be compliant.
On March 26, 1999, Paul Balyoz <pbalyoz@sedona.ch.intel.com> submitted a
patch to lostaltmail which makes it print Y2K compliant dates. He used a
code scanner and manually "eyeballed" the code and could not find any more
problems. Paul's patch is included in am-utils-6.0.1s7 and newer versions.
Paul also said that other 2-digit years used in am-utils are "harmless."
NOTE: NONE OF THE PERSONS MENTIONED HERE, AUTHOR INCLUDED, ARE WILLING TO
CERTIFY AM-UTILS AS Y2K COMPLIANT. USE AT YOUR OWN RISK.
---
Erez Zadok.
Maintainer, am-utils package and AMD-DEV list.
Email: amd-dev-owner@majordomo.cs.columbia.edu

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1989 Jan-Simon Pendry
* Copyright (c) 1989 Imperial College of Science, Technology & Medicine
* Copyright (c) 1989 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: am_ops.c,v 1.2 1998/12/27 06:24:45 ezk Exp $
* $Id: am_ops.c,v 1.4 1999/03/13 17:03:26 ezk Exp $
*
*/
@ -164,7 +164,7 @@ ops_showamfstypes(char *buf)
if (ap[1])
strcat(buf, ", ");
l += strlen((*ap)->fs_type) + 2;
if (l > 60) {
if (l > 62) {
l = 0;
strcat(buf, "\n ");
}
@ -413,15 +413,32 @@ ops_match(am_opts *fo, char *key, char *g_key, char *path, char *keym, char *map
/*
* If addopts option was used, then append it to the
* current options.
* current options and remote mount options.
*/
if (fo->opt_addopts) {
char *mergedstr;
mergedstr = merge_opts(fo->opt_opts, fo->opt_addopts);
plog(XLOG_USER, "merge opts \"%s\" add \"%s\" => \"%s\"",
fo->opt_opts, fo->opt_addopts, mergedstr);
XFREE(fo->opt_opts);
fo->opt_opts = mergedstr;
if (STREQ(fo->opt_opts, fo->opt_remopts)) {
/* optimize things for the common case where opts==remopts */
char *mergedstr;
mergedstr = merge_opts(fo->opt_opts, fo->opt_addopts);
plog(XLOG_USER, "merge rem/opts \"%s\" add \"%s\" => \"%s\"",
fo->opt_opts, fo->opt_addopts, mergedstr);
XFREE(fo->opt_opts);
XFREE(fo->opt_remopts);
fo->opt_opts = mergedstr;
fo->opt_remopts = strdup(mergedstr);
} else {
char *mergedstr, *remmergedstr;
mergedstr = merge_opts(fo->opt_opts, fo->opt_addopts);
plog(XLOG_USER, "merge opts \"%s\" add \"%s\" => \"%s\"",
fo->opt_opts, fo->opt_addopts, mergedstr);
XFREE(fo->opt_opts);
fo->opt_opts = mergedstr;
remmergedstr = merge_opts(fo->opt_remopts, fo->opt_addopts);
plog(XLOG_USER, "merge remopts \"%s\" add \"%s\" => \"%s\"",
fo->opt_remopts, fo->opt_addopts, remmergedstr);
XFREE(fo->opt_remopts);
fo->opt_remopts = remmergedstr;
}
}
/*

View File

@ -1,5 +1,5 @@
.\"
.\" Copyright (c) 1997-1998 Erez Zadok
.\" Copyright (c) 1997-1999 Erez Zadok
.\" Copyright (c) 1989 Jan-Simon Pendry
.\" Copyright (c) 1989 Imperial College of Science, Technology & Medicine
.\" Copyright (c) 1989 The Regents of the University of California.
@ -38,7 +38,7 @@
.\"
.\" %W% (Berkeley) %G%
.\"
.\" $Id: amd.8,v 1.1.1.1 1998/11/05 02:04:51 ezk Exp $
.\" $Id: amd.8,v 1.2 1999/01/10 21:53:40 ezk Exp $
.\"
.TH AMD 8 "3 November 1989"
.SH NAME

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1989 Jan-Simon Pendry
* Copyright (c) 1989 Imperial College of Science, Technology & Medicine
* Copyright (c) 1989 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: amd.c,v 1.2 1998/12/27 06:24:45 ezk Exp $
* $Id: amd.c,v 1.5 1999/02/04 07:24:14 ezk Exp $
*
*/
@ -55,13 +55,7 @@
struct amu_global_options gopt; /* where global options are stored */
char pid_fsname[16 + MAXHOSTNAMELEN]; /* "kiska.southseas.nz:(pid%d)" */
#if 0
char *progname; /* "amd" */
#endif
char *hostdomain = "unknown.domain";
#if 0
char hostname[MAXHOSTNAMELEN + 1] = "localhost"; /* Hostname */
#endif
char hostd[2 * MAXHOSTNAMELEN + 1]; /* Host+domain */
char *endian = ARCH_ENDIAN; /* Big or Little endian */
char *cpu = HOST_CPU; /* CPU type */
@ -73,11 +67,6 @@ int orig_umask = 022;
int select_intr_valid;
jmp_buf select_intr;
#if 0
pid_t mypid; /* Current process id */
serv_state amd_state;
int foreground = 1; /* This is the top-level server */
#endif
struct amd_stats amd_stats; /* Server statistics */
struct in_addr myipaddr; /* (An) IP address of this host */
time_t do_mapc_reload = 0; /* mapc_reload() call required? */
@ -490,7 +479,7 @@ main(int argc, char *argv[])
* can mount the automounter.
*/
amu_get_myaddress(&myipaddr);
plog(XLOG_INFO, "My ip addr is 0x%x", htonl(myipaddr.s_addr));
plog(XLOG_INFO, "My ip addr is %s", inet_ntoa(myipaddr));
/* avoid hanging on other NFS servers if started elsewhere */
if (chdir("/") < 0)
@ -500,7 +489,7 @@ main(int argc, char *argv[])
* Now check we are root.
*/
if (geteuid() != 0) {
plog(XLOG_FATAL, "Must be root to mount filesystems (euid = %d)", geteuid());
plog(XLOG_FATAL, "Must be root to mount filesystems (euid = %ld)", (long) geteuid());
going_down(1);
}

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1990 Jan-Simon Pendry
* Copyright (c) 1990 Imperial College of Science, Technology & Medicine
* Copyright (c) 1990 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: amd.h,v 1.1.1.1 1998/11/05 02:04:51 ezk Exp $
* $Id: amd.h,v 1.3 1999/02/04 07:24:14 ezk Exp $
*
*/
@ -280,6 +280,7 @@ extern bool_t xdr_mountres3(XDR *xdrs, mountres3 *objp);
#ifdef HAVE_FS_AUTOFS
extern SVCXPRT *autofsxprt;
extern u_short autofs_port;
extern int amd_use_autofs;
extern int autofs_mount(am_node *mp);
extern int autofs_umount(am_node *mp);

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1990 Jan-Simon Pendry
* Copyright (c) 1990 Imperial College of Science, Technology & Medicine
* Copyright (c) 1990 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: amfs_auto.c,v 1.1.1.1 1998/11/05 02:04:46 ezk Exp $
* $Id: amfs_auto.c,v 1.4 1999/08/09 06:09:43 ezk Exp $
*
*/
@ -60,12 +60,13 @@
/* DEVELOPERS: turn this on for special debugging of readdir code */
#undef DEBUG_READDIR
#define DOT_DOT_COOKIE (u_int) 1
/****************************************************************************
*** STRUCTURES ***
****************************************************************************/
/****************************************************************************
*** FORWARD DEFINITIONS ***
****************************************************************************/
@ -609,8 +610,8 @@ amfs_auto_bgmount(struct continuation * cp, int mpe)
* Don't try logging the string from mf, since it may be bad!
*/
if (cp->fs_opts.opt_fs != mf->mf_fo->opt_fs)
plog(XLOG_ERROR, "use %s instead of 0x%x",
cp->fs_opts.opt_fs, mf->mf_fo->opt_fs);
plog(XLOG_ERROR, "use %s instead of 0x%lx",
cp->fs_opts.opt_fs, (unsigned long) mf->mf_fo->opt_fs);
mp->am_link = str3cat((char *) 0,
cp->fs_opts.opt_fs, "/", link_dir);
@ -695,7 +696,7 @@ amfs_auto_bgmount(struct continuation * cp, int mpe)
int i = atoi(mf->mf_fo->opt_delay);
if (i > 0 && clocktime() < (cp->start + i)) {
#ifdef DEBUG
dlog("Mount of %s delayed by %ds", mf->mf_mount, i - clocktime() + cp->start);
dlog("Mount of %s delayed by %lds", mf->mf_mount, (long) (i - clocktime() + cp->start));
#endif /* DEBUG */
this_error = -1;
}
@ -992,7 +993,7 @@ amfs_auto_lookuppn(am_node *mp, char *fname, int *error_return, int op)
if (error) {
#ifdef DEBUG
errno = error; /* XXX */
dlog("Returning error: %m", error);
dlog("Returning error: %m");
#endif /* DEBUG */
XFREE(fname);
ereturn(error);
@ -1321,7 +1322,7 @@ amfs_auto_readdir(am_node *mp, nfscookie cookie, nfsdirlist *dp, nfsentry *ep, i
* fairly unbelievable) then tough.
*/
#ifdef DEBUG
dlog("default search");
dlog("amfs_auto_readdir: default search");
#endif /* DEBUG */
/*
* Check for enough room. This is extremely approximate but is more
@ -1350,8 +1351,7 @@ amfs_auto_readdir(am_node *mp, nfscookie cookie, nfsdirlist *dp, nfsentry *ep, i
ep[1].ne_fileid = mp->am_gen;
ep[1].ne_name = "..";
ep[1].ne_nextentry = 0;
*(u_int *) ep[1].ne_cookie =
xp ? xp->am_gen : ~(u_int) 0;
*(u_int *) ep[1].ne_cookie = (xp ? xp->am_gen : DOT_DOT_COOKIE);
if (!xp)
dp->dl_eof = TRUE; /* by default assume readdir done */
@ -1359,12 +1359,12 @@ amfs_auto_readdir(am_node *mp, nfscookie cookie, nfsdirlist *dp, nfsentry *ep, i
return 0;
}
#ifdef DEBUG
dlog("real child");
dlog("amfs_auto_readdir: real child");
#endif /* DEBUG */
if (gen == ~(u_int) 0) {
if (gen == DOT_DOT_COOKIE) {
#ifdef DEBUG
dlog("End of readdir in %s", mp->am_path);
dlog("amfs_auto_readdir: End of readdir in %s", mp->am_path);
#endif /* DEBUG */
dp->dl_eof = TRUE;
dp->dl_entries = 0;
@ -1379,6 +1379,7 @@ amfs_auto_readdir(am_node *mp, nfscookie cookie, nfsdirlist *dp, nfsentry *ep, i
if (xp) {
int nbytes = count / 2; /* conservative */
int todo = MAX_READDIR_ENTRIES;
dp->dl_entries = ep;
do {
am_node *xp_next = next_nonerror_node(xp->am_osib);
@ -1386,7 +1387,7 @@ amfs_auto_readdir(am_node *mp, nfscookie cookie, nfsdirlist *dp, nfsentry *ep, i
if (xp_next) {
*(u_int *) ep->ne_cookie = xp_next->am_gen;
} else {
*(u_int *) ep->ne_cookie = ~(u_int) 0;
*(u_int *) ep->ne_cookie = DOT_DOT_COOKIE;
dp->dl_eof = TRUE;
}
@ -1444,7 +1445,7 @@ amfs_auto_readdir_browsable(am_node *mp, nfscookie cookie, nfsdirlist *dp, nfsen
* fairly unbelievable) then tough.
*/
#ifdef DEBUG
dlog("default search");
dlog("amfs_auto_readdir_browsable: default search");
#endif /* DEBUG */
/*
* Check for enough room. This is extremely approximate but is more
@ -1484,7 +1485,7 @@ amfs_auto_readdir_browsable(am_node *mp, nfscookie cookie, nfsdirlist *dp, nfsen
ep[1].ne_fileid = mp->am_gen;
ep[1].ne_name = "..";
ep[1].ne_nextentry = 0;
*(u_int *) ep[1].ne_cookie = ~(u_int) 0;
*(u_int *) ep[1].ne_cookie = DOT_DOT_COOKIE;
/*
* If map is browsable, call a function make_entry_chain() to construct
@ -1496,8 +1497,7 @@ amfs_auto_readdir_browsable(am_node *mp, nfscookie cookie, nfsdirlist *dp, nfsen
if (!te)
return 0;
#ifdef DEBUG_READDIR
j = 0;
for (ne=te; ne; ne=ne->ne_nextentry)
for (j=0,ne=te; ne; ne=ne->ne_nextentry)
plog(XLOG_INFO, "gen1 key %4d \"%s\"", j++, ne->ne_name);
#endif /* DEBUG_READDIR */
@ -1518,19 +1518,23 @@ amfs_auto_readdir_browsable(am_node *mp, nfscookie cookie, nfsdirlist *dp, nfsen
}
ep[1].ne_nextentry = te; /* append this chunk of "te" chain */
#ifdef DEBUG_READDIR
for (ne=te; ne; ne=ne->ne_nextentry)
for (j=0,ne=te; ne; ne=ne->ne_nextentry)
plog(XLOG_INFO, "gen2 key %4d \"%s\"", j++, ne->ne_name);
for (j=0,ne=ep; ne; ne=ne->ne_nextentry)
plog(XLOG_INFO, "gen2+ key %4d \"%s\" fi=%d ck=%d",
j++, ne->ne_name, ne->ne_fileid, *(u_int *)ne->ne_cookie);
plog(XLOG_INFO, "EOF is %d", dp->dl_eof);
#endif /* DEBUG_READDIR */
return 0;
} /* end of "if (gen == 0)" statement */
#ifdef DEBUG
dlog("real child");
dlog("amfs_auto_readdir_browsable: real child");
#endif /* DEBUG */
if (gen == ~(u_int) 0) {
if (gen == DOT_DOT_COOKIE) {
#ifdef DEBUG
dlog("End of readdir in %s", mp->am_path);
dlog("amfs_auto_readdir_browsable: End of readdir in %s", mp->am_path);
#endif /* DEBUG */
dp->dl_eof = TRUE;
dp->dl_entries = 0;
@ -1572,7 +1576,7 @@ amfs_auto_readdir_browsable(am_node *mp, nfscookie cookie, nfsdirlist *dp, nfsen
dp->dl_entries = ep;
#ifdef DEBUG_READDIR
plog(XLOG_INFO, "dl_entries=0x%x, te_next=0x%x, dl_eof=%d",
dp->dl_entries, te_next, dp->dl_eof);
(int) dp->dl_entries, (int) te_next, dp->dl_eof);
for (ne=te; ne; ne=ne->ne_nextentry)
plog(XLOG_INFO, "gen3 key %4d \"%s\"", j++, ne->ne_name);
#endif /* DEBUG_READDIR */

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1990 Jan-Simon Pendry
* Copyright (c) 1990 Imperial College of Science, Technology & Medicine
* Copyright (c) 1990 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: amfs_direct.c,v 1.1.1.1 1998/11/05 02:04:46 ezk Exp $
* $Id: amfs_direct.c,v 1.2 1999/01/10 21:53:41 ezk Exp $
*
*/

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1989 Jan-Simon Pendry
* Copyright (c) 1989 Imperial College of Science, Technology & Medicine
* Copyright (c) 1989 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: amfs_error.c,v 1.1.1.1 1998/11/05 02:04:46 ezk Exp $
* $Id: amfs_error.c,v 1.2 1999/01/10 21:53:41 ezk Exp $
*
*/

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1990 Jan-Simon Pendry
* Copyright (c) 1990 Imperial College of Science, Technology & Medicine
* Copyright (c) 1990 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: amfs_host.c,v 1.1.1.1 1998/11/05 02:04:46 ezk Exp $
* $Id: amfs_host.c,v 1.3 1999/01/13 23:30:57 ezk Exp $
*
*/
@ -224,7 +224,7 @@ fetch_fhandle(CLIENT * client, char *dir, am_nfs_handle_t *fhp, u_long nfs_versi
* get the filehandle. Use NFS version specific call.
*/
plog(XLOG_INFO, "fetch_fhandle: NFS version %d", nfs_version);
plog(XLOG_INFO, "fetch_fhandle: NFS version %d", (int) nfs_version);
#ifdef HAVE_FS_NFS3
if (nfs_version == NFS_VERSION3) {
memset((char *) &fhp->v3, 0, sizeof(fhp->v3));
@ -335,7 +335,7 @@ amfs_host_fmount(mntfs *mf)
*/
host = mf->mf_server->fs_host;
sin = *mf->mf_server->fs_ip;
plog(XLOG_INFO, "amfs_host_fmount: NFS version %d", mf->mf_server->fs_version);
plog(XLOG_INFO, "amfs_host_fmount: NFS version %d", (int) mf->mf_server->fs_version);
#ifdef HAVE_FS_NFS3
if (mf->mf_server->fs_version == NFS_VERSION3)
mnt_version = MOUNTVERS3;
@ -630,7 +630,7 @@ amfs_host_umounted(am_node *mp)
*/
host = mf->mf_server->fs_host;
sin = *mf->mf_server->fs_ip;
plog(XLOG_INFO, "amfs_host_umounted: NFS version %d", mf->mf_server->fs_version);
plog(XLOG_INFO, "amfs_host_umounted: NFS version %d", (int) mf->mf_server->fs_version);
#ifdef HAVE_FS_NFS3
if (mf->mf_server->fs_version == NFS_VERSION3)
mnt_version = MOUNTVERS3;
@ -674,7 +674,7 @@ amfs_host_umounted(am_node *mp)
if (clnt_stat != RPC_SUCCESS && clnt_stat != RPC_SYSTEMERROR) {
/* RPC_SYSTEMERROR seems to be returned for no good reason ... */
const char *msg = clnt_sperrno(clnt_stat);
plog(XLOG_ERROR, "unmount all from %s rpc failed: %s", host, msg, clnt_stat);
plog(XLOG_ERROR, "unmount all from %s rpc failed: %s", host, msg);
goto out;
}

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1989 Jan-Simon Pendry
* Copyright (c) 1989 Imperial College of Science, Technology & Medicine
* Copyright (c) 1989 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: amfs_inherit.c,v 1.1.1.1 1998/11/05 02:04:47 ezk Exp $
* $Id: amfs_inherit.c,v 1.2 1999/01/10 21:53:41 ezk Exp $
*
*/

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1990 Jan-Simon Pendry
* Copyright (c) 1990 Imperial College of Science, Technology & Medicine
* Copyright (c) 1990 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: amfs_link.c,v 1.1.1.1 1998/11/05 02:04:47 ezk Exp $
* $Id: amfs_link.c,v 1.2 1999/01/10 21:53:42 ezk Exp $
*
*/

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1990 Jan-Simon Pendry
* Copyright (c) 1990 Imperial College of Science, Technology & Medicine
* Copyright (c) 1990 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: amfs_linkx.c,v 1.1.1.1 1998/11/05 02:04:47 ezk Exp $
* $Id: amfs_linkx.c,v 1.2 1999/01/10 21:53:42 ezk Exp $
*
*/

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1990 Jan-Simon Pendry
* Copyright (c) 1990 Imperial College of Science, Technology & Medicine
* Copyright (c) 1990 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: amfs_nfsl.c,v 1.2 1998/12/27 06:24:45 ezk Exp $
* $Id: amfs_nfsl.c,v 1.3 1999/01/10 21:53:42 ezk Exp $
*
*/

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1990 Jan-Simon Pendry
* Copyright (c) 1990 Imperial College of Science, Technology & Medicine
* Copyright (c) 1990 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: amfs_nfsx.c,v 1.1.1.1 1998/11/05 02:04:47 ezk Exp $
* $Id: amfs_nfsx.c,v 1.2 1999/01/10 21:53:42 ezk Exp $
*
*/

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1989 Jan-Simon Pendry
* Copyright (c) 1989 Imperial College of Science, Technology & Medicine
* Copyright (c) 1989 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: amfs_program.c,v 1.1.1.1 1998/11/05 02:04:47 ezk Exp $
* $Id: amfs_program.c,v 1.4 1999/06/24 06:15:55 ezk Exp $
*
*/
@ -131,6 +131,8 @@ amfs_program_exec(char *info)
* Put stdout to stderr
*/
(void) fclose(stdout);
if (!logfp)
logfp = stderr; /* initialize before possible first use */
(void) dup(fileno(logfp));
if (fileno(logfp) != fileno(stderr)) {
(void) fclose(stderr);
@ -145,7 +147,7 @@ amfs_program_exec(char *info)
char **cp = xivec;
plog(XLOG_DEBUG, "executing (un)mount command...");
while (*cp) {
plog(XLOG_DEBUG, "arg[%d] = '%s'", cp - xivec, *cp);
plog(XLOG_DEBUG, "arg[%ld] = '%s'", (long) (cp - xivec), *cp);
cp++;
}
}

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1990 Jan-Simon Pendry
* Copyright (c) 1990 Imperial College of Science, Technology & Medicine
* Copyright (c) 1990 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: amfs_root.c,v 1.1.1.1 1998/11/05 02:04:47 ezk Exp $
* $Id: amfs_root.c,v 1.2 1999/01/10 21:53:43 ezk Exp $
*
*/

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1990 Jan-Simon Pendry
* Copyright (c) 1990 Imperial College of Science, Technology & Medicine
* Copyright (c) 1990 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: amfs_toplvl.c,v 1.2 1998/12/27 06:24:45 ezk Exp $
* $Id: amfs_toplvl.c,v 1.5 1999/02/04 07:24:14 ezk Exp $
*
*/
@ -177,9 +177,11 @@ mount_amfs_toplvl(char *dir, char *opts)
#endif /* HOSTNAMESZ */
/*
* Finally we can compute the mount genflags set above.
* Finally we can compute the mount genflags set above,
* and add any automounter specific flags.
*/
genflags = compute_mount_flags(&mnt);
genflags |= compute_automounter_mount_flags(&mnt);
/* setup the many fields and flags within nfs_args */
memmove(&anh.v2.fhs_fh, fhp, sizeof(*fhp));
@ -225,8 +227,10 @@ mount_amfs_toplvl(char *dir, char *opts)
/* This is it! Here we try to mount amd on its mount points */
#ifdef DEBUG
amuDebug(D_TRACE)
amuDebug(D_TRACE) {
print_nfs_args(&nfs_args, 0);
plog(XLOG_DEBUG, "Generic mount flags 0x%x", genflags);
}
#endif /* DEBUG */
error = mount_fs(&mnt, genflags, (caddr_t) &nfs_args, retry, type,
0, NULL, mnttab_file_name);

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1990 Jan-Simon Pendry
* Copyright (c) 1990 Imperial College of Science, Technology & Medicine
* Copyright (c) 1990 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: amfs_union.c,v 1.1.1.1 1998/11/05 02:04:47 ezk Exp $
* $Id: amfs_union.c,v 1.2 1999/01/10 21:53:43 ezk Exp $
*
*/

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1990 Jan-Simon Pendry
* Copyright (c) 1990 Imperial College of Science, Technology & Medicine
* Copyright (c) 1990 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: amq_subr.c,v 1.2 1998/12/27 06:24:46 ezk Exp $
* $Id: amq_subr.c,v 1.5 1999/08/24 21:31:06 ezk Exp $
*
*/
/*
@ -187,7 +187,7 @@ ok_security(struct svc_req *rqstp)
return(0); /* assume security is therefore not OK */
}
if (ntohs(sin->sin_port) >= 1024 ||
if (ntohs(sin->sin_port) >= IPPORT_RESERVED ||
!(sin->sin_addr.s_addr == htonl(0x7f000001) ||
sin->sin_addr.s_addr == myipaddr.s_addr)) {
char dq[20];
@ -204,11 +204,24 @@ ok_security(struct svc_req *rqstp)
int *
amqproc_mount_1_svc(voidp argp, struct svc_req *rqstp)
{
static int rc;
char *s = *(amq_string *) argp;
static int rc = EINVAL;
char s[AMQ_STRLEN];
char *cp;
char dq[20];
struct sockaddr_in *sin;
if ((sin = amu_svc_getcaller(rqstp->rq_xprt)) == NULL) {
plog(XLOG_ERROR, "amu_svc_getcaller returned NULL");
return &rc;
}
strncpy(s, *(amq_string *) argp, AMQ_STRLEN-1);
s[AMQ_STRLEN-1] = '\0'; /* null terminate, to be sure */
plog(XLOG_ERROR,
"amq requested mount of %s from %s.%d",
s, inet_dquad(dq, sin->sin_addr.s_addr),
ntohs(sin->sin_port));
plog(XLOG_INFO, "amq requested mount of %s", s);
/*
* Minimalist security check.
*/
@ -240,21 +253,7 @@ amqproc_mount_1_svc(voidp argp, struct svc_req *rqstp)
return 0;
return &rc;
}
#else /* not ENABLE_AMQ_MOUNT */
int *
amqproc_mount_1_svc(voidp argp, struct svc_req *rqstp)
{
static int rc;
char *s = *(amq_string *) argp;
plog(XLOG_ERROR, "amq requested mount of %s, but code is disabled", s);
rc = EINVAL;
return &rc;
}
#endif /* not ENABLE_AMQ_MOUNT */
#endif /* ENABLE_AMQ_MOUNT */
amq_string *

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1990 Jan-Simon Pendry
* Copyright (c) 1990 Imperial College of Science, Technology & Medicine
* Copyright (c) 1990 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: amq_svc.c,v 1.1.1.1 1998/11/05 02:04:47 ezk Exp $
* $Id: amq_svc.c,v 1.3 1999/08/24 21:31:06 ezk Exp $
*
*/
@ -59,7 +59,9 @@ amq_program_1(struct svc_req *rqstp, SVCXPRT *transp)
amq_string amqproc_mnttree_1_arg;
amq_string amqproc_umnt_1_arg;
amq_setopt amqproc_setopt_1_arg;
#ifdef ENABLE_AMQ_MOUNT
amq_string amqproc_mount_1_arg;
#endif /* ENABLE_AMQ_MOUNT */
} argument;
char *result;
xdrproc_t xdr_argument, xdr_result;
@ -109,11 +111,13 @@ amq_program_1(struct svc_req *rqstp, SVCXPRT *transp)
local = (amqsvcproc_t) amqproc_getmntfs_1_svc;
break;
#ifdef ENABLE_AMQ_MOUNT
case AMQPROC_MOUNT:
xdr_argument = (xdrproc_t) xdr_amq_string;
xdr_result = (xdrproc_t) xdr_int;
local = (amqsvcproc_t) amqproc_mount_1_svc;
break;
#endif /* ENABLE_AMQ_MOUNT */
case AMQPROC_GETVERS:
xdr_argument = (xdrproc_t) xdr_void;

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1990 Jan-Simon Pendry
* Copyright (c) 1990 Imperial College of Science, Technology & Medicine
* Copyright (c) 1990 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: autil.c,v 1.2 1998/12/27 06:24:46 ezk Exp $
* $Id: autil.c,v 1.3 1999/01/10 21:53:44 ezk Exp $
*
*/

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1989 Jan-Simon Pendry
* Copyright (c) 1989 Imperial College of Science, Technology & Medicine
* Copyright (c) 1989 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: clock.c,v 1.1.1.1 1998/11/05 02:04:47 ezk Exp $
* $Id: clock.c,v 1.3 1999/01/13 23:30:58 ezk Exp $
*
*/
@ -190,7 +190,8 @@ reschedule_timeouts(time_t now, time_t then)
if (cp->c_time >= now && cp->c_time <= then) {
plog(XLOG_WARNING, "job %d rescheduled to run immediately", cp->c_id);
#ifdef DEBUG
dlog("rescheduling job %d back %d seconds", cp->c_id, cp->c_time - now);
dlog("rescheduling job %d back %ld seconds",
cp->c_id, (long) (cp->c_time - now));
#endif /* DEBUG */
next_softclock = cp->c_time = now;
}

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1990 Jan-Simon Pendry
* Copyright (c) 1990 Imperial College of Science, Technology & Medicine
* Copyright (c) 1990 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: conf.c,v 1.2 1998/12/27 06:24:46 ezk Exp $
* $Id: conf.c,v 1.4 1999/02/04 07:24:15 ezk Exp $
*
*/
@ -550,6 +550,7 @@ gopt_mount_type(const char *val)
if (STREQ(val, "autofs")) {
#ifdef HAVE_FS_AUTOFS
gopt.flags |= CFM_MOUNT_TYPE_AUTOFS;
amd_use_autofs++;
return 0;
#else /* not HAVE_FS_AUTOFS */
fprintf(stderr, "conf: no autofs support available\n");
@ -867,6 +868,7 @@ ropt_mount_type(const char *val, cf_map_t *cfm)
if (STREQ(val, "autofs")) {
#ifdef HAVE_FS_AUTOFS
cfm->cfm_flags |= CFM_MOUNT_TYPE_AUTOFS;
amd_use_autofs++;
return 0;
#else /* not HAVE_FS_AUTOFS */
fprintf(stderr, "conf: no autofs support available\n");

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1989 Jan-Simon Pendry
* Copyright (c) 1989 Imperial College of Science, Technology & Medicine
* Copyright (c) 1989 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: conf_parse.y,v 1.1.1.1 1998/11/05 02:04:51 ezk Exp $
* $Id: conf_parse.y,v 1.3 1999/04/16 14:20:59 ezk Exp $
*
*/
@ -49,6 +49,22 @@
#include <am_defs.h>
#include <amd.h>
/* AIX requires this to be the first thing in the file. */
#ifndef __GNUC__
# if HAVE_ALLOCA_H
# include <alloca.h>
# else /* not HAVE_ALLOCA_H */
# ifdef _AIX
#pragma alloca
# else /* not _AIX */
# ifndef alloca
/* predefined by HP cc +Olibcalls */
voidp alloca();
# endif /* not alloca */
# endif /* not _AIX */
# endif /* not HAVE_ALLOCA_H */
#endif /* not __GNUC__ */
extern char *yytext;
extern int yylineno;
extern int yylex(void);

View File

@ -1,6 +1,6 @@
%{
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1989 Jan-Simon Pendry
* Copyright (c) 1989 Imperial College of Science, Technology & Medicine
* Copyright (c) 1989 The Regents of the University of California.
@ -39,7 +39,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: conf_tok.l,v 1.1.1.1 1998/11/05 02:04:51 ezk Exp $
* $Id: conf_tok.l,v 1.2 1999/01/10 21:53:45 ezk Exp $
*
*/

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1990 Jan-Simon Pendry
* Copyright (c) 1990 Imperial College of Science, Technology & Medicine
* Copyright (c) 1990 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: get_args.c,v 1.2 1998/12/27 06:24:46 ezk Exp $
* $Id: get_args.c,v 1.3 1999/01/10 21:53:45 ezk Exp $
*
*/
@ -85,7 +85,7 @@ get_version_string(void)
vers = xmalloc(2048 + wire_buf_len);
sprintf(vers, "%s\n%s\n%s\n%s\n",
"Copyright (c) 1997-1998 Erez Zadok",
"Copyright (c) 1997-1999 Erez Zadok",
"Copyright (c) 1990 Jan-Simon Pendry",
"Copyright (c) 1990 Imperial College of Science, Technology & Medicine",
"Copyright (c) 1990 The Regents of the University of California.");

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1990 Jan-Simon Pendry
* Copyright (c) 1990 Imperial College of Science, Technology & Medicine
* Copyright (c) 1990 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: info_file.c,v 1.1.1.1 1998/11/05 02:04:49 ezk Exp $
* $Id: info_file.c,v 1.2 1999/01/10 21:53:45 ezk Exp $
*
*/

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1989 Jan-Simon Pendry
* Copyright (c) 1989 Imperial College of Science, Technology & Medicine
* Copyright (c) 1989 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: info_hesiod.c,v 1.1.1.1 1998/11/05 02:04:49 ezk Exp $
* $Id: info_hesiod.c,v 1.5 1999/02/04 07:24:15 ezk Exp $
*
*/
@ -58,10 +58,15 @@
#ifdef HAVE_HESIOD_INIT
/* bsdi3 does not define this extern in any header file */
extern char **hesiod_resolve(void *context, const char *name, const char *type);
extern int hesiod_init(void **context);
static voidp hesiod_context;
#endif /* HAVE_HESIOD_INIT */
/* forward declarations */
int amu_hesiod_init(mnt_map *m, char *map, time_t *tp);
int hesiod_search(mnt_map *m, char *map, char *key, char **pval, time_t *tp);
int hesiod_isup(mnt_map *m, char *map);
/*
* No easy way to probe the server - check the map name begins with "hesiod."
* Note: this name includes 'amu_' so as to not conflict with libhesiod's
@ -98,7 +103,8 @@ hesiod_search(mnt_map *m, char *map, char *key, char **pval, time_t *tp)
#endif /* not HAVE_HESIOD_INIT */
#ifdef DEBUG
dlog("hesiod_search(m=%x, map=%s, key=%s, pval=%x tp=%x)", m, map, key, pval, tp);
dlog("hesiod_search(m=%lx, map=%s, key=%s, pval=%lx tp=%lx)",
(unsigned long) m, map, key, (unsigned long) pval, (unsigned long) tp);
#endif /* DEBUG */
sprintf(hes_key, "%s.%s", key, map + HES_PREFLEN);
@ -161,3 +167,34 @@ hesiod_search(mnt_map *m, char *map, char *key, char **pval, time_t *tp)
return error;
#endif /* not HAVE_HESIOD_INIT */
}
/*
* Check if Hesiod is up, so we can determine if to clear the map or not.
* Test it by querying for /defaults.
* Returns: 0 if Hesiod is down, 1 if it is up.
*/
int
hesiod_isup(mnt_map *m, char *map)
{
int error;
char *val;
time_t mtime;
static int last_status = 1; /* assume up by default */
error = hesiod_search(m, map, "/defaults", &val, &mtime);
#ifdef DEBUG
dlog("hesiod_isup(%s): %s", map, strerror(error));
#endif /* DEBUG */
if (error != 0 && error != ENOENT) {
plog(XLOG_ERROR,
"hesiod_isup: error getting `/defaults' entry in map %s: %m", map);
last_status = 0;
return 0; /* Hesiod is down */
}
if (last_status == 0) { /* if was down before */
plog(XLOG_INFO, "hesiod_isup: Hesiod came back up for map %s", map);
last_status = 1;
}
return 1; /* Hesiod is up */
}

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1989 Jan-Simon Pendry
* Copyright (c) 1989 Imperial College of Science, Technology & Medicine
* Copyright (c) 1989 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: info_ldap.c,v 1.1.1.1 1998/11/05 02:04:49 ezk Exp $
* $Id: info_ldap.c,v 1.5 1999/08/22 05:12:50 ezk Exp $
*
*/
@ -182,7 +182,12 @@ amu_ldap_init(mnt_map *m, char *map, time_t *ts)
ALD *aldh;
CR *creds;
if (!STREQ(gopt.map_type, AMD_LDAP_TYPE)) {
/*
* XXX: by checking that map_type must be defined, aren't we
* excluding the possibility of automatic searches through all
* map types?
*/
if (!gopt.map_type || !STREQ(gopt.map_type, AMD_LDAP_TYPE)) {
return (ENOENT);
}
#ifdef DEBUG
@ -219,7 +224,7 @@ amu_ldap_init(mnt_map *m, char *map, time_t *ts)
if (get_ldap_timestamp(aldh->ldap, map, ts))
return (ENOENT);
#ifdef DEBUG
dlog("Got timestamp for map %s: %d\n", map, *ts);
dlog("Got timestamp for map %s: %ld\n", map, *ts);
#endif /* DEBUG */
return (0);
@ -277,7 +282,7 @@ get_ldap_timestamp(LDAP * ld, char *map, time_t *ts)
struct timeval tv;
char **vals, *end;
char filter[MAXPATHLEN];
int i, err, nentries = 0;
int i, err = 0, nentries = 0;
LDAPMessage *res, *entry;
tv.tv_sec = 3;
@ -299,7 +304,9 @@ get_ldap_timestamp(LDAP * ld, char *map, time_t *ts)
&res);
if (err == LDAP_SUCCESS)
break;
#ifdef DEBUG
dlog("Timestamp search timed out, trying again...\n");
#endif /* DEBUG */
}
if (err != LDAP_SUCCESS) {
@ -339,7 +346,7 @@ get_ldap_timestamp(LDAP * ld, char *map, time_t *ts)
err = ENOENT;
}
if (!*ts > 0) {
plog(XLOG_USER, "Nonpositive timestamp %d for map %s\n",
plog(XLOG_USER, "Nonpositive timestamp %ld for map %s\n",
*ts, map);
err = ENOENT;
}
@ -353,7 +360,7 @@ get_ldap_timestamp(LDAP * ld, char *map, time_t *ts)
ldap_msgfree(res);
ldap_msgfree(entry);
#ifdef DEBUG
dlog("The timestamp for %s is %d (err=%d)\n", map, *ts, err);
dlog("The timestamp for %s is %ld (err=%d)\n", map, *ts, err);
#endif /* DEBUG */
return (err);
}
@ -364,7 +371,7 @@ amu_ldap_search(mnt_map *m, char *map, char *key, char **pval, time_t *ts)
{
char **vals, filter[MAXPATHLEN];
struct timeval tv;
int i, err, nvals = 0, nentries = 0;
int i, err = 0, nvals = 0, nentries = 0;
LDAPMessage *entry, *res;
ALD *a = (ALD *) (m->map_data);
@ -452,7 +459,9 @@ amu_ldap_mtime(mnt_map *m, char *map, time_t *ts)
ALD *aldh = (ALD *) (m->map_data);
if (aldh == NULL) {
#ifdef DEBUG
dlog("LDAP panic: unable to find map data\n");
#endif /* DEBUG */
return (ENOENT);
}
if (amu_ldap_rebind(aldh)) {

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1989 Jan-Simon Pendry
* Copyright (c) 1989 Imperial College of Science, Technology & Medicine
* Copyright (c) 1989 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: info_ndbm.c,v 1.1.1.1 1998/11/05 02:04:49 ezk Exp $
* $Id: info_ndbm.c,v 1.2 1999/01/10 21:53:46 ezk Exp $
*
*/

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1989 Jan-Simon Pendry
* Copyright (c) 1989 Imperial College of Science, Technology & Medicine
* Copyright (c) 1989 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: info_nis.c,v 1.1.1.1 1998/11/05 02:04:49 ezk Exp $
* $Id: info_nis.c,v 1.5 1999/08/22 05:12:51 ezk Exp $
*
*/
@ -55,8 +55,12 @@
/*
* NIS+ servers in NIS compat mode don't have yp_order()
*
* has_yp_order = 1 NIS server
* = 0 NIS+ server
* = -1 server is down
*/
static int has_yp_order = FALSE;
static int has_yp_order = -1;
/* forward declarations */
int nis_reload(mnt_map *m, char *map, void (*fn) (mnt_map *, char *, char *));
@ -103,7 +107,9 @@ determine_nis_domain(void)
}
if (!*default_domain) {
nis_not_running = 1;
#ifdef DEBUG
plog(XLOG_WARNING, "NIS domain name is not set. NIS ignored.");
#endif /* DEBUG */
return ENOENT;
}
gopt.nis_domain = strdup(default_domain);
@ -193,25 +199,52 @@ nis_isup(mnt_map *m, char *map)
{
YP_ORDER_OUTORDER_TYPE order;
int error;
char *master;
static int last_status = 1; /* assume up by default */
if (has_yp_order) {
switch (has_yp_order) {
case 1:
/*
* NIS server with yp_order
*/
error = yp_order(gopt.nis_domain, map, &order);
if (error != 0) {
plog(XLOG_ERROR,
"nis_isup: error getting the order of map of %s: %s",
"nis_isup: error getting the order of map %s: %s",
map, yperr_string(ypprot_err(error)));
last_status = 0;
return 0; /* NIS is down */
}
break;
case 0:
/*
* NIS+ server without yp_order
*/
error = yp_master(gopt.nis_domain, map, &master);
if (error != 0) {
plog(XLOG_ERROR,
"nis_isup: error getting the master of map %s: %s",
map, yperr_string(ypprot_err(error)));
last_status = 0;
return 0; /* NIS+ is down */
}
break;
default:
/*
* server was down
*/
last_status = 0;
}
if (last_status == 0) { /* if was down before */
if (last_status == 0) { /* reinitialize if was down before */
time_t dummy;
plog(XLOG_INFO, "nis_isup: NIS came back up for map %s", map);
/* XXX: do we really need to reinitialize nis? */
error = nis_init(m, map, &dummy);
if (!error)
last_status = 1;
if (error)
return 0; /* still down */
plog(XLOG_INFO, "nis_isup: NIS came back up for map %s", map);
last_status = 1;
}
return 1; /* NIS is up */
}
@ -237,8 +270,10 @@ nis_search(mnt_map *m, char *map, char *key, char **val, time_t *tp)
}
if (has_yp_order) {
switch (has_yp_order) {
case 1:
/*
* NIS server with yp_order
* Check if map has changed
*/
if (yp_order(gopt.nis_domain, map, &order))
@ -247,7 +282,9 @@ nis_search(mnt_map *m, char *map, char *key, char **val, time_t *tp)
*tp = (time_t) order;
return -1;
}
} else {
break;
case 0:
/*
* NIS+ server without yp_order
* Check if timeout has expired to invalidate the cache
@ -257,6 +294,15 @@ nis_search(mnt_map *m, char *map, char *key, char **val, time_t *tp)
*tp = (time_t)order;
return(-1);
}
break;
default:
/*
* server was down
*/
if (nis_isup(m, map))
return -1;
return EIO;
}
/*
@ -301,15 +347,16 @@ nis_init(mnt_map *m, char *map, time_t *tp)
yp_order_result = yp_order(gopt.nis_domain, map, &order);
switch (yp_order_result) {
case 0:
has_yp_order = TRUE;
/* NIS server found */
has_yp_order = 1;
*tp = (time_t) order;
#ifdef DEBUG
dlog("NIS master for %s@%s has order %d", map, gopt.nis_domain, order);
dlog("NIS master for %s@%s has order %lu", map, gopt.nis_domain, (unsigned long) order);
#endif /* DEBUG */
break;
case YPERR_YPERR:
/* NIS+ server found ! */
has_yp_order = FALSE;
has_yp_order = 0;
/* try yp_master() instead */
if (yp_master(gopt.nis_domain, map, &master)) {
return ENOENT;
@ -322,6 +369,8 @@ nis_init(mnt_map *m, char *map, time_t *tp)
}
break;
default:
/* server is down */
has_yp_order = -1;
return ENOENT;
}
return 0;

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1989 Jan-Simon Pendry
* Copyright (c) 1989 Imperial College of Science, Technology & Medicine
* Copyright (c) 1989 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: info_nisplus.c,v 1.1.1.1 1998/11/05 02:04:49 ezk Exp $
* $Id: info_nisplus.c,v 1.2 1999/01/10 21:53:46 ezk Exp $
*
*/

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1990 Jan-Simon Pendry
* Copyright (c) 1990 Imperial College of Science, Technology & Medicine
* Copyright (c) 1990 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: info_passwd.c,v 1.1.1.1 1998/11/05 02:04:49 ezk Exp $
* $Id: info_passwd.c,v 1.2 1999/01/10 21:53:46 ezk Exp $
*
*/

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1990 Jan-Simon Pendry
* Copyright (c) 1990 Imperial College of Science, Technology & Medicine
* Copyright (c) 1990 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: info_union.c,v 1.1.1.1 1998/11/05 02:04:50 ezk Exp $
* $Id: info_union.c,v 1.2 1999/01/10 21:53:47 ezk Exp $
*
*/

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1990 Jan-Simon Pendry
* Copyright (c) 1990 Imperial College of Science, Technology & Medicine
* Copyright (c) 1990 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: map.c,v 1.2 1998/12/27 06:24:47 ezk Exp $
* $Id: map.c,v 1.5 1999/08/22 05:12:51 ezk Exp $
*
*/
@ -615,7 +615,7 @@ root_fh(char *dir)
long pid = getppid();
((struct am_fh *) &nfh)->fhh_pid = pid;
#ifdef DEBUG
dlog("root_fh substitutes pid %d", pid);
dlog("root_fh substitutes pid %ld", (long) pid);
#endif /* DEBUG */
}
return &nfh;
@ -913,7 +913,7 @@ free_map_if_success(int rc, int term, voidp closure)
#endif /* DEBUG */
amd_stats.d_uerr++;
} else if (rc) {
if (rc == EBUSY) {
if (mf->mf_ops == &amfs_program_ops || rc == EBUSY) {
plog(XLOG_STATS, "\"%s\" on %s still active", mp->am_path, mf->mf_mount);
} else {
errno = rc; /* XXX */
@ -1093,7 +1093,7 @@ timeout_mp(voidp v)
if ((int) amd_state >= (int) Finishing)
t = now + 1;
#ifdef DEBUG
dlog("Next mount timeout in %ds", t - now);
dlog("Next mount timeout in %lds", (long) (t - now));
#endif /* DEBUG */
timeout_mp_id = timeout(t - now, timeout_mp, 0);

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1989 Jan-Simon Pendry
* Copyright (c) 1989 Imperial College of Science, Technology & Medicine
* Copyright (c) 1989 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: mapc.c,v 1.1.1.1 1998/11/05 02:04:48 ezk Exp $
* $Id: mapc.c,v 1.4 1999/08/09 06:09:44 ezk Exp $
*
*/
@ -158,6 +158,7 @@ extern int passwd_search(mnt_map *, char *, char *, char **, time_t *);
/* HESIOD MAPS */
#ifdef HAVE_MAP_HESIOD
extern int amu_hesiod_init(mnt_map *, char *map, time_t *tp);
extern int hesiod_isup(mnt_map *, char *);
extern int hesiod_search(mnt_map *, char *, char *, char **, time_t *);
#endif /* HAVE_MAP_HESIOD */
@ -236,7 +237,7 @@ static map_type maptypes[] =
"hesiod",
amu_hesiod_init,
error_reload,
NULL, /* isup function */
hesiod_isup, /* is Hesiod up or not? */
hesiod_search,
error_mtime,
MAPC_ALL
@ -1051,7 +1052,7 @@ key_already_in_chain(char *keyname, const nfsentry *chain)
nfsentry *
make_entry_chain(am_node *mp, const nfsentry *current_chain, int fully_browsable)
{
static u_int last_cookie = ~(u_int) 0 - 1;
static u_int last_cookie = (u_int) 2; /* monotonically increasing */
static nfsentry chain[MAX_CHAIN];
static int max_entries = MAX_CHAIN;
char *key;
@ -1123,10 +1124,9 @@ make_entry_chain(am_node *mp, const nfsentry *current_chain, int fully_browsable
}
/* we have space. put entry in next cell */
--last_cookie;
++last_cookie;
chain[num_entries].ne_fileid = (u_int) last_cookie;
*(u_int *) chain[num_entries].ne_cookie =
(u_int) last_cookie;
*(u_int *) chain[num_entries].ne_cookie = (u_int) last_cookie;
chain[num_entries].ne_name = key;
if (num_entries < max_entries - 1) { /* link to next one */
chain[num_entries].ne_nextentry = &chain[num_entries + 1];

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1990 Jan-Simon Pendry
* Copyright (c) 1990 Imperial College of Science, Technology & Medicine
* Copyright (c) 1990 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: mntfs.c,v 1.1.1.1 1998/11/05 02:04:48 ezk Exp $
* $Id: mntfs.c,v 1.2 1999/01/10 21:53:47 ezk Exp $
*
*/

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1989 Jan-Simon Pendry
* Copyright (c) 1989 Imperial College of Science, Technology & Medicine
* Copyright (c) 1989 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: nfs_prot_svc.c,v 1.1.1.1 1998/11/05 02:04:48 ezk Exp $
* $Id: nfs_prot_svc.c,v 1.4 1999/08/22 21:12:30 ezk Exp $
*
*/
@ -98,6 +98,27 @@ nfs_program_2(struct svc_req *rqstp, SVCXPRT *transp)
char *result;
xdrproc_t xdr_argument, xdr_result;
nfssvcproc_t local;
struct sockaddr_in *sinp;
char dq[20], dq2[28];
sinp = amu_svc_getcaller(rqstp->rq_xprt);
#ifdef MNT2_NFS_OPT_RESVPORT
/* Verify that the request comes from a reserved port */
if (ntohs(sinp->sin_port) >= IPPORT_RESERVED) {
plog(XLOG_WARNING, "ignoring request from %s:%u, port not reserved",
inet_dquad(dq, sinp->sin_addr.s_addr),
ntohs(sinp->sin_port));
return;
}
#endif /* MNT2_NFS_OPT_RESVPORT */
/* if the address does not match, ignore the request */
if (sinp->sin_addr.s_addr && sinp->sin_addr.s_addr != myipaddr.s_addr) {
plog(XLOG_WARNING, "ignoring request from %s:%u, expected %s",
inet_dquad(dq, sinp->sin_addr.s_addr),
ntohs(sinp->sin_port),
inet_dquad(dq2, myipaddr.s_addr));
return;
}
nfs_program_2_transp = NULL;
@ -228,7 +249,7 @@ nfs_program_2(struct svc_req *rqstp, SVCXPRT *transp)
(SVC_IN_ARG_TYPE) &argument)) {
plog(XLOG_ERROR,
"NFS xdr decode failed for %d %d %d",
rqstp->rq_prog, rqstp->rq_vers, rqstp->rq_proc);
(int) rqstp->rq_prog, (int) rqstp->rq_vers, (int) rqstp->rq_proc);
svcerr_decode(transp);
return;
}

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1990 Jan-Simon Pendry
* Copyright (c) 1990 Imperial College of Science, Technology & Medicine
* Copyright (c) 1990 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: nfs_start.c,v 1.1.1.1 1998/11/05 02:04:48 ezk Exp $
* $Id: nfs_start.c,v 1.4 1999/02/04 07:24:16 ezk Exp $
*
*/
@ -58,6 +58,7 @@ u_short nfs_port;
#ifdef HAVE_FS_AUTOFS
SVCXPRT *autofsxprt = NULL;
u_short autofs_port = 0;
int amd_use_autofs = 0;
#endif /* HAVE_FS_AUTOFS */
#ifndef HAVE_SIGACTION
@ -86,12 +87,12 @@ checkup(void)
}
if (max_mem < next_mem) {
#ifdef HAVE_GETPAGESIZE
dlog("%#x bytes of memory allocated; total is %#x (%ld pages)",
next_mem - max_mem, next_mem,
dlog("%#lx bytes of memory allocated; total is %#lx (%ld pages)",
(long) (next_mem - max_mem), (unsigned long) next_mem,
((long) next_mem + getpagesize() - 1) / getpagesize());
#else /* not HAVE_GETPAGESIZE */
dlog("%#x bytes of memory allocated; total is %#x",
next_mem - max_mem, next_mem);
dlog("%#lx bytes of memory allocated; total is %#lx",
(long) (next_mem - max_mem), (unsigned long) next_mem);
#endif /* not HAVE_GETPAGESIZE */
max_mem = next_mem;
@ -265,7 +266,7 @@ run_rpc(void)
tvv.tv_sec = SELECT_MAXWAIT;
#ifdef DEBUG
if (tvv.tv_sec) {
dlog("Select waits for %ds", tvv.tv_sec);
dlog("Select waits for %ds", (int) tvv.tv_sec);
} else {
dlog("Select waits for Godot");
}
@ -374,14 +375,17 @@ mount_automounter(int ppid)
return ret;
#ifdef HAVE_FS_AUTOFS
/*
* Create the autofs service for amd.
*/
plog(XLOG_INFO, "creating autofs service listener");
ret = create_autofs_service(&soAUTOFS, &autofs_port, &autofsxprt, autofs_program_1);
/* if autofs service fails it is OK if using a test amd */
if (ret != 0 && gopt.portmap_program == AMQ_PROGRAM)
return ret;
if (amd_use_autofs) {
/*
* Create the autofs service for amd, but only if autofs maps
* were defined (so amd doesn't clash with automountd.)
*/
plog(XLOG_INFO, "creating autofs service listener");
ret = create_autofs_service(&soAUTOFS, &autofs_port, &autofsxprt, autofs_program_1);
/* if autofs service fails it is OK if using a test amd */
if (ret != 0 && gopt.portmap_program == AMQ_PROGRAM)
return ret;
}
#endif /* HAVE_FS_AUTOFS */
/*

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1990 Jan-Simon Pendry
* Copyright (c) 1990 Imperial College of Science, Technology & Medicine
* Copyright (c) 1990 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: nfs_subr.c,v 1.1.1.1 1998/11/05 02:04:48 ezk Exp $
* $Id: nfs_subr.c,v 1.3 1999/01/13 23:31:00 ezk Exp $
*
*/
@ -131,7 +131,7 @@ nfsproc_getattr_2_svc(am_nfs_fh *argp, struct svc_req *rqstp)
#ifdef DEBUG
amuDebug(D_TRACE)
plog(XLOG_DEBUG, "\tstat(%s), size = %d", mp->am_path,
attrp->ns_u.ns_attr_u.na_size);
(int) attrp->ns_u.ns_attr_u.na_size);
#endif /* DEBUG */
mp->am_stats.s_getattr++;

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1990 Jan-Simon Pendry
* Copyright (c) 1990 Imperial College of Science, Technology & Medicine
* Copyright (c) 1990 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: ops_TEMPLATE.c,v 1.1.1.1 1998/11/05 02:04:51 ezk Exp $
* $Id: ops_TEMPLATE.c,v 1.2 1999/01/10 21:53:48 ezk Exp $
*
*/

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1990 Jan-Simon Pendry
* Copyright (c) 1990 Imperial College of Science, Technology & Medicine
* Copyright (c) 1990 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: ops_autofs.c,v 1.2 1998/12/27 06:24:47 ezk Exp $
* $Id: ops_autofs.c,v 1.4 1999/01/13 23:31:00 ezk Exp $
*
*/
@ -356,7 +356,7 @@ autofs_program_1(struct svc_req *rqstp, SVCXPRT *transp)
(SVC_IN_ARG_TYPE) &argument)) {
plog(XLOG_ERROR,
"AUTOFS xdr decode failed for %d %d %d",
rqstp->rq_prog, rqstp->rq_vers, rqstp->rq_proc);
(int) rqstp->rq_prog, (int) rqstp->rq_vers, (int) rqstp->rq_proc);
svcerr_decode(transp);
return;
}
@ -433,11 +433,13 @@ autofs_unmount_1_svc(struct umntrequest *ur, struct umntres *result, struct auth
int err = 0;
#ifdef HAVE_FIELD_UMNTREQUEST_RDEVID
plog(XLOG_INFO, "XXX: autofs_unmount_1_svc: %d:%u:%lu:0x%x",
ur->isdirect, ur->devid, ur->rdevid, ur->next);
plog(XLOG_INFO, "XXX: autofs_unmount_1_svc: %d:%lu:%lu:0x%lx",
ur->isdirect, (unsigned long) ur->devid, (unsigned long) ur->rdevid,
(unsigned long) ur->next);
#else /* HAVE_FIELD_UMNTREQUEST_RDEVID */
plog(XLOG_INFO, "XXX: autofs_unmount_1_svc: %d:%u:0x%x",
ur->isdirect, ur->devid, ur->next);
plog(XLOG_INFO, "XXX: autofs_unmount_1_svc: %d:%lu:0x%lx",
ur->isdirect, (unsigned long) ur->devid,
(unsigned long) ur->next);
#endif /* HAVE_FIELD_UMNTREQUEST_RDEVID */
err = EINVAL; /* XXX: not implemented yet */
@ -614,8 +616,8 @@ autofs_bgmount(struct continuation * cp, int mpe)
* Don't try logging the string from mf, since it may be bad!
*/
if (cp->fs_opts.opt_fs != mf->mf_fo->opt_fs)
plog(XLOG_ERROR, "use %s instead of 0x%x",
cp->fs_opts.opt_fs, mf->mf_fo->opt_fs);
plog(XLOG_ERROR, "use %s instead of 0x%lx",
cp->fs_opts.opt_fs, (unsigned long) mf->mf_fo->opt_fs);
mp->am_link = str3cat((char *) 0,
cp->fs_opts.opt_fs, "/", link_dir);
@ -700,7 +702,7 @@ autofs_bgmount(struct continuation * cp, int mpe)
int i = atoi(mf->mf_fo->opt_delay);
if (i > 0 && clocktime() < (cp->start + i)) {
#ifdef DEBUG
dlog("Mount of %s delayed by %ds", mf->mf_mount, i - clocktime() + cp->start);
dlog("Mount of %s delayed by %lds", mf->mf_mount, i - clocktime() + cp->start);
#endif /* DEBUG */
this_error = -1;
}
@ -998,7 +1000,7 @@ autofs_lookuppn(am_node *mp, char *fname, int *error_return, int op)
if (error) {
#ifdef DEBUG
errno = error; /* XXX */
dlog("Returning error: %m", error);
dlog("Returning error: %m");
#endif /* DEBUG */
XFREE(fname);
ereturn(error);

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1990 Jan-Simon Pendry
* Copyright (c) 1990 Imperial College of Science, Technology & Medicine
* Copyright (c) 1990 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: ops_cachefs.c,v 1.1.1.1 1998/11/05 02:04:50 ezk Exp $
* $Id: ops_cachefs.c,v 1.2 1999/01/10 21:53:49 ezk Exp $
*
*/

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1990 Jan-Simon Pendry
* Copyright (c) 1990 Imperial College of Science, Technology & Medicine
* Copyright (c) 1990 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: ops_cdfs.c,v 1.1.1.1 1998/11/05 02:04:50 ezk Exp $
* $Id: ops_cdfs.c,v 1.3 1999/03/30 17:22:46 ezk Exp $
*
*/
@ -148,6 +148,19 @@ mount_cdfs(char *dir, char *fs_name, char *opts)
if (hasmntopt(&mnt, MNTTAB_OPT_RRIP))
cdfs_flags |= MNT2_CDFS_OPT_RRIP;
#endif /* defined(MNT2_CDFS_OPT_RRIP) && defined(MNTTAB_OPT_RRIP) */
#if defined(MNT2_CDFS_OPT_NORRIP) && defined(MNTTAB_OPT_NORRIP)
if (hasmntopt(&mnt, MNTTAB_OPT_NORRIP))
cdfs_flags |= MNT2_CDFS_OPT_NORRIP;
#endif /* defined(MNT2_CDFS_OPT_NORRIP) && defined(MNTTAB_OPT_NORRIP) */
#if defined(MNT2_CDFS_OPT_GENS) && defined(MNTTAB_OPT_GENS)
if (hasmntopt(&mnt, MNTTAB_OPT_GENS))
cdfs_flags |= MNT2_CDFS_OPT_GENS;
#endif /* defined(MNT2_CDFS_OPT_GENS) && defined(MNTTAB_OPT_GENS) */
#if defined(MNT2_CDFS_OPT_EXTATT) && defined(MNTTAB_OPT_EXTATT)
if (hasmntopt(&mnt, MNTTAB_OPT_EXTATT))
cdfs_flags |= MNT2_CDFS_OPT_EXTATT;
#endif /* defined(MNT2_CDFS_OPT_EXTATT) && defined(MNTTAB_OPT_EXTATT) */
genflags = compute_mount_flags(&mnt);

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1990 Jan-Simon Pendry
* Copyright (c) 1990 Imperial College of Science, Technology & Medicine
* Copyright (c) 1990 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: ops_efs.c,v 1.1.1.1 1998/11/05 02:04:50 ezk Exp $
* $Id: ops_efs.c,v 1.2 1999/01/10 21:53:49 ezk Exp $
*
*/

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1990 Jan-Simon Pendry
* Copyright (c) 1990 Imperial College of Science, Technology & Medicine
* Copyright (c) 1990 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: ops_lofs.c,v 1.1.1.1 1998/11/05 02:04:50 ezk Exp $
* $Id: ops_lofs.c,v 1.2 1999/01/10 21:53:49 ezk Exp $
*
*/

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1990 Jan-Simon Pendry
* Copyright (c) 1990 Imperial College of Science, Technology & Medicine
* Copyright (c) 1990 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: ops_mfs.c,v 1.1.1.1 1998/11/05 02:04:50 ezk Exp $
* $Id: ops_mfs.c,v 1.2 1999/01/10 21:53:50 ezk Exp $
*
*/

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1990 Jan-Simon Pendry
* Copyright (c) 1990 Imperial College of Science, Technology & Medicine
* Copyright (c) 1990 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: ops_nfs.c,v 1.1.1.1 1998/11/05 02:04:50 ezk Exp $
* $Id: ops_nfs.c,v 1.5 1999/03/13 17:03:28 ezk Exp $
*
*/
@ -148,7 +148,7 @@ find_nfs_fhandle_cache(voidp idv, int done)
#ifdef DEBUG
if (fp2) {
dlog("fh cache gives fp %#x, fs %s", fp2, fp2->fh_path);
dlog("fh cache gives fp %#lx, fs %s", (unsigned long) fp2, fp2->fh_path);
} else {
dlog("fh cache search failed");
}
@ -198,7 +198,7 @@ got_nfs_fh(voidp pkt, int len, struct sockaddr_in * sa, struct sockaddr_in * ia,
*/
if (fp->fh_wchan) {
#ifdef DEBUG
dlog("Calling wakeup on %#x", fp->fh_wchan);
dlog("Calling wakeup on %#lx", (unsigned long) fp->fh_wchan);
#endif /* DEBUG */
wakeup(fp->fh_wchan);
}
@ -259,7 +259,7 @@ prime_nfs_fhandle_cache(char *path, fserver *fs, am_nfs_handle_t *fhbuf, voidp w
if (fs == fp->fh_fs && STREQ(path, fp->fh_path)) {
switch (fp->fh_error) {
case 0:
plog(XLOG_INFO, "prime_nfs_fhandle_cache: NFS version %d", fp->fh_nfs_version);
plog(XLOG_INFO, "prime_nfs_fhandle_cache: NFS version %d", (int) fp->fh_nfs_version);
#ifdef HAVE_FS_NFS3
if (fp->fh_nfs_version == NFS_VERSION3)
error = fp->fh_error = unx_error(fp->fh_nfs_handle.v3.fhs_status);
@ -449,7 +449,7 @@ call_mountd(fh_cache *fp, u_long proc, fwd_fun f, voidp wchan)
#endif /* HAVE_FS_NFS3 */
mnt_version = MOUNTVERS;
plog(XLOG_INFO, "call_mountd: NFS version %d, mount version %d",
fp->fh_nfs_version, mnt_version);
(int) fp->fh_nfs_version, (int) mnt_version);
rpc_msg_init(&mnt_msg, MOUNTPROG, mnt_version, MOUNTPROC_NULL);
len = make_rpc_packet(iobuf,
@ -585,10 +585,13 @@ mount_nfs_fh(am_nfs_handle_t *fhp, char *dir, char *fs_name, char *opts, mntfs *
strcpy(host + MAXHOSTNAMELEN - 3, "..");
#endif /* MAXHOSTNAMELEN */
if (mf->mf_remopts && *mf->mf_remopts && !islocalnet(fs->fs_ip->sin_addr.s_addr))
if (mf->mf_remopts && *mf->mf_remopts &&
!islocalnet(fs->fs_ip->sin_addr.s_addr)) {
plog(XLOG_INFO, "Using remopts=\"%s\"", mf->mf_remopts);
xopts = strdup(mf->mf_remopts);
else
} else {
xopts = strdup(opts);
}
memset((voidp) &mnt, 0, sizeof(mnt));
mnt.mnt_dir = dir;
@ -622,7 +625,7 @@ mount_nfs_fh(am_nfs_handle_t *fhp, char *dir, char *fs_name, char *opts, mntfs *
mnt.mnt_type = MNTTAB_TYPE_NFS;
}
#endif /* HAVE_FS_NFS3 */
plog(XLOG_INFO, "mount_nfs_fh: NFS version %d", nfs_version);
plog(XLOG_INFO, "mount_nfs_fh: NFS version %d", (int) nfs_version);
#if defined(HAVE_FS_NFS3) || defined(HAVE_TRANSPORT_TYPE_TLI)
plog(XLOG_INFO, "mount_nfs_fh: using NFS transport %s", nfs_proto);
#endif /* defined(HAVE_FS_NFS3) || defined(HAVE_TRANSPORT_TYPE_TLI) */
@ -659,8 +662,10 @@ mount_nfs_fh(am_nfs_handle_t *fhp, char *dir, char *fs_name, char *opts, mntfs *
/* finally call the mounting function */
#ifdef DEBUG
amuDebug(D_TRACE)
amuDebug(D_TRACE) {
print_nfs_args(&nfs_args, nfs_version);
plog(XLOG_DEBUG, "Generic mount flags 0x%x", genflags);
}
#endif /* DEBUG */
error = mount_fs(&mnt, genflags, (caddr_t) &nfs_args, retry, type,
nfs_version, nfs_proto, mnttab_file_name);

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1990 Jan-Simon Pendry
* Copyright (c) 1990 Imperial College of Science, Technology & Medicine
* Copyright (c) 1990 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: ops_nfs3.c,v 1.1.1.1 1998/11/05 02:04:50 ezk Exp $
* $Id: ops_nfs3.c,v 1.2 1999/01/10 21:53:50 ezk Exp $
*
*/

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1990 Jan-Simon Pendry
* Copyright (c) 1990 Imperial College of Science, Technology & Medicine
* Copyright (c) 1990 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: ops_nullfs.c,v 1.1.1.1 1998/11/05 02:04:50 ezk Exp $
* $Id: ops_nullfs.c,v 1.2 1999/01/10 21:53:50 ezk Exp $
*
*/

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1990 Jan-Simon Pendry
* Copyright (c) 1990 Imperial College of Science, Technology & Medicine
* Copyright (c) 1990 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: ops_pcfs.c,v 1.1.1.1 1998/11/05 02:04:50 ezk Exp $
* $Id: ops_pcfs.c,v 1.2 1999/01/10 21:53:50 ezk Exp $
*
*/

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1990 Jan-Simon Pendry
* Copyright (c) 1990 Imperial College of Science, Technology & Medicine
* Copyright (c) 1990 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: ops_tfs.c,v 1.1.1.1 1998/11/05 02:04:51 ezk Exp $
* $Id: ops_tfs.c,v 1.2 1999/01/10 21:53:51 ezk Exp $
*
*/

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1990 Jan-Simon Pendry
* Copyright (c) 1990 Imperial College of Science, Technology & Medicine
* Copyright (c) 1990 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: ops_tmpfs.c,v 1.1.1.1 1998/11/05 02:04:51 ezk Exp $
* $Id: ops_tmpfs.c,v 1.2 1999/01/10 21:53:51 ezk Exp $
*
*/

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1990 Jan-Simon Pendry
* Copyright (c) 1990 Imperial College of Science, Technology & Medicine
* Copyright (c) 1990 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: ops_ufs.c,v 1.1.1.1 1998/11/05 02:04:51 ezk Exp $
* $Id: ops_ufs.c,v 1.2 1999/01/10 21:53:51 ezk Exp $
*
*/
@ -132,7 +132,7 @@ mount_ufs(char *dir, char *fs_name, char *opts)
#endif /* HAVE_FIELD_UFS_ARGS_T_FLAGS */
#ifdef HAVE_FIELD_UFS_ARGS_T_UFS_FLAGS
ufs_args.ufs_flags = genflags; /* XXX: is this correct? */
ufs_args.ufs_flags = genflags;
#endif /* HAVE_FIELD_UFS_ARGS_T_UFS_FLAGS */
#ifdef HAVE_FIELD_UFS_ARGS_T_FSPEC

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1990 Jan-Simon Pendry
* Copyright (c) 1990 Imperial College of Science, Technology & Medicine
* Copyright (c) 1990 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: ops_umapfs.c,v 1.1.1.1 1998/11/05 02:04:51 ezk Exp $
* $Id: ops_umapfs.c,v 1.2 1999/01/10 21:53:51 ezk Exp $
*
*/

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1990 Jan-Simon Pendry
* Copyright (c) 1990 Imperial College of Science, Technology & Medicine
* Copyright (c) 1990 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: ops_unionfs.c,v 1.1.1.1 1998/11/05 02:04:51 ezk Exp $
* $Id: ops_unionfs.c,v 1.2 1999/01/10 21:53:51 ezk Exp $
*
*/

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1990 Jan-Simon Pendry
* Copyright (c) 1990 Imperial College of Science, Technology & Medicine
* Copyright (c) 1990 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: ops_xfs.c,v 1.1.1.1 1998/11/05 02:04:51 ezk Exp $
* $Id: ops_xfs.c,v 1.2 1999/01/10 21:53:52 ezk Exp $
*
*/

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1989 Jan-Simon Pendry
* Copyright (c) 1989 Imperial College of Science, Technology & Medicine
* Copyright (c) 1989 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: opts.c,v 1.2 1998/12/27 06:24:48 ezk Exp $
* $Id: opts.c,v 1.5 1999/08/16 01:16:23 ezk Exp $
*
*/
@ -95,6 +95,7 @@ struct functable {
*/
static int f_in_network(char *);
static int f_netgrp(char *);
static int f_netgrpd(char *);
static int f_exists(char *);
static int f_false(char *);
static int f_true(char *);
@ -218,6 +219,7 @@ static struct opt opt_fields[] = {
static struct functable functable[] = {
{ "in_network", f_in_network },
{ "netgrp", f_netgrp },
{ "netgrpd", f_netgrpd },
{ "exists", f_exists },
{ "false", f_false },
{ "true", f_true },
@ -494,7 +496,7 @@ eval_opts(char *opts, char *mapkey)
continue;
} else if (NSTREQ(f, "!", 1) && (func = functable_lookup(&f[1]))) {
/* then this is a negated prefixed function such as "!exists" */
plog(XLOG_USER, "executing negated function %s", &f[1]);
plog(XLOG_INFO, "executing negated function %s", &f[1]);
if ((*func) (arg)) {
return (0);
}
@ -730,7 +732,7 @@ f_in_network(char *arg)
}
/* test if this host is in netgroup (arg) */
/* test if this host (short hostname form) is in netgroup (arg) */
static int
f_netgrp(char *arg)
{
@ -744,6 +746,20 @@ f_netgrp(char *arg)
}
/* test if this host (fully-qualified name) is in netgroup (arg) */
static int
f_netgrpd(char *arg)
{
int status;
status = innetgr(arg, opt_hostd, NULL, NULL);
#ifdef DEBUG
plog(XLOG_USER, "netgrp = %s status = %d hostd = %s", arg, status, opt_hostd);
#endif /* DEBUG */
return status;
}
/* test if file (arg) exists via lstat */
static int
f_exists(char *arg)

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1990 Jan-Simon Pendry
* Copyright (c) 1990 Imperial College of Science, Technology & Medicine
* Copyright (c) 1990 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: restart.c,v 1.1.1.1 1998/11/05 02:04:49 ezk Exp $
* $Id: restart.c,v 1.2 1999/01/10 21:53:52 ezk Exp $
*
*/

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1989 Jan-Simon Pendry
* Copyright (c) 1989 Imperial College of Science, Technology & Medicine
* Copyright (c) 1989 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: rpc_fwd.c,v 1.1.1.1 1998/11/05 02:04:49 ezk Exp $
* $Id: rpc_fwd.c,v 1.2 1999/01/10 21:53:52 ezk Exp $
*
*/

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1990 Jan-Simon Pendry
* Copyright (c) 1990 Imperial College of Science, Technology & Medicine
* Copyright (c) 1990 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: sched.c,v 1.1.1.1 1998/11/05 02:04:49 ezk Exp $
* $Id: sched.c,v 1.3 1999/01/13 23:31:01 ezk Exp $
*
*/
@ -163,7 +163,7 @@ sched_task(cb_fun cf, voidp ca, voidp wchan)
pjob *p = sched_job(cf, ca);
#ifdef DEBUG
dlog("SLEEP on %#x", wchan);
dlog("SLEEP on %#lx", (unsigned long) wchan);
#endif /* DEBUG */
p->wchan = wchan;
p->pid = 0;

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1989 Jan-Simon Pendry
* Copyright (c) 1989 Imperial College of Science, Technology & Medicine
* Copyright (c) 1989 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: srvr_amfs_auto.c,v 1.1.1.1 1998/11/05 02:04:49 ezk Exp $
* $Id: srvr_amfs_auto.c,v 1.2 1999/01/10 21:53:53 ezk Exp $
*
*/

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1990 Jan-Simon Pendry
* Copyright (c) 1990 Imperial College of Science, Technology & Medicine
* Copyright (c) 1990 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: srvr_nfs.c,v 1.2 1998/12/27 06:24:48 ezk Exp $
* $Id: srvr_nfs.c,v 1.5 1999/09/08 23:36:39 ezk Exp $
*
*/
@ -136,7 +136,7 @@ start_ping(u_long nfs_version)
nfs_version = NFS_VERSION;
plog(XLOG_WARNING, "start_ping: nfs_version = 0 fixed");
}
plog(XLOG_INFO, "start_ping: nfs_version: %d", nfs_version);
plog(XLOG_INFO, "start_ping: nfs_version: %d", (int) nfs_version);
rpc_msg_init(&ping_msg, NFS_PROGRAM, nfs_version, NFSPROC_NULL);
@ -187,7 +187,7 @@ got_portmap(voidp pkt, int len, struct sockaddr_in * sa, struct sockaddr_in * ia
if (!error && port) {
#ifdef DEBUG
dlog("got port (%d) for mountd on %s", port, fs->fs_host);
dlog("got port (%d) for mountd on %s", (int) port, fs->fs_host);
#endif /* DEBUG */
/*
* Grab the port number. Portmap sends back
@ -201,7 +201,7 @@ got_portmap(voidp pkt, int len, struct sockaddr_in * sa, struct sockaddr_in * ia
} else {
#ifdef DEBUG
dlog("Error fetching port for mountd on %s", fs->fs_host);
dlog("\t error=%d, port=%d", error, port);
dlog("\t error=%d, port=%d", error, (int) port);
#endif /* DEBUG */
/*
* Almost certainly no mountd running on remote host
@ -282,7 +282,7 @@ recompute_portmap(fserver *fs)
if (fs->fs_version == 0)
plog(XLOG_WARNING, "recompute_portmap: nfs_version = 0 fixed");
plog(XLOG_INFO, "recompute_portmap: NFS version %d", fs->fs_version);
plog(XLOG_INFO, "recompute_portmap: NFS version %d", (int) fs->fs_version);
#ifdef HAVE_FS_NFS3
if (fs->fs_version == NFS_VERSION3)
mnt_version = MOUNTVERS3;
@ -290,7 +290,7 @@ recompute_portmap(fserver *fs)
#endif /* HAVE_FS_NFS3 */
mnt_version = MOUNTVERS;
plog(XLOG_INFO, "Using MOUNT version: %d", mnt_version);
plog(XLOG_INFO, "Using MOUNT version: %d", (int) mnt_version);
call_portmap(fs, nfs_auth, MOUNTPROG, mnt_version, (u_long) IPPROTO_UDP);
}
@ -667,7 +667,7 @@ find_nfs_srvr(mntfs *mf)
/* allow overriding if nfsv2 option is specified in mount options */
if (hasmntopt(&mnt, "nfsv2")) {
nfs_version = (u_long) 2; /* nullify any ``vers=X'' statements */
nfs_proto = "udp"; /* nullify any ``proto=tcp'' stmts */
nfs_proto = "udp"; /* nullify any ``proto=tcp'' statements */
plog(XLOG_WARNING, "found compatiblity option \"nfsv2\": set options vers=2, proto=udp for host %s", host);
}
#endif /* HAVE_NFS_NFSV2_H */
@ -725,7 +725,7 @@ find_nfs_srvr(mntfs *mf)
int proto_nfs_version;
char **p;
for (p = protocols; *p; p ++) {
for (p = protocols; *p; p++) {
proto_nfs_version = get_nfs_version(host, ip, nfs_version, *p);
if (proto_nfs_version > best_nfs_version) {
@ -756,7 +756,7 @@ find_nfs_srvr(mntfs *mf)
nfs_proto = "udp";
plog(XLOG_INFO, "Using NFS version %d, protocol %s on host %s",
nfs_version, nfs_proto, host);
(int) nfs_version, nfs_proto, host);
/*
* Try to find an existing fs server structure for this host.

View File

@ -1,5 +1,5 @@
.\"
.\" Copyright (c) 1997-1998 Erez Zadok
.\" Copyright (c) 1997-1999 Erez Zadok
.\" Copyright (c) 1990 Jan-Simon Pendry
.\" Copyright (c) 1990 Imperial College of Science, Technology & Medicine
.\" Copyright (c) 1990 The Regents of the University of California.
@ -38,7 +38,7 @@
.\"
.\" %W% (Berkeley) %G%
.\"
.\" $Id: amq.8,v 1.1.1.1 1998/11/05 02:04:52 ezk Exp $
.\" $Id: amq.8,v 1.2 1999/01/10 21:53:58 ezk Exp $
.\"
.TH AMQ 8 "25 April 1989"
.SH NAME

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1990 Jan-Simon Pendry
* Copyright (c) 1990 Imperial College of Science, Technology & Medicine
* Copyright (c) 1990 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: amq.c,v 1.2 1998/12/27 06:24:50 ezk Exp $
* $Id: amq.c,v 1.6 1999/09/08 23:36:40 ezk Exp $
*
*/
@ -48,13 +48,13 @@
#ifndef lint
char copyright[] = "\
@(#)Copyright (c) 1997-1998 Erez Zadok\n\
@(#)Copyright (c) 1997-1999 Erez Zadok\n\
@(#)Copyright (c) 1990 Jan-Simon Pendry\n\
@(#)Copyright (c) 1990 Imperial College of Science, Technology & Medicine\n\
@(#)Copyright (c) 1990 The Regents of the University of California.\n\
@(#)All rights reserved.\n";
#if __GNUC__ < 2
static char rcsid[] = "$Id: amq.c,v 1.2 1998/12/27 06:24:50 ezk Exp $";
static char rcsid[] = "$Id: amq.c,v 1.6 1999/09/08 23:36:40 ezk Exp $";
static char sccsid[] = "%W% (Berkeley) %G%";
#endif /* __GNUC__ < 2 */
#endif /* not lint */
@ -66,9 +66,6 @@ static char sccsid[] = "%W% (Berkeley) %G%";
#include <amq.h>
/* locals */
#if 0
char *progname;
#endif
static int flush_flag;
static int minfo_flag;
static int getpid_flag;
@ -96,15 +93,6 @@ static int amq_bind_resv_port(int td, u_short *pp);
static int privsock(int ty);
#endif /* not HAVE_TRANSPORT_TYPE_TLI */
/* dummy variables */
#if 0
char hostname[MAXHOSTNAMELEN];
pid_t mypid;
serv_state amd_state;
int foreground, orig_umask;
int debug_flags;
#endif
/* structures */
enum show_opt {
Full, Stats, Calc, Short, ShowDone
@ -247,7 +235,11 @@ show_mi(amq_mount_info_list *ml, enum show_opt e, int *mwid, int *dwid, int *twi
if (mi->mi_error > 0) {
extern int sys_nerr;
if (mi->mi_error < sys_nerr)
#ifdef HAVE_STRERROR
printf(" (%s)", strerror(mi->mi_error));
#else /* not HAVE_STRERROR */
printf(" (%s)", sys_errlist[mi->mi_error]);
#endif /* not HAVE_STRERROR */
else
printf(" (Error %d)", mi->mi_error);
} else if (mi->mi_error < 0) {
@ -337,7 +329,11 @@ main(int argc, char *argv[])
/*
* Parse arguments
*/
#ifdef ENABLE_AMQ_MOUNT
while ((opt_ch = getopt(argc, argv, "fh:l:msuvx:D:M:pP:TU")) != -1)
#else /* not ENABLE_AMQ_MOUNT */
while ((opt_ch = getopt(argc, argv, "fh:l:msuvx:D:pP:TU")) != -1)
#endif /* not ENABLE_AMQ_MOUNT */
switch (opt_ch) {
case 'f':
flush_flag = 1;
@ -388,10 +384,12 @@ main(int argc, char *argv[])
nodefault = 1;
break;
#ifdef ENABLE_AMQ_MOUNT
case 'M':
mount_map = optarg;
nodefault = 1;
break;
#endif /* ENABLE_AMQ_MOUNT */
case 'P':
amd_program_number = atoi(optarg);
@ -418,11 +416,20 @@ main(int argc, char *argv[])
show_usage:
fprintf(stderr, "\
Usage: %s [-h host] [[-f] [-m] [-p] [-v] [-s]] | [[-u] directory ...]]\n\
\t[-l logfile|\"syslog\"] [-x log_flags] [-D dbg_opts] [-M mapent]\n\
\t[-P prognum] [-T] [-U]\n", am_get_progname());
\t[-l logfile|\"syslog\"] [-x log_flags] [-D dbg_opts]%s\n\
\t[-P prognum] [-T] [-U]\n",
am_get_progname(),
#ifdef ENABLE_AMQ_MOUNT
" [-M mapent]"
#else /* not ENABLE_AMQ_MOUNT */
""
#endif /* not ENABLE_AMQ_MOUNT */
);
exit(1);
}
/* set use_udp and use_tcp flags both to on if none are defined */
if (!use_tcp_flag && !use_udp_flag)
use_tcp_flag = use_udp_flag = 1;

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1990 Jan-Simon Pendry
* Copyright (c) 1990 Imperial College of Science, Technology & Medicine
* Copyright (c) 1990 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: amq.h,v 1.1.1.1 1998/11/05 02:04:52 ezk Exp $
* $Id: amq.h,v 1.2 1999/01/10 21:53:59 ezk Exp $
*
*/

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1990 Jan-Simon Pendry
* Copyright (c) 1990 Imperial College of Science, Technology & Medicine
* Copyright (c) 1990 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: amq_clnt.c,v 1.1.1.1 1998/11/05 02:04:52 ezk Exp $
* $Id: amq_clnt.c,v 1.2 1999/01/10 21:53:59 ezk Exp $
*
*/

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1990 Jan-Simon Pendry
* Copyright (c) 1990 Imperial College of Science, Technology & Medicine
* Copyright (c) 1990 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: amq_xdr.c,v 1.1.1.1 1998/11/05 02:04:52 ezk Exp $
* $Id: amq_xdr.c,v 1.2 1999/01/10 21:53:59 ezk Exp $
*
*/

View File

@ -1,5 +1,5 @@
.\"
.\" Copyright (c) 1997-1998 Erez Zadok
.\" Copyright (c) 1997-1999 Erez Zadok
.\" Copyright (c) 1990 Jan-Simon Pendry
.\" Copyright (c) 1990 Imperial College of Science, Technology & Medicine
.\" Copyright (c) 1990 The Regents of the University of California.
@ -38,7 +38,7 @@
.\"
.\" %W% (Berkeley) %G%
.\"
.\" $Id: pawd.1,v 1.1.1.1 1998/11/05 02:04:52 ezk Exp $
.\" $Id: pawd.1,v 1.2 1999/01/10 21:53:59 ezk Exp $
.\"
.TH PAWD 1 "6 Jan 1998"
.SH NAME

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1990 Jan-Simon Pendry
* Copyright (c) 1990 Imperial College of Science, Technology & Medicine
* Copyright (c) 1990 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: pawd.c,v 1.2 1998/12/27 06:24:50 ezk Exp $
* $Id: pawd.c,v 1.5 1999/09/08 23:36:40 ezk Exp $
*
*/
@ -58,16 +58,6 @@
#include <am_defs.h>
#include <amq.h>
/* dummy variables */
#if 0
char *progname;
char hostname[MAXHOSTNAMELEN];
pid_t mypid;
serv_state amd_state;
int foreground, orig_umask;
int debug_flags;
#endif
/* statics */
static char *localhost="localhost";
static char newdir[MAXPATHLEN];
@ -77,7 +67,9 @@ static int
find_mt(amq_mount_tree *mt, char *dir)
{
while (mt) {
if (STREQ(mt->mt_type, "link") || STREQ(mt->mt_type, "nfs")) {
if (STREQ(mt->mt_type, "link") ||
STREQ(mt->mt_type, "nfs") ||
STREQ(mt->mt_type, "nfsl")) {
int len = strlen(mt->mt_mountpoint);
if (NSTREQ(mt->mt_mountpoint, dir, len) &&
((dir[len] == '\0') || (dir[len] == '/'))) {

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1990 Jan-Simon Pendry
* Copyright (c) 1990 Imperial College of Science, Technology & Medicine
* Copyright (c) 1990 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: checkmount_bsd44.c,v 1.1.1.1 1998/11/05 02:04:33 ezk Exp $
* $Id: checkmount_bsd44.c,v 1.2 1999/01/10 21:54:06 ezk Exp $
*
*/

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1990 Jan-Simon Pendry
* Copyright (c) 1990 Imperial College of Science, Technology & Medicine
* Copyright (c) 1990 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: mtab_bsd.c,v 1.1.1.1 1998/11/05 02:04:37 ezk Exp $
* $Id: mtab_bsd.c,v 1.2 1999/01/10 21:54:11 ezk Exp $
*
*/

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1990 Jan-Simon Pendry
* Copyright (c) 1990 Imperial College of Science, Technology & Medicine
* Copyright (c) 1990 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: nfs_prot_freebsd2.h,v 1.1.1.1 1998/11/05 02:04:38 ezk Exp $
* $Id: nfs_prot_freebsd2.h,v 1.2 1999/01/10 21:54:14 ezk Exp $
*
*/

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1990 Jan-Simon Pendry
* Copyright (c) 1990 Imperial College of Science, Technology & Medicine
* Copyright (c) 1990 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: nfs_prot_freebsd3.h,v 1.2 1998/12/27 06:25:03 ezk Exp $
* $Id: nfs_prot_freebsd3.h,v 1.4 1999/03/30 17:22:54 ezk Exp $
*
*/
@ -54,6 +54,9 @@
#ifdef HAVE_NFS_NFS_H
# include <nfs/nfs.h>
#endif /* HAVE_NFS_NFS_H */
#ifdef HAVE_UFS_UFS_UFSMOUNT_H
# include <ufs/ufs/ufsmount.h>
#endif /* HAVE_UFS_UFS_UFSMOUNT_H */
/*
* MACROS:

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1990 Jan-Simon Pendry
* Copyright (c) 1990 Imperial College of Science, Technology & Medicine
* Copyright (c) 1990 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: transp_sockets.c,v 1.2 1998/11/10 16:23:41 ezk Exp $
* $Id: transp_sockets.c,v 1.5 1999/08/22 21:12:31 ezk Exp $
*
* Socket specific utilities.
* -Erez Zadok <ezk@cs.columbia.edu>
@ -178,21 +178,6 @@ amu_svc_getcaller(SVCXPRT *xprt)
}
/*
* Bind NFS to a reserved port.
*/
static int
bindnfs_port(int so, u_short *nfs_portp)
{
u_short port;
int error = bind_resv_port(so, &port);
if (error == 0)
*nfs_portp = port;
return error;
}
/*
* Create the nfs service for amd
*/
@ -202,7 +187,7 @@ create_nfs_service(int *soNFSp, u_short *nfs_portp, SVCXPRT **nfs_xprtp, void (*
*soNFSp = socket(AF_INET, SOCK_DGRAM, 0);
if (*soNFSp < 0 || bindnfs_port(*soNFSp, nfs_portp) < 0) {
if (*soNFSp < 0 || bind_resv_port(*soNFSp, NULL) < 0) {
plog(XLOG_FATAL, "Can't create privileged nfs port");
return 1;
}
@ -210,6 +195,10 @@ create_nfs_service(int *soNFSp, u_short *nfs_portp, SVCXPRT **nfs_xprtp, void (*
plog(XLOG_FATAL, "cannot create rpc/udp service");
return 2;
}
if ((*nfs_portp = (*nfs_xprtp)->xp_port) >= IPPORT_RESERVED) {
plog(XLOG_FATAL, "Can't create privileged nfs port");
return 1;
}
if (!svc_register(*nfs_xprtp, NFS_PROGRAM, NFS_VERSION, dispatch_fxn, 0)) {
plog(XLOG_FATAL, "unable to register (NFS_PROGRAM, NFS_VERSION, 0)");
return 3;
@ -340,10 +329,10 @@ get_nfs_version(char *host, struct sockaddr_in *sin, u_long nfs_version, const c
if (clnt == NULL) {
#ifdef HAVE_CLNT_SPCREATEERROR
plog(XLOG_INFO, "get_nfs_version NFS(%d,%s) failed for %s :%s",
nfs_version, proto, host, clnt_spcreateerror(""));
(int) nfs_version, proto, host, clnt_spcreateerror(""));
#else /* not HAVE_CLNT_SPCREATEERROR */
plog(XLOG_INFO, "get_nfs_version NFS(%d,%s) failed for %s",
nfs_version, proto, host);
(int) nfs_version, proto, host);
#endif /* not HAVE_CLNT_SPCREATEERROR */
return 0;
}
@ -371,12 +360,12 @@ get_nfs_version(char *host, struct sockaddr_in *sin, u_long nfs_version, const c
#endif /* HAVE_FS_NFS3 */
}
plog(XLOG_INFO, "get_nfs_version NFS(%d,%s) failed for %s",
nfs_version, proto, host);
(int) nfs_version, proto, host);
return 0;
}
plog(XLOG_INFO, "get_nfs_version: returning (%d,%s) on host %s",
nfs_version, proto, host);
(int) nfs_version, proto, host);
return nfs_version;
}

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1990 Jan-Simon Pendry
* Copyright (c) 1990 Imperial College of Science, Technology & Medicine
* Copyright (c) 1990 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: umount_bsd44.c,v 1.1.1.1 1998/11/05 02:04:43 ezk Exp $
* $Id: umount_bsd44.c,v 1.2 1999/01/10 21:54:22 ezk Exp $
*
*/

View File

@ -1,6 +1,6 @@
\input texinfo @c -*-texinfo-*-
@c
@c Copyright (c) 1997-1998 Erez Zadok
@c Copyright (c) 1997-1999 Erez Zadok
@c Copyright (c) 1989 Jan-Simon Pendry
@c Copyright (c) 1989 Imperial College of Science, Technology & Medicine
@c Copyright (c) 1989 The Regents of the University of California.
@ -38,7 +38,7 @@
@c
@c %W% (Berkeley) %G%
@c
@c $Id: am-utils.texi,v 1.2 1998/12/27 06:25:16 ezk Exp $
@c $Id: am-utils.texi,v 1.10 1999/09/08 23:36:49 ezk Exp $
@c
@setfilename am-utils.info
@ -49,6 +49,9 @@
* Am-utils: (am-utils). The Amd automounter suite of utilities
@end direntry
@settitle
@setchapternewpage odd
@titlepage
@title Am-utils (4.4BSD Automounter Utilities)
@subtitle For version @value{VERSION}, @value{UPDATED}
@ -57,7 +60,7 @@
(Originally by Jan-Simon Pendry and Nick Williams)
@page
Copyright @copyright{} 1997-1998 Erez Zadok
Copyright @copyright{} 1997-1999 Erez Zadok
@*
Copyright @copyright{} 1989 Jan-Simon Pendry
@*
@ -212,7 +215,7 @@ of the BSD network version 2 distribution
Revision 6.0 was made independently by @email{ezk@@cs.columbia.edu,Erez
Zadok} at the @uref{http://www.cs.columbia.edu/,Computer Science
Department} of @uref{http://www.columbia.edu/,Columbia University}, as
part of his @uref{http://www.cs.columbia.edu/~ezk/research/tp/thesis_proposal.html,PhD thesis work}. @xref{History} for more details.
part of his @uref{http://www.cs.columbia.edu/~ezk/research/tp/thesis_proposal.html,PhD thesis work}. @xref{History}, for more details.
@unnumberedsec Bug Reports
@cindex Bug reports
@ -702,6 +705,10 @@ features.
@c {Config} {Compile} {Amd} {NFS V.3} {Shlib} {Hlfsd}
@tab yes @tab yes @tab yes @tab n/a @tab yes @tab ?
@item @b{alphaev5-unknown-linux-gnu-rh5.2}
@c {Config} {Compile} {Amd} {NFS V.3} {Shlib} {Hlfsd}
@tab yes @tab yes @tab yes @tab n/a @tab yes @tab ?
@item @b{hppa1.0-hp-hpux11.00}
@c {Config} {Compile} {Amd} {NFS V.3} {Shlib} {Hlfsd}
@tab yes @tab yes @tab yes @tab no @tab yes @tab ?
@ -712,7 +719,7 @@ features.
@item @b{hppa1.1-hp-hpux10.20}
@c {Config} {Compile} {Amd} {NFS V.3} {Shlib} {Hlfsd}
@tab yes @tab yes @tab yes @tab n/a @tab no @tab ?
@tab yes @tab yes @tab yes @tab no @tab no @tab ?
@item @b{hppa1.1-hp-hpux9.01}
@c {Config} {Compile} {Amd} {NFS V.3} {Shlib} {Hlfsd}
@ -736,15 +743,19 @@ features.
@item @b{i386-pc-bsdi3.0}
@c {Config} {Compile} {Amd} {NFS V.3} {Shlib} {Hlfsd}
@tab yes @tab yes @tab yes @tab n/a @tab no @tab ?
@tab yes @tab yes @tab yes @tab yes @tab no @tab ?
@item @b{i386-pc-bsdi3.1}
@c {Config} {Compile} {Amd} {NFS V.3} {Shlib} {Hlfsd}
@tab yes @tab yes @tab yes @tab n/a @tab no @tab ?
@tab yes @tab yes @tab yes @tab yes @tab no @tab ?
@item @b{i386-pc-bsdi4.0}
@c {Config} {Compile} {Amd} {NFS V.3} {Shlib} {Hlfsd}
@tab yes @tab yes @tab yes @tab n/a @tab yes @tab ?
@tab yes @tab yes @tab yes @tab yes @tab yes @tab ?
@item @b{i386-pc-bsdi4.0.1}
@c {Config} {Compile} {Amd} {NFS V.3} {Shlib} {Hlfsd}
@tab yes @tab yes @tab yes @tab yes @tab yes @tab ?
@item @b{i386-pc-solaris2.5.1}
@c {Config} {Compile} {Amd} {NFS V.3} {Shlib} {Hlfsd}
@ -782,6 +793,22 @@ features.
@c {Config} {Compile} {Amd} {NFS V.3} {Shlib} {Hlfsd}
@tab yes @tab yes @tab yes @tab yes @tab yes @tab ?
@item @b{i386-unknown-freebsdelf3.0}
@c {Config} {Compile} {Amd} {NFS V.3} {Shlib} {Hlfsd}
@tab yes @tab yes @tab yes @tab yes @tab yes @tab ?
@item @b{i386-unknown-freebsdelf3.1}
@c {Config} {Compile} {Amd} {NFS V.3} {Shlib} {Hlfsd}
@tab yes @tab yes @tab yes @tab yes @tab yes @tab ?
@item @b{i386-unknown-freebsdelf3.2}
@c {Config} {Compile} {Amd} {NFS V.3} {Shlib} {Hlfsd}
@tab yes @tab yes @tab yes @tab yes @tab yes @tab ?
@item @b{i386-unknown-freebsdelf4.0}
@c {Config} {Compile} {Amd} {NFS V.3} {Shlib} {Hlfsd}
@tab yes @tab yes @tab yes @tab yes @tab yes @tab ?
@item @b{i386-unknown-netbsd1.2.1}
@c {Config} {Compile} {Amd} {NFS V.3} {Shlib} {Hlfsd}
@tab yes @tab yes @tab yes @tab yes @tab yes @tab ?
@ -802,6 +829,10 @@ features.
@c {Config} {Compile} {Amd} {NFS V.3} {Shlib} {Hlfsd}
@tab yes @tab yes @tab yes @tab yes @tab yes @tab ?
@item @b{i386-unknown-netbsd1.4}
@c {Config} {Compile} {Amd} {NFS V.3} {Shlib} {Hlfsd}
@tab yes @tab yes @tab yes @tab yes @tab yes @tab ?
@item @b{i386-unknown-openbsd2.1}
@c {Config} {Compile} {Amd} {NFS V.3} {Shlib} {Hlfsd}
@tab yes @tab yes @tab yes @tab yes @tab yes @tab ?
@ -818,14 +849,26 @@ features.
@c {Config} {Compile} {Amd} {NFS V.3} {Shlib} {Hlfsd}
@tab yes @tab yes @tab yes @tab yes @tab yes @tab ?
@item @b{i386-unknown-openbsd2.5}
@c {Config} {Compile} {Amd} {NFS V.3} {Shlib} {Hlfsd}
@tab yes @tab yes @tab yes @tab yes @tab yes @tab ?
@item @b{i486-ncr-sysv4.3.03}
@c {Config} {Compile} {Amd} {NFS V.3} {Shlib} {Hlfsd}
@tab yes @tab yes @tab ? @tab yes @tab yes @tab ?
@item @b{i486-pc-linux-gnu-rh6.0}
@c {Config} {Compile} {Amd} {NFS V.3} {Shlib} {Hlfsd}
@tab yes @tab yes @tab yes @tab n/a @tab yes @tab ?
@item @b{i486-pc-linux-gnulibc1}
@c {Config} {Compile} {Amd} {NFS V.3} {Shlib} {Hlfsd}
@tab yes @tab yes @tab yes @tab n/a @tab yes @tab ?
@item @b{i486-pc-linux-gnulibc1-rh4.2}
@c {Config} {Compile} {Amd} {NFS V.3} {Shlib} {Hlfsd}
@tab yes @tab yes @tab yes @tab n/a @tab yes @tab ?
@item @b{i486-pc-linux-gnuoldld}
@c {Config} {Compile} {Amd} {NFS V.3} {Shlib} {Hlfsd}
@tab yes @tab yes @tab yes @tab n/a @tab yes @tab ?
@ -834,14 +877,39 @@ features.
@c {Config} {Compile} {Amd} {NFS V.3} {Shlib} {Hlfsd}
@tab yes @tab yes @tab yes @tab n/a @tab yes @tab ?
@item @b{i586-pc-linux-gnu-rh5.2}
@c {Config} {Compile} {Amd} {NFS V.3} {Shlib} {Hlfsd}
@tab yes @tab yes @tab yes @tab n/a @tab yes @tab ?
@item @b{i586-pc-linux-gnu-rh6.0}
@c {Config} {Compile} {Amd} {NFS V.3} {Shlib} {Hlfsd}
@tab yes @tab yes @tab yes @tab n/a @tab yes @tab ?
@item @b{i586-pc-linux-gnulibc1}
@c {Config} {Compile} {Amd} {NFS V.3} {Shlib} {Hlfsd}
@tab yes @tab yes @tab yes @tab n/a @tab yes @tab ?
@item @b{i586-pc-linux-gnulibc1-rh4.2}
@c {Config} {Compile} {Amd} {NFS V.3} {Shlib} {Hlfsd}
@tab yes @tab yes @tab yes @tab n/a @tab yes @tab ?
@item @b{i686-pc-linux-gnu}
@c {Config} {Compile} {Amd} {NFS V.3} {Shlib} {Hlfsd}
@tab yes @tab yes @tab yes @tab n/a @tab yes @tab ?
@item @b{i686-pc-linux-gnu-rh5.2}
@c {Config} {Compile} {Amd} {NFS V.3} {Shlib} {Hlfsd}
@tab yes @tab yes @tab yes @tab n/a @tab yes @tab ?
@item @b{i686-pc-linux-gnu-rh6.0}
@c {Config} {Compile} {Amd} {NFS V.3} {Shlib} {Hlfsd}
@tab yes @tab yes @tab yes @tab n/a @tab yes @tab ?
@item @b{i686-pc-linux-gnulibc}
@c {Config} {Compile} {Amd} {NFS V.3} {Shlib} {Hlfsd}
@tab yes @tab yes @tab yes @tab n/a @tab yes @tab ?
@item @b{i686-pc-linux-gnulibc1}
@c {Config} {Compile} {Amd} {NFS V.3} {Shlib} {Hlfsd}
@tab yes @tab yes @tab yes @tab n/a @tab yes @tab ?
@ -894,6 +962,10 @@ features.
@c {Config} {Compile} {Amd} {NFS V.3} {Shlib} {Hlfsd}
@tab yes @tab yes @tab ? @tab yes @tab ? @tab ?
@item @b{powerpc-unknown-linux-gnu}
@c {Config} {Compile} {Amd} {NFS V.3} {Shlib} {Hlfsd}
@tab yes @tab yes @tab yes @tab n/a @tab yes @tab ?
@item @b{rs6000-ibm-aix3.2}
@c {Config} {Compile} {Amd} {NFS V.3} {Shlib} {Hlfsd}
@tab yes @tab yes @tab yes @tab n/a @tab ? @tab ?
@ -1573,6 +1645,7 @@ These are the selectors currently implemented.
* exists Selector Function::
* false Selector Function::
* netgrp Selector Function::
* netgrpd Selector Function::
* in_network Selector Function::
* true Selector Function::
@end menu
@ -1851,7 +1924,7 @@ evaluates to true. Otherwise it evaluates to false.
Always evaluates to false. @i{ARG} is ignored.
@c ----------------------------------------------------------------
@node netgrp Selector Function, in_network Selector Function, false Selector Function, Selectors
@node netgrp Selector Function, netgrpd Selector Function, false Selector Function, Selectors
@comment node-name, next, previous, up
@subsubsection netgrp Selector Function
@cindex netgrp Selector Function
@ -1860,9 +1933,9 @@ Always evaluates to false. @i{ARG} is ignored.
@cindex Mount selector; netgrp
@cindex Selector; netgrp
If the current host as determined by the value of @code{$@{host@}} is a
member of the netgroup @i{ARG}, this selector evaluates to true.
Otherwise it evaluates to false.
If the current host as determined by the value of @code{$@{host@}}
(e.g., short host name) is a member of the netgroup @i{ARG}, this
selector evaluates to true. Otherwise it evaluates to false.
For example, suppose you have a netgroup @samp{ppp-hosts}, and for
reasons of performance, these have a local @file{/home} partition, while
@ -1875,7 +1948,26 @@ home/* netgrp(ppp-hosts);type:=link;fs:=/local/$@{key@} \
@end example
@c ----------------------------------------------------------------
@node in_network Selector Function, true Selector Function, netgrp Selector Function, Selectors
@node netgrpd Selector Function, in_network Selector Function, netgrp Selector Function, Selectors
@comment node-name, next, previous, up
@subsubsection netgrpd Selector Function
@cindex netgrpd Selector Function
@cindex netgrpd, boolean mount selector
@cindex !netgrpd, boolean mount selector
@cindex Mount selector; netgrpd
@cindex Selector; netgrpd
If the current host as determined by the value of @code{$@{hostd@}} is a
member of the netgroup @i{ARG}, this selector evaluates to true.
Otherwise it evaluates to false.
The @samp{netgrpd} function uses fully-qualified host names
(@code{$@{hostd@}}) to match netgroup names, while the @samp{netgrp}
function (@pxref{netgrp Selector Function}) uses short host names
(@code{$@{host@}}).
@c ----------------------------------------------------------------
@node in_network Selector Function, true Selector Function, netgrpd Selector Function, Selectors
@comment node-name, next, previous, up
@subsubsection in_network Selector Function
@cindex in_network Selector Function
@ -1951,10 +2043,14 @@ The following options apply to more than one filesystem type.
This option adds additional options to default options normally
specified in the @samp{/defaults} entry or the defaults of the key entry
being processed (@xref{opts Option}). Normally when you specify
being processed (@pxref{opts Option}). Normally when you specify
@samp{opts} in both the @samp{/defaults} and the map entry, the latter
overrides the former completely. But with @samp{addopts} it will
append the options and override any conflicting ones.
overrides the former completely. But with @samp{addopts} it will append
the options and override any conflicting ones.
@samp{addopts} also overrides the value of the @samp{remopts} option
(@pxref{remopts Option}), which unless specified defaults to the value
of @samp{opts}.
Options which start with @samp{no} will override those with the same
name that do not start with @samp{no} and vice verse. Special handling
@ -2109,12 +2205,23 @@ Allow local special devices on this filesystem.
@item dumbtimr
@cindex Mount flags; dumbtimr
(XXX: a dumb timer?)
Turn off the dynamic retransmit timeout estimator. This may be useful
for UDP mounts that exhibit high retry rates, since it is possible that
the dynamically estimated timeout interval is too short.
@item extatt
@cindex Mount flags; extatt
Enable extended attributes in ISO-9660 file systems.
@item fsid
@cindex Mount flags; fsid
Set ID of filesystem.
@item gens
@cindex Mount flags; gens
Enable generations in ISO-9660 file systems. Generations allow you to
see all versions of a given file.
@item grpid
@cindex Mount flags; grpid
Use BSD directory group-id semantics.
@ -2143,7 +2250,9 @@ Turn off the attribute cache.
@item noauto
@cindex Mount flags; noauto
(XXX: No automatic what?)
This option is used by the mount command in @samp{/etc/fstab} or
@samp{/etc/vfstab} and means not to mount this file system when mount -a
is used.
@item nocache
@cindex Mount flags; nocache
@ -2173,6 +2282,11 @@ Don't allow local special devices on this filesystem.
@cindex Mount flags; noint
Do not allow keyboard interrupts for this mount
@item norrip
@cindex Mount flags; norrip
Turn off using of the Rock Ridge Interchange Protocol (RRIP) extensions
to ISO-9660.
@item nosub
@cindex Mount flags; nosub
Disallow mounts beneath this mount.
@ -2665,7 +2779,7 @@ Print version information on standard error and then exit. The output
is of the form:
@example
Copyright (c) 1997-1998 Erez Zadok
Copyright (c) 1997-1999 Erez Zadok
Copyright (c) 1990 Jan-Simon Pendry
Copyright (c) 1990 Imperial College of Science, Technology & Medicine
Copyright (c) 1990 The Regents of the University of California.
@ -3297,11 +3411,12 @@ The following option must be specified:
the block special device to be mounted.
@end table
A cdfs entry might be:
Some operating systems will fail to mount read-only CDs unless the
@samp{ro} option is specified. A cdfs entry might be:
@example
cdfs os==sunos4;type:=cdfs;dev:=/dev/sr0 \
os==sunos5;type:=cdfs;dev:=/dev/dsk/c0t6d0s2
os==sunos5;addopts:=ro;type:=cdfs;dev:=/dev/dsk/c0t6d0s2
@end example
@c ----------------------------------------------------------------
@ -3730,7 +3845,7 @@ dylan/dk5 type:=ufs;dev:=/dev/dsk/5s0
The @dfn{direct} (@samp{type:=direct}) filesystem is almost identical to the automount
filesystem. Instead of appearing to be a directory of mount points, it
appears as a symbolic link to a mounted filesystem. The mount is done
at the time the link is accessed. @xref{Automount Filesystem} for a
at the time the link is accessed. @xref{Automount Filesystem}, for a
list of required options.
Direct automount points are created by specifying the @samp{direct}
@ -6789,7 +6904,7 @@ accessible.
@end table
For discussion on other files used by @i{Hlfsd}, see @ref{lostaltmail} and
For discussion on other files used by @i{Hlfsd}, see @xref{lostaltmail}, and
@ref{lostaltmail.conf-sample}.
@c ################################################################
@ -6806,6 +6921,7 @@ am-utils, and get installed.
* amd.conf-sample::
* amd2ldif::
* amd2sun::
* automount2amd::
* ctl-amd::
* ctl-hlfsd::
* expn::
@ -6851,7 +6967,7 @@ amd2ldif @i{mapname} @i{base} < @i{amd.mapfile} > @i{mapfile.ldif}
@end example
@c ----------------------------------------------------------------
@node amd2sun, ctl-amd, amd2ldif, Assorted Tools
@node amd2sun, automount2amd, amd2ldif, Assorted Tools
@comment node-name, next, previous, up
@section amd2sun
@pindex amd2sun
@ -6864,7 +6980,57 @@ amd2sun < @i{amd.mapfile} > @i{auto_mapfile}
@end example
@c ----------------------------------------------------------------
@node ctl-amd, ctl-hlfsd, amd2sun, Assorted Tools
@node automount2amd, ctl-amd, amd2sun, Assorted Tools
@comment node-name, next, previous, up
@section automount2amd
@pindex automount2amd
A script to convert old Sun Automounter maps to @i{Amd} maps.
Say you have the Sun automount file @i{auto.foo}, with these two lines:
@example
home earth:/home
moon -ro,intr server:/proj/images
@end example
Running
@example
automount2amd auto.foo > amd.foo
@end example
will produce the @i{Amd} map @i{amd.foo} with this content:
@example
# generated by automount2amd on Sat Aug 14 17:59:32 US/Eastern 1999
/defaults \\
type:=nfs;opts:=rw,grpid,nosuid,utimeout=600
home \
host==earth;type:=link;fs:=/home \\
rhost:=earth;rfs:=/home
moon \
-addopts:=ro,intr \\
host==server;type:=link;fs:=/proj/images \\
rhost:=server;rfs:=/proj/images
@end example
This perl script will use the following @i{/default} entry
@example
type:=nfs;opts:=rw,grpid,nosuid,utimeout=600
@end example
If you wish to override that, define the @b{$DEFAULTS} environment
variable, or modify the script.
If you wish to generate Amd maps using the @i{hostd} (@pxref{hostd
Selector Variable}) @i{Amd} map syntax, then define the environment
variable @b{$DOMAIN} or modify the script.
Note that automount2amd does not understand newer Sun Automount map
syntax, those used by autofs.
@c ----------------------------------------------------------------
@node ctl-amd, ctl-hlfsd, automount2amd, Assorted Tools
@comment node-name, next, previous, up
@section ctl-amd
@pindex ctl-amd
@ -6881,7 +7047,7 @@ Stop the running @i{Amd} (if any), safely wait for it to terminate, and
then start a new process --- only if the previous one died cleanly.
@end table
@xref{Run-time Administration} for more details.
@xref{Run-time Administration}, for more details.
@c ----------------------------------------------------------------
@node ctl-hlfsd, expn, ctl-amd, Assorted Tools
@ -6903,7 +7069,7 @@ terminate, and then start a new process --- only if the previous one
died cleanly.
@end table
@xref{Hlfsd} for more details.
@xref{Hlfsd}, for more details.
@c ----------------------------------------------------------------
@node expn, fix-amd-map, ctl-hlfsd, Assorted Tools
@ -6994,7 +7160,7 @@ lostaltmail
@end example
This script needs a configuration file @samp{lostaltmail.conf} set up
with the right parameters to properly work. @xref{Hlfsd} for more
with the right parameters to properly work. @xref{Hlfsd}, for more
details.
@c ----------------------------------------------------------------
@ -7621,7 +7787,7 @@ in @dfn{italic} are replaced by an appropriate string. Variables,
output.
Log messages are either sent directly to a file,
or logged via the @b{syslog}(3) mechanism. @xref{log_file Parameter}
or logged via the @b{syslog}(3) mechanism. @xref{log_file Parameter}.
In either case, entries in the file are of the form:
@example
@i{date-string} @i{hostname} @t{amd[}@i{pid}@t{]} @i{message}
@ -7890,5 +8056,7 @@ All other registered trademarks are owned by their respective owners.
@c LocalWords: moisil FSinfo Libtool Unmounting sublink fileservers NullProc
@c LocalWords: gethostname mount's unmounts linkx remounts unmounting UAs SA's
@c LocalWords: mountpoint mountpoints unescaped UIDs util's overlayed uref EFS
@c LocalWords: serv maxgroups nfsl cachedir copt cfsadmin efs addopts fg
@c LocalWords: nointr
@c LocalWords: serv maxgroups nfsl cachedir copt cfsadmin efs addopts fg ROMs
@c LocalWords: nointr extatt setchapternewpage columnfractions alphaev gnulibc
@c LocalWords: freebsdelf gnuoldld ifhtml defperm nodefperm norrip RRIP rrip
@c LocalWords: noversion attr XXXXXX netgrpd

View File

@ -1,3 +1,3 @@
@set UPDATED 27 December 1998
@set EDITION 6.0
@set VERSION 6.0
@set UPDATED 8 September 1999
@set EDITION 6.0.1
@set VERSION 6.0.1

View File

@ -1,3 +1,3 @@
@set UPDATED 27 December 1998
@set EDITION 6.0
@set VERSION 6.0
@set UPDATED 8 September 1999
@set EDITION 6.0.1
@set VERSION 6.0.1

View File

@ -1,5 +1,5 @@
.\"
.\" Copyright (c) 1997-1998 Erez Zadok
.\" Copyright (c) 1997-1999 Erez Zadok
.\" Copyright (c) 1990 Jan-Simon Pendry
.\" Copyright (c) 1990 Imperial College of Science, Technology & Medicine
.\" Copyright (c) 1990 The Regents of the University of California.
@ -38,7 +38,7 @@
.\"
.\" %W% (Berkeley) %G%
.\"
.\" $Id: fixmount.8,v 1.1.1.1 1998/11/05 02:04:53 ezk Exp $
.\" $Id: fixmount.8,v 1.2 1999/01/10 21:54:26 ezk Exp $
.\"
.TH FIXMOUNT 8L "26 Feb 1993"
.SH NAME

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1990 Jan-Simon Pendry
* Copyright (c) 1990 Imperial College of Science, Technology & Medicine
* Copyright (c) 1990 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: fixmount.c,v 1.2 1998/12/27 06:25:20 ezk Exp $
* $Id: fixmount.c,v 1.4 1999/02/04 07:24:42 ezk Exp $
*
*/
@ -86,15 +86,6 @@ void fix_rmtab(CLIENT *, char *, mountlist, int, int);
void print_dump(mountlist);
void usage(void);
/* dummy variables */
#if 0
char *progname;
char hostname[MAXHOSTNAMELEN];
pid_t mypid;
serv_state amd_state;
int foreground, orig_umask;
int debug_flags;
#endif
void
usage(void)

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1989 Jan-Simon Pendry
* Copyright (c) 1989 Imperial College of Science, Technology & Medicine
* Copyright (c) 1989 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: fsi_analyze.c,v 1.1.1.1 1998/11/05 02:04:53 ezk Exp $
* $Id: fsi_analyze.c,v 1.2 1999/01/10 21:54:27 ezk Exp $
*
*/

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1989 Jan-Simon Pendry
* Copyright (c) 1989 Imperial College of Science, Technology & Medicine
* Copyright (c) 1989 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: fsi_data.h,v 1.1.1.1 1998/11/05 02:04:54 ezk Exp $
* $Id: fsi_data.h,v 1.2 1999/01/10 21:54:27 ezk Exp $
*
*/

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1989 Jan-Simon Pendry
* Copyright (c) 1989 Imperial College of Science, Technology & Medicine
* Copyright (c) 1989 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: fsi_dict.c,v 1.1.1.1 1998/11/05 02:04:53 ezk Exp $
* $Id: fsi_dict.c,v 1.2 1999/01/10 21:54:28 ezk Exp $
*
*/

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1989 Jan-Simon Pendry
* Copyright (c) 1989 Imperial College of Science, Technology & Medicine
* Copyright (c) 1989 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: fsi_gram.y,v 1.1.1.1 1998/11/05 02:04:54 ezk Exp $
* $Id: fsi_gram.y,v 1.3 1999/04/16 14:21:14 ezk Exp $
*
*/
@ -50,6 +50,22 @@
#include <fsi_data.h>
#include <fsinfo.h>
/* AIX requires this to be the first thing in the file. */
#ifndef __GNUC__
# if HAVE_ALLOCA_H
# include <alloca.h>
# else /* not HAVE_ALLOCA_H */
# ifdef _AIX
#pragma alloca
# else /* not _AIX */
# ifndef alloca
/* predefined by HP cc +Olibcalls */
voidp alloca();
# endif /* not alloca */
# endif /* not _AIX */
# endif /* not HAVE_ALLOCA_H */
#endif /* not __GNUC__ */
extern qelem *list_of_hosts, *list_of_automounts;
%}

View File

@ -1,6 +1,6 @@
%{
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1989 Jan-Simon Pendry
* Copyright (c) 1989 Imperial College of Science, Technology & Medicine
* Copyright (c) 1989 The Regents of the University of California.
@ -39,7 +39,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: fsi_lex.l,v 1.1.1.1 1998/11/05 02:04:54 ezk Exp $
* $Id: fsi_lex.l,v 1.2 1999/01/10 21:54:28 ezk Exp $
*
*/

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1989 Jan-Simon Pendry
* Copyright (c) 1989 Imperial College of Science, Technology & Medicine
* Copyright (c) 1989 The Regents of the University of California.
@ -35,7 +35,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: fsi_util.c,v 1.1.1.1 1998/11/05 02:04:53 ezk Exp $
* $Id: fsi_util.c,v 1.2 1999/01/10 21:54:28 ezk Exp $
*
*/

View File

@ -1,5 +1,5 @@
.\"
.\" Copyright (c) 1997-1998 Erez Zadok
.\" Copyright (c) 1997-1999 Erez Zadok
.\" Copyright (c) 1993 Jan-Simon Pendry.
.\" Copyright (c) 1993
.\" The Regents of the University of California. All rights reserved.
@ -33,7 +33,7 @@
.\" SUCH DAMAGE.
.\"
.\" from: @(#)fsinfo.8 8.1 (Berkeley) 6/28/93
.\" $Id: fsinfo.8,v 1.1.1.1 1998/11/05 02:04:54 ezk Exp $
.\" $Id: fsinfo.8,v 1.2 1999/01/10 21:54:28 ezk Exp $
.\"
.TH FSINFO 8 "June 28, 1993"
.SH NAME

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1989 Jan-Simon Pendry
* Copyright (c) 1989 Imperial College of Science, Technology & Medicine
* Copyright (c) 1989 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: fsinfo.c,v 1.2 1998/12/27 06:25:21 ezk Exp $
* $Id: fsinfo.c,v 1.4 1999/02/04 07:24:44 ezk Exp $
*
*/
@ -79,14 +79,6 @@ char *exportfs_pref;
char *fstab_pref;
char *mount_pref;
/* dummy variables */
#if 0
pid_t mypid;
serv_state amd_state;
int foreground, orig_umask;
int debug_flags;
#endif
/*
* Argument cracking...

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1989 Jan-Simon Pendry
* Copyright (c) 1989 Imperial College of Science, Technology & Medicine
* Copyright (c) 1989 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: fsinfo.h,v 1.2 1998/12/27 06:25:21 ezk Exp $
* $Id: fsinfo.h,v 1.3 1999/01/10 21:54:29 ezk Exp $
*
*/

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1989 Jan-Simon Pendry
* Copyright (c) 1989 Imperial College of Science, Technology & Medicine
* Copyright (c) 1989 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: wr_atab.c,v 1.1.1.1 1998/11/05 02:04:53 ezk Exp $
* $Id: wr_atab.c,v 1.2 1999/01/10 21:54:29 ezk Exp $
*
*/

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1997-1998 Erez Zadok
* Copyright (c) 1997-1999 Erez Zadok
* Copyright (c) 1989 Jan-Simon Pendry
* Copyright (c) 1989 Imperial College of Science, Technology & Medicine
* Copyright (c) 1989 The Regents of the University of California.
@ -38,7 +38,7 @@
*
* %W% (Berkeley) %G%
*
* $Id: wr_bparam.c,v 1.1.1.1 1998/11/05 02:04:53 ezk Exp $
* $Id: wr_bparam.c,v 1.2 1999/01/10 21:54:29 ezk Exp $
*
*/

Some files were not shown because too many files have changed in this diff Show More