Re: DOS-style line endings in .pgpass

Tom Lane <tgl@sss.pgh.pa.us>

From: Tom Lane <tgl@sss.pgh.pa.us>
To: Vik Fearing <vik@2ndquadrant.fr>
Cc: Josh Berkus <josh@agliodbs.com>, pgsql-bugs <pgsql-bugs@postgresql.org>
Date: 2016-11-14T20:10:49Z
Lists: pgsql-bugs
Vik Fearing <vik@2ndquadrant.fr> writes:
> On 11/14/2016 08:31 PM, Josh Berkus wrote:
>> What appears to be happening here is that one of the characters of the
>> CRLF is being appended to the password, making it invalid.

> Maybe something like the attached patch?

Our usual approach to \r characters is that they're whitespace.  I wonder
whether the most friendly solution here is to chomp all trailing
whitespace.  Anybody ever heard of using a trailing space or tab in a
password?

	while (len > 0 && strchr(" \t\r\n", buf[len - 1]) != NULL)
		buf[--len] = '\0';

			regards, tom lane