Changes in uspace/lib/c/generic/async.c [9934f7d:1c6436a] in mainline
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/lib/c/generic/async.c
r9934f7d r1c6436a 166 166 /** Call data of the opening call. */ 167 167 ipc_call_t call; 168 /** Local argument or NULL if none. */169 void *carg;170 168 171 169 /** Identification of the closing call. */ … … 173 171 174 172 /** Fibril function that will be used to handle the connection. */ 175 async_client_conn_t cfibril;173 void (*cfibril)(ipc_callid_t, ipc_call_t *); 176 174 } connection_t; 177 175 … … 213 211 * This function is defined as a weak symbol - to be redefined in user code. 214 212 * 215 * @param callid Hash of the incoming call. 216 * @param call Data of the incoming call. 217 * @param arg Local argument 218 * 219 */ 220 static void default_client_connection(ipc_callid_t callid, ipc_call_t *call, 221 void *arg) 213 * @param callid Hash of the incoming call. 214 * @param call Data of the incoming call. 215 * 216 */ 217 static void default_client_connection(ipc_callid_t callid, ipc_call_t *call) 222 218 { 223 219 ipc_answer_0(callid, ENOENT); … … 228 224 * This function is defined as a weak symbol - to be redefined in user code. 229 225 * 230 * @param callid Hash of the incoming call. 231 * @param call Data of the incoming call. 232 * @param arg Local argument. 226 * @param callid Hash of the incoming call. 227 * @param call Data of the incoming call. 233 228 * 234 229 */ … … 238 233 239 234 static async_client_conn_t client_connection = default_client_connection; 240 static async_ interrupt_handler_t interrupt_received = default_interrupt_received;235 static async_client_conn_t interrupt_received = default_interrupt_received; 241 236 242 237 /** Setter for client_connection function pointer. … … 255 250 * notification fibril. 256 251 */ 257 void async_set_interrupt_received(async_ interrupt_handler_t intr)252 void async_set_interrupt_received(async_client_conn_t intr) 258 253 { 259 254 interrupt_received = intr; … … 638 633 */ 639 634 fibril_connection->cfibril(fibril_connection->callid, 640 &fibril_connection->call , fibril_connection->carg);635 &fibril_connection->call); 641 636 642 637 /* … … 709 704 * @param cfibril Fibril function that should be called upon opening the 710 705 * connection. 711 * @param carg Extra argument to pass to the connection fibril712 706 * 713 707 * @return New fibril id or NULL on failure. … … 716 710 fid_t async_new_connection(sysarg_t in_task_hash, sysarg_t in_phone_hash, 717 711 ipc_callid_t callid, ipc_call_t *call, 718 async_client_conn_t cfibril , void *carg)712 async_client_conn_t cfibril) 719 713 { 720 714 connection_t *conn = malloc(sizeof(*conn)); … … 731 725 conn->callid = callid; 732 726 conn->close_callid = 0; 733 conn->carg = carg;734 727 735 728 if (call) … … 786 779 /* Open new connection with fibril, etc. */ 787 780 async_new_connection(call->in_task_hash, IPC_GET_ARG5(*call), 788 callid, call, client_connection , NULL);781 callid, call, client_connection); 789 782 return; 790 783 } … … 1421 1414 */ 1422 1415 int async_connect_to_me(async_exch_t *exch, sysarg_t arg1, sysarg_t arg2, 1423 sysarg_t arg3, async_client_conn_t client_receiver , void *carg)1416 sysarg_t arg3, async_client_conn_t client_receiver) 1424 1417 { 1425 1418 if (exch == NULL) … … 1435 1428 if (client_receiver != NULL) 1436 1429 async_new_connection(task_hash, phone_hash, 0, NULL, 1437 client_receiver , carg);1430 client_receiver); 1438 1431 1439 1432 return EOK;
Note:
See TracChangeset
for help on using the changeset viewer.