Describe the bug
The conversion from the OS_FdSet to the internal fd_set inside OS_FdSet_ConvertIn_Impl() will ignore filehandles for which the selectable flag is not set. The select() is then called without this file included in the set, and the result is returned.
This is misleading because the user is not aware that the implementation ignored one (or more) if the filehandles in the set. If the user requested it by including in the set, it should return an error to the caller, not silently ignore.
To Reproduce
Now exposed by unit tests in the current IC (this makes the function no longer return OS_ERR_OPERATION_NOT_SUPPORTED and the test that should be skipped is not actually skipped because of this).
Expected behavior
Return an error instead of silently ignoring the handle for which select() cannot be done.
System observed on:
RTEMS 4.11.3
Reporter Info
Joseph Hickey, Vantage Systems, Inc.
Describe the bug
The conversion from the
OS_FdSetto the internalfd_setinside OS_FdSet_ConvertIn_Impl() will ignore filehandles for which theselectableflag is not set. The select() is then called without this file included in the set, and the result is returned.This is misleading because the user is not aware that the implementation ignored one (or more) if the filehandles in the set. If the user requested it by including in the set, it should return an error to the caller, not silently ignore.
To Reproduce
Now exposed by unit tests in the current IC (this makes the function no longer return OS_ERR_OPERATION_NOT_SUPPORTED and the test that should be skipped is not actually skipped because of this).
Expected behavior
Return an error instead of silently ignoring the handle for which select() cannot be done.
System observed on:
RTEMS 4.11.3
Reporter Info
Joseph Hickey, Vantage Systems, Inc.