diff options
author | 2016-03-30 23:40:54 +0000 | |
---|---|---|
committer | 2016-03-30 23:40:54 +0000 | |
commit | 9f2db557ac5bc6406078eedc73ed19c4762a62a8 (patch) | |
tree | 156fbe07ee4de73324c0a3ffe79ccbf751c32357 | |
parent | Add support for multitouch input to wsmouse. (diff) | |
download | wireguard-openbsd-9f2db557ac5bc6406078eedc73ed19c4762a62a8.tar.xz wireguard-openbsd-9f2db557ac5bc6406078eedc73ed19c4762a62a8.zip |
Dump strdup()/free() dance and just use a local buffer to translate help
messages to GPT.
Unchecked strdup() result noted by mestre@. ok mestre@ tim@
-rw-r--r-- | sbin/fdisk/cmd.c | 16 |
1 files changed, 7 insertions, 9 deletions
diff --git a/sbin/fdisk/cmd.c b/sbin/fdisk/cmd.c index 8dc71603089..a8ec0832b00 100644 --- a/sbin/fdisk/cmd.c +++ b/sbin/fdisk/cmd.c @@ -1,4 +1,4 @@ -/* $OpenBSD: cmd.c,v 1.94 2016/03/28 18:14:01 krw Exp $ */ +/* $OpenBSD: cmd.c,v 1.95 2016/03/30 23:40:54 krw Exp $ */ /* * Copyright (c) 1997 Tobias Weingartner @@ -465,22 +465,20 @@ Xexit(char *args, struct mbr *mbr) int Xhelp(char *args, struct mbr *mbr) { - char *mbrstr, *gpthelp; + char help[80]; + char *mbrstr; int i; for (i = 0; cmd_table[i].cmd != NULL; i++) { + strlcpy(help, cmd_table[i].help, sizeof(help)); if (letoh64(gh.gh_sig) == GPTSIGNATURE) { if (cmd_table[i].gpt == 0) continue; - gpthelp = strdup(cmd_table[i].help); - mbrstr = strstr(gpthelp, "MBR"); + mbrstr = strstr(help, "MBR"); if (mbrstr) memcpy(mbrstr, "GPT", 3); - printf("\t%s\t\t%s\n", cmd_table[i].cmd, gpthelp); - free(gpthelp); - } else - printf("\t%s\t\t%s\n", cmd_table[i].cmd, - cmd_table[i].help); + } + printf("\t%s\t\t%s\n", cmd_table[i].cmd, help); } return (CMD_CONT); |