Clases |
struct | AclItem |
'defines' |
#define | ACL_ID_PUBLIC 0 |
#define | ACLITEM_GET_PRIVS(item) ((item).ai_privs & 0xFFFF) |
#define | ACLITEM_GET_GOPTIONS(item) (((item).ai_privs >> 16) & 0xFFFF) |
#define | ACLITEM_GET_RIGHTS(item) ((item).ai_privs) |
#define | ACL_GRANT_OPTION_FOR(privs) (((AclMode) (privs) & 0xFFFF) << 16) |
#define | ACL_OPTION_TO_PRIVS(privs) (((AclMode) (privs) >> 16) & 0xFFFF) |
#define | ACLITEM_SET_PRIVS(item, privs) |
#define | ACLITEM_SET_GOPTIONS(item, goptions) |
#define | ACLITEM_SET_RIGHTS(item, rights) ((item).ai_privs = (AclMode) (rights)) |
#define | ACLITEM_SET_PRIVS_GOPTIONS(item, privs, goptions) |
#define | ACLITEM_ALL_PRIV_BITS ((AclMode) 0xFFFF) |
#define | ACLITEM_ALL_GOPTION_BITS ((AclMode) 0xFFFF << 16) |
#define | ACL_NUM(ACL) (ARR_DIMS(ACL)[0]) |
#define | ACL_DAT(ACL) ((AclItem *) ARR_DATA_PTR(ACL)) |
#define | ACL_N_SIZE(N) (ARR_OVERHEAD(1) + ((N) * sizeof(AclItem))) |
#define | ACL_SIZE(ACL) ARR_SIZE(ACL) |
#define | IDLIST_NUM(IDL) (ARR_DIMS(IDL)[0]) |
#define | IDLIST_DAT(IDL) ((Oid *) ARR_DATA_PTR(IDL)) |
#define | IDLIST_N_SIZE(N) (ARR_OVERHEAD(1) + ((N) * sizeof(Oid))) |
#define | IDLIST_SIZE(IDL) ARR_SIZE(IDL) |
#define | DatumGetAclItemP(X) ((AclItem *) DatumGetPointer(X)) |
#define | PG_GETARG_ACLITEM_P(n) DatumGetAclItemP(PG_GETARG_DATUM(n)) |
#define | PG_RETURN_ACLITEM_P(x) PG_RETURN_POINTER(x) |
#define | DatumGetAclP(X) ((Acl *) PG_DETOAST_DATUM(X)) |
#define | DatumGetAclPCopy(X) ((Acl *) PG_DETOAST_DATUM_COPY(X)) |
#define | PG_GETARG_ACL_P(n) DatumGetAclP(PG_GETARG_DATUM(n)) |
#define | PG_GETARG_ACL_P_COPY(n) DatumGetAclPCopy(PG_GETARG_DATUM(n)) |
#define | PG_RETURN_ACL_P(x) PG_RETURN_POINTER(x) |
#define | DatumGetIdListP(X) ((IdList *) PG_DETOAST_DATUM(X)) |
#define | DatumGetIdListPCopy(X) ((IdList *) PG_DETOAST_DATUM_COPY(X)) |
#define | PG_GETARG_IDLIST_P(n) DatumGetIdListP(PG_GETARG_DATUM(n)) |
#define | PG_GETARG_IDLIST_P_COPY(n) DatumGetIdListPCopy(PG_GETARG_DATUM(n)) |
#define | PG_RETURN_IDLIST_P(x) PG_RETURN_POINTER(x) |
#define | ACL_MODECHG_ADD 1 |
#define | ACL_MODECHG_DEL 2 |
#define | ACL_MODECHG_EQL 3 |
#define | ACL_INSERT_CHR 'a' |
#define | ACL_SELECT_CHR 'r' |
#define | ACL_UPDATE_CHR 'w' |
#define | ACL_DELETE_CHR 'd' |
#define | ACL_RULE_CHR 'R' |
#define | ACL_REFERENCES_CHR 'x' |
#define | ACL_TRIGGER_CHR 't' |
#define | ACL_EXECUTE_CHR 'X' |
#define | ACL_USAGE_CHR 'U' |
#define | ACL_CREATE_CHR 'C' |
#define | ACL_CREATE_TEMP_CHR 'T' |
#define | ACL_ALL_RIGHTS_STR "arwdRxtXUCT" |
#define | ACL_ALL_RIGHTS_RELATION (ACL_INSERT|ACL_SELECT|ACL_UPDATE|ACL_DELETE|ACL_RULE|ACL_REFERENCES|ACL_TRIGGER) |
#define | ACL_ALL_RIGHTS_DATABASE (ACL_CREATE|ACL_CREATE_TEMP) |
#define | ACL_ALL_RIGHTS_FUNCTION (ACL_EXECUTE) |
#define | ACL_ALL_RIGHTS_LANGUAGE (ACL_USAGE) |
#define | ACL_ALL_RIGHTS_NAMESPACE (ACL_USAGE|ACL_CREATE) |
#define | ACL_ALL_RIGHTS_TABLESPACE (ACL_CREATE) |
'typedefs' |
typedef struct AclItem | AclItem |
typedef ArrayType | Acl |
typedef ArrayType | IdList |
typedef enum AclObjectKind | AclObjectKind |
Enumeraciones |
enum | AclMaskHow { ACLMASK_ALL,
ACLMASK_ANY
} |
enum | AclResult { ACLCHECK_OK = 0,
ACLCHECK_NO_PRIV,
ACLCHECK_NOT_OWNER
} |
enum | AclObjectKind {
ACL_KIND_CLASS,
ACL_KIND_DATABASE,
ACL_KIND_PROC,
ACL_KIND_OPER,
ACL_KIND_TYPE,
ACL_KIND_LANGUAGE,
ACL_KIND_NAMESPACE,
ACL_KIND_OPCLASS,
ACL_KIND_CONVERSION,
ACL_KIND_TABLESPACE,
MAX_ACL_KIND
} |
Funciones |
Acl * | acldefault (GrantObjectType objtype, Oid ownerId) |
Acl * | aclupdate (const Acl *old_acl, const AclItem *mod_aip, int modechg, Oid ownerId, DropBehavior behavior) |
Acl * | aclnewowner (const Acl *old_acl, Oid oldOwnerId, Oid newOwnerId) |
AclMode | aclmask (const Acl *acl, Oid roleid, Oid ownerId, AclMode mask, AclMaskHow how) |
int | aclmembers (const Acl *acl, Oid **roleids) |
bool | has_privs_of_role (Oid member, Oid role) |
bool | is_member_of_role (Oid member, Oid role) |
bool | is_member_of_role_nosuper (Oid member, Oid role) |
bool | is_admin_of_role (Oid member, Oid role) |
void | check_is_member_of_role (Oid member, Oid role) |
void | select_best_grantor (Oid roleId, AclMode privileges, const Acl *acl, Oid ownerId, Oid *grantorId, AclMode *grantOptions) |
void | initialize_acl (void) |
Datum | aclitemin (PG_FUNCTION_ARGS) |
Datum | aclitemout (PG_FUNCTION_ARGS) |
Datum | aclinsert (PG_FUNCTION_ARGS) |
Datum | aclremove (PG_FUNCTION_ARGS) |
Datum | aclcontains (PG_FUNCTION_ARGS) |
Datum | makeaclitem (PG_FUNCTION_ARGS) |
Datum | aclitem_eq (PG_FUNCTION_ARGS) |
Datum | hash_aclitem (PG_FUNCTION_ARGS) |
void | ExecuteGrantStmt (GrantStmt *stmt) |
AclMode | pg_class_aclmask (Oid table_oid, Oid roleid, AclMode mask, AclMaskHow how) |
AclMode | pg_database_aclmask (Oid db_oid, Oid roleid, AclMode mask, AclMaskHow how) |
AclMode | pg_proc_aclmask (Oid proc_oid, Oid roleid, AclMode mask, AclMaskHow how) |
AclMode | pg_language_aclmask (Oid lang_oid, Oid roleid, AclMode mask, AclMaskHow how) |
AclMode | pg_namespace_aclmask (Oid nsp_oid, Oid roleid, AclMode mask, AclMaskHow how) |
AclMode | pg_tablespace_aclmask (Oid spc_oid, Oid roleid, AclMode mask, AclMaskHow how) |
AclResult | pg_class_aclcheck (Oid table_oid, Oid roleid, AclMode mode) |
AclResult | pg_database_aclcheck (Oid db_oid, Oid roleid, AclMode mode) |
AclResult | pg_proc_aclcheck (Oid proc_oid, Oid roleid, AclMode mode) |
AclResult | pg_language_aclcheck (Oid lang_oid, Oid roleid, AclMode mode) |
AclResult | pg_namespace_aclcheck (Oid nsp_oid, Oid roleid, AclMode mode) |
AclResult | pg_tablespace_aclcheck (Oid spc_oid, Oid roleid, AclMode mode) |
void | aclcheck_error (AclResult aclerr, AclObjectKind objectkind, const char *objectname) |
bool | pg_class_ownercheck (Oid class_oid, Oid roleid) |
bool | pg_type_ownercheck (Oid type_oid, Oid roleid) |
bool | pg_oper_ownercheck (Oid oper_oid, Oid roleid) |
bool | pg_proc_ownercheck (Oid proc_oid, Oid roleid) |
bool | pg_namespace_ownercheck (Oid nsp_oid, Oid roleid) |
bool | pg_tablespace_ownercheck (Oid spc_oid, Oid roleid) |
bool | pg_opclass_ownercheck (Oid opc_oid, Oid roleid) |
bool | pg_database_ownercheck (Oid db_oid, Oid roleid) |
bool | pg_conversion_ownercheck (Oid conv_oid, Oid roleid) |