]> granicus.if.org Git - postgresql/blob - src/include/rewrite/rewriteDefine.h
Fix column-privilege leak in error-message paths
[postgresql] / src / include / rewrite / rewriteDefine.h
1 /*-------------------------------------------------------------------------
2  *
3  * rewriteDefine.h
4  *
5  *
6  *
7  * Portions Copyright (c) 1996-2015, PostgreSQL Global Development Group
8  * Portions Copyright (c) 1994, Regents of the University of California
9  *
10  * src/include/rewrite/rewriteDefine.h
11  *
12  *-------------------------------------------------------------------------
13  */
14 #ifndef REWRITEDEFINE_H
15 #define REWRITEDEFINE_H
16
17 #include "nodes/parsenodes.h"
18 #include "utils/relcache.h"
19
20 #define RULE_FIRES_ON_ORIGIN    'O'
21 #define RULE_FIRES_ALWAYS               'A'
22 #define RULE_FIRES_ON_REPLICA   'R'
23 #define RULE_DISABLED                   'D'
24
25 extern Oid      DefineRule(RuleStmt *stmt, const char *queryString);
26
27 extern Oid DefineQueryRewrite(char *rulename,
28                                    Oid event_relid,
29                                    Node *event_qual,
30                                    CmdType event_type,
31                                    bool is_instead,
32                                    bool replace,
33                                    List *action);
34
35 extern Oid RenameRewriteRule(RangeVar *relation, const char *oldName,
36                                   const char *newName);
37
38 extern void setRuleCheckAsUser(Node *node, Oid userid);
39
40 extern void EnableDisableRule(Relation rel, const char *rulename,
41                                   char fires_when);
42
43 #endif   /* REWRITEDEFINE_H */