Thread: [HACKERS] A suspicious code in pgoutput_startup().

[HACKERS] A suspicious code in pgoutput_startup().

From
Yugo Nagata
Date:
Hi,

I found a suspicious code in pgoutput_startup().

175         /* Check if we support requested protocol */
176         if (data->protocol_version != LOGICALREP_PROTO_VERSION_NUM)
177             ereport(ERROR,
178                     (errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
179                      errmsg("client sent proto_version=%d but we only support protocol %d or lower",
180                             data->protocol_version, LOGICALREP_PROTO_VERSION_NUM)));

Although the if condition is not-equal, the error message says 
"we only support protocol %d or lower".  Is this intentional?
Or should this be fixed as below? 

176         if (data->protocol_version > LOGICALREP_PROTO_VERSION_NUM)

Attached is a simple patch in case of fixing.

Regards,

-- 
Yugo Nagata <nagata@sraoss.co.jp>

-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

Attachment

Re: [HACKERS] A suspicious code in pgoutput_startup().

From
Peter Eisentraut
Date:
On 7/27/17 20:52, Yugo Nagata wrote:
> 175         /* Check if we support requested protocol */
> 176         if (data->protocol_version != LOGICALREP_PROTO_VERSION_NUM)
> 177             ereport(ERROR,
> 178                     (errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
> 179                      errmsg("client sent proto_version=%d but we only support protocol %d or lower",
> 180                             data->protocol_version, LOGICALREP_PROTO_VERSION_NUM)));
> 
> Although the if condition is not-equal, the error message says 
> "we only support protocol %d or lower".  Is this intentional?
> Or should this be fixed as below? 
> 
> 176         if (data->protocol_version > LOGICALREP_PROTO_VERSION_NUM)
> 
> Attached is a simple patch in case of fixing.

Fixed, thanks.

-- 
Peter Eisentraut              http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services



Re: [HACKERS] A suspicious code in pgoutput_startup().

From
Yugo Nagata
Date:
On Tue, 15 Aug 2017 16:23:35 -0400
Peter Eisentraut <peter.eisentraut@2ndquadrant.com> wrote:

> On 7/27/17 20:52, Yugo Nagata wrote:
> > 175         /* Check if we support requested protocol */
> > 176         if (data->protocol_version != LOGICALREP_PROTO_VERSION_NUM)
> > 177             ereport(ERROR,
> > 178                     (errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
> > 179                      errmsg("client sent proto_version=%d but we only support protocol %d or lower",
> > 180                             data->protocol_version, LOGICALREP_PROTO_VERSION_NUM)));
> > 
> > Although the if condition is not-equal, the error message says 
> > "we only support protocol %d or lower".  Is this intentional?
> > Or should this be fixed as below? 
> > 
> > 176         if (data->protocol_version > LOGICALREP_PROTO_VERSION_NUM)
> > 
> > Attached is a simple patch in case of fixing.
> 
> Fixed, thanks.

Thanks, too!
> 
> -- 
> Peter Eisentraut              http://www.2ndQuadrant.com/
> PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services


-- 
Yugo Nagata <nagata@sraoss.co.jp>