X-Git-Url: https://git.decadent.org.uk/gitweb/?p=nfs-utils.git;a=blobdiff_plain;f=utils%2Fgssd%2Ferr_util.c;h=fe09eda6761067d9f7d50bd9201dd0696bb285ad;hp=f3314323923dba2eb6dfd49cd40598f160b03037;hb=05f93b531d59df6e976d9b40c97b51546524040a;hpb=3da69ce5c4fac5677e91aa20e60750ab8de2ab97 diff --git a/utils/gssd/err_util.c b/utils/gssd/err_util.c index f331432..fe09eda 100644 --- a/utils/gssd/err_util.c +++ b/utils/gssd/err_util.c @@ -28,66 +28,44 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ +#ifdef HAVE_CONFIG_H +#include +#endif /* HAVE_CONFIG_H */ + #include #include -#include #include -#include "err_util.h" +#include "xlog.h" static int verbosity = 0; static int fg = 0; -static char message_buf[500]; - void initerr(char *progname, int set_verbosity, int set_fg) { verbosity = set_verbosity; fg = set_fg; if (!fg) - openlog(progname, LOG_PID, LOG_DAEMON); + xlog_open(progname); } void printerr(int priority, char *format, ...) { va_list args; - int ret; - int buf_used, buf_available; - char *buf; /* Don't bother formatting a message we're never going to print! */ if (priority > verbosity) return; - buf_used = strlen(message_buf); - /* subtract 4 to leave room for "...\n" if necessary */ - buf_available = sizeof(message_buf) - buf_used - 4; - buf = message_buf + buf_used; - - /* - * Aggregate lines: only print buffer when we get to the - * end of a line or run out of space - */ va_start(args, format); - ret = vsnprintf(buf, buf_available, format, args); + if (fg) + vfprintf(stderr, format, args); + else + xlog_backend(L_ERROR, format, args); va_end(args); +} - if (ret < 0) - goto printit; - if (ret >= buf_available) { - /* Indicate we're truncating */ - strcat(message_buf, "...\n"); - goto printit; - } - if (message_buf[strlen(message_buf) - 1] == '\n') - goto printit; - return; -printit: - if (fg) { - fprintf(stderr, "%s", message_buf); - } else { - syslog(LOG_ERR, "%s", message_buf); - } - /* reset the buffer */ - memset(message_buf, 0, sizeof(message_buf)); +int get_verbosity(void) +{ + return verbosity; }