home *** CD-ROM | disk | FTP | other *** search
Text File | 1994-01-17 | 91.3 KB | 4,282 lines |
- Newsgroups: comp.sources.misc
- From: youki-k@is.aist-nara.ac.jp (Youki Kadobayashi)
- Subject: v41i096: wwfs - WorldWide File System, Part11/22
- Message-ID: <1994Jan17.202312.19971@sparky.sterling.com>
- X-Md4-Signature: bd0029767b2f823906c40dfa3a4f2b43
- Sender: kent@sparky.sterling.com (Kent Landfield)
- Organization: Nara Institute of Science and Technology, Japan
- Date: Mon, 17 Jan 1994 20:23:12 GMT
- Approved: kent@sparky.sterling.com
-
- Submitted-by: youki-k@is.aist-nara.ac.jp (Youki Kadobayashi)
- Posting-number: Volume 41, Issue 96
- Archive-name: wwfs/part11
- Environment: UNIX, inet
-
- #! /bin/sh
- # This is a shell archive. Remove anything before this line, then feed it
- # into a shell via "sh file" or similar. To overwrite existing files,
- # type "sh file -c".
- # Contents: csd/nfs_reply.c doc/manual.ps.B
- # mosaic/Mosaic-2.0+wwfs.diff
- # Wrapped by kent@sparky on Sun Jan 16 17:48:34 1994
- PATH=/bin:/usr/bin:/usr/ucb:/usr/local/bin:/usr/lbin:$PATH ; export PATH
- echo If this archive is complete, you will see the following message:
- echo ' "shar: End of archive 11 (of 22)."'
- if test -f 'csd/nfs_reply.c' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'csd/nfs_reply.c'\"
- else
- echo shar: Extracting \"'csd/nfs_reply.c'\" \(9289 characters\)
- sed "s/^X//" >'csd/nfs_reply.c' <<'END_OF_FILE'
- X/*
- X * WorldWide File System
- X * Copyright (c) 1992,1993 Youki Kadobayashi
- X * Copyright (c) 1992,1993 Osaka University
- X * All rights reserved.
- X *
- X * Permission to use, copy, modify and distribute this software and its
- X * documentation is hereby granted, provided that the following conditions
- X * are met:
- X * 1. Both the copyright notice and this permission notice appear in
- X * all copies of the software, derivative works or modified versions,
- X * and any portions thereof, and that both notices appear in
- X * supporting documentation.
- X * 2. All advertising materials mentioning features or use of this software
- X * must display the following acknowledgement:
- X * This product includes software developed by the Osaka University
- X * and its contributors.
- X * 3. Neither the name of the University nor the names of its contributors
- X * may be used to endorse or promote products derived from this software
- X * without specific prior written permission.
- X *
- X * THIS SOFTWARE IS PROVIDED BY THE DEVELOPER ``AS IS'' AND OSAKA
- X * UNIVERSITY DISCLAIMS ANY LIABILITY OF ANY KIND FOR ANY DAMAGES
- X * WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE.
- X *
- X * Osaka University requests users of this software to return to
- X *
- X * Youki Kadobayashi
- X * Department of Information and Computer Sciences
- X * Osaka University, Toyonaka 560, Osaka, Japan
- X *
- X * any improvements or extensions that they make and grant Osaka
- X * University the rights to redistribute these changes.
- X */
- X/* NFS reply */
- Xstatic char *AtFSid = "$Header: nfs_reply.c[109.0] Wed Nov 24 03:47:13 1993 youki-k@is.aist-nara.ac.jp saved $";
- X
- X#include <sys/file.h> /* for O_RDONLY */
- X#include "wfs.h"
- X#include "util.h"
- X#include "global.h"
- X
- X/* translation of WFS semantics to NFS errno */
- Xstatic nfsstat nfserr[] = {
- X NFS_OK, /* WF_REP_OK: no error */
- X NFSERR_PERM, /* WF_ERR_PERM: Not owner */
- X NFSERR_NOENT, /* WF_ERR_NOENT: No such entity */
- X NFSERR_IO, /* WF_ERR_IO: I/O error */
- X NFSERR_NXIO, /* WF_ERR_NXIO: No such device or address */
- X NFSERR_ACCES, /* WF_ERR_ACCES: Permission denied */
- X NFSERR_EXIST, /* WF_ERR_EXIST: Given resource exists */
- X NFSERR_NODEV, /* WF_ERR_NODEV: No such device */
- X NFSERR_NOTDIR, /* WF_ERR_NOTDIR: Not a directory*/
- X NFSERR_ISDIR, /* WF_ERR_ISDIR: Is a directory */
- X NFSERR_FBIG, /* WF_ERR_FBIG: Resource too large */
- X NFSERR_NOSPC, /* WF_ERR_NOSPC: No space left on device */
- X NFSERR_ROFS, /* WF_ERR_ROFS: Read-only file system */
- X NFSERR_NAMETOOLONG, /* WF_ERR_NAMETOOLONG: Resource name too long */
- X NFSERR_NOTEMPTY, /* WF_ERR_NOTEMPTY: Directory not empty */
- X NFSERR_DQUOT, /* WF_ERR_DQUOT: Disc quota exceeded */
- X NFSERR_STALE, /* WF_ERR_STALE: Stale file handle */
- X NFSERR_WFLUSH, /* WF_ERR_WFLUSH: Write cache flushed */
- X /* brain damaged NFS does not know what Internet is */
- X NFSERR_NOENT, /* WF_REP_WAIT: Operation would block */
- X NFSERR_NOENT, /* WF_ERR_ALREADY: Operation already in progress */
- X NFSERR_NOENT, /* WF_ERR_PROTO: Protocol not available */
- X NFSERR_NOENT, /* WF_ERR_NDOWN: Network is down */
- X NFSERR_NOENT, /* WF_ERR_NUNREACH: Network is unreachable */
- X NFSERR_NOENT, /* WF_ERR_XABORT: Transfer aborted */
- X NFSERR_NOENT, /* WF_ERR_TIMEOUT: Connection timed out */
- X NFSERR_NOENT, /* WF_ERR_REFUSED: Connection refused */
- X NFSERR_NOENT, /* WF_ERR_HDOWN: Host is down */
- X NFSERR_NOENT, /* WF_ERR_HUNREACH: No route to host */
- X NFSERR_NOENT, /* WF_ERR_NQUOT: Network quota exceeded */
- X};
- X
- Xvoid
- Xnfs_getattr_reply(c, status)
- Xwf_thrd *c;
- Xint status;
- X{
- X static attrstat res;
- X if (status == WF_REP_OK) {
- X bcopy(&c->filep->fattr, &res.attrstat_u.attributes,
- X sizeof(fattr));
- X } else {
- X bzero(&res, sizeof (res));
- X }
- X res.status = nfserr[status];
- X svc_sendreply(c->rqstp->rq_xprt, xdr_attrstat, &res);
- X if (! (c->flag & WF_THREAD_BUSY)) thrd_free(c);
- X}
- X
- Xvoid
- Xnfs_lookup_reply(c, status)
- Xwf_thrd *c;
- Xint status;
- X{
- X static diropres res;
- X if (status == WF_REP_OK) {
- X bcopy(c->resfhp, &res.diropres_u.diropres.file,
- X sizeof (nfs_fh));
- X bcopy(&c->filep->fattr, &res.diropres_u.diropres.attributes,
- X sizeof(fattr));
- X } else {
- X bzero(&res, sizeof (res));
- X }
- X res.status = nfserr[status];
- X svc_sendreply(c->rqstp->rq_xprt, xdr_diropres, &res);
- X if (! (c->flag & WF_THREAD_BUSY)) thrd_free(c);
- X}
- X
- Xvoid
- Xnfs_readlink_reply(c, status)
- Xwf_thrd *c;
- Xint status;
- X{
- X static readlinkres res;
- X char path[NFS_MAXPATHLEN];
- X if (status == WF_REP_OK) {
- X res.readlinkres_u.data = path;
- X strcpy(res.readlinkres_u.data, c->filep->link);
- X } else {
- X bzero(&res, sizeof (res));
- X }
- X res.status = nfserr[status];
- X svc_sendreply(c->rqstp->rq_xprt, xdr_readlinkres, &res);
- X if (! (c->flag & WF_THREAD_BUSY)) thrd_free(c);
- X}
- X
- Xvoid
- Xnfs_read_reply(c, status, attrp, data_len, data_val)
- Xwf_thrd *c;
- Xnfsstat status;
- Xfattr *attrp;
- Xint data_len;
- Xchar *data_val;
- X{
- X static readres res;
- X if (attrp && data_val) {
- X bcopy(attrp, &res.readres_u.reply.attributes, sizeof(fattr));
- X res.readres_u.reply.data.data_len = data_len;
- X res.readres_u.reply.data.data_val = data_val;
- X } else {
- X bzero(&res, sizeof (res));
- X }
- X res.status = nfserr[status];
- X svc_sendreply(c->rqstp->rq_xprt, xdr_readres, &res);
- X if (! (c->flag & WF_THREAD_BUSY)) thrd_free(c);
- X}
- X
- Xstatic void
- Xnfs_readdir_reply(c, status, resp)
- Xwf_thrd *c;
- Xnfsstat status;
- Xreaddirres *resp;
- X{
- X static readdirres res;
- X
- X if (resp) {
- X resp->status = status;
- X svc_sendreply(c->rqstp->rq_xprt, xdr_readdirres, resp);
- X } else {
- X bzero(&res, sizeof(res));
- X res.status = status;
- X svc_sendreply(c->rqstp->rq_xprt, xdr_readdirres, &res);
- X }
- X if (! (c->flag & WF_THREAD_BUSY)) thrd_free(c);
- X}
- X
- X
- Xvoid
- Xnfs_read_done(c, status)
- X/* rqstp, volp, offset, count, totalcount, dirp, filep */
- Xwf_thrd *c;
- Xint status;
- X{
- X int fd, buflen;
- X char *buf;
- X char path[MAXPATHLEN];
- X
- X if (status != WF_REP_OK) {
- X nfs_read_reply(c, status, 0, 0, 0);
- X return;
- X }
- X file_getpath(path, c->child_volp, c->dirp, c->filep);
- X fd = open(path, O_RDONLY);
- X if (fd < 0) {
- X dlog("no such file: %s", path);
- X nfs_read_reply(c, WF_ERR_NOENT, 0, 0, 0);
- X return;
- X }
- X lseek(fd, (off_t )c->offset, 0);
- X buflen = c->count;
- X buf = so_getbuf(fd);
- X buflen = read(fd, buf, buflen);
- X close(fd);
- X if (buflen < 0) {
- X dlog("cmfs_read: read error");
- X nfs_read_reply(c, WF_ERR_IO, 0, 0, 0);
- X return;
- X }
- X c->child_volp->stats.bytes_to_client += buflen;
- X nfs_read_reply(c, WF_REP_OK, &c->filep->fattr, buflen, buf);
- X}
- X
- X#ifdef DEBUG_CHAIN
- Xstatic void
- Xcheck_chain(c, filep, ident)
- Xwf_thrd *c;
- Xwf_file *filep;
- Xchar *ident;
- X{
- X wf_file *d;
- X int found = 0;
- X
- X if (filep == c->dirp->file)
- X return;
- X ITER(d, wf_file, &c->dirp->file->q) {
- X if (d == filep) {
- X found = 1;
- X break;
- X }
- X }
- X if (! found) {
- X dlog("%s: filep = %08x not in chain", ident, filep);
- X csd_abort(1);
- X }
- X}
- X#endif
- X
- X/*
- X * You cannot eat these cookies.
- X */
- Xstatic unsigned int gen = 1; /* generation number */
- Xstatic unsigned int ch; /* cookie handle */
- X#define CH_SIZE 256
- X
- X/* Cookie internals */
- Xunion cookie {
- X struct {
- X unsigned int gen: 24;
- X unsigned int ch: 8;
- X } broken;
- X unsigned long whole;
- X};
- X
- X/* Ring buffer of cookie checker/mapper. Indexed by cookie handle */
- Xstatic struct cookie_checker {
- X wf_file *filep;
- X wf_file *head;
- X} cooche[CH_SIZE];
- X
- Xunsigned long
- Xcookie_bake(filep, head)
- Xwf_file *filep, *head;
- X{
- X union cookie u;
- X
- X assert(sizeof(union cookie) == sizeof(nfscookie));
- X if (++ch == CH_SIZE) {
- X ch = 0;
- X ++gen;
- X if (gen == 0)
- X gen = 1; /* so that valid cookie != 0 holds */
- X }
- X cooche[ch].filep = filep;
- X cooche[ch].head = head;
- X u.broken.gen = gen;
- X u.broken.ch = ch;
- X return (u.whole);
- X}
- X
- Xwf_file *
- Xcookie_taste(cookie, head)
- Xunsigned long cookie;
- Xwf_file *head;
- X{
- X unsigned int i;
- X union cookie u;
- X
- X u.whole = cookie;
- X i = u.broken.ch;
- X if (u.broken.gen == gen || (u.broken.gen == gen-1 && i > ch)) {
- X if (cooche[i].head == head)
- X return (cooche[i].filep);
- X }
- X return (wf_file *)0;
- X}
- X
- Xvoid
- Xnfs_readdir_done(c, status)
- Xwf_thrd *c; /* rqstp, volp, cookie, count, dirp */
- Xint status;
- X{
- X static readdirres res;
- X wf_file *filep, *nextp;
- X entry **e, *p, *p2;
- X unsigned long cool;
- X int size = 0;
- X
- X if (status != WF_REP_OK) {
- X nfs_readdir_reply(c, nfserr[status], 0);
- X return;
- X }
- X e = &res.readdirres_u.reply.entries;
- X bcopy(c->cookie, &cool, sizeof (nfscookie));
- X if (! cool) {
- X filep = FIRST(wf_file, &c->dirp->file->q);
- X } else {
- X filep = cookie_taste(cool, c->dirp->file);
- X if (! filep) {
- X struct in_addr in;
- X in.s_addr = c->client;
- X dlog("invalid cookie from client %s",
- X inet_ntoa(in));
- X nfs_readdir_reply(c, NFSERR_NOENT, 0);
- X return;
- X }
- X#ifdef DEBUG_CHAIN
- X check_chain(c, filep, "get cookie");
- X#endif
- X }
- X for (; nextp = NEXT(wf_file, filep),
- X filep != HEAD(wf_file, &c->dirp->file->q);
- X filep = nextp) {
- X size += sizeof(entry) + strlen(filep->name) + 16;
- X if (size >= c->count)
- X break;
- X *e = ALLOC(entry);
- X (*e)->fileid = filep->id;
- X (*e)->name = filep->name;
- X cool = cookie_bake(nextp, c->dirp->file);
- X bcopy(&cool, (*e)->cookie, sizeof(nfscookie));
- X#ifdef DEBUG_CHAIN
- X check_chain(c, nextp, "set cookie");
- X#endif
- X e = &((*e)->nextentry);
- X }
- X *e = (entry *)0;
- X res.readdirres_u.reply.eof =
- X (filep == HEAD(wf_file, &c->dirp->file->q));
- X c->child_volp->stats.bytes_to_client += MIN(size, c->count);
- X nfs_readdir_reply(c, NFS_OK, &res);
- X
- X p = res.readdirres_u.reply.entries;
- X while (p) {
- X p2 = p->nextentry;
- X FREE(p);
- X p = p2;
- X }
- X}
- END_OF_FILE
- if test 9289 -ne `wc -c <'csd/nfs_reply.c'`; then
- echo shar: \"'csd/nfs_reply.c'\" unpacked with wrong size!
- fi
- # end of 'csd/nfs_reply.c'
- fi
- if test -f 'doc/manual.ps.B' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'doc/manual.ps.B'\"
- else
- echo shar: Extracting \"'doc/manual.ps.B'\" \(45673 characters\)
- sed "s/^X//" >'doc/manual.ps.B' <<'END_OF_FILE'
- X14 r (the)s
- X15 r (Internet)s
- X15 r (\256le)s
- X14 r (cache.)s
- Xf1 SF
- X141 1517 p (\017)s
- Xf17 SF
- X31 r (config/)s
- Xf6 SF
- X202 1592 p (Machine-,)s
- X15 r (architecture-)s
- X16 r (and)s
- X15 r (operating-system)s
- X15 r (dependent)s
- X15 r (\256les.)s
- Xf1 SF
- X141 1714 p (\017)s
- Xf17 SF
- X31 r (csd/)s
- Xf6 SF
- X202 1789 p (An)s
- X23 r (NFS)s
- X22 r (server)s
- X-1 r (,)s
- X23 r (an)s
- X23 r (NFS-FTP)s
- X22 r (gateway)s
- X23 r (software,)s
- X24 r (the)s
- X22 r (Internet)s
- X23 r (\256le)s
- X22 r (cache,)s
- X25 r (or)s
- X22 r (the)s
- X23 r (substrate)s
- X22 r (for)s
- X202 1864 p (scalable)s
- X22 r (information)s
- X22 r (systems,)s
- X24 r (that)s
- X22 r (runs)s
- X22 r (as)s
- X22 r (a)s
- X22 r (daemon)s
- X22 r (in)s
- X23 r (the)s
- X22 r (user)s
- X22 r (mode.)s
- X41 r (Modi\256cation)s
- X22 r (to)s
- X22 r (the)s
- X202 1940 p (UNIX)s
- X13 r (kernel)s
- X13 r (is)s
- X13 r (not)s
- X13 r (necessary)s
- X13 r (at)s
- X13 r (all.)s
- X19 r (It)s
- X13 r (can)s
- X13 r (be)s
- X13 r (accessed)s
- X13 r (as)s
- X13 r (an)s
- X13 r (ordinary)s
- X13 r (NFS)s
- X13 r (server)s
- X13 r (from)s
- X13 r (virtually)s
- X202 2015 p (any)s
- X20 r (client)s
- X20 r (workstations)s
- X20 r (with)s
- X20 r (NFS)s
- X20 r (capability)s
- X-3 r (.)s
- X34 r (It)s
- X20 r (talks)s
- X19 r (with)s
- X20 r (anonymous)s
- X20 r (ftp)s
- X20 r (servers)s
- X20 r (using)s
- X20 r (FTP)s
- X202 2090 p (protocol)s
- X15 r (\(see)s
- X16 r (Figure)s
- X15 r (1.1\).)s
- Xf1 SF
- X141 2212 p (\017)s
- Xf17 SF
- X31 r (doc/)s
- Xf6 SF
- X202 2287 p (Documentation,)s
- X20 r (both)s
- X18 r (\256nished)s
- X19 r (and)s
- X18 r (un\256nished,)s
- X20 r (including)s
- X18 r (memorandum)s
- X19 r (and)s
- X18 r (preliminary)s
- X19 r (ideas.)s
- X202 2362 p (Some)s
- X15 r (may)s
- X16 r (be)s
- X15 r (only)s
- X15 r (useful)s
- X15 r (to)s
- X16 r (interested)s
- X15 r (developers.)s
- Xf1 SF
- X141 2484 p (\017)s
- Xf17 SF
- X31 r (gtr/)s
- Xf6 SF
- X202 2559 p (A)s
- X15 r (package)s
- X16 r (to)s
- X15 r (rearrange)s
- X15 r (servers)s
- X15 r (by)s
- X16 r (geographical)s
- X15 r (/)s
- X15 r (topological)s
- X15 r (region.)s
- Xf1 SF
- X141 2681 p (\017)s
- Xf17 SF
- X31 r (include/)s
- Xf6 SF
- X202 2756 p (Header)s
- X15 r (\256les)s
- X16 r (for)s
- X15 r (C)s
- X15 r (programs.)s
- Xf1 SF
- X141 2878 p (\017)s
- Xf17 SF
- X31 r (libww/)s
- Xf6 SF
- X202 2953 p (Application)s
- X15 r (programming)s
- X16 r (interface,)s
- X15 r (for)s
- X15 r (bypassing)s
- X15 r (NFS)s
- X16 r (when)s
- X15 r (necessary)s
- X-3 r (.)s
- Xf1 SF
- X141 3075 p (\017)s
- Xf17 SF
- X31 r (mosaic/)s
- Xf6 SF
- X202 3150 p (Patches)s
- X16 r (to)s
- X15 r (add)s
- X16 r (direct)s
- X15 r (WWFS)s
- X16 r (support)s
- X15 r (to)s
- X16 r (NCSA)s
- Xf20 SF
- X15 r (Mosaic)s
- Xf6 SF
- X16 r (for)s
- X15 r (X,)s
- X16 r (the)s
- X15 r (multi-protocol)s
- X16 r (information)s
- X202 3225 p (browser)s
- X-2 r (.)s
- X19 r (Also)s
- X15 r (included)s
- X15 r (here)s
- X16 r (are)s
- X15 r (migration)s
- X15 r (tools)s
- X15 r (from)s
- X15 r (Internet)s
- X15 r (Gopher)s
- X15 r (Protocol)s
- X16 r (and)s
- X15 r (HyperT)s
- X-4 r (ext)s
- X202 3300 p (T)s
- X-1 r (ransfer)s
- X14 r (Protocol.)s
- Xf1 SF
- X141 3422 p (\017)s
- Xf17 SF
- X31 r (mule/)s
- Xf6 SF
- X202 3497 p (Emacs)s
- X15 r (lisp)s
- X16 r (package)s
- X15 r (to)s
- X15 r (access)s
- X15 r (WWFS)s
- X16 r (within)s
- X15 r (multi-lingual)s
- X15 r (EMACS.)s
- Xf1 SF
- X141 3619 p (\017)s
- Xf17 SF
- X31 r (rpc/)s
- Xf6 SF
- X202 3694 p (Subroutines)s
- X15 r (for)s
- X16 r (remote)s
- X15 r (procedure)s
- X15 r (call.)s
- XEP
- X
- X%%Page: 5 6
- XBP
- Xf8 SF
- X50 66 p (1.2.)s
- X35 r (ORGANIZA)s
- X-2 r (TION)s
- X14 r (OF)s
- X16 r (THIS)s
- X15 r (DISTRIBUTION)s
- Xf6 SF
- X1124 r (5)s
- Xf1 SF
- X141 232 p (\017)s
- Xf17 SF
- X31 r (saps/)s
- Xf6 SF
- X202 307 p (SAPS)s
- X17 r (stands)s
- X17 r (for)s
- X16 r (Server)s
- X17 r (Administration)s
- X17 r (Perl)s
- X16 r (Scripts;)s
- X18 r (some)s
- X17 r (of)s
- X16 r (which)s
- X17 r (has)s
- X17 r (been)s
- X17 r (used)s
- X16 r (for)s
- X17 r (day-to-)s
- X202 382 p (day)s
- X15 r (server)s
- X16 r (administration.)s
- Xf1 SF
- X141 507 p (\017)s
- Xf17 SF
- X31 r (vol/)s
- Xf6 SF
- X202 583 p (V)s
- X-7 r (olume)s
- X15 r (\256les,)s
- X15 r (that)s
- X15 r (describe)s
- X15 r (server-to-location)s
- X14 r (mappings)s
- X15 r (and)s
- X16 r (alternative)s
- X15 r (servers.)s
- Xf1 SF
- X141 708 p (\017)s
- Xf17 SF
- X31 r (wwalk/)s
- Xf6 SF
- X202 783 p (Point-and-click)s
- X16 r (style)s
- X16 r (graphical)s
- X16 r (user)s
- X15 r (interface,)s
- X16 r (which)s
- X16 r (is)s
- X16 r (actually)s
- X15 r (a)s
- X16 r (rework)s
- X16 r (of)s
- X16 r (my)s
- X16 r (good-old-days)s
- X202 858 p (Tk)s
- X19 r (script.)s
- X30 r (Y)s
- X-5 r (ou)s
- X18 r (need)s
- X18 r (Tk2.3,)s
- X20 r (T)s
- X-4 r (clX6.4c,)s
- X19 r (and)s
- X18 r (tclRawTCP-1.0)s
- X19 r (to)s
- X18 r (run)s
- X19 r (this)s
- X18 r (script.)s
- Xf7 SF
- X31 r (It')s
- X-7 r (s)s
- X17 r (not)s
- X19 r (updated)s
- X202 934 p (in)s
- X18 r (this)s
- X19 r (r)s
- X-2 r (elease.)s
- Xf6 SF
- X29 r (If)s
- X18 r (you)s
- X18 r (don't)s
- X18 r (know)s
- X18 r (what)s
- X18 r (T)s
- X-3 r (cl)s
- X17 r (and)s
- X18 r (Tk)s
- X19 r (is,)s
- X19 r (just)s
- X18 r (get)s
- X18 r (the)s
- Xf17 SF
- X18 r (comp.lang.tcl)s
- Xf6 SF
- X19 r (F)s
- X-4 r (AQ)s
- X17 r (from)s
- X202 1009 p (USENET)s
- X15 r (newsgroups)s
- X16 r (\(or)s
- X15 r (just)s
- X15 r (go)s
- X15 r (to)s
- Xf17 SF
- X16 r (/news.answers/tcl-faq)s
- Xf6 SF
- X15 r (on)s
- X15 r (WWFS\).)s
- Xf1 SF
- X141 1134 p (\017)s
- Xf17 SF
- X31 r (wwmount/)s
- Xf6 SF
- X202 1209 p (A)s
- X15 r (modi\256ed)s
- X16 r (version)s
- X15 r (of)s
- Xf17 SF
- X15 r (mount)s
- Xf6 SF
- X15 r (and)s
- Xf17 SF
- X16 r (umount)s
- Xf6 SF
- X15 r (command,)s
- X15 r (based)s
- X15 r (on)s
- X15 r (BSD)s
- X16 r (Net2.)s
- X485 1417 p 1.000 @beginspecial
- X@epsf
- X0.600000 @vscale
- X0.600000 @hscale
- X-1.000000 0.000000 473.000000 379.000000 @bbox
- X@setspecial
- X%%BeginDocument: architecture.eps
- X%!PS-Adobe-2.0 EPSF-2.0
- X%%Title: /tmp/xfig-fig004519
- X%%Creator: fig2dev
- X%%CreationDate: Thu Aug 12 03:46:28 1993
- X%%For: youki-k@dec413 (Youki Kadobayashi)
- X%%BoundingBox: -1 0 473 379
- X%%Pages: 0
- X%%EndComments
- X/$F2psDict 200 dict def
- X$F2psDict begin
- X$F2psDict /mtrx matrix put
- X/l {lineto} bind def
- X/m {moveto} bind def
- X/s {stroke} bind def
- X/n {newpath} bind def
- X/gs {gsave} bind def
- X/gr {grestore} bind def
- X/clp {closepath} bind def
- X/graycol {dup dup currentrgbcolor 4 -2 roll mul 4 -2 roll mul
- X4 -2 roll mul setrgbcolor} bind def
- X/col-1 {} def
- X/col0 {0 0 0 setrgbcolor} bind def
- X/col1 {0 0 1 setrgbcolor} bind def
- X/col2 {0 1 0 setrgbcolor} bind def
- X/col3 {0 1 1 setrgbcolor} bind def
- X/col4 {1 0 0 setrgbcolor} bind def
- X/col5 {1 0 1 setrgbcolor} bind def
- X/col6 {1 1 0 setrgbcolor} bind def
- X/col7 {1 1 1 setrgbcolor} bind def
- X /DrawEllipse {
- X /endangle exch def
- X /startangle exch def
- X /yrad exch def
- X /xrad exch def
- X /y exch def
- X /x exch def
- X /savematrix mtrx currentmatrix def
- X x y translate xrad yrad scale 0 0 1 startangle endangle arc
- X savematrix setmatrix
- X } def
- X
- X end
- X/$F2psBegin {$F2psDict begin /$F2psEnteredState save def} def
- X/$F2psEnd {$F2psEnteredState restore end} def
- X%%EndProlog
- X
- X$F2psBegin
- X0 setlinecap 0 setlinejoin
- X-112.0 468.0 translate 0.900 -0.900 scale
- X0.500 setlinewidth
- X% Ellipse
- Xn 549 174 15 10 0 360 DrawEllipse gs 1.00 setgray fill gr
- Xgs col0 s gr
- X% Ellipse
- Xn 319 244 15 10 0 360 DrawEllipse gs 1.00 setgray fill gr
- Xgs col0 s gr
- X% Ellipse
- Xn 499 219 15 10 0 360 DrawEllipse gs 1.00 setgray fill gr
- Xgs col0 s gr
- X% Ellipse
- Xn 584 234 15 10 0 360 DrawEllipse gs 1.00 setgray fill gr
- Xgs col0 s gr
- X% Ellipse
- Xn 529 284 15 10 0 360 DrawEllipse gs 1.00 setgray fill gr
- Xgs col0 s gr
- X% Ellipse
- Xn 524 389 15 10 0 360 DrawEllipse gs 1.00 setgray fill gr
- Xgs col0 s gr
- X% Ellipse
- Xn 579 349 15 10 0 360 DrawEllipse gs 1.00 setgray fill gr
- Xgs col0 s gr
- X [4.000000] 0 setdash
- X% Polyline
- Xn 339 99 m 339 519 l gs col-1 s gr
- X [] 0 setdash
- X% Polyline
- Xn 514 219 m 514 199 l 484 199 l 484 219 l clp gs 1.00 setgray fill gr
- Xgs col0 s gr
- X% Polyline
- Xn 334 244 m 334 224 l 304 224 l 304 244 l clp gs 1.00 setgray fill gr
- Xgs col0 s gr
- X% Polyline
- Xn 594 349 m 594 329 l 564 329 l 564 349 l clp gs 1.00 setgray fill gr
- Xgs col0 s gr
- X% Polyline
- Xn 544 284 m 544 264 l 514 264 l 514 284 l clp gs 1.00 setgray fill gr
- Xgs col0 s gr
- X% Polyline
- Xn 599 234 m 599 214 l 569 214 l 569 234 l clp gs 1.00 setgray fill gr
- Xgs col0 s gr
- X0.000 setlinewidth
- X [2.000000] 0 setdash
- X% Polyline
- Xn 359 329 m 359 304 l 319 304 l 319 329 l clp gs 1.00 setgray fill gr
- X [] 0 setdash
- X0.500 setlinewidth
- X% Polyline
- Xn 539 389 m 539 369 l 509 369 l 509 389 l clp gs 1.00 setgray fill gr
- Xgs col0 s gr
- X% Polyline
- Xn 564 174 m 564 154 l 534 154 l 534 174 l clp gs 1.00 setgray fill gr
- Xgs col0 s gr
- X% Ellipse
- Xn 579 329 15 10 0 360 DrawEllipse gs 1.00 setgray fill gr
- Xgs col0 s gr
- X% Polyline
- Xn 509 389 m 539 389 l gs col7 s gr
- X% Ellipse
- Xn 499 199 15 10 0 360 DrawEllipse gs 1.00 setgray fill gr
- Xgs col0 s gr
- X% Polyline
- Xn 484 219 m 514 219 l gs col7 s gr
- X% Ellipse
- Xn 584 214 15 10 0 360 DrawEllipse gs 1.00 setgray fill gr
- Xgs col0 s gr
- X% Polyline
- Xn 304 244 m 334 244 l gs col7 s gr
- X% Polyline
- Xn 569 234 m 599 234 l gs col7 s gr
- X% Polyline
- Xn 514 284 m 544 284 l gs col7 s gr
- X% Ellipse
- Xn 549 154 15 10 0 360 DrawEllipse gs 1.00 setgray fill gr
- Xgs col0 s gr
- X% Ellipse
- Xn 529 264 15 10 0 360 DrawEllipse gs 1.00 setgray fill gr
- Xgs col0 s gr
- X% Ellipse
- Xn 524 369 15 10 0 360 DrawEllipse gs 1.00 setgray fill gr
- Xgs col0 s gr
- X% Polyline
- Xn 534 174 m 564 174 l gs col7 s gr
- X% Polyline
- Xn 195 340 m 195 319 l 168 319 l 168 340 l clp gs col-1 s gr
- X% Polyline
- Xn 168 342 m 164 349 l 190 349 l 195 342 l 168 342 l gs col-1 s gr
- X% Polyline
- Xn 195 319 m 199 321 l 199 336 l 195 340 l gs col-1 s gr
- X% Polyline
- Xn 195 342 m 195 347 l 190 351 l 164 351 l 164 349 l gs col-1 s gr
- X% Polyline
- Xn 564 349 m 594 349 l gs col7 s gr
- X% Polyline
- Xn 178 321 m 171 321 171 331 7 arcto 4 {pop} repeat 171 338 185 338 7 arcto 4 {pop} repeat 192 338 192 328 7 arcto 4 {pop} repeat 192 321 178 321 7 arcto 4 {pop} repeat clp gs col-1 s gr
- X% Polyline
- Xn 220 305 m 220 284 l 193 284 l 193 305 l clp gs col-1 s gr
- X% Polyline
- Xn 193 307 m 189 314 l 215 314 l 220 307 l 193 307 l gs col-1 s gr
- X% Polyline
- Xn 190 349 m 190 351 l gs col-1 s gr
- X% Polyline
- Xn 220 307 m 220 312 l 215 316 l 189 316 l 189 314 l gs col-1 s gr
- X% Polyline
- Xn 215 314 m 215 316 l gs col-1 s gr
- X% Polyline
- Xn 203 286 m 196 286 196 296 7 arcto 4 {pop} repeat 196 303 210 303 7 arcto 4 {pop} repeat 217 303 217 293 7 arcto 4 {pop} repeat 217 286 203 286 7 arcto 4 {pop} repeat clp gs col-1 s gr
- X% Polyline
- Xn 165 268 m 165 247 l 138 247 l 138 268 l clp gs col-1 s gr
- X% Polyline
- Xn 138 270 m 134 277 l 160 277 l 165 270 l 138 270 l gs col-1 s gr
- X% Polyline
- Xn 165 247 m 169 249 l 169 264 l 165 268 l gs col-1 s gr
- X% Polyline
- Xn 165 270 m 165 275 l 160 279 l 134 279 l 134 277 l gs col-1 s gr
- X% Polyline
- Xn 160 277 m 160 279 l gs col-1 s gr
- X% Polyline
- Xn 148 249 m 141 249 141 259 7 arcto 4 {pop} repeat 141 266 155 266 7 arcto 4 {pop} repeat 162 266 162 256 7 arcto 4 {pop} repeat 162 249 148 249 7 arcto 4 {pop} repeat clp gs col-1 s gr
- X% Polyline
- Xn 205 238 m 205 217 l 178 217 l 178 238 l clp gs col-1 s gr
- X% Polyline
- Xn 178 240 m 174 247 l 200 247 l 205 240 l 178 240 l gs col-1 s gr
- X% Polyline
- Xn 205 217 m 209 219 l 209 234 l 205 238 l gs col-1 s gr
- X% Polyline
- Xn 205 240 m 205 245 l 200 249 l 174 249 l 174 247 l gs col-1 s gr
- X% Polyline
- Xn 200 247 m 200 249 l gs col-1 s gr
- X% Polyline
- Xn 188 219 m 181 219 181 229 7 arcto 4 {pop} repeat 181 236 195 236 7 arcto 4 {pop} repeat 202 236 202 226 7 arcto 4 {pop} repeat 202 219 188 219 7 arcto 4 {pop} repeat clp gs col-1 s gr
- X [4.000000] 0 setdash
- X% Ellipse
- Xn 534 266 115 162 0 360 DrawEllipse gs col-1 s gr
- X [] 0 setdash
- X [4.000000] 0 setdash
- X% Ellipse
- Xn 189 286 65 72 0 360 DrawEllipse gs col-1 s gr
- X [] 0 setdash
- X% Ellipse
- Xn 338 280 25 25 0 360 DrawEllipse gs 1.00 setgray fill gr
- Xgs col-1 s gr
- X% Polyline
- Xn 369 264 m 469 214 l gs col0 s gr
- Xn 460.950 215.789 m 469.000 214.000 l 462.739 219.367 l gs 2 setlinejoin col0 s gr
- X% Polyline
- Xn 374 289 m 554 334 l gs col0 s gr
- Xn 546.724 330.119 m 554.000 334.000 l 545.754 334.000 l gs 2 setlinejoin col0 s gr
- X% Polyline
- Xn 369 304 m 499 374 l gs col0 s gr
- Xn 492.904 368.446 m 499.000 374.000 l 491.008 371.968 l gs 2 setlinejoin col0 s gr
- X% Polyline
- Xn 319 254 m 324 259 l gs col0 s gr
- X% Polyline
- Xn 209 229 m 304 269 l gs col0 s gr
- Xn 297.403 264.052 m 304.000 269.000 l 295.851 267.739 l gs 2 setlinejoin col0 s gr
- X% Polyline
- Xn 199 329 m 304 299 l gs col0 s gr
- Xn 295.758 299.275 m 304.000 299.000 l 296.857 303.121 l gs 2 setlinejoin col0 s gr
- X% Polyline
- Xn 169 259 m 299 279 l gs col0 s gr
- Xn 291.397 275.807 m 299.000 279.000 l 290.789 279.760 l gs 2 setlinejoin col0 s gr
- X% Polyline
- Xn 224 294 m 299 289 l gs col0 s gr
- Xn 290.885 287.537 m 299.000 289.000 l 291.151 291.528 l gs 2 setlinejoin col0 s gr
- X% Polyline
- Xn 319 504 m 219 504 l gs col-1 s gr
- Xn 227.000 506.000 m 219.000 504.000 l 227.000 502.000 l gs 2 setlinejoin col-1 s gr
- X% Polyline
- Xn 359 504 m 479 504 l gs col-1 s gr
- Xn 471.000 502.000 m 479.000 504.000 l 471.000 506.000 l gs 2 setlinejoin col-1 s gr
- X% Ellipse
- Xn 319 224 15 10 0 360 DrawEllipse gs 1.00 setgray fill gr
- Xgs col0 s gr
- X% Polyline
- Xn 220 284 m 224 286 l 224 301 l 220 305 l gs col-1 s gr
- X/Helvetica-Bold findfont 16.00 scalefont setfont
- X509 449 m
- Xgs 1 -1 scale (Internet) col-1 show gr
- X/Helvetica-Bold findfont 16.00 scalefont setfont
- X324 324 m
- Xgs 1 -1 scale (csd) col-1 show gr
- X/Helvetica-Bold findfont 16.00 scalefont setfont
- X174 379 m
- Xgs 1 -1 scale (LAN) col-1 show gr
- X/Helvetica-Bold findfont 16.00 scalefont setfont
- X234 499 m
- Xgs 1 -1 scale (DFS view) col-1 show gr
- X/Helvetica-Bold findfont 16.00 scalefont setfont
- X374 499 m
- Xgs 1 -1 scale (Internet view) col-1 show gr
- X$F2psEnd
- X%%EndDocument
- X@endspecial
- X50 2877 p (Figure)s
- X19 r (1.2:)s
- X28 r (WWFS:)s
- X19 r (shared)s
- X19 r (namespace,)s
- X20 r (replicated)s
- X19 r (services,)s
- X20 r (binding)s
- X19 r (mechanism,)s
- X20 r (and)s
- X19 r (right)s
- X19 r (protocol)s
- X50 2953 p (for)s
- X15 r (the)s
- X15 r (right)s
- X16 r (place.)s
- XEP
- X
- X%%Page: 6 7
- XBP
- Xf6 SF
- X50 66 p (6)s
- Xf8 SF
- X1572 r (CHAPTER)s
- X15 r (1.)s
- X36 r (INTRODUCTION)s
- XEP
- X
- X%%Page: 7 8
- XBP
- Xf19 SF
- X50 652 p (Chapter)s
- X29 r (2)s
- Xf18 SF
- X50 934 p (Installation)s
- Xf6 SF
- X50 1236 p (This)s
- X12 r (chapter)s
- X13 r (describes)s
- X12 r (installation)s
- X13 r (procedure)s
- X12 r (of)s
- X13 r (this)s
- X12 r (software)s
- X13 r (suite.)s
- X19 r (Before)s
- X13 r (beginning)s
- X12 r (installation,)s
- X13 r (you)s
- X50 1311 p (must)s
- X15 r (make)s
- X15 r (sure)s
- X16 r (that)s
- X15 r (you)s
- X15 r (have)s
- X15 r (necessary)s
- X16 r (tools)s
- X15 r (handy)s
- X-3 r (,)s
- X14 r (then)s
- X15 r (decide)s
- X15 r (where)s
- X16 r (you)s
- X15 r (install)s
- X15 r (this)s
- X15 r (software.)s
- Xf13 SF
- X50 1536 p (2.1)s
- X80 r (Bootstrapping)s
- X20 r (envir)s
- X-1 r (onments)s
- Xf6 SF
- X50 1685 p (The)s
- X15 r (following)s
- X15 r (tools)s
- X16 r (are)s
- X15 r (necessary)s
- X15 r (to)s
- X15 r (generate)s
- X16 r (executables)s
- X15 r (and)s
- X15 r (to)s
- X15 r (perform)s
- X15 r (administrative)s
- X16 r (tasks:)s
- X144 1754 p 967 2 ru
- X143 1829 p 2 75 ru
- X177 1807 p (name)s
- X341 1829 p 2 75 ru
- X376 1807 p (requirements)s
- X1110 1829 p 2 75 ru
- X144 1832 p 967 2 ru
- X143 1907 p 2 75 ru
- X177 1884 p (make)s
- X341 1907 p 2 75 ru
- X376 1884 p (bundled)s
- Xf17 SF
- X15 r (make)s
- Xf6 SF
- X(,)s
- X15 r (or)s
- X15 r (GNU)s
- Xf17 SF
- X15 r (make)s
- Xf6 SF
- X(.)s
- X1110 1907 p 2 75 ru
- X143 1982 p 2 75 ru
- X177 1960 p (cc)s
- X341 1982 p 2 75 ru
- X376 1960 p (bundled)s
- Xf17 SF
- X15 r (cc)s
- Xf6 SF
- X(,)s
- X15 r (or)s
- X15 r (GNU)s
- Xf17 SF
- X15 r (cc)s
- Xf6 SF
- X(.)s
- X1110 1982 p 2 75 ru
- X143 2057 p 2 75 ru
- X177 2035 p (perl)s
- X341 2057 p 2 75 ru
- X376 2035 p (version)s
- X15 r (4.0)s
- X15 r (or)s
- X15 r (later)s
- X-2 r (.)s
- X1110 2057 p 2 75 ru
- X144 2060 p 967 2 ru
- X144 2155 p (Basically)s
- X15 r (any)s
- X16 r (brain-damaged)s
- Xf17 SF
- X15 r (make)s
- Xf6 SF
- X15 r (should)s
- X15 r (work.)s
- X20 r (If)s
- X16 r (it)s
- X15 r (doesn't)s
- X14 r (work,)s
- X15 r (please)s
- X15 r (let)s
- X16 r (me)s
- X15 r (know)s
- X-3 r (.)s
- X144 2235 p (If)s
- X15 r (you)s
- X15 r (are)s
- X14 r (planning)s
- X15 r (to)s
- X15 r (make)s
- Xf20 SF
- X14 r (Mosaic/WWFS)s
- Xf6 SF
- X(,)s
- X15 r (you)s
- X15 r (will)s
- X15 r (need)s
- X14 r (Motif/X1)s
- X-1 r (1)s
- X14 r (libraries.)s
- X20 r (Y)s
- X-5 r (ou)s
- X14 r (can)s
- X14 r (grab)s
- X50 2310 p (binaries)s
- X14 r (from)s
- Xf17 SF
- X15 r (WWFS/binaries)s
- Xf6 SF
- X14 r (on)s
- X15 r (WWFS)s
- X14 r (and)s
- X15 r (original)s
- X14 r (Mosaic)s
- X15 r (source)s
- X14 r (from)s
- Xf17 SF
- X15 r (NCSA/Web/Mosaic-source)s
- Xf6 SF
- X50 2386 p (on)s
- X15 r (WWFS.)s
- X144 2466 p (If)s
- X19 r (you)s
- X19 r (are)s
- X19 r (planning)s
- X19 r (to)s
- X20 r (hack)s
- Xf17 SF
- X19 r (wwalk)s
- Xf6 SF
- X(,)s
- X20 r (a)s
- X19 r (point-and-click)s
- X19 r (style)s
- X19 r (directory)s
- X19 r (browser)s
- X19 r (for)s
- X19 r (the)s
- X19 r (X)s
- X19 r (W)s
- X-1 r (indow)s
- X50 2541 p (System,)s
- X18 r (you)s
- X18 r (need)s
- X17 r (T)s
- X-3 r (cl)s
- X17 r (and)s
- X17 r (Tk.)s
- X28 r (Note)s
- X17 r (that)s
- X18 r (this)s
- X17 r (stuff)s
- X17 r (is)s
- X17 r (no)s
- X18 r (longer)s
- X18 r (maintained)s
- X17 r (up)s
- X18 r (to)s
- X17 r (date.)s
- X28 r (Bunch)s
- X17 r (of)s
- X18 r (T)s
- X-3 r (cl)s
- X50 2617 p (stuff)s
- X14 r (is)s
- X15 r (available)s
- X16 r (from)s
- Xf17 SF
- X15 r (tcl-tk)s
- Xf6 SF
- X15 r (on)s
- X15 r (WWFS.)s
- X144 2697 p (If)s
- X17 r (you)s
- X17 r (are)s
- X18 r (willing)s
- X17 r (to)s
- X17 r (adapt,)s
- X18 r (improve)s
- X17 r (or)s
- X17 r (port)s
- X17 r (this)s
- X18 r (software)s
- X17 r (by)s
- X17 r (yourself,)s
- X18 r (I)s
- X17 r (strongly)s
- X17 r (recommend)s
- X17 r (the)s
- X50 2772 p (use)s
- X16 r (of)s
- X16 r (GNU)s
- X16 r (software)s
- X17 r (suite)s
- X16 r (to)s
- X16 r (facilitate)s
- X16 r (development.)s
- X23 r (If)s
- X16 r (you)s
- X17 r (are)s
- X16 r (planning)s
- X16 r (to)s
- X16 r (modify)s
- X16 r (the)s
- X16 r (source)s
- X16 r (code,)s
- X50 2848 p (I)s
- X15 r (recommend)s
- X15 r (the)s
- X16 r (use)s
- X15 r (of)s
- X15 r (additional)s
- X15 r (tools)s
- X16 r (which)s
- X15 r (I)s
- X15 r (have)s
- X15 r (been)s
- X15 r (using)s
- X16 r (for)s
- X15 r (day-to-day)s
- X15 r (programming)s
- X15 r (tasks:)s
- X144 2917 p 1031 2 ru
- X143 2992 p 2 75 ru
- X177 2970 p (name)s
- X455 2992 p 2 75 ru
- X489 2970 p (description)s
- X1174 2992 p 2 75 ru
- X144 2995 p 1031 2 ru
- X143 3070 p 2 75 ru
- X177 3047 p (cextract)s
- X455 3070 p 2 75 ru
- X489 3047 p (C)s
- X15 r (prototype)s
- X15 r (extractor)s
- X1174 3070 p 2 75 ru
- X143 3145 p 2 75 ru
- X177 3123 p (gdb)s
- X455 3145 p 2 75 ru
- X489 3123 p (GNU)s
- X15 r (debugger)s
- X1174 3145 p 2 75 ru
- X143 3220 p 2 75 ru
- X177 3198 p (lsof)s
- X455 3220 p 2 75 ru
- X489 3198 p (process)s
- X15 r (\256le-table)s
- X15 r (inspector)s
- X1174 3220 p 2 75 ru
- X143 3296 p 2 75 ru
- X177 3273 p (malloclib)s
- X455 3296 p 2 75 ru
- X489 3273 p (malloc)s
- X15 r (debugging)s
- X15 r (library)s
- X1174 3296 p 2 75 ru
- X143 3371 p 2 75 ru
- X177 3348 p (mkid)s
- X455 3371 p 2 75 ru
- X489 3348 p (source)s
- X15 r (code)s
- X15 r (indexing)s
- X15 r (tool)s
- X1174 3371 p 2 75 ru
- X143 3446 p 2 75 ru
- X177 3424 p (rpcsrc-4.0)s
- X455 3446 p 2 75 ru
- X489 3424 p (Sun)s
- X15 r (RPC)s
- X15 r (source)s
- X1174 3446 p 2 75 ru
- X144 3448 p 1031 2 ru
- X144 3544 p (Other)s
- X18 r (brand-new)s
- X19 r (tools)s
- X18 r (or)s
- X19 r (commercial)s
- X18 r (programming)s
- X19 r (environments)s
- X18 r (might)s
- X18 r (be)s
- X19 r (of)s
- X18 r (great)s
- X19 r (help.)s
- X29 r (I)s
- X19 r (am)s
- X50 3619 p (very)s
- X20 r (much)s
- X20 r (interested)s
- X20 r (to)s
- X20 r (share)s
- X19 r (any)s
- X20 r (programming)s
- X20 r (tips)s
- X20 r (with)s
- X20 r (other)s
- X20 r (developers)s
- X20 r (\(preferably)s
- X20 r (via)s
- X20 r (mailing)s
- X50 3694 p (list\).)s
- X1260 3846 p (7)s
- XEP
- X
- X%%Page: 8 9
- XBP
- Xf6 SF
- X50 66 p (8)s
- Xf8 SF
- X1603 r (CHAPTER)s
- X15 r (2.)s
- X35 r (INST)s
- X-2 r (ALLA)s
- X-3 r (TION)s
- Xf13 SF
- X50 232 p (2.2)s
- X80 r (Planning)s
- X20 r (server)s
- X20 r (installation)s
- Xf6 SF
- X50 383 p (Now)s
- X19 r (you)s
- X19 r (must)s
- X19 r (determine)s
- X19 r (where)s
- X19 r (to)s
- X19 r (put)s
- X19 r (related)s
- X19 r (material.)s
- X32 r (Y)s
- X-5 r (ou)s
- X18 r (need)s
- X19 r (suf\256cient)s
- X18 r (amount)s
- X19 r (of)s
- X19 r (storage)s
- X19 r (be-)s
- X50 458 p (cause)s
- X17 r (our)s
- X16 r (daemon)s
- X17 r (cache)s
- X16 r (accessed)s
- X17 r (\256les.)s
- X24 r (Necessary)s
- X17 r (storage)s
- X17 r (space)s
- X16 r (varies)s
- X17 r (depending)s
- X17 r (on)s
- X16 r (the)s
- X17 r (number)s
- X16 r (of)s
- X50 534 p (users,)s
- X15 r (user)s
- X15 r (activity)s
- X-3 r (,)s
- X13 r (and)s
- X15 r (granularity)s
- X15 r (of)s
- X14 r (cached)s
- X15 r (\256les,)s
- X15 r (but)s
- X15 r (you)s
- X14 r (can)s
- X15 r (start)s
- X15 r (with)s
- X14 r (relatively)s
- X15 r (small)s
- X15 r (space)s
- X15 r (\(e.g.,)s
- X50 609 p (40Mbytes\))s
- X18 r (and)s
- X19 r (change)s
- X18 r (the)s
- X18 r (partition)s
- X19 r (later)s
- X-2 r (,)s
- X19 r (when)s
- X18 r (demands)s
- X18 r (exceed)s
- X19 r (supply)s
- X-3 r (.)s
- X28 r (Other)s
- X19 r (extras,)s
- X19 r (such)s
- X18 r (as)s
- X19 r (logs)s
- X50 684 p (and)s
- X15 r (maintenance)s
- X15 r (scripts,)s
- X16 r (do)s
- X15 r (not)s
- X15 r (occupy)s
- X15 r (much)s
- X16 r (space)s
- X15 r (as)s
- X15 r (compared)s
- X15 r (with)s
- X15 r (cache)s
- X16 r (directories.)s
- X144 766 p (If)s
- X17 r (you)s
- X18 r (have)s
- X17 r (a)s
- X17 r (relatively)s
- X18 r (large)s
- X16 r (empty)s
- X17 r (partition)s
- X18 r (available)s
- X17 r (and)s
- X17 r (you)s
- X18 r (are)s
- X17 r (planning)s
- X17 r (to)s
- X18 r (use)s
- X17 r (WWFS)s
- X17 r (reg-)s
- X50 842 p (ularly)s
- X-3 r (,)s
- X20 r (it)s
- X20 r (would)s
- X19 r (be)s
- X20 r (better)s
- X20 r (to)s
- X19 r (allocate)s
- X20 r (the)s
- X20 r (entire)s
- X19 r (partition)s
- X20 r (to)s
- X20 r (WWFS,)s
- X19 r (since)s
- X20 r (cache)s
- X20 r (occasionally)s
- X19 r (grows)s
- X50 917 p (quickly)s
- X14 r (when)s
- X13 r (users)s
- X14 r (access)s
- X13 r (WWFS)s
- X14 r (in)s
- X13 r (a)s
- X14 r (sudden)s
- X13 r (burst)s
- Xf4 SF
- X1305 895 p (1)s
- Xf6 SF
- X1330 917 p (.)s
- X19 r (If)s
- X14 r (you)s
- X14 r (are)s
- X13 r (planning)s
- X14 r (to)s
- X13 r (adopt)s
- X14 r (this)s
- X13 r (option,)s
- X14 r (simply)s
- Xf17 SF
- X50 992 p (newfs)s
- Xf6 SF
- X14 r (it,)s
- X14 r (create)s
- X14 r (mountpoint)s
- X14 r (and)s
- Xf17 SF
- X14 r (mount)s
- Xf6 SF
- X14 r (it)s
- X14 r (as)s
- X13 r (usual.)s
- X20 r (No)s
- X14 r (special)s
- X14 r (operation)s
- X14 r (is)s
- X14 r (necessary)s
- X14 r (since)s
- X14 r (the)s
- X13 r (caching)s
- X50 1067 p (mechanism)s
- X15 r (is)s
- X15 r (built)s
- X16 r (on)s
- X15 r (top)s
- X15 r (of)s
- X15 r (UNIX)s
- X16 r (\256le)s
- X15 r (system.)s
- X144 1149 p (WWFS)s
- X11 r (requires)s
- X11 r (a)s
- X11 r (directory)s
- X11 r (tree)s
- X10 r (to)s
- X11 r (store)s
- X11 r (various)s
- X11 r (information.)s
- X19 r (Name)s
- X11 r (the)s
- X11 r (top)s
- X11 r (directory)s
- X10 r (appropriately)s
- X50 1225 p (\(e.g.,)s
- Xf17 SF
- X20 r (/var/wwfs)s
- Xf6 SF
- X(\))s
- X19 r (and)s
- X19 r (make)s
- X19 r (sure)s
- X19 r (it)s
- X19 r (is)s
- X19 r (writable)s
- X19 r (by)s
- X19 r (root.)s
- X31 r (It)s
- X19 r (can)s
- X19 r (reside)s
- X19 r (either)s
- X19 r (on)s
- X19 r (a)s
- X19 r (local)s
- X19 r (disk)s
- X19 r (or)s
- X19 r (on)s
- X19 r (an)s
- X50 1300 p (NFS-mounted)s
- X15 r (disk,)s
- X15 r (but)s
- X16 r (I)s
- X15 r (recommend)s
- X15 r (the)s
- X15 r (use)s
- X16 r (of)s
- X15 r (local)s
- X15 r (disk)s
- X15 r (for)s
- X15 r (better)s
- X16 r (reliability)s
- X15 r (and)s
- X15 r (performance.)s
- Xf13 SF
- X50 1535 p (2.3)s
- X80 r (Installing)s
- X20 r (the)s
- X20 r (Cluster)s
- X19 r (Server)s
- Xf6 SF
- X50 1686 p (The)s
- Xf17 SF
- X15 r (csd)s
- Xf6 SF
- X15 r (included)s
- X16 r (in)s
- X15 r (this)s
- X15 r (release)s
- X15 r (is)s
- X16 r (known)s
- X15 r (to)s
- X15 r (work)s
- X15 r (on)s
- X15 r (the)s
- X16 r (following)s
- X15 r (platforms:)s
- X144 1761 p 1012 2 ru
- X143 1836 p 2 75 ru
- X177 1814 p (hardware)s
- X626 1836 p 2 75 ru
- X660 1814 p (operating)s
- X15 r (system)s
- X1155 1836 p 2 75 ru
- X144 1838 p 1012 2 ru
- X143 1914 p 2 75 ru
- X177 1891 p (Sun)s
- X16 r ([34])s
- X626 1914 p 2 75 ru
- X660 1891 p (Sun)s
- X15 r (OS)s
- X15 r (4.1.[123])s
- X1155 1914 p 2 75 ru
- X143 1989 p 2 75 ru
- X177 1966 p (DECstation)s
- X626 1989 p 2 75 ru
- X660 1966 p (Ultrix)s
- X15 r (4.3)s
- X1155 1989 p 2 75 ru
- X143 2064 p 2 75 ru
- X177 2042 p (Gateway)s
- X16 r (2000)s
- X626 2064 p 2 75 ru
- X660 2042 p (BSD/386)s
- X1155 2064 p 2 75 ru
- X143 2139 p 2 75 ru
- X177 2117 p (OMRON)s
- X16 r (Luna)s
- X15 r (2)s
- X626 2139 p 2 75 ru
- X660 2117 p (BSD)s
- X15 r (/)s
- X15 r (Mach)s
- X16 r (2.5)s
- X1155 2139 p 2 75 ru
- X143 2215 p 2 75 ru
- X177 2192 p (SUMI)s
- X16 r (ST)s
- X-4 r (A)s
- X-7 r (TION)s
- X626 2215 p 2 75 ru
- X660 2192 p (RISC/os)s
- X15 r (4.x)s
- X1155 2215 p 2 75 ru
- X143 2290 p 2 75 ru
- X177 2267 p (Sony)s
- X16 r (NEWS)s
- X626 2290 p 2 75 ru
- X660 2267 p (NEWS-OS)s
- X15 r (4.[012])s
- X1155 2290 p 2 75 ru
- X144 2292 p 1012 2 ru
- X144 2392 p (Basically)s
- X15 r (any)s
- X16 r (4.3BSD,)s
- X15 r (4.4BSD)s
- X15 r (or)s
- X15 r (OSF/1)s
- X15 r (machines)s
- X16 r (is)s
- X15 r (OK)s
- X15 r (\(well,)s
- X15 r (supposed)s
- X16 r (to)s
- X15 r (be\).)s
- X144 2474 p (This)s
- X22 r (software)s
- X23 r (is)s
- X22 r (not)s
- X22 r (tested)s
- X22 r (on)s
- X23 r (other)s
- X22 r (platforms.)s
- X41 r (Port)s
- X22 r (to)s
- X23 r (other)s
- X22 r (platforms)s
- X22 r (will)s
- X22 r (be)s
- X23 r (easy)s
- X22 r (however)s
- X-1 r (,)s
- X50 2550 p (if)s
- X20 r (the)s
- X19 r (target)s
- X19 r (platform)s
- X20 r (implements)s
- X19 r (Sun)s
- X20 r (NFS,)s
- X19 r (the)s
- X20 r (Berkeley)s
- X20 r (family)s
- X19 r (of)s
- X20 r (\256lesystems)s
- X20 r (\(FFS)s
- X19 r (or)s
- X20 r (FFFS\))s
- X20 r (and)s
- X50 2625 p (4.[34]BSD)s
- X11 r (system)s
- X11 r (calls.)s
- X19 r (I)s
- X11 r (haven')s
- X-1 r (t)s
- X10 r (made)s
- X11 r (further)s
- X11 r (attempt)s
- X11 r (to)s
- X11 r (port)s
- X11 r (this)s
- X11 r (software)s
- X11 r (to)s
- X11 r (more)s
- X11 r (esotelic)s
- X11 r (platforms)s
- X50 2700 p (\(largely)s
- X12 r (due)s
- X14 r (to)s
- X14 r (lack)s
- X13 r (of)s
- X14 r (motivation)s
- X13 r (for)s
- X14 r (it)s
- X13 r (and)s
- X14 r (familiarity)s
- X14 r (with)s
- X13 r (unseen)s
- X14 r (beasts\),)s
- X14 r (but)s
- X13 r (I)s
- X14 r (hope)s
- X13 r (we)s
- X14 r (can)s
- X13 r (support)s
- X50 2775 p (many)s
- X15 r (more)s
- X15 r (platforms)s
- X16 r (without)s
- X15 r (pain.)s
- Xf11 SF
- X50 2982 p (2.3.1)s
- X66 r (Edit)s
- Xf12 SF
- X17 r (csd.conf)s
- Xf11 SF
- X17 r (and)s
- Xf12 SF
- X16 r (Makefile.config)s
- Xf6 SF
- X50 3111 p (If)s
- X14 r (you)s
- X13 r (are)s
- X14 r (using)s
- X13 r (one)s
- X14 r (of)s
- X13 r (these)s
- X14 r (supported)s
- X13 r (platforms,)s
- X14 r (skip)s
- X14 r (to)s
- X13 r (the)s
- X14 r (next)s
- X13 r (paragraph.)s
- X20 r (If)s
- X13 r (you)s
- X14 r (are)s
- X13 r (not,)s
- X14 r (then)s
- X14 r (read)s
- X50 3186 p (comments)s
- X13 r (in)s
- X14 r (the)s
- Xf17 SF
- X13 r (config/Makefile.config)s
- Xf6 SF
- X13 r (and)s
- X14 r (edit)s
- X13 r (\257ags)s
- X13 r (accordingly)s
- X-3 r (.)s
- X19 r (There)s
- X13 r (are)s
- X13 r (lots)s
- X14 r (of)s
- X13 r (con\256guration)s
- X50 3262 p (\256les)s
- X16 r (in)s
- X16 r (the)s
- Xf17 SF
- X15 r (config/)s
- Xf6 SF
- X16 r (directory)s
- X-3 r (,)s
- X15 r (which)s
- X16 r (has)s
- X16 r (been)s
- X15 r (mostly)s
- X16 r (stolen)s
- X16 r (from)s
- X16 r (the)s
- Xf17 SF
- X15 r (amd)s
- Xf6 SF
- X(,)s
- X16 r (the)s
- X16 r (4.4)s
- X16 r (BSD)s
- X15 r (automounter)s
- X-2 r (.)s
- X50 3337 p (If)s
- X12 r (your)s
- X12 r (platform)s
- X12 r (has)s
- X12 r (been)s
- X12 r (supported)s
- X12 r (by)s
- X12 r (the)s
- Xf17 SF
- X12 r (amd)s
- Xf6 SF
- X(,)s
- X13 r (you)s
- X12 r (can)s
- X12 r (avoid)s
- X12 r (re-inventing)s
- X12 r (the)s
- X12 r (wheel)s
- X12 r (by)s
- X12 r (starting)s
- X12 r (there.)s
- X144 3419 p (Next,)s
- X22 r (modify)s
- Xf17 SF
- X20 r (config/csd.conf)s
- Xf6 SF
- X20 r (to)s
- X20 r (re\257ect)s
- X20 r (your)s
- X21 r (decision)s
- X20 r (in)s
- X20 r (Section)s
- X20 r (2.2.)s
- X36 r (Let)s
- X20 r (us)s
- X20 r (call)s
- X20 r (it)s
- Xf17 SF
- X21 r (WWFSDIR)s
- Xf6 SF
- X(.)s
- Xf17 SF
- X50 3494 p (csd.conf)s
- Xf6 SF
- X15 r (is)s
- X15 r (referenced)s
- X16 r (by)s
- X15 r (various)s
- X15 r (utilities)s
- X15 r (including)s
- X16 r (make,)s
- X15 r (shell)s
- X15 r (scripts,)s
- X15 r (perl)s
- X15 r (scripts)s
- X16 r (and)s
- X15 r (tcl)s
- X15 r (scripts.)s
- X50 3575 p 980 2 ru
- Xf3 SF
- X120 3612 p (1)s
- Xf5 SF
- X140 3633 p (Also,)s
- X14 r (WWFS)s
- X13 r (has)s
- X14 r (had)s
- X14 r (a)s
- X13 r (strange)s
- X14 r (bug)s
- X14 r (which)s
- X13 r (\256lled)s
- X14 r (up)s
- X14 r (entire)s
- X13 r (partition,)s
- X14 r (although)s
- X14 r (it)s
- X14 r (was)s
- X13 r (known)s
- X14 r (to)s
- X14 r (be)s
- X13 r (harmless)s
- X14 r (and)s
- X14 r (is)s
- X13 r (now)s
- X50 3694 p (exterminated.)s
- XEP
- X
- X%%Page: 9 10
- XBP
- Xf8 SF
- X50 66 p (2.3.)s
- X35 r (INST)s
- X-2 r (ALLING)s
- X14 r (THE)s
- X16 r (CLUSTER)s
- X15 r (SERVER)s
- Xf6 SF
- X1249 r (9)s
- Xf11 SF
- X50 232 p (2.3.2)s
- X66 r (Just)s
- X17 r (type)s
- Xf12 SF
- X17 r (make)s
- Xf6 SF
- X50 348 p (At)s
- X14 r (the)s
- X14 r (top)s
- X14 r (directory)s
- X14 r (of)s
- X14 r (the)s
- X14 r (distribution,)s
- X15 r (just)s
- X14 r (type)s
- Xf17 SF
- X14 r (make)s
- Xf6 SF
- X(.)s
- X19 r (It)s
- X15 r (automagically)s
- X14 r (guesses)s
- X14 r (your)s
- X14 r (architecture)s
- X14 r (and)s
- X50 423 p (operating)s
- X15 r (system.)s
- Xf17 SF
- X144 498 p (make)s
- Xf6 SF
- X11 r (will)s
- X11 r (start)s
- X11 r (compilation,)s
- X11 r (and)s
- X11 r (eventually)s
- X11 r (generate)s
- X11 r (the)s
- X11 r (server)s
- X11 r (program)s
- X11 r (\()s
- Xf17 SF
- X(csd)s
- Xf6 SF
- X(\))s
- X10 r (and)s
- X11 r (client)s
- X11 r (commands)s
- X50 574 p (\()s
- Xf17 SF
- X(wwmount)s
- Xf6 SF
- X18 r (and)s
- Xf17 SF
- X18 r (wwumount)s
- Xf6 SF
- X(\),)s
- X18 r (among)s
- X18 r (other)s
- X18 r (things.)s
- X28 r (Y)s
- X-5 r (ou)s
- X17 r (can)s
- X18 r (ignore)s
- X18 r (a)s
- X18 r (lot)s
- X18 r (of)s
- X18 r (warnings)s
- X18 r (during)s
- X18 r (compilation)s
- X50 649 p (procedure,)s
- X15 r (especially)s
- X15 r (if)s
- X16 r (your)s
- X15 r (compiler)s
- X15 r (conform)s
- X15 r (to)s
- X16 r (the)s
- X15 r (ANSI)s
- X15 r (standard.)s
- X144 724 p (NOTE:)s
- X17 r (It')s
- X-2 r (s)s
- X16 r (not)s
- X17 r (desirable)s
- X16 r (to)s
- X17 r (hand-edit)s
- X17 r (C)s
- X17 r (\256les)s
- X17 r (generated)s
- X17 r (by)s
- Xf17 SF
- X17 r (rpcgen)s
- Xf6 SF
- X(.)s
- X25 r (If)s
- X17 r (you)s
- X17 r (have)s
- X17 r (encountered)s
- X17 r (any)s
- X50 800 p (dif\256culty)s
- X15 r (with)s
- X15 r (compiling)s
- Xf17 SF
- X16 r (*_prot_*.c)s
- Xf6 SF
- X16 r (\256les,)s
- X16 r (you)s
- X15 r (must)s
- X16 r (regenerate)s
- X16 r (these)s
- X16 r (\256les)s
- X15 r (using)s
- Xf17 SF
- X16 r (rpcgen)s
- Xf6 SF
- X(.)s
- X22 r (T)s
- X-3 r (o)s
- X14 r (do)s
- X16 r (this,)s
- X50 875 p (step)s
- X15 r (down)s
- X15 r (to)s
- Xf17 SF
- X16 r (rpc/)s
- Xf6 SF
- X15 r (then)s
- X15 r (just)s
- X15 r (type)s
- Xf17 SF
- X16 r (make)s
- Xf6 SF
- X(.)s
- Xf11 SF
- X50 1039 p (2.3.3)s
- X66 r (Edit)s
- Xf12 SF
- X17 r (/etc/passwd)s
- Xf6 SF
- X50 1156 p (If)s
- X17 r (this)s
- X16 r (is)s
- X17 r (the)s
- X16 r (\256rst)s
- X17 r (time)s
- X16 r (for)s
- X17 r (your)s
- X16 r (server)s
- X17 r (installation,)s
- X17 r (you)s
- X16 r (must)s
- X17 r (create)s
- X16 r (a)s
- X17 r (local)s
- X16 r (account)s
- X17 r (with)s
- X16 r (user)s
- Xf20 SF
- X17 r (id)s
- Xf17 SF
- X16 r (wwfs)s
- Xf6 SF
- X50 1231 p (and)s
- X16 r (group)s
- Xf20 SF
- X16 r (id)s
- Xf17 SF
- X15 r (operator)s
- Xf6 SF
- X16 r (\(or)s
- X16 r (its)s
- X16 r (counterpart)s
- X15 r (in)s
- X16 r (your)s
- X16 r (system\),)s
- X16 r (at)s
- X16 r (the)s
- X15 r (machine)s
- X16 r (designated)s
- X16 r (as)s
- X16 r (your)s
- X15 r (cluster)s
- X50 1306 p (server)s
- X-1 r (,)s
- X10 r (since)s
- Xf17 SF
- X11 r (csd)s
- Xf6 SF
- X11 r (operates)s
- X11 r (under)s
- X11 r (this)s
- X11 r (account,)s
- X12 r (and)s
- X11 r (since)s
- X11 r (all)s
- X11 r (\256les)s
- X11 r (and)s
- X11 r (directories)s
- X11 r (beneath)s
- Xf17 SF
- X11 r (WWFSDIR)s
- Xf6 SF
- X11 r (will)s
- X10 r (be)s
- X50 1381 p (owned)s
- X14 r (by)s
- X15 r (the)s
- X14 r (account.)s
- X21 r (Choice)s
- X14 r (of)s
- X15 r (user)s
- Xf20 SF
- X14 r (id)s
- Xf6 SF
- X14 r (and)s
- X15 r (group)s
- Xf20 SF
- X14 r (id)s
- Xf6 SF
- X15 r (is)s
- X14 r (arbitrary)s
- X-2 r (,)s
- X13 r (but)s
- X15 r (you)s
- X14 r (must)s
- X15 r (choose)s
- Xf20 SF
- X14 r (id)s
- Xf6 SF
- X(s)s
- X15 r (carefully)s
- X50 1457 p (so)s
- X16 r (that)s
- X17 r (other)s
- X16 r (\256lesystems)s
- X17 r (can)s
- X16 r (be)s
- X16 r (protected)s
- X17 r (from)s
- X16 r (unexpected)s
- X17 r (behaviour)s
- X16 r (of)s
- Xf17 SF
- X16 r (csd)s
- Xf6 SF
- X17 r (\(which)s
- X16 r (is)s
- X16 r (very)s
- X17 r (unlikely)s
- X50 1532 p (though,)s
- X15 r (but)s
- X15 r (serious)s
- X16 r (admins)s
- X15 r (wants)s
- X15 r (\256rewall\).)s
- X20 r (An)s
- X16 r (excerpt)s
- X15 r (from)s
- X15 r (our)s
- X15 r (password)s
- X15 r (database)s
- X16 r (follows.)s
- Xf17 SF
- X50 1649 p (wwfs:*:40:5:WWFS)s
- X29 r (manager:/var/wwfs:/bin/csh)s
- Xf6 SF
- X144 1766 p (Since)s
- Xf17 SF
- X13 r (csd)s
- Xf6 SF
- X14 r (uses)s
- Xf17 SF
- X13 r (wwfs@name.of.this.machine)s
- Xf6 SF
- X14 r (for)s
- X13 r (e-mail)s
- X13 r (address,)s
- X14 r (this)s
- X13 r (account)s
- X14 r (should)s
- X13 r (be)s
- X13 r (reachable)s
- X50 1841 p (by)s
- X16 r (e-mail)s
- X17 r (and)s
- X16 r (every)s
- X17 r (received)s
- X16 r (message)s
- X16 r (should)s
- X17 r (be)s
- X16 r (forwarded)s
- X16 r (to)s
- X17 r (the)s
- X16 r (administrator)s
- X-2 r (.)s
- X23 r (The)s
- X16 r (e-mail)s
- X16 r (address)s
- X50 1916 p (has)s
- X15 r (been)s
- X15 r (used)s
- X16 r (for)s
- X15 r (statistics)s
- X15 r (reports)s
- X15 r (and)s
- X16 r (password)s
- X15 r (\(contact)s
- X15 r (address,)s
- X15 r (that)s
- X15 r (is\))s
- X16 r (for)s
- X15 r (anonymous)s
- X15 r (ftp)s
- X15 r (login.)s
- Xf11 SF
- X50 2081 p (2.3.4)s
- Xf12 SF
- X66 r (make)s
- X40 r (install-server)s
- Xf6 SF
- X50 2197 p (As)s
- X15 r (root,)s
- X15 r (go)s
- X16 r (to)s
- X15 r (the)s
- X15 r (top)s
- X15 r (directory)s
- X16 r (of)s
- X15 r (the)s
- X15 r (distribution,)s
- X15 r (then)s
- X15 r (type:)s
- Xf17 SF
- X50 2314 p (make)s
- X29 r (install-server)s
- Xf6 SF
- X50 2431 p (This)s
- X13 r (will)s
- X14 r (install)s
- X13 r (the)s
- Xf17 SF
- X13 r (csd)s
- Xf6 SF
- X14 r (and)s
- X13 r (shell/perl)s
- X13 r (scripts)s
- X14 r (appropriately)s
- X-3 r (,)s
- X12 r (creating)s
- X14 r (the)s
- X13 r (following)s
- X13 r (directories)s
- X14 r (beneath)s
- Xf17 SF
- X50 2506 p (WWFSDIR)s
- Xf6 SF
- X(:)s
- Xf1 SF
- X141 2636 p (\017)s
- Xf17 SF
- X31 r (bin/)s
- Xf6 SF
- X15 r (\320)s
- X15 r (executables)s
- X16 r (are)s
- X15 r (installed)s
- X15 r (here.)s
- Xf1 SF
- X141 2758 p (\017)s
- Xf17 SF
- X31 r (cache/)s
- Xf6 SF
- X15 r (\320)s
- X15 r (cached)s
- X16 r (information)s
- X15 r (is)s
- X15 r (stored)s
- X15 r (here.)s
- Xf1 SF
- X141 2880 p (\017)s
- Xf17 SF
- X31 r (etc/)s
- Xf6 SF
- X15 r (\320)s
- X15 r (con\256guration)s
- X16 r (\256les)s
- X15 r (for)s
- X15 r (perl)s
- X15 r (scripts.)s
- Xf1 SF
- X141 3002 p (\017)s
- Xf17 SF
- X31 r (lib/)s
- Xf6 SF
- X15 r (\320)s
- X15 r (for)s
- X16 r (library)s
- X15 r (\256les)s
- X15 r (used)s
- X15 r (by)s
- X15 r (perl)s
- X16 r (scripts.)s
- Xf1 SF
- X141 3123 p (\017)s
- Xf17 SF
- X31 r (log/)s
- Xf6 SF
- X15 r (\320)s
- X15 r (logs)s
- X16 r (and)s
- X15 r (event)s
- X15 r (traces)s
- X15 r (go)s
- X15 r (here.)s
- Xf1 SF
- X141 3245 p (\017)s
- Xf17 SF
- X31 r (stale/)s
- Xf6 SF
- X15 r (\320)s
- X15 r (stale)s
- X16 r (\256les)s
- X15 r (and)s
- X15 r (directories)s
- X15 r (are)s
- X15 r (moved)s
- X16 r (here.)s
- Xf1 SF
- X141 3367 p (\017)s
- Xf17 SF
- X31 r (ongoing/)s
- Xf6 SF
- X15 r (\320)s
- X15 r (all)s
- X16 r (interim)s
- X15 r (data,)s
- X15 r (including)s
- X15 r (\256les,)s
- X15 r (are)s
- X16 r (stored)s
- X15 r (here.)s
- Xf1 SF
- X141 3489 p (\017)s
- Xf17 SF
- X31 r (vol/)s
- Xf6 SF
- X15 r (\320)s
- X15 r (volume)s
- X16 r (\256les)s
- X15 r (are)s
- X15 r (stored)s
- X15 r (here.)s
- X144 3619 p (Now)s
- X18 r (you)s
- X17 r (\256nished)s
- X17 r (server)s
- X18 r (installation)s
- X17 r (procedure.)s
- X27 r (Please)s
- X18 r (read)s
- X17 r (Sections)s
- X18 r (3.1)s
- X17 r (and)s
- X18 r (3.4)s
- X17 r (for)s
- X18 r (starting)s
- X17 r (up)s
- X50 3694 p (the)s
- X15 r (Cluster)s
- X15 r (Server)s
- X-2 r (.)s
- XEP
- X
- X%%Page: 10 11
- XBP
- Xf6 SF
- X50 66 p (10)s
- Xf8 SF
- X1572 r (CHAPTER)s
- X15 r (2.)s
- X36 r (INST)s
- X-3 r (ALLA)s
- X-3 r (TION)s
- Xf13 SF
- X50 232 p (2.4)s
- X80 r (Installing)s
- X20 r (mount)s
- X20 r (commands)s
- Xf6 SF
- X50 370 p (Now)s
- X23 r (you)s
- X22 r (compile)s
- Xf17 SF
- X23 r (wwmount)s
- Xf6 SF
- X22 r (and)s
- Xf17 SF
- X23 r (wwumount)s
- Xf6 SF
- X23 r (for)s
- X22 r (use)s
- X23 r (on)s
- X22 r (your)s
- X23 r (workstation)s
- X23 r (clusters.)s
- X42 r (Or)s
- X23 r (you)s
- X22 r (can)s
- X23 r (grab)s
- X50 445 p (binaries)s
- X15 r (from)s
- Xf17 SF
- X15 r (WWFS/binaries)s
- Xf6 SF
- X16 r (on)s
- X15 r (WWFS.)s
- X144 520 p (The)s
- X18 r (mount)s
- X17 r (commands)s
- X18 r (is)s
- X17 r (known)s
- X17 r (to)s
- X18 r (work)s
- X17 r (on)s
- X18 r (BSD/386)s
- X17 r (1,)s
- X18 r (SunOS)s
- X18 r (4,)s
- X18 r (Ultrix)s
- X17 r (4,)s
- X18 r (OSF/1)s
- X18 r (1.3,)s
- X18 r (IRIX)s
- X17 r (4,)s
- X50 596 p (HP-UX)s
- X15 r (8,)s
- X15 r (NEWS-OS)s
- X15 r (4,)s
- X15 r (RISC/os)s
- X15 r (4,)s
- X15 r (NeXT)s
- X15 r (OS,)s
- X15 r (and)s
- X15 r (Luna)s
- X15 r (family)s
- X15 r (of)s
- X15 r (operating)s
- X15 r (systems.)s
- X20 r (Bascially)s
- X15 r (any)s
- X50 671 p (4.3BSD,)s
- X13 r (4.4BSD)s
- X13 r (or)s
- X14 r (OSF/1)s
- X13 r (machines)s
- X13 r (should)s
- X13 r (be)s
- X13 r (OK)s
- X14 r (\(say)s
- X13 r (V)s
- X-7 r (AX)s
- X12 r (or)s
- X13 r (T)s
- X-3 r (ahoe)s
- X12 r (which)s
- X14 r (I)s
- X13 r (don't)s
- X12 r (have)s
- X13 r (access)s
- X13 r (to\).)s
- X50 746 p (Also,)s
- X19 r (it)s
- X17 r (is)s
- X18 r (relatively)s
- X18 r (easy)s
- X18 r (to)s
- X18 r (port)s
- X18 r (the)s
- X18 r (client)s
- X18 r (software)s
- X17 r (to)s
- X18 r (non-BSD)s
- X18 r (platforms.)s
- X28 r (I)s
- X18 r (would)s
- X18 r (like)s
- X18 r (to)s
- X18 r (know)s
- X18 r (if)s
- X50 821 p (it)s
- X16 r (runs)s
- X16 r (on)s
- X16 r (Solaris)s
- X17 r (2)s
- X16 r (and)s
- X16 r (NEWS-OS)s
- X16 r (6;)s
- X17 r (please)s
- X16 r (let)s
- X16 r (me)s
- X16 r (know)s
- X16 r (if)s
- X16 r (it)s
- X17 r (runs)s
- X16 r (on)s
- X16 r (one)s
- X16 r (of)s
- X16 r (these)s
- X16 r (\(and)s
- X17 r (other)s
- X16 r (exotic)s
- X50 897 p (operating)s
- X15 r (systems)s
- X15 r (:-\).)s
- X144 972 p (NOTE:)s
- X18 r (BSD/386)s
- X18 r (and)s
- X18 r (possibly)s
- X18 r (other)s
- X18 r (operating)s
- X18 r (systems)s
- X18 r (with)s
- X18 r ('Guelph)s
- X17 r (NFS')s
- X18 r (may)s
- X18 r (suffer)s
- X17 r (from)s
- X18 r (the)s
- X50 1047 p (symptom)s
- X16 r (that)s
- X16 r (previously)s
- X17 r (uncached)s
- X16 r (directories)s
- X16 r (remain)s
- X16 r (empty)s
- X16 r (even)s
- X17 r (when)s
- X16 r (FTP)s
- X16 r (transfer)s
- X16 r (completes)s
- X16 r (and)s
- X50 1122 p (directories)s
- X15 r (get)s
- X14 r (\256lled.)s
- X20 r (I)s
- X15 r (don')s
- X-1 r (t)s
- X14 r (have)s
- X14 r (any)s
- X15 r (smart)s
- X14 r (idea)s
- X15 r (on)s
- X14 r (how)s
- X15 r (to)s
- X14 r (\256x)s
- X15 r (it)s
- X14 r (except)s
- X15 r (modifying)s
- X15 r (the)s
- X14 r (BSD)s
- X15 r (kernel.)s
- X20 r (I)s
- X50 1198 p (hope)s
- X15 r (4.4BSD)s
- X15 r (have)s
- X16 r (\256xed)s
- X15 r (this)s
- X15 r (bug.)s
- X144 1273 p (NOTE:)s
- X15 r (Luna2/Mach)s
- X16 r (users)s
- X15 r (must)s
- X15 r (steal)s
- Xf17 SF
- X15 r (mount.o)s
- Xf6 SF
- X15 r (from)s
- X16 r (Luna/UniOS-B)s
- Xf17 SF
- X15 r (libc.a)s
- Xf6 SF
- X(.)s
- X144 1348 p (Y)s
- X-5 r (ou)s
- X17 r (must)s
- X18 r (modify)s
- Xf17 SF
- X19 r (config/wwfs.conf)s
- Xf6 SF
- X18 r (accordingly)s
- X-3 r (.)s
- X28 r (It)s
- X19 r (is)s
- X18 r (referenced)s
- X18 r (by)s
- X18 r (various)s
- X19 r (utilities)s
- X18 r (including)s
- X50 1424 p (shell)s
- X15 r (scripts,)s
- X15 r (perl)s
- X16 r (scripts)s
- X15 r (and)s
- X15 r (tcl)s
- X15 r (scripts.)s
- X144 1499 p (Y)s
- X-5 r (ou)s
- X14 r (may)s
- X15 r (need)s
- X16 r (to)s
- X15 r (edit)s
- Xf17 SF
- X15 r (config/Makefile.config)s
- Xf6 SF
- X15 r (and)s
- X16 r (correctly)s
- X15 r (set)s
- X15 r (the)s
- X15 r (following)s
- X15 r (\257ags.)s
- X144 1553 p 1108 2 ru
- X143 1628 p 2 75 ru
- X177 1606 p (name)s
- X384 1628 p 2 75 ru
- X418 1606 p (description)s
- X1251 1628 p 2 75 ru
- X144 1630 p 1108 2 ru
- X143 1706 p 2 75 ru
- Xf17 SF
- X177 1683 p (ETCDIR)s
- X384 1706 p 2 75 ru
- X418 1683 p (wwmount)s
- Xf6 SF
- X15 r (and)s
- Xf17 SF
- X15 r (wwumount)s
- Xf6 SF
- X16 r (goes)s
- X15 r (here)s
- X1251 1706 p 2 75 ru
- X143 1781 p 2 75 ru
- Xf17 SF
- X177 1758 p (LIBDIR)s
- X384 1781 p 2 75 ru
- X418 1758 p (libww.a)s
- Xf6 SF
- X15 r (goes)s
- X15 r (here)s
- X1251 1781 p 2 75 ru
- X143 1856 p 2 75 ru
- Xf17 SF
- X177 1834 p (INCDIR)s
- X384 1856 p 2 75 ru
- X418 1834 p (libww.h)s
- Xf6 SF
- X15 r (goes)s
- X15 r (here)s
- X1251 1856 p 2 75 ru
- X144 1858 p 1108 2 ru
- X144 1938 p (Just)s
- X17 r (type)s
- Xf17 SF
- X16 r (make)s
- X29 r (install-client)s
- Xf6 SF
- X17 r (then)s
- X16 r (it)s
- X17 r (will)s
- X16 r (install)s
- Xf17 SF
- X17 r (/etc/wwfs.conf)s
- Xf6 SF
- X(,)s
- X17 r (mount)s
- X16 r (commands,)s
- X17 r (libraries)s
- X50 2014 p (and)s
- X15 r (header)s
- X15 r (\256les.)s
- XEP
- X
- X%%Page: 11 12
- XBP
- Xf19 SF
- X50 647 p (Chapter)s
- X29 r (3)s
- Xf18 SF
- X50 924 p (Administration)s
- Xf6 SF
- X50 1221 p (This)s
- X15 r (chapter)s
- X15 r (is)s
- X15 r (written)s
- X15 r (for)s
- X15 r (the)s
- X15 r (administrator)s
- X15 r (of)s
- X15 r (the)s
- X15 r (Cluster)s
- X15 r (Server)s
- X15 r (\()s
- Xf17 SF
- X(csd)s
- Xf6 SF
- X(\).)s
- X21 r (Please)s
- X15 r (read)s
- X15 r (Sections)s
- X15 r (3.1)s
- X15 r (and)s
- X50 1297 p (3.4)s
- X15 r (for)s
- X15 r (starting)s
- X16 r (up)s
- Xf17 SF
- X15 r (csd)s
- Xf6 SF
- X(.)s
- Xf13 SF
- X50 1494 p (3.1)s
- X80 r (Server)s
- X20 r (administration)s
- Xf6 SF
- X50 1633 p (The)s
- X19 r (Cluster)s
- X18 r (Server)s
- X-1 r (,)s
- Xf17 SF
- X18 r (csd)s
- Xf6 SF
- X(,)s
- X20 r (can)s
- X19 r (be)s
- X18 r (restarted)s
- X19 r (anytime.)s
- X30 r (Basically)s
- X-2 r (,)s
- X18 r (there)s
- X19 r (is)s
- X18 r (no)s
- X19 r (loss)s
- X19 r (of)s
- X18 r (information)s
- X19 r (due)s
- X19 r (to)s
- X50 1708 p (termination,)s
- X14 r (since)s
- X14 r (cached)s
- X15 r (information)s
- X14 r (is)s
- X14 r (kept)s
- X14 r (on)s
- X14 r (the)s
- X14 r (disk.)s
- X20 r (Y)s
- X-5 r (ou)s
- X13 r (should)s
- X14 r (be)s
- X14 r (careful)s
- X15 r (however)s
- X-2 r (,)s
- X13 r (since)s
- X15 r (there)s
- X50 1783 p (might)s
- X15 r (be)s
- X15 r (ongoing)s
- X16 r (\256le)s
- X15 r (transfer)s
- X-2 r (,)s
- X15 r (and)s
- X15 r (there)s
- X15 r (might)s
- X15 r (be)s
- X16 r (some)s
- X15 r (users)s
- X15 r (accessing)s
- X15 r (WWFS.)s
- Xf11 SF
- X50 1952 p (Starting)s
- X17 r (server)s
- X16 r (process)s
- Xf6 SF
- X50 2069 p (T)s
- X-3 r (o)s
- X21 r (start)s
- X23 r (the)s
- X22 r (server)s
- X23 r (process,)s
- X24 r (become)s
- X23 r (superuser)s
- X22 r (and)s
- X23 r (just)s
- X22 r (type)s
- Xf17 SF
- X23 r (csd-nanny)s
- Xf6 SF
- X22 r (to)s
- X23 r (start)s
- Xf17 SF
- X23 r (csd)s
- Xf6 SF
- X(.)s
- X42 r (\(presumably)s
- X50 2144 p (installed)s
- X15 r (at)s
- Xf17 SF
- X15 r (WWFSDIR/bin)s
- Xf6 SF
- X(\).)s
- X144 2220 p (NOTE:)s
- X13 r (WWFS)s
- X13 r (provides)s
- X13 r (non-stop)s
- X14 r (operation)s
- X13 r (with)s
- Xf17 SF
- X13 r (csd-nanny)s
- Xf6 SF
- X(,)s
- X13 r (an)s
- X13 r (iterative)s
- X14 r (and)s
- X13 r (automatic)s
- X13 r (debugger)s
- X50 2295 p (front-end)s
- X21 r (speci\256cally)s
- X21 r (written)s
- X21 r (for)s
- X21 r (non-stop)s
- X21 r (programs)s
- X21 r (such)s
- X21 r (as)s
- Xf17 SF
- X21 r (csd)s
- Xf6 SF
- X(.)s
- Xf17 SF
- X38 r (csd-nanny)s
- Xf6 SF
- X21 r (is)s
- X21 r (included)s
- X21 r (in)s
- Xf17 SF
- X21 r (saps/)s
- Xf6 SF
- X50 2370 p (directory)s
- X16 r (of)s
- X15 r (this)s
- X16 r (distribution.)s
- X22 r (For)s
- X15 r (more)s
- X16 r (information)s
- X15 r (on)s
- Xf17 SF
- X16 r (csd-nanny)s
- Xf6 SF
- X(,)s
- X16 r (read)s
- X16 r (the)s
- X15 r (source,)s
- X16 r (which)s
- X16 r (is)s
- X15 r (actually)s
- X50 2446 p (a)s
- X15 r (small)s
- X15 r (perl)s
- X16 r (script)s
- X15 r (and)s
- X15 r (is)s
- X15 r (well-documented.)s
- Xf11 SF
- X50 2614 p (T)s
- X-5 r (erminating)s
- X15 r (server)s
- X17 r (process)s
- Xf17 SF
- X50 2731 p (csd)s
- Xf6 SF
- X19 r (can)s
- X18 r (be)s
- X19 r (killed)s
- X19 r (just)s
- X19 r (as)s
- X18 r (other)s
- X19 r (daemon)s
- X19 r (processes.)s
- X31 r (Y)s
- X-5 r (ou)s
- X17 r (can)s
- X19 r (use)s
- X19 r (either)s
- Xf17 SF
- X18 r (SIGINT)s
- Xf6 SF
- X(,)s
- Xf17 SF
- X19 r (SIGTERM)s
- Xf6 SF
- X19 r (or)s
- Xf17 SF
- X19 r (SIGKILL)s
- Xf6 SF
- X(.)s
- X50 2806 p (T)s
- X-3 r (ermination)s
- X10 r (is)s
- X12 r (logged)s
- X12 r (as)s
- X12 r (such,)s
- X12 r (using)s
- Xf17 SF
- X12 r (syslog)s
- Xf6 SF
- X11 r (facility)s
- X-3 r (.)s
- Xf17 SF
- X19 r (csd-nanny)s
- Xf6 SF
- X11 r (detects)s
- X12 r (termination)s
- X12 r (and)s
- X11 r (automatically)s
- X50 2882 p (restarts)s
- Xf17 SF
- X15 r (csd)s
- Xf6 SF
- X(.)s
- X144 2957 p (If)s
- X11 r (you)s
- X12 r (really)s
- X11 r (want)s
- X12 r (to)s
- X11 r (stop)s
- Xf17 SF
- X11 r (csd)s
- Xf6 SF
- X(,)s
- X13 r (\256rst)s
- X11 r (kill)s
- Xf17 SF
- X11 r (csd-nanny)s
- Xf6 SF
- X12 r (then)s
- Xf17 SF
- X11 r (csd)s
- Xf6 SF
- X(.)s
- X19 r (But)s
- X11 r (beware:)s
- X19 r (if)s
- X11 r (someone)s
- X12 r (was)s
- X11 r (accessing)s
- X50 3032 p (WWFS)s
- X11 r (when)s
- X10 r (you)s
- X11 r (stopped)s
- X10 r (the)s
- X11 r (daemon,)s
- X11 r (his)s
- X11 r (shell)s
- X11 r (\(or)s
- X10 r (other)s
- X11 r (accessing)s
- X10 r (processes,)s
- X12 r (say)s
- X10 r (Emacs\))s
- X11 r (will)s
- X11 r (become)s
- X50 3108 p (frozen.)s
- X20 r (This)s
- X15 r (is)s
- X16 r (normal)s
- X15 r (NFS)s
- X15 r (behaviour)s
- X15 r (and)s
- X16 r (not)s
- X15 r (a)s
- X15 r (bug)s
- X15 r (in)s
- X15 r (WWFS.)s
- Xf11 SF
- X50 3276 p (Managing)s
- X17 r (cache)s
- Xf6 SF
- X50 3393 p (Currently)s
- X-3 r (,)s
- Xf17 SF
- X18 r (csd)s
- Xf6 SF
- X19 r (does)s
- X19 r (not)s
- X18 r (reclaim)s
- X19 r (secondary)s
- X19 r (storage)s
- X18 r (by)s
- X19 r (itself.)s
- X30 r (The)s
- X19 r (shell)s
- X18 r (script)s
- Xf17 SF
- X19 r (expire.sh)s
- Xf6 SF
- X(,)s
- X19 r (which)s
- X19 r (has)s
- X50 3468 p (been)s
- X17 r (included)s
- X17 r (in)s
- X18 r (this)s
- X17 r (distribution,)s
- X17 r (should)s
- X18 r (be)s
- X17 r (invoked)s
- X17 r (regularly)s
- X17 r (via)s
- Xf17 SF
- X17 r (crontab)s
- Xf6 SF
- X18 r (\(typically)s
- X17 r (once)s
- X17 r (a)s
- X17 r (week\).)s
- X50 3544 p (It)s
- X15 r (expires)s
- X15 r (\252inactive\272)s
- X15 r (\256les)s
- X14 r (that)s
- X15 r (haven't)s
- X14 r (been)s
- X15 r (accessed)s
- X15 r (for)s
- X15 r (more)s
- X15 r (than)s
- X14 r (two)s
- X15 r (weeks,)s
- X15 r (so)s
- X15 r (that)s
- X15 r (cache)s
- X15 r (partition)s
- X50 3619 p (will)s
- X12 r (not)s
- X13 r (be)s
- X12 r (\256lled)s
- X12 r (up)s
- X13 r (with)s
- X12 r (\252no)s
- X12 r (longer)s
- X12 r (referenced\272)s
- X13 r (\256les.)s
- X19 r (Directories)s
- X12 r (do)s
- X13 r (not)s
- X12 r (expire,)s
- X13 r (but)s
- X12 r (obsolete)s
- X13 r (directory)s
- X50 3694 p (listings)s
- X15 r (are)s
- X15 r (automatically)s
- X16 r (discarded)s
- X15 r (and)s
- X15 r (superseded)s
- X15 r (by)s
- X16 r (newer)s
- X15 r (ones.)s
- X1246 3846 p (1)s
- X-2 r (1)s
- XEP
- X
- X%%Page: 12 13
- XBP
- Xf6 SF
- X50 66 p (12)s
- Xf8 SF
- X1481 r (CHAPTER)s
- X15 r (3.)s
- X35 r (ADMINISTRA)s
- X-2 r (TION)s
- Xf6 SF
- X144 232 p (NOTE:)s
- X22 r (It')s
- X-2 r (s)s
- X21 r (okay)s
- X22 r (to)s
- X21 r (delete)s
- X22 r (cached)s
- X22 r (\256les)s
- X22 r (selectively)s
- X-3 r (,)s
- X23 r (but)s
- X22 r (it')s
- X-2 r (s)s
- X21 r (not)s
- X21 r (recommended)s
- X22 r (to)s
- X22 r (delete)s
- X22 r (cached)s
- X50 307 p (directory)s
- X14 r (\256les)s
- X14 r (\(i.e.,)s
- X15 r (\256les)s
- X14 r (within)s
- Xf17 SF
- X14 r (dir/)s
- Xf6 SF
- X14 r (directory\))s
- X14 r (unless)s
- X14 r (you)s
- X14 r (want)s
- X14 r (to)s
- X14 r (remove)s
- X14 r (cached)s
- X14 r (information)s
- X15 r (for)s
- X14 r (the)s
- X50 382 p (whole)s
- X20 r (volume.)s
- X35 r (Even)s
- X20 r (if)s
- X20 r (all)s
- X20 r (cached)s
- X20 r (directory)s
- X21 r (\256les)s
- X20 r (were)s
- X20 r (lost,)s
- Xf17 SF
- X21 r (csd)s
- Xf6 SF
- X20 r (continues)s
- X20 r (to)s
- X20 r (function)s
- X21 r (but)s
- Xf17 SF
- X20 r (csd)s
- Xf6 SF
- X20 r (will)s
- X50 458 p (occasionally)s
- X15 r (forget)s
- X14 r (which)s
- X16 r (\256le)s
- X15 r (is)s
- X15 r (cached)s
- X15 r (and)s
- X15 r (which)s
- X16 r (is)s
- X15 r (not.)s
- X144 548 p (Other)s
- X15 r (management)s
- X16 r (tools,)s
- X15 r (such)s
- X15 r (as)s
- X16 r (\256le)s
- X15 r (system)s
- X15 r (consistency)s
- X16 r (checker)s
- X-2 r (,)s
- X14 r (will)s
- X16 r (be)s
- X15 r (available)s
- X15 r (in)s
- X16 r (future)s
- X15 r (ver-)s
- X50 623 p (sions.)s
- X144 713 p (If)s
- Xf17 SF
- X13 r (csd)s
- Xf6 SF
- X12 r (was)s
- X13 r (accidentally)s
- X13 r (killed)s
- X12 r (by)s
- X13 r (someone,)s
- X13 r (even)s
- X12 r (with)s
- Xf17 SF
- X13 r (SIGKILL)s
- Xf6 SF
- X(,)s
- X13 r (the)s
- X12 r (chances)s
- X13 r (are)s
- X13 r (that)s
- X12 r (user)s
- X2 r (')s
- X-2 r (s)s
- X12 r (ongoing)s
- X50 788 p (\256le)s
- X14 r (transfers)s
- X14 r (weren't)s
- X13 r (lost;)s
- X15 r (just)s
- X14 r (take)s
- X14 r (a)s
- X14 r (look)s
- X14 r (at)s
- X15 r (the)s
- Xf17 SF
- X14 r (ongoing)s
- Xf6 SF
- X14 r (subdirectory)s
- X14 r (of)s
- Xf17 SF
- X14 r (WWFSDIR)s
- Xf6 SF
- X(,)s
- X14 r (where)s
- X14 r (interim)s
- X14 r (\256les)s
- X50 864 p (are)s
- X17 r (kept.)s
- X24 r (Signi\256cant)s
- X17 r (amount)s
- X16 r (of)s
- X17 r (effort)s
- X15 r (have)s
- X17 r (been)s
- X17 r (paid)s
- X16 r (so)s
- X17 r (that)s
- X16 r (daemon)s
- X17 r (can)s
- X17 r (survive)s
- X16 r (virtually)s
- X17 r (eternally)s
- X-3 r (,)s
- X50 939 p (and)s
- X15 r (can)s
- X15 r (be)s
- X16 r (restarted)s
- X15 r (anytime)s
- X15 r (without)s
- X15 r (loss)s
- X16 r (of)s
- X15 r (data.)s
- Xf11 SF
- X50 1193 p (Snooping)s
- X17 r (cache)s
- X16 r (with)s
- X17 r (perl)s
- Xf6 SF
- X50 1339 p (I)s
- X14 r (have)s
- X15 r (written)s
- Xf17 SF
- X14 r (libmm.pl)s
- Xf6 SF
- X(,)s
- X14 r (the)s
- X15 r (Maru-Maru)s
- X14 r (library)s
- X14 r (\(counterpart)s
- X14 r (of)s
- X15 r (W)s
- X-4 r (aku-W)s
- X-5 r (aku)s
- X13 r (in)s
- X15 r (Japanese\))s
- X14 r (in)s
- X14 r (the)s
- X14 r (hope)s
- X50 1414 p (that)s
- X19 r (perl)s
- X18 r (scripts)s
- X19 r (built)s
- X18 r (upon)s
- X19 r (this)s
- X18 r (package)s
- X19 r (complements)s
- X19 r (features)s
- X18 r (not)s
- X19 r (implemented)s
- X18 r (in)s
- Xf17 SF
- X19 r (csd)s
- Xf6 SF
- X(,)s
- X19 r (thereby)s
- X19 r (en-)s
- X50 1490 p (abling)s
- X15 r (much)s
- X14 r (more)s
- X15 r (advanced)s
- X15 r (features)s
- X15 r (such)s
- X14 r (as)s
- X15 r (cache)s
- X15 r (strategy)s
- X15 r (selection,)s
- X15 r (cache)s
- X14 r (statistics)s
- X15 r (and)s
- X15 r (cache)s
- X15 r (con-)s
- X50 1565 p (sistency)s
- X17 r (management.)s
- X24 r (I)s
- X17 r (have)s
- X16 r (also)s
- X17 r (added)s
- X17 r (UIP)s
- X16 r (commands)s
- X17 r (that)s
- X17 r (enables)s
- X16 r (close)s
- X17 r (collaboration)s
- X17 r (of)s
- Xf17 SF
- X16 r (csd)s
- Xf6 SF
- X17 r (and)s
- X50 1640 p (these)s
- X15 r (perl)s
- X15 r (programs.)s
- X144 1730 p (NOTE:)s
- X16 r (This)s
- X15 r (package)s
- X16 r (works)s
- X15 r (only)s
- X16 r (on)s
- X16 r (localhost)s
- X15 r (\(that)s
- X16 r (is,)s
- X15 r (the)s
- X16 r (machine)s
- X16 r (running)s
- X15 r (csd\))s
- X16 r (for)s
- X15 r (security)s
- X16 r (rea-)s
- X50 1806 p (sons.)s
- X144 1896 p (Several)s
- X20 r (sample)s
- X20 r (perl)s
- X20 r (scripts)s
- X20 r (are)s
- X20 r (provided)s
- X19 r (in)s
- X20 r (the)s
- Xf17 SF
- X20 r (libww/)s
- Xf6 SF
- X20 r (subdirectory)s
- X20 r (of)s
- X20 r (this)s
- X20 r (distribution;)s
- X22 r (I)s
- X20 r (hope)s
- X50 1971 p (these)s
- X15 r (examples)s
- X15 r (facilitate)s
- X16 r (writing)s
- X15 r (perl)s
- X15 r (scripts)s
- X15 r (for)s
- END_OF_FILE
- if test 45673 -ne `wc -c <'doc/manual.ps.B'`; then
- echo shar: \"'doc/manual.ps.B'\" unpacked with wrong size!
- elif test -f 'doc/manual.ps.A' && test -f 'doc/manual.ps.C'; then
- echo shar: Combining \"'doc/manual.ps'\" \(186887 characters\)
- cat 'doc/manual.ps.A' 'doc/manual.ps.B' 'doc/manual.ps.C' > 'doc/manual.ps'
- if test 186887 -ne `wc -c <'doc/manual.ps'`; then
- echo shar: \"'doc/manual.ps'\" combined with wrong size!
- else
- rm doc/manual.ps.A doc/manual.ps.B doc/manual.ps.C
- fi
- fi
- # end of 'doc/manual.ps.B'
- fi
- if test -f 'mosaic/Mosaic-2.0+wwfs.diff' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'mosaic/Mosaic-2.0+wwfs.diff'\"
- else
- echo shar: Extracting \"'mosaic/Mosaic-2.0+wwfs.diff'\" \(31052 characters\)
- sed "s/^X//" >'mosaic/Mosaic-2.0+wwfs.diff' <<'END_OF_FILE'
- XBinary files Mosaic-2.0/ID and Mosaic-2.0+wwfs/ID differ
- Xdiff -c -r -N Mosaic-2.0/Makefile Mosaic-2.0+wwfs/Makefile
- X*** Mosaic-2.0/Makefile Tue Nov 9 18:21:49 1993
- X--- Mosaic-2.0+wwfs/Makefile Sun Nov 21 00:50:34 1993
- X***************
- X*** 141,147 ****
- X--- 141,153 ----
- X waislibdir = $(waisroot)/bin
- X waislibs = $(waislibdir)/inv.a $(waislibdir)/wais.a $(waislibdir)/libftw.a -lm
- X
- X+ #### DIRECT WWFS SUPPORT
- X
- X+ wwfsroot = /home/is/youki-k/work/wwfs-108.0
- X+ wwfsflags = -I$(wwfsroot)/libww
- X+ wwfslibdir = $(wwfsroot)/libww
- X+ wwfslibs = $(wwfslibdir)/libww.a
- X+
- X #### Customization flags:
- X #### . If you want Mosaic to come up with monochrome colors by default,
- X #### use -DMONO_DEFAULT
- X***************
- X*** 179,197 ****
- X
- X libwww2::
- X @echo --- Building libwww2
- X! cd libwww2; make CC=$(CC) RANLIB=$(RANLIB) CFLAGS="$(CFLAGS) $(knrflag) $(waisflags)"
- X
- X src::
- X @echo --- Building src
- X! cd src; make CC=$(CC) RANLIB=$(RANLIB) CFLAGS="$(CFLAGS) $(customflags) $(xinc) $(dtmflags) $(hdfflags) -I.. -I../libXmx -I../libwww2" AUX_CFLAGS=$(knrflag) X_LIBS="$(xlibs)" SYS_LIBS="$(syslibs)" DTM_LIBS="$(dtmlibs)" HDF_LIBS="$(hdflibs)" WAIS_LIBS="$(waislibs)" LIBWWW_DIR=../libwww2
- X
- X src-purifyd::
- X @echo --- Building Purify'd src
- X! cd src; make PURIFY=$(PURIFY) CC=$(CC) RANLIB=$(RANLIB) CFLAGS="$(CFLAGS) $(customflags) $(xinc) $(dtmflags) $(hdfflags) -I.. -I../libXmx -I../libwww2" AUX_CFLAGS=$(knrflag) X_LIBS="$(xlibs)" SYS_LIBS="$(syslibs)" DTM_LIBS="$(dtmlibs)" HDF_LIBS="$(hdflibs)" WAIS_LIBS="$(waislibs)" LIBWWW_DIR=../libwww2
- X
- X src-quantifyd::
- X @echo --- Building Quantify'd src
- X! cd src; make PURIFY=$(QUANTIFY) CC=$(CC) RANLIB=$(RANLIB) CFLAGS="$(CFLAGS) $(customflags) $(xinc) $(dtmflags) $(hdfflags) -I.. -I../libXmx -I../libwww2" AUX_CFLAGS=$(knrflag) X_LIBS="$(xlibs)" SYS_LIBS="$(syslibs)" DTM_LIBS="$(dtmlibs)" HDF_LIBS="$(hdflibs)" WAIS_LIBS="$(waislibs)" LIBWWW_DIR=../libwww2
- X
- X libnet::
- X @echo --- Building libnet
- X--- 185,203 ----
- X
- X libwww2::
- X @echo --- Building libwww2
- X! cd libwww2; make CC=$(CC) RANLIB=$(RANLIB) CFLAGS="$(CFLAGS) $(knrflag) $(waisflags) $(wwfsflags)"
- X
- X src::
- X @echo --- Building src
- X! cd src; make CC=$(CC) RANLIB=$(RANLIB) CFLAGS="$(CFLAGS) $(customflags) $(xinc) $(dtmflags) $(hdfflags) -I.. -I../libXmx -I../libwww2" AUX_CFLAGS=$(knrflag) X_LIBS="$(xlibs)" SYS_LIBS="$(syslibs)" DTM_LIBS="$(dtmlibs)" HDF_LIBS="$(hdflibs)" WAIS_LIBS="$(waislibs)" WWFS_LIBS="$(wwfslibs)" LIBWWW_DIR=../libwww2
- X
- X src-purifyd::
- X @echo --- Building Purify'd src
- X! cd src; make PURIFY=$(PURIFY) CC=$(CC) RANLIB=$(RANLIB) CFLAGS="$(CFLAGS) $(customflags) $(xinc) $(dtmflags) $(hdfflags) -I.. -I../libXmx -I../libwww2" AUX_CFLAGS=$(knrflag) X_LIBS="$(xlibs)" SYS_LIBS="$(syslibs)" DTM_LIBS="$(dtmlibs)" HDF_LIBS="$(hdflibs)" WAIS_LIBS="$(waislibs)" WWFS_LIBS="$(wwfslibs)" LIBWWW_DIR=../libwww2
- X
- X src-quantifyd::
- X @echo --- Building Quantify'd src
- X! cd src; make PURIFY=$(QUANTIFY) CC=$(CC) RANLIB=$(RANLIB) CFLAGS="$(CFLAGS) $(customflags) $(xinc) $(dtmflags) $(hdfflags) -I.. -I../libXmx -I../libwww2" AUX_CFLAGS=$(knrflag) X_LIBS="$(xlibs)" SYS_LIBS="$(syslibs)" DTM_LIBS="$(dtmlibs)" HDF_LIBS="$(hdflibs)" WAIS_LIBS="$(waislibs)" WWFS_LIBS="$(wwfslibs)" LIBWWW_DIR=../libwww2
- X
- X libnet::
- X @echo --- Building libnet
- Xdiff -c -r -N Mosaic-2.0/Makefile.alpha Mosaic-2.0+wwfs/Makefile.alpha
- X*** Mosaic-2.0/Makefile.alpha Tue Nov 9 18:21:52 1993
- X--- Mosaic-2.0+wwfs/Makefile.alpha Tue Nov 16 04:36:53 1993
- X***************
- X*** 139,145 ****
- X--- 139,151 ----
- X #waislibdir = $(waisroot)/bin
- X #waislibs = $(waislibdir)/inv.a $(waislibdir)/wais.a $(waislibdir)/libftw.a -lm
- X
- X+ #### DIRECT WWFS SUPPORT
- X
- X+ wwfsroot = /home/is/youki-k/work/wwfs-108.0
- X+ wwfsflags = -I$(wwfsroot)/libww
- X+ wwfslibdir = $(wwfsroot)/libww
- X+ wwfslibs = $(wwfslibdir)/libww.a
- X+
- X #### Customization flags:
- X #### . If you want Mosaic to come up with monochrome colors by default,
- X #### use -DMONO_DEFAULT
- X***************
- X*** 177,195 ****
- X
- X libwww2::
- X @echo --- Building libwww2
- X! cd libwww2; make CC=$(CC) RANLIB=$(RANLIB) CFLAGS="$(CFLAGS) $(knrflag) $(waisflags)"
- X
- X src::
- X @echo --- Building src
- X! cd src; make CC=$(CC) RANLIB=$(RANLIB) CFLAGS="$(CFLAGS) $(customflags) $(xinc) $(dtmflags) $(hdfflags) -I.. -I../libXmx -I../libwww2" AUX_CFLAGS=$(knrflag) X_LIBS="$(xlibs)" SYS_LIBS="$(syslibs)" DTM_LIBS="$(dtmlibs)" HDF_LIBS="$(hdflibs)" WAIS_LIBS="$(waislibs)" LIBWWW_DIR=../libwww2
- X
- X src-purifyd::
- X @echo --- Building Purify'd src
- X! cd src; make PURIFY=$(PURIFY) CC=$(CC) RANLIB=$(RANLIB) CFLAGS="$(CFLAGS) $(customflags) $(xinc) $(dtmflags) $(hdfflags) -I.. -I../libXmx -I../libwww2" AUX_CFLAGS=$(knrflag) X_LIBS="$(xlibs)" SYS_LIBS="$(syslibs)" DTM_LIBS="$(dtmlibs)" HDF_LIBS="$(hdflibs)" WAIS_LIBS="$(waislibs)" LIBWWW_DIR=../libwww2
- X
- X src-quantifyd::
- X @echo --- Building Quantify'd src
- X! cd src; make PURIFY=$(QUANTIFY) CC=$(CC) RANLIB=$(RANLIB) CFLAGS="$(CFLAGS) $(customflags) $(xinc) $(dtmflags) $(hdfflags) -I.. -I../libXmx -I../libwww2" AUX_CFLAGS=$(knrflag) X_LIBS="$(xlibs)" SYS_LIBS="$(syslibs)" DTM_LIBS="$(dtmlibs)" HDF_LIBS="$(hdflibs)" WAIS_LIBS="$(waislibs)" LIBWWW_DIR=../libwww2
- X
- X libnet::
- X @echo --- Building libnet
- X--- 183,201 ----
- X
- X libwww2::
- X @echo --- Building libwww2
- X! cd libwww2; make CC=$(CC) RANLIB=$(RANLIB) CFLAGS="$(CFLAGS) $(knrflag) $(waisflags) $(wwfsflags)"
- X
- X src::
- X @echo --- Building src
- X! cd src; make CC=$(CC) RANLIB=$(RANLIB) CFLAGS="$(CFLAGS) $(customflags) $(xinc) $(dtmflags) $(hdfflags) -I.. -I../libXmx -I../libwww2" AUX_CFLAGS=$(knrflag) X_LIBS="$(xlibs)" SYS_LIBS="$(syslibs)" DTM_LIBS="$(dtmlibs)" HDF_LIBS="$(hdflibs)" WAIS_LIBS="$(waislibs)" WWFS_LIBS="$(wwfslibs)" LIBWWW_DIR=../libwww2
- X
- X src-purifyd::
- X @echo --- Building Purify'd src
- X! cd src; make PURIFY=$(PURIFY) CC=$(CC) RANLIB=$(RANLIB) CFLAGS="$(CFLAGS) $(customflags) $(xinc) $(dtmflags) $(hdfflags) -I.. -I../libXmx -I../libwww2" AUX_CFLAGS=$(knrflag) X_LIBS="$(xlibs)" SYS_LIBS="$(syslibs)" DTM_LIBS="$(dtmlibs)" HDF_LIBS="$(hdflibs)" WAIS_LIBS="$(waislibs)" WWFS_LIBS="$(wwfslibs)" LIBWWW_DIR=../libwww2
- X
- X src-quantifyd::
- X @echo --- Building Quantify'd src
- X! cd src; make PURIFY=$(QUANTIFY) CC=$(CC) RANLIB=$(RANLIB) CFLAGS="$(CFLAGS) $(customflags) $(xinc) $(dtmflags) $(hdfflags) -I.. -I../libXmx -I../libwww2" AUX_CFLAGS=$(knrflag) X_LIBS="$(xlibs)" SYS_LIBS="$(syslibs)" DTM_LIBS="$(dtmlibs)" HDF_LIBS="$(hdflibs)" WAIS_LIBS="$(waislibs)" WWFS_LIBS="$(wwfslibs)" LIBWWW_DIR=../libwww2
- X
- X libnet::
- X @echo --- Building libnet
- Xdiff -c -r -N Mosaic-2.0/Makefile.dec Mosaic-2.0+wwfs/Makefile.dec
- X*** Mosaic-2.0/Makefile.dec Tue Nov 9 18:38:54 1993
- X--- Mosaic-2.0+wwfs/Makefile.dec Sat Nov 20 23:59:21 1993
- X***************
- X*** 12,20 ****
- X #### On non-SGI's, this should be ranlib.
- X RANLIB = ranlib
- X
- X! CC = cc
- X #### On Sun's, this should be gcc (ANSI required).
- X! # CC = gcc
- X
- X
- X #### For a few files in the source, some compilers may need to be kicked
- X--- 12,20 ----
- X #### On non-SGI's, this should be ranlib.
- X RANLIB = ranlib
- X
- X! # CC = cc
- X #### On Sun's, this should be gcc (ANSI required).
- X! CC = gcc
- X
- X
- X #### For a few files in the source, some compilers may need to be kicked
- X***************
- X*** 38,50 ****
- X sysconfigflags =
- X
- X #### System libraries.
- X! syslibs = -lPW -lsun -lmalloc
- X #### For AIX 3.2
- X # syslibs = -lPW -lbsd
- X #### For most other Motif platforms:
- X # syslibs = -lPW
- X #### For Sun's and Ultrix and HP and BSD/386:
- X! syslibs =
- X #### For Sun's with no DNS:
- X # syslibs = -lresolv
- X #### For SCO ODT:
- X--- 38,50 ----
- X sysconfigflags =
- X
- X #### System libraries.
- X! # syslibs = -lPW -lsun -lmalloc
- X #### For AIX 3.2
- X # syslibs = -lPW -lbsd
- X #### For most other Motif platforms:
- X # syslibs = -lPW
- X #### For Sun's and Ultrix and HP and BSD/386:
- X! syslibs = -ljsy -lim
- X #### For Sun's with no DNS:
- X # syslibs = -lresolv
- X #### For SCO ODT:
- X***************
- X*** 72,77 ****
- X--- 72,79 ----
- X
- X #### X library locations.
- X xlibs = -lXm_s -lXmu -lXt_s -lX11_s
- X+ #### X library locations.
- X+ # xlibs = -lXm_s -lXmu -lXt_s -lX11_s
- X #### For Sun's (at least running stock X/Motif as installed on our machines):
- X # xlibs = /usr/lib/libXm.a /usr/lib/libXmu.a /usr/lib/libXt.a /usr/lib/libXext.a /usr/lib/libX11.a -lm
- X #### For HP-UX 8.00:
- X***************
- X*** 88,94 ****
- X # xlibs = -lXtXm_s -lXmu -lX11_s
- X #### For nearly everyone else:
- X xlibs = -lXm -lXmu -lXt -lX11
- X! xlibs = -L/usr/local/lib -lXm -lXmu -lXt -lX11
- X #### For BSD/386:
- X # xlibs = -L/usr/X11/lib -lXm -lXmu -lXt -lX11
- X #### For Motorola SVR4:
- X--- 90,96 ----
- X # xlibs = -lXtXm_s -lXmu -lX11_s
- X #### For nearly everyone else:
- X xlibs = -lXm -lXmu -lXt -lX11
- X! # xlibs = -L/usr/local/lib -lXm -lXmu -lXt -lX11
- X #### For BSD/386:
- X # xlibs = -L/usr/X11/lib -lXm -lXmu -lXt -lX11
- X #### For Motorola SVR4:
- X***************
- X*** 116,124 ****
- X dtmdirs = libdtm libnet
- X dtmlibs = ../libnet/libnet.a ../libdtm/libdtm.a
- X dtmflags = -DHAVE_DTM -I.. -I../libnet
- X! hdfdir = /hdf/install/dec
- X! hdflibs = $(hdfdir)/lib/libnetcdf.a $(hdfdir)/lib/libdf.a
- X! hdfflags = -DHAVE_HDF -I$(hdfdir)/include
- X
- X
- X #### DIRECT WAIS SUPPORT
- X--- 118,126 ----
- X dtmdirs = libdtm libnet
- X dtmlibs = ../libnet/libnet.a ../libdtm/libdtm.a
- X dtmflags = -DHAVE_DTM -I.. -I../libnet
- X! # hdfdir = /hdf/install/dec
- X! # hdflibs = $(hdfdir)/lib/libnetcdf.a $(hdfdir)/lib/libdf.a
- X! # hdfflags = -DHAVE_HDF -I$(hdfdir)/include
- X
- X
- X #### DIRECT WAIS SUPPORT
- X***************
- X*** 141,146 ****
- X--- 143,154 ----
- X #waislibdir = $(waisroot)/bin
- X #waislibs = $(waislibdir)/inv.a $(waislibdir)/wais.a $(waislibdir)/libftw.a -lm
- X
- X+ #### DIRECT WWFS SUPPORT
- X+
- X+ wwfsroot = /home/is/youki-k/work/wwfs-108.0
- X+ wwfsflags = -I$(wwfsroot)/libww
- X+ wwfslibdir = $(wwfsroot)/libww
- X+ wwfslibs = $(wwfslibdir)/libww.a
- X
- X #### Customization flags:
- X #### . If you want Mosaic to come up with monochrome colors by default,
- X***************
- X*** 179,197 ****
- X
- X libwww2::
- X @echo --- Building libwww2
- X! cd libwww2; make CC=$(CC) RANLIB=$(RANLIB) CFLAGS="$(CFLAGS) $(knrflag) $(waisflags)"
- X
- X src::
- X @echo --- Building src
- X! cd src; make CC=$(CC) RANLIB=$(RANLIB) CFLAGS="$(CFLAGS) $(customflags) $(xinc) $(dtmflags) $(hdfflags) -I.. -I../libXmx -I../libwww2" AUX_CFLAGS=$(knrflag) X_LIBS="$(xlibs)" SYS_LIBS="$(syslibs)" DTM_LIBS="$(dtmlibs)" HDF_LIBS="$(hdflibs)" WAIS_LIBS="$(waislibs)" LIBWWW_DIR=../libwww2
- X
- X src-purifyd::
- X @echo --- Building Purify'd src
- X! cd src; make PURIFY=$(PURIFY) CC=$(CC) RANLIB=$(RANLIB) CFLAGS="$(CFLAGS) $(customflags) $(xinc) $(dtmflags) $(hdfflags) -I.. -I../libXmx -I../libwww2" AUX_CFLAGS=$(knrflag) X_LIBS="$(xlibs)" SYS_LIBS="$(syslibs)" DTM_LIBS="$(dtmlibs)" HDF_LIBS="$(hdflibs)" WAIS_LIBS="$(waislibs)" LIBWWW_DIR=../libwww2
- X
- X src-quantifyd::
- X @echo --- Building Quantify'd src
- X! cd src; make PURIFY=$(QUANTIFY) CC=$(CC) RANLIB=$(RANLIB) CFLAGS="$(CFLAGS) $(customflags) $(xinc) $(dtmflags) $(hdfflags) -I.. -I../libXmx -I../libwww2" AUX_CFLAGS=$(knrflag) X_LIBS="$(xlibs)" SYS_LIBS="$(syslibs)" DTM_LIBS="$(dtmlibs)" HDF_LIBS="$(hdflibs)" WAIS_LIBS="$(waislibs)" LIBWWW_DIR=../libwww2
- X
- X libnet::
- X @echo --- Building libnet
- X--- 187,205 ----
- X
- X libwww2::
- X @echo --- Building libwww2
- X! cd libwww2; make CC=$(CC) RANLIB=$(RANLIB) CFLAGS="$(CFLAGS) $(knrflag) $(waisflags) $(wwfsflags)"
- X
- X src::
- X @echo --- Building src
- X! cd src; make CC=$(CC) RANLIB=$(RANLIB) CFLAGS="$(CFLAGS) $(customflags) $(xinc) $(dtmflags) $(hdfflags) -I.. -I../libXmx -I../libwww2" AUX_CFLAGS=$(knrflag) X_LIBS="$(xlibs)" SYS_LIBS="$(syslibs)" DTM_LIBS="$(dtmlibs)" HDF_LIBS="$(hdflibs)" WAIS_LIBS="$(waislibs)" WWFS_LIBS="$(wwfslibs)" LIBWWW_DIR=../libwww2
- X
- X src-purifyd::
- X @echo --- Building Purify'd src
- X! cd src; make PURIFY=$(PURIFY) CC=$(CC) RANLIB=$(RANLIB) CFLAGS="$(CFLAGS) $(customflags) $(xinc) $(dtmflags) $(hdfflags) -I.. -I../libXmx -I../libwww2" AUX_CFLAGS=$(knrflag) X_LIBS="$(xlibs)" SYS_LIBS="$(syslibs)" DTM_LIBS="$(dtmlibs)" HDF_LIBS="$(hdflibs)" WAIS_LIBS="$(waislibs)" WWFS_LIBS="$(wwfslibs)" LIBWWW_DIR=../libwww2
- X
- X src-quantifyd::
- X @echo --- Building Quantify'd src
- X! cd src; make PURIFY=$(QUANTIFY) CC=$(CC) RANLIB=$(RANLIB) CFLAGS="$(CFLAGS) $(customflags) $(xinc) $(dtmflags) $(hdfflags) -I.. -I../libXmx -I../libwww2" AUX_CFLAGS=$(knrflag) X_LIBS="$(xlibs)" SYS_LIBS="$(syslibs)" DTM_LIBS="$(dtmlibs)" HDF_LIBS="$(hdflibs)" WAIS_LIBS="$(waislibs)" WWFS_LIBS="$(wwfslibs)" LIBWWW_DIR=../libwww2
- X
- X libnet::
- X @echo --- Building libnet
- Xdiff -c -r -N Mosaic-2.0/libwww2/HTAccess.c Mosaic-2.0+wwfs/libwww2/HTAccess.c
- X*** Mosaic-2.0/libwww2/HTAccess.c Sun Oct 31 07:56:57 1993
- X--- Mosaic-2.0+wwfs/libwww2/HTAccess.c Tue Nov 16 04:31:03 1993
- X***************
- X*** 79,85 ****
- X */
- X PRIVATE void HTAccessInit NOARGS /* Call me once */
- X {
- X! extern HTProtocol HTTP, HTFile, HTTelnet, HTTn3270, HTRlogin;
- X extern HTProtocol HTFTP, HTNews, HTGopher;
- X #ifdef DIRECT_WAIS
- X extern HTProtocol HTWAIS;
- X--- 79,85 ----
- X */
- X PRIVATE void HTAccessInit NOARGS /* Call me once */
- X {
- X! extern HTProtocol HTTP, HTFile, HTWWFS, HTTelnet, HTTn3270, HTRlogin;
- X extern HTProtocol HTFTP, HTNews, HTGopher;
- X #ifdef DIRECT_WAIS
- X extern HTProtocol HTWAIS;
- X***************
- X*** 93,98 ****
- X--- 93,99 ----
- X
- X HTRegisterProtocol(&HTTP);
- X HTRegisterProtocol(&HTFile);
- X+ HTRegisterProtocol(&HTWWFS);
- X HTRegisterProtocol(&HTTelnet);
- X HTRegisterProtocol(&HTTn3270);
- X HTRegisterProtocol(&HTRlogin);
- Xdiff -c -r -N Mosaic-2.0/libwww2/HTWWFS.c Mosaic-2.0+wwfs/libwww2/HTWWFS.c
- X*** Mosaic-2.0/libwww2/HTWWFS.c
- X--- Mosaic-2.0+wwfs/libwww2/HTWWFS.c Sat Nov 20 23:05:36 1993
- X***************
- X*** 0 ****
- X--- 1,452 ----
- X+ /* WWFS Access HTWWFS.c
- X+ ** ===========
- X+ **
- X+ ** This is unix-specific code in general.
- X+ ** These are routines for file access used by browsers.
- X+ **
- X+ ** History:
- X+ ** Feb 91 Written Tim Berners-Lee CERN/CN
- X+ ** Apr 91 vms-vms access included using DECnet syntax
- X+ ** 26 Jun 92 (JFG) When running over DECnet, suppressed FTP.
- X+ ** Fixed access bug for relative names on VMS.
- X+ ** Nov 93 Derived from HTFile.c; Youki Kadobayashi WIDE
- X+ ** deleted VMS code for simplicity.
- X+ **
- X+ */
- X+
- X+ #include "HTFile.h" /* Implemented here */
- X+
- X+ #define MULTI_SUFFIX ".multi" /* Extension for scanning formats */
- X+
- X+ #include <stdio.h>
- X+ #include <sys/param.h>
- X+ #include "HText.h"
- X+ #include "HTUtils.h"
- X+
- X+ #include "HTParse.h"
- X+ #include "tcp.h"
- X+ #include "HTTCP.h"
- X+ #include "HTAnchor.h"
- X+ #include "HTAtom.h"
- X+ #include "HTWriter.h"
- X+ #include "HTFWriter.h"
- X+ #include "HTInit.h"
- X+ #include "HTSort.h"
- X+ #include "libww.h"
- X+
- X+ /* #define TRACE 1 */
- X+
- X+ #ifdef USE_DIRENT /* Set this for Sys V systems */
- X+ #define STRUCT_DIRENT struct dirent
- X+ #else
- X+ #define STRUCT_DIRENT struct direct
- X+ #endif
- X+
- X+ #include "HTML.h" /* For directory object building */
- X+
- X+ /* Controlling globals
- X+ **
- X+ */
- X+
- X+ extern int HTDirAccess;
- X+
- X+ /* Load a document on WWFS
- X+ ** -----------------------
- X+ **
- X+ ** On entry,
- X+ ** addr must point to the fully qualified hypertext reference.
- X+ ** This is the physsical address of the file
- X+ **
- X+ ** On exit,
- X+ ** returns <0 Error has occured.
- X+ ** HTLOADED OK
- X+ **
- X+ */
- X+ PUBLIC int HTLoadWWFS ARGS4 (
- X+ CONST char *, addr,
- X+ HTParentAnchor *, anchor,
- X+ HTFormat, format_out,
- X+ HTStream *, sink
- X+ )
- X+ {
- X+ char * filename, * localname;
- X+ HTFormat format;
- X+ int fd = -1; /* Unix file descriptor number = INVALID */
- X+ char * newname=0; /* Simplified name of file */
- X+ HTAtom * encoding; /* @@ not used yet */
- X+ int compressed;
- X+ extern char *HTgeticonname(HTFormat, char *);
- X+
- X+ /* Reduce the filename to a basic form (hopefully unique!)
- X+ */
- X+ StrAllocCopy(newname, addr);
- X+ filename=HTParse(newname, "", PARSE_PATH|PARSE_PUNCTUATION);
- X+ free(newname);
- X+
- X+ format = HTFileFormat(filename, &encoding, WWW_PLAINTEXT, &compressed);
- X+
- X+ HTProgress ("Retrieving WWFS file.");
- X+ if (ww_get(filename) < 0) {
- X+ if (TRACE) fprintf(stderr, "HTWWFS: could not retrieve document");
- X+ }
- X+ localname = ww_localpath(filename);
- X+ if (! localname) {
- X+ if (TRACE) fprintf(stderr, "HTWWFS: client not configured properly");
- X+ } else {
- X+ struct stat dir_info;
- X+ localname = strdup(localname);
- X+
- X+ #ifdef GOT_READ_DIR
- X+
- X+ /* Multiformat handling
- X+ **
- X+ ** If needed, scan directory to find a good file.
- X+ ** Bug: we don't stat the file to find the length
- X+ */
- X+ if ( (strlen(localname) > strlen(MULTI_SUFFIX))
- X+ && (0==strcmp(localname + strlen(localname) - strlen(MULTI_SUFFIX),
- X+ MULTI_SUFFIX))) {
- X+ DIR *dp;
- X+
- X+ STRUCT_DIRENT * dirbuf;
- X+ float best = NO_VALUE_FOUND; /* So far best is bad */
- X+ HTFormat best_rep = NULL; /* Set when rep found */
- X+ STRUCT_DIRENT best_dirbuf; /* Best dir entry so far */
- X+
- X+ char * base = strrchr(localname, '/');
- X+ int baselen;
- X+
- X+ if (!base || base == localname) goto forget_multi;
- X+ *base++ = 0; /* Just got directory name */
- X+ baselen = strlen(base)- strlen(MULTI_SUFFIX);
- X+ base[baselen] = 0; /* Chop off suffix */
- X+
- X+ dp = opendir(localname);
- X+ if (!dp) {
- X+ forget_multi:
- X+ free(localname);
- X+ return HTLoadError(sink, 500,
- X+ "Multiformat: directory scan failed.");
- X+ }
- X+
- X+ while (dirbuf = readdir(dp)) {
- X+ /* while there are directory entries to be read */
- X+ if (dirbuf->d_ino == 0) continue;
- X+ /* if the entry is not being used, skip it */
- X+
- X+ if (!strncmp(dirbuf->d_name, base, baselen)) {
- X+ HTFormat rep = HTFileFormat(dirbuf->d_name, &encoding,
- X+ WWW_PLAINTEXT, &compressed);
- X+ float value = HTStackValue(rep, format_out,
- X+ HTFileValue(dirbuf->d_name),
- X+ 0.0 /* @@@@@@ */);
- X+ if (value != NO_VALUE_FOUND) {
- X+ if (TRACE) fprintf(stderr,
- X+ "HTWWFS: value of presenting %s is %f\n",
- X+ HTAtom_name(rep), value);
- X+ if (value > best) {
- X+ best_rep = rep;
- X+ best = value;
- X+ best_dirbuf = *dirbuf;
- X+ }
- X+ } /* if best so far */
- X+ } /* if match */
- X+
- X+ } /* end while directory entries left to read */
- X+ closedir(dp);
- X+
- X+ if (best_rep) {
- X+ format = best_rep;
- X+ base[-1] = '/'; /* Restore directory name */
- X+ base[0] = 0;
- X+ StrAllocCat(localname, best_dirbuf.d_name);
- X+ goto open_file;
- X+
- X+ } else { /* If not found suitable file */
- X+ free(localname);
- X+ return HTLoadError(sink, 403, /* List formats? */
- X+ "Could not find suitable representation for transmission.");
- X+ }
- X+ /*NOTREACHED*/
- X+ } /* if multi suffix */
- X+ /*
- X+ ** Check to see if the 'localname' is in fact a directory. If it is
- X+ ** create a new hypertext object containing a list of files and
- X+ ** subdirectories contained in the directory. All of these are links
- X+ ** to the directories or files listed.
- X+ ** NB This assumes the existance of a type 'STRUCT_DIRENT', which will
- X+ ** hold the directory entry, and a type 'DIR' which is used to point to
- X+ ** the current directory being read.
- X+ */
- X+
- X+
- X+ if (stat(localname,&dir_info) == -1) { /* get file information */
- X+ /* if can't read file information */
- X+ if (TRACE) fprintf(stderr, "HTWWFS: can't stat %s\n", localname);
- X+
- X+ } else { /* Stat was OK */
- X+
- X+
- X+ if (((dir_info.st_mode) & S_IFMT) == S_IFDIR) {
- X+ /* if localname is a directory */
- X+
- X+ /*
- X+ **
- X+ ** Read the localdirectory and present a nicely formatted list to the user
- X+ ** Re-wrote most of the read directory code here, excepting for the checking
- X+ ** access.
- X+ **
- X+ ** Author: Charles Henrich (henrich@crh.cl.msu.edu) 10-09-93
- X+ **
- X+ ** This is still pretty messy, need to go through and clean it up at some point
- X+ **
- X+ */
- X+
- X+ /* Define some parameters that everyone should already have */
- X+
- X+ #ifndef MAXPATHLEN
- X+ #define MAXPATHLEN 1024
- X+ #endif
- X+
- X+ #ifndef BUFSIZ
- X+ #define BUFSIZ 4096
- X+ #endif
- X+
- X+ char filepath[MAXPATHLEN];
- X+ char buffer[4096];
- X+
- X+ char *ptr;
- X+ char *dataptr;
- X+
- X+ HText * HT;
- X+ HTFormat format;
- X+ HTAtom *pencoding;
- X+
- X+ struct stat statbuf;
- X+ STRUCT_DIRENT * dp;
- X+ DIR *dfp;
- X+
- X+ int cmpr;
- X+ int count;
- X+
- X+ if (TRACE)
- X+ fprintf(stderr,"%s is a directory\n",localname);
- X+ HTProgress ("Listing directory.");
- X+
- X+ /* Check directory access.
- X+ ** Selective access means only those directories containing a
- X+ ** marker file can be browsed
- X+ */
- X+ if (HTDirAccess == HT_DIR_FORBID) {
- X+ free(localname);
- X+ return HTLoadError(sink, 403,
- X+ "Directory browsing is not allowed.");
- X+ }
- X+
- X+
- X+ if (HTDirAccess == HT_DIR_SELECTIVE) {
- X+ char * enable_file_name =
- X+ malloc(strlen(localname)+ 1 +
- X+ strlen(HT_DIR_ENABLE_FILE) + 1);
- X+ strcpy(enable_file_name, localname);
- X+ strcat(enable_file_name, "/");
- X+ strcat(enable_file_name, HT_DIR_ENABLE_FILE);
- X+ if (stat(enable_file_name, &statbuf) != 0) {
- X+ free(localname);
- X+ return HTLoadError(sink, 403,
- X+ "Selective access is not enabled for this directory.");
- X+ }
- X+ }
- X+
- X+
- X+ dfp = opendir(localname);
- X+ if (!dfp) {
- X+ free(localname);
- X+ return HTLoadError(sink, 403, "This directory is not readable.");
- X+ }
- X+
- X+ /* Suck the directory up into a list to be sorted */
- X+
- X+ HTSortInit();
- X+
- X+ for(dp=readdir(dfp);dp != NULL;dp=readdir(dfp))
- X+ {
- X+ ptr = malloc(strlen(dp->d_name)+1);
- X+ if(ptr == NULL)
- X+ {
- X+ return HTLoadError(sink, 403, "Ran out of memory in directory read!");
- X+ }
- X+ strcpy(ptr,dp->d_name);
- X+
- X+ HTSortAdd(ptr);
- X+ }
- X+
- X+ closedir(dfp);
- X+
- X+ /* Sort the dir list */
- X+
- X+ HTSortSort();
- X+
- X+ /* Start a new HTML page */
- X+
- X+ HT = HText_new();
- X+ HText_beginAppend(HT);
- X+ HText_appendText(HT, "<H1>WWFS Directory ");
- X+ HText_appendText(HT, filename);
- X+ HText_appendText(HT, "</H1>\n");
- X+ HText_appendText(HT,"<DL>\n");
- X+
- X+ /* Sort the list and then spit it out in a nice form */
- X+
- X+ /* How this for a disgusting loop :) */
- X+
- X+ for(count=0,dataptr=HTSortFetch(count);
- X+ dataptr != NULL;
- X+ free(dataptr), count++, dataptr=HTSortFetch(count))
- X+ {
- X+
- X+ /* We dont want to see . */
- X+
- X+ if(strcmp(dataptr,".") == 0) continue;
- X+
- X+ /* If its .. *and* the current directory is / dont show anything, otherwise
- X+ /* print out a nice Parent Directory entry.
- X+ /* */
- X+
- X+ if(strcmp(dataptr,"..") == 0)
- X+ {
- X+ if(strcmp(localname,"/") != 0)
- X+ {
- X+ strcpy(buffer,filename);
- X+
- X+ ptr = strrchr(buffer, '/');
- X+
- X+ if(ptr != NULL) *ptr='\0';
- X+
- X+ if(buffer[0] == '\0') strcpy(buffer,"/");
- X+
- X+ HText_appendText(HT,"<DD><A HREF=\"");
- X+ HText_appendText(HT, buffer);
- X+
- X+ HText_appendText(HT,"\"><IMG SRC=\"");
- X+ HText_appendText(HT, HTgeticonname(NULL, "directory"));
- X+
- X+ HText_appendText(HT,"\"> Parent Directory</a>");
- X+ continue;
- X+ }
- X+ else
- X+ {
- X+ continue;
- X+ }
- X+ }
- X+
- X+ /* Get the filesize information from a stat, if we cant stat it, we probably */
- X+ /* cant read it either, so ignore it. */
- X+
- X+ sprintf(filepath,"%s/%s",localname, dataptr);
- X+
- X+ if(stat(filepath, &statbuf) == -1) continue;
- X+
- X+ HText_appendText(HT,"<DD><A HREF=\"");
- X+ HText_appendText (HT, filename);
- X+
- X+ if(localname[strlen(localname)-1] != '/')
- X+ {
- X+ HText_appendText (HT, "/");
- X+ }
- X+
- X+ HText_appendText (HT, dataptr);
- X+ HText_appendText (HT, "\">");
- X+
- X+ /* If its a directory, dump out a dir icon, dont bother with anything else */
- X+ /* if it is a file try and figure out what type of file it is, and grab */
- X+ /* the appropriate icon. If we cant figure it out, call it text. If its */
- X+ /* a compressed file, call it binary no matter what */
- X+
- X+ if(statbuf.st_mode & S_IFDIR)
- X+ {
- X+ sprintf(buffer,"%s",dataptr);
- X+ HText_appendText(HT, "<IMG SRC=\"");
- X+ HText_appendText(HT, HTgeticonname(NULL, "directory"));
- X+ HText_appendText(HT, "\"> ");
- X+ }
- X+ else
- X+ {
- X+ sprintf(buffer,"%s (%d bytes)",
- X+ dataptr, statbuf.st_size);
- X+
- X+ format = HTFileFormat(dataptr, &pencoding,
- X+ WWW_SOURCE, &cmpr);
- X+
- X+ /* If its executable then call it application, else it might as well be text */
- X+
- X+ if(cmpr == 0)
- X+ {
- X+ HText_appendText(HT, "<IMG SRC=\"");
- X+ if((statbuf.st_mode & S_IXUSR) ||
- X+ (statbuf.st_mode & S_IXGRP) ||
- X+ (statbuf.st_mode & S_IXOTH))
- X+ {
- X+ HText_appendText(HT,
- X+ HTgeticonname(format, "application"));
- X+ }
- X+ else
- X+ {
- X+ HText_appendText(HT,
- X+ HTgeticonname(format, "text"));
- X+ }
- X+ HText_appendText(HT, "\"> ");
- X+ }
- X+ else
- X+ {
- X+ HText_appendText(HT, "<IMG SRC=\"");
- X+ HText_appendText(HT, HTgeticonname(NULL, "application"));
- X+ HText_appendText(HT, "\"> ");
- X+ }
- X+ }
- X+
- X+ /* Spit out the anchor */
- X+
- X+ HText_appendText (HT, buffer);
- X+ HText_appendText (HT, "</A>\n");
- X+ }
- X+
- X+ /* End of list, clean up and we are done */
- X+
- X+ HText_appendText (HT, "</DL>\n");
- X+ HText_endAppend (HT);
- X+ free(localname);
- X+ return HT_LOADED;
- X+ } /* end if localname is directory */
- X+
- X+ } /* end if file stat worked */
- X+
- X+ /* End of directory reading section
- X+ */
- X+ #endif
- X+ open_file:
- X+ {
- X+ FILE * fp = fopen(localname,"r");
- X+ if(TRACE) fprintf (stderr, "HTWWFS: Opening `%s' gives %p\n",
- X+ localname, (void*)fp);
- X+ if (fp) { /* Good! */
- X+ if (HTEditable(localname)) {
- X+ HTAtom * put = HTAtom_for("PUT");
- X+ HTList * methods = HTAnchor_methods(anchor);
- X+ if (HTList_indexOf(methods, put) == (-1)) {
- X+ HTList_addObject(methods, put);
- X+ }
- X+ }
- X+ free(localname);
- X+ HTParseFile(format, format_out, anchor, fp, sink);
- X+ fclose(fp);
- X+ return HT_LOADED;
- X+ } /* If succesfull open */
- X+ } /* scope of fp */
- X+ } /* local unix file system */
- X+ free(filename);
- X+ }
- X+
- X+ /* Protocol descriptors
- X+ */
- X+ PUBLIC HTProtocol HTWWFS = { "wwfs", HTLoadWWFS, 0 };
- Xdiff -c -r -N Mosaic-2.0/libwww2/Makefile Mosaic-2.0+wwfs/libwww2/Makefile
- X*** Mosaic-2.0/libwww2/Makefile Mon Nov 1 13:04:46 1993
- X--- Mosaic-2.0+wwfs/libwww2/Makefile Tue Nov 16 04:32:17 1993
- X***************
- X*** 30,35 ****
- X--- 30,36 ----
- X HTTelnet.c \
- X HTWSRC.c \
- X HTWriter.c \
- X+ HTWWFS.c \
- X SGML.c \
- X HTWAIS.c \
- X HTIcon.c \
- Xdiff -c -r -N Mosaic-2.0/src/Makefile Mosaic-2.0+wwfs/src/Makefile
- X*** Mosaic-2.0/src/Makefile Sun Nov 7 16:32:05 1993
- X--- Mosaic-2.0+wwfs/src/Makefile Tue Nov 16 04:43:11 1993
- X***************
- X*** 5,11 ****
- X LIBXMX_INC = ../libXmx
- X
- X PROGRAM_LIBS = $(LIBWWW_DIR)/libwww.a $(LIBHTMLW_DIR)/libhtmlw.a $(LIBXMX_DIR)/libXmx.a
- X! LIBS = $(PROGRAM_LIBS) $(X_LIBS) $(DTM_LIBS) $(HDF_LIBS) $(WAIS_LIBS) $(MATH_LIB) $(SYS_LIBS)
- X
- X CFILES = main.c gui.c gui-dialogs.c gui-menubar.c gui-documents.c mo-www.c\
- X mo-dtm.c hotlist.c whine.c history.c\
- X--- 5,11 ----
- X LIBXMX_INC = ../libXmx
- X
- X PROGRAM_LIBS = $(LIBWWW_DIR)/libwww.a $(LIBHTMLW_DIR)/libhtmlw.a $(LIBXMX_DIR)/libXmx.a
- X! LIBS = $(PROGRAM_LIBS) $(X_LIBS) $(DTM_LIBS) $(HDF_LIBS) $(WAIS_LIBS) $(WWFS_LIBS) $(MATH_LIB) $(SYS_LIBS)
- X
- X CFILES = main.c gui.c gui-dialogs.c gui-menubar.c gui-documents.c mo-www.c\
- X mo-dtm.c hotlist.c whine.c history.c\
- Xdiff -c -r -N Mosaic-2.0/src/history.c Mosaic-2.0+wwfs/src/history.c
- X*** Mosaic-2.0/src/history.c Fri Nov 5 18:14:31 1993
- X--- Mosaic-2.0+wwfs/src/history.c Tue Nov 16 04:38:53 1993
- X***************
- X*** 349,354 ****
- X--- 349,365 ----
- X goto done;
- X }
- X }
- X+
- X+ if (!strncmp (url, "wwfs:", 5))
- X+ {
- X+ /* It's a WWFS file. */
- X+ foo1 = url + 5;
- X+
- X+ title = (char *)malloc ((strlen (foo1) + 32) * sizeof (char));
- X+ sprintf (title, "WWFS file %s\0", foo1);
- X+
- X+ goto done;
- X+ }
- X
- X /* Punt... */
- X title = (char *) malloc ((strlen (url) + 24) * sizeof (char));
- Xdiff -c -r -N Mosaic-2.0/src/mo-www.c Mosaic-2.0+wwfs/src/mo-www.c
- X*** Mosaic-2.0/src/mo-www.c Sun Nov 7 13:41:29 1993
- X--- Mosaic-2.0+wwfs/src/mo-www.c Tue Nov 16 04:39:56 1993
- X***************
- X*** 774,780 ****
- X /* ------------------------------ dumb stuff ------------------------------ */
- X
- X /* Grumble grumble... */
- X! #if defined(ultrix) || defined(VMS) || defined(NeXT) || defined(M4310) || defined(vax)
- X char *strdup (char *str)
- X {
- X char *dup;
- X--- 774,783 ----
- X /* ------------------------------ dumb stuff ------------------------------ */
- X
- X /* Grumble grumble... */
- X! /*
- X! * #if defined(ultrix) || defined(VMS) || defined(NeXT) || defined(M4310) || defined(vax)
- X! */
- X! #if defined(VMS) || defined(NeXT) || defined(M4310) || defined(vax)
- X char *strdup (char *str)
- X {
- X char *dup;
- END_OF_FILE
- if test 31052 -ne `wc -c <'mosaic/Mosaic-2.0+wwfs.diff'`; then
- echo shar: \"'mosaic/Mosaic-2.0+wwfs.diff'\" unpacked with wrong size!
- fi
- # end of 'mosaic/Mosaic-2.0+wwfs.diff'
- fi
- echo shar: End of archive 11 \(of 22\).
- cp /dev/null ark11isdone
- MISSING=""
- for I in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 ; do
- if test ! -f ark${I}isdone ; then
- MISSING="${MISSING} ${I}"
- fi
- done
- if test "${MISSING}" = "" ; then
- echo You have unpacked all 22 archives.
- rm -f ark[1-9]isdone ark[1-9][0-9]isdone
- else
- echo You still must unpack the following archives:
- echo " " ${MISSING}
- fi
- exit 0
- exit 0 # Just in case...
-