KSQL_ROLE(3) Library Functions Manual KSQL_ROLE(3)

NAME

ksql_roleset role in ksql context

LIBRARY

library “ksql”

SYNOPSIS

#include <stdint.h>
#include <ksql.h>
void
ksql_role(struct ksql *sql, size_t role);

DESCRIPTION

The ksql_role function sets the current role of sql. The role is the index of a role defined in cfg->roles as passed to ksql_alloc(3) or ksql_alloc_child(3). The role affects all subsequent ksql_exec(3) and ksql_stmt_alloc(3) calls.
The new role must be allowed by having a non-zero value in the roles array within the current role's struct ksqlrole object. Otherwise, the program is immediately terminated.
When invoked, ksql_role() automatically sets KSQL_EXIT_ON_ERR on cfg->flags and cfg->err to NULL, restoring both if/when it returns. These guarantee that the function will never return without having properly set the new role.

SEE ALSO

ksql_alloc(3), ksql_alloc_child(3), ksql_exec(3), ksql_stmt_alloc(3)
January 29, 2018 OpenBSD 6.2