draft-ietf-secsh-filexfer-02.2.ps
来自「OTP是开放电信平台的简称」· PS 代码 · 共 2,134 行 · 第 1/5 页
PS
2,134 行
5 338 M( incremented, and their use MUST be negotiated using the version) s5 327 M( number. However, the SSH_FXP_EXTENDED and SSH_FXP_EXTENDED_REPLY) s5 316 M( packets can be used to implement vendor-specific extensions. See) s5 305 M( Section ``Vendor-Specific-Extensions'' for more details.) s5 129 M(Ylonen & Lehtinen Expires April 1, 2002 [Page 6]) s_RSPStoPSsaved restore%%Page: (6,7) 4userdict/PStoPSsaved save putPStoPSmatrix setmatrix595.000000 0.271378 translate90 rotate0.706651 dup scaleuserdict/PStoPSmatrix matrix currentmatrix putuserdict/PStoPSclip{0 0 moveto 595.000000 0 rlineto 0 842.000000 rlineto -595.000000 0 rlineto closepath}put initclip/showpage{}def/copypage{}def/erasepage{}defPStoPSxform concat%%BeginPageSetup_S75 0 translate/pagenum 7 def/fname () def/fdir () def/ftail () def/user_header_p false def%%EndPageSetup5 723 M(Internet-Draft SSH File Transfer Protocol October 2001) s5 690 M(4. Protocol Initialization) s5 668 M( When the file transfer protocol starts, it first sends a SSH_FXP_INIT) s5 657 M( \(including its version number\) packet to the server. The server) s5 646 M( responds with a SSH_FXP_VERSION packet, supplying the lowest of its) s5 635 M( own and the client's version number. Both parties should from then) s5 624 M( on adhere to particular version of the protocol.) s5 602 M( The SSH_FXP_INIT packet \(from client to server\) has the following) s5 591 M( data:) s5 569 M( uint32 version) s5 558 M( <extension data>) s5 536 M( The SSH_FXP_VERSION packet \(from server to client\) has the following) s5 525 M( data:) s5 503 M( uint32 version) s5 492 M( <extension data>) s5 470 M( The version number of the protocol specified in this document is 3.) s5 459 M( The version number should be incremented for each incompatible) s5 448 M( revision of this protocol.) s5 426 M( The extension data in the above packets may be empty, or may be a) s5 415 M( sequence of) s5 393 M( string extension_name) s5 382 M( string extension_data) s5 360 M( pairs \(both strings MUST always be present if one is, but the) s5 349 M( `extension_data' string may be of zero length\). If present, these) s5 338 M( strings indicate extensions to the baseline protocol. The) s5 327 M( `extension_name' field\(s\) identify the name of the extension. The) s5 316 M( name should be of the form "name@domain", where the domain is the DNS) s5 305 M( domain name of the organization defining the extension. Additional) s5 294 M( names that are not of this format may be defined later by the IETF.) s5 283 M( Implementations MUST silently ignore any extensions whose name they) s5 272 M( do not recognize.) s5 129 M(Ylonen & Lehtinen Expires April 1, 2002 [Page 7]) s_RSPStoPSsaved restoreuserdict/PStoPSsaved save putPStoPSmatrix setmatrix595.000000 421.271378 translate90 rotate0.706651 dup scaleuserdict/PStoPSmatrix matrix currentmatrix putuserdict/PStoPSclip{0 0 moveto 595.000000 0 rlineto 0 842.000000 rlineto -595.000000 0 rlineto closepath}put initclipPStoPSxform concat%%BeginPageSetup_S75 0 translate/pagenum 8 def/fname () def/fdir () def/ftail () def/user_header_p false def%%EndPageSetup5 723 M(Internet-Draft SSH File Transfer Protocol October 2001) s5 690 M(5. File Attributes) s5 668 M( A new compound data type is defined for encoding file attributes. It) s5 657 M( is basically just a combination of elementary types, but is defined) s5 646 M( once because of the non-trivial description of the fields and to) s5 635 M( ensure maintainability.) s5 613 M( The same encoding is used both when returning file attributes from) s5 602 M( the server and when sending file attributes to the server. When) s5 591 M( sending it to the server, the flags field specifies which attributes) s5 580 M( are included, and the server will use default values for the) s5 569 M( remaining attributes \(or will not modify the values of remaining) s5 558 M( attributes\). When receiving attributes from the server, the flags) s5 547 M( specify which attributes are included in the returned data. The) s5 536 M( server normally returns all attributes it knows about.) s5 514 M( uint32 flags) s5 503 M( uint64 size present only if flag SSH_FILEXFER_ATTR_SIZE) s5 492 M( uint32 uid present only if flag SSH_FILEXFER_ATTR_UIDGID) s5 481 M( uint32 gid present only if flag SSH_FILEXFER_ATTR_UIDGID) s5 470 M( uint32 permissions present only if flag SSH_FILEXFER_ATTR_PERMISSIONS) s5 459 M( uint32 atime present only if flag SSH_FILEXFER_ACMODTIME) s5 448 M( uint32 mtime present only if flag SSH_FILEXFER_ACMODTIME) s5 437 M( uint32 extended_count present only if flag SSH_FILEXFER_ATTR_EXTENDED) s5 426 M( string extended_type) s5 415 M( string extended_data) s5 404 M( ... more extended data \(extended_type - extended_data pairs\),) s5 393 M( so that number of pairs equals extended_count) s5 371 M( The `flags' specify which of the fields are present. Those fields) s5 360 M( for which the corresponding flag is not set are not present \(not) s5 349 M( included in the packet\). New flags can only be added by incrementing) s5 338 M( the protocol version number \(or by using the extension mechanism) s5 327 M( described below\).) s5 305 M( The `size' field specifies the size of the file in bytes.) s5 283 M( The `uid' and `gid' fields contain numeric Unix-like user and group) s5 272 M( identifiers, respectively.) s5 250 M( The `permissions' field contains a bit mask of file permissions as) s5 239 M( defined by posix [1].) s5 217 M( The `atime' and `mtime' contain the access and modification times of) s5 206 M( the files, respectively. They are represented as seconds from Jan 1,) s5 195 M( 1970 in UTC.) s5 173 M( The SSH_FILEXFER_ATTR_EXTENDED flag provides a general extension) s5 129 M(Ylonen & Lehtinen Expires April 1, 2002 [Page 8]) s_RSPStoPSsaved restore%%Page: (8,9) 5userdict/PStoPSsaved save putPStoPSmatrix setmatrix595.000000 0.271378 translate90 rotate0.706651 dup scaleuserdict/PStoPSmatrix matrix currentmatrix putuserdict/PStoPSclip{0 0 moveto 595.000000 0 rlineto 0 842.000000 rlineto -595.000000 0 rlineto closepath}put initclip/showpage{}def/copypage{}def/erasepage{}defPStoPSxform concat%%BeginPageSetup_S75 0 translate/pagenum 9 def/fname () def/fdir () def/ftail () def/user_header_p false def%%EndPageSetup5 723 M(Internet-Draft SSH File Transfer Protocol October 2001) s5 690 M( mechanism for vendor-specific extensions. If the flag is specified,) s5 679 M( then the `extended_count' field is present. It specifies the number) s5 668 M( of extended_type-extended_data pairs that follow. Each of these) s5 657 M( pairs specifies an extended attribute. For each of the attributes,) s5 646 M( the extended_type field should be a string of the format) s5 635 M( "name@domain", where "domain" is a valid, registered domain name and) s5 624 M( "name" identifies the method. The IETF may later standardize certain) s5 613 M( names that deviate from this format \(e.g., that do not contain the) s5 602 M( "@" sign\). The interpretation of `extended_data' depends on the) s5 591 M( type. Implementations SHOULD ignore extended data fields that they) s5 580 M( do not understand.) s5 558 M( Additional fields can be added to the attributes by either defining) s5 547 M( additional bits to the flags field to indicate their presence, or by) s5 536 M( defining extended attributes for them. The extended attributes) s5 525 M( mechanism is recommended for most purposes; additional flags bits) s5 514 M( should only be defined by an IETF standards action that also) s5 503 M( increments the protocol version number. The use of such new fields) s5 492 M( MUST be negotiated by the version number in the protocol exchange.) s5 481 M( It is a protocol error if a packet with unsupported protocol bits is) s5 470 M( received.) s5 448 M( The flags bits are defined to have the following values:) s5 426 M( #define SSH_FILEXFER_ATTR_SIZE 0x00000001) s5 415 M( #define SSH_FILEXFER_ATTR_UIDGID 0x00000002) s5 404 M( #define SSH_FILEXFER_ATTR_PERMISSIONS 0x00000004) s5 393 M( #define SSH_FILEXFER_ATTR_ACMODTIME 0x00000008) s5 382 M( #define SSH_FILEXFER_ATTR_EXTENDED 0x80000000) s5 129 M(Ylonen & Lehtinen Expires April 1, 2002 [Page 9]) s_RSPStoPSsaved restoreuserdict/PStoPSsaved save putPStoPSmatrix setmatrix595.000000 421.271378 translate90 rotate0.706651 dup scaleuserdict/PStoPSmatrix matrix currentmatrix putuserdict/PStoPSclip{0 0 moveto 595.000000 0 rlineto 0 842.000000 rlineto -595.000000 0 rlineto closepath}put initclipPStoPSxform concat%%BeginPageSetup_S75 0 translate/pagenum 10 def/fname () def/fdir () def/ftail () def/user_header_p false def%%EndPageSetup5 723 M(Internet-Draft SSH File Transfer Protocol October 2001) s5 690 M(6. Requests From the Client to the Server) s5 668 M( Requests from the client to the server represent the various file) s5 657 M( system operations. Each request begins with an `id' field, which is) s5 646 M( a 32-bit identifier identifying the request \(selected by the client\).) s5 635 M( The same identifier will be returned in the response to the request.) s5 624 M( One possible implementation of it is a monotonically increasing) s5 613 M( request sequence number \(modulo 2^32\).) s5 591 M( Many operations in the protocol operate on open files. The) s5 580 M( SSH_FXP_OPEN request can return a file handle \(which is an opaque) s5 569 M( variable-length string\) which may be used to access the file later) s5 558 M( \(e.g. in a read operation\). The client MUST NOT send requests the) s5 547 M( server with bogus or closed handles. However, the server MUST) s5 536 M( perform adequate checks on the handle in order to avoid security) s5 525 M( risks due to fabricated handles.) s5 503 M( This design allows either stateful and stateless server) s5 492 M( implementation, as well as an implementation which caches state) s5 481 M( between requests but may also flush it. The contents of the file) s5 470 M( handle string are entirely up to the server and its design. The) s5 459 M( client should not modify or attempt to interpret the file handle) s5 448 M( strings.) s5 426 M( The file handle strings MUST NOT be longer than 256 bytes.) s5 404 M(6.1 Request Synchronization and Reordering) s5 382 M( The protocol and implementations MUST process requests relating to) s5 371 M( the same file in the order in which they are received. In other) s5 360 M( words, if an application submits multiple requests to the server, the) s5 349 M( results in the responses will be the same as if it had sent the) s5 338 M( requests one at a time and waited for the response in each case. For) s5 327 M( example, the server may process non-overlapping read/write requests) s5 316 M( to the same file in parallel, but overlapping reads and writes cannot) s5 305 M( be reordered or parallelized. However, there are no ordering) s5 294 M( restrictions on the server for processing requests from two different) s5 283 M( file transfer connections. The server may interleave and parallelize) s5 272 M( them at will.) s5 250 M( There are no restrictions on the order in which responses to) s5 239 M( outstanding requests are delivered to the client, except that the) s5 228 M( server must ensure fairness in the sense that processing of no) s5 217 M( request will be indefinitely delayed even if the client is sending) s5 206 M( other requests so that there are multiple outstanding requests all) s5 195 M( the time.) s5 129 M(Ylonen & Lehtinen Expires April 1, 2002 [Page 10]) s_RSPStoPSsaved restore%%Page: (10,11) 6userdict/PStoPSsaved save putPStoPSmatrix setmatrix595.000000 0.271378 translate90 rotate0.706651 dup scaleuserdict/PStoPSmatrix matrix currentmatrix putuserdict/PStoPSclip{0 0 moveto 595.000000 0 rlineto 0 842.000000 rlineto -595.000000 0 rlineto closepath}put initclip/showpage{}def/copypage{}def/erasepage{}defPStoPSxform concat%%BeginPageSetup_S75 0 translate/pagenum 11 def/fname () def/fdir () def/ftail () def/user_header_p false def%%EndPageSetup5 723 M(Internet-Draft SSH File Transfer Protocol October 2001) s5 690 M(6.2 File Names) s5 668 M( This protocol represents file names as strings. File names are) s5 657 M( assumed to use the slash \('/'\) character as a directory separator.) s5 635 M( File names starting with a slash are "absolute", and are relative to) s5 624 M( the root of the file system. Names starting with any other character) s5 613 M( are relative to the user's default directory \(home directory\). Note) s5 602 M( that identifying the user is assumed to take place outside of this) s5 591 M
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?