xref: /netbsd-src/external/gpl3/binutils/dist/include/fopen-bin.h (revision cb63e24e8d6aae7ddac1859a9015f48b1d8bd90e)
12a6b7db3Sskrll /* Macros for the 'type' part of an fopen, freopen or fdopen.
22a6b7db3Sskrll 
32a6b7db3Sskrll 	<Read|Write>[Update]<Binary file|text file>
42a6b7db3Sskrll 
52a6b7db3Sskrll    This version is for "binary" systems, where text and binary files are
62a6b7db3Sskrll    different.  An example is Mess-Dose.  Many Unix systems could also
72a6b7db3Sskrll    cope with a "b" in the string, indicating binary files, but some reject this
82a6b7db3Sskrll    (and thereby don't conform to ANSI C, but what else is new?).
92a6b7db3Sskrll 
10*cb63e24eSchristos    Copyright (C) 1996-2024 Free Software Foundation, Inc.
119573673dSchristos 
129573673dSchristos    This program is free software; you can redistribute it and/or modify
139573673dSchristos    it under the terms of the GNU General Public License as published by
149573673dSchristos    the Free Software Foundation; either version 2, or (at your option)
159573673dSchristos    any later version.
169573673dSchristos 
179573673dSchristos    This program is distributed in the hope that it will be useful,
189573673dSchristos    but WITHOUT ANY WARRANTY; without even the implied warranty of
199573673dSchristos    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
209573673dSchristos    GNU General Public License for more details.
219573673dSchristos 
229573673dSchristos    You should have received a copy of the GNU General Public License
239573673dSchristos    along with this program; if not, write to the Free Software
249573673dSchristos    Foundation, Inc., 51 Franklin Street - Fifth Floor,
259573673dSchristos    Boston, MA 02110-1301, USA.  */
269573673dSchristos 
279573673dSchristos /* This file is designed for inclusion by host-dependent .h files.  No
282a6b7db3Sskrll    user application should include it directly, since that would make
292a6b7db3Sskrll    the application unable to be configured for both "same" and "binary"
302a6b7db3Sskrll    variant systems.  */
312a6b7db3Sskrll 
322a6b7db3Sskrll #define FOPEN_RB	"rb"
332a6b7db3Sskrll #define FOPEN_WB 	"wb"
342a6b7db3Sskrll #define FOPEN_AB 	"ab"
352a6b7db3Sskrll #define FOPEN_RUB 	"r+b"
362a6b7db3Sskrll #define FOPEN_WUB 	"w+b"
372a6b7db3Sskrll #define FOPEN_AUB 	"a+b"
382a6b7db3Sskrll 
392a6b7db3Sskrll #define FOPEN_RT	"r"
402a6b7db3Sskrll #define FOPEN_WT 	"w"
412a6b7db3Sskrll #define FOPEN_AT 	"a"
422a6b7db3Sskrll #define FOPEN_RUT 	"r+"
432a6b7db3Sskrll #define FOPEN_WUT 	"w+"
442a6b7db3Sskrll #define FOPEN_AUT 	"a+"
45