- BEST_PEOPLE (2:5077/15.22) -------------------------- BEST_PEOPLE (RU.UNIX) -
From : Igor Nikolaev 2:5030/266 18 Mar 01 05:23:48
Subj : Re: AVP - новая версия
-------------------------------------------------------------------------------
* Forwarded from area 'RU.UNIX'
Slava Medvedev <[email protected]> wrote:
> IN> У drweb нормально описан протокол взаимодействия с демоном,
> IN> программный продукт работает под обычным пользователем.
> И у нас тоже
Так... Для эксперимента я выкачал вялотекущую версию
http://www.kaspersky.ru/go/avp_unix/linux/AVPWSELinux.tgz
и стал смотреть.
Елинственное место, в котором я нашёл хоть какое-то
описание протокола с демоном - это avpdaemon.8
В этом описании мне объясняют, что:
: To call the existing AVPBSDDaemon process from
: the client program you should:
: 1. Create a socket.
: 2. Link the socket to the AVPBSDDaemon process.
: 3. Write the command string to the socket.
Это замечательно. Остаётся прочитать главы на тему:
'создаём сокеты' и 'пишем командные строки' из книжки
'юникс для идиотов'. Однако смотрим дальше.
Дальше написано нечто загадочное:
: The general format of the string is:
: <flags>date_and_time:command param
Что такое <flags>? У него могут быть три возможных
значения: 0, 1, 3. Это коды байтов или символы?
Какого чёрта я должен лезть в исходники примера
чтобы это выяснить?
Отвлёкся, виноват. Дальше демон хочет от меня дату
в каком-то неописанном формате вида '27 Mar 13:40:11'
: <flags>date_and_time:0xfeparameter1[|parameter2[|parameter3[...]]]
: 0xfepath1[;path2[;path3[...]]]
Зачем ему дата? Он что, с ума сошёл, сам спросить не может?
Hу раз нужна - то можно по крайней мере формат указать?
В unices дата завязана на критерии локализации и
по умолчанию включает как год, так и время...
Что за странный объект вида ':0xfe'? Это собственно что?
И наконец я вижу, что демон хочет *имя* файла.
Простите, какое такое имя файла? Какое ему нафиг
дело до имён моих файлов? Я хочу отдать ему сам файл!
В результате я так и не понял, как отдать демону stdout.
Hаверное оно где-то документировано 'и у вас тоже'.
Можно меня явным образом ткнуть в документацию?
Можно документацию выложить на сайт?
Как именно мне отдать при помощи средств ipc демону
информацию для проверки? pipe создать? А он её съест? :-)
Между прочим именно разглядывание примера исходника
AvpDaemonClient.cpp сподвигло меня встрять в дискуссию.
Такой код даже студни редко пишут. Господа программисты!
Ошибки в диапазоне от 0 до 0xf приличные люди организуют
в массив кодов ошибок, а не в набор printf'ов под switch.
С другой стороны, работая с демонами, приличные клиенты
должны либо использовать асинхронное чтение, либо ставить
таймауты.
> IN> Демон требует i386 платформу - но я могу для него выделить
> IN> *отдельную* машину.
> И мы может
Вообще-то я скорее говорю о своей машине, чем о Вашей.
А что, есть реальные предложения? :-)
> IN> глюкавую бета версию, потому как, я буду платить деньги
> IN> не за одноразовый софт, а за подписку на базу данных.
> Я не хочу разбирать докторвеб, но после выхода их беты я протестировал их
> продукт и могу скаать что они прямо идут по граблям которые мы прошли
Я пока не пытаюсь сравнивать сии продукты по сути.
Мне на самом деле вообще тяжело понять чего они делают.
imho нужно os патчить, а не файлы :-)
Hо по форме ситуация такова: drweb пока не позиционируется
как продукт, это бета версия, за которую никто не берёт
денег. AVP же хочет за свой продукт $100. Мне не жалко $100
на дело. А вот 'на посмотреть' - жалко. И потому я буду
описывать именно ту версию, которая 'на попробовать'.
> IN> Когда антивирус под unix позиционируется как защита
> IN> для рабочих станций - я перестаю что либо понимать.
> IN> Зачем линуксоиду, антивирус от мастдаечных глюков?
> Есто версия для почтовых серверов
Версия для почтовых серверов это что, что-то особенное?
Она snmp понимает или умеет с procmail в трубе работать?
> IN> 'insert string before cursor in a curses window' 8-O
> IN> Hафига им /usr/lib/libnss_* ?
> Nss не линкуется в исполняемый код. Hо поскольку он требуется для проверки
> юзеров, то мы требуем его наличия
Кто *требуется для проверки пользователей*??? libnss?
Извините, это CURSES, какое отношение библиотека по выводу
разной фигни на терминал имеет к проверке пользователей?
Hазачем демону, живущему под nobody, проверять чего-то
там у пользователей?
> IN> Зачем в tgz идут tgz? Два раза сжимается плотнее?
> Инсталляция состоит их 2х файлов(инсталлера и архива)чтобы умные люди не
> скачивали по-раздельности, это зажимается в один архив
Зачем два раза зажимается то? А уж если зажимать,
то хотя бы без мусора:
igor@snd:~/AVP > tar xzf AVPWSLinux.tgz
gzip: stdin: decompression OK, trailing garbage ignored
tar: Child returned status 2
tar: Error exit delayed from previous errors
igor@snd:~/AVP >
А уж если зажимать с мусором, то, позвольте спросить,
мне всё покоя не даёт, такая классная фиговина как
bootdisk.img размером с дискету - это собственно чего?
Это тоже для почтовых серверов?
> IN> Почему man'ы в формате cat?
> Потому как маны для разных юниксов различаются по формату
Потому как в свеженькой версии уже до кого-то дошло
и положили man :-) Отмечу, что форматы man для разных
unices *никогда* не различались, формат (?roff) появился
сразу после рождения unix.
> IN> Что пути вида 'ReportFileName=/home/avpscan.rpt' в конфигах?
> Давно убрано
Это я от старого помню. Виноват, счас по-быстрому исправлюсь (-:
/var/run/AvpCtl и /var/run/AvpPid это собственно что?
Что у него делает /dev/hda? Зачем ему физический доступ к диску?
Он решил вместо fsck поработать? Спасибо, такому демону век
рута не видать...
А что он забыл в /var/spool/mail? Почта пользователей
на почтовых релеях там не лежит. А что там лежит - не
его ума дело :-)
Вообщем то конечно это несколько некорректное исследование.
Я вполне поверю, что эти файлы ему не нужны если это будет
сказано явно...
> IN> Что за бредовые программы с ^M в примерах?
> Правлю из-под винды иногда и иногда забываю убрать
Может это, скрипт написать...?
--
Игорь Hиколаев
P.S. Можно немного сокращать таки цитаты?
--
И
--- ifmail v.2.12.os.sensi * Origin: А ключ '--' у него означает 'Desinfect'... (2:5030/266@fidonet)