PhFiTo
PhFiTo (сокращ. от англ. PHP Fidonet tosser) — открытый и свободный проект такого эхопроцессора для Фидонета, который написан на языке PHP и, следовательно, является кросс-платформенным — в частности, может быть запущен на большинстве современных коммерческих виртуальных хостингов, предоставляемых в Паутине.
PhFiTo является составной частью проекта phpFidoNode, посвящённого сотворению всего пакета фидонетовских программ, необходимого для фидонетовского узла, на языке PHP. Покамест, судя по странице скачивания пакетов phpFidoNode на SourceForge, PhFiTo является единственной готовой частью phpFidoNode.
В некоторых источниках (например, [1]) отмечалось, что использование PhFiTo требует известных мер предосторожности: если PHP-скрипт phfito-post
оказывается доступен для непосредственного запуска через Паутину, то создаёт уязвимость, поскольку осведомлённый злоумышленник может передавать ему произвольные параметры и тем невозбранно управлять сервером.
Для обсуждения PhFiTo и phpFidoNode существует специальная эхоконференция — Ru.FTN.PHP
— имеющаяся на эхобоне пятидесятого региона.
Код FGHI URL гейта частично основан на коде PhFiTo.[1]
Состав кода PhFiTo[править | править код]
Код PhFiTo состоит из значительного числа файлов (почти полсотни!), для простоты ориентирования названных в формате «буква_имя
», то есть первая буква имени файла означает ту категорию, к которой он принадлежит. Категории названы[2] на английском языке:
- A → Amfow
- C → Class
- E → Executable
- F → File operations
- L → Library
- M → Module
- P → Packets
- S → Shared
- U → Update
Amfow[править | править код]
Эта часть кода реализует Amfow и потому является скорее мейлером, нежели тоссером.
Состоит из двух файлов:
- A_common.php
- Основная часть.
- A_disc.php
- Реализация дисковых операций.
Class[править | править код]
Описание объектов («классов» в той терминологии объектно-ориентированного программирования, которая употребляется в PHP), поведение которых соответствует взаимодействию с основными форматами баз фидопочты, а также ряда других вспомогательных объектов.
- C_areafix.php
- C_fips.php
- C_jam.php
- C_msgbase.php
- C_mysql.php
- C_opus.php
- C_phpbb2.php
- C_phpbb3.php
- C_queue.php
- C_sqlt.php
- C_squish.php
- C_stats.php
- C_vsys.php
- C_xmlbase.php
Executable[править | править код]
Непосредственно исполняемые файлы.
- E_genstat.php
- Генератор статистического отчёта.
File operations[править | править код]
Функции, описывающие операции над файлами.
- F_archives.php
- Работа с архивами.
- F_pkt.php
- Работа с пакетами фидопочты (в формате PKT).
- F_utils.php
- Прочие полезные функции.
Library[править | править код]
Набор библиотечных функций разнообразного предназначения.
- L_areas.php
- L_baseconv.php
- L_echomail.php
- L_fidonet.php
- L_ftndns.php
- L_genstat.php
- L_listcfg.php
- L_modules.php
- L_mysql.php
- L_netmail.php
- L_postmsg.php
- L_sqlt.php
- L_vsys.php
- L_ziplib.php
Module[править | править код]
Код отдельных модулей тоссера.
- M_areafix.php
- M_dynroute.php
- M_echohist.php
- M_faqserv.php
- M_msgproc.php
- M_rulserv.php
- M_uueauto.php
Packets[править | править код]
Функции для работы с пакетами фидопочты (в формате PKT).
- P_phfito.php
- P_pktdns.php
[править | править код]
Код, используемый многими файлами предшествующих категорий.
- S_confedit.php
- S_config.php
- S_cron.php
- S_init.php
- S_version.php
- Этот файл содержит номер версии PhFiTo. (Этот номер присваивается автором по мере развития тоссера, а не системою контроля версий по мере появления новых версий.)
Update[править | править код]
Средство обновления данных в базе phpBB.
Эта категория является устаревшей. Содержит единственный файл:
- U_phpbb.php
Примечания[править | править код]
- ↑ О том на area://GanjaNet.Local/?msgid=2:5019/40.1+4982ec3f развёрнуто упоминается.
- ↑ См. area://Ru.FTN.Develop?msgid=2:5019/40.1+4d14f66d