⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 rfc1037.txt

📁 <VC++网络游戏建摸与实现>源代码
💻 TXT
📖 第 1 页 / 共 5 页
字号:
   The empty token list in the token list stream appears as a LIST-BEGIN   followed immediately by a LIST-END.   OPTIONAL KEYWORD/VALUE PAIRS   Four NFILE commands have "optional keyword/value pairs".  These   commands are: COMPLETE, LOGIN, OPEN, and READ.  Optional   keyword/value pairs can be either included in the command or omitted   entirely.  There is no need to substitute the empty token list for   ommitted optional keyword tokens, unlike optional arguments.  The   order of the option keyword/value pairs is not significant.   If included, optional keyword/value pairs are a sequence of   alternating keywords and values.  The values associated with the   keywords can be keywords, lists, strings, Booleans, integers, dates,   date-or-never's, and time intervals.  The text of each command   description states what type of value is appropriate for each   optional keyword.   Optional keyword/value pairs appear in the text as the keyword only,   in uppercase letters.  For example, here is the format of the LOGIN   command:   Command Format:         (LOGIN tid user password FILE-SYSTEM USER-VERSION)   FILE-SYSTEM and USER-VERSION are two optional keywords associated   with the LOGIN command.  The user side can supply USER-VERSION, and   omit FILE-SYSTEM as shown in this example:         (LOGIN x105 tjones let-me-in USER-VERSION 2)   As seen above, the optional keyword/value pair USER-VERSION, if   supplied in a command, consists of the keyword USER-VERSION followed   by the value to be used for that keyword (in this example, 2).Greenberg & Keene                                              [Page 12]RFC 1037             NFILE - A File Access Protocol        December 19877.3  Data Channel Handles and Direct File Identifiers   Several NFILE commands require an argument that specifies an opening.   This kind of argument is called a handle in the command description.   It is always a string type argument.  A handle can be either a data   channel handle or a direct file identifier, depending on the mode of   the opening:   Data Stream   The handle must identify a data channel that is bound to an opening.   Direct Access   In general, the handle must be a direct file identifier.  A direct   file identifier specifies a direct access opening.  It is the same as   the value supplied in the DIRECT-FILE-ID keyword/value pair in the   OPEN command.  It is used for all operations that identify an opening   rather than a data channel.   Two NFILE commands applicable to direct access openings are   exceptions to the general rule.  The handle supplied in ABORT and   CONTINUE cannot be a direct file identifier, but must be a data   channel handle instead.7.4  Syntax of File and Directory Pathname Arguments   Some arguments and return values in the NFILE command descriptions   represent file pathnames.  These are strings in the pathname syntax   native to the server host.  These pathnames contain no host   identifiers of any kind.  These pathnames must be fully defaulted, in   the sense that they have a directory and file name (and file type, if   the server operating system supports file types).  If appropriate, a   device is referenced in the pathname.  If the server file system   supports version numbers, there is always an explicit version number,   even if that number or other specification is that system's   representation of "newest" or "oldest".Greenberg & Keene                                              [Page 13]RFC 1037             NFILE - A File Access Protocol        December 1987   Here are some examples of file pathnames, for different server hosts:   Server Host     Example of File Pathname   ------------------------------------------------------------      UNIX            /usr/max/life.c      TOPS-20         ps:<max>life.bin.17      VMS             MACD:[MAX]LIFE.FOR;3      Symbolics LMFS  >max>life.lisp.newest   ------------------------------------------------------------   The CREATE-DIRECTORY and HOME-DIRECTORY commands take a directory as   an argument.  In NFILE commands, a directory is represented by a   string that names the directory.  In most cases this string is in the   syntax native to the server host.  However in some cases the native   format is modified somewhat to clarify that the string names a   directory, and not a file.  For example, a directory on UNIX is   represented by "/usr/max/", not "/usr/max".   Here are some examples of directory pathnames for different server   hosts:   Server Host     Example of Directory Pathname   ------------------------------------------------------------      UNIX            /usr/max/      TOPS-20         <max>      VMS             MACD:[MAX]      Symbolics LMFS  >max>hacks>   ------------------------------------------------------------7.5  Format of NFILE File Property/Value Pairs   Several NFILE commands request information regarding the properties   of files or directories.  These commands include:  DIRECTORY,   MULTIPLE-FILE-PLISTS, PROPERTIES, and CHANGE-PROPERTIES.  This   section describes how file property information is conveyed over the   token list stream.Greenberg & Keene                                              [Page 14]RFC 1037             NFILE - A File Access Protocol        December 1987   File property information is usually sent in property/value pairs,   where the property identifies the property, and the following value   gives the value of that property for the specified file.   Each property is denoted either by a keyword or an integer.  You can   mix both ways of specifying properties (keyword or integer) within a   single description.  An integer is interpreted as an index into the   Property Index Table, an array of property keywords.  The server can   optionally send a Property Index Table to the user during the   execution of the LOGIN command, although it is not required.  This   greatly reduces the length of transmissions.   In command arguments, file properties cannot be specified with   integers; keywords must be used to specify file properties in command   arguments.  Integers can be used to denote file properties only in   command responses.   We now list the keywords associated with file properties.  This list   is not intended to be restrictive.  If a programmer implementing   NFILE needs a new keyword, a new keyword (not on this list) can be   invented.  The type of value of any new keywords is by default   string.  The keywords are sorted here by conceptual data type:    Data type       Keywords denoting file properties   ----------------------------------------------------------------    Integers        BLOCK-SIZE, BYTE-SIZE, GENERATION-RETENTION-COUNT,                    LENGTH-IN-BLOCKS, LENGTH-IN-BYTES,                    DEFAULT-GENERATION-RETENTION-COUNT    Dates           CREATION-DATE, MODIFICATION-DATE    Date-or-never's REFERENCE-DATE, INCREMENTAL-DUMP-DATE,                    COMPLETE-DUMP-DATE, DATE-LAST-EXPUNGED,                    EXPIRATION-DATE    Time intervals  AUTO-EXPUNGE-INTERVAL    Keyword Lists   SETTABLE-PROPERTIES, LINK-TRANSPARENCIES,                    DEFAULT-LINK-TRANSPARENCIES    Boolean values  DELETED, DONT-DELETE, DONT-DUMP, DONT-REAP,                    SUPERSEDE-PROTECT, NOT-BACKED-UP, OFFLINE,                    TEMPORARY, CHARACTERS, DIRECTORYGreenberg & Keene                                              [Page 15]RFC 1037             NFILE - A File Access Protocol        December 1987    Strings         ACCOUNT, AUTHOR, LINK-TO, PHYSICAL-VOLUME,                    PROTECTION, VOLUME-NAME, PACK-NUMBER, READER,                    DISK-SPACE-DESCRIPTION, and any keywords not                    on this list   Note that these keyword names are intended to imply the semantics of   the properties.  For a discussion of the semantics of CREATION-DATE:   See the section "NFILE OPEN Response Return Values", section 8.20.2.   The "Reference Guide to Streams, Files, and I/O" in the Symbolics   documentation set details the semantics that Symbolics associates   with these properties.8.  NFILE COMMANDS   It is important to understand the conventions used in each of the   following command descriptions.  See the section "Conventions Used in   This Document", section 7.8.1  ABORT Command   Command:  (ABORT tid input-handle)   Response: (ABORT tid)   ABORT cleanly interrupts and prematurely terminates a single direct   access mode data transfer initiated with READ.  The required input-   handle string argument identifies a data channel on which an input   transfer is currently taking place; this must be a direct access   transfer.  input-handle must identify a data channel; it cannot be a   direct file identifier.   Upon receiving the ABORT command, the server checks to see if a   transfer is still active on that channel.  If so, the server   terminates the transfer by telling the data connection logical   process to stop transferring bytes of data.  The user side needs to   issue this command only when there are outstanding unread bytes.   This excludes the case of the data channel having been disestablished   or reallocated by the user side.   Whether or not a transfer is active on that channel, the user side   puts the data channel into the unsafe state.  Before the data channel   can be used again, it must be resynchronized.8.2  CHANGE-PROPERTIES Command   Command:  (CHANGE-PROPERTIES tid handle pathname property-pairs)   Response: (CHANGE-PROPERTIES tid)Greenberg & Keene                                              [Page 16]RFC 1037             NFILE - A File Access Protocol        December 1987   CHANGE-PROPERTIES changes one or more properties of a file.  Either a   handle or a pathname must be given, but not both.  Whichever one is   given must be supplied as a string.  handle identifies a data channel   that is bound to an open file; it can be a direct file identifier.   pathname identifies a file on the server machine.   property-pairs is a required token list of keyword/value pairs, where   the name of the property to be changed is the keyword, and the   desired new property value is the value.   The properties that can be changed are host-dependent, as are any   restrictions on the values of those properties.  The properties that   can be changed are the same as those returned as settable-properties,   in the command response for the PROPERTIES command.   The server tries to modify all the properties listed in property-   pairs to the desired new values.  There is currently no definition   about what should be done if the server can successfully change some   properties but not others.   For further information on file property keywords and associated   values:  See the section "Format of NFILE File Property/Value Pairs",   section 7.5.8.3  CLOSE Command   Command:  (CLOSE tid handle abort-p)   Response: (CLOSE tid truename binary-p other-properties)   CLOSE terminates a data transfer, and frees a data channel.  The   handle must be a data channel handle for a data stream opening, or a   direct file identifier for a direct access opening.  If a data   channel is given, a transfer must be active on that handle.  If   abort-p is supplied as Boolean truth, the file is close-aborted, as   described below.   "Closing the file" has different implications specific to each   operating system.  It generally implies invalidation of the pointer   or logical identifier obtained from the operating system when the   file was "opened", and freeing of operating system and/or job   resources associated with active file access.  For output files, it   involves ensuring that every last bit sent by the user has been

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -