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] на английском языке:

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

SharedПравить

Код, используемый многими файлами предшествующих категорий.

S_confedit.php
S_config.php
S_cron.php
S_init.php
S_version.php
Этот файл содержит номер версии PhFiTo. (Этот номер присваивается автором по мере развития тоссера, а не системою контроля версий по мере появления новых версий.)

UpdateПравить

Средство обновления данных в базе phpBB.

Эта категория является устаревшей. Содержит единственный файл:

U_phpbb.php

ПримечанияПравить

  1. О том на area://GanjaNet.Local/?msgid=2:5019/40.1+4982ec3f развёрнуто упоминается.
  2. См. area://Ru.FTN.Develop?msgid=2:5019/40.1+4d14f66d