1 /*
2  * psql - the PostgreSQL interactive terminal
3  *
4  * Copyright (c) 2000-2017, PostgreSQL Global Development Group
5  *
6  * src/bin/psql/common.h
7  */
8 #ifndef COMMON_H
9 #define COMMON_H
10 
11 #include <setjmp.h>
12 
13 #include "libpq-fe.h"
14 #include "fe_utils/print.h"
15 #include "fe_utils/psqlscan.h"
16 
17 extern bool openQueryOutputFile(const char *fname, FILE **fout, bool *is_pipe);
18 extern bool setQFout(const char *fname);
19 
20 extern char *psql_get_variable(const char *varname, PsqlScanQuoteType quote,
21 				  void *passthrough);
22 
23 extern void psql_error(const char *fmt,...) pg_attribute_printf(1, 2);
24 
25 extern void NoticeProcessor(void *arg, const char *message);
26 
27 extern volatile bool sigint_interrupt_enabled;
28 
29 extern sigjmp_buf sigint_interrupt_jmp;
30 
31 extern void setup_cancel_handler(void);
32 
33 extern void SetCancelConn(void);
34 extern void ResetCancelConn(void);
35 
36 extern PGresult *PSQLexec(const char *query);
37 extern int	PSQLexecWatch(const char *query, const printQueryOpt *opt);
38 
39 extern bool SendQuery(const char *query);
40 
41 extern bool is_superuser(void);
42 extern bool standard_strings(void);
43 extern const char *session_username(void);
44 
45 extern void expand_tilde(char **filename);
46 
47 extern bool recognized_connection_string(const char *connstr);
48 
49 #endif							/* COMMON_H */
50