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