0,0 → 1,68 |
/* |
* Copyright (c) 1990 The Regents of the University of California. |
* All rights reserved. |
* |
* Redistribution and use in source and binary forms are permitted |
* provided that the above copyright notice and this paragraph are |
* duplicated in all such forms and that any documentation, |
* advertising materials, and other materials related to such |
* distribution and use acknowledge that the software was developed |
* by the University of California, Berkeley. The name of the |
* University may not be used to endorse or promote products derived |
* from this software without specific prior written permission. |
* THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR |
* IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED |
* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. |
*/ |
/* |
Modified copy of setbuf.c to support setlinebuf function |
defined as part of BSD. |
Modifications by Gareth Pearce, 2001. |
*/ |
|
/* |
FUNCTION |
<<setlinebuf>>---specify line buffering for a file or stream |
|
INDEX |
setlinebuf |
|
ANSI_SYNOPSIS |
#include <stdio.h> |
void setlinebuf(FILE *<[fp]>); |
|
TRAD_SYNOPSIS |
#include <stdio.h> |
void setlinebuf(<[fp]>) |
FILE *<[fp]>; |
|
DESCRIPTION |
<<setlinebuf>> specifies that output to the file or stream identified by |
<[fp]> should be line buffered. This causes the file or stream to pass |
on output to the host system at every newline, as well as when the |
buffer is full, or when an input operation intervenes. |
|
WARNINGS |
You may only use <<setlinebuf>> before performing any file operation |
other than opening the file. |
|
RETURNS |
<<setlinebuf>> returns as per setvbuf. |
|
PORTABILITY |
This function comes from BSD not ANSI or POSIX. |
|
Supporting OS subroutines required: <<close>>, <<fstat>>, <<isatty>>, |
<<lseek>>, <<read>>, <<sbrk>>, <<write>>. |
*/ |
|
#include <_ansi.h> |
#include <stdio.h> |
#include "local.h" |
|
int |
_DEFUN(setlinebuf, (fp), |
FILE * fp) |
{ |
return (setvbuf (fp, (char *) NULL, _IOLBF, (size_t) 0)); |
} |