PostgreSQL Source Code git master
pg_auth_members.h
Go to the documentation of this file.
1/*-------------------------------------------------------------------------
2 *
3 * pg_auth_members.h
4 * definition of the "authorization identifier members" system catalog
5 * (pg_auth_members).
6 *
7 *
8 * Portions Copyright (c) 1996-2025, PostgreSQL Global Development Group
9 * Portions Copyright (c) 1994, Regents of the University of California
10 *
11 * src/include/catalog/pg_auth_members.h
12 *
13 * NOTES
14 * The Catalog.pm module reads this file and derives schema
15 * information.
16 *
17 *-------------------------------------------------------------------------
18 */
19#ifndef PG_AUTH_MEMBERS_H
20#define PG_AUTH_MEMBERS_H
21
22#include "catalog/genbki.h"
23#include "catalog/pg_auth_members_d.h" /* IWYU pragma: export */
24
25/* ----------------
26 * pg_auth_members definition. cpp turns this into
27 * typedef struct FormData_pg_auth_members
28 * ----------------
29 */
30CATALOG(pg_auth_members,1261,AuthMemRelationId) BKI_SHARED_RELATION BKI_ROWTYPE_OID(2843,AuthMemRelation_Rowtype_Id) BKI_SCHEMA_MACRO
31{
32 Oid oid; /* oid */
33 Oid roleid BKI_LOOKUP(pg_authid); /* ID of a role */
34 Oid member BKI_LOOKUP(pg_authid); /* ID of a member of that role */
35 Oid grantor BKI_LOOKUP(pg_authid); /* who granted the membership */
36 bool admin_option; /* granted with admin option? */
37 bool inherit_option; /* exercise privileges without SET ROLE? */
38 bool set_option; /* use SET ROLE to the target role? */
40
41/* ----------------
42 * Form_pg_auth_members corresponds to a pointer to a tuple with
43 * the format of pg_auth_members relation.
44 * ----------------
45 */
47
48DECLARE_UNIQUE_INDEX_PKEY(pg_auth_members_oid_index, 6303, AuthMemOidIndexId, pg_auth_members, btree(oid oid_ops));
49DECLARE_UNIQUE_INDEX(pg_auth_members_role_member_index, 2694, AuthMemRoleMemIndexId, pg_auth_members, btree(roleid oid_ops, member oid_ops, grantor oid_ops));
50DECLARE_UNIQUE_INDEX(pg_auth_members_member_role_index, 2695, AuthMemMemRoleIndexId, pg_auth_members, btree(member oid_ops, roleid oid_ops, grantor oid_ops));
51DECLARE_INDEX(pg_auth_members_grantor_index, 6302, AuthMemGrantorIndexId, pg_auth_members, btree(grantor oid_ops));
52
53MAKE_SYSCACHE(AUTHMEMROLEMEM, pg_auth_members_role_member_index, 8);
54MAKE_SYSCACHE(AUTHMEMMEMROLE, pg_auth_members_member_role_index, 8);
55
56#endif /* PG_AUTH_MEMBERS_H */
#define BKI_SHARED_RELATION
Definition: genbki.h:27
#define BKI_ROWTYPE_OID(oid, oidmacro)
Definition: genbki.h:28
DECLARE_INDEX(pg_auth_members_grantor_index, 6302, AuthMemGrantorIndexId, pg_auth_members, btree(grantor oid_ops))
DECLARE_UNIQUE_INDEX(pg_auth_members_role_member_index, 2694, AuthMemRoleMemIndexId, pg_auth_members, btree(roleid oid_ops, member oid_ops, grantor oid_ops))
FormData_pg_auth_members * Form_pg_auth_members
CATALOG(pg_auth_members, 1261, AuthMemRelationId) BKI_SHARED_RELATION BKI_ROWTYPE_OID(2843
FormData_pg_auth_members
AuthMemRelation_Rowtype_Id BKI_SCHEMA_MACRO
MAKE_SYSCACHE(AUTHMEMROLEMEM, pg_auth_members_role_member_index, 8)
DECLARE_UNIQUE_INDEX_PKEY(pg_auth_members_oid_index, 6303, AuthMemOidIndexId, pg_auth_members, btree(oid oid_ops))
bool set_option
bool inherit_option
Oid roleid BKI_LOOKUP(pg_authid)
bool admin_option
unsigned int Oid
Definition: postgres_ext.h:32