Repair setproctitle (libbsd)
Signed-off-by: Georg Pfuetzenreuter <mail@georg-pfuetzenreuter.net>
This commit is contained in:
parent
2bec10927f
commit
b9454e9f1c
14
daemon.c
14
daemon.c
@ -40,6 +40,8 @@
|
|||||||
#include <syslog.h>
|
#include <syslog.h>
|
||||||
#include <malloc.h>
|
#include <malloc.h>
|
||||||
#include <sys/file.h>
|
#include <sys/file.h>
|
||||||
|
#include <sys/types.h>
|
||||||
|
#include <bsd/unistd.h>
|
||||||
|
|
||||||
#include "daemon.h"
|
#include "daemon.h"
|
||||||
|
|
||||||
@ -212,13 +214,14 @@ static void setTitle(void) {
|
|||||||
for (size_t i = 0; i < services.len; ++i) {
|
for (size_t i = 0; i < services.len; ++i) {
|
||||||
if (services.ptr[i].state == Start) started++;
|
if (services.ptr[i].state == Start) started++;
|
||||||
}
|
}
|
||||||
// throws warning about missing setproctitle_init, even if linked against libbsd-ctor
|
// this works now, but breaks syslog identifier
|
||||||
//setproctitle("%zu/%zu services", started, services.len);
|
//setproctitle("%zu/%zu cats", started, services.len);
|
||||||
}
|
}
|
||||||
|
|
||||||
int main(int argc, char *argv[]) {
|
int main(int argc, char *argv[], char *envp[]) {
|
||||||
int error;
|
int error;
|
||||||
openlog(getprogname(), LOG_NDELAY | LOG_PID | LOG_PERROR, LOG_DAEMON);
|
openlog(getprogname(), LOG_NDELAY | LOG_PID | LOG_PERROR, LOG_DAEMON);
|
||||||
|
syslog(LOG_NOTICE, "Starting %s ...", getprogname());
|
||||||
|
|
||||||
bool daemonize = true;
|
bool daemonize = true;
|
||||||
setAdd(&stopExits, EX_USAGE);
|
setAdd(&stopExits, EX_USAGE);
|
||||||
@ -276,6 +279,8 @@ int main(int argc, char *argv[]) {
|
|||||||
setgid(serviceGID);
|
setgid(serviceGID);
|
||||||
setuid(serviceUID);
|
setuid(serviceUID);
|
||||||
|
|
||||||
|
setproctitle_init(argc, argv, envp);
|
||||||
|
|
||||||
int len = asprintf(&serviceEnviron[USER], "USER=%s", user->pw_name);
|
int len = asprintf(&serviceEnviron[USER], "USER=%s", user->pw_name);
|
||||||
if (len < 0) err(EX_OSERR, "asprintf");
|
if (len < 0) err(EX_OSERR, "asprintf");
|
||||||
|
|
||||||
@ -465,8 +470,7 @@ shutdown:
|
|||||||
close(fifo);
|
close(fifo);
|
||||||
unlink(fifoPath);
|
unlink(fifoPath);
|
||||||
|
|
||||||
// same as with previous occurance
|
setproctitle("stopping");
|
||||||
//setproctitle("stopping");
|
|
||||||
size_t count = 0;
|
size_t count = 0;
|
||||||
for (size_t i = 0; i < services.len; ++i) {
|
for (size_t i = 0; i < services.len; ++i) {
|
||||||
serviceStop(&services.ptr[i]);
|
serviceStop(&services.ptr[i]);
|
||||||
|
Loading…
Reference in New Issue
Block a user