HOWTO : fidonet software for unix

[ index ] [ areafix ] [ binkd ] [ filefix ] [ ifmail ] [ inn ] [ mgetty ] [ sendmail ] [ together ] [ stat ] [ utilities ] [ download ]

areafix

Существуют различные варианты areafix'ов для INN'а, в частности : Здесь я опишу настройку двух первых ареафиксов из этого списка.

areafix by Yar Tikhiy

   Берем areafix из дистрибутива ifmail'а (misc/contrib/areafix-0.5.07). Прочитав README можно скомпилировать areaqueue.c, но т.к. это почти 1:1 совпадает с areaqueue из filefix'a, я не стал этого делать и в дальнейшем использовал areaqueue оттуда (см. раздел filefix).
Копируем areafix.pl в /usr/local/fidonet/bin/areafix/, а config, help, passwords, restricted и uplinks - в /usr/local/fidonet/etc/areafix/. Меняем владельца этих файлов на fido:fido.
В areafix.pl исправляем путь к файлу конфигурации :
$CONFIGFILE="/usr/local/fidonet/etc/areafix/config";
Редактируем /etc/aliases (/etc/mail/aliase), прописывая две строчки :
areafix:"|/usr/local/fidonet/bin/filefix/areaqueue /usr/local/fidonet/tmp/areafix/queue", fido
areafix-service: fido

Обратите внимание - первая строчка почти совпадает с аналогичной для FileFix'а, только другой алиас и каталог - не filefix/queue, а areafix/queue. Не забывайте после изменения aliases запускать newaliases.
Начинаем настройку в config :
Подкорректируйте имя сисопа и адрес. Если хотите чтобы ваши даунлинки использовали вас для транзитной подписки (я это не использовал), то пропишите адрес вашего основного аплинка, название его feed-записи в newsfeeds inn'а и пароль к его areafix'у :
UpLink_Address f500.n5058.z2.fidonet.org
Uplink_Site f500.n5058.z2
UpLink_Password SUPERPASSWORD

Далее корректируем пути :
Queue /usr/local/fidonet/tmp/areafix/queue
PasswdFile /usr/local/fidonet/etc/areafix/passwords
UplinkFile /usr/local/fidonet/etc/areafix/uplinks
HelpFile /usr/local/fidonet/etc/areafix/help
NewsFeeds /usr/local/news/etc/newsfeeds
Passive_NewsFeeds /usr/local/news/etc/newsfeeds.passive
OutNewsFeeds /usr/local/news/etc/newsfeeds
NewsGroups /usr/local/news/db/newsgroups
Active /usr/local/news/db/active
Echo2News /usr/local/fidonet/etc/ifmail.areas
RestEcho /usr/local/fidonet/etc/areafix/restricted
MailCommand |/usr/sbin/sendmail -t
ReloadCommand /usr/local/news/bin/ctlinnd reload newsfeeds Areafix request

Обратите внимание на последнюю строчку : Areafix request - без кавычек.
RmGroup /usr/local/news/bin/ctlinnd rmgroup %g
Semaphore /usr/local/fidonet/tmp/areafix.semaphore
NewsLockDir /usr/local/news/run
LogLevel 5
Forward No

С config все.
Теперь прописываем линков в файл passwords :
p1.f99.n5058.z2.fidonet.org:p1.f99.n5058.z2:pwd1
p2.f99.n5058.z2.fidonet.org:p2.f99.n5058.z2:pwd2
p3.f99.n5058.z2.fidonet.org:p3.f99.n5058.z2:pwd3

Файл uplinks я не использовал.
В файле restricted прочитайте комментарий - там все просто.
Пробуем запустить areafix.pl
Если появились сообщения об ошибках, типа
Can't locate /usr/share/perl/errno.ph in @INC (did you run h2ph?) (@INC contains: /usr/libdata/perl/5.00503/mach /usr/libdata/perl/5.00503 /usr/local/lib/perl5/site_perl/5.005/i386-freebsd /usr/local/lib/perl5/site_perl/5.005 .) at ./areafix line 117.
то есть три варианта :
1. Сделайте что он вас просит (запустите h2ph, etc.);
2. Попробуйте взять более свежие areafix'ы из дистрибутива ifmail 2.15 или у автора;
3. Подправить areafix.pl на предмет использования файла areafix.log вместо работы через syslog.
Можете проверить работу areafix'а аналогично тому, как это было сделано для filefix'а.

