vostok: сервер Gemini, версия 0.1.1

Новая минорная версия получилась какой-то немного выстраданной. Я довольно быстро поймал SIGPIPE, но хотел поднакопить ещё изменений, что бы новая версия стала более содержательной. Но время шло, а я переключился на другие задачи. Но это не значит, что я сворачиваю разработку сервера vostok. Просто пока буду уделять ему чуть меньше времени.

Предыдущая запись блога разработки

Что нового в версии 0.1.1:

Сигнал SIGPIPE

Тут все просто до безобразия: сигнал SIGPIPE возникает в случае, когда происходит запись в сокет, который уже закрыт другой стороной. В контексте сервера это проявляется, если клиентская сторона закроет соединение до того, как сервер полностью запишет Gemini ответ в сокет. Такого поведения нетрудно добиться при скачивании больших файлов. Поведение по умолчанию при получении такого сигнала - завершение процесса. Хотя в случае сервера vostok это штатная ситуация, которая просто должна быть проигнорирована. Что и было сделано в новой версии.

Следующая запись блога разработки