示例#1
0
/*
 * mount constants
 *
 */
    ssize_t
alcove_sys_mount_define(alcove_state_t *ap, const char *arg, size_t len,
        char *reply, size_t rlen)
{
    int index = 0;
    int rindex = 0;

    char name[MAXATOMLEN] = {0};

    /* flag */
    if (alcove_decode_atom(arg, len, &index, name) < 0)
        return -1;

    ALCOVE_ERR(alcove_encode_version(reply, rlen, &rindex));
    ALCOVE_ERR(alcove_encode_define(reply, rlen, &rindex,
                name, alcove_mount_constants));
    return rindex;
}
示例#2
0
/*
 * fcntl contants
 *
 */
    ssize_t
alcove_sys_fcntl_constant(alcove_state_t *ap, const char *arg, size_t len,
        char *reply, size_t rlen)
{
    int index = 0;
    int rindex = 0;

    char name[MAXATOMLEN] = {0};

    UNUSED(ap);

    /* constant */
    if (alcove_decode_atom(arg, len, &index, name) < 0)
        return -1;

    ALCOVE_ERR(alcove_encode_version(reply, rlen, &rindex));
    ALCOVE_ERR(alcove_encode_constant(reply, rlen, &rindex,
                name, alcove_fcntl_constants));

    return rindex;
}
示例#3
0
/*
 * syscalls
 *
 */
ssize_t
alcove_sys_syscall_define(alcove_state_t *ap, const char *arg, size_t len,
                          char *reply, size_t rlen)
{
#ifdef __linux__
    int index = 0;
    int rindex = 0;

    char name[MAXATOMLEN] = {0};

    /* name */
    if (alcove_decode_atom(arg, len, &index, name) < 0)
        return -1;

    ALCOVE_ERR(alcove_encode_version(reply, rlen, &rindex));
    ALCOVE_ERR(alcove_encode_define(reply, rlen, &rindex,
                                    name, alcove_syscall_constants));
    return rindex;
#else
    return alcove_mk_atom(reply, rlen, "false");
#endif
}