diff --git a/plugins/alsa-utils.c b/plugins/alsa-utils.c index 30413987..1b09f634 100644 --- a/plugins/alsa-utils.c +++ b/plugins/alsa-utils.c @@ -36,12 +36,12 @@ static void save(void *arg) { if (rescue) { - _d("Skipping %s plugin in rescue mode.", __FILE__); + dbg("Skipping %s plugin in rescue mode.", __FILE__); return; } if (whichp(ALSACTL)) { - _d("Saving sound settings ..."); + dbg("Saving sound settings ..."); run_interactive(ALSACTL " -g store", "Saving sound settings"); } } @@ -49,12 +49,12 @@ static void save(void *arg) static void restore(void *arg) { if (rescue) { - _d("Skipping %s plugin in rescue mode.", __FILE__); + dbg("Skipping %s plugin in rescue mode.", __FILE__); return; } if (whichp(ALSACTL)) { - _d("Restoring sound settings ..."); + dbg("Restoring sound settings ..."); run_interactive(ALSACTL " -g restore", "Restoring sound settings"); } } diff --git a/plugins/bootmisc.c b/plugins/bootmisc.c index 23a8ef22..4e4f1ec2 100644 --- a/plugins/bootmisc.c +++ b/plugins/bootmisc.c @@ -80,7 +80,7 @@ static int bootclean(const char *fpath, const struct stat *sb, int tflag, struct if (ftw->level == 0) return 1; - _d("Removing %s ...", fpath); + dbg("Removing %s ...", fpath); (void)remove(fpath); return 0; @@ -113,7 +113,7 @@ static void clean(void *arg) static void ln(const char *target, const char *linkpath) { if (symlink(target, linkpath) && errno != EEXIST) - _pe("Failed creating %s -> %s symlink", target, linkpath); + err(1, "Failed creating %s -> %s symlink", target, linkpath); } /* Kernel defines the following compulsory and recommended links @@ -164,7 +164,7 @@ static void setup(void *arg) prev = umask(0); - _d("Setting up FHS structure in /var ..."); + dbg("Setting up FHS structure in /var ..."); makedir("/var/cache", 0755); makedir("/var/db", 0755); /* _PATH_VARDB on some systems */ makedir("/var/games", 0755); @@ -173,7 +173,7 @@ static void setup(void *arg) makedir("/var/lib/alarm", 0755); makedir("/var/lib/urandom",0755); if (fisdir("/run")) { - _d("System with new /run tmpfs ..."); + dbg("System with new /run tmpfs ..."); if (!fisdir("/run/lock")) makedir("/run/lock", 1777); ln("/run/lock", "/var/lock"); @@ -203,7 +203,7 @@ static void setup(void *arg) * If /etc/group or "utmp" group is missing, default to * "root", or "wheel", group. */ - _d("Setting up necessary UTMP files ..."); + dbg("Setting up necessary UTMP files ..."); gid = getgroup("utmp"); if (gid < 0) gid = 0; @@ -223,7 +223,7 @@ static void setup(void *arg) erase("/etc/network/run/ifstate"); #endif - _d("Setting up misc files ..."); + dbg("Setting up misc files ..."); makedir("/var/run/network",0755); /* Needed by Debian/Ubuntu ifupdown */ makedir("/var/run/lldpd", 0755); /* Needed by lldpd */ makedir("/var/run/pluto", 0755); /* Needed by Openswan */ diff --git a/plugins/dbus.c b/plugins/dbus.c index 14205f64..10e8d53f 100644 --- a/plugins/dbus.c +++ b/plugins/dbus.c @@ -58,19 +58,19 @@ static void setup(void *arg) char *cmd; if (rescue) { - _d("Skipping %s plugin in rescue mode.", __FILE__); + dbg("Skipping %s plugin in rescue mode.", __FILE__); return; } cmd = which(DBUS_DAEMON); if (!cmd) { - _d("Skipping plugin, %s is not installed.", DBUS_DAEMON); + dbg("Skipping plugin, %s is not installed.", DBUS_DAEMON); return; } prev =umask(0); - _d("Creating D-Bus Required Directories ..."); + dbg("Creating D-Bus Required Directories ..."); mksubsys("/var/run/dbus", 0755, DBUS_DAEMONUSER, DBUS_DAEMONGROUP); mksubsys("/var/run/lock/subsys", 0755, DBUS_DAEMONUSER, DBUS_DAEMONGROUP); mksubsys("/var/lib/dbus", 0755, DBUS_DAEMONUSER, DBUS_DAEMONGROUP); @@ -87,7 +87,7 @@ static void setup(void *arg) snprintf(line, sizeof(line), "[S12345789] cgroup.system pid:!%s @%s:%s %s %s -- %s", DBUS_DAEMONPIDFILE, DBUS_DAEMONUSER, DBUS_DAEMONGROUP, cmd, DBUS_ARGS, DBUS_DESC); if (service_register(SVC_TYPE_SERVICE, line, global_rlimit, NULL)) - _pe("Failed registering %s", DBUS_DAEMON); + err(1, "Failed registering %s", DBUS_DAEMON); free(cmd); umask(prev); diff --git a/plugins/hotplug.c b/plugins/hotplug.c index 6b998240..b4675475 100644 --- a/plugins/hotplug.c +++ b/plugins/hotplug.c @@ -35,7 +35,7 @@ static void setup(void *arg) char *path; if (rescue) { - _d("Skipping %s plugin in rescue mode.", __FILE__); + dbg("Skipping %s plugin in rescue mode.", __FILE__); return; } @@ -64,7 +64,7 @@ static void setup(void *arg) snprintf(cmd, sizeof(cmd), "[S12345789] cgroup.system pid:udevd name:udevd log %s " "-- Device event managing daemon", path); if (service_register(SVC_TYPE_SERVICE, cmd, global_rlimit, NULL)) { - _pe("Failed registering %s", path); + err(1, "Failed registering %s", path); } else { snprintf(cmd, sizeof(cmd), "cgroup.init :1 [S] log " "udevadm trigger -c add -t devices " diff --git a/plugins/mdevd.c b/plugins/mdevd.c index 1c1430a3..ae03e33a 100644 --- a/plugins/mdevd.c +++ b/plugins/mdevd.c @@ -61,13 +61,13 @@ static void setup(void *arg) FILE *fp; if (rescue) { - _d("Skipping %s plugin in rescue mode.", __FILE__); + dbg("Skipping %s plugin in rescue mode.", __FILE__); return; } cmd = which(MDEVD_DAEMON); if (!cmd) { - _d("Skipping plugin, %s is not installed.", MDEVD_DAEMON); + dbg("Skipping plugin, %s is not installed.", MDEVD_DAEMON); return; } @@ -91,7 +91,7 @@ static void setup(void *arg) snprintf(line, sizeof(line), "[S12345789] cgroup.system pid:!%s @%s:%s %s %s -- %s", MDEVD_DAEMONPIDFILE, MDEVD_DAEMONUSER, MDEVD_DAEMONGROUP, cmd, MDEVD_ARGS, MDEVD_DESC); if (service_register(SVC_TYPE_SERVICE, line, global_rlimit, NULL)) - _pe("Failed registering %s", MDEVD_DAEMON); + err(1, "Failed registering %s", MDEVD_DAEMON); free(cmd); umask(prev); diff --git a/plugins/modprobe.c b/plugins/modprobe.c index 0003a4fc..c5e91866 100644 --- a/plugins/modprobe.c +++ b/plugins/modprobe.c @@ -71,14 +71,14 @@ static int modprobe(char *alias) pid = fork(); switch (pid) { case -1: - _pe("Failed forking modprobe child"); + err(1, "Failed forking modprobe child"); return 1; case 0: execvp(args[0], args); break; default: if (!complete(args[0], pid)) - _d("Successful modprobe of %s", alias); + dbg("Successful modprobe of %s", alias); break; } diff --git a/plugins/modules-load.c b/plugins/modules-load.c index 52856a39..60a792b0 100644 --- a/plugins/modules-load.c +++ b/plugins/modules-load.c @@ -142,7 +142,7 @@ static void load(void *arg) int index = 1; int i, num; - _d("Scanning " MODULES_LOAD_PATH " for config files ..."); + dbg("Scanning " MODULES_LOAD_PATH " for config files ..."); num = scandir(MODULES_LOAD_PATH, &dentry, module_filter, alphasort); if (num > 0) { for (i = 0; i < num; i++) { diff --git a/plugins/netlink.c b/plugins/netlink.c index 8cc3af17..9a7597f6 100644 --- a/plugins/netlink.c +++ b/plugins/netlink.c @@ -62,7 +62,7 @@ static void nl_route(struct nlmsghdr *nlmsg, ssize_t len) int la; if (nlmsg->nlmsg_len < NLMSG_LENGTH(sizeof(struct rtmsg))) { - _e("Packet too small or truncated!"); + errx(1, "Packet too small or truncated!"); return; } @@ -70,7 +70,7 @@ static void nl_route(struct nlmsghdr *nlmsg, ssize_t len) a = RTM_RTA(r); la = RTM_PAYLOAD(nlmsg); if (la >= len) { - _e("Packet too large!"); + errx(1, "Packet too large!"); return; } @@ -80,18 +80,18 @@ static void nl_route(struct nlmsghdr *nlmsg, ssize_t len) switch (a->rta_type) { case RTA_GATEWAY: gw = *((int *)data); - //_d("GW: 0x%04x", gw); + //dbg("GW: 0x%04x", gw); break; case RTA_DST: dst = *((int *)data); plen = r->rtm_dst_len; - //_d("Prefix LEN: 0x%04x", plen); + //dbg("Prefix LEN: 0x%04x", plen); break; case RTA_OIF: idx = *((int *)data); - //_d("IDX: 0x%04x", idx); + //dbg("IDX: 0x%04x", idx); break; } @@ -102,7 +102,7 @@ static void nl_route(struct nlmsghdr *nlmsg, ssize_t len) ing.s_addr = gw; inet_ntop(AF_INET, &ind, daddr, sizeof(daddr)); inet_ntop(AF_INET, &ing, gaddr, sizeof(gaddr)); - _d("Got gw %s dst/len %s/%d ifindex %d", gaddr, daddr, plen, idx); + dbg("Got gw %s dst/len %s/%d ifindex %d", gaddr, daddr, plen, idx); if ((!dst && !plen) && (gw || idx)) { if (nlmsg->nlmsg_type == RTM_DELROUTE) { @@ -167,7 +167,7 @@ static void nl_link(struct nlmsghdr *nlmsg, ssize_t len) int la; if (nlmsg->nlmsg_len < NLMSG_LENGTH(sizeof(struct ifinfomsg))) { - _e("Packet too small or truncated!"); + errx(1, "Packet too small or truncated!"); return; } @@ -175,7 +175,7 @@ static void nl_link(struct nlmsghdr *nlmsg, ssize_t len) a = (struct rtattr *)((char *)i + NLMSG_ALIGN(sizeof(struct ifinfomsg))); la = NLMSG_PAYLOAD(nlmsg, sizeof(struct ifinfomsg)); if (la >= len) { - _e("Packet too large!"); + errx(1, "Packet too large!"); return; } @@ -185,7 +185,7 @@ static void nl_link(struct nlmsghdr *nlmsg, ssize_t len) strlcpy(ifname, RTA_DATA(a), sizeof(ifname)); if (validate_ifname(ifname)) { - _d("Invalid interface name '%s', skipping ...", ifname); + dbg("Invalid interface name '%s', skipping ...", ifname); continue; } @@ -195,7 +195,7 @@ static void nl_link(struct nlmsghdr *nlmsg, ssize_t len) * New interface has appeared, or interface flags has changed. * Check ifi_flags here to see if the interface is UP/DOWN */ - _d("%s: New link, flags 0x%x, change 0x%x", ifname, i->ifi_flags, i->ifi_change); + dbg("%s: New link, flags 0x%x, change 0x%x", ifname, i->ifi_flags, i->ifi_change); net_cond_set(ifname, "exist", 1); net_cond_set(ifname, "up", i->ifi_flags & IFF_UP); net_cond_set(ifname, "running", i->ifi_flags & IFF_RUNNING); @@ -205,7 +205,7 @@ static void nl_link(struct nlmsghdr *nlmsg, ssize_t len) case RTM_DELLINK: /* NOTE: Interface has disappeared, not link down ... */ - _d("%s: Delete link", ifname); + dbg("%s: Delete link", ifname); net_cond_set(ifname, "exist", 0); net_cond_set(ifname, "up", 0); net_cond_set(ifname, "running", 0); @@ -213,15 +213,15 @@ static void nl_link(struct nlmsghdr *nlmsg, ssize_t len) break; case RTM_NEWADDR: - _d("%s: New Address", ifname); + dbg("%s: New Address", ifname); break; case RTM_DELADDR: - _d("%s: Deconfig Address", ifname); + dbg("%s: Deconfig Address", ifname); break; default: - _d("%s: Msg 0x%x", ifname, nlmsg->nlmsg_type); + dbg("%s: Msg 0x%x", ifname, nlmsg->nlmsg_type); break; } } @@ -246,46 +246,46 @@ static int nl_parse(int sd) break; default: - _pe("recv()"); + err(1, "recv()"); break; } return -1; } -// _d("recv %zd bytes", len); +// dbg("recv %zd bytes", len); l = (size_t)len; for (nh = (struct nlmsghdr *)nl_buf; NLMSG_OK(nh, l); nh = NLMSG_NEXT(nh, l)) { struct nlmsgerr *nle; switch (nh->nlmsg_type) { case NLMSG_DONE: -// _d("Done with netlink messages."); +// dbg("Done with netlink messages."); return 0; case NLMSG_ERROR: -// _d("Kernel netlink comm. error."); +// dbg("Kernel netlink comm. error."); nle = NLMSG_DATA(nh); if (nle) { errno = -nle->error; - _pe("Kernel netlink error %d", errno); + err(1, "Kernel netlink error %d", errno); } return -1; case RTM_NEWROUTE: case RTM_DELROUTE: -// _d("Netlink route ..."); +// dbg("Netlink route ..."); nl_route(nh, len); break; case RTM_NEWLINK: case RTM_DELLINK: -// _d("Netlink link ..."); +// dbg("Netlink link ..."); nl_link(nh, len); break; default: - _w("unhandled netlink message, type %d", nh->nlmsg_type); + warnx("unhandled netlink message, type %d", nh->nlmsg_type); break; } } @@ -304,21 +304,21 @@ static int nl_request(int sd, unsigned int seq, int type) switch (type) { case RTM_GETROUTE: -// _d("RTM_GETROUTE"); +// dbg("RTM_GETROUTE"); nlr->rtm.rtm_family = AF_INET; nlr->rtm.rtm_table = RT_TABLE_MAIN; nlr->nh.nlmsg_len = NLMSG_LENGTH(sizeof(struct rtmsg)); break; case RTM_GETLINK: -// _d("RTM_GETLINK"); +// dbg("RTM_GETLINK"); nlr->ifi.ifi_family = AF_UNSPEC; nlr->ifi.ifi_change = 0xFFFFFFFF; nlr->nh.nlmsg_len = NLMSG_LENGTH(sizeof(struct ifinfomsg)); break; default: - _w("Cannot resync, unhandled message type %d", type); + warnx("Cannot resync, unhandled message type %d", type); return -1; } @@ -331,13 +331,13 @@ static int nl_request(int sd, unsigned int seq, int type) static void nl_resync_routes(int sd, unsigned int seq) { if (nl_request(sd, seq, RTM_GETROUTE)) - _pe("Failed netlink route request"); + err(1, "Failed netlink route request"); } static void nl_resync_ifaces(int sd, unsigned int seq) { if (nl_request(sd, seq, RTM_GETLINK)) - _pe("Failed netlink link request"); + err(1, "Failed netlink link request"); } /* @@ -350,12 +350,12 @@ static void nl_resync(int all) sd = socket(AF_NETLINK, SOCK_DGRAM, NETLINK_ROUTE); if (sd < 0) { - _pe("netlink socket"); + err(1, "netlink socket"); return; } if (all) { - _d("============================ RESYNC ================================="); + dbg("============================ RESYNC ================================="); /* this doesn't update conditions, and thus does not stop services */ cond_deassert("net/"); @@ -364,7 +364,7 @@ static void nl_resync(int all) /* delayed update after we've corrected things */ service_step_all(SVC_TYPE_ANY); - _d("=========================== RESYNCED ================================"); + dbg("=========================== RESYNCED ================================"); } else nl_resync_routes(sd, seq++); @@ -375,7 +375,7 @@ static void nl_callback(void *arg, int sd, int events) { if (nl_parse(sd) < 0) { if (errno == ENOBUFS) { /* netlink(7) */ - _w("busy system, resynchronizing with kernel."); + warnx("busy system, resynchronizing with kernel."); nl_resync(1); return; } @@ -386,7 +386,7 @@ static void nl_callback(void *arg, int sd, int events) * we need to check ourselves, e.g. for loss of default route. */ if (nl_ifdown) { - _d("interface down, checking default route."); + dbg("interface down, checking default route."); if (nl_defidx > 0) { nl_defidx = 0; nl_resync(0); @@ -421,7 +421,7 @@ PLUGIN_INIT(plugin_init) sd = socket(AF_NETLINK, SOCK_RAW | SOCK_NONBLOCK | SOCK_CLOEXEC, NETLINK_ROUTE); if (sd < 0) { - _pe("socket()"); + err(1, "socket()"); return; } @@ -431,14 +431,14 @@ PLUGIN_INIT(plugin_init) sa.nl_pid = getpid(); if (bind(sd, (struct sockaddr *)&sa, sizeof(sa)) < 0) { - _pe("bind()"); + err(1, "bind()"); close(sd); return; } nl_buf = malloc(NL_BUFSZ); if (!nl_buf) { - _pe("malloc()"); + err(1, "malloc()"); close(sd); return; } diff --git a/plugins/pidfile.c b/plugins/pidfile.c index 3aa90ac8..4e3ab577 100644 --- a/plugins/pidfile.c +++ b/plugins/pidfile.c @@ -52,7 +52,7 @@ static int pidfile_add_path(struct iwatch *iw, char *path) ptr = slash++; slash = strchr(ptr, '/'); if (slash) { - _d("Path too deep, skipping."); + dbg("Path too deep, skipping."); return -1; } } @@ -71,21 +71,21 @@ static void pidfile_update_conds(char *dir, char *name, uint32_t mask) if (fnmatch("*\\.pid", fn, 0) && fnmatch("*/pid", fn, 0)) return; - _d("path: %s, mask: %08x", fn, mask); + dbg("path: %s, mask: %08x", fn, mask); svc = svc_find_by_pidfile(fn); if (!svc) { - _d("No matching svc for %s", fn); + dbg("No matching svc for %s", fn); return; } - _d("Found svc %s for %s with pid %d", svc->name, fn, svc->pid); + dbg("Found svc %s for %s with pid %d", svc->name, fn, svc->pid); mkcond(svc, cond, sizeof(cond)); if (mask & (IN_CLOSE_WRITE | IN_ATTRIB | IN_MODIFY | IN_MOVED_TO)) { svc_started(svc); if (!svc_has_pidfile(svc)) { - _d("Setting %s PID file to %s", svc->name, fn); + dbg("Setting %s PID file to %s", svc->name, fn); pid_file_set(svc, fn, 1); } @@ -102,7 +102,7 @@ static void pidfile_update_conds(char *dir, char *name, uint32_t mask) service_forked(svc); if (pid != svc->pid) { - _d("Forking service %s (cmd %s) changed PID from %d to %d", + dbg("Forking service %s (cmd %s) changed PID from %d to %d", svc_ident(svc, NULL, 0), svc->cmd, svc->pid, pid); svc->pid = pid; @@ -135,7 +135,7 @@ static void pidfile_scandir(struct iwatch *iw, char *dir, int len) return; for (i = 0; i < gl.gl_pathc; i++) { - _d("scan found %s", gl.gl_pathv[i]); + dbg("scan found %s", gl.gl_pathv[i]); pidfile_update_conds(dir, gl.gl_pathv[i], IN_CREATE); } globfree(&gl); @@ -150,7 +150,7 @@ static void pidfile_handle_dir(struct iwatch *iw, char *dir, char *name, int mas struct iwatch_path *iwp; paste(path, sizeof(path), dir, name); - _d("path: %s", path); + dbg("path: %s", path); iwp = iwatch_find_by_path(iw, path); @@ -174,7 +174,7 @@ static void pidfile_callback(void *arg, int fd, int events) sz = read(fd, ev_buf, sizeof(ev_buf) - 1); if (sz <= 0) { - _pe("invalid inotify event"); + err(1, "invalid inotify event"); return; } ev_buf[sz] = 0; @@ -248,7 +248,7 @@ static void pidfile_init(void *arg) char *path; if (mkpath(pid_runpath(_PATH_CONDPID, piddir, sizeof(piddir)), 0755) && errno != EEXIST) { - _pe("Failed creating %s condition directory, %s", COND_PID, _PATH_CONDPID); + err(1, "Failed creating %s condition directory, %s", COND_PID, _PATH_CONDPID); return; } @@ -259,10 +259,10 @@ static void pidfile_init(void *arg) */ path = realpath(_PATH_VARRUN, NULL); if (!path) { - _d("Failed querying realpath(%s): %s", _PATH_VARRUN, strerror(errno)); + dbg("Failed querying realpath(%s): %s", _PATH_VARRUN, strerror(errno)); path = realpath("/run", NULL); if (!path) { - _e("System does not have %s or /run, aborting.", _PATH_VARRUN); + errx(1, "System does not have %s or /run, aborting.", _PATH_VARRUN); return; } } diff --git a/plugins/procps.c b/plugins/procps.c index 5ce90944..f0364044 100644 --- a/plugins/procps.c +++ b/plugins/procps.c @@ -37,7 +37,7 @@ static void setup(void *arg) glob_t gl; if (rescue) { - _d("Skipping %s plugin in rescue mode.", __FILE__); + dbg("Skipping %s plugin in rescue mode.", __FILE__); return; } diff --git a/plugins/resolvconf.c b/plugins/resolvconf.c index 3d5d4f4a..fbc7c0a8 100644 --- a/plugins/resolvconf.c +++ b/plugins/resolvconf.c @@ -37,7 +37,7 @@ */ static void setup(void *arg) { - _d("Setting up the resolver ..."); + dbg("Setting up the resolver ..."); mkpath("/etc/resolvconf", 0755); mkpath("/etc/resolvconf/run", 0755); mkpath("/var/run/resolvconf", 0755); diff --git a/plugins/rtc.c b/plugins/rtc.c index d0d2e627..5f5acbf8 100644 --- a/plugins/rtc.c +++ b/plugins/rtc.c @@ -89,7 +89,7 @@ static void rtc_save(void *arg) char tz[128]; if (rescue) { - _d("Skipping %s plugin in rescue mode.", __FILE__); + dbg("Skipping %s plugin in rescue mode.", __FILE__); return; } @@ -131,7 +131,7 @@ static void rtc_restore(void *arg) char tz[128]; if (rescue) { - _d("Skipping %s plugin in rescue mode.", __FILE__); + dbg("Skipping %s plugin in rescue mode.", __FILE__); return; } diff --git a/plugins/sys.c b/plugins/sys.c index 423e3ae8..3f0e28f4 100644 --- a/plugins/sys.c +++ b/plugins/sys.c @@ -63,7 +63,7 @@ static void sys_update_conds(char *dir, char *name, uint32_t mask) return; cond += strlen(COND_BASE) + 1; - _d("cond: %s set: %d", cond, mask & IN_CREATE ? 1 : 0); + dbg("cond: %s set: %d", cond, mask & IN_CREATE ? 1 : 0); if (!cond_update(cond)) unlink(path); } @@ -82,7 +82,7 @@ static void sys_scandir(struct iwatch *iw, char *dir, int len) return; for (i = 0; i < gl.gl_pathc; i++) { - _d("scan found %s", gl.gl_pathv[i]); + dbg("scan found %s", gl.gl_pathv[i]); sys_update_conds(dir, gl.gl_pathv[i], IN_CREATE); } globfree(&gl); @@ -97,7 +97,7 @@ static void sys_handle_dir(struct iwatch *iw, char *dir, char *name, int mask) struct iwatch_path *iwp; paste(path, sizeof(path), dir, name); - _d("path: %s", path); + dbg("path: %s", path); iwp = iwatch_find_by_path(iw, path); @@ -121,7 +121,7 @@ static void sys_callback(void *arg, int fd, int events) sz = read(fd, ev_buf, sizeof(ev_buf) - 1); if (sz <= 0) { - _pe("invalid inotify event"); + err(1, "invalid inotify event"); return; } ev_buf[sz] = 0; @@ -136,7 +136,7 @@ static void sys_callback(void *arg, int fd, int events) if (off + sizeof(*ev) + ev->len > (size_t)sz) break; - _d("name %s, event: 0x%08x", ev->name, ev->mask); + dbg("name %s, event: 0x%08x", ev->name, ev->mask); if (!ev->mask) continue; @@ -161,13 +161,13 @@ static void sys_init(void *arg) char *path; if (mkpath(pid_runpath(_PATH_CONDSYS, sysdir, sizeof(sysdir)), 0755) && errno != EEXIST) { - _pe("Failed creating %s condition directory, %s", COND_SYS, _PATH_CONDSYS); + err(1, "Failed creating %s condition directory, %s", COND_SYS, _PATH_CONDSYS); return; } path = realpath(_PATH_CONDSYS, NULL); if (!path) { - _pe("Cannot figure out real path to %s, aborting", _PATH_CONDSYS); + err(1, "Cannot figure out real path to %s, aborting", _PATH_CONDSYS); return; } diff --git a/plugins/tty.c b/plugins/tty.c index 053d590f..c5b3b7b4 100644 --- a/plugins/tty.c +++ b/plugins/tty.c @@ -55,7 +55,7 @@ static void setup(void) plugin.io.fd = inotify_init1(IN_NONBLOCK | IN_CLOEXEC); if (-1 == plugin.io.fd || inotify_add_watch(plugin.io.fd, "/dev", IN_CREATE | IN_DELETE) < 0) - _pe("Failed starting TTY watcher"); + err(1, "Failed starting TTY watcher"); } static void do_tty(char *tty, size_t len, int creat) @@ -67,10 +67,10 @@ static void do_tty(char *tty, size_t len, int creat) svc = svc_find_by_tty(name); if (svc) { if (svc_is_blocked(svc) && creat) { - _d("%s: blocked, re-enabling", svc_ident(svc, NULL, 0)); + dbg("%s: blocked, re-enabling", svc_ident(svc, NULL, 0)); svc_start(svc); } else if (svc->pid) { - _d("%s: missing ...", svc_ident(svc, NULL, 0)); + dbg("%s: missing ...", svc_ident(svc, NULL, 0)); svc_missing(svc); } @@ -87,7 +87,7 @@ static void tty_watcher(void *arg, int fd, int events) sz = read(fd, ev_buf, sizeof(ev_buf) - 1); if (sz <= 0) { - _pe("invalid inotify event"); + err(1, "invalid inotify event"); return; } ev_buf[sz] = 0; @@ -103,7 +103,7 @@ static void tty_watcher(void *arg, int fd, int events) if (!ev->mask) continue; - _d("tty %s, event: 0x%08x", ev->name, ev->mask); + dbg("tty %s, event: 0x%08x", ev->name, ev->mask); do_tty(ev->name, ev->len, ev->mask & IN_CREATE); } } diff --git a/plugins/urandom.c b/plugins/urandom.c index 63c649fe..c877678a 100644 --- a/plugins/urandom.c +++ b/plugins/urandom.c @@ -51,7 +51,7 @@ static void setup(void *arg) int fd, err; if (rescue) { - _d("Skipping %s plugin in rescue mode.", __FILE__); + dbg("Skipping %s plugin in rescue mode.", __FILE__); return; } @@ -144,7 +144,7 @@ static void save(void *arg) mode_t prev; if (rescue) { - _d("Skipping %s plugin in rescue mode.", __FILE__); + dbg("Skipping %s plugin in rescue mode.", __FILE__); return; } diff --git a/plugins/usr.c b/plugins/usr.c index 82657109..bf63f244 100644 --- a/plugins/usr.c +++ b/plugins/usr.c @@ -52,7 +52,7 @@ static void usr_callback(void *arg, int fd, int events) sz = read(fd, ev_buf, sizeof(ev_buf) - 1); if (sz <= 0) { - _pe("invalid inotify event"); + err(1, "invalid inotify event"); return; } ev_buf[sz] = 0; @@ -65,7 +65,7 @@ static void usr_callback(void *arg, int fd, int events) if (off + sizeof(*ev) + ev->len > (size_t)sz) break; - _d("name %s, event: 0x%08x", ev->name, ev->mask); + dbg("name %s, event: 0x%08x", ev->name, ev->mask); if (!ev->mask) continue; @@ -85,13 +85,13 @@ static void usr_init(void *arg) char *path; if (mkpath(pid_runpath(_PATH_CONDUSR, usrdir, sizeof(usrdir)), 0755) && errno != EEXIST) { - _pe("Failed creating %s condition directory, %s", COND_USR, _PATH_CONDUSR); + err(1, "Failed creating %s condition directory, %s", COND_USR, _PATH_CONDUSR); return; } path = realpath(_PATH_CONDUSR, NULL); if (!path) { - _pe("Cannot figure out real path to %s, aborting", _PATH_CONDUSR); + err(1, "Cannot figure out real path to %s, aborting", _PATH_CONDUSR); return; } diff --git a/plugins/x11-common.c b/plugins/x11-common.c index e80e457f..6af53a8d 100644 --- a/plugins/x11-common.c +++ b/plugins/x11-common.c @@ -44,7 +44,7 @@ static void setup(void *arg) #endif if (rescue) { - _d("Skipping %s plugin in rescue mode.", __FILE__); + dbg("Skipping %s plugin in rescue mode.", __FILE__); return; } diff --git a/src/api.c b/src/api.c index d07e18e7..5b3024f9 100644 --- a/src/api.c +++ b/src/api.c @@ -210,7 +210,7 @@ static svc_t *do_find_byc(char *buf, size_t len) input = sanitize(buf, len); if (!input) { - _d("Invalid input"); + dbg("Invalid input"); return NULL; } @@ -257,25 +257,25 @@ static int do_reboot(int cmd, int timeout, char *buf, size_t len) switch (cmd) { case INIT_CMD_REBOOT: - _d("reboot"); + dbg("reboot"); halt = SHUT_REBOOT; service_runlevel(6); break; case INIT_CMD_HALT: - _d("halt"); + dbg("halt"); halt = SHUT_HALT; service_runlevel(0); break; case INIT_CMD_POWEROFF: - _d("poweroff"); + dbg("poweroff"); halt = SHUT_OFF; service_runlevel(0); break; case INIT_CMD_SUSPEND: - _d("suspend"); + dbg("suspend"); sync(); rc = suspend(); if (rc) { @@ -316,7 +316,7 @@ static void send_svc(int sd, svc_t *svc) len = write(sd, svc, sizeof(*svc)); if (len != sizeof(*svc)) - _d("Failed sending svc_t to client"); + dbg("Failed sending svc_t to client"); } static void api_cb(uev_t *w, void *arg, int events) @@ -328,7 +328,7 @@ static void api_cb(uev_t *w, void *arg, int events) sd = accept(w->fd, NULL, NULL); if (sd < 0) { - _pe("Failed serving API request"); + err(1, "Failed serving API request"); goto error; } @@ -349,14 +349,14 @@ static void api_cb(uev_t *w, void *arg, int events) if (ECONNRESET == errno) break; - _e("Failed reading initctl request, error %d: %s", errno, strerror(errno)); + errx(1, "Failed reading initctl request, error %d: %s", errno, strerror(errno)); } break; } if (rq.magic != INIT_MAGIC || len != sizeof(rq)) { - _e("Invalid initctl request"); + errx(1, "Invalid initctl request"); break; } @@ -369,7 +369,7 @@ static void api_cb(uev_t *w, void *arg, int events) /* fallthrough */ case '0'...'9': - _d("Setting new runlevel %c", rq.runlevel); + dbg("Setting new runlevel %c", rq.runlevel); lvl = rq.runlevel - '0'; if (lvl == 0) halt = SHUT_OFF; @@ -379,41 +379,41 @@ static void api_cb(uev_t *w, void *arg, int events) break; default: - _d("Unsupported runlevel: %d", rq.runlevel); + dbg("Unsupported runlevel: %d", rq.runlevel); break; } break; case INIT_CMD_DEBUG: - _d("debug"); + dbg("debug"); log_debug(); break; case INIT_CMD_RELOAD: /* 'init q' and 'initctl reload' */ - _d("reload"); + dbg("reload"); service_reload_dynamic(); break; case INIT_CMD_START_SVC: - _d("start %s", rq.data); + dbg("start %s", rq.data); strterm(rq.data, sizeof(rq.data)); result = do_start(rq.data, sizeof(rq.data)); break; case INIT_CMD_RESTART_SVC: - _d("restart %s", rq.data); + dbg("restart %s", rq.data); strterm(rq.data, sizeof(rq.data)); result = do_restart(rq.data, sizeof(rq.data)); break; case INIT_CMD_STOP_SVC: - _d("stop %s", rq.data); + dbg("stop %s", rq.data); strterm(rq.data, sizeof(rq.data)); result = do_stop(rq.data, sizeof(rq.data)); break; case INIT_CMD_RELOAD_SVC: - _d("reload %s", rq.data); + dbg("reload %s", rq.data); strterm(rq.data, sizeof(rq.data)); result = do_reload(rq.data, sizeof(rq.data)); break; @@ -427,7 +427,7 @@ static void api_cb(uev_t *w, void *arg, int events) break; case INIT_CMD_GET_RUNLEVEL: - _d("get runlevel"); + dbg("get runlevel"); rq.runlevel = runlevel; rq.sleeptime = prevlevel; break; @@ -440,17 +440,17 @@ static void api_cb(uev_t *w, void *arg, int events) break; case INIT_CMD_ACK: - _d("Client failed reading ACK"); + dbg("Client failed reading ACK"); goto leave; case INIT_CMD_WDOG_HELLO: - _d("wdog hello"); + dbg("wdog hello"); if (rq.runlevel <= 0) { result = 1; break; } - _d("Request to hand-over wdog ... to PID %d", rq.runlevel); + dbg("Request to hand-over wdog ... to PID %d", rq.runlevel); svc = svc_find_by_pid(rq.runlevel); if (!svc) { logit(LOG_ERR, "Cannot find PID %d, not registered.", rq.runlevel); @@ -474,7 +474,7 @@ static void api_cb(uev_t *w, void *arg, int events) break; case INIT_CMD_SVC_ITER: -// _d("svc iter, first: %d", rq.runlevel); +// dbg("svc iter, first: %d", rq.runlevel); /* * XXX: This severely limits the number of * simultaneous client connections, but will @@ -485,32 +485,32 @@ static void api_cb(uev_t *w, void *arg, int events) goto leave; case INIT_CMD_SVC_QUERY: - _d("svc query: %s", rq.data); + dbg("svc query: %s", rq.data); strterm(rq.data, sizeof(rq.data)); result = do_query(rq.data, sizeof(rq.data)); break; case INIT_CMD_SVC_FIND: - _d("svc find: %s", rq.data); + dbg("svc find: %s", rq.data); strterm(rq.data, sizeof(rq.data)); send_svc(sd, do_find(rq.data, sizeof(rq.data))); goto leave; case INIT_CMD_SVC_FIND_BYC: - _d("svc find by cond: %s", rq.data); + dbg("svc find by cond: %s", rq.data); strterm(rq.data, sizeof(rq.data)); send_svc(sd, do_find_byc(rq.data, sizeof(rq.data))); goto leave; case INIT_CMD_SIGNAL: /* runlevel is reused for signal */ - _d("svc signal %d: %s", rq.runlevel, rq.data); + dbg("svc signal %d: %s", rq.runlevel, rq.data); strterm(rq.data, sizeof(rq.data)); result = do_signal(rq.data, sizeof(rq.data), rq.runlevel); break; default: - _d("Unsupported cmd: %d", rq.cmd); + dbg("Unsupported cmd: %d", rq.cmd); break; } @@ -520,7 +520,7 @@ static void api_cb(uev_t *w, void *arg, int events) rq.cmd = INIT_CMD_ACK; len = write(sd, &rq, sizeof(rq)); if (len != sizeof(rq)) - _d("Failed sending ACK/NACK back to client"); + dbg("Failed sending ACK/NACK back to client"); } leave: @@ -531,7 +531,7 @@ leave: error: api_exit(); if (api_init(w->ctx)) - _e("Unrecoverable error on API socket"); + errx(1, "Unrecoverable error on API socket"); } int api_init(uev_ctx_t *ctx) @@ -544,10 +544,10 @@ int api_init(uev_ctx_t *ctx) int uid, gid; int sd; - _d("Setting up external API socket ..."); + dbg("Setting up external API socket ..."); sd = socket(AF_UNIX, SOCK_SEQPACKET | SOCK_CLOEXEC, 0); if (-1 == sd) { - _pe("Failed starting external API socket"); + err(1, "Failed starting external API socket"); return 1; } @@ -563,14 +563,14 @@ int api_init(uev_ctx_t *ctx) goto error; if (chown(INIT_SOCKET, uid, gid)) - _pe("Failed setting group %s on %s", DEFGROUP, INIT_SOCKET); + err(1, "Failed setting group %s on %s", DEFGROUP, INIT_SOCKET); umask(oldmask); if (!uev_io_init(ctx, &api_watcher, api_cb, NULL, sd, UEV_READ)) return 0; error: - _pe("Failed initializing API socket"); + err(1, "Failed initializing API socket"); umask(oldmask); close(sd); return 1; diff --git a/src/cgroup.c b/src/cgroup.c index 3704b06b..5590a058 100644 --- a/src/cgroup.c +++ b/src/cgroup.c @@ -63,16 +63,16 @@ static void cgset(const char *path, char *ctrl, char *prop) { char *val; - _d("path %s, ctrl %s, prop %s", path ?: "NIL", ctrl ?: "NIL", prop ?: "NIL"); + dbg("path %s, ctrl %s, prop %s", path ?: "NIL", ctrl ?: "NIL", prop ?: "NIL"); if (!path || !ctrl) { - _e("Missing path or controller, skipping!"); + errx(1, "Missing path or controller, skipping!"); return; } if (!prop) { prop = strchr(ctrl, '.'); if (!prop) { - _e("Invalid cgroup ctrl syntax: %s", ctrl); + errx(1, "Invalid cgroup ctrl syntax: %s", ctrl); return; } @@ -81,20 +81,20 @@ static void cgset(const char *path, char *ctrl, char *prop) val = strchr(prop, ':'); if (!val) { - _e("Missing cgroup ctrl value, prop %s", prop); + errx(1, "Missing cgroup ctrl value, prop %s", prop); return; } *val++ = 0; /* disallow sneaky relative paths */ if (strstr(ctrl, "..") || strstr(prop, "..")) { - _e("Possible security violation; '..' not allowed in cgroup config!"); + errx(1, "Possible security violation; '..' not allowed in cgroup config!"); return; } - _d("%s/%s.%s <= %s", path, ctrl, prop, val); + dbg("%s/%s.%s <= %s", path, ctrl, prop, val); if (fnwrite(val, "%s/%s.%s", path, ctrl, prop)) - _pe("Failed setting %s/%s.%s = %s", path, ctrl, prop, val); + err(1, "Failed setting %s/%s.%s = %s", path, ctrl, prop, val); } /* @@ -106,16 +106,16 @@ static void group_init(char *path, int leaf, const char *cfg) { char *ptr, *s; - _d("path %s, leaf %d, cfg %s", path, leaf, cfg ?: "NIL"); + dbg("path %s, leaf %d, cfg %s", path, leaf, cfg ?: "NIL"); if (!fisdir(path)) { if (mkdir(path, 0755)) { - _pe("Failed creating cgroup %s", path); + err(1, "Failed creating cgroup %s", path); return; } /* enable detected controllers on domain groups */ if (!leaf && fnwrite(controllers, "%s/cgroup.subtree_control", path)) - _pe("Failed enabling %s for %s", controllers, path); + err(1, "Failed enabling %s for %s", controllers, path); } if (!cfg || !cfg[0]) @@ -123,14 +123,14 @@ static void group_init(char *path, int leaf, const char *cfg) s = strdupa(cfg); if (!s) { - _pe("Failed activating cgroup cfg for %s", path); + err(1, "Failed activating cgroup cfg for %s", path); return; } - _d("%s <=> %s", path, s); + dbg("%s <=> %s", path, s); ptr = strtok(s, ","); while (ptr) { - _d("ptr: %s", ptr); + dbg("ptr: %s", ptr); if (!strncmp("mem.", ptr, 4)) cgset(path, "memory", &ptr[4]); else @@ -144,7 +144,7 @@ static int cgroup_leaf_init(char *group, char *name, int pid, const char *cfg) { char path[256]; - _d("group %s, name %s, pid %d, cfg %s", group, name, pid, cfg ?: "NIL"); + dbg("group %s, name %s, pid %d, cfg %s", group, name, pid, cfg ?: "NIL"); if (pid < 0 || pid == 1) { errno = EINVAL; return 1; @@ -156,7 +156,7 @@ static int cgroup_leaf_init(char *group, char *name, int pid, const char *cfg) /* move process to new group */ if (fnwrite(str("%d", pid), "%s/cgroup.procs", path)) - _pe("Failed moving pid %d to group %s", pid, path); + err(1, "Failed moving pid %d to group %s", pid, path); strlcat(path, "/cgroup.events", sizeof(path)); @@ -211,13 +211,13 @@ static void cgroup_handle_event(char *event, uint32_t mask) char *ptr; FILE *fp; - _d("event: '%s', mask: %08x", event, mask); + dbg("event: '%s', mask: %08x", event, mask); if (!(mask & IN_MODIFY)) return; fp = fopen(event, "r"); if (!fp) { - _d("Failed opening %s, skipping ...", event); + dbg("Failed opening %s, skipping ...", event); return; } @@ -261,7 +261,7 @@ static void cgroup_events_cb(uev_t *w, void *arg, int events) sz = read(w->fd, ev_buf, sizeof(ev_buf) - 1); if (sz <= 0) { - _pe("invalid inotify event"); + err(1, "invalid inotify event"); return; } ev_buf[sz] = 0; @@ -364,12 +364,12 @@ int cgroup_add(char *name, char *cfg, int is_protected) if (!cg) { cg = malloc(sizeof(struct cg)); if (!cg) { - _pe("Failed allocating 'struct cg' for %s", name); + err(1, "Failed allocating 'struct cg' for %s", name); return -1; } cg->name = strdup(name); if (!cg->name) { - _pe("Failed setting cgroup name %s", name); + err(1, "Failed setting cgroup name %s", name); free(cg); return -1; } @@ -379,7 +379,7 @@ int cgroup_add(char *name, char *cfg, int is_protected) cg->cfg = strdup(cfg); if (!cg->cfg) { - _pe("Failed add/update of cgroup %s", name); + err(1, "Failed add/update of cgroup %s", name); TAILQ_REMOVE(&cgroups, cg, link); free(cg->name); free(cg); @@ -414,7 +414,7 @@ int cgroup_del(char *dir) } if (rmdir(dir) && errno != ENOENT) { - _d("Failed removing %s: %s", dir, strerror(errno)); + dbg("Failed removing %s: %s", dir, strerror(errno)); return -1; } @@ -469,7 +469,7 @@ void cgroup_init(uev_ctx_t *ctx) else if (errno == EPERM) /* Probably inside an unpriviliged container */ logit(LOG_INFO, "Not allowed to mount cgroups v2, disabling."); else - _pe("Failed mounting cgroup v2"); + err(1, "Failed mounting cgroup v2"); avail = 0; return; } @@ -478,7 +478,7 @@ void cgroup_init(uev_ctx_t *ctx) /* Find available controllers */ fp = fopen(FINIT_CGPATH "/cgroup.controllers", "r"); if (!fp) { - _pe("Failed opening %s", FINIT_CGPATH "/cgroup.controllers"); + err(1, "Failed opening %s", FINIT_CGPATH "/cgroup.controllers"); abort: umount(FINIT_CGPATH); avail = 0; @@ -505,7 +505,7 @@ void cgroup_init(uev_ctx_t *ctx) /* Enable all controllers */ if (fnwrite(controllers, FINIT_CGPATH "/cgroup.subtree_control")) { - _pe("Failed enabling %s for %s", controllers, FINIT_CGPATH "/cgroup.subtree_control"); + err(1, "Failed enabling %s for %s", controllers, FINIT_CGPATH "/cgroup.subtree_control"); goto abort; } @@ -515,7 +515,7 @@ void cgroup_init(uev_ctx_t *ctx) goto abort; if (uev_io_init(ctx, &cgw, cgroup_events_cb, NULL, fd, UEV_READ)) { - _pe("Failed setting up cgroup.events watcher"); + err(1, "Failed setting up cgroup.events watcher"); iwatch_exit(&iw_cgroup); close(fd); goto abort; @@ -529,7 +529,7 @@ void cgroup_init(uev_ctx_t *ctx) /* Move ourselves to init (best effort, otherwise run in 'root' group */ if (fnwrite("1", FINIT_CGPATH "/init/cgroup.procs")) { - _pe("Failed moving PID 1 to cgroup %s", FINIT_CGPATH "/init"); + err(1, "Failed moving PID 1 to cgroup %s", FINIT_CGPATH "/init"); uev_io_stop(&cgw); iwatch_exit(&iw_cgroup); close(fd); diff --git a/src/cond-w.c b/src/cond-w.c index e4525fed..6f9de6e6 100644 --- a/src/cond-w.c +++ b/src/cond-w.c @@ -60,7 +60,7 @@ void cond_boot_parse(char *arg) node = malloc(sizeof(*node)); if (!node) { - _pe("Out of memory cannot track boot conditions"); + err(1, "Out of memory cannot track boot conditions"); return; } @@ -172,7 +172,7 @@ static void cond_bump_reconf(void) rgen++; if (cond_set_gen(_PATH_RECONF, rgen)) - _pe("Failed setting %s to gen %d", _PATH_RECONF, rgen); + err(1, "Failed setting %s to gen %d", _PATH_RECONF, rgen); } static int cond_checkpath(const char *path) @@ -182,12 +182,12 @@ static int cond_checkpath(const char *path) strlcpy(buf, path, sizeof(buf)); dir = dirname(buf); if (!dir) { - _e("Invalid path '%s' for condition", path); + errx(1, "Invalid path '%s' for condition", path); return 1; } if (mkpath(dir, 0755) && errno != EEXIST) { - _pe("Failed creating dir '%s' for condition '%s'", dir, path); + err(1, "Failed creating dir '%s' for condition '%s'", dir, path); return 1; } @@ -211,12 +211,12 @@ static void cond_delpath(const char *path) paste(fn, sizeof(fn), path, d->d_name); if (remove(fn)) - _pe("Failed removing condition path, file %s", fn); + err(1, "Failed removing condition path, file %s", fn); } closedir(dir); if (unlink(path) && errno != EISDIR) - _pe("Failed removing condition path %s", fn); + err(1, "Failed removing condition path %s", fn); } int cond_set_path(const char *path, enum cond_state next) @@ -224,11 +224,11 @@ int cond_set_path(const char *path, enum cond_state next) enum cond_state prev; unsigned int rgen; - _d("%s <= %d", path, next); + dbg("%s <= %d", path, next); rgen = cond_get_gen(_PATH_RECONF); if (!rgen) { - _e("Unable to read configuration generation (%s)", path); + errx(1, "Unable to read configuration generation (%s)", path); return -1; } @@ -250,14 +250,14 @@ int cond_set_path(const char *path, enum cond_state next) cond_delpath(path); break; default: - _pe("Failed removing condition '%s'", path); + err(1, "Failed removing condition '%s'", path); break; } } break; default: - _e("Invalid condition state"); + errx(1, "Invalid condition state"); return 0; } @@ -270,13 +270,13 @@ int cond_update(const char *name) svc_t *svc, *iter = NULL; int affects = 0; - _d("%s", name); + dbg("%s", name); for (svc = svc_iterator(&iter, 1); svc; svc = svc_iterator(&iter, 0)) { if (!svc_has_cond(svc) || !cond_affects(name, svc->cond)) continue; affects++; - _d("%s: match <%s> %s(%s)", name ?: "nil", svc->cond, svc->desc, svc->cmd); + dbg("%s: match <%s> %s(%s)", name ?: "nil", svc->cond, svc->desc, svc->cmd); service_step(svc); } @@ -285,7 +285,7 @@ int cond_update(const char *name) int cond_set_noupdate(const char *name) { - _d("%s", name); + dbg("%s", name); if (string_compare(name, "nop")) return 1; @@ -299,7 +299,7 @@ void cond_set(const char *name) { svc_t *svc; - _d("%s", name); + dbg("%s", name); if (cond_set_noupdate(name)) return; @@ -319,13 +319,13 @@ int cond_set_oneshot_noupdate(const char *name) return 1; path = cond_path(name); - _d("%s => %s", name, path); + dbg("%s => %s", name, path); if (cond_checkpath(path)) return 1; if (symlink(_PATH_RECONF, path) && errno != EEXIST) { - _pe("Failed creating onshot cond %s", name); + err(1, "Failed creating onshot cond %s", name); return 1; } @@ -334,7 +334,7 @@ int cond_set_oneshot_noupdate(const char *name) void cond_set_oneshot(const char *name) { - _d("%s", name); + dbg("%s", name); if (cond_set_oneshot_noupdate(name)) return; @@ -343,7 +343,7 @@ void cond_set_oneshot(const char *name) int cond_clear_noupdate(const char *name) { - _d("%s", name); + dbg("%s", name); if (string_compare(name, "nop")) return 1; @@ -355,7 +355,7 @@ int cond_clear_noupdate(const char *name) void cond_clear(const char *name) { - _d("%s", name); + dbg("%s", name); if (cond_clear_noupdate(name)) return; @@ -364,7 +364,7 @@ void cond_clear(const char *name) void cond_reload(void) { - _d(""); + dbg(""); cond_bump_reconf(); } @@ -381,12 +381,12 @@ static int do_assert(const char *fpath, const struct stat *sb, int tflg, struct nm = strstr((char *)fpath, COND_BASE); if (!nm) { - _e("Incorrect condition path %s, cannot %sassert", fpath, set ? "re" : "de"); + errx(1, "Incorrect condition path %s, cannot %sassert", fpath, set ? "re" : "de"); return 1; } nm += strlen(COND_BASE); - _d("%sasserting %s => %s", set ? "Re" : "De", fpath, nm); + dbg("%sasserting %s => %s", set ? "Re" : "De", fpath, nm); if (set) cond_set(nm); else @@ -411,7 +411,7 @@ static int deassert(const char *fpath, const struct stat *sb, int tflg, struct F */ void cond_reassert(const char *pat) { - _d("%s", pat); + dbg("%s", pat); nftw(cond_path(pat), reassert, 20, FTW_DEPTH); } @@ -420,7 +420,7 @@ void cond_reassert(const char *pat) */ void cond_deassert(const char *pat) { - _d("%s", pat); + dbg("%s", pat); nftw(cond_path(pat), deassert, 20, FTW_DEPTH); } @@ -429,7 +429,7 @@ void cond_init(void) char path[MAX_ARG_LEN]; if (mkpath(pid_runpath(_PATH_COND, path, sizeof(path)), 0755) && errno != EEXIST) { - _pe("Failed creating condition base directory '%s'", _PATH_COND); + err(1, "Failed creating condition base directory '%s'", _PATH_COND); return; } diff --git a/src/conf.c b/src/conf.c index bdb73050..de65871e 100644 --- a/src/conf.c +++ b/src/conf.c @@ -120,7 +120,7 @@ static void parse_finit_opts(char *opt) if (string_compare(opt, "status_style")) { if (!arg) { - _e("status_style option requires an argument, skipping."); + errx(1, "status_style option requires an argument, skipping."); return; } @@ -157,7 +157,7 @@ static int parse_runlevel(char *arg) num = strtonum(arg, 1, 9, &err); if (err || num == 6) { - _d("Not a valid runlevel (%s), valid levels are [1-9], excluding 6, skipping.", arg); + dbg("Not a valid runlevel (%s), valid levels are [1-9], excluding 6, skipping.", arg); return 0; } @@ -210,7 +210,7 @@ static void parse_kernel_cmdline(void) } cmdline = chomp(line); - _d("%s", cmdline); + dbg("%s", cmdline); while ((tok = strtok(cmdline, " \t"))) { cmdline = NULL; @@ -239,7 +239,7 @@ static void parse_kernel_loglevel(void) fclose(fp); ptr = chomp(line); - _d("%s", ptr); + dbg("%s", ptr); val = atoi(ptr); if (val >= 7) kerndebug = 1; @@ -342,7 +342,7 @@ static void parse_env(char *line) node = malloc(sizeof(*node)); if (!node) { - _pe("Out of memory cannot track env vars"); + err(1, "Out of memory cannot track env vars"); return; } node->name = strdup(key); @@ -434,7 +434,7 @@ void conf_parse_cond(svc_t *svc, char *cond) char *ptr; if (!svc) { - _e("Invalid service pointer"); + errx(1, "Invalid service pointer"); return; } @@ -665,7 +665,7 @@ static int parse_static(char *line, int is_rcsd) strlcpy(cmd, file, sizeof(cmd)); if (!fexist(cmd)) { - _e("Cannot find include file %s, absolute path required!", x); + errx(1, "Cannot find include file %s, absolute path required!", x); return 1; } @@ -811,7 +811,7 @@ static int parse_conf(char *file, int is_rcsd) cgroup_current[0] = 0; } - _d("*** Parsing %s", file); + dbg("*** Parsing %s", file); while (!feof(fp)) { char *x; @@ -820,7 +820,7 @@ static int parse_conf(char *file, int is_rcsd) chomp(line); tabstospaces(line); -//DEV _d("%s", line); +//DEV dbg("%s", line); /* Skip comments, i.e. lines beginning with # */ if (MATCH_CMD(line, "#", x)) @@ -850,7 +850,7 @@ int conf_reload(void) /* Set time according to current time zone */ tzset(); - _d("Set time daylight: %d timezone: %ld tzname: %s %s", + dbg("Set time daylight: %d timezone: %ld tzname: %s %s", daylight, timezone, tzname[0], tzname[1]); /* Mark and sweep */ @@ -898,13 +898,13 @@ int conf_reload(void) /* Check that it's an actual file ... beyond any symlinks */ if (lstat(path, &st)) { - _d("Skipping %s, cannot access: %s", path, strerror(errno)); + dbg("Skipping %s, cannot access: %s", path, strerror(errno)); continue; } /* Skip directories */ if (S_ISDIR(st.st_mode)) { - _d("Skipping directory %s", path); + dbg("Skipping directory %s", path); continue; } @@ -920,7 +920,7 @@ int conf_reload(void) /* Check that file ends with '.conf' */ len = strlen(path); if (len < 6 || strcmp(&path[len - 5], ".conf")) - _d("Skipping %s, not a Finit .conf file ... ", path); + dbg("Skipping %s, not a Finit .conf file ... ", path); else parse_conf(path, 1); @@ -992,7 +992,7 @@ static int do_change(char *dir, char *name, uint32_t mask) struct conf_change *node; paste(fn, sizeof(fn), dir, name); - _d("path: %s mask: %08x", fn, mask); + dbg("path: %s mask: %08x", fn, mask); node = conf_find(fn); if (mask & (IN_DELETE | IN_MOVED_FROM)) { @@ -1001,7 +1001,7 @@ static int do_change(char *dir, char *name, uint32_t mask) } if (node) { - _d("Event already registered for %s ...", name); + dbg("Event already registered for %s ...", name); return 0; } @@ -1015,7 +1015,7 @@ static int do_change(char *dir, char *name, uint32_t mask) return 1; } - _d("Event registered for %s, mask 0x%x", fn, mask); + dbg("Event registered for %s, mask 0x%x", fn, mask); TAILQ_INSERT_HEAD(&conf_change_list, node, link); return 0; @@ -1057,7 +1057,7 @@ static void conf_cb(uev_t *w, void *arg, int events) sz = read(w->fd, ev_buf, sizeof(ev_buf) - 1); if (sz <= 0) { - _pe("invalid inotify event"); + err(1, "invalid inotify event"); return; } ev_buf[sz] = 0; @@ -1075,7 +1075,7 @@ static void conf_cb(uev_t *w, void *arg, int events) if (!ev->mask) continue; - _d("name %s, event: 0x%08x", ev->name, ev->mask); + dbg("name %s, event: 0x%08x", ev->name, ev->mask); /* Find base path for this event */ iwp = iwatch_find_by_wd(&iw_conf, ev->wd); @@ -1083,7 +1083,7 @@ static void conf_cb(uev_t *w, void *arg, int events) continue; if (do_change(iwp->path, ev->name, ev->mask)) { - _pe(" Out of memory"); + err(1, " Out of memory"); break; } } @@ -1159,7 +1159,7 @@ int conf_init(uev_ctx_t *ctx) return 1; if (uev_io_init(ctx, &etcw, conf_cb, NULL, fd, UEV_READ)) { - _pe("Failed setting up I/O callback for /etc watcher"); + err(1, "Failed setting up I/O callback for /etc watcher"); close(fd); return 1; } diff --git a/src/exec.c b/src/exec.c index 7e80fb89..3c6534af 100644 --- a/src/exec.c +++ b/src/exec.c @@ -59,11 +59,11 @@ int complete(char *cmd, int pid) if (waitpid(pid, &status, 0) == -1) { if (errno == EINTR) - _e("Caught unblocked signal waiting for %s, aborting", cmd); + errx(1, "Caught unblocked signal waiting for %s, aborting", cmd); else if (errno == ECHILD) - _e("Caught SIGCHLD waiting for %s, aborting", cmd); + errx(1, "Caught SIGCHLD waiting for %s, aborting", cmd); else - _e("Failed starting %s, error %d: %s", cmd, errno, strerror (errno)); + errx(1, "Failed starting %s, error %d: %s", cmd, errno, strerror (errno)); return -1; } @@ -131,7 +131,7 @@ int run(char *cmd, char *log) args[i] = NULL; if (i == NUM_ARGS && arg) { - _e("Command too long: %s", cmd); + errx(1, "Command too long: %s", cmd); free(backup); errno = EOVERFLOW; return 1; @@ -166,7 +166,7 @@ int run(char *cmd, char *log) _exit(rc); } else if (-1 == pid) { - _pe("%s", !log ? args[0] : cmd); + err(1, "%s", !log ? args[0] : cmd); if (backup) free(backup); @@ -182,9 +182,9 @@ int run(char *cmd, char *log) result = WEXITSTATUS(status); if (WIFEXITED(status)) { - _d("Started '%s' and exit without signal, status: %d", cmd, result); + dbg("Started '%s' and exit without signal, status: %d", cmd, result); } else if (WIFSIGNALED(status)) { - _d("Process '%s' terminated by signal %d", cmd, WTERMSIG(status)); + dbg("Process '%s' terminated by signal %d", cmd, WTERMSIG(status)); if (!result) result = 1; /* Must alert callee that the command did complete successfully. * This is necessary since not all programs trap signals and @@ -277,7 +277,7 @@ int exec_runtask(char *cmd, char *args[]) strlcat(buf, args[i], sizeof(buf)); } logit(LOG_DEBUG, "Calling %s %s", _PATH_BSHELL, buf); - _d("Calling %s %s", _PATH_BSHELL, buf); + dbg("Calling %s %s", _PATH_BSHELL, buf); return execvp(_PATH_BSHELL, argv); } @@ -448,7 +448,7 @@ int run_parts(char *dir, char *cmd) num = scandir(dir, &e, NULL, alphasort); if (num < 0) { - _d("No files found in %s, skipping ...", dir); + dbg("No files found in %s, skipping ...", dir); return -1; } @@ -468,19 +468,19 @@ int run_parts(char *dir, char *cmd) paste(path, sizeof(path), dir, name); if (stat(path, &st)) { - _d("Failed stat(%s): %s", path, strerror(errno)); + dbg("Failed stat(%s): %s", path, strerror(errno)); continue; } if (!S_ISEXEC(st.st_mode) || S_ISDIR(st.st_mode)) { - _d("Skipping %s ...", path); + dbg("Skipping %s ...", path); continue; } /* If the callee didn't supply a run_parts() argument */ if (!cmd) { /* Check if Sservice or Kservice notation is used */ - _d("Checking if %s is a sysvinit startstop script ...", name); + dbg("Checking if %s is a sysvinit startstop script ...", name); if (name[0] == 'S' && isdigit(name[1])) strlcat(path, " start", sizeof(path)); else if (name[0] == 'K' && isdigit(name[1])) @@ -499,9 +499,9 @@ int run_parts(char *dir, char *cmd) status = complete(path, pid); exit_status = WEXITSTATUS(status); if (WIFEXITED(status) && exit_status) - _w("%s exited with status %d", path, exit_status); + warnx("%s exited with status %d", path, exit_status); else if (WIFSIGNALED(status)) - _w("%s terminated by signad %d", path, WTERMSIG(status)); + warnx("%s terminated by signad %d", path, WTERMSIG(status)); print_result(status); } diff --git a/src/finit.c b/src/finit.c index 2dbeb155..300d2d6f 100644 --- a/src/finit.c +++ b/src/finit.c @@ -204,17 +204,17 @@ static int fsck(int pass) fp = setmntent(fstab, "r"); if (!fp) { - _pe("Failed opening fstab: %s", fstab); + err(1, "Failed opening fstab: %s", fstab); sulogin(1); } - _d("Opened %s, pass %d", fstab, pass); + dbg("Opened %s, pass %d", fstab, pass); while ((mnt = getmntent_r(fp, &mount, buf, sizeof(buf)))) { int fsck_rc = 0; struct stat st; char cmd[256]; char *dev; - _d("got: fsname '%s' dir '%s' type '%s' opts '%s' freq '%d' passno '%d'", + dbg("got: fsname '%s' dir '%s' type '%s' opts '%s' freq '%d' passno '%d'", mnt->mnt_fsname, mnt->mnt_dir, mnt->mnt_type, mnt->mnt_opts, mnt->mnt_freq, mnt->mnt_passno); @@ -244,13 +244,13 @@ static int fsck(int pass) } if (skip) { - _d("Cannot fsck %s, not a block device: %s", dev, strerror(errno)); + dbg("Cannot fsck %s, not a block device: %s", dev, strerror(errno)); continue; } } if (ismnt("/proc/mounts", mnt->mnt_dir, "rw")) { - _d("Skipping fsck of %s, already mounted rw on %s.", dev, mnt->mnt_dir); + dbg("Skipping fsck of %s, already mounted rw on %s.", dev, mnt->mnt_dir); continue; } @@ -259,7 +259,7 @@ static int fsck(int pass) #else snprintf(cmd, sizeof(cmd), "fsck -a %s", dev); #endif - _d("Running pass %d fsck command %s", pass, cmd); + dbg("Running pass %d fsck command %s", pass, cmd); fsck_rc = run_interactive(cmd, "Checking filesystem %s", dev); /* * "failure" is defined as exiting with a return code of @@ -302,7 +302,7 @@ static void fs_mount(const char *src, const char *tgt, const char *fstype, rc = mount(src, tgt, fstype, flags, data); if (rc && errno != EBUSY) - _pe("Failed %s %s on %s", msg, src, tgt); + err(1, "Failed %s %s on %s", msg, src, tgt); } #ifndef SYSROOT @@ -456,7 +456,7 @@ static void fs_mount_all(void) if (!rescue) fs_remount_root(fsck_all()); - _d("Root FS up, calling hooks ..."); + dbg("Root FS up, calling hooks ..."); plugin_run_hooks(HOOK_ROOTFS_UP); if (fstab && strcmp(fstab, "/etc/fstab")) @@ -465,13 +465,13 @@ static void fs_mount_all(void) if (run_interactive(cmd, "Mounting filesystems from %s", fstab)) plugin_run_hooks(HOOK_MOUNT_ERROR); - _d("Calling extra mount hook, after mount -a ..."); + dbg("Calling extra mount hook, after mount -a ..."); plugin_run_hooks(HOOK_MOUNT_POST); - _d("Enable any swap ..."); + dbg("Enable any swap ..."); fs_swapon(cmd, sizeof(cmd)); - _d("Finalize, ensure common file systems are available ..."); + dbg("Finalize, ensure common file systems are available ..."); fs_finalize(); } @@ -527,11 +527,11 @@ static void fs_init(void) static void finalize(void *unused) { /* Clean up bootstrap-only tasks/services that never started */ - _d("Clean up all bootstrap-only tasks/services ..."); + dbg("Clean up all bootstrap-only tasks/services ..."); svc_prune_bootstrap(); /* All services/tasks/etc. in configure runlevel have started */ - _d("Running svc up hooks ..."); + dbg("Running svc up hooks ..."); plugin_run_hooks(HOOK_SVC_UP); service_step_all(SVC_TYPE_ANY); @@ -540,7 +540,7 @@ static void finalize(void *unused) run_interactive(FINIT_RC_LOCAL, "Calling %s", FINIT_RC_LOCAL); /* Hooks that should run at the very end */ - _d("Calling all system up hooks ..."); + dbg("Calling all system up hooks ..."); plugin_run_hooks(HOOK_SYSTEM_UP); service_step_all(SVC_TYPE_ANY); @@ -591,21 +591,21 @@ static void bootstrap_worker(void *work) */ service_init(); - _d("Step all services ..."); + dbg("Step all services ..."); service_step_all(SVC_TYPE_ANY); if (cnt-- > 0 && !service_completed()) { - _d("Not all bootstrap run/tasks have completed yet ... %d", cnt); + dbg("Not all bootstrap run/tasks have completed yet ... %d", cnt); schedule_work(work); return; } if (cnt > 0) - _d("All run/task have completed, resuming bootstrap."); + dbg("All run/task have completed, resuming bootstrap."); else - _d("Timeout, resuming bootstrap."); + dbg("Timeout, resuming bootstrap."); - _d("Starting runlevel change finalize ..."); + dbg("Starting runlevel change finalize ..."); schedule_work(&final); /* @@ -620,10 +620,10 @@ static void bootstrap_worker(void *work) * into the runlevel selected from the command line. */ if (cmdlevel) { - _d("Runlevel %d requested from command line, starting all services ...", cmdlevel); + dbg("Runlevel %d requested from command line, starting all services ...", cmdlevel); level = cmdlevel; } else - _d("Change to default runlevel(%d), starting all services ...", cfglevel); + dbg("Change to default runlevel(%d), starting all services ...", cfglevel); service_runlevel(level); } @@ -756,7 +756,7 @@ int main(int argc, char *argv[]) conf_reset_env(); if (chdir("/")) - _pe("Failed cd /"); + err(1, "Failed cd /"); /* * In case of emergency. @@ -829,22 +829,22 @@ int main(int argc, char *argv[]) /* Base FS up, enable standard SysV init signals */ sig_setup(&loop); - _d("Base FS up, calling hooks ..."); + dbg("Base FS up, calling hooks ..."); plugin_run_hooks(HOOK_BASEFS_UP); - _d("Starting initctl API responder ..."); + dbg("Starting initctl API responder ..."); api_init(&loop); - _d("Starting the big state machine ..."); + dbg("Starting the big state machine ..."); schedule_work(&crank_work); - _d("Starting bootstrap finalize timer ..."); + dbg("Starting bootstrap finalize timer ..."); schedule_work(&bootstrap_work); /* * Enter main loop to monitor /dev/initctl and services */ - _d("Entering main loop ..."); + dbg("Entering main loop ..."); return uev_run(&loop, 0); } diff --git a/src/helpers.c b/src/helpers.c index 5ffc04a3..89a529fc 100644 --- a/src/helpers.c +++ b/src/helpers.c @@ -42,6 +42,7 @@ #include "finit.h" #include "helpers.h" +#include "log.h" #include "private.h" #include "sig.h" #include "util.h" @@ -444,7 +445,7 @@ int mksubsys(const char *dir, mode_t mode, char *user, char *group) rc = makedir(dir, mode); if (chown(dir, uid, gid)) - _pe("Failed chown(%s, %d, %d)", dir, uid, gid); + err(1, "Failed chown(%s, %d, %d)", dir, uid, gid); } umask(omask); @@ -482,7 +483,7 @@ void set_hostname(char **hostname) done: if (*hostname) { if (sethostname(*hostname, strlen(*hostname))) - _pe("Failed sethostnaem(%s)", *hostname); + err(1, "Failed sethostname(%s)", *hostname); } } @@ -496,9 +497,9 @@ void networking(int updown) return; if (updown) - _d("Setting up networking ..."); + dbg("Setting up networking ..."); else - _d("Taking down networking ..."); + dbg("Taking down networking ..."); /* Run user network start script if enabled */ if (updown && network) { @@ -557,7 +558,7 @@ done: /* Hooks that rely on loopback, or basic networking being up. */ if (updown) { - _d("Calling all network up hooks ..."); + dbg("Calling all network up hooks ..."); plugin_run_hooks(HOOK_NETWORK_UP); } } diff --git a/src/plugin.c b/src/plugin.c index 7e46d383..eb1f0b9c 100644 --- a/src/plugin.c +++ b/src/plugin.c @@ -95,7 +95,7 @@ int plugin_register(plugin_t *plugin) /* Already registered? */ if (plugin_find(plugin->name)) { - _d("... %s already loaded", plugin->name); + dbg("... %s already loaded", plugin->name); free(plugin->name); return 0; @@ -120,10 +120,10 @@ int plugin_unregister(plugin_t *plugin) #ifndef ENABLE_STATIC TAILQ_REMOVE(&plugins, plugin, link); - _d("%s exiting ...", plugin->name); + dbg("%s exiting ...", plugin->name); free(plugin->name); #else - _d("Finit built statically, cannot unload %s ...", plugin->name); + dbg("Finit built statically, cannot unload %s ...", plugin->name); #endif return 0; @@ -202,7 +202,7 @@ void plugin_run_hook(hook_point_t no, void *arg) PLUGIN_ITERATOR(p, tmp) { if (p->hook[no].cb) { - _d("Calling %s hook n:o %d (arg: %p) ...", basename(p->name), no, arg ?: "NIL"); + dbg("Calling %s hook n:o %d (arg: %p) ...", basename(p->name), no, arg ?: "NIL"); p->hook[no].cb(arg ? arg : p->hook[no].arg); } } @@ -235,7 +235,7 @@ static void generic_io_cb(uev_t *w, void *arg, int events) /* Stop watcher, callback may close descriptor on us ... */ uev_io_stop(w); - _d("Calling I/O %s from runloop...", basename(p->name)); + dbg("Calling I/O %s from runloop...", basename(p->name)); p->io.cb(p->io.arg, w->fd, events); /* Update fd, may be changed by plugin callback, e.g., if FIFO */ @@ -248,9 +248,9 @@ int plugin_io_init(plugin_t *p) if (!is_io_plugin(p)) return 0; - _d("Initializing plugin %s for I/O", basename(p->name)); + dbg("Initializing plugin %s for I/O", basename(p->name)); if (uev_io_init(ctx, &p->watcher, generic_io_cb, p, p->io.fd, p->io.flags)) { - _e("Failed setting up I/O plugin %s", basename(p->name)); + warn("Failed setting up I/O plugin %s", basename(p->name)); return 1; } @@ -302,16 +302,18 @@ static int load_one(char *path, char *name) noext = strcmp(name + strlen(name) - 3, ".so"); snprintf(sofile, sizeof(sofile), "%s/%s%s", path, name, noext ? ".so" : ""); - _d("Loading plugin %s ...", sofile); + dbg("Loading plugin %s ...", sofile); handle = dlopen(sofile, RTLD_LAZY | RTLD_LOCAL); if (!handle) { - _e("Failed loading plugin %s: %s", sofile, dlerror()); + char *error = dlerror(); + + warn("Failed loading plugin %s: %s", sofile, error ? error : "unknown error"); return 1; } plugin = TAILQ_LAST(&plugins, plugin_head); if (!plugin) { - _e("Plugin %s failed to register, unloading from memory", sofile); + warn("Plugin %s failed to register, unloading from memory", sofile); dlclose(handle); return 1; } @@ -338,9 +340,9 @@ static void check_plugin_depends(plugin_t *plugin) int i; for (i = 0; i < PLUGIN_DEP_MAX && plugin->depends[i]; i++) { -// _d("Plugin %s depends on %s ...", plugin->name, plugin->depends[i]); +// dbg("Plugin %s depends on %s ...", plugin->name, plugin->depends[i]); if (plugin_find(plugin->depends[i])) { -// _d("OK plugin %s was already loaded.", plugin->depends[i]); +// dbg("OK plugin %s was already loaded.", plugin->depends[i]); continue; } @@ -358,7 +360,7 @@ static int load_plugins(char *path) if (!dp) { if (errno == ENOENT) return 0; - _e("Failed, cannot open plugin directory %s: %s", path, strerror(errno)); + warn("Failed, cannot open plugin directory %s: %s", path, strerror(errno)); return 1; } plugpath = path; @@ -434,7 +436,7 @@ int plugin_init(uev_ctx_t *ctx) char *path; if (paths) { - _d("Loading external plugins from %s ...", paths); + dbg("Loading external plugins from %s ...", paths); path = strtok(paths, ":"); while (path) { load_plugins(path); @@ -453,8 +455,10 @@ void plugin_exit(void) plugin_t *p, *tmp; PLUGIN_ITERATOR(p, tmp) { - if (dlclose(p->handle)) - _e("Failed: unloading plugin %s: %s", p->name, dlerror()); + if (dlclose(p->handle)) { + char *error = dlerror(); + warn("Failed unloading plugin %s: %s", p->name, error ? error : "unknown error"); + } } #endif } diff --git a/src/service.c b/src/service.c index 8eebaf48..af730664 100644 --- a/src/service.c +++ b/src/service.c @@ -149,7 +149,7 @@ static int service_script_add(svc_t *svc, pid_t pid) struct assoc *ptr = malloc(sizeof(*ptr)); if (!ptr) { - _pe("Failed starting service script timer"); + err(1, "Failed starting service script timer"); return 1; } @@ -487,12 +487,12 @@ static pid_t service_fork(svc_t *svc) /* Set desired user+group */ if (gid >= 0) { if (setgid(gid)) - _pe("%s: failed setgid(%d)", svc_ident(svc, NULL, 0), gid); + err(1, "%s: failed setgid(%d)", svc_ident(svc, NULL, 0), gid); } if (uid >= 0) { if (setuid(uid)) - _pe("%s: failed setuid(%d)", svc_ident(svc, NULL, 0), uid); + err(1, "%s: failed setuid(%d)", svc_ident(svc, NULL, 0), uid); /* Set default path for regular users */ if (uid > 0) @@ -501,7 +501,7 @@ static pid_t service_fork(svc_t *svc) setenv("HOME", home, 1); if (chdir(home)) { if (chdir("/")) - _pe("%s: failed chdir(%s) and chdir(/)", svc_ident(svc, NULL, 0), home); + err(1, "%s: failed chdir(%s) and chdir(/)", svc_ident(svc, NULL, 0), home); } } } @@ -554,7 +554,7 @@ static int service_start(svc_t *svc) char *dev = tty_canonicalize(svc->dev); if (!dev || !tty_exists(dev)) { - _d("TTY %s missing or invalid, halting service.", svc->dev); + dbg("TTY %s missing or invalid, halting service.", svc->dev); svc_missing(svc); return 1; } @@ -598,7 +598,7 @@ static int service_start(svc_t *svc) int rc; if ((rc = wordexp(svc->cmd, &we, 0))) { - _e("%s: failed wordexp(%s): %d", svc_ident(svc, NULL, 0), svc->cmd, rc); + errx(1, "%s: failed wordexp(%s): %d", svc_ident(svc, NULL, 0), svc->cmd, rc); nomem: wordfree(&we); _exit(1); @@ -626,7 +626,7 @@ static int service_start(svc_t *svc) strlcat(str, arg, sizeof(str)); if ((rc = wordexp(str, &we, WRDE_APPEND))) { - _e("%s: failed wordexp(%s): %d", svc_ident(svc, NULL, 0), str, rc); + errx(1, "%s: failed wordexp(%s): %d", svc_ident(svc, NULL, 0), str, rc); goto nomem; } } @@ -691,7 +691,7 @@ static int service_start(svc_t *svc) _exit(status); } else if (debug) { - _d("Starting %s", cmdline); + dbg("Starting %s", cmdline); } if (svc_is_tty(svc)) @@ -747,11 +747,11 @@ static void service_kill(svc_t *svc) if (svc->pid <= 1) { /* Avoid killing ourselves or all processes ... */ - _d("%s: Aborting SIGKILL, already terminated.", svc_ident(svc, NULL, 0)); + dbg("%s: Aborting SIGKILL, already terminated.", svc_ident(svc, NULL, 0)); return; } - _d("%s: Sending SIGKILL to pid:%d", pid_get_name(svc->pid, NULL, 0), svc->pid); + dbg("%s: Sending SIGKILL to pid:%d", pid_get_name(svc->pid, NULL, 0), svc->pid); logit(LOG_CONSOLE | LOG_NOTICE, "Stopping %s[%d], sending SIGKILL ...", svc_ident(svc, NULL, 0), svc->pid); if (runlevel != 1) @@ -817,7 +817,7 @@ int service_stop(svc_t *svc) if (svc->pid <= 1) return 1; - _d("Sending %s to pid:%d name:%s", sig_name(svc->sighalt), + dbg("Sending %s to pid:%d name:%s", sig_name(svc->sighalt), svc->pid, pid_get_name(svc->pid, NULL, 0)); logit(LOG_CONSOLE | LOG_NOTICE, "Stopping %s[%d], sending %s ...", svc_ident(svc, NULL, 0), svc->pid, sig_name(svc->sighalt)); @@ -850,7 +850,7 @@ int service_stop(svc_t *svc) if (svc->pid > 1) { /* Kill all children in the same proess group, e.g. logit */ rc = kill(-svc->pid, svc->sighalt); - _d("kill(-%d, %d) => rc %d, errno %d", svc->pid, svc->sighalt, rc, errno); + dbg("kill(-%d, %d) => rc %d, errno %d", svc->pid, svc->sighalt, rc, errno); /* PID lost or forking process never really started */ if (rc == -1 && (errno == ESRCH || errno == ENOENT)) { service_cleanup(svc); @@ -885,7 +885,7 @@ int service_stop(svc_t *svc) _exit(0); break; case -1: - _pe("Failed fork() to call sysv script '%s stop'", cmdline); + err(1, "Failed fork() to call sysv script '%s stop'", cmdline); rc = 1; break; default: @@ -924,7 +924,7 @@ static int service_restart(svc_t *svc) return 1; if (svc->pid <= 1) { - _d("%s: bad PID %d for %s, SIGHUP", svc_ident(svc, NULL, 0), svc->pid, svc->cmd); + dbg("%s: bad PID %d for %s, SIGHUP", svc_ident(svc, NULL, 0), svc->pid, svc->cmd); svc->start_time = svc->pid = 0; return 1; } @@ -936,7 +936,7 @@ static int service_restart(svc_t *svc) if (do_progress) print_desc("Restarting ", svc->desc); - _d("Sending SIGHUP to PID %d", svc->pid); + dbg("Sending SIGHUP to PID %d", svc->pid); logit(LOG_CONSOLE | LOG_NOTICE, "Restarting %s[%d], sending SIGHUP ...", svc_ident(svc, NULL, 0), svc->pid); rc = kill(svc->pid, SIGHUP); @@ -1027,7 +1027,7 @@ static void parse_env(svc_t *svc, char *env) return; if (strlen(env) >= sizeof(svc->env)) { - _e("%s: env file is too long (>%zu chars)", svc_ident(svc, NULL, 0), sizeof(svc->env)); + errx(1, "%s: env file is too long (>%zu chars)", svc_ident(svc, NULL, 0), sizeof(svc->env)); return; } @@ -1051,7 +1051,7 @@ static void parse_cgroup(svc_t *svc, char *cgroup) } if (strlen(ptr) >= sizeof(svc->cgroup)) { - _e("%s: cgroup settings too long (>%zu chars)", svc_ident(svc, NULL, 0), sizeof(svc->cgroup)); + errx(1, "%s: cgroup settings too long (>%zu chars)", svc_ident(svc, NULL, 0), sizeof(svc->cgroup)); return; } @@ -1076,7 +1076,7 @@ static void parse_killdelay(svc_t *svc, char *delay) sec = strtonum(delay, 1, 60, &errstr); if (errstr) { - _e("%s: killdelay %s is %s (1-60)", svc_ident(svc, NULL, 0), delay, errstr); + errx(1, "%s: killdelay %s is %s (1-60)", svc_ident(svc, NULL, 0), delay, errstr); return; } @@ -1200,7 +1200,7 @@ static void parse_cmdline_args(svc_t *svc, char *cmd) diff += conf_changed(svc_getenv(svc)); if (diff) - _d("Modified args for %s detected", cmd); + dbg("Modified args for %s detected", cmd); svc->args_dirty = (diff > 0); } @@ -1279,7 +1279,7 @@ int service_register(int type, char *cfg, struct rlimit rlimit[], char *file) svc_t *svc; if (!cfg) { - _e("Invalid input argument"); + errx(1, "Invalid input argument"); return errno = EINVAL; } @@ -1308,7 +1308,7 @@ int service_register(int type, char *cfg, struct rlimit rlimit[], char *file) cmd = strtok(line, " \t"); if (!cmd) { incomplete: - _e("Incomplete service '%s', cannot register", cfg); + errx(1, "Incomplete service '%s', cannot register", cfg); return errno = ENOENT; } @@ -1381,7 +1381,7 @@ int service_register(int type, char *cfg, struct rlimit rlimit[], char *file) levels = conf_parse_runlevels(runlevels); if (runlevel > 0 && !ISOTHER(levels, 0)) { - _d("Skipping %s, bootstrap is completed.", cmd); + dbg("Skipping %s, bootstrap is completed.", cmd); return 0; } @@ -1430,17 +1430,17 @@ int service_register(int type, char *cfg, struct rlimit rlimit[], char *file) svc = svc_find(name, id); if (!svc) { - _d("Creating new svc for %s name %s id %s type %d", cmd, name, id, type); + dbg("Creating new svc for %s name %s id %s type %d", cmd, name, id, type); svc = svc_new(cmd, name, id, type); if (!svc) { - _e("Out of memory, cannot register service %s", cmd); + errx(1, "Out of memory, cannot register service %s", cmd); return errno = ENOMEM; } if (manual) svc_stop(svc); } else { - _d("Found existing svc for %s name %s id %s type %d", cmd, name, id, type); + dbg("Found existing svc for %s name %s id %s type %d", cmd, name, id, type); /* update type, may have changed from service -> task */ svc->type = type; @@ -1467,7 +1467,7 @@ int service_register(int type, char *cfg, struct rlimit rlimit[], char *file) } svc->runlevels = levels; - _d("Service %s runlevel 0x%02x", svc_ident(svc, NULL, 0), svc->runlevels); + dbg("Service %s runlevel 0x%02x", svc_ident(svc, NULL, 0), svc->runlevels); conf_parse_cond(svc, cond); @@ -1613,21 +1613,21 @@ void service_monitor(pid_t lost, int status) svc = svc_find_by_pid(lost); if (!svc) { if (service_script_del(lost)) - _d("collected unknown PID %d", lost); + dbg("collected unknown PID %d", lost); return; } switch (svc->state) { case SVC_CLEANUP_STATE: case SVC_SETUP_STATE: - _d("collected script %s(%d), normal exit: %d, signaled: %d, exit code: %d", + dbg("collected script %s(%d), normal exit: %d, signaled: %d, exit code: %d", svc->state == SVC_CLEANUP_STATE ? svc->post_script : svc->pre_script, lost, WIFEXITED(status), WIFSIGNALED(status), WEXITSTATUS(status)); kill(-svc->pid, SIGKILL); goto done; default: - _d("collected %s(%d), normal exit: %d, signaled: %d, exit code: %d", + dbg("collected %s(%d), normal exit: %d, signaled: %d, exit code: %d", svc_ident(svc, NULL, 0), lost, WIFEXITED(status), WIFSIGNALED(status), WEXITSTATUS(status)); svc->status = status; break; @@ -1666,7 +1666,7 @@ cont: if (!service_step(svc)) { /* Clean out any bootstrap tasks, they've had their time in the sun. */ if (svc_clean_bootstrap(svc)) - _d("collected bootstrap task %s(%d), removing.", svc_ident(svc, NULL, 0), lost); + dbg("collected bootstrap task %s(%d), removing.", svc_ident(svc, NULL, 0), lost); } sm_step(&sm); @@ -1734,7 +1734,7 @@ static void service_pre_script(svc_t *svc) { svc->pid = service_fork(svc); if (svc->pid < 0) { - _pe("Failed forking off %s pre-script %s", svc_ident(svc, NULL, 0), svc->pre_script); + err(1, "Failed forking off %s pre-script %s", svc_ident(svc, NULL, 0), svc->pre_script); return; } @@ -1767,7 +1767,7 @@ static void service_post_script(svc_t *svc) { svc->pid = service_fork(svc); if (svc->pid < 0) { - _pe("Failed forking off %s post-script %s", svc_ident(svc, NULL, 0), svc->post_script); + err(1, "Failed forking off %s post-script %s", svc_ident(svc, NULL, 0), svc->post_script); return; } @@ -1820,7 +1820,7 @@ void service_ready_script(svc_t *svc) pid = service_fork(svc); if (pid < 0) { - _pe("Failed forking off %s ready-script %s", svc_ident(svc, NULL, 0), svc->ready_script); + err(1, "Failed forking off %s ready-script %s", svc_ident(svc, NULL, 0), svc->ready_script); return; } @@ -1855,7 +1855,7 @@ static void service_retry(svc_t *svc) service_timeout_cancel(svc); if (svc->respawn) { - _d("%s crashed/exited, respawning ...", svc_ident(svc, NULL, 0)); + dbg("%s crashed/exited, respawning ...", svc_ident(svc, NULL, 0)); svc_unblock(svc); service_step(svc); return; @@ -1886,7 +1886,7 @@ static void service_retry(svc_t *svc) (*restart_cnt)++; - _d("%s crashed, trying to start it again, attempt %d", svc_ident(svc, NULL, 0), *restart_cnt); + dbg("%s crashed, trying to start it again, attempt %d", svc_ident(svc, NULL, 0), *restart_cnt); logit(LOG_CONSOLE | LOG_WARNING, "Service %s[%d] died, restarting (%d/%d)", svc_ident(svc, NULL, 0), svc->oldpid, *restart_cnt, svc->restart_max); svc_unblock(svc); @@ -1907,7 +1907,7 @@ static void svc_set_state(svc_t *svc, svc_state_t new) /* if PID isn't collected within SVC_TERM_TIMEOUT msec, kill it! */ if (*state == SVC_STOPPING_STATE) { - _d("%s is stopping, wait %d sec before sending SIGKILL ...", + dbg("%s is stopping, wait %d sec before sending SIGKILL ...", svc_ident(svc, NULL, 0), svc->killdelay / 1000); service_timeout_cancel(svc); service_timeout_after(svc, svc->killdelay, service_kill); @@ -1986,7 +1986,7 @@ restart: old_state = svc->state; enabled = svc_enabled(svc); - _d("%20s(%4d): %8s %3sabled/%-7s cond:%-4s", svc_ident(svc, NULL, 0), svc->pid, + dbg("%20s(%4d): %8s %3sabled/%-7s cond:%-4s", svc_ident(svc, NULL, 0), svc->pid, svc_status(svc), enabled ? "en" : "dis", svc_dirtystr(svc), condstr(cond_get_agg(svc->cond))); @@ -2007,7 +2007,7 @@ restart: if (!svc->pid) { char condstr[MAX_COND_LEN]; - _d("%s: stopped, cleaning up timers and conditions ...", svc_ident(svc, NULL, 0)); + dbg("%s: stopped, cleaning up timers and conditions ...", svc_ident(svc, NULL, 0)); service_timeout_cancel(svc); cond_clear(mkcond(svc, condstr, sizeof(condstr))); @@ -2030,7 +2030,7 @@ restart: break; default: - _e("unknown service type %d", svc->type); + errx(1, "unknown service type %d", svc->type); break; } } @@ -2101,7 +2101,7 @@ restart: * file. In both cases, after that, retry after 2 sec */ if (!svc->respawn) - _d("delayed restart of %s", svc_ident(svc, NULL, 0)); + dbg("delayed restart of %s", svc_ident(svc, NULL, 0)); if (svc_is_forking(svc)) service_timeout_after(svc, 2000, service_retry); else @@ -2171,13 +2171,13 @@ restart: char name[MAX_COND_LEN]; mkcond(svc, name, sizeof(name)); - _d("Reassert condition %s", name); + dbg("Reassert condition %s", name); cond_set_path(cond_path(name), COND_ON); } break; case COND_OFF: - _d("Condition for %s is off, sending SIGCONT + SIGTERM", svc->name); + dbg("Condition for %s is off, sending SIGCONT + SIGTERM", svc->name); kill(svc->pid, SIGCONT); service_stop(svc); break; @@ -2189,7 +2189,7 @@ restart: } if (svc->state != old_state) { - _d("%20s(%4d): -> %8s", svc_ident(svc, NULL, 0), svc->pid, svc_status(svc)); + dbg("%20s(%4d): -> %8s", svc_ident(svc, NULL, 0), svc->pid, svc_status(svc)); changed++; goto restart; } @@ -2260,15 +2260,15 @@ int service_completed(void) if (strstr(svc->cond, plugin_hook_str(HOOK_SVC_UP)) || strstr(svc->cond, plugin_hook_str(HOOK_SYSTEM_UP))) { - _d("Skipping %s(%s), post-strap hook", svc->desc, svc_ident(svc, NULL, 0)); + dbg("Skipping %s(%s), post-strap hook", svc->desc, svc_ident(svc, NULL, 0)); continue; } if (!svc->once) { - _d("%s has not yet completed ...", svc_ident(svc, NULL, 0)); + dbg("%s has not yet completed ...", svc_ident(svc, NULL, 0)); return 0; } - _d("%s has completed ...", svc_ident(svc, NULL, 0)); + dbg("%s has completed ...", svc_ident(svc, NULL, 0)); } return 1; diff --git a/src/sig.c b/src/sig.c index cd22b053..c7c5128e 100644 --- a/src/sig.c +++ b/src/sig.c @@ -231,12 +231,12 @@ void do_iterate_proc(int (*cb)(int, void *), void *data) if (fgets(file, sizeof(file), fp)) { if (strstr(file, "gdbserver")) - _d("Skipping %s ...", file); + dbg("Skipping %s ...", file); else if (file[0] == '@') - _d("Skipping %s ...", &file[1]); + dbg("Skipping %s ...", &file[1]); else if (cb(pid, data)) { - _d("PID %d is still alive (%s)", pid, file); + dbg("PID %d is still alive (%s)", pid, file); fclose(fp); break; } @@ -382,15 +382,15 @@ void do_shutdown(shutop_t op) do_sleep(1); } - _d("Rebooting ..."); + dbg("Rebooting ..."); reboot(RB_AUTOBOOT); } else if (op == SHUT_OFF) { - _d("Powering down ..."); + dbg("Powering down ..."); reboot(RB_POWER_OFF); } /* Also fallback if any of the other two fails */ - _d("Halting ..."); + dbg("Halting ..."); reboot(RB_HALT_SYSTEM); } @@ -399,9 +399,9 @@ void do_shutdown(shutop_t op) */ static void sighup_cb(uev_t *w, void *arg, int events) { - _d("..."); + dbg("..."); if (UEV_ERROR == events) { - _e("Unrecoverable error in signal watcher"); + errx(1, "Unrecoverable error in signal watcher"); return; } @@ -420,9 +420,9 @@ static void sighup_cb(uev_t *w, void *arg, int events) */ static void sigint_cb(uev_t *w, void *arg, int events) { - _d("..."); + dbg("..."); if (UEV_ERROR == events) { - _e("Unrecoverable error in signal watcher"); + errx(1, "Unrecoverable error in signal watcher"); return; } @@ -436,9 +436,9 @@ static void sigint_cb(uev_t *w, void *arg, int events) */ static void sigpwr_cb(uev_t *w, void *arg, int events) { - _d("..."); + dbg("..."); if (UEV_ERROR == events) { - _e("Unrecoverable error in signal watcher"); + errx(1, "Unrecoverable error in signal watcher"); return; } @@ -450,9 +450,9 @@ static void sigpwr_cb(uev_t *w, void *arg, int events) */ static void sigusr1_cb(uev_t *w, void *arg, int events) { - _d("..."); + dbg("..."); if (UEV_ERROR == events) { - _e("Unrecoverable error in signal watcher"); + errx(1, "Unrecoverable error in signal watcher"); return; } @@ -466,9 +466,9 @@ static void sigusr1_cb(uev_t *w, void *arg, int events) */ static void sigusr2_cb(uev_t *w, void *arg, int events) { - _d("..."); + dbg("..."); if (UEV_ERROR == events) { - _e("Unrecoverable error in signal watcher"); + errx(1, "Unrecoverable error in signal watcher"); return; } @@ -481,9 +481,9 @@ static void sigusr2_cb(uev_t *w, void *arg, int events) */ static void sigterm_cb(uev_t *w, void *arg, int events) { - _d("..."); + dbg("..."); if (UEV_ERROR == events) { - _e("Unrecoverable error in signal watcher"); + errx(1, "Unrecoverable error in signal watcher"); return; } @@ -500,7 +500,7 @@ static void sigchld_cb(uev_t *w, void *arg, int events) pid_t pid; if (UEV_ERROR == events) { - _e("Unrecoverable error in signal watcher"); + errx(1, "Unrecoverable error in signal watcher"); return; } @@ -513,7 +513,7 @@ static void sigchld_cb(uev_t *w, void *arg, int events) break; } - _d("Collected child %d", pid); + dbg("Collected child %d", pid); service_monitor(pid, status); } } @@ -603,7 +603,7 @@ void sig_setup(uev_ctx_t *ctx) { struct sigaction sa; - _d("Setup signals"); + dbg("Setup signals"); /* * Standard SysV init calls ctrl-alt-delete handler diff --git a/src/sm.c b/src/sm.c index 23657b1c..6322db38 100644 --- a/src/sm.c +++ b/src/sm.c @@ -116,12 +116,12 @@ void sm_step(sm_t *sm) restart: old_state = sm->state; - _d("state: %s, runlevel: %d, newlevel: %d, teardown: %d, reload: %d", + dbg("state: %s, runlevel: %d, newlevel: %d, teardown: %d, reload: %d", sm_status(sm->state), runlevel, sm->newlevel, sm->in_teardown, sm->reload); switch (sm->state) { case SM_BOOTSTRAP_STATE: - _d("Bootstrapping all services in runlevel S from %s", FINIT_CONF); + dbg("Bootstrapping all services in runlevel S from %s", FINIT_CONF); service_step_all(SVC_TYPE_RUNTASK | SVC_TYPE_SERVICE); sm->state = SM_RUNNING_STATE; break; @@ -154,7 +154,7 @@ restart: plugin_run_hooks(HOOK_SHUTDOWN); } - _d("Setting new runlevel --> %d <-- previous %d", runlevel, prevlevel); + dbg("Setting new runlevel --> %d <-- previous %d", runlevel, prevlevel); if (osheading) logit(LOG_CONSOLE | LOG_NOTICE, "%s, entering runlevel %d", osheading, runlevel); else @@ -173,7 +173,7 @@ restart: /* Reset once flag of runtasks */ service_runtask_clean(); - _d("Stopping services not allowed in new runlevel ..."); + dbg("Stopping services not allowed in new runlevel ..."); sm->in_teardown = 1; service_step_all(SVC_TYPE_ANY); @@ -187,15 +187,15 @@ restart: */ svc = svc_stop_completed(); if (svc) { - _d("Waiting to collect %s, cmd %s(%d) ...", svc_ident(svc, NULL, 0), svc->cmd, svc->pid); + dbg("Waiting to collect %s, cmd %s(%d) ...", svc_ident(svc, NULL, 0), svc->cmd, svc->pid); break; } /* Prev runlevel services stopped, call hooks before starting new runlevel ... */ - _d("All services have been stopped, calling runlevel change hooks ..."); + dbg("All services have been stopped, calling runlevel change hooks ..."); plugin_run_hooks(HOOK_RUNLEVEL_CHANGE); /* Reconfigure HW/VLANs/etc here */ - _d("Starting services new to this runlevel ..."); + dbg("Starting services new to this runlevel ..."); sm->in_teardown = 0; service_step_all(SVC_TYPE_ANY); @@ -225,7 +225,7 @@ restart: * Then, mark all affected service conditions as in-flux and * let all affected services move to WAITING/HALTED */ - _d("Stopping services not allowed after reconf ..."); + dbg("Stopping services not allowed after reconf ..."); sm->in_teardown = 1; cond_reload(); service_step_all(SVC_TYPE_ANY); @@ -240,23 +240,23 @@ restart: */ svc = svc_stop_completed(); if (svc) { - _d("Waiting to collect %s, cmd %s(%d) ...", svc_ident(svc, NULL, 0), svc->cmd, svc->pid); + dbg("Waiting to collect %s, cmd %s(%d) ...", svc_ident(svc, NULL, 0), svc->cmd, svc->pid); break; } sm->in_teardown = 0; - _d("Starting services after reconf ..."); + dbg("Starting services after reconf ..."); service_step_all(SVC_TYPE_ANY); /* Cleanup stale services */ svc_clean_dynamic(service_unregister); - _d("Calling reconf hooks ..."); + dbg("Calling reconf hooks ..."); plugin_run_hooks(HOOK_SVC_RECONF); service_step_all(SVC_TYPE_ANY); - _d("Reconfiguration done"); + dbg("Reconfiguration done"); sm->state = SM_RUNNING_STATE; break; diff --git a/src/svc.c b/src/svc.c index b9a1e456..be1b63fd 100644 --- a/src/svc.c +++ b/src/svc.c @@ -70,12 +70,12 @@ static void maybe_clear_cond(svc_t *svc) if (!string_compare(cond, c)) continue; - _d("Not clearing cond %s from gc svc %s, provided by new active service %s", + dbg("Not clearing cond %s from gc svc %s, provided by new active service %s", cond, ident, svc_ident(s, NULL, 0)); return; } - _d("Cleaning out %s, clearing any conditions ...", svc->name); + dbg("Cleaning out %s, clearing any conditions ...", svc->name); cond_clear(mkcond(svc, cond, sizeof(cond))); } @@ -657,17 +657,17 @@ int svc_parse_jobstr(char *str, size_t len, void *user_data, int (*found)(svc_t char *input, *token; int result = 0; - _d("Got str:'%s'", str); + dbg("Got str:'%s'", str); input = tokstr(str, len); while (input) { char *id = NULL; svc_t *svc, *iter = NULL; char *ptr; - _d("Got token:'%s'", input); + dbg("Got token:'%s'", input); token = sanitize(input, strlen(input) + 1); if (!token) { - _d("Sanitation of token:'%s' failed", input); + dbg("Sanitation of token:'%s' failed", input); goto next; } ptr = strchr(token, ':'); diff --git a/src/tty.c b/src/tty.c index d3c1848e..581d5d9f 100644 --- a/src/tty.c +++ b/src/tty.c @@ -60,7 +60,7 @@ char *tty_canonicalize(char *dev) if (stat(path, &st)) { if (!strncmp(path, _PATH_DEV, strlen(_PATH_DEV))) { unavailable: - _d("TTY %s not available at the moment, registering anyway.", path); + dbg("TTY %s not available at the moment, registering anyway.", path); return path; } @@ -99,14 +99,14 @@ char *tty_atcon(void) fp = fopen("/sys/class/tty/console/active", "r"); if (!fp) { - _e("Cannot find system console, is sysfs not mounted?"); + errx(1, "Cannot find system console, is sysfs not mounted?"); errno = ENOENT; return NULL; } buf = malloc(512); if (!buf) { - _pe("Failed allocating memory for @console"); + err(1, "Failed allocating memory for @console"); fclose(fp); return NULL; } @@ -118,7 +118,7 @@ char *tty_atcon(void) fclose(fp); ptr = chomp(buf); - _d("consoles: %s", ptr); + dbg("consoles: %s", ptr); } dev = strtok_r(ptr, " \t", &save); @@ -223,11 +223,11 @@ int tty_parse_args(char *cmd, struct tty *tty) tty->dev = tty_canonicalize(dev); if (!tty->dev) { - _e("Incomplete or non-existing TTY device given, cannot register."); + errx(1, "Incomplete or non-existing TTY device given, cannot register."); return errno = EINVAL; } - _d("Registering %s getty on TTY %s at %s baud with term %s", tty->cmd ? "external" : "built-in", + dbg("Registering %s getty on TTY %s at %s baud with term %s", tty->cmd ? "external" : "built-in", tty->dev, tty->baud ?: "0", tty->term ?: "N/A"); /* Built-in getty now comes as standalone program */ @@ -291,21 +291,21 @@ int tty_exec(svc_t *svc) dev = tty_canonicalize(svc->dev); if (!dev) { - _d("%s: Cannot find TTY device: %s", svc->dev, strerror(errno)); + dbg("%s: Cannot find TTY device: %s", svc->dev, strerror(errno)); return EX_CONFIG; } if (!tty_exists(dev)) { - _d("%s: Not a valid TTY: %s", dev, strerror(errno)); + dbg("%s: Not a valid TTY: %s", dev, strerror(errno)); return EX_OSFILE; } if (svc->nologin) { - _d("%s: Starting /bin/sh ...", dev); + dbg("%s: Starting /bin/sh ...", dev); return run_sh(dev, svc->noclear, svc->nowait, svc->rlimit); } - _d("%s: Starting %s ...", dev, svc->cmd); + dbg("%s: Starting %s ...", dev, svc->cmd); for (i = 1, j = 0; i < MAX_NUM_SVC_ARGS; i++) { if (!svc->args[i][0]) break;