svn commit: r319639 - head/usr.sbin/bluetooth/hccontrol
Stephen J. Kiernan
stevek at FreeBSD.org
Tue Jun 6 22:17:57 UTC 2017
Author: stevek
Date: Tue Jun 6 22:17:55 2017
New Revision: 319639
URL: https://svnweb.freebsd.org/changeset/base/319639
Log:
When the input parameter node is NULL, memory is allocated to it.
To later free the memory, introduce a new variable lnode to track when
this happens.
Submitted by: Thomas Rix <trix at juniper.net>
Reviewed by: emax
Approved by: sjg (mentor)
MFC after: 1 week
Differential Revision: https://reviews.freebsd.org/D9878
Modified:
head/usr.sbin/bluetooth/hccontrol/hccontrol.c
Modified: head/usr.sbin/bluetooth/hccontrol/hccontrol.c
==============================================================================
--- head/usr.sbin/bluetooth/hccontrol/hccontrol.c Tue Jun 6 21:51:04 2017 (r319638)
+++ head/usr.sbin/bluetooth/hccontrol/hccontrol.c Tue Jun 6 22:17:55 2017 (r319639)
@@ -103,13 +103,14 @@ socket_open(char const *node)
int s, mib[4], num;
size_t size;
struct nodeinfo *nodes;
+ char *lnode = NULL;
num = find_hci_nodes(&nodes);
if (num == 0)
errx(7, "Could not find HCI nodes");
if (node == NULL) {
- node = strdup(nodes[0].name);
+ node = lnode = strdup(nodes[0].name);
if (num > 1)
fprintf(stdout, "Using HCI node: %s\n", node);
}
@@ -130,6 +131,7 @@ socket_open(char const *node)
if (connect(s, (struct sockaddr *) &addr, sizeof(addr)) < 0)
err(3, "Could not connect socket, node=%s", node);
+ free(lnode);
memset(&filter, 0, sizeof(filter));
bit_set(filter.event_mask, NG_HCI_EVENT_COMMAND_COMPL - 1);
bit_set(filter.event_mask, NG_HCI_EVENT_COMMAND_STATUS - 1);
More information about the svn-src-head
mailing list