Difference between revisions of "JAGGRAB Protocol"
(→Files) |
|||
Line 8: | Line 8: | ||
JAGGRAB /path/to/file | JAGGRAB /path/to/file | ||
+ | |||
+ | === New engine === | ||
+ | |||
+ | In (perhaps all) new engine clients, the client prefixes the JAGGRAB request line with a single byte (value 17). | ||
== Response format == | == Response format == |
Revision as of 08:14, 13 August 2009
The JAGGRAB protocol is used to 'grab' cache files from the file server and download them.
It is a text protocol, similar to HTTP, and the client will fall back to HTTP if JAGGRAB is unavailable. This generally happens in unsigned mode.
Request format
A request is simply the text JAGGRAB, a space, the path to the file and a newline character. Therefore, it is very similar to a HTTP/0.9 GET request.
JAGGRAB /path/to/file
New engine
In (perhaps all) new engine clients, the client prefixes the JAGGRAB request line with a single byte (value 17).
Response format
The response is simply the raw file data. Once the response is sent, the connection is closed.
Files
There are a number of files which map to files in the cache.
- /crc - the CRC table
- /title - cache 0, file 1
- /config - cache 0, file 2
- /interface - cache 0, file 3
- /media - cache 0, file 4
- /versionlist - cache 0, file 5
- /textures - cache 0, file 6
- /wordenc - cache 0, file 7
- /sounds - cache 0, file 8
NOTE: the client will usually postfix these with random numbers, so when checking for the file only the start of the string should be examined: not the whole one.