test-daemon.c revision 8dd4c05b5495c7ffe0f12ace87e71abe17bd0a0e
260672bd3f54ac0cf5bfc2032c7f5a51991c9f4aChad Kienle/*-*- Mode: C; c-basic-offset: 8; indent-tabs-mode: nil -*-*/
260672bd3f54ac0cf5bfc2032c7f5a51991c9f4aChad Kienle
260672bd3f54ac0cf5bfc2032c7f5a51991c9f4aChad Kienle/***
260672bd3f54ac0cf5bfc2032c7f5a51991c9f4aChad Kienle This file is part of systemd.
260672bd3f54ac0cf5bfc2032c7f5a51991c9f4aChad Kienle
12215e8cf03be7141191f455a58ff6abb9129c98Andi Egloff Copyright 2010 Lennart Poettering
260672bd3f54ac0cf5bfc2032c7f5a51991c9f4aChad Kienle
260672bd3f54ac0cf5bfc2032c7f5a51991c9f4aChad Kienle systemd is free software; you can redistribute it and/or modify it
260672bd3f54ac0cf5bfc2032c7f5a51991c9f4aChad Kienle under the terms of the GNU Lesser General Public License as published by
260672bd3f54ac0cf5bfc2032c7f5a51991c9f4aChad Kienle the Free Software Foundation; either version 2.1 of the License, or
260672bd3f54ac0cf5bfc2032c7f5a51991c9f4aChad Kienle (at your option) any later version.
260672bd3f54ac0cf5bfc2032c7f5a51991c9f4aChad Kienle
systemd 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
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public License
along with systemd; If not, see <http://www.gnu.org/licenses/>.
***/
#include <unistd.h>
#include "sd-daemon.h"
#include "strv.h"
int main(int argc, char*argv[]) {
_cleanup_strv_free_ char **l = NULL;
int n, i;
n = sd_listen_fds_with_names(false, &l);
if (n < 0) {
log_error_errno(n, "Failed to get listening fds: %m");
return EXIT_FAILURE;
}
for (i = 0; i < n; i++)
log_info("fd=%i name=%s\n", SD_LISTEN_FDS_START + i, l[i]);
sd_notify(0,
"STATUS=Starting up");
sleep(5);
sd_notify(0,
"STATUS=Running\n"
"READY=1");
sleep(5);
sd_notify(0,
"STATUS=Reloading\n"
"RELOADING=1");
sleep(5);
sd_notify(0,
"STATUS=Running\n"
"READY=1");
sleep(5);
sd_notify(0,
"STATUS=Quitting\n"
"STOPPING=1");
sleep(5);
return EXIT_SUCCESS;
}