~ubuntu-branches/ubuntu/utopic/postgresql-9.4/utopic-security

« back to all changes in this revision

Viewing changes to src/include/commands/explain.h

  • Committer: Package Import Robot
  • Author(s): Martin Pitt, CVE-2014-8161
  • Date: 2015-02-06 12:31:46 UTC
  • mfrom: (1.1.5) (7.1.2 utopic-proposed)
  • Revision ID: package-import@ubuntu.com-20150206123146-vtmf30jbkm7w16p8
Tags: 9.4.1-0ubuntu0.14.10
* New upstream security/bug fix release (LP: #1418928)
  - Fix buffer overruns in to_char() [CVE-2015-0241]
  - Fix buffer overruns in contrib/pgcrypto [CVE-2015-0243]
  - Fix possible loss of frontend/backend protocol synchronization after an
    error [CVE-2015-0244]
  - Fix information leak via constraint-violation error messages
    [CVE-2014-8161]
  - See release notes for details about other fixes:
    http://www.postgresql.org/about/news/1569/

Show diffs side-by-side

added added

removed removed

Lines of Context:
24
24
        EXPLAIN_FORMAT_YAML
25
25
} ExplainFormat;
26
26
 
 
27
/* Crude hack to avoid changing sizeof(ExplainState) in released branches */
 
28
typedef struct ExplainStateExtra
 
29
{
 
30
        List       *groupingstack;      /* format-specific grouping state */
 
31
        List       *deparsecxt;         /* context list for deparsing expressions */
 
32
} ExplainStateExtra;
 
33
 
27
34
typedef struct ExplainState
28
35
{
29
36
        StringInfo      str;                    /* output buffer */
30
37
        /* options */
31
38
        bool            verbose;                /* be verbose */
32
39
        bool            analyze;                /* print actual times */
33
 
        bool            costs;                  /* print costs */
 
40
        bool            costs;                  /* print estimated costs */
34
41
        bool            buffers;                /* print buffer usage */
35
 
        bool            timing;                 /* print timing */
 
42
        bool            timing;                 /* print detailed node timing */
 
43
        bool            summary;                /* print total planning and execution timing */
36
44
        ExplainFormat format;           /* output format */
37
45
        /* other states */
38
46
        PlannedStmt *pstmt;                     /* top of plan */
39
47
        List       *rtable;                     /* range table */
40
48
        List       *rtable_names;       /* alias names for RTEs */
41
49
        int                     indent;                 /* current indentation level */
42
 
        List       *grouping_stack; /* format-specific grouping state */
 
50
        ExplainStateExtra *extra;       /* pointer to additional data */
43
51
} ExplainState;
44
52
 
45
53
/* Hook for plugins to get control in ExplainOneQuery() */