diff options
Diffstat (limited to 'usr/src/lib/libbc/libc/stdio/sys5/filbuf.c')
-rw-r--r-- | usr/src/lib/libbc/libc/stdio/sys5/filbuf.c | 88 |
1 files changed, 0 insertions, 88 deletions
diff --git a/usr/src/lib/libbc/libc/stdio/sys5/filbuf.c b/usr/src/lib/libbc/libc/stdio/sys5/filbuf.c deleted file mode 100644 index 7d197f149c..0000000000 --- a/usr/src/lib/libbc/libc/stdio/sys5/filbuf.c +++ /dev/null @@ -1,88 +0,0 @@ -/* - * CDDL HEADER START - * - * The contents of this file are subject to the terms of the - * Common Development and Distribution License, Version 1.0 only - * (the "License"). You may not use this file except in compliance - * with the License. - * - * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE - * or http://www.opensolaris.org/os/licensing. - * See the License for the specific language governing permissions - * and limitations under the License. - * - * When distributing Covered Code, include this CDDL HEADER in each - * file and include the License file at usr/src/OPENSOLARIS.LICENSE. - * If applicable, add the following below this CDDL HEADER, with the - * fields enclosed by brackets "[]" replaced with your own identifying - * information: Portions Copyright [yyyy] [name of copyright owner] - * - * CDDL HEADER END - */ -/* - * Copyright 1998 Sun Microsystems, Inc. All rights reserved. - * Use is subject to license terms. - */ - -/* Copyright (c) 1984 AT&T */ -/* All Rights Reserved */ - -#pragma ident "%Z%%M% %I% %E% SMI" - -/*LINTLIBRARY*/ -#include <stdio.h> -#include <unistd.h> - -extern void _findbuf(); - -static void lbfflush(FILE *); - -int -__filbuf(FILE *iop) -{ - return (_filbuf(iop)); -} - -int -_filbuf(FILE *iop) -{ - if ( !(iop->_flag & _IOREAD) ) - if (iop->_flag & _IORW) - iop->_flag |= _IOREAD; - else - return(EOF); - - if (iop->_flag&_IOSTRG) - return(EOF); - - if (iop->_base == NULL) /* get buffer if we don't have one */ - _findbuf(iop); - - /* if this device is a terminal (line-buffered) or unbuffered, then */ - /* flush buffers of all line-buffered devices currently writing */ - - if (iop->_flag & (_IOLBF | _IONBF)) - _fwalk(lbfflush); - - iop->_ptr = iop->_base; - iop->_cnt = read(fileno(iop), (char *)iop->_base, - (unsigned)((iop->_flag & _IONBF) ? 1 : iop->_bufsiz )); - if (--iop->_cnt >= 0) /* success */ - return (*iop->_ptr++); - if (iop->_cnt != -1) /* error */ - iop->_flag |= _IOERR; - else { /* end-of-file */ - iop->_flag |= _IOEOF; - if (iop->_flag & _IORW) - iop->_flag &= ~_IOREAD; - } - iop->_cnt = 0; - return (EOF); -} - -static void -lbfflush(FILE *iop) -{ - if (iop->_flag & _IOLBF) - (void) fflush(iop); -} |