boardd: article{stat,part,head,tail} keys.

"<bid>.articlestat.<filename>"
  => "<cachekey>,<filesize>"

"<bid>.article<method>.<cachekey>.<offset>.<maxlen>.<filename>"
  => "<metaline>\n<content>"

method = "part" | "head" | "tail"
metaline = "<cachekey>,<filesize>,<offset>,<length>"

Cache key is a key that can be used to check if the file is edit by user.
Currently, "<st_dev>-<st_ino>" is used for approximation.

Each method operates content in file described by <offset> and <length>.
The function of methods is described as below:

part - output the desired part of file.
head - select a good portion from the beginning of the part.
       (eg. end with a new-line; not inside a DBCS char)
tail - select a good portion from the end of the part.

Note that <offset> and <length> correspond to the original file,
not to be confused with conversions. (eg. UTF-8)



git-svn-id: http://opensvn.csie.org/pttbbs/trunk@6077 63ad8ddf-47c3-0310-b6dd-a9e9d9715204
boardd: use explicit type conversion.


git-svn-id: http://opensvn.csie.org/pttbbs/trunk@6078 63ad8ddf-47c3-0310-b6dd-a9e9d9715204