mirror of
https://git.postgresql.org/git/postgresql.git
synced 2024-09-09 03:29:22 +02:00
76 lines
2.0 KiB
C
76 lines
2.0 KiB
C
/*-------------------------------------------------------------------------
|
|
*
|
|
* pg_default_acl.h
|
|
* definition of default ACLs for new objects.
|
|
*
|
|
*
|
|
* Portions Copyright (c) 1996-2011, PostgreSQL Global Development Group
|
|
* Portions Copyright (c) 1994, Regents of the University of California
|
|
*
|
|
* src/include/catalog/pg_default_acl.h
|
|
*
|
|
* NOTES
|
|
* the genbki.pl script reads this file and generates .bki
|
|
* information from the DATA() statements.
|
|
*
|
|
*-------------------------------------------------------------------------
|
|
*/
|
|
#ifndef PG_DEFAULT_ACL_H
|
|
#define PG_DEFAULT_ACL_H
|
|
|
|
#include "catalog/genbki.h"
|
|
|
|
/* ----------------
|
|
* pg_default_acl definition. cpp turns this into
|
|
* typedef struct FormData_pg_default_acl
|
|
* ----------------
|
|
*/
|
|
#define DefaultAclRelationId 826
|
|
|
|
CATALOG(pg_default_acl,826)
|
|
{
|
|
Oid defaclrole; /* OID of role owning this ACL */
|
|
Oid defaclnamespace; /* OID of namespace, or 0 for all */
|
|
char defaclobjtype; /* see DEFACLOBJ_xxx constants below */
|
|
|
|
/*
|
|
* VARIABLE LENGTH FIELDS start here.
|
|
*/
|
|
|
|
aclitem defaclacl[1]; /* permissions to add at CREATE time */
|
|
} FormData_pg_default_acl;
|
|
|
|
/* ----------------
|
|
* Form_pg_default_acl corresponds to a pointer to a tuple with
|
|
* the format of pg_default_acl relation.
|
|
* ----------------
|
|
*/
|
|
typedef FormData_pg_default_acl *Form_pg_default_acl;
|
|
|
|
/* ----------------
|
|
* compiler constants for pg_default_acl
|
|
* ----------------
|
|
*/
|
|
|
|
#define Natts_pg_default_acl 4
|
|
#define Anum_pg_default_acl_defaclrole 1
|
|
#define Anum_pg_default_acl_defaclnamespace 2
|
|
#define Anum_pg_default_acl_defaclobjtype 3
|
|
#define Anum_pg_default_acl_defaclacl 4
|
|
|
|
/* ----------------
|
|
* pg_default_acl has no initial contents
|
|
* ----------------
|
|
*/
|
|
|
|
/*
|
|
* Types of objects for which the user is allowed to specify default
|
|
* permissions through pg_default_acl. These codes are used in the
|
|
* defaclobjtype column.
|
|
*/
|
|
#define DEFACLOBJ_RELATION 'r' /* table, view */
|
|
#define DEFACLOBJ_SEQUENCE 'S' /* sequence */
|
|
#define DEFACLOBJ_FUNCTION 'f' /* function */
|
|
|
|
#endif /* PG_DEFAULT_ACL_H */
|