.\" .\" .\" The contents of this file are subject to the terms of the .\" Common Development and Distribution License (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] .\" .\" Copyright 1989 AT&T .\" Copyright (c) 2005, Sun Microsystems, Inc. All Rights Reserved .\" Copyright 2020 Robert Mustacchi .\" .Dd "March 25, 2020" .Dt FERROR 3C .Os .Sh NAME .Nm ferror , .Nm feof , .Nm clearerr , .Nm fileno .Nd stream status inquiries .Sh SYNOPSIS .In stdio.h .Ft int .Fo ferror .Fa "FILE *stream" .Fc .Ft int .Fo feof .Fa "FILE *stream" .Fc .Ft void .Fo clearerr .Fa "FILE *stream" .Fc .Ft int .Fo fileno .Fa "FILE *stream" .Fc .Sh DESCRIPTION The .Fn ferror function returns a non-zero value when an error has previously occurred reading from or writing to the named .Fa stream .Po see .Xr Intro 3 .Pc . It returns .Sy 0 otherwise. .Pp The .Fn feof function returns a non-zero value when .Sy EOF has previously been detected reading the named input .Fa stream . It returns .Sy 0 otherwise. .Pp The .Fn clearerr function resets the error indicator and .Sy EOF indicator to 0 on the named .Fa stream . .Pp The .Fn fileno function returns the integer file descriptor associated with the named .Fa stream ; see .Xr open 2 . Streams that are not associated with a file descriptor such as those that were created through the .Xr fmemopen 3C or .Xr open_memstream 3C functions will return .Sy -1 . .Sh INTERFACE STABILITY .Sy Standard .Sh MT-LEVEL .Sy MT-Safe .Sh SEE ALSO .Xr Intro 2 , .Xr open 2 , .Xr fmemopen 3C , .Xr fopen 3C , .Xr open_memstream 3C , .Xr stdio 3C