|
PostgreSQL Source Code git master
|
#include "postgres.h"#include "access/htup_details.h"#include "access/sysattr.h"#include "access/tupdesc.h"#include "catalog/catalog.h"#include "catalog/dependency.h"#include "catalog/heap.h"#include "catalog/pg_attribute.h"#include "catalog/pg_class.h"#include "catalog/pg_inherits.h"#include "commands/seclabel.h"#include "commands/tablecmds.h"#include "executor/executor.h"#include "nodes/bitmapset.h"#include "parser/parsetree.h"#include "sepgsql.h"#include "utils/lsyscache.h"#include "utils/syscache.h"
Go to the source code of this file.
Functions | |
| static Bitmapset * | fixup_whole_row_references (Oid relOid, Bitmapset *columns) |
| static Bitmapset * | fixup_inherited_columns (Oid parentId, Oid childId, Bitmapset *columns) |
| static bool | check_relation_privileges (Oid relOid, Bitmapset *selected, Bitmapset *inserted, Bitmapset *updated, uint32 required, bool abort_on_violation) |
| bool | sepgsql_dml_privileges (List *rangeTbls, List *rteperminfos, bool abort_on_violation) |
|
static |
Definition at line 142 of file dml.c.
References Assert(), attnum, bms_is_member(), bms_next_member(), bms_union(), ereport, errcode(), errmsg(), ERROR, FirstLowInvalidHeapAttributeNumber, fixup_whole_row_references(), get_rel_relkind(), getObjectDescription(), getObjectIdentity(), IsCatalogRelationOid(), pfree(), generate_unaccent_rules::required, SEPG_CLASS_DB_COLUMN, SEPG_CLASS_DB_SEQUENCE, SEPG_CLASS_DB_TABLE, SEPG_CLASS_DB_VIEW, SEPG_DB_COLUMN__INSERT, SEPG_DB_COLUMN__SELECT, SEPG_DB_COLUMN__UPDATE, SEPG_DB_SEQUENCE__GET_VALUE, SEPG_DB_TABLE__DELETE, SEPG_DB_TABLE__INSERT, SEPG_DB_TABLE__SELECT, SEPG_DB_TABLE__UPDATE, SEPG_DB_VIEW__EXPAND, sepgsql_avc_check_perms(), and sepgsql_getenforce().
Referenced by sepgsql_dml_privileges().
|
static |
Definition at line 93 of file dml.c.
References attname, bms_add_member(), bms_next_member(), elog, ERROR, FirstLowInvalidHeapAttributeNumber, get_attname(), get_attnum(), InvalidAttrNumber, and pfree().
Referenced by sepgsql_dml_privileges().
Definition at line 39 of file dml.c.
References bms_add_member(), bms_copy(), bms_del_member(), bms_is_member(), elog, ERROR, FirstLowInvalidHeapAttributeNumber, GETSTRUCT(), HeapTupleIsValid, Int16GetDatum(), InvalidAttrNumber, ObjectIdGetDatum(), ReleaseSysCache(), SearchSysCache1(), and SearchSysCache2().
Referenced by check_relation_privileges().
Definition at line 282 of file dml.c.
References ACL_DELETE, ACL_INSERT, ACL_SELECT, ACL_UPDATE, bms_is_empty, check_relation_privileges(), find_all_inheritors(), fixup_inherited_columns(), RTEPermissionInfo::inh, RTEPermissionInfo::insertedCols, lfirst_node, lfirst_oid, list_free(), list_make1_oid, NoLock, RTEPermissionInfo::relid, generate_unaccent_rules::required, RTEPermissionInfo::requiredPerms, RTEPermissionInfo::selectedCols, SEPG_DB_TABLE__DELETE, SEPG_DB_TABLE__INSERT, SEPG_DB_TABLE__LOCK, SEPG_DB_TABLE__SELECT, SEPG_DB_TABLE__UPDATE, and RTEPermissionInfo::updatedCols.
Referenced by sepgsql_exec_check_perms().