lilalo
diff l3-backend @ 98:4c02cf4123ee
l3-agent и l3-backend изменены так, что
все записанные команды теперь привязаны к контексту,
заданному в параметре
l3cd
агента
Их XML-представление теперь сохраняется не только в общем
файле backend.xml,
но и в файлах соответствующих контексту l3cd
$Config{backend_datadir}/$l3cd/data.xml
Параметр l3cd (пока что) меняется вручную в конфигурационном
файле агента ~/.l3rc
После того как параметр изменён необходимо перезапустить агент,
отправив ему сигнал HUP
killall -1 l3-agent
ЧТО НУЖНО СДЕЛАТЬ:
== Безопасность ==
* Сделать процедуру залогивинивания и проверки подлинности пользователя
* Ограничить доступ на запись в контекстные каталоги для пользователей
== Смена каталога ==
* Сделать команду l3, которая позволяет изменить и просмотреть
текущий l3-контекст
l3 pwd
l3 cd /devi/netflow
все записанные команды теперь привязаны к контексту,
заданному в параметре
l3cd
агента
Их XML-представление теперь сохраняется не только в общем
файле backend.xml,
но и в файлах соответствующих контексту l3cd
$Config{backend_datadir}/$l3cd/data.xml
Параметр l3cd (пока что) меняется вручную в конфигурационном
файле агента ~/.l3rc
После того как параметр изменён необходимо перезапустить агент,
отправив ему сигнал HUP
killall -1 l3-agent
ЧТО НУЖНО СДЕЛАТЬ:
== Безопасность ==
* Сделать процедуру залогивинивания и проверки подлинности пользователя
* Ограничить доступ на запись в контекстные каталоги для пользователей
== Смена каталога ==
* Сделать команду l3, которая позволяет изменить и просмотреть
текущий l3-контекст
l3 pwd
l3 cd /devi/netflow
author | devi |
---|---|
date | Sun Jun 11 22:07:42 2006 +0300 (2006-06-11) |
parents | 098664cf339c |
children | 05e99d32f1f5 |
line diff
1.1 --- a/l3-backend Mon Nov 07 11:24:49 2005 +0200 1.2 +++ b/l3-backend Sun Jun 11 22:07:42 2006 +0300 1.3 @@ -91,13 +91,35 @@ 1.4 # Это наш ответвлённый клиент 1.5 close($server); 1.6 1.7 + my $saved_data = ""; 1.8 + 1.9 # Считываем данные и передаём их в точку получения 1.10 open(OUT, ">>", $Config{"backend_datafile"}); 1.11 select OUT; $|=1; 1.12 while(<$client>) { 1.13 print OUT $_; 1.14 + $saved_data .= $_; 1.15 } 1.16 close(OUT); 1.17 + 1.18 + while ($saved_data =~ m@<(session|command)>(.*)</$1>@sg) { 1.19 + my $element_name = $1; 1.20 + my $element = $2; 1.21 + if ($element =~ m@<l3cd>(.*?)</l3cd>@msg) { 1.22 +# Обнаружен элемент l3cd 1.23 +# Информация должна быть сохранена в соответствующий каталог 1.24 + my $l3cd = $1; 1.25 +# Путь l3cd должен быть не пуст, 1.26 +# и в нём могут быть только символы латинского алфавита, цифры и знаки _ и - 1.27 + if ($l3cd && $l3cd =~ /^[a-zA-Z_\/0-9-]*/) { 1.28 + system("mkdir -p $Config{backend_datadir}/$l3cd"); 1.29 + if (open(OUT, ">>", $Config{"backend_datadir"}."/$l3cd/data.xml")) { 1.30 + print OUT "<$element_name>".$element."</$element_name>"; 1.31 + close(OUT); 1.32 + }; 1.33 + } 1.34 + } 1.35 + } 1.36 } 1.37 continue { 1.38 # Наш родитель