codekingpro/portable-devtools
114k
1/*2 * seclabel.h3 *4 * Prototypes for functions in commands/seclabel.c5 *6 * Portions Copyright (c) 1996-2023, PostgreSQL Global Development Group7 * Portions Copyright (c) 1994, Regents of the University of California8 */9#ifndef SECLABEL_H10#define SECLABEL_H11 12#include "catalog/objectaddress.h"13 14/*15 * Internal APIs16 */17extern char *GetSecurityLabel(const ObjectAddress *object,18 const char *provider);19extern void SetSecurityLabel(const ObjectAddress *object,20 const char *provider, const char *label);21extern void DeleteSecurityLabel(const ObjectAddress *object);22extern void DeleteSharedSecurityLabel(Oid objectId, Oid classId);23 24/*25 * Statement and ESP hook support26 */27extern ObjectAddress ExecSecLabelStmt(SecLabelStmt *stmt);28 29typedef void (*check_object_relabel_type) (const ObjectAddress *object,30 const char *seclabel);31extern void register_label_provider(const char *provider_name,32 check_object_relabel_type hook);33 34#endif /* SECLABEL_H */35 