Changeset a46e56b in mainline for uspace/lib/c/generic/inetping.c
- Timestamp:
- 2018-03-22T06:49:35Z (6 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 77f0a1d
- Parents:
- 3e242d2
- git-author:
- Jakub Jermar <jakub@…> (2018-03-21 23:29:06)
- git-committer:
- Jakub Jermar <jakub@…> (2018-03-22 06:49:35)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/lib/c/generic/inetping.c
r3e242d2 ra46e56b 150 150 } 151 151 152 static void inetping_ev_recv(cap_call_handle_t i id, ipc_call_t *icall)152 static void inetping_ev_recv(cap_call_handle_t icall_handle, ipc_call_t *icall) 153 153 { 154 154 inetping_sdu_t sdu; … … 156 156 sdu.seq_no = IPC_GET_ARG1(*icall); 157 157 158 cap_call_handle_t c allid;158 cap_call_handle_t chandle; 159 159 size_t size; 160 if (!async_data_write_receive(&c allid, &size)) {161 async_answer_0(c allid, EREFUSED);162 async_answer_0(i id, EREFUSED);160 if (!async_data_write_receive(&chandle, &size)) { 161 async_answer_0(chandle, EREFUSED); 162 async_answer_0(icall_handle, EREFUSED); 163 163 return; 164 164 } 165 165 166 166 if (size != sizeof(sdu.src)) { 167 async_answer_0(c allid, EINVAL);168 async_answer_0(i id, EINVAL);169 return; 170 } 171 172 errno_t rc = async_data_write_finalize(c allid, &sdu.src, size);173 if (rc != EOK) { 174 async_answer_0(c allid, rc);175 async_answer_0(i id, rc);176 return; 177 } 178 179 if (!async_data_write_receive(&c allid, &size)) {180 async_answer_0(c allid, EREFUSED);181 async_answer_0(i id, EREFUSED);167 async_answer_0(chandle, EINVAL); 168 async_answer_0(icall_handle, EINVAL); 169 return; 170 } 171 172 errno_t rc = async_data_write_finalize(chandle, &sdu.src, size); 173 if (rc != EOK) { 174 async_answer_0(chandle, rc); 175 async_answer_0(icall_handle, rc); 176 return; 177 } 178 179 if (!async_data_write_receive(&chandle, &size)) { 180 async_answer_0(chandle, EREFUSED); 181 async_answer_0(icall_handle, EREFUSED); 182 182 return; 183 183 } 184 184 185 185 if (size != sizeof(sdu.dest)) { 186 async_answer_0(c allid, EINVAL);187 async_answer_0(i id, EINVAL);188 return; 189 } 190 191 rc = async_data_write_finalize(c allid, &sdu.dest, size);192 if (rc != EOK) { 193 async_answer_0(c allid, rc);194 async_answer_0(i id, rc);186 async_answer_0(chandle, EINVAL); 187 async_answer_0(icall_handle, EINVAL); 188 return; 189 } 190 191 rc = async_data_write_finalize(chandle, &sdu.dest, size); 192 if (rc != EOK) { 193 async_answer_0(chandle, rc); 194 async_answer_0(icall_handle, rc); 195 195 return; 196 196 } … … 198 198 rc = async_data_write_accept(&sdu.data, false, 0, 0, 0, &sdu.size); 199 199 if (rc != EOK) { 200 async_answer_0(i id, rc);200 async_answer_0(icall_handle, rc); 201 201 return; 202 202 } … … 204 204 rc = inetping_ev_ops->recv(&sdu); 205 205 free(sdu.data); 206 async_answer_0(i id, rc);207 } 208 209 static void inetping_cb_conn(cap_call_handle_t i id, ipc_call_t *icall, void *arg)206 async_answer_0(icall_handle, rc); 207 } 208 209 static void inetping_cb_conn(cap_call_handle_t icall_handle, ipc_call_t *icall, void *arg) 210 210 { 211 211 while (true) { 212 212 ipc_call_t call; 213 cap_call_handle_t c allid= async_get_call(&call);213 cap_call_handle_t chandle = async_get_call(&call); 214 214 215 215 if (!IPC_GET_IMETHOD(call)) { … … 220 220 switch (IPC_GET_IMETHOD(call)) { 221 221 case INETPING_EV_RECV: 222 inetping_ev_recv(c allid, &call);222 inetping_ev_recv(chandle, &call); 223 223 break; 224 224 default: 225 async_answer_0(c allid, ENOTSUP);225 async_answer_0(chandle, ENOTSUP); 226 226 } 227 227 }
Note:
See TracChangeset
for help on using the changeset viewer.