X-Git-Url: http://git.archive.openwrt.org/?p=project%2Fprocd.git;a=blobdiff_plain;f=procd.h;h=f3aff895b18364d8b727d9732e7e7fe7479d2f3f;hp=66a08e2d125f7f765f252e19fce0b988e7424030;hb=6390afe7a3cf1663979078711febb2be21fb4cf2;hpb=0f479be2068d7fe3bd5953e7454aaabb2be38d93 diff --git a/procd.h b/procd.h index 66a08e2..f3aff89 100644 --- a/procd.h +++ b/procd.h @@ -1,26 +1,66 @@ +/* + * Copyright (C) 2013 Felix Fietkau + * Copyright (C) 2013 John Crispin + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License version 2.1 + * as published by the Free Software Foundation + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + */ + #ifndef __PROCD_H #define __PROCD_H #include #include #include + #include +#include -#define __init __attribute__((constructor)) +#include "syslog.h" -#define DPRINTF(fmt, ...) do { \ - if (debug) \ - fprintf(stderr, "DEBUG %s(%d): " fmt, __func__, __LINE__, ## __VA_ARGS__); \ - } while (0) +#define __init __attribute__((constructor)) #define DEBUG(level, fmt, ...) do { \ if (debug >= level) \ - fprintf(stderr, "DEBUG %s(%d): " fmt, __func__, __LINE__, ## __VA_ARGS__); \ + fprintf(stderr, "procd: %s(%d): " fmt, __func__, __LINE__, ## __VA_ARGS__); \ + } while (0) + +#define LOG(fmt, ...) do { \ + syslog(LOG_INFO, fmt, ## __VA_ARGS__); \ + fprintf(stderr, "procd: "fmt, ## __VA_ARGS__); \ + } while (0) + +#define ERROR(fmt, ...) do { \ + syslog(LOG_ERR, fmt, ## __VA_ARGS__); \ + fprintf(stderr, "procd: "fmt, ## __VA_ARGS__); \ } while (0) -extern int debug; extern char *ubus_socket; + +extern unsigned int debug; +void debug_init(void); + void procd_connect_ubus(void); -void procd_init_service(struct ubus_context *ctx); +void ubus_init_service(struct ubus_context *ctx); +void ubus_init_log(struct ubus_context *ctx); +void ubus_init_system(struct ubus_context *ctx); +void ubus_notify_log(struct log_head *l); + +void procd_state_next(void); +void procd_shutdown(int event); +void procd_early(void); +void procd_preinit(void); +void procd_coldplug(void); +void procd_signal(void); +void procd_inittab(void); +void procd_inittab_run(const char *action); + +int mkdev(const char *progname, int progmode); #endif