Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/lib/c/generic/ipc.c

    rab34cc9 r10477601  
    4747#include <futex.h>
    4848#include <fibril.h>
    49 #include <macros.h>
    5049
    5150/**
     
    459458        while (!list_empty(&queued_calls)) {
    460459                async_call_t *call =
    461                     list_get_instance(list_first(&queued_calls), async_call_t, list);
     460                    list_get_instance(queued_calls.next, async_call_t, list);
    462461                ipc_callid_t callid =
    463462                    ipc_call_async_internal(call->u.msg.phoneid, &call->u.msg.data);
     
    512511       
    513512        link_t *item;
    514         for (item = dispatched_calls.head.next; item != &dispatched_calls.head;
     513        for (item = dispatched_calls.next; item != &dispatched_calls;
    515514            item = item->next) {
    516515                async_call_t *call =
     
    612611/** Request callback connection.
    613612 *
    614  * The @a task_id and @a phonehash identifiers returned
     613 * The @a taskhash and @a phonehash identifiers returned
    615614 * by the kernel can be used for connection tracking.
    616615 *
     
    619618 * @param arg2      User defined argument.
    620619 * @param arg3      User defined argument.
    621  * @param task_id   Identifier of the client task.
     620 * @param taskhash  Opaque identifier of the client task.
    622621 * @param phonehash Opaque identifier of the phone that will
    623622 *                  be used for incoming calls.
     
    627626 */
    628627int ipc_connect_to_me(int phoneid, sysarg_t arg1, sysarg_t arg2, sysarg_t arg3,
    629     task_id_t *task_id, sysarg_t *phonehash)
    630 {
    631         ipc_call_t data;
    632         int rc = __SYSCALL6(SYS_IPC_CALL_SYNC_FAST, phoneid,
    633             IPC_M_CONNECT_TO_ME, arg1, arg2, arg3, (sysarg_t) &data);
    634         if (rc == EOK) {
    635                 *task_id = data.in_task_id;
    636                 *phonehash = IPC_GET_ARG5(data);
    637         }       
    638         return rc;
    639 }
    640 
    641 /** Request cloned connection.
    642  *
    643  * @param phoneid Phone handle used for contacting the other side.
    644  *
    645  * @return Cloned phone handle on success or a negative error code.
    646  *
    647  */
    648 int ipc_connect_me(int phoneid)
    649 {
    650         sysarg_t newphid;
    651         int res = ipc_call_sync_0_5(phoneid, IPC_M_CONNECT_ME, NULL, NULL,
    652             NULL, NULL, &newphid);
    653         if (res)
    654                 return res;
    655        
    656         return newphid;
     628    sysarg_t *taskhash, sysarg_t *phonehash)
     629{
     630        return ipc_call_sync_3_5(phoneid, IPC_M_CONNECT_TO_ME, arg1, arg2,
     631            arg3, NULL, NULL, NULL, taskhash, phonehash);
    657632}
    658633
Note: See TracChangeset for help on using the changeset viewer.