OSDN Git Service

tools/l2test: Fix passing address type to bind()
authorJohan Hedberg <johan.hedberg@intel.com>
Wed, 15 May 2013 10:23:55 +0000 (13:23 +0300)
committerJohan Hedberg <johan.hedberg@intel.com>
Wed, 15 May 2013 10:24:52 +0000 (13:24 +0300)
tools/l2test.c

index 3147504..a105ca6 100644 (file)
@@ -267,6 +267,7 @@ static int do_connect(char *svr)
        memset(&addr, 0, sizeof(addr));
        addr.l2_family = AF_BLUETOOTH;
        bacpy(&addr.l2_bdaddr, &bdaddr);
+       addr.l2_bdaddr_type = bdaddr_type;
 
        if (bind(sk, (struct sockaddr *) &addr, sizeof(addr)) < 0) {
                syslog(LOG_ERR, "Can't bind socket: %s (%d)",
@@ -454,6 +455,7 @@ static void do_listen(void (*handler)(int sk))
        memset(&addr, 0, sizeof(addr));
        addr.l2_family = AF_BLUETOOTH;
        bacpy(&addr.l2_bdaddr, &bdaddr);
+       addr.l2_bdaddr_type = bdaddr_type;
        if (cid)
                addr.l2_cid = htobs(cid);
        else if (psm)
@@ -1019,6 +1021,7 @@ static void info_request(char *svr)
        memset(&addr, 0, sizeof(addr));
        addr.l2_family = AF_BLUETOOTH;
        bacpy(&addr.l2_bdaddr, &bdaddr);
+       addr.l2_bdaddr_type = bdaddr_type;
 
        if (bind(sk, (struct sockaddr *) &addr, sizeof(addr)) < 0) {
                perror("Can't bind socket");
@@ -1157,6 +1160,7 @@ static void do_pairing(char *svr)
        memset(&addr, 0, sizeof(addr));
        addr.l2_family = AF_BLUETOOTH;
        bacpy(&addr.l2_bdaddr, &bdaddr);
+       addr.l2_bdaddr_type = bdaddr_type;
 
        if (bind(sk, (struct sockaddr *) &addr, sizeof(addr)) < 0) {
                perror("Can't bind socket");