aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSergey Poznyakoff <gray@gnu.org>2018-05-17 16:52:43 +0300
committerSergey Poznyakoff <gray@gnu.org>2018-05-17 16:52:43 +0300
commit77fd1d9465ab1eb6431d8b0c5f570c9dc92b5dcf (patch)
tree567284867495ac56cbd26c7f60e1bd5f857b763a
parent6627f1c1d8acc2d53a9502a096123c0163bf731a (diff)
downloadgenrc-77fd1d9465ab1eb6431d8b0c5f570c9dc92b5dcf.tar.gz
genrc-77fd1d9465ab1eb6431d8b0c5f570c9dc92b5dcf.tar.bz2
New option: --verbose
-rw-r--r--src/com_reload.c12
-rw-r--r--src/com_start.c3
-rw-r--r--src/com_stop.c3
-rw-r--r--src/genrc.88
-rw-r--r--src/genrc.c9
-rw-r--r--src/genrc.h1
6 files changed, 32 insertions, 4 deletions
diff --git a/src/com_reload.c b/src/com_reload.c
index fd12e7d..7a0f768 100644
--- a/src/com_reload.c
+++ b/src/com_reload.c
@@ -18,2 +18,14 @@ com_reload(void)
return 1;
+ if (genrc_verbose) {
+ printf("Reloading %s: sending %s to %s ",
+ genrc_program, strsignal(genrc_signal_reload),
+ pids.pidc > 1 ? "PIDs" : "PID");
+ printf("%lu", (unsigned long)pids.pidv[0]);
+ if (pids.pidc > 1) {
+ int i;
+ for (i = 0; i < pids.pidc; i++ )
+ printf(",%lu", (unsigned long)pids.pidv[i]);
+ }
+ putchar('\n');
+ }
pidlist_kill(&pids, genrc_signal_reload);
diff --git a/src/com_start.c b/src/com_start.c
index 93c324e..65c1775 100644
--- a/src/com_start.c
+++ b/src/com_start.c
@@ -100,2 +100,5 @@ com_start(void)
+ if (genrc_verbose)
+ printf("Starting %s\n", genrc_program);
+
if ((p = getenv("GENRC_SENTINEL")) && *p == '1')
diff --git a/src/com_stop.c b/src/com_stop.c
index 1cb4452..d57fa5e 100644
--- a/src/com_stop.c
+++ b/src/com_stop.c
@@ -37,2 +37,5 @@ com_stop(void)
+ if (genrc_verbose)
+ printf("Stopping %s\n", genrc_program);
+
gettimeofday(&stoptime, NULL);
diff --git a/src/genrc.8 b/src/genrc.8
index 920252e..b750894 100644
--- a/src/genrc.8
+++ b/src/genrc.8
@@ -15,3 +15,3 @@
.\" along with genrc. If not, see <http://www.gnu.org/licenses/>.
-.TH GENRC 8 "May 15, 2018" "GENRC" "Genrc User Manual"
+.TH GENRC 8 "May 17, 2018" "GENRC" "Genrc User Manual"
.SH NAME
@@ -21,3 +21,3 @@ genrc \- generic system initialization script helper
\fBgenrc\fR\
- [\fB\-h\fR]\
+ [\fB\-hv\fR]\
[\fB\-F\fR \fIPIDFILE\fR]\
@@ -39,2 +39,3 @@ genrc \- generic system initialization script helper
[\fB\-\-usage\fR]\
+ [\fB\-\-verbose\fR]\
{\
@@ -195,2 +196,5 @@ Display a short usage summary.
Display program version and exit.
+.TP
+\fB\-v\fR, \fB\-\-verbose\fR
+Print verbose messages (e.g. "Starting \fIPROGNAME\fR").
.SH PID SOURCES
diff --git a/src/genrc.c b/src/genrc.c
index 3f89d03..92b0fac 100644
--- a/src/genrc.c
+++ b/src/genrc.c
@@ -18,2 +18,3 @@ GENRC_PID_CLOSURE *genrc_pid_closure;
char *genrc_create_pidfile;
+int genrc_verbose;
@@ -43,5 +44,6 @@ struct option longopts[] = {
{ "version", no_argument, 0, OPT_VERSION },
+ { "verbose", no_argument, 0, 'v' },
{ NULL }
};
-char shortopts[] = "c:hF:P:p:St:";
+char shortopts[] = "c:hF:P:p:St:v";
@@ -404,2 +406,5 @@ main(int argc, char **argv)
break;
+ case 'v':
+ genrc_verbose++;
+ break;
default:
@@ -470,3 +475,3 @@ main(int argc, char **argv)
} else {
- genrc_pid_closure = get_pid_closure("PROC");
+ genrc_pid_closure = get_pid_closure(DEFAULT_PID_SOURCE);
}
diff --git a/src/genrc.h b/src/genrc.h
index 13b40d7..a6e81e8 100644
--- a/src/genrc.h
+++ b/src/genrc.h
@@ -134,2 +134,3 @@ extern GENRC_PID_CLOSURE *genrc_pid_closure;
extern char *genrc_create_pidfile;
+extern int genrc_verbose;

Return to:

Send suggestions and report system problems to the System administrator.