diff mbox series

[v1,4/8] tools: add trigger to swupdate-hawkbitcfg

Message ID 20211015082457.6804-5-roland.gaudig-oss@weidmueller.com
State Changes Requested
Headers show
Series suricatta: ipc: add request to get hawkBit server status | expand

Commit Message

Roland Gaudig Oct. 15, 2021, 8:24 a.m. UTC
From: Roland Gaudig <roland.gaudig@weidmueller.com>

This commit extends swupdate-hawkbitcfg with the option to emit the
Hawkbit trigger command.

Signed-off-by: Roland Gaudig <roland.gaudig@weidmueller.com>
---

 tools/swupdate-hawkbitcfg.c | 12 ++++++++++++
 1 file changed, 12 insertions(+)
diff mbox series

Patch

diff --git a/tools/swupdate-hawkbitcfg.c b/tools/swupdate-hawkbitcfg.c
index 6d5fd43..c390ec7 100644
--- a/tools/swupdate-hawkbitcfg.c
+++ b/tools/swupdate-hawkbitcfg.c
@@ -27,6 +27,7 @@  static struct option long_options[] = {
 	{"polling-time", required_argument, NULL, 'p'},
 	{"enable", no_argument, NULL, 'e'},
 	{"disable", no_argument, NULL, 'd'},
+	{"trigger", no_argument, NULL, 't'},
 	{NULL, 0, NULL, 0}
 };
 
@@ -39,6 +40,7 @@  static void usage(char *programname)
 		" -p, --polling-time      : Set polling time (0=from server) to ask the backend server\n"
 		" -e, --enable            : Enable polling of backend server\n"
 		" -d, --disable           : Disable polling of backend server\n"
+		" -t, --trigger           : Poll backend server immediately\n"
 		" -h, --help              : print this help and exit\n"
 		);
 }
@@ -73,6 +75,7 @@  int main(int argc, char *argv[]) {
 	bool enable = false;
 	int opt_e = 0;
 	int opt_p = 0;
+	int opt_t = 0;
 
 	if (argc < 2) {
 		usage(argv[0]);
@@ -101,6 +104,10 @@  int main(int argc, char *argv[]) {
 			opt_e = 1;
 			enable = (c == 'e');
 			break;
+		case 't':
+			msg.data.procmsg.cmd = CMD_ENABLE;
+			opt_t = 1;
+			break;
 		case 'h':
 			usage(argv[0]);
 			exit(0);
@@ -129,6 +136,11 @@  int main(int argc, char *argv[]) {
 		msg.data.procmsg.len = strnlen(buf, size);
 		send_msg(&msg);
 	}
+	if (opt_t) {
+		snprintf(buf, size, "{ \"trigger\" : true}");
+		msg.data.procmsg.len = strnlen(buf, size);
+		send_msg(&msg);
+	}
 
 	exit(0);
 }