Annotation of 43BSDReno/contrib/isode-beta/ftam2/ftamd.8c, revision 1.1

1.1     ! root        1: .TH FTAMD 8C "01 Mar 1987"
        !             2: .\" $Header: /f/osi/ftam2/RCS/ftamd.8c,v 7.1 90/02/20 17:12:11 mrose Exp $
        !             3: .\"
        !             4: .\"
        !             5: .\" $Log:      ftamd.8c,v $
        !             6: .\" Revision 7.1  90/02/20  17:12:11  mrose
        !             7: .\" update
        !             8: .\" 
        !             9: .\" Revision 7.0  89/11/23  21:54:35  mrose
        !            10: .\" Release 6.0
        !            11: .\" 
        !            12: .SH NAME
        !            13: ftamd \- FTAM responder
        !            14: .SH SYNOPSIS
        !            15: .in +.5i
        !            16: .ti -.5i
        !            17: .B \*(SDiso.ftam
        !            18: \%[\-c]
        !            19: \%[\-d]
        !            20: \fImagic\0arguments\fR
        !            21: .in -.5i
        !            22: (under \fI\*(SDtsapd\fR\0)
        !            23: .SH DESCRIPTION
        !            24: The \fIftamd\fR server implements the responder side of 
        !            25: the File Transfer, Access, and Management (FTAM) service.
        !            26: .PP
        !            27: Currently, implementations for Berkeley and AT&T UNIX exist.
        !            28: Supported are:
        !            29: the no-recovery FTAM-QoS;
        !            30: any of
        !            31: the transfer, management, and transfer and management service classes;
        !            32: the kernel, read, write, limited file management, enhanced file management, and
        !            33: grouping functional units;
        !            34: and, the kernel and storage attribute groups.
        !            35: Only three document types are supported as of this writing:
        !            36: unstructured text files (FTAM\-1),
        !            37: unstructured binary files (FTAM\-3),
        !            38: and filedirectory files (NBS\-9).
        !            39: .SH "DEBUG OPERATION"
        !            40: If \fIiso.ftamd\fR is started interactively,
        !            41: or if the `\-d' switch is given,
        !            42: then debug mode is entered.
        !            43: In this case,
        !            44: all logging activity is displayed on the user's terminal.
        !            45: In addition,
        !            46: the logging information is more verbose.
        !            47: .SH AUTHENTICATION
        !            48: An FTAM initiator must be listed in the \fIpasswd\fR file and have a
        !            49: non\-empty password.
        !            50: Further, as with the \fIftpd\fR daemon,
        !            51: the username must not appear in the \fI\*(EDftamusers\fR file
        !            52: or the \fI/etc/ftpusers\fR file.
        !            53: .PP
        !            54: If the username \*(lqANON\*(rq or \*(lqftp\*(rq is given,
        !            55: then \fIftamd\fR treats this as a guest access,
        !            56: similar to the \*(lqanonymous\*(rq facility supported by the \fIftpd\fR daemon.
        !            57: An entry in the \fIpasswd\fR file for user \*(lqftp\*(rq must be present with
        !            58: a non\-zero UID.
        !            59: For guest access,
        !            60: a \fIchroot\fR to the guest home directory
        !            61: is executed to restrict access to the system.
        !            62: The guest home directory should be structured thusly:
        !            63: .PP
        !            64: Note that the `\-c' flag (given in the \fIisoservices\fR\0(5) file)
        !            65: forces a \fIchroot\fR to the initiator's home directory.
        !            66: This is used to restrict network access.
        !            67: .TP
        !            68: .B ~ftp/
        !            69: Owned by \*(lqftp\*(rq with mode 555.
        !            70: .TP
        !            71: .B ~ftp/etc/
        !            72: Owned by the super\-user with mode 555.
        !            73: The \fIpasswd\fR and \fIgroup\fR files should be present,
        !            74: each with mode 444.
        !            75: .TP
        !            76: .B ~ftp/pub/
        !            77: Owned by \*(lqftp\*(rq with mode 777.
        !            78: This is the directory where guests can place files from remote systems.
        !            79: .TP
        !            80: .B ~ftp/portal/
        !            81: Owned by the super\-user with mode 555.
        !            82: The super\-user can put world\-readable files here
        !            83: (with mode 444) without fear of these files being removed or altered by
        !            84: guests.
        !            85: .PP
        !            86: Note that since \fIftamd\fR doesn't use \fIls\fR in order to produce
        !            87: directory listings,
        !            88: the directory \fIbin/\fR under the guest home directory need not be present,
        !            89: as it must be to support the anonymous guest with \fIftpd\fR.
        !            90: .SH "VIRTUAL FILESTORE"
        !            91: Here are the file attribute mappings:
        !            92: .TP
        !            93: .B filename
        !            94: A single component, relative to the user's $HOME.
        !            95: Changing this attribute is equivalent to a \fIrename\fR.
        !            96: .TP
        !            97: .B contents\-type
        !            98: Based on st_mode:
        !            99: \fBNBS\-9\fR for directories,
        !           100: \fBNBS\-1\fR for regular files appearing to be textual,
        !           101: \fBFTAM\-3\fR for all other regular files.
        !           102: Files that are neither regular nor directories are inaccessible via this
        !           103: implementation of the VFS (i.e., special files).
        !           104: .TP
        !           105: .B account
        !           106: The st_gid according to /etc/group.
        !           107: Changing this attribute is equivalent to a \fIchgrp\fR.
        !           108: .TP
        !           109: .B date\-and\-time\-of\-creation
        !           110: The st_mtime.
        !           111: .TP
        !           112: .B date\-and\-time\-of\-last\-modification
        !           113: The st_mtime.
        !           114: .TP
        !           115: .B date\-and\-time\-of\-last\-read\-access
        !           116: The st_atime.
        !           117: .TP
        !           118: .B date\-and\-time\-of\-last\-attribute\-modification
        !           119: The st_ctime.
        !           120: .TP
        !           121: .B identity\-of\-creator
        !           122: The st_uid according to /etc/passwd.
        !           123: .TP
        !           124: .B identity\-of\-last\-modifier
        !           125: The st_uid according to /etc/passwd
        !           126: (if the value of the st_mode field guarantees uniqueness).
        !           127: .TP
        !           128: .B identity\-of\-last\-reader
        !           129: The st_uid according to /etc/passwd
        !           130: (if the value of the st_mode field guarantees uniqueness).
        !           131: .TP
        !           132: .B identity\-of\-last\-attribute\-modifier
        !           133: The st_uid according to /etc/passwd
        !           134: (if the value of the st_mode field guarantees uniqueness).
        !           135: .TP
        !           136: .B file\-availability
        !           137: Immediate.
        !           138: .TP
        !           139: .B permitted\-actions
        !           140: Depends on st_mode as interpreted by \fIaccess\fR\0(2):
        !           141: R_OK for permission to read;
        !           142: W_OK for permission to write;
        !           143: permission is always granted to read attributes;
        !           144: permission is granted to change attributes if the initiator has uid equal to
        !           145: st_uid;
        !           146: permission to delete is based on writability of parent directory.
        !           147: .TP
        !           148: .B filesize
        !           149: The st_size.
        !           150: .TP
        !           151: .B future\-filesize
        !           152: Not available.
        !           153: .TP
        !           154: .B access\-control
        !           155: Not available.
        !           156: .TP
        !           157: .B encryption\-name
        !           158: Not available.
        !           159: .TP
        !           160: .B legal\-qualifications
        !           161: Not available.
        !           162: .TP
        !           163: .B private\-use
        !           164: Not available.
        !           165: .PP
        !           166: The activity attribute mappings are straight\-forward.
        !           167: The read action corresponds to reading UNIX files.
        !           168: The insert, replace, extend, and erase actions correspond to writing
        !           169: UNIX files.
        !           170: Concurrency control is supported for reading and writing,
        !           171: but not for reading or changing attributes, or for deleting files.
        !           172: .SH FILES
        !           173: .nf
        !           174: .ta \w'\*(EDisodocuments    'u
        !           175: \*(EDisodocuments      ISODE FTAM document types database
        !           176: \*(EDisoentities       ISODE entities database
        !           177: \*(EDftamusers list of users prohibited by ftam
        !           178: \*(LDftam.log  logfile
        !           179: /usr/adm/wtmp  login records
        !           180: .re
        !           181: .fi
        !           182: .SH "SEE ALSO"
        !           183: ftam(1c), libftam(3n), isodocuments(5)
        !           184: .br
        !           185: \fIThe ISO Development Environment: User's Manual\fR,
        !           186: .br
        !           187: ISO 8571:
        !           188: \fIInformation Processing Systems \-\-
        !           189: File Transfer, Access, and Management\fR
        !           190: .SH DIAGNOSTICS
        !           191: All obvious.
        !           192: .SH AUTHOR
        !           193: Marshall T. Rose
        !           194: .PP
        !           195: This program is based somewhat on the \fIftpd\fR(8c) program supplied with
        !           196: Berkeley UNIX.
        !           197: .SH BUGS
        !           198: The anonymous account is inherently dangerous and should be avoided when
        !           199: possible.
        !           200: It is also inherently useful.
        !           201: .PP
        !           202: The Berkeley UNIX version of this program runs with the effective UID of the
        !           203: FTAM initiator,
        !           204: but also with the real UID of the super\-user.
        !           205: This is necessary to change the account attribute on files
        !           206: (using \fIchown\fR\0).
        !           207: The possible security holes have been extensively considered,
        !           208: but may be incomplete.
        !           209: .PP
        !           210: The AT&T UNIX version, which lacks kernel support for this technique, acts
        !           211: differently.
        !           212: Immediately upon association establishment,
        !           213: it changes both the real and effective UID to that of the FTAM initiator.
        !           214: To change the account attribute on files,
        !           215: it invokes the \fIchgrp\fR program.
        !           216: Similarly, to create or delete directories,
        !           217: it invokes either the \fImkdir\fR program or the \fIrmdir\fR program.
        !           218: .PP
        !           219: The AT&T UNIX version of this program has been tested both under
        !           220: the System V Compatibility Package in SUN UNIX release 3.2
        !           221: and a true SVR3 implementation.
        !           222: However,
        !           223: the \fIfcntl\fR syscall,
        !           224: which is used to implement concurrency control,
        !           225: currently seems to be a no\-op.
        !           226: The Berkeley UNIX version of this program uses \fIflock\fR,
        !           227: which seems to work just fine.

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.