40 #ifndef __RW_STATUS_H__
41 #define __RW_STATUS_H__
62 #define make_status_int(STATE, REASON, ERRNO) \
63 ( ((((unsigned int)(STATE)) & 0xff) <<24) \
64 | ((((unsigned int)(REASON)) & 0xff) <<16) \
65 | ((((unsigned int)(ERRNO)) & 0xffff) <<00) \
68 #define make_read_status(STATE, REASON, ERRNO)\
69 ((EST_read_status)(make_status_int(STATE, REASON, ERRNO)))
71 #define make_write_status(STATE, REASON, ERRNO) \
72 ((EST_write_status)(make_status_int(REASON, STATE, ERRNO)))
78 #define get_rw_state(STATUS) \
79 ((EST_rw_state)((((unsigned int)(STATUS)) >> 24) & 0xff))
80 #define get_rw_reason(STATUS) \
81 ((EST_rw_reason)((((unsigned int)(STATUS)) >> 16) & 0xff))
82 #define get_rw_errno(STATUS) \
83 ((int)((((unsigned int)(STATUS)) >> 0) & 0xff))
111 enum EST_read_status {
113 read_ok = make_status_int(rws_ok, rwr_none, 0),
115 read_format_error = make_status_int(rws_failed, rwr_format, 0),
117 read_not_found_error = make_status_int(rws_failed, rwr_existance, 0),
119 read_error = make_status_int(rws_failed, rwr_unknown, 0)
124 enum EST_write_status {
126 write_ok = make_status_int(rws_ok, rwr_none, 0),
128 write_fail = make_status_int(rws_failed, rwr_unknown, 0),
130 write_error = make_status_int(rws_failed, rwr_unknown, 0),
132 write_partial = make_status_int(rws_partial, rwr_unknown, 0)
136 enum EST_connect_status {
138 connect_ok = make_status_int(rws_ok, rwr_none, 0),
140 connect_not_found_error = make_status_int(rws_failed, rwr_existance, 0),
142 connect_not_allowed_error = make_status_int(rws_failed, rwr_permission, 0),
144 connect_system_error = make_status_int(rws_failed, rwr_system, 0),
146 connect_error = make_status_int(rws_failed, rwr_unknown, 0)
159 #define format_ok read_ok
160 #define wrong_format read_format_error
161 #define misc_read_error read_error
162 #define misc_write_error write_error