mirror of
https://github.com/postgres/postgres.git
synced 2025-07-27 12:41:57 +03:00
Replace AclObjectKind with ObjectType
AclObjectKind was basically just another enumeration for object types, and we already have a preferred one for that. It's only used in aclcheck_error. By using ObjectType instead, we can also give some more precise error messages, for example "index" instead of "relation". Reviewed-by: Michael Paquier <michael.paquier@gmail.com>
This commit is contained in:
@ -276,7 +276,7 @@ DefineQueryRewrite(const char *rulename,
|
||||
* Check user has permission to apply rules to this relation.
|
||||
*/
|
||||
if (!pg_class_ownercheck(event_relid, GetUserId()))
|
||||
aclcheck_error(ACLCHECK_NOT_OWNER, ACL_KIND_CLASS,
|
||||
aclcheck_error(ACLCHECK_NOT_OWNER, get_relkind_objtype(event_relation->rd_rel->relkind),
|
||||
RelationGetRelationName(event_relation));
|
||||
|
||||
/*
|
||||
@ -864,7 +864,7 @@ EnableDisableRule(Relation rel, const char *rulename,
|
||||
eventRelationOid = ((Form_pg_rewrite) GETSTRUCT(ruletup))->ev_class;
|
||||
Assert(eventRelationOid == owningRel);
|
||||
if (!pg_class_ownercheck(eventRelationOid, GetUserId()))
|
||||
aclcheck_error(ACLCHECK_NOT_OWNER, ACL_KIND_CLASS,
|
||||
aclcheck_error(ACLCHECK_NOT_OWNER, get_relkind_objtype(get_rel_relkind(eventRelationOid)),
|
||||
get_rel_name(eventRelationOid));
|
||||
|
||||
/*
|
||||
@ -927,7 +927,7 @@ RangeVarCallbackForRenameRule(const RangeVar *rv, Oid relid, Oid oldrelid,
|
||||
|
||||
/* you must own the table to rename one of its rules */
|
||||
if (!pg_class_ownercheck(relid, GetUserId()))
|
||||
aclcheck_error(ACLCHECK_NOT_OWNER, ACL_KIND_CLASS, rv->relname);
|
||||
aclcheck_error(ACLCHECK_NOT_OWNER, get_relkind_objtype(get_rel_relkind(relid)), rv->relname);
|
||||
|
||||
ReleaseSysCache(tuple);
|
||||
}
|
||||
|
Reference in New Issue
Block a user