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