1
0
mirror of https://sourceware.org/git/glibc.git synced 2025-08-01 10:06:57 +03:00
1998-03-10  Ulrich Drepper  <drepper@cygnus.com>

	* libio/iovdprintf.c (_IO_vdprintf): Set _IO_DELETE_DONT_CLOSE
	flag.

	* misc/syslog.c (vsyslog): Don't try to send if not connected to
	syslog daemon.
	(closelog_internal): Don't do anything if not connected.
This commit is contained in:
Ulrich Drepper
1998-03-10 20:32:27 +00:00
parent 8193034b1d
commit fe848e9386
3 changed files with 22 additions and 11 deletions

View File

@ -1,3 +1,12 @@
1998-03-10 Ulrich Drepper <drepper@cygnus.com>
* libio/iovdprintf.c (_IO_vdprintf): Set _IO_DELETE_DONT_CLOSE
flag.
* misc/syslog.c (vsyslog): Don't try to send if not connected to
syslog daemon.
(closelog_internal): Don't do anything if not connected.
1998-03-10 17:54 Ulrich Drepper <drepper@cygnus.com> 1998-03-10 17:54 Ulrich Drepper <drepper@cygnus.com>
* libc.map: Add _dl_debug_message. * libc.map: Add _dl_debug_message.

View File

@ -1,4 +1,4 @@
/* Copyright (C) 1995, 1997 Free Software Foundation, Inc. /* Copyright (C) 1995, 1997, 1998 Free Software Foundation, Inc.
This file is part of the GNU IO Library. This file is part of the GNU IO Library.
This library is free software; you can redistribute it and/or This library is free software; you can redistribute it and/or
@ -52,11 +52,10 @@ _IO_vdprintf (d, format, arg)
_IO_un_link (&tmpfil.file); _IO_un_link (&tmpfil.file);
return EOF; return EOF;
} }
tmpfil.file._flags &= ~_IO_DELETE_DONT_CLOSE;
tmpfil.file._IO_file_flags = tmpfil.file._IO_file_flags =
_IO_mask_flags (&tmpfil.file, _IO_NO_READS, (_IO_mask_flags (&tmpfil.file, _IO_NO_READS,
_IO_NO_READS+_IO_NO_WRITES+_IO_IS_APPENDING); _IO_NO_READS+_IO_NO_WRITES+_IO_IS_APPENDING)
| _IO_DELETE_DONT_CLOSE);
done = _IO_vfprintf (&tmpfil.file, format, arg); done = _IO_vfprintf (&tmpfil.file, format, arg);

View File

@ -201,7 +201,7 @@ vsyslog(pri, fmt, ap)
if (LogType == SOCK_STREAM) if (LogType == SOCK_STREAM)
++bufsize; ++bufsize;
if (__send(LogFile, buf, bufsize, 0) < 0) if (!connected || __send(LogFile, buf, bufsize, 0) < 0)
{ {
closelog_internal (); /* attempt re-open next time */ closelog_internal (); /* attempt re-open next time */
/* /*
@ -245,7 +245,7 @@ openlog_internal(const char *ident, int logstat, int logfac)
(void)strncpy(SyslogAddr.sa_data, _PATH_LOG, (void)strncpy(SyslogAddr.sa_data, _PATH_LOG,
sizeof(SyslogAddr.sa_data)); sizeof(SyslogAddr.sa_data));
if (LogStat & LOG_NDELAY) { if (LogStat & LOG_NDELAY) {
if ((LogFile = socket(AF_UNIX, LogType, 0)) if ((LogFile = __socket(AF_UNIX, LogType, 0))
== -1) == -1)
return; return;
(void)fcntl(LogFile, F_SETFD, 1); (void)fcntl(LogFile, F_SETFD, 1);
@ -292,15 +292,18 @@ openlog (const char *ident, int logstat, int logfac)
static void static void
sigpipe_handler (int signo) sigpipe_handler (int signo)
{ {
closelog_internal(); closelog_internal ();
} }
static void static void
closelog_internal() closelog_internal()
{ {
(void)close(LogFile); if (!connected)
LogFile = -1; return;
connected = 0;
close (LogFile);
LogFile = -1;
connected = 0;
} }
void void