Protocol

From
Oleg Lobachev (2:2432/260.1)
To
Stas Degteff
Date
2006-03-29T20:44:28Z
Area
RU.UNIX.FTN
Say yes, Stas. At least say hello.

29 Mar 06 20:41, you wrote to Alex Kocharin:

 SD> Это тоже избыточно. Давай начнём с концепции.

===== cut begin: Fake Clipboard =====
= ru.unix.ftn (2:2432/260.1) ==================================================
 Msg  : 7180 of 7201                        Rcv
 From : Andrew Dolgov                       2:5030/1022.2   27 Mar 06  09:32:52
 To   : Oleg Lobachev
 Subj : Re: FTNHTTP
===============================================================================
Hi, Oleg!

>>>>> "OL" == Oleg Lobachev writes:

 AD>>> что только не придумают люди, только бы не пользоваться давно
 AD>>> работающими отлаженными технологиями (WebDAV). клиентов каких-то
 AD>>> пишут, етидрить.
 AK>> что только не придумают люди, только бы не пользоваться давно
 AK>> работающими
 AK>> отлаженными технологиями (счеты). компьютеров каких-то делают,
 AK>> етидрить.
 OL> И не говори. Вот какое-то фидо придумали, с бинарным pkt, когда много
 OL> лет до того, как его начали придумавать уже были ньюсы и даже uucp.

и главное, как мы видим, изобретательский дух не выдохся. до сих пор
находятся желающие прилепить сбоку кривой костыль, лишь бы не потратить 5
минут на то, чтобы узнать что уже есть готовое и работающее.

--
Kevin: You know what's cool about that Darwin guy? When Curious
  George gets in trouble, he always lets him slide.
- --- Gnus/5.11 (Gnus v5.11) Emacs/22.0.50
 + Origin: My hovercraft is full of eels (2:5030/1022.2)

===== cut end =====

Ы?

 SD> Можно передавать управляющую информацию в виде XML (парсеры есть
 SD> готовые и в php, и в perl), а данные передавать в бинарном виде в
 SD> ответ на запрос файла.

Ужос какой...

 SD> В целях безопасности клиент должен передавать пароль только после
 SD> получения ответа от сервера. При этом реализовать CRAM - раз плюнуть.

/ужос поскипан/

 SD> -далее идут шифрованные данные, например по алгоритму из info-zip и
 SD> указывается Content-type: application/octet-stream

А почему не старым добрым gzip?

 SD> Надо также предусмотреть команды удаления файлов из дальней очереди,
 SD> модификаторы докачки и т.п.

Ох, как все запущенно...

ЗЫЖ Если бы мне пришлось осуществлять нечто подобное, я бы взял proftpd плюс
ftpd.passwd, выдал бы каждому линку по каталогу, аутентификация в простейшем
виде - plain text, при желании - sftp или прикручивание md5. Клиент сливает все
файлы в своем каталоге. Докачка тривиальна, удаление файлов тоже. В качестве
клиента можно говорить echo blablabla | ftp (а еще лучше взять expect) - значит
оно работает везде.

ЗЗЫЖ (Перечитав требования) Точно ftp наружу не дают? Сделай такую-же фигню,
что выше, только с апачем. Хм. Или webdav. (Можно извратиться еще сильнее и
делать оно svn over http. Зубы, автогеном, через задницу.) Так что наверное
таки webdav, да. Благо что реализаций - дофига.

===== cut begin: |apt-cache search webdav | use /dev/hands =====
blosxom - light, feature-packed weblog app with plugin extensibility
cadaver - command-line client for WebDAV server
eldav - an interface to the WebDAV servers for Emacs.
libapache-mod-dav - A DAV module for Apache
libapache-mod-encoding - Apache module for non-ascii filename interoperability
libapache2-mod-encoding - Apache2 module for non-ascii filename
interoperability
libhttp-dav-perl - WebDAV client library for Perl
libneon23 - An HTTP and WebDAV client library [old version]
libneon24 - An HTTP and WebDAV client library
litmus - WebDAV server protocol compliance test suite
nd - Tiny little command line WebDAV interface
python-4suite - An open-source platform for XML and RDF processing
python-davlib - WebDAV client library for Python
libapache2-svn - apache modules for Subversion (aka. svn)
===== cut end =====

Кроме того -  собрать из конструктора мотоцикл гораздо проще и _надежнее_, чем
изобретать велосипед самому.

Greetingz Oleg

--- nv: Karin - 16.
 * Origin: Thou hast seen nothing yet. -- Miguel de Cervantes (2:2432/260.1)
SEEN-BY: 46/50 50/12 400/567 814 450/1024 452/25 154 461/1313 2432/260 4614/20
SEEN-BY: 4615/21 4635/1024 4642/4 5000/5000 5001/100 5002/63 5003/58 5010/2 53
SEEN-BY: 5011/13 5012/30 46 5015/28 221 5019/31 5020/545 715 760 1641 1982
SEEN-BY: 5020/2238 2871 4441 5021/29 44 5025/3 5027/12 5028/61 5029/60
SEEN-BY: 5030/115 830 901 1080 1400 5035/38 5036/10 5041/4 5042/12 21 5049/19
SEEN-BY: 5049/164 5053/16 5054/1 8 9 37 45 50 63 67 89 5059/9 5062/10 5063/3
SEEN-BY: 5064/7 5070/156 5071/22 5072/333 5077/70 5078/20 5080/111 147 239
SEEN-BY: 5080/1003 5085/13 87 5093/4 33 55 5095/20 5096/18 5097/31 64 303
SEEN-BY: 6000/0 1 12 6001/10 6028/1 6055/2 6083/12
PATH: 2432/260 5080/1003 5020/545 5054/1 37