| От | KaiGai Kohei |
|---|---|
| Тема | pg_class_ownercheck() in EnableDisableRule() |
| Дата | |
| Msg-id | 4AB2F1E4.5030900@ak.jp.nec.com обсуждение исходный текст |
| Список | pgsql-hackers |
I found a strange checks in the native database privilege stuff. The EnableDisableRule() calls pg_class_ownercheck() to check the ownership of the relation which has a rule to be turned on/off. Only ATExecEnableDisableRule() calls the EnableDisableRule(), and only ATExecCmd() calls the ATExecEnableDisableRule() with AT_EnableRule, AT_EnableAlwaysRule, AT_EnableReplicaRule and AT_DisableRule. However, ATPrepCmd() already checks ownership of the target relation using ATSimplePermissions(), so the pg_class_ownercheck() at the EnableDisableRule() always returns true. I replaced the checks by the abstraction of ac_rule_toggle() in my patch. However, it may be better to remove the checks simply. Thanks, -- OSS Platform Development Division, NEC KaiGai Kohei <kaigai@ak.jp.nec.com>
В списке pgsql-hackers по дате отправления:
Сайт использует файлы cookie для корректной работы и повышения удобства. Нажимая кнопку «Принять» или продолжая пользоваться сайтом, вы соглашаетесь на их использование в соответствии с Политикой в отношении обработки cookie ООО «ППГ», в том числе на передачу данных из файлов cookie сторонним статистическим и рекламным службам. Вы можете управлять настройками cookie через параметры вашего браузера