Changeset 84239b1 in mainline for uspace/lib/hound/src/protocol.c


Ignore:
Timestamp:
2018-03-11T19:39:11Z (7 years ago)
Author:
Jiri Svoboda <jiri@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
f3d47c97
Parents:
850fd32
Message:

And there was much fixing.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/lib/hound/src/protocol.c

    r850fd32 r84239b1  
    7373                uint8_t channels;
    7474                uint8_t format;
    75         } f __attribute__((packed));
     75        } __attribute__((packed)) f;
    7676        sysarg_t arg;
    7777} format_convert_t;
     
    385385void hound_connection_handler(ipc_callid_t iid, ipc_call_t *icall, void *arg)
    386386{
     387        hound_context_id_t id;
     388        errno_t ret;
     389        int flags;
     390        void *source;
     391        void *sink;
     392
    387393        /* Accept connection if there is a valid iface*/
    388394        if (server_iface) {
     
    397403                ipc_callid_t callid = async_get_call(&call);
    398404                switch (IPC_GET_IMETHOD(call)) {
    399                 case IPC_M_HOUND_CONTEXT_REGISTER: {
     405                case IPC_M_HOUND_CONTEXT_REGISTER:
    400406                        /* check interface functions */
    401407                        if (!server_iface || !server_iface->add_context) {
     
    407413
    408414                        /* Get context name */
    409                         errno_t ret =
    410                             async_data_write_accept(&name, true, 0, 0, 0, 0);
     415                        ret = async_data_write_accept(&name, true, 0, 0, 0, 0);
    411416                        if (ret != EOK) {
    412417                                async_answer_0(callid, ret);
    413418                                break;
    414419                        }
    415                         hound_context_id_t id = 0;
     420
     421                        id = 0;
    416422                        ret = server_iface->add_context(server_iface->server,
    417423                            &id, name, record);
     
    424430                        }
    425431                        break;
    426                 }
    427                 case IPC_M_HOUND_CONTEXT_UNREGISTER: {
     432                case IPC_M_HOUND_CONTEXT_UNREGISTER:
    428433                        /* check interface functions */
    429434                        if (!server_iface || !server_iface->rem_context) {
     
    433438
    434439                        /* get id, 1st param */
    435                         hound_context_id_t id = IPC_GET_ARG1(call);
    436                         const errno_t ret =
    437                             server_iface->rem_context(server_iface->server, id);
     440                        id = IPC_GET_ARG1(call);
     441                        ret = server_iface->rem_context(server_iface->server,
     442                            id);
    438443                        async_answer_0(callid, ret);
    439444                        break;
    440                 }
    441                 case IPC_M_HOUND_GET_LIST: {
     445                case IPC_M_HOUND_GET_LIST:
    442446                        /* check interface functions */
    443447                        if (!server_iface || !server_iface->get_list) {
     
    447451
    448452                        char **list = NULL;
    449                         const int flags = IPC_GET_ARG1(call);
     453                        flags = IPC_GET_ARG1(call);
    450454                        size_t count = IPC_GET_ARG2(call);
    451455                        const bool conn = IPC_GET_ARG3(call);
    452456                        char *conn_name = NULL;
    453                         errno_t ret = EOK;
     457                        ret = EOK;
    454458
    455459                        /* get connected actor name if provided */
     
    501505                        free(list);
    502506                        break;
    503                 }
    504                 case IPC_M_HOUND_CONNECT: {
     507                case IPC_M_HOUND_CONNECT:
    505508                        /* check interface functions */
    506509                        if (!server_iface || !server_iface->connect) {
     
    509512                        }
    510513
    511                         void *source = NULL;
    512                         void *sink = NULL;
     514                        source = NULL;
     515                        sink = NULL;
    513516
    514517                        /* read source name */
    515                         errno_t ret =
    516                             async_data_write_accept(&source, true, 0, 0, 0, 0);
     518                        ret = async_data_write_accept(&source, true, 0, 0, 0,
     519                            0);
    517520                        /* read sink name */
    518521                        if (ret == EOK)
     
    527530                        async_answer_0(callid, ret);
    528531                        break;
    529                 }
    530                 case IPC_M_HOUND_DISCONNECT: {
     532                case IPC_M_HOUND_DISCONNECT:
    531533                        /* check interface functions */
    532534                        if (!server_iface || !server_iface->disconnect) {
     
    535537                        }
    536538
    537                         void *source = NULL;
    538                         void *sink = NULL;
     539                        source = NULL;
     540                        sink = NULL;
    539541
    540542                        /* read source name */
    541                         errno_t ret =
    542                             async_data_write_accept(&source, true, 0, 0, 0, 0);
     543                        ret = async_data_write_accept(&source, true, 0, 0, 0,
     544                            0);
    543545                        /*read sink name */
    544546                        if (ret == EOK)
     
    552554                        async_answer_0(callid, ret);
    553555                        break;
    554                 }
    555                 case IPC_M_HOUND_STREAM_ENTER: {
     556                case IPC_M_HOUND_STREAM_ENTER:
    556557                        /* check interface functions */
    557558                        if (!server_iface || !server_iface->is_record_context
     
    563564
    564565                        /* get parameters */
    565                         hound_context_id_t id = IPC_GET_ARG1(call);
    566                         const int flags = IPC_GET_ARG2(call);
     566                        id = IPC_GET_ARG1(call);
     567                        flags = IPC_GET_ARG2(call);
    567568                        const format_convert_t c = {.arg = IPC_GET_ARG3(call)};
    568569                        const pcm_format_t f = {
     
    574575
    575576                        void *stream;
    576                         errno_t ret = server_iface->add_stream(server_iface->server,
     577                        ret = server_iface->add_stream(server_iface->server,
    577578                            id, flags, f, bsize, &stream);
    578579                        if (ret != EOK) {
     
    604605                        }
    605606                        break;
    606                 }
    607607                case IPC_M_HOUND_STREAM_EXIT:
    608608                case IPC_M_HOUND_STREAM_DRAIN:
Note: See TracChangeset for help on using the changeset viewer.