1 /* -------------------------------------------------------------------------
2  *
3  * pg_shseclabel.h
4  *	  definition of the "shared security label" system catalog (pg_shseclabel)
5  *
6  * Portions Copyright (c) 1996-2021, PostgreSQL Global Development Group
7  * Portions Copyright (c) 1994, Regents of the University of California
8  *
9  * src/include/catalog/pg_shseclabel.h
10  *
11  * NOTES
12  *	  The Catalog.pm module reads this file and derives schema
13  *	  information.
14  *
15  * -------------------------------------------------------------------------
16  */
17 #ifndef PG_SHSECLABEL_H
18 #define PG_SHSECLABEL_H
19 
20 #include "catalog/genbki.h"
21 #include "catalog/pg_shseclabel_d.h"
22 
23 /* ----------------
24  *		pg_shseclabel definition. cpp turns this into
25  *		typedef struct FormData_pg_shseclabel
26  * ----------------
27  */
28 CATALOG(pg_shseclabel,3592,SharedSecLabelRelationId) BKI_SHARED_RELATION BKI_ROWTYPE_OID(4066,SharedSecLabelRelation_Rowtype_Id) BKI_SCHEMA_MACRO
29 {
30 	Oid			objoid;			/* OID of the shared object itself */
31 	Oid			classoid BKI_LOOKUP(pg_class);	/* OID of table containing the
32 												 * shared object */
33 
34 #ifdef CATALOG_VARLEN			/* variable-length fields start here */
35 	text		provider BKI_FORCE_NOT_NULL;	/* name of label provider */
36 	text		label BKI_FORCE_NOT_NULL;	/* security label of the object */
37 #endif
38 } FormData_pg_shseclabel;
39 
40 typedef FormData_pg_shseclabel * Form_pg_shseclabel;
41 
42 DECLARE_TOAST(pg_shseclabel, 4060, 4061);
43 #define PgShseclabelToastTable 4060
44 #define PgShseclabelToastIndex 4061
45 
46 DECLARE_UNIQUE_INDEX_PKEY(pg_shseclabel_object_index, 3593, on pg_shseclabel using btree(objoid oid_ops, classoid oid_ops, provider text_ops));
47 #define SharedSecLabelObjectIndexId			3593
48 
49 #endif							/* PG_SHSECLABEL_H */
50