On Wed, Jul 5, 2017 at 9:35 AM, Michael Paquier <michael.paqu...@gmail.com> wrote: > On Tue, Jul 4, 2017 at 4:41 PM, Kuntal Ghosh <kuntalghosh.2...@gmail.com> > wrote: >> I've not yet started the patch and it may take some time for me to >> understand and write >> the patch in a correct way. Since, you've almost written the patch, >> IMHO, please go ahead >> and submit the patch. I'll happily review and test it. :-) >> >> Thanks for the notes. > > OK, thanks. Here you go. > Thanks for the patch. It looks good and it solves the existing issues.
But, I'm little concerned/doubt regarding the following part of the code. +/* + * Converts an int64 from network byte order to native format. + */ +static int64 +pg_recvint64(int64 value) +{ + union + { + int64 i64; + uint32 i32[2]; + } swap; + int64 result; + + swap.i64 = value; + + result = (uint32) ntohl(swap.i32[0]); + result <<= 32; + result |= (uint32) ntohl(swap.i32[1]); + + return result; +} Does this always work correctly irrespective of the endianess of the underlying system? -- Thanks & Regards, Kuntal Ghosh EnterpriseDB: http://www.enterprisedb.com -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers