1 /*********************************************************************** 2 * * 3 * This software is part of the ast package * 4 * Copyright (c) 1985-2008 AT&T Intellectual Property * 5 * and is licensed under the * 6 * Common Public License, Version 1.0 * 7 * by AT&T Intellectual Property * 8 * * 9 * A copy of the License is available at * 10 * http://www.opensource.org/licenses/cpl1.0.txt * 11 * (with md5 checksum 059e8cd6165cb4c31e351f2b69388fd9) * 12 * * 13 * Information and Software Systems Research * 14 * AT&T Research * 15 * Florham Park NJ * 16 * * 17 * Glenn Fowler <gsf@research.att.com> * 18 * David Korn <dgk@research.att.com> * 19 * Phong Vo <kpv@research.att.com> * 20 * * 21 ***********************************************************************/ 22 #ifndef _SFIO_S_H 23 #define _SFIO_S_H 1 24 25 /* 26 * sfio file structure used by sfio and the stdio source compatibility library 27 */ 28 29 #if !defined(_SFHDR_H) && defined(_SFIO_H) && SFIO_VERSION < 20020214L 30 #define _data data 31 #define _endb endb 32 #define _next next 33 #endif 34 35 struct _sfio_s 36 { unsigned char* _next; /* next position to read/write from */ 37 unsigned char* _endw; /* end of write buffer */ 38 unsigned char* _endr; /* end of read buffer */ 39 unsigned char* _endb; /* end of buffer */ 40 struct _sfio_s* _push; /* the stream that was pushed on */ 41 unsigned short _flags; /* type of stream */ 42 short _file; /* file descriptor */ 43 unsigned char* _data; /* base of data buffer */ 44 ssize_t _size; /* buffer size */ 45 ssize_t _val; /* values or string lengths */ 46 #ifdef _SFIO_PRIVATE 47 _SFIO_PRIVATE 48 #endif 49 }; 50 51 #endif 52