[master] db448e5 Make VUT_Error() always exit and insist on non-zero exit status.
Poul-Henning Kamp
phk at FreeBSD.org
Fri Apr 28 08:46:05 CEST 2017
commit db448e5677135bf18056852867d1fe42c5ddc969
Author: Poul-Henning Kamp <phk at FreeBSD.org>
Date: Fri Apr 28 06:43:53 2017 +0000
Make VUT_Error() always exit and insist on non-zero exit status.
Use fprintf(stderr,...) for progress messages.
I doubt we need a VUT_Msg() for that, given that only one use was
from outside vut.c, and that is probably an API mistake.
diff --git a/bin/varnishstat/varnishstat.c b/bin/varnishstat/varnishstat.c
index 713b473..c1f152e 100644
--- a/bin/varnishstat/varnishstat.c
+++ b/bin/varnishstat/varnishstat.c
@@ -326,8 +326,8 @@ main(int argc, char * const *argv)
if (!i)
break;
if (isnan(t_start) && t_arg > 0.) {
- VUT_Error(0, "Can't open log -"
- " retrying for %.0f seconds", t_arg);
+ fprintf(stderr, "Can't open log -"
+ " retrying for %.0f seconds\n", t_arg);
t_start = VTIM_real();
}
if (t_arg <= 0.)
diff --git a/include/vut.h b/include/vut.h
index d1e6ab3..5825994 100644
--- a/include/vut.h
+++ b/include/vut.h
@@ -67,8 +67,9 @@ struct VUT {
extern struct VUT VUT;
+//lint -sem(VUT_Error, r_no)
void VUT_Error(int status, const char *fmt, ...)
- __v_printflike(2, 3);
+ __v_printflike(2, 3) __attribute__((__noreturn__));
int VUT_g_Arg(const char *arg);
diff --git a/lib/libvarnishapi/vut.c b/lib/libvarnishapi/vut.c
index a0df661..3fd66ef 100644
--- a/lib/libvarnishapi/vut.c
+++ b/lib/libvarnishapi/vut.c
@@ -115,14 +115,14 @@ VUT_Error(int status, const char *fmt, ...)
{
va_list ap;
+ assert(status != 0);
AN(fmt);
va_start(ap, fmt);
vfprintf(stderr, fmt, ap);
va_end(ap);
fprintf(stderr, "\n");
- if (status)
- exit(status);
+ exit(status);
}
int
@@ -278,8 +278,8 @@ VUT_Setup(void)
break;
if (isnan(t_start) && VUT.t_arg > 0.) {
- VUT_Error(0, "Cannot open log -"
- " retrying for %.0f seconds", VUT.t_arg);
+ fprintf(stderr, "Cannot open log -"
+ " retrying for %.0f seconds\n", VUT.t_arg);
t_start = VTIM_real();
}
VSM_Close(VUT.vsm);
@@ -299,7 +299,7 @@ VUT_Setup(void)
else
VUT_Error(1, "%s", VSL_Error(VUT.vsl));
} else if (!isnan(t_start))
- VUT_Error(0, "Log opened");
+ fprintf(stderr, "Log opened\n");
}
if (c)
@@ -394,7 +394,7 @@ VUT_Main(void)
}
VSLQ_SetCursor(VUT.vslq, &c);
AZ(c);
- VUT_Error(0, "Log reacquired");
+ fprintf(stderr, "Log reacquired\n");
}
i = VSLQ_Dispatch(VUT.vslq, vut_dispatch, NULL);
@@ -424,10 +424,10 @@ VUT_Main(void)
if (i == -2)
/* Abandoned */
- VUT_Error(0, "Log abandoned");
+ fprintf(stderr, "Log abandoned\n");
else if (i < -2)
/* Overrun */
- VUT_Error(0, "Log overrun");
+ fprintf(stderr, "Log overrun\n");
VSM_Close(VUT.vsm);
}
More information about the varnish-commit
mailing list