indexing
	description: "Resources require for EiffelNet."
	status: "See notice at end of class"
	date: "$Date$"
	revision: "$Revision$"

class interface
	SOCKET_RESOURCES

feature -- Status report

	address_in_use: BOOLEAN
			-- Address is in use by another socket.

	address_not_readable: BOOLEAN
			-- Unreadable address

	already_bound: BOOLEAN
			-- Socket has already been bound.

	bad_socket_handle: BOOLEAN
			-- Socket descriptor is bad.

	connect_in_progress: BOOLEAN
			-- Call to connect returned on a non-blocking socket.

	connection_refused: BOOLEAN
			-- Connection is refused (possibly due to security).

	dtable_full: BOOLEAN
			-- Descriptor table is full

	error: STRING
			-- Output a related error message.

	error_number: INTEGER
			-- Returned error number

	expired_socket: BOOLEAN
			-- Socket connection has expired.

	invalid_address: BOOLEAN
			-- Address is not valid.

	invalid_socket_handle: BOOLEAN
			-- Socket descriptor is not valid.

	network: BOOLEAN
			-- Socket failed due to network problems.

	no_buffers: BOOLEAN
			-- No more buffers available

	no_permission: BOOLEAN
			-- No permission is given to user for this socket.

	not_connected: BOOLEAN
			-- Socket is not connect.

	protected_address: BOOLEAN
			-- No access to this address is allowed.

	protocol_not_supported: BOOLEAN
			-- Protocol is not supported on this platform.

	socket_family_not_supported: BOOLEAN
			-- Requested family is not supported.

	socket_in_use: BOOLEAN
			-- Socket is already in use.

	socket_ok: BOOLEAN
			-- No error

	socket_would_block: BOOLEAN
			-- Call to read, write, etc would have blocked.

	zero_option: BOOLEAN
			-- No options provided
	
feature -- Externals: flags for send, sendto recv and recvfrom socket calls

	c_msgdontroute: INTEGER
			-- Do not route message

	c_oobmsg: INTEGER
			-- Out of bound message

	c_peekmsg: INTEGER
			-- Peek message
	
invariant

		-- from ANY
	reflexive_equality: standard_is_equal (Current)
	reflexive_conformance: conforms_to (Current)

end -- class SOCKET_RESOURCES