Refactor, move logit() and log macros to log.c + log.h

Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
This commit is contained in:
Joachim Nilsson committed 2017-07-01 20:34:37 +02:00
1 parent 82661346b7
commit 670f08ce51
5 files changed
+148 -82

No files matched your search

+24 -44
View File
@@ -25,49 +25,9 @@
#ifndef FINIT_HELPERS_H_
#define FINIT_HELPERS_H_
#include <err.h>
#include <stdio.h>
#include <string.h> /* strerror() */
#include <syslog.h>
#include <sys/types.h>
#include <lite/lite.h>
/*
* Error and debug messages
*
* Use of logit() is preferred, but these are guaranteed to display on
* /dev/console as well. Useful for critical errors and early debug.
*/
#define _l(prio, fmt, args...) do { if (_slup) warnx(fmt, ##args); logit(prio, fmt "\n", ##args); } while (0)
#define _m(prio, fmt, args...) do { _l(prio, "%s() - " fmt, __func__, ##args); } while (0)
#define _d(fmt, args...) do { if (debug) { _m(LOG_DEBUG, fmt, ##args); } } while (0)
#define _w(fmt, args...) do { _m(LOG_WARNING, fmt, ##args); } while (0)
#define _e(fmt, args...) do { _m(LOG_ERR, fmt, ##args); } while (0)
#define _pe(fmt, args...) do { _m(LOG_ERR, fmt ". Error %d: %s", ##args, errno, strerror(errno)); } while (0)
extern int _slup; /* INTERNAL: Is syslog up yet? */
char *strip_line (char *line);
int pid_alive (pid_t pid);
char *pid_get_name (pid_t pid, char *name, size_t len);
void print (int action, const char *fmt, ...);
void print_desc (char *action, char *desc);
int print_result (int fail);
void logit (int prio, const char *fmt, ...);
int start_process (char *cmd, char *args[], int console);
int getuser (char *username, char **home);
int getgroup (char *group);
void set_hostname (char **hostname);
int complete (char *cmd, int pid);
int run (char *cmd);
int run_interactive (char *cmd, char *fmt, ...);
pid_t run_getty (char *tty, char *speed, char *term, int console);
int run_parts (char *dir, char *cmd);
#include "log.h"
#ifndef HAVE_GETFSENT
struct fstab {
@@ -80,11 +40,31 @@ struct fstab {
int fs_passno; /* pass number on parallel dump */
};
int setfsent(void);
void endfsent(void);
struct fstab *getfsent(void);
int setfsent (void);
void endfsent (void);
struct fstab *getfsent (void);
#endif /* HAVE_GETFSENT */
char *strip_line (char *line);
int pid_alive (pid_t pid);
char *pid_get_name (pid_t pid, char *name, size_t len);
void print (int action, const char *fmt, ...);
void print_desc (char *action, char *desc);
int print_result (int fail);
int start_process (char *cmd, char *args[], int console);
int getuser (char *username, char **home);
int getgroup (char *group);
void set_hostname (char **hostname);
int complete (char *cmd, int pid);
int run (char *cmd);
int run_interactive (char *cmd, char *fmt, ...);
pid_t run_getty (char *tty, char *speed, char *term, int console);
int run_parts (char *dir, char *cmd);
static inline void create(char *path, mode_t mode, uid_t uid, gid_t gid)
{
if (touch(path) || chmod(path, mode) || chown(path, uid, gid))