BIND 10 #1542: socket creator protocol should distinguish socket level and other errors
BIND 10 Development
do-not-reply at isc.org
Wed Jan 4 22:28:22 UTC 2012
#1542: socket creator protocol should distinguish socket level and other errors
-------------------------------------+-------------------------------------
Reporter: jinmei | Owner:
Type: defect | Status: new
Priority: blocker | Milestone: Next-
Component: Boss of BIND | Sprint-Proposed
Sensitive: 0 | Keywords:
Sub-Project: DNS | Defect Severity: N/A
Estimated Difficulty: 0 | Feature Depending on Ticket:
Total Hours: 0 | Add Hours to Ticket: 0
| Internal?: 0
-------------------------------------+-------------------------------------
Currently (based on master and #1522), if (e.g.) a requested socket
cannot be created or bound to the specified address/port (such as
due to missing privilege or duplicate use), the boss simply returns a
CC message with the rcode of 1. The requestor code will then throw
CCSessionError.
Since the non 0 return code and CCSessionError from the requestor can
happen for other unusual errors (such as connection reset or bogus
return data from the boss, possibly due to a bug), the application
won't be able to detect how serious this situation is and how/whether
to recover from this situation.
The boss should return a specific result code or something for the
possible and more likely-to-happen errors like a socket binding
failure from other errors (e.g., it could return a specific non 0
rcode for this purpose). The requestor should also distinguish these
cases for the return value to the caller.
I'd personally suggest using a non exception way for socket level
errors, but it could also be a separate exception than CCSessionError
and SocketError.
--
Ticket URL: <http://bind10.isc.org/ticket/1542>
BIND 10 Development <http://bind10.isc.org>
BIND 10 Development
More information about the bind10-tickets
mailing list