[09:28:34] <landgraf> /me пинает vgodunko
[09:34:43] <vgodunko> так я и знал, ни тебе доброго утра, сразу - "пинает"
[09:34:44] <vgodunko> :-)
[09:34:58] <vgodunko> Могу на русском небольшую статейку накатать
[09:36:39] <landgraf> ага, надо ) с примерами из матрешки
[09:47:06] <landgraf> vgodunko, просто я довольно много наговнокодил уже, и на сегодня основной парсинг намечается, если переписывать на матрешку то надо уже начинать )
[09:51:23] <coopht> можно посмотреть в AXMPP
[09:51:29] <coopht> там матрешка используется
[09:52:19] <landgraf> ща
[09:54:12] <landgraf> type XMPP_Session is limited new XMPP.Networks.Network
and XML.SAX.Content_Handlers.SAX_Content_Handler
and XML.SAX.Declaration_Handlers.SAX_Declaration_Handler
and XML.SAX.DTD_Handlers.SAX_DTD_Handler
and XML.SAX.Entity_Resolvers.SAX_Entity_Resolver
and XML.SAX.Error_Handlers.SAX_Error_Handler
and XML.SAX.Lexical_Handlers.SAX_Lexical_Handler with
record
[09:54:18] <landgraf> это что о_О ?
[09:55:25] <landgraf> vgodunko, а вообще можно на rosettacode скинуть примеры с матрешкой - будет полезно
[09:55:34] <landgraf> надеюсь на только я там примеры ворую ))
[10:01:25] <vgodunko> landgraf: сначала нужно придумать сами примеры.
[10:01:54] <landgraf> vgodunko, там уже есть сами примеры
[10:02:02] <vgodunko> Это объявление своего типа для обработки событий SAX
[10:02:31] <vgodunko> События SAX разделяются на несколько обработчиков.
[10:02:33] <coopht> там вроде в тестах к матрешке есть примеры
[10:02:51] <vgodunko> Каждый обработчик объявлен как интерфейсный тип
[10:03:20] <vgodunko> /me сел писать документацию
[10:05:19] <vgodunko> http://forge.ada-ru.org/matreshka/browser/trunk/matreshka/examples/sax_events_printer
[10:05:30] <vgodunko> Это то о чём coopht упоминал.
[10:05:53] <coopht> угу
[10:06:39] <coopht> блин, надо pidgin допилить, чтобы когда кликаешь на имя пользователя в конференции - он добавлял его никнейм в окошко чата
[10:08:20] <landgraf> а всякие Unchecked_Access - это хорошо?
[10:08:42] <coopht> отлично
[10:08:58] <landgraf> как-то мне название не нравится )
[10:09:18] <landgraf> и описание помню было из разряда "не повторяйте этого дома, если не уверены в том, что делается"
[10:09:58] <landgraf> /me ушел погружаться в матрешку
[10:12:45] <vgodunko> landgraf: так и есть, но тут всё в порядке.
[10:55:12] <vgodunko> http://ada-ru.qtada.com/archives/380
[10:55:19] <vgodunko> landgraf: комментарии будут?
[10:55:38] <coopht> нет!
[10:57:46] <vgodunko> coopht: ПАЧЕМУ???!!!
[11:07:12] <landgraf> сейчас чего-нибудь закодю
[11:07:20] <yeo> кто-то шарит в iproute2? :(
[11:08:46] <landgraf> немного
[11:08:50] <Okasu> yeo: а что там? мана не хватает?
[11:09:07] <landgraf> там много манов
[11:09:42] <Okasu> не больше чем в гите :)
[11:10:08] <yeo> ман один, нифига не понятный. дока идиоцкая http://www.opennet.ru/docs/RUS/LARTC/x348.html
[11:10:51] <yeo> есть два провайдера. не могу настроить, чтобы ответы на запросы от одного провайдера уходили на него же
[11:11:27] <Okasu> iptables может тебе нужны?
[11:11:29] <landgraf> yeo, ща будет, сам такую задачу решал
[11:11:34] <landgraf> Okasu, нет, нужен iproute
[11:12:34] <yeo> я надеюсь что это без iptables решается
[11:12:56] <landgraf> yeo, создай таблицу в rt_tables
[11:13:19] <yeo> создал
[11:14:37] <yeo> в доке пишет надо правило "ip rule add from $IP1 table T1" где IP1 - адрес, который отдает мне провайдер. я в упор не понимаю как оно может работать :(
[11:14:53] <yeo> В другой доке ip rule add from $IP_INET1 table T1 #все пакеты от ip адреса первого провайдера маршрутизировать по таблице T1
[11:15:19] <landgraf> блог сломался :((
[11:15:54] <landgraf> /me be
[11:15:57] <yeo> IP_INET1 это сеть провайдера. это как бы более понятно, но ко мне не провайдер же ходит, а весь интернет, логики тоже не вижу
[11:16:16] <landgraf> ping
[11:16:17] <Жаба> landgraf, Pong from you: 0.085210 s
[11:16:23] <landgraf> cat /etc/sysconfig/network-scripts/rule-eth1
from 172.17.193.64/26 table spice
[11:16:27] <subj_rs> yeo: пакеты то идут от ип провайдера )
[11:16:30] <landgraf> yeo, вот ruke
[11:16:35] <landgraf> rule
[11:16:44] <yeo> :(
[11:17:10] <landgraf> yeo, все пакеты от сети второго (недефолтного) провайдера надо совать в кастомную таблицу
[11:17:19] <landgraf> в моем случае spice
[11:17:33] <landgraf> и на них делать свой роутинг
[11:17:52] <landgraf> # cat route-eth1
default via 172.17.193.65 table spice
172.17.193.65/26 dev eth1 table spice
вот такой :)
[11:19:10] <yeo> а че делать если не пашет? :)
[11:19:45] <landgraf> смотреть ip rule list и ip route list table mytable и думать почему неправильно )
[11:19:50] <landgraf> tcpdump заюзать еще
[11:20:22] <yeo> tcpdump показывает только как пакеты заходят...
[11:21:03] <yeo> from 172.17.193.64/26 table spice вот это как работает?
[11:21:34] <landgraf> yeo, все пакеты из сети 172.17.193.64/26 маршрутизируются таблицей spice а не main
[11:21:51] <landgraf> yeo, приоритет у кастомной таблицы должен быть ниже чем у main
[11:22:00] <yeo> если ко мне ломится кто-то скажем с интернета с 1.1.1.1 как пакеты попадают под это правило?
[11:22:09] <landgraf> ну то есть нвыше, короче число меньше ))
[11:22:21] <landgraf> yeo, пакеты приходят с гейтвея
[11:22:39] <landgraf> из сети провайдера
[11:23:08] <landgraf> yeo, у меня две сети на каждом хосте и пакеты снаружи этих двух сетей (читай из интернета) правильно роутятся.
[11:24:07] <yeo> в мане пишу from ADDRESS
the source address.
[11:24:21] <yeo> сорс адрес же 1.1.1.1
[11:25:51] <subj_rs> вот мануальчег
http://lug.ivanovo.ru/lartc/
[11:26:47] <yeo> subj_rs, это такойже как я читаю
[11:27:11] <yeo> в мане пишут*
[11:27:31] <landgraf> нет, в данном случае source именно адрес с которого пакет попадает в твою сеть
[11:27:50] <landgraf> что находится за пределами твоей сети какбы пох
[11:28:07] <subj_rs> yeo: ip_forward включил?
[11:28:49] <landgraf> а это тут причем? о_О
[11:29:15] <landgraf> subj_rs, причем тут форвард ваще?
[11:29:23] <landgraf> cat /proc/sys/net/ipv4/ip_forward
0
[11:29:26] <yeo> да, первый провайдер форвардиться нормально
[11:30:36] <landgraf> yeo, добавь в правило подсеть второго провайдера, но не адрес, который он тебе выдает (как написал раньше)
[11:30:47] <subj_rs> надо вникнуть о чем суть )
[11:31:20] <landgraf> subj_rs, ты в прошлый раз целый день вникал )) пока я сам не сделал все
[11:31:44] <yeo> вот мне ppp отдает
Apr 3 00:32:35 undead2 pppd[28609]: local IP address 92.113.26.206
Apr 3 00:32:35 undead2 pppd[28609]: remote IP address 195.5.5.201
[11:32:15] <yeo> я пишу ip rule add from 92.113.26.206 table T1
[11:32:22] <yeo> правильно?
[11:32:41] <landgraf> ip rule add from 195.5.5.201 table T1
[11:32:44] <landgraf> имхо
[11:33:09] <yeo> ой заработало O_o
[11:34:51] <landgraf> гы
[11:37:32] <landgraf> vgodunko, я получаю String с помощью AWS.Get - как мне его в SAX reader запихать?
[11:37:59] <yeo> спасибо! :)
[11:38:17] <vgodunko> Ну вы понаписали!
[11:38:31] <vgodunko> Выполнен план пятилетки по переговорам!
[11:38:42] <vgodunko> landgraf: нужно использовать Text_Codec
[11:39:24] <vgodunko> http://ada-ru.qtada.com/archives/231
[11:39:34] <vgodunko> См. главу "грязный хак"
[11:41:17] <vgodunko> Text_Codec вернёт Universal_String, она заносится в XML.SAX.Input_Sources.Strings
[11:41:40] <vgodunko> Остальное - так же как в описанном в статье примере (статья обновлена)
[11:42:25] <nordwind> хрянятся
[11:42:37] <nordwind> на перовй строке страницы
[11:43:52] <vgodunko> nordwind: исправлено
[11:44:35] <vgodunko> coopht: что ещё стоит описать по использованию SAX-а?
[11:44:48] <vgodunko> Ты у нас один из самых крутых пользователей :-)
[11:54:51] <landgraf> vgodunko, expected type "Standard.Wide_Wide_String , а в примере простая строка
[11:55:44] <vgodunko> Это где?
[11:56:09] <landgraf> procedure Init(Message : out RHEV_Message; str : string) is
begin
Message.Text := To_Unbounded_String(str);
Message.Utext := To_Universal_String(str);
end Init;
[11:56:40] <landgraf> vgodunko, в "грязном хаке"
[11:57:51] <vgodunko> В League.Strings есть To_Universal_String, она-то и принимает Wide_Wide_String
[11:58:04] <vgodunko> С видимостью что-то не то
[12:01:51] <landgraf> fixed
[12:02:01] <vgodunko> :-)
[12:03:34] <vgodunko> Ща будет бум.
[12:03:41] <vgodunko> Отправил анонс в ada-ru
[12:22:24] <landgraf> как сделать "implement all abstract methods" руками как-то долго :(
[12:36:27] <vgodunko> Абстрактный только Error_String, так что не долго совсем
[12:36:49] <landgraf> ага, уже выяснил
[12:36:57] <vgodunko> Остальные реализуются только если нужно, а иначе они ничего не делают
[12:37:29] <landgraf> уже даже получил первый вывод тестового барахла
[12:37:46] <vgodunko> Круто!
[12:37:57] <vgodunko> И как впечатление от "выноса мозга"
[12:38:05] <vgodunko> ?
[12:38:27] <landgraf> понять бы куда это все теперь девать...
[12:40:37] <landgraf> а где посмотреть весь набор методов-обработчиков?
[12:41:44] <landgraf> нашел
[12:48:12] <vgodunko> В исходниках :-)
[13:05:12] <landgraf> а как в ваших саксах отличать root_element от "обычного"?
[13:10:56] <vgodunko> Вообще-то - никак :-(
[13:11:36] <vgodunko> Если очень хочется отслеживать вложенность, то можно сделать стэк на основе, например вектора.
[13:12:02] <vgodunko> Тогда в Start_Element добавляется элемент в стэк, а в End_Element - удаляется.
[13:12:26] <vgodunko> Собственно так и делают (если нужно отслеживать)
[13:36:26] <yeo> почему-то iptables MASQUERADE не срабатывает для пакетов идущих через ip rule from ...
[13:49:50] <yeo> хотя, этож DNAT должен делать...
[14:20:29] <yeo> во, нашел шапргалку....
[18:48:45] <vgodunko> landgraf: ну как успехи?
[20:43:43] <landgraf> vgodunko, пока не особо - с java промучался полдня
[20:44:01] <landgraf> у меня же студент на попечении, я его пока не обратил в правильную веру
[20:48:26] <vgodunko> Так пусть сюда приходит, мы проведём ритуал посвящения.
[20:53:55] <landgraf> я его уже подвожу к правильной мысли.
[23:01:50] <vgodunko> О! У меня аншлаг, 19 посетителей за сутки
[23:01:59] <vgodunko> нужно чаще статьи писать видиом
[23:02:33] <landgraf> только огромный банер сверху убрать )))
[23:10:47] <vgodunko> Эх... А на чём я деньги зарабатывать буду?
[23:10:50] <vgodunko> :-(
[23:10:55] <vgodunko> landgraf: есть вопрсо
[23:11:24] <vgodunko> Если Ada библиотеки ставятся в <prefix>/lib64, то куда кладутся файлы проектов?
[23:11:37] <vgodunko> В <prefix>/lib64/gnat или <prefix>/lib/gnat?
[23:11:58] <vgodunko> (я знаю, что сейчас уже в <prefix>/share/gpr)
[23:12:03] <landgraf> до F17 в <prefix>/lib/gnat, сейчас в share
[23:12:31] <vgodunko> Для 64bit тоже в lib?
[23:12:31] <landgraf> vgodunko, http://fpaste.org/Er9m/
[23:12:39] <landgraf> vgodunko, да
[23:12:53] <vgodunko> OK, спасибо
[23:13:06] <landgraf> вот эту %_GNAT_project_dir директорию юзаю в spec
[23:13:44] <landgraf> vgodunko, там же лежат флаги оптимизации для gnatmake и gprbuild :) пакет серб держит
[23:15:27] <vgodunko> Для Матрёшки её нужно будет передать как --gprdir=.... и спать спокойно
[23:15:40] <vgodunko> (после тридцатого исправления ошибок :-( )
[23:16:23] <vgodunko> У меня получается откровенно не очень хорошо, пакет жёстко становится теперь в указанные каталоги.
[23:16:39] <vgodunko> Раньше всю иерархию можно было перенести, а теперь - усё.
[23:17:08] <landgraf> vgodunko, вот это не очень хорошо :) http://fpaste.org/9RrH/
[23:17:15] <landgraf> а остальнео - мелочи ;)
[23:18:48] <vgodunko> SQL_PostgreSQL, Source_Dirs некорректно указаны (отсутствует & )
[23:25:14] <landgraf> млин
[23:38:13] <vgodunko> %attr(-,root,root) %{_prefix}/lib/gnat/amf_uml.gpr
[23:38:16] <vgodunko> Знакомо?
[23:38:22] <vgodunko> Как туперь будет?
[23:39:00] <vgodunko> Нужно же что-то типа %{_gprdir} объявить, только вот как?
[23:39:42] <vgodunko> Или я тупо пишу %{_gprdir}, а уже авторы spec файла думают как им быть?
[23:43:50] <yeo> вот скажите, знатоки bash-а, разве ./blah-blah & делает blah-blah демоном? я думаю нет, но наши админы думают иначе :(
[23:44:13] <subjrs> не делает
[23:44:37] <subjrs> вот screen или nohup абстрактно делают )
[23:45:32] <vgodunko> не делаю
[23:45:36] <yeo> я думал, что этот бекграунд завершиться, когда закроется sh
[23:45:43] <subjrs> именно )
[23:45:47] <vgodunko> Правильно думаешь
[23:45:59] <yeo> но я выхожу их ssh а процесс остается висеть
[23:46:09] <subjrs> yeo: нужно 0, 1, 2 потоки завершить - это обычно сам процесс делает через форканье самого себя
[23:46:40] <subjrs> yeo: какойнить хитрый ssh, не надежно это
[23:47:54] <yeo> может он остается висеть т.к. bash от рута? или врядли?
[23:48:06] <subjrs> yeo: скорее ssh сессия подвисает
[23:50:07] <yeo> а что в аде с демоноводством? совсем туго?
[23:50:25] <subjrs> да, нужен в любом случае внешний демонизатор
[23:50:43] <subjrs> гнатовский рантайм не работает после форка
[23:52:54] <vgodunko> landgraf: http://forge.ada-ru.org/matreshka/ticket/204
[23:53:15] <vgodunko> сделано в ветке 0.2.1 и 0.3.0
[23:53:53] <vgodunko> Жду новых тикетов :-)
[23:56:58] <subjrs> даже пхп умеет демонизироваться )
[23:57:03] <vgodunko> Ada не демон!
[23:57:14] <vgodunko> Она standalone application
[23:57:36] <subjrs> но както ж ее надо уметь запихивать в глубокий бэкграунд