Такое решение не обеспечивало безопасности, т.к. никто не мог помешать созданию такого клиента, который бы прислал т.н. all_enable_filter (см. so_4::sop::create_all_enabled_filter()), а затем бы отсылал произвольные сообщения серверу. В версии 4.2.7 реализована возможность зназначения "входящих" фильтров для серверных каналов.
В конструктор класса so_4::rt::comm::a_srv_channel_t добавлен параметр filter. Если он отличен от нуля, то считается, что для данного серверного входа назначается "входящий" фильтр. Все поступающие от клиентов данного входа сообщения сначала пропускаются через входящий фильтр. И только если сообщение прошло этот фильтр, оно пропускается через фильтр клиента.
Это позволяет назначать различным типам клиентов различные серверные входы. И соответствующим образом защищать эти входы. Например, для главного коммуникационного сокета, который не должен иметь фильтра, можно установить наибольшие ограничения (например, сделать возможным подключение к этому сокету только с локальной машины). Для остальных каналов можно использовать менее строгие ограничения. Например, для управляющих каналов разрешать вход только через защищенные соединения (SSL, SSH, VPN, ...). Для мониторинговых каналов -- через открытые входы, но с определенных сетевых адресов, ограничивая их на firewall.
Если же в конструктор класса so_4::rt::comm::a_srv_channel_t передан нулевой параметр filter, либо он опущен, то для серверного входа назначается разрешающий все сообщения фильтр. Такое поведение обеспечивает полную совместимость с предыдущими версиями SObjectizer-а.