gup

   Авторы программы - Mark Delany, markd@bushwire.apana.org.au и Andrew Herbert, andrew@werple.apana.org.au. Берем последнюю версию с ftp://ftp.isc.org/isc/inn/unoff-contrib/, на настоящий момент - gup-0.4.tar.gz, раскручиваем, начинаем подготовку к компиляции. Посмотрите файл config/netbsd, допишите в него строчку :
P_NO_FLAGS = -DNO_MALLOC_H
Редактируем Makefile :
CONFIG = netbsd
Далее указываем пути к бинарнику и man-страницам. Т.к. вам все равно понадобится отдельный каталог для прочих файлов gup'а, то будем держать их вместе :
BINDIR = /usr/local/fidonet/bin/areafix
MANDIR = /usr/local/fidonet/man/man1

Корректируем пути к файлам :
ACTIVE_PATH = /usr/local/news/db/active
NEWSGROUPS_PATH = /usr/local/news/db/newsgroups
MAIL_COMMAND = "/usr/sbin/sendmail -t"

Редактируем файл rfc822.h, убирая строчку (в самом конце) :
extern char *sys_errlist[];
Запускаем make; make install. Файлы gup и gup.1 должны скопироваться в свои каталоги. Копируем scripts/gupdate в /usr/local/fidonet/bin/areafix, и немного правим его :
gup=/usr/local/news/etc/gup
newsfeeds=/usr/local/news/etc/newsfeeds
ctlinnd=/usr/local/news/bin/ctlinnd
tmpfeeds=/usr/local/news/tmp/newsfeeds.$$
# global header
cat header.global
# header
sed -e "s/HOST/$h/g" ../header.local
# body
sed -e 's/$/,\\/g' -e 's/^/ /g' $h/groups
# trailer
#sed -e "s/HOST/$h/g" $h/trailer
cat ../trailer.local
# global trailer
cat trailer.global

Кусок, начинающийся со строчек
# tell INN about it
if [ "$ctlinnd" ]; then

и до конца файла я выкинул, оставив только :
if [ "$ctlinnd" ]; then
echo "full update: ctlinnd reload newsfeeds"
$ctlinnd reload newsfeeds gupup
fi

Переходим в /usr/local/fidonet/etc/areafix.
Создаем файл config, где прописываем newsfeed-записи, пароли и e-mail'ы вашил линков, которые будут пользоваться gup'ом (более подробно - см. man gup) :
# Moscow link
f0.n5020.z2 PASSWORD MyLink@mail.ru
# Local link
f500.n5058.z2 PASWORD2 sysop@f500.n5058.z2.fidonet.org

В процессе работы gup формирует newsfeeds из файлов : header.global, нескольких описаний ваших линков и trailer.global. Описания ваших линков создаются из файлов : header.local, списка эх и trailer.local.
header.global :
ME:*,!junk,!control*::
dummy-feed:!*::
# Прочие не-фидошные newsfeeds
[...]

trailer.global :
# [EOF]
# ;)

header.local :
HOST:!*,\
("HOST" для каждого конкретного линка будет заменяться на его feed-запись)
trailer.local :
:Tf,Wfb,B16386/4096:
mail.headers - эти заголовки gup будет использовать при ответе на письма :
From: "AreaFix-robot" <AreaFix-robot@f99.n5058.z2.fidonet.org>
Subject: Reply from AreaFix

Создаем каталог sites, в нем описываем линков путем создания каталогов типа :
./f0.n5020.z2
./f500.n5058.z2
./news.provider.my
./p1.f99.n5058.z2
./p2.f99.n5058.z2

В каждом из этих каталогов у меня лежат по два файла : exclude и groups.
В groups прописаны конференции, на которые подписан этот линк, а в exclude - те, на которые он не может подписаться. Более подробно - см. man gup.
Например, в /usr/local/fidonet/etc/areafix/sites/f500.n5058.z2/exclude :
junk
control*
f99.points
,
а в groups :
orn.*
!orn.tormoz
!orn.general
uplink.*

Аналогичные настройки и для других линков...
Для запуска gup'а прописываем в /etc/aliases (/etc/mail/aliases) :
areafix: fido,"|/usr/local/sbin/gup -d /usr/local/fidonet/etc/areafix -l /usr/local/fidonet/log/gup.log -m /usr/local/fidonet/etc/areafix/mail.headers -s /usr/local/fidonet/etc/areafix/sites"
(Все в одну строчку !)

This is a part of "HOWTO : fidonet software for unix", http://howto.id.ru
Original of this document is located at http://howto.id.ru/areafix.html
Copyright (c) Vitaly Kuharev, 2:5058/49@fidonet, 1999-2001
Last updated : March, 09, 2001