PROP_SEND_SYCALL(3)

NAME
prop_array_send_syscall, prop_array_recv_syscall, prop_dictionary_send_syscall, prop_dictionary_recv_syscall - send and receive property lists to and from the kernel using syscalls

SYNOPSIS
#include <prop/proplib.h>
bool
prop_array_send_syscall(prop_array_t array, struct plistref *prefp);
bool
prop_array_recv_syscall(const struct plistref *prefp, prop_array_t *arrayp);
bool
prop_dictionary_send_syscall(prop_dictionary_t dict, struct plistref *prefp);
bool
prop_dictionary_recv_syscall(const struct plistref *prefp, prop_dictionary_t *dictp);

DESCRIPTION
The prop_array_send_syscall, prop_array_recv_syscall, prop_dictionary_send_syscall, and prop_dictionary_recv_syscall functions implement the user space side of a protocol for sending property lists to and from the kernel using syscall(2).

RETURN VALUES
If successful, the functions return true, false otherwise.

EXAMPLES
The following (simplified) example demonstrates using prop_dictionary_send_syscall() and prop_dictionary_recv_syscall() in an application:

    void
    foo_setprops(prop_dictionary_t dict)
    {
        struct pref pref;
        (void) prop_dictionary_send_syscall(dict, pref);
        (void) my_syscall_set(pref);
    }
    prop_dictionary_t
    foo_getprops(void)
    {
        prop_dictionary_t dict;
        struct pref pref;
        (void) my_syscall_get(pref);
        if (!prop_dictionary_recv_syscall(pref, dict))
            return (NULL);
        return (dict);
    }

SEE ALSO
prop_array(3), prop_dictionary(3), proplib(3), prop_copyin_ioctl(9)

HISTORY
The proplib property container object library first appeared in NetBSD 4.0.