Changeset 914c693 in mainline for uspace/lib/c/generic/async/client.c


Ignore:
Timestamp:
2018-07-08T19:25:52Z (7 years ago)
Author:
Martin Decky <martin@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
87337dc5
Parents:
d4475a44
Message:

remove obsolete non-interface connection routines

File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/lib/c/generic/async/client.c

    rd4475a44 r914c693  
    694694
    695695static errno_t async_connect_me_to_internal(cap_phone_handle_t phone,
    696     sysarg_t arg1, sysarg_t arg2, sysarg_t arg3, sysarg_t arg4,
     696    iface_t iface, sysarg_t arg2, sysarg_t arg3, sysarg_t flags,
    697697    cap_phone_handle_t *out_phone)
    698698{
     
    710710        msg->wdata.active = true;
    711711
    712         ipc_call_async_4(phone, IPC_M_CONNECT_ME_TO, arg1, arg2, arg3, arg4,
    713             msg, reply_received);
     712        ipc_call_async_4(phone, IPC_M_CONNECT_ME_TO, (sysarg_t) iface, arg2,
     713            arg3, flags, msg, reply_received);
    714714
    715715        errno_t rc;
     
    721721        *out_phone = (cap_phone_handle_t) IPC_GET_ARG5(result);
    722722        return EOK;
    723 }
    724 
    725 /** Wrapper for making IPC_M_CONNECT_ME_TO calls using the async framework.
    726  *
    727  * Ask through for a new connection to some service.
    728  *
    729  * @param mgmt Exchange management style.
    730  * @param exch Exchange for sending the message.
    731  * @param arg1 User defined argument.
    732  * @param arg2 User defined argument.
    733  * @param arg3 User defined argument.
    734  *
    735  * @return New session on success or NULL on error.
    736  *
    737  */
    738 async_sess_t *async_connect_me_to(exch_mgmt_t mgmt, async_exch_t *exch,
    739     sysarg_t arg1, sysarg_t arg2, sysarg_t arg3)
    740 {
    741         if (exch == NULL) {
    742                 errno = ENOENT;
    743                 return NULL;
    744         }
    745 
    746         async_sess_t *sess = (async_sess_t *) malloc(sizeof(async_sess_t));
    747         if (sess == NULL) {
    748                 errno = ENOMEM;
    749                 return NULL;
    750         }
    751 
    752         cap_phone_handle_t phone;
    753         errno_t rc = async_connect_me_to_internal(exch->phone, arg1, arg2, arg3,
    754             0, &phone);
    755         if (rc != EOK) {
    756                 errno = rc;
    757                 free(sess);
    758                 return NULL;
    759         }
    760 
    761         sess->iface = 0;
    762         sess->mgmt = mgmt;
    763         sess->phone = phone;
    764         sess->arg1 = arg1;
    765         sess->arg2 = arg2;
    766         sess->arg3 = arg3;
    767 
    768         fibril_mutex_initialize(&sess->remote_state_mtx);
    769         sess->remote_state_data = NULL;
    770 
    771         list_initialize(&sess->exch_list);
    772         fibril_mutex_initialize(&sess->mutex);
    773         atomic_set(&sess->refcnt, 0);
    774 
    775         return sess;
    776723}
    777724
     
    789736 *
    790737 */
    791 async_sess_t *async_connect_me_to_iface(async_exch_t *exch, iface_t iface,
     738async_sess_t *async_connect_me_to(async_exch_t *exch, iface_t iface,
    792739    sysarg_t arg2, sysarg_t arg3)
    793740{
     
    838785 * tagging.
    839786 */
    840 void async_sess_args_set(async_sess_t *sess, sysarg_t arg1, sysarg_t arg2,
     787void async_sess_args_set(async_sess_t *sess, iface_t iface, sysarg_t arg2,
    841788    sysarg_t arg3)
    842789{
    843         sess->arg1 = arg1;
     790        sess->arg1 = iface;
    844791        sess->arg2 = arg2;
    845792        sess->arg3 = arg3;
    846 }
    847 
    848 /** Wrapper for making IPC_M_CONNECT_ME_TO calls using the async framework.
    849  *
    850  * Ask through phone for a new connection to some service and block until
    851  * success.
    852  *
    853  * @param mgmt Exchange management style.
    854  * @param exch Exchange for sending the message.
    855  * @param arg1 User defined argument.
    856  * @param arg2 User defined argument.
    857  * @param arg3 User defined argument.
    858  *
    859  * @return New session on success or NULL on error.
    860  *
    861  */
    862 async_sess_t *async_connect_me_to_blocking(exch_mgmt_t mgmt, async_exch_t *exch,
    863     sysarg_t arg1, sysarg_t arg2, sysarg_t arg3)
    864 {
    865         if (exch == NULL) {
    866                 errno = ENOENT;
    867                 return NULL;
    868         }
    869 
    870         async_sess_t *sess = (async_sess_t *) malloc(sizeof(async_sess_t));
    871         if (sess == NULL) {
    872                 errno = ENOMEM;
    873                 return NULL;
    874         }
    875 
    876         cap_phone_handle_t phone;
    877         errno_t rc = async_connect_me_to_internal(exch->phone, arg1, arg2, arg3,
    878             IPC_FLAG_BLOCKING, &phone);
    879 
    880         if (rc != EOK) {
    881                 errno = rc;
    882                 free(sess);
    883                 return NULL;
    884         }
    885 
    886         sess->iface = 0;
    887         sess->mgmt = mgmt;
    888         sess->phone = phone;
    889         sess->arg1 = arg1;
    890         sess->arg2 = arg2;
    891         sess->arg3 = arg3;
    892 
    893         fibril_mutex_initialize(&sess->remote_state_mtx);
    894         sess->remote_state_data = NULL;
    895 
    896         list_initialize(&sess->exch_list);
    897         fibril_mutex_initialize(&sess->mutex);
    898         atomic_set(&sess->refcnt, 0);
    899 
    900         return sess;
    901793}
    902794
     
    914806 *
    915807 */
    916 async_sess_t *async_connect_me_to_blocking_iface(async_exch_t *exch, iface_t iface,
     808async_sess_t *async_connect_me_to_blocking(async_exch_t *exch, iface_t iface,
    917809    sysarg_t arg2, sysarg_t arg3)
    918810{
Note: See TracChangeset for help on using the changeset viewer.