I am seeing conflicting usage of PG_BINARY_R and "r" in AllocateFile()
calls.  Is there a logic of when to use one or the other, or is this
just badly maintained code?

The significant difference is:
	
	#ifdef __CYGWIN__
	#define PG_BINARY	O_BINARY
	#define PG_BINARY_R "rb"
	#define PG_BINARY_W "wb"
	#else
	#define PG_BINARY	0
	#define PG_BINARY_R "r"
	#define PG_BINARY_W "w"
	#endif

For example, in 7.2 I see pg_hba.conf opened with "r" and pg_ident.conf
opened with PG_BINARY_R.

My assumption is that text files should use "r" and binary files use
PG_BINARY_R.

-- 
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 853-3000
  +  If your life is a hard drive,     |  830 Blythe Avenue
  +  Christ can be your backup.        |  Drexel Hill, Pennsylvania 19026

Fri, 22 Mar 2002 13:43:32 -0500 (EST)
Bruce Momjian <pgman@candle.pha.pa.us>
Use of PG_BINARY_R and "r"
Bruce Momjian <pgman@candle.pha.pa.us> writes:
> My assumption is that text files should use "r" and binary files use
> PG_BINARY_R.

I believe that's correct.  It seems kinda inconsistent though.

> For example, in 7.2 I see pg_hba.conf opened with "r" and pg_ident.conf
> opened with PG_BINARY_R.

The latter is clearly wrong, since pg_ident.conf is not binary.

Is there any interest in defining
	#define PG_TEXT_R "r"
	#define PG_TEXT_W "w"
so that AllocateFile is always called with one of this set of macros?
Or is that just silly?

			regards, tom lane

Fri, 22 Mar 2002 14:04:19 -0500
Tom Lane <tgl@sss.pgh.pa.us>
Re: Use of PG_BINARY_R and "r" 
Tom Lane wrote:
> Bruce Momjian <pgman@candle.pha.pa.us> writes:
> > My assumption is that text files should use "r" and binary files use
> > PG_BINARY_R.
> 
> I believe that's correct.  It seems kinda inconsistent though.
> 
> > For example, in 7.2 I see pg_hba.conf opened with "r" and pg_ident.conf
> > opened with PG_BINARY_R.
> 
> The latter is clearly wrong, since pg_ident.conf is not binary.
> 
> Is there any interest in defining
> 	#define PG_TEXT_R "r"
> 	#define PG_TEXT_W "w"
> so that AllocateFile is always called with one of this set of macros?
> Or is that just silly?

I kind of like that.  The problem I think is that we use "r" in some
places so people assume it is just like ordinary open() args, which it
is unless it is a binary file, where you have to use the macro.  That
seems kind of confusing.

However, we don't do this very often so just cleaning up what we have
may be enough.

-- 
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 853-3000
  +  If your life is a hard drive,     |  830 Blythe Avenue
  +  Christ can be your backup.        |  Drexel Hill, Pennsylvania 19026

Fri, 22 Mar 2002 14:12:40 -0500 (EST)
Bruce Momjian <pgman@candle.pha.pa.us>
Re: Use of PG_BINARY_R and "r"