Собственно, странно, что после обновления на более новую версию proftpd Вы не исправили ошибку. Ошибка заключается в невозможности создания в вышеуказанной кодировке директорий или файлов с именем, в котором присутствует кириллическая буква "я".
Достаточно вырезать несколько строк в исходнике netio.c и заного собрать сервер:
switch (mode) { case IAC: switch (cp) { case WILL: case WONT: case DO: case DONT: mode = cp; continue;
case IAC: mode = 0; break;
default: /* Ignore */ mode = 0; continue; } break;
case WILL: case WONT: pr_netio_printf(out_nstrm, "%c%c%c", IAC, DONT, cp); mode = 0; continue;
case DO: case DONT: pr_netio_printf(out_nstrm, "%c%c%c", IAC, WONT, cp); mode = 0; continue;
default: if (cp == IAC) { mode = cp; continue; } break; }
Проблема, собственно, очень известная и заключается в том, что код кириллической "я" (255) совпадает с IAC протокола telnet. И не секрет, что proftpd весь трафик пропускат через telnet-фильтр.
Собственно, проблема решается за 5 минут, проблем возникнуть не должно.
|