Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/lib/device/src/bd_srv.c

    rc1383cd r5fc8244  
    11/*
    2  * Copyright (c) 2025 Jiri Svoboda
     2 * Copyright (c) 2012 Jiri Svoboda
    33 * All rights reserved.
    44 *
     
    2727 */
    2828
    29 /** @addtogroup libdevice
     29/** @addtogroup libc
    3030 * @{
    3131 */
     
    5656        ipc_call_t rcall;
    5757        if (!async_data_read_receive(&rcall, &size)) {
    58                 async_answer_0(&rcall, EINVAL);
    5958                async_answer_0(call, EINVAL);
    6059                return;
     
    7776        rc = srv->srvs->ops->read_blocks(srv, ba, cnt, buf, size);
    7877        if (rc != EOK) {
    79                 async_answer_0(&rcall, rc);
    80                 async_answer_0(call, rc);
     78                async_answer_0(&rcall, ENOMEM);
     79                async_answer_0(call, ENOMEM);
    8180                free(buf);
    8281                return;
     
    10099        ipc_call_t rcall;
    101100        if (!async_data_read_receive(&rcall, &size)) {
    102                 async_answer_0(&rcall, EINVAL);
    103101                async_answer_0(call, EINVAL);
    104102                return;
     
    121119        rc = srv->srvs->ops->read_toc(srv, session, buf, size);
    122120        if (rc != EOK) {
    123                 async_answer_0(&rcall, rc);
    124                 async_answer_0(call, rc);
     121                async_answer_0(&rcall, ENOMEM);
     122                async_answer_0(call, ENOMEM);
    125123                free(buf);
    126124                return;
     
    206204}
    207205
    208 static void bd_eject_srv(bd_srv_t *srv, ipc_call_t *call)
    209 {
    210         errno_t rc;
    211 
    212         if (srv->srvs->ops->eject == NULL) {
    213                 async_answer_0(call, ENOTSUP);
    214                 return;
    215         }
    216 
    217         rc = srv->srvs->ops->eject(srv);
    218         async_answer_0(call, rc);
    219 }
    220 
    221206static bd_srv_t *bd_srv_create(bd_srvs_t *srvs)
    222207{
     
    289274                        bd_get_num_blocks_srv(srv, &call);
    290275                        break;
    291                 case BD_EJECT:
    292                         bd_eject_srv(srv, &call);
    293                         break;
    294276                default:
    295277                        async_answer_0(&call, EINVAL);
Note: See TracChangeset for help on using the changeset viewer.