OpenSolaris

Printable Version Enter a New Search
Bug ID 6557513
Synopsis lx brand should support the FIOASYNC ioctl on sockets
State 10-Fix Delivered (Fix available in build)
Category:Subcategory kernel:brandz
Keywords
Responsible Engineer Edward Pilatowicz
Reported Against
Duplicate Of
Introduced In solaris_nevada
Commit to Fix snv_66
Fixed In snv_66
Release Fixed solaris_nevada(snv_66)
Related Bugs 6556585
Submit Date 15-May-2007
Last Update Date 7-June-2007
Description
BrandZ should support the FIOASYNC ioctl on sockets; at present an error is returned
with errno set to EINVAL.
This problem was discovered by the same user who found:
	6556585 lx brand emulation libray incorrectly translates F_SETOWN

after that bug was fixed, the Opnet application ran into this bug.

looking at the ioctl translators in the lx brand i see that                
currently the FIOASYNC is only premitted for streams devices, but               
looking at the kernel it seems that the socket code does indeed                 
implement these ioctls.  so it should be safe to permit FIOASYNC                
operations on sockets.

i still need to evaluate if there are other streams ioctls should be
directly supported on sockets.
looking at all the other streams ioctls, most (TIO* and TC*) are
all related to terminal io and don't apply to sockets.  the
only one that doesn't fall into this category that does seem
to apply is FIOSETOWN.  so the resultant fix is to enable
the following two ioctls for socket based file descriptors:
	FIOASYNC
	FIOSETOWN
Work Around
N/A
Comments
N/A