Socket handles exceeding internal limit cause various issues, including memory corruption

Description

jsocket checks that socket handles thatt exceed our internal hard-wired limit (32k) are caught and throws an exception 'handle too large'.
Unfortunately there were various places where this check was a little too late and the high handle number caused a fixed size structure to be overrun, causing memory corruption.
This was typically seen subsequently as a SIGSEGV with a corrupt stack.

There were also places where this exception wasn't handled well by dafilesrv, causing the socket not to be closed or dafilersv to exit.

Conclusion

None

Activity

Show:
Fixed
Pinned fields
Click on the next to a field label to start pinning.

Details

Components

Assignee

Reporter

Priority

Fix versions

Created May 26, 2015 at 11:29 AM
Updated May 27, 2015 at 3:27 PM
Resolved May 27, 2015 at 3:27 PM

Flag notifications