pg_shseclabel.h 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. /* -------------------------------------------------------------------------
  2. *
  3. * pg_shseclabel.h
  4. * definition of the "shared security label" system catalog (pg_shseclabel)
  5. *
  6. * Portions Copyright (c) 1996-2022, 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. #include "catalog/genbki.h"
  20. #include "catalog/pg_shseclabel_d.h"
  21. /* ----------------
  22. * pg_shseclabel definition. cpp turns this into
  23. * typedef struct FormData_pg_shseclabel
  24. * ----------------
  25. */
  26. CATALOG(pg_shseclabel,3592,SharedSecLabelRelationId) BKI_SHARED_RELATION BKI_ROWTYPE_OID(4066,SharedSecLabelRelation_Rowtype_Id) BKI_SCHEMA_MACRO
  27. {
  28. Oid objoid; /* OID of the shared object itself */
  29. Oid classoid BKI_LOOKUP(pg_class); /* OID of table containing the
  30. * shared object */
  31. #ifdef CATALOG_VARLEN /* variable-length fields start here */
  32. text provider BKI_FORCE_NOT_NULL; /* name of label provider */
  33. text label BKI_FORCE_NOT_NULL; /* security label of the object */
  34. #endif
  35. } FormData_pg_shseclabel;
  36. typedef FormData_pg_shseclabel * Form_pg_shseclabel;
  37. DECLARE_TOAST_WITH_MACRO(pg_shseclabel, 4060, 4061, PgShseclabelToastTable, PgShseclabelToastIndex);
  38. DECLARE_UNIQUE_INDEX_PKEY(pg_shseclabel_object_index, 3593, SharedSecLabelObjectIndexId, on pg_shseclabel using btree(objoid oid_ops, classoid oid_ops, provider text_ops));
  39. #endif /* PG_SHSECLABEL_H */