79 lines
2.3 KiB
Diff
79 lines
2.3 KiB
Diff
From 472396d694ae1d8b77f8b349ab13e387b9eae629 Mon Sep 17 00:00:00 2001
|
|
From: "FeRD (Frank Dana)" <ferdnyc@gmail.com>
|
|
Date: Thu, 11 Jul 2019 21:16:43 -0400
|
|
Subject: [PATCH] Print URL for server, quiet option suppresses
|
|
|
|
This will display a line of text on stdout immediately after
|
|
binding to the configured address and port:
|
|
`Server running at http://<address>:<port>/`
|
|
An option `-q` / `--quiet` is added, to suppress the output.
|
|
---
|
|
src/chm_http.c | 18 +++++++++++++++---
|
|
1 file changed, 15 insertions(+), 3 deletions(-)
|
|
|
|
diff --git a/src/chm_http.c b/src/chm_http.c
|
|
index 237e85a..84304f9 100644
|
|
--- a/src/chm_http.c
|
|
+++ b/src/chm_http.c
|
|
@@ -51,13 +51,14 @@
|
|
|
|
int config_port = 8080;
|
|
char config_bind[65536] = "127.0.0.1";
|
|
+char config_quiet = 0;
|
|
|
|
static void usage(const char *argv0)
|
|
{
|
|
#ifdef CHM_HTTP_SIMPLE
|
|
- fprintf(stderr, "usage: %s <filename>\n", argv0);
|
|
+ fprintf(stderr, "usage: %s [--quiet] <filename>\n", argv0);
|
|
#else
|
|
- fprintf(stderr, "usage: %s [--port=PORT] [--bind=IP] <filename>\n", argv0);
|
|
+ fprintf(stderr, "usage: %s [--quiet] [--port=PORT] [--bind=IP] <filename>\n", argv0);
|
|
#endif
|
|
exit(1);
|
|
}
|
|
@@ -80,6 +81,7 @@ int main(int c, char **v)
|
|
{
|
|
{ "port", required_argument, 0, 'p' },
|
|
{ "bind", required_argument, 0, 'b' },
|
|
+ { "quiet", no_argument, 0, 'q' },
|
|
{ "help", no_argument, 0, 'h' },
|
|
{ 0, 0, 0, 0 }
|
|
};
|
|
@@ -87,7 +89,7 @@ int main(int c, char **v)
|
|
while (1)
|
|
{
|
|
int o;
|
|
- o = getopt_long (c, v, "p:b:h", longopts, &optindex);
|
|
+ o = getopt_long (c, v, "p:b:qh", longopts, &optindex);
|
|
if (o < 0)
|
|
{
|
|
break;
|
|
@@ -109,6 +111,10 @@ int main(int c, char **v)
|
|
config_bind[65535] = '\0';
|
|
break;
|
|
|
|
+ case 'q':
|
|
+ config_quiet = 1;
|
|
+ break;
|
|
+
|
|
case 'h':
|
|
usage (v[0]);
|
|
break;
|
|
@@ -182,6 +188,12 @@ static void chmhttp_server(const char *filename)
|
|
exit(3);
|
|
}
|
|
|
|
+ /* Display URL for server */
|
|
+ if (!config_quiet)
|
|
+ {
|
|
+ printf("Server running at http://%s:%d/\n", config_bind, config_port);
|
|
+ }
|
|
+
|
|
/* listen for connections */
|
|
listen(server.socket, 75);
|
|
addrLen = sizeof(struct sockaddr);
|
|
--
|
|
2.21.0
|
|
|