aports/main/busybox/0014-miscutils-microcom-Fixed-segfault.patch
Sören Tempel bb3bc00f30 main/busybox: upgrade to 1.29.3
* Remove all patches already applied upstream
	* 0001-ash-add-support-for-command_not_found_handle-hook-fu.patch
	* 0001-cat-fix-cat-e-and-cat-v-erroneously-numbering-1st-li.patch
	* 0001-wget-emit-a-message-that-certificate-verification-is.patch
	* 0015-ash-introduce-a-config-option-to-search-current-dire.patch
	* 0016-top-handle-much-larger-VSZ-values.patch
	* 0017-ifupdown-do-not-fail-if-interface-disappears-during-.patch
* Rename config option for command_not_found hook
	* upstream patch adding this hook slightly differs from our
	  downstream patch in this regard
* Rebase some patches manually:
	* external_ssl_client.patch
	* 0006-ping-make-ping-work-without-root-privileges.patch
	* 0007-fbsplash-support-image-and-bar-alignment-and-positio.patch
* Add support for `-e` to our ssl_client
	* See https://git.busybox.net/busybox/commit/?id=403f2999f94937ba3f37db6d093832f636815bb9
* Update the configuration file
* Regenerate all patches using `git format-patch --no-numbered --no-signature`
  to reduce the diff for future upgrades.
2018-09-27 10:29:07 +00:00

29 lines
949 B
Diff

From 33c5d20fd0703b678f3c097c628026002b1fd0e3 Mon Sep 17 00:00:00 2001
From: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
Date: Wed, 2 Aug 2017 23:36:08 +0200
Subject: [PATCH] miscutils/microcom: Fixed segfault
microcom did not check if required parameter TTY is present. Thus,
bb_basename() was called with a NULL pointer if TTY was missing.
This commit adds the missing check.
---
miscutils/microcom.c | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/miscutils/microcom.c b/miscutils/microcom.c
index fa090057e..96ea02b16 100644
--- a/miscutils/microcom.c
+++ b/miscutils/microcom.c
@@ -76,6 +76,11 @@ int microcom_main(int argc UNUSED_PARAM, char **argv)
// argc -= optind;
argv += optind;
+ if (*argv == NULL){
+ bb_show_usage();
+ return EXIT_FAILURE;
+ }
+
// try to create lock file in /var/lock
device_lock_file = (char *)bb_basename(argv[0]);
device_lock_file = xasprintf("/var/lock/LCK..%s", device_lock_file);