Ignore:
Timestamp:
2018-07-05T09:34:09Z (6 years ago)
Author:
Martin Decky <martin@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
63d46341
Parents:
76f566d
Message:

do not expose the call capability handler from the async framework

Keep the call capability handler encapsulated within the async framework
and do not expose it explicitly via its API. Use the pointer to
ipc_call_t as the sole object identifying an IPC call in the code that
uses the async framework.

This plugs a major leak in the abstraction and also simplifies both the
async framework (slightly) and all IPC servers.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/lib/drv/generic/remote_led_dev.c

    r76f566d r984a9ba  
    4141#include <ddf/driver.h>
    4242
    43 static void remote_led_color_set(ddf_fun_t *, void *, cap_call_handle_t,
    44     ipc_call_t *);
     43static void remote_led_color_set(ddf_fun_t *, void *, ipc_call_t *);
    4544
    4645/** Remote LED interface operations */
     
    6665 *
    6766 */
    68 static void remote_led_color_set(ddf_fun_t *fun, void *ops, cap_call_handle_t chandle,
    69     ipc_call_t *call)
     67static void remote_led_color_set(ddf_fun_t *fun, void *ops, ipc_call_t *call)
    7068{
    7169        led_dev_ops_t *led_dev_ops = (led_dev_ops_t *) ops;
     
    7371
    7472        if (!led_dev_ops->color_set) {
    75                 async_answer_0(chandle, ENOTSUP);
     73                async_answer_0(call, ENOTSUP);
    7674                return;
    7775        }
    7876
    7977        errno_t rc = (*led_dev_ops->color_set)(fun, color);
    80         async_answer_0(chandle, rc);
     78        async_answer_0(call, rc);
    8179}
    8280
Note: See TracChangeset for help on using the changeset viewer.