Я пишу модуль, который экспортирует интерфейс, похожий на send
и recv
.
Поскольку эти функции должны возвращать соответственно количество отправленных и полученных байтов, я не могу правильно управлять ошибками, как обычно (то есть, используя перечисления и возвращая мнемонические значения).
Должен ли я в такой ситуации установить errno
, как это делает стандартная библиотека? Если да, то, поскольку errno
зависит от потока, существует ли особый способ записи на нем, или я могу просто присвоить ему значение?
Изменить: экспериментируя, я заметил, что настройка errno
по назначению работает. Тем не менее: это безопасно и портативно для любой системы?
errno
и стандартах C, см. На странице stackoverflow.com/questions/12945486 - person Nemo   schedule 02.11.2012