summaryrefslogtreecommitdiff
path: root/src/bin/psql/settings.h
blob: 6ceefd8b44f4bf5d2df49ee3b2fa659efbd18885 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
#ifndef SETTINGS_H
#define SETTINGS_H

#include <stdio.h>
#include <stdlib.h>

#include <libpq-fe.h>
#include <c.h>

#include "variables.h"
#include "print.h"

#define DEFAULT_FIELD_SEP "|"
#define DEFAULT_EDITOR	"/bin/vi"

#define DEFAULT_PROMPT1 "%/%R%# "
#define DEFAULT_PROMPT2 "%/%R%# "
#define DEFAULT_PROMPT3 ">> "


typedef struct _psqlSettings
{
    PGconn *db;		          /* connection to backend */
    FILE   *queryFout;	          /* where to send the query results */
    bool   queryFoutPipe;	  /* queryFout is from a popen() */

    printQueryOpt popt;
    VariableSpace vars;            /* "shell variable" repository */

    char       *gfname;		   /* one-shot file output argument for \g */

    bool       notty;		   /* stdin or stdout is not a tty (as determined on startup) */
    bool       useReadline;	   /* use libreadline routines */
    bool       useHistory;
    bool       getPassword;	   /* prompt the user for a username and
				      password */
    FILE * cur_cmd_source;         /* describe the status of the current main loop */
    bool cur_cmd_interactive;

    bool has_client_encoding;      /* was PGCLIENTENCODING set on startup? */
} PsqlSettings;



#ifndef EXIT_SUCCESS
#define EXIT_SUCCESS 0
#endif

#ifndef EXIT_FAILURE
#define EXIT_FAILURE 1
#endif

#define EXIT_BADCONN 2

#define EXIT_USER 3

#endif