+---
+* [Bug 3585] Unity tests mix buffered and unbuffered output <perlinger@ntp.org>
+ - stdout+stderr are set to line buffered during test setup now
+
---
(4.2.8p13) 2019/03/07 Released by Harlan Stenn <stenn@ntp.org>
msyslog msl_args; \
} while (FALSE)
+extern int change_iobufs(int how);
+/* how: 0->unbuffered, 1->linebuffer, 2->full */
+
#endif /* NTP_SYSLOG_H */
msyslog(LOG_ERR, "Cannot reopen log file %s, %m",
syslog_fname);
}
+
+/* Helper for unit tests, where stdout + stderr are piped to the same
+ * stream. This works moderately reliable only if both streams are
+ * unbuffered or line buffered. Unfortunately stdout can be fully
+ * buffered on pipes or files...
+ */
+int
+change_iobufs(
+ int how
+ )
+{
+ int retv = 0;
+
+# ifdef HAVE_SETVBUF
+
+ int mode;
+
+ switch (how) {
+ case 0 : mode = _IONBF; break; /* no buffering */
+ case 1 : mode = _IOLBF; break; /* line buffering */
+ case 2 : mode = _IOFBF; break; /* full buffering */
+ default: mode = _IOLBF; break; /* line buffering */
+ }
+
+ retv = 1;
+ if (setvbuf(stdout, NULL, mode, BUFSIZ) != 0)
+ retv = -1;
+ if (setvbuf(stderr, NULL, mode, BUFSIZ) != 0)
+ retv = -1;
+
+# else
+
+ UNUSED_ARG(how);
+
+# endif
+
+ return retv;
+}
//=======Suite Setup=====
static void suite_setup(void)
{
+extern int change_iobufs(int);
extern int change_logfile(const char*, int);
+change_iobufs(1);
change_logfile("stderr", 0);
}
//=======Suite Setup=====
static void suite_setup(void)
{
+extern int change_iobufs(int);
extern int change_logfile(const char*, int);
+change_iobufs(1);
change_logfile("stderr", 0);
}
//=======Suite Setup=====
static void suite_setup(void)
{
+extern int change_iobufs(int);
extern int change_logfile(const char*, int);
+change_iobufs(1);
change_logfile("stderr", 0);
}
//=======Suite Setup=====
static void suite_setup(void)
{
+extern int change_iobufs(int);
extern int change_logfile(const char*, int);
+change_iobufs(1);
change_logfile("stderr", 0);
}
//=======Suite Setup=====
static void suite_setup(void)
{
+extern int change_iobufs(int);
extern int change_logfile(const char*, int);
+change_iobufs(1);
change_logfile("stderr", 0);
}
//=======Suite Setup=====
static void suite_setup(void)
{
+extern int change_iobufs(int);
extern int change_logfile(const char*, int);
+change_iobufs(1);
change_logfile("stderr", 0);
}
//=======Suite Setup=====
static void suite_setup(void)
{
+extern int change_iobufs(int);
extern int change_logfile(const char*, int);
+change_iobufs(1);
change_logfile("stderr", 0);
}
//=======Suite Setup=====
static void suite_setup(void)
{
+extern int change_iobufs(int);
extern int change_logfile(const char*, int);
+change_iobufs(1);
change_logfile("stderr", 0);
}
//=======Suite Setup=====
static void suite_setup(void)
{
+extern int change_iobufs(int);
extern int change_logfile(const char*, int);
+change_iobufs(1);
change_logfile("stderr", 0);
}
---
:unity:
:suite_setup:
+ - extern int change_iobufs(int);
- extern int change_logfile(const char*, int);
+ - change_iobufs(1);
- change_logfile("stderr", 0);
//=======Suite Setup=====
static void suite_setup(void)
{
+extern int change_iobufs(int);
extern int change_logfile(const char*, int);
+change_iobufs(1);
change_logfile("stderr", 0);
}
---
:unity:
:suite_setup:
+ - extern int change_iobufs(int);
- extern int change_logfile(const char*, int);
+ - change_iobufs(1);
- change_logfile("stderr", 0);
-
---
:unity:
:suite_setup:
+ - extern int change_iobufs(int);
- extern int change_logfile(const char*, int);
+ - change_iobufs(1);
- change_logfile("stderr", 0);
//=======Suite Setup=====
static void suite_setup(void)
{
+extern int change_iobufs(int);
extern int change_logfile(const char*, int);
+change_iobufs(1);
change_logfile("stderr", 0);
}
//=======Suite Setup=====
static void suite_setup(void)
{
+extern int change_iobufs(int);
extern int change_logfile(const char*, int);
+change_iobufs(1);
change_logfile("stderr", 0);
}
//=======Suite Setup=====
static void suite_setup(void)
{
+extern int change_iobufs(int);
extern int change_logfile(const char*, int);
+change_iobufs(1);
change_logfile("stderr", 0);
}
//=======Suite Setup=====
static void suite_setup(void)
{
+extern int change_iobufs(int);
extern int change_logfile(const char*, int);
+change_iobufs(1);
change_logfile("stderr", 0);
}
//=======Suite Setup=====
static void suite_setup(void)
{
+extern int change_iobufs(int);
extern int change_logfile(const char*, int);
+change_iobufs(1);
change_logfile("stderr", 0);
}
//=======Suite Setup=====
static void suite_setup(void)
{
+extern int change_iobufs(int);
extern int change_logfile(const char*, int);
+change_iobufs(1);
change_logfile("stderr", 0);
}
//=======Suite Setup=====
static void suite_setup(void)
{
+extern int change_iobufs(int);
extern int change_logfile(const char*, int);
+change_iobufs(1);
change_logfile("stderr", 0);
}
//=======Suite Setup=====
static void suite_setup(void)
{
+extern int change_iobufs(int);
extern int change_logfile(const char*, int);
+change_iobufs(1);
change_logfile("stderr", 0);
}
//=======Suite Setup=====
static void suite_setup(void)
{
+extern int change_iobufs(int);
extern int change_logfile(const char*, int);
+change_iobufs(1);
change_logfile("stderr", 0);
}
//=======Suite Setup=====
static void suite_setup(void)
{
+extern int change_iobufs(int);
extern int change_logfile(const char*, int);
+change_iobufs(1);
change_logfile("stderr", 0);
}
//=======Suite Setup=====
static void suite_setup(void)
{
+extern int change_iobufs(int);
extern int change_logfile(const char*, int);
+change_iobufs(1);
change_logfile("stderr", 0);
}
//=======Suite Setup=====
static void suite_setup(void)
{
+extern int change_iobufs(int);
extern int change_logfile(const char*, int);
+change_iobufs(1);
change_logfile("stderr", 0);
}
//=======Suite Setup=====
static void suite_setup(void)
{
+extern int change_iobufs(int);
extern int change_logfile(const char*, int);
+change_iobufs(1);
change_logfile("stderr", 0);
}
//=======Suite Setup=====
static void suite_setup(void)
{
+extern int change_iobufs(int);
extern int change_logfile(const char*, int);
+change_iobufs(1);
change_logfile("stderr", 0);
}
//=======Suite Setup=====
static void suite_setup(void)
{
+extern int change_iobufs(int);
extern int change_logfile(const char*, int);
+change_iobufs(1);
change_logfile("stderr", 0);
}
//=======Suite Setup=====
static void suite_setup(void)
{
+extern int change_iobufs(int);
extern int change_logfile(const char*, int);
+change_iobufs(1);
change_logfile("stderr", 0);
}
//=======Suite Setup=====
static void suite_setup(void)
{
+extern int change_iobufs(int);
extern int change_logfile(const char*, int);
+change_iobufs(1);
change_logfile("stderr", 0);
}
//=======Suite Setup=====
static void suite_setup(void)
{
+extern int change_iobufs(int);
extern int change_logfile(const char*, int);
+change_iobufs(1);
change_logfile("stderr", 0);
}
//=======Suite Setup=====
static void suite_setup(void)
{
+extern int change_iobufs(int);
extern int change_logfile(const char*, int);
+change_iobufs(1);
change_logfile("stderr", 0);
}
//=======Suite Setup=====
static void suite_setup(void)
{
+extern int change_iobufs(int);
extern int change_logfile(const char*, int);
+change_iobufs(1);
change_logfile("stderr", 0);
}
//=======Suite Setup=====
static void suite_setup(void)
{
+extern int change_iobufs(int);
extern int change_logfile(const char*, int);
+change_iobufs(1);
change_logfile("stderr", 0);
}
//=======Suite Setup=====
static void suite_setup(void)
{
+extern int change_iobufs(int);
extern int change_logfile(const char*, int);
+change_iobufs(1);
change_logfile("stderr", 0);
}
//=======Suite Setup=====
static void suite_setup(void)
{
+extern int change_iobufs(int);
extern int change_logfile(const char*, int);
+change_iobufs(1);
change_logfile("stderr", 0);
}
//=======Suite Setup=====
static void suite_setup(void)
{
+extern int change_iobufs(int);
extern int change_logfile(const char*, int);
+change_iobufs(1);
change_logfile("stderr", 0);
}
//=======Suite Setup=====
static void suite_setup(void)
{
+extern int change_iobufs(int);
extern int change_logfile(const char*, int);
+change_iobufs(1);
change_logfile("stderr", 0);
}
//=======Suite Setup=====
static void suite_setup(void)
{
+extern int change_iobufs(int);
extern int change_logfile(const char*, int);
+change_iobufs(1);
change_logfile("stderr", 0);
}
//=======Suite Setup=====
static void suite_setup(void)
{
+extern int change_iobufs(int);
extern int change_logfile(const char*, int);
+change_iobufs(1);
change_logfile("stderr", 0);
}
//=======Suite Setup=====
static void suite_setup(void)
{
+extern int change_iobufs(int);
extern int change_logfile(const char*, int);
+change_iobufs(1);
change_logfile("stderr", 0);
}
//=======Suite Setup=====
static void suite_setup(void)
{
+extern int change_iobufs(int);
extern int change_logfile(const char*, int);
+change_iobufs(1);
change_logfile("stderr", 0);
}
//=======Suite Setup=====
static void suite_setup(void)
{
+extern int change_iobufs(int);
extern int change_logfile(const char*, int);
+change_iobufs(1);
change_logfile("stderr", 0);
}
//=======Suite Setup=====
static void suite_setup(void)
{
+extern int change_iobufs(int);
extern int change_logfile(const char*, int);
+change_iobufs(1);
change_logfile("stderr", 0);
}
//=======Suite Setup=====
static void suite_setup(void)
{
+extern int change_iobufs(int);
extern int change_logfile(const char*, int);
+change_iobufs(1);
change_logfile("stderr", 0);
}
//=======Suite Setup=====
static void suite_setup(void)
{
+extern int change_iobufs(int);
extern int change_logfile(const char*, int);
+change_iobufs(1);
change_logfile("stderr", 0);
}
//=======Suite Setup=====
static void suite_setup(void)
{
+extern int change_iobufs(int);
extern int change_logfile(const char*, int);
+change_iobufs(1);
change_logfile("stderr", 0);
}
//=======Suite Setup=====
static void suite_setup(void)
{
+extern int change_iobufs(int);
extern int change_logfile(const char*, int);
+change_iobufs(1);
change_logfile("stderr", 0);
}
//=======Suite Setup=====
static void suite_setup(void)
{
+extern int change_iobufs(int);
extern int change_logfile(const char*, int);
+change_iobufs(1);
change_logfile("stderr", 0);
}
//=======Suite Setup=====
static void suite_setup(void)
{
+extern int change_iobufs(int);
extern int change_logfile(const char*, int);
+change_iobufs(1);
change_logfile("stderr", 0);
}
//=======Suite Setup=====
static void suite_setup(void)
{
+extern int change_iobufs(int);
extern int change_logfile(const char*, int);
+change_iobufs(1);
change_logfile("stderr", 0);
}
//=======Suite Setup=====
static void suite_setup(void)
{
+extern int change_iobufs(int);
extern int change_logfile(const char*, int);
+change_iobufs(1);
change_logfile("stderr", 0);
}
//=======Suite Setup=====
static void suite_setup(void)
{
+extern int change_iobufs(int);
extern int change_logfile(const char*, int);
+change_iobufs(1);
change_logfile("stderr", 0);
}
---
:unity:
:suite_setup:
+ - extern int change_iobufs(int);
- extern int change_logfile(const char*, int);
+ - change_iobufs(1);
- change_logfile("stderr", 0);
//=======Suite Setup=====
static void suite_setup(void)
{
+extern int change_iobufs(int);
extern int change_logfile(const char*, int);
+change_iobufs(1);
change_logfile("stderr", 0);
}
//=======Suite Setup=====
static void suite_setup(void)
{
+extern int change_iobufs(int);
extern int change_logfile(const char*, int);
+change_iobufs(1);
change_logfile("stderr", 0);
}
//=======Suite Setup=====
static void suite_setup(void)
{
+extern int change_iobufs(int);
extern int change_logfile(const char*, int);
+change_iobufs(1);
change_logfile("stderr", 0);
}
//=======Suite Setup=====
static void suite_setup(void)
{
+extern int change_iobufs(int);
extern int change_logfile(const char*, int);
+change_iobufs(1);
change_logfile("stderr", 0);
}
//=======Suite Setup=====
static void suite_setup(void)
{
+extern int change_iobufs(int);
extern int change_logfile(const char*, int);
+change_iobufs(1);
change_logfile("stderr", 0);
}
//=======Suite Setup=====
static void suite_setup(void)
{
+extern int change_iobufs(int);
extern int change_logfile(const char*, int);
+change_iobufs(1);
change_logfile("stderr", 0);
}
---
:unity:
:suite_setup:
+ - extern int change_iobufs(int);
- extern int change_logfile(const char*, int);
+ - change_iobufs(1);
- change_logfile("stderr", 0);
//=======Suite Setup=====
static void suite_setup(void)
{
+extern int change_iobufs(int);
extern int change_logfile(const char*, int);
+change_iobufs(1);
change_logfile("stderr", 0);
}
---
:unity:
:suite_setup:
+ - extern int change_iobufs(int);
- extern int change_logfile(const char*, int);
+ - change_iobufs(1);
- change_logfile("stderr", 0);
-
//=======Suite Setup=====
static void suite_setup(void)
{
+extern int change_iobufs(int);
extern int change_logfile(const char*, int);
+change_iobufs(1);
change_logfile("stderr", 0);
}
//=======Suite Setup=====
static void suite_setup(void)
{
+extern int change_iobufs(int);
extern int change_logfile(const char*, int);
+change_iobufs(1);
change_logfile("stderr", 0);
}
//=======Suite Setup=====
static void suite_setup(void)
{
+extern int change_iobufs(int);
extern int change_logfile(const char*, int);
+change_iobufs(1);
change_logfile("stderr", 0);
}
---
:unity:
:suite_setup:
+ - extern int change_iobufs(int);
- extern int change_logfile(const char*, int);
+ - change_iobufs(1);
- change_logfile("stderr", 0);
-
//=======Suite Setup=====
static void suite_setup(void)
{
+extern int change_iobufs(int);
extern int change_logfile(const char*, int);
+change_iobufs(1);
change_logfile("stderr", 0);
}
---
:unity:
:suite_setup:
+ - extern int change_iobufs(int);
- extern int change_logfile(const char*, int);
+ - change_iobufs(1);
- change_logfile("stderr", 0);
-