sanei: replace non-portable isfdtype() with fstat()

master^2
Michael Klein 2023-01-12 20:46:36 +01:00
rodzic 013a47c03b
commit c33752c719
1 zmienionych plików z 20 dodań i 19 usunięć

Wyświetl plik

@ -97,30 +97,31 @@ sanei_debug_msg
(int level, int max_level, const char *be, const char *fmt, va_list ap) (int level, int max_level, const char *be, const char *fmt, va_list ap)
{ {
char *msg; char *msg;
if (max_level >= level) if (max_level >= level)
{ {
if ( 1 == isfdtype(fileno(stderr), S_IFSOCK) ) struct stat sb;
{ if ( 0 == fstat(fileno(stderr), &sb) && S_IFSOCK == (sb.st_mode & S_IFMT) )
msg = (char *)malloc (sizeof(char) * (strlen(be) + strlen(fmt) + 4)); {
if (msg == NULL) msg = (char *)malloc (sizeof(char) * (strlen(be) + strlen(fmt) + 4));
{ if (msg == NULL)
syslog (LOG_DEBUG, "[sanei_debug] malloc() failed\n"); {
vsyslog (LOG_DEBUG, fmt, ap); syslog (LOG_DEBUG, "[sanei_debug] malloc() failed\n");
} vsyslog (LOG_DEBUG, fmt, ap);
else }
{ else
sprintf (msg, "[%s] %s", be, fmt); {
sprintf (msg, "[%s] %s", be, fmt);
vsyslog(LOG_DEBUG, msg, ap); vsyslog(LOG_DEBUG, msg, ap);
free (msg); free (msg);
} }
} }
else else
{ {
fprintf (stderr, "[%s] ", be); fprintf (stderr, "[%s] ", be);
vfprintf (stderr, fmt, ap); vfprintf (stderr, fmt, ap);
} }
} }
} }