| Предыдущий | Следующий |
| WSAEFAULT | WSAEMFILE |
WSAEINVAL
WSAEINVAL шире повреждённого целого числа или нулевого указателя. В Winsock он также может сообщать о вызове API, допустимом сам по себе, но недопустимом в текущей точке жизненного цикла сокета. Вызов accept до listen, выбор неподдерживаемого уровня параметра или использование флагов, противоречащих операции, являются частыми примерами.
Почему важен контекст
Один код может описывать ошибку формирования или конечного автомата. Дамп параметров может выглядеть корректно, тогда как предшествующие bind, listen, connect, shutdownили закрытие изменили набор допустимых вызовов. Считайте состояние сокета и последовательность вызовов частью входных данных.
Что зафиксировать
- Неудавшийся API и все переданные параметры, флаги, семейство, тип, протокол и длину адреса.
- Короткую трассировку жизненного цикла от создания сокета до неудавшегося вызова.
- Могут ли асинхронное уведомление или другой поток изменить сокет между проверкой и использованием.
Microsoft: предварительные условия accept · Microsoft: коды ошибок Winsock · The Open Group: интерфейс сокетов
Нужно найти другой код? Найти другой код состояния или ошибки.
