X-Git-Url: https://git.saurik.com/apt.git/blobdiff_plain/42c90c422da346dbc90b9edc110855df181310ee..bd3849e894a4e7623426bb3995cf2e814b08a561:/doc/method.sgml diff --git a/doc/method.sgml b/doc/method.sgml index ae4b713f1..d71ef02ea 100644 --- a/doc/method.sgml +++ b/doc/method.sgml @@ -1,10 +1,10 @@ - + APT Method Interface Jason Gunthorpe jgg@debian.org -$Id: method.sgml,v 1.6 1998/12/14 04:00:34 jgg Exp $ +$Id: method.sgml,v 1.10 2003/02/12 15:05:46 doogie Exp $ This document describes the interface that APT uses to the archive @@ -21,7 +21,7 @@ option) any later version.

For more details, on Debian GNU/Linux systems, see the file -/usr/doc/copyright/GPL for the full license. +/usr/share/common-licenses/GPL for the full license. @@ -110,7 +110,7 @@ string acquire The act of bring a URI into the local pathname space. This may simply -be verifiying the existence of the URI or actually downloading it from +be verifying the existence of the URI or actually downloading it from a remote site. @@ -125,11 +125,11 @@ a remote site.

All methods operate as a sub process of a main controlling parent. 3 FD's are opened for use by the method allowing two way communication and -emergency error reporting. The FD's corrispond to the well known unix FD's, +emergency error reporting. The FD's correspond to the well known unix FD's, stdin, stdout and stderr.

-Throught operation of the method communication is done via http +Through operation of the method communication is done via http style plain text. Specifically RFC-822 (like the Package file) fields are used to describe items and a numeric-like header is used to indicate what is happening. Each of these distinct communication messages should be @@ -147,7 +147,7 @@ URI's to determine how many files are available locally.

The first line of each message is called the message header. The first 3 digits (called the Status Code) have the usual meaning found in the -http protocol. 1xx is informational, 2xx is successfull and 4xx is failure. +http protocol. 1xx is informational, 2xx is successful and 4xx is failure. The 6xx series is used to specify things sent to the method. After the status code is an informational string provided for visual debugging. @@ -171,7 +171,7 @@ status code is an informational string provided for visual debugging. Only the 6xx series of status codes is sent TO the method. Furthermore the method may not emit status codes in the 6xx range. The Codes 402 and 403 require that the method continue reading all other 6xx codes -until the proper 602/603 code is recieved. This means the method must be +until the proper 602/603 code is received. This means the method must be capable of handling an unlimited number of 600 messages.

@@ -179,12 +179,12 @@ The flow of messages starts with the method sending out a 100 Capabilities and APT sending out a 601 Configuration. After that APT begins sending 600 URI Acquire and the method sends out 200 URI Start, 201 URI Done or -400 URI Failure. No syncronization is performed, it is expected +400 URI Failure. No synchronization is performed, it is expected that APT will send 600 URI Acquire messages at -any- time and that the method should queue the messages. This allows methods like http to pipeline requests to the remote server. It should be noted however -that APT will buffer messages so it is not neccessary for the method -to be constantly ready to recieve them. +that APT will buffer messages so it is not necessary for the method +to be constantly ready to receive them. @@ -217,8 +217,11 @@ the ones it wants. Single-InstanceRequires that only one instance of the method be run This is a yes/no value. PipelineThe method is capable of pipelining. -LocalThe method only returns Filename: feilds. +LocalThe method only returns Filename: fields. Send-ConfigSend configuration to the method. +Needs-CleanupThe process is kept around while the files it returned +are being used. This is primarily intended for CDROM and File URIs that need +to unmount filesystems. VersionVersion string for the method @@ -227,9 +230,10 @@ This is a list of which headers each status code can use 100 Capabilities Displays the capabilities of the method. Methods should set the -pipeline bit if their underlying protocol supports pipeling. The +pipeline bit if their underlying protocol supports pipelining. The only known method that does support pipelining is http. -Fields: Version, Single-Instance, Pre-Scan, Pipeline, Send-Config +Fields: Version, Single-Instance, Pre-Scan, Pipeline, Send-Config, +Needs-Cleanup 101 Log A log message may be printed to the screen if debugging is enabled. This @@ -238,7 +242,7 @@ Fields: Message 102 Status Message gives a progress indication for the method. It can be used to show -pre-transfer status for internet type methods. +pre-transfer status for Internet type methods. Fields: Message 200 URI Start @@ -252,19 +256,19 @@ to specify a 201 URI Done without a URI Start which would mean no data was transfered but the file is now available. A Filename field is specified when the URI is directly available in the local pathname space. APT will either directly use that file or copy it into -another location. It is possible to return Alt-* feilds to indicate that +another location. It is possible to return Alt-* fields to indicate that another possibility for the URI has been found in the local pathname space. This is done if a decompressed version of a .gz file is found. Fields: URI, Size, Last-Modified, Filename, MD5-Hash 400 URI Failure Indicates a fatal URI failure. The URI is not retrievable from this source. -As with 201 URI Done 200 URI Start is not required to preceed +As with 201 URI Done 200 URI Start is not required to precede this message Fields: URI, Message 401 General Failure -Indicates that some unspecific failure has occured and the method is unable +Indicates that some unspecific failure has occurred and the method is unable to continue. The method should terminate after sending this message. It is intended to check for invalid configuration options or other severe conditions.