diff options
author | 2015-10-29 22:41:27 +0000 | |
---|---|---|
committer | 2015-10-29 22:41:27 +0000 | |
commit | 4ca18184ce93a6b4186cbfc2064e9278dabd25cc (patch) | |
tree | 88d65e43ba05d97bef533e3764448265d5cdf630 | |
parent | remove unused variables (diff) | |
download | wireguard-openbsd-4ca18184ce93a6b4186cbfc2064e9278dabd25cc.tar.xz wireguard-openbsd-4ca18184ce93a6b4186cbfc2064e9278dabd25cc.zip |
Use stravis(3) instead of a homegrown vis-like function.
OK nicm@
-rw-r--r-- | usr.sbin/cron/do_command.c | 12 | ||||
-rw-r--r-- | usr.sbin/cron/funcs.h | 5 | ||||
-rw-r--r-- | usr.sbin/cron/misc.c | 53 |
3 files changed, 9 insertions, 61 deletions
diff --git a/usr.sbin/cron/do_command.c b/usr.sbin/cron/do_command.c index 17072b0d2e7..9aba71f3e3a 100644 --- a/usr.sbin/cron/do_command.c +++ b/usr.sbin/cron/do_command.c @@ -1,4 +1,4 @@ -/* $OpenBSD: do_command.c,v 1.50 2015/10/25 21:30:11 millert Exp $ */ +/* $OpenBSD: do_command.c,v 1.51 2015/10/29 22:41:27 millert Exp $ */ /* Copyright 1988,1990,1993,1994 by Paul Vixie * Copyright (c) 2004 by Internet Systems Consortium, Inc. ("ISC") @@ -18,6 +18,7 @@ */ #include "cron.h" +#include <vis.h> static void child_process(entry *, user *); @@ -125,10 +126,11 @@ child_process(entry *e, user *u) * PID is part of the log message. */ if ((e->flags & DONT_LOG) == 0) { - char *x = mkprints((u_char *)e->cmd, strlen(e->cmd)); - - log_it(usernm, getpid(), "CMD", x); - free(x); + char *x; + if (stravis(&x, e->cmd, 0) != -1) { + log_it(usernm, getpid(), "CMD", x); + free(x); + } } /* that's the last thing we'll log. close the log files. diff --git a/usr.sbin/cron/funcs.h b/usr.sbin/cron/funcs.h index f133d7b55c0..dd64da67331 100644 --- a/usr.sbin/cron/funcs.h +++ b/usr.sbin/cron/funcs.h @@ -1,4 +1,4 @@ -/* $OpenBSD: funcs.h,v 1.20 2015/10/29 21:19:09 millert Exp $ */ +/* $OpenBSD: funcs.h,v 1.21 2015/10/29 22:41:27 millert Exp $ */ /* * Copyright (c) 2004 by Internet Systems Consortium, Inc. ("ISC") @@ -59,14 +59,11 @@ int strtot(const char *nptr, char **endptr, time_t *tp); char *env_get(char *, char **), *arpadate(time_t *), - *mkprints(unsigned char *, unsigned int), *first_word(char *, char *), **env_init(void), **env_copy(char **), **env_set(char **, char *); -void mkprint(char *, unsigned char *, int); - user *load_user(int, struct passwd *, const char *), *find_user(cron_db *, const char *); diff --git a/usr.sbin/cron/misc.c b/usr.sbin/cron/misc.c index 6b7898a8988..106d0821275 100644 --- a/usr.sbin/cron/misc.c +++ b/usr.sbin/cron/misc.c @@ -1,4 +1,4 @@ -/* $OpenBSD: misc.c,v 1.62 2015/10/29 21:19:09 millert Exp $ */ +/* $OpenBSD: misc.c,v 1.63 2015/10/29 22:41:27 millert Exp $ */ /* Copyright 1988,1990,1993,1994 by Paul Vixie * Copyright (c) 2004 by Internet Systems Consortium, Inc. ("ISC") @@ -307,57 +307,6 @@ first_word(char *s, char *t) return (rb); } -/* warning: - * heavily ascii-dependent. - */ -void -mkprint(dst, src, len) - char *dst; - unsigned char *src; - int len; -{ - /* - * XXX - * We know this routine can't overflow the dst buffer because mkprints() - * allocated enough space for the worst case. - */ - while (len-- > 0) - { - unsigned char ch = *src++; - - if (ch < ' ') { /* control character */ - *dst++ = '^'; - *dst++ = ch + '@'; - } else if (ch < 0177) { /* printable */ - *dst++ = ch; - } else if (ch == 0177) { /* delete/rubout */ - *dst++ = '^'; - *dst++ = '?'; - } else { /* parity character */ - snprintf(dst, 5, "\\%03o", ch); - dst += strlen(dst); - } - } - *dst = '\0'; -} - -/* warning: - * returns a pointer to malloc'd storage, you must call free yourself. - */ -char * -mkprints(src, len) - unsigned char *src; - unsigned int len; -{ - char *dst = malloc(len*4 + 1); - - if (dst) - mkprint(dst, src, len); - - return (dst); -} - - static gid_t save_egid; int swap_gids() { save_egid = getegid(); return (setegid(getgid())); } int swap_gids_back() { return (setegid(save_egid)); } |