34 lines
		
	
	
		
			550 B
		
	
	
	
		
			C
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			34 lines
		
	
	
		
			550 B
		
	
	
	
		
			C
		
	
	
		
			Executable File
		
	
	
	
	
/*
 | 
						|
 * perror.c - print an error message on the standard error output
 | 
						|
 */
 | 
						|
/* $Header$ */
 | 
						|
 | 
						|
#if	defined(_POSIX_SOURCE)
 | 
						|
#include	<sys/types.h>
 | 
						|
#endif
 | 
						|
#include	<stdio.h>
 | 
						|
#include	<errno.h>
 | 
						|
#include	<stdio.h>
 | 
						|
#include	<string.h>
 | 
						|
#include	"loc_incl.h"
 | 
						|
 | 
						|
ssize_t _write(int d, const char *buf, size_t nbytes);
 | 
						|
 | 
						|
void
 | 
						|
perror(const char *s)
 | 
						|
{
 | 
						|
	char *p;
 | 
						|
	int fd;
 | 
						|
 | 
						|
	p = strerror(errno);
 | 
						|
	fd = fileno(stderr);
 | 
						|
	fflush(stdout);
 | 
						|
	fflush(stderr);
 | 
						|
	if (s && *s) {
 | 
						|
		_write(fd, s, strlen(s));
 | 
						|
		_write(fd, ": ", 2);
 | 
						|
	}
 | 
						|
	_write(fd, p, strlen(p));
 | 
						|
	_write(fd, "\n", 1);
 | 
						|
}
 |