zephyr/kernel
Andrew Boie 74f114caef userspace: easy checking for specific driver
In general driver system calls are implemented at a subsystem
layer. However, some drivers may have capabilities specific to
the hardware not covered by the subsystem API. Such drivers may
want to define their own system calls.

This macro makes it simple to validate in the driver-specific
system call handlers that not only does the untrusted device
pointer correspond to the expected subsystem, initialization
state, and caller permissions, but also that the device object
is an instance of a specific driver (and not just any driver in
that subsystem).

Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
2018-12-27 20:31:58 -05:00
..
include userspace: easy checking for specific driver 2018-12-27 20:31:58 -05:00
alert.c kernel: alert: Declare tracing variables only when needed. 2018-10-31 08:44:47 -04:00
atomic_c.c
CMakeLists.txt
compiler_stack_protect.c
device.c kernel: check retval of driver init 2018-12-07 19:33:23 -05:00
errno.c
idle.c kernel: Add 'U' to unsigned variable assignments 2018-12-04 22:51:56 -05:00
init.c kernel: init: Add nop instruction in main 2018-12-14 13:17:36 +01:00
int_latency_bench.c kernel: Add 'U' to unsigned variable assignments 2018-12-04 22:51:56 -05:00
Kconfig drivers/timer: Select tickless via driver kconfig flag 2018-11-13 17:10:07 -05:00
Kconfig.power_mgmt kernel: ensure System Power Managment enables Tickless Idle. 2018-11-21 23:16:35 -05:00
mailbox.c kernel: Delimiting the scope of some variables 2018-11-04 11:37:24 -05:00
mem_domain.c kernel: mem_domain: remove redundant clearing of mem_partition fields 2018-12-05 15:15:07 -05:00
mem_slab.c kernel: Add 'U' to unsigned variable assignments 2018-12-04 22:51:56 -05:00
mempool.c
msg_q.c kernel: msg_q: k_msgq_peek() implementation 2018-11-19 17:53:22 -05:00
mutex.c kernel: mutex: delay setting lock_count = 0. 2018-12-05 11:00:10 +01:00
pipes.c kernel: Delimiting the scope of some variables 2018-11-04 11:37:24 -05:00
poll.c kernel: poll: Fix switch usage 2018-12-07 09:06:34 -05:00
queue.c kernel: queue: Fix MISRA-C violation 2018-12-07 09:06:34 -05:00
sched.c misra: Fixes for MISRA-C rule 8.3 2018-12-07 09:06:34 -05:00
sem.c
smp.c
stack.c kernel: stack: Making if's body a compound statement 2018-11-04 11:37:24 -05:00
system_work_q.c
thread_abort.c
thread.c kernel: expose k_busy_wait() to user mode 2018-11-15 16:20:36 -05:00
timeout.c misra: Fixes for MISRA-C rule 8.3 2018-12-07 09:06:34 -05:00
timer.c misra: Fixes for MISRA-C rule 8.3 2018-12-07 09:06:34 -05:00
userspace_handler.c
userspace.c misra: Fixes for MISRA-C rule 8.3 2018-12-07 09:06:34 -05:00
version.c doc: add kernel version API to doxygen 2018-12-08 17:24:53 -05:00
work_q.c kernel: Use NULL instead of 0 2018-12-11 14:37:10 -08:00