mirror of
https://github.com/postgres/postgres.git
synced 2025-10-25 13:17:41 +03:00
Add a SECURITY LABEL command.
This is intended as infrastructure to support integration with label-based mandatory access control systems such as SE-Linux. Further changes (mostly hooks) will be needed, but this is a big chunk of it. KaiGai Kohei and Robert Haas
This commit is contained in:
35
src/include/commands/seclabel.h
Normal file
35
src/include/commands/seclabel.h
Normal file
@@ -0,0 +1,35 @@
|
||||
/*
|
||||
* seclabel.h
|
||||
*
|
||||
* Prototypes for functions in commands/seclabel.c
|
||||
*
|
||||
* Portions Copyright (c) 1996-2010, PostgreSQL Global Development Group
|
||||
* Portions Copyright (c) 1994, Regents of the University of California
|
||||
*/
|
||||
#ifndef SECLABEL_H
|
||||
#define SECLABEL_H
|
||||
|
||||
#include "catalog/objectaddress.h"
|
||||
#include "nodes/primnodes.h"
|
||||
#include "nodes/parsenodes.h"
|
||||
|
||||
/*
|
||||
* Internal APIs
|
||||
*/
|
||||
extern char *GetSecurityLabel(const ObjectAddress *object,
|
||||
const char *provider);
|
||||
extern void SetSecurityLabel(const ObjectAddress *object,
|
||||
const char *provider, const char *label);
|
||||
extern void DeleteSecurityLabel(const ObjectAddress *object);
|
||||
|
||||
/*
|
||||
* Statement and ESP hook support
|
||||
*/
|
||||
extern void ExecSecLabelStmt(SecLabelStmt *stmt);
|
||||
|
||||
typedef void (*check_object_relabel_type)(const ObjectAddress *object,
|
||||
const char *seclabel);
|
||||
extern void register_label_provider(const char *provider,
|
||||
check_object_relabel_type hook);
|
||||
|
||||
#endif /* SECLABEL_H */
|
||||
Reference in New Issue
Block a user