Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 7 Jul 2015 15:56:51 +0000 (UTC)
From:      Takanori Watanabe <takawata@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r285244 - in head/sys/netgraph/bluetooth: l2cap socket
Message-ID:  <201507071556.t67FupnF061902@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: takawata
Date: Tue Jul  7 15:56:51 2015
New Revision: 285244
URL: https://svnweb.freebsd.org/changeset/base/285244

Log:
  Fix rfcomm_sppd regression I could reproduced.
  To reproduce it, Two machine running FreeBSD and
  run
  rfcomm_sppd -c 3 -S
  rfcomm_sppd -a ${PEER} -c 3
  on each side.

Modified:
  head/sys/netgraph/bluetooth/l2cap/ng_l2cap_ulpi.c
  head/sys/netgraph/bluetooth/socket/ng_btsocket_rfcomm.c

Modified: head/sys/netgraph/bluetooth/l2cap/ng_l2cap_ulpi.c
==============================================================================
--- head/sys/netgraph/bluetooth/l2cap/ng_l2cap_ulpi.c	Tue Jul  7 15:22:29 2015	(r285243)
+++ head/sys/netgraph/bluetooth/l2cap/ng_l2cap_ulpi.c	Tue Jul  7 15:56:51 2015	(r285244)
@@ -398,7 +398,7 @@ ng_l2cap_l2ca_con_ind(ng_l2cap_chan_p ch
 		ip->lcid = ch->scid;
 		ip->psm = ch->psm;
 		ip->ident = ch->ident;
-
+		ip->linktype = ch->con->linktype;
 		NG_SEND_MSG_HOOK(error, l2cap->node, msg, l2cap->l2c, 0);
 	}
 

Modified: head/sys/netgraph/bluetooth/socket/ng_btsocket_rfcomm.c
==============================================================================
--- head/sys/netgraph/bluetooth/socket/ng_btsocket_rfcomm.c	Tue Jul  7 15:22:29 2015	(r285243)
+++ head/sys/netgraph/bluetooth/socket/ng_btsocket_rfcomm.c	Tue Jul  7 15:56:51 2015	(r285244)
@@ -1339,6 +1339,8 @@ ng_btsocket_rfcomm_session_create(ng_bts
 	l2sa.l2cap_family = AF_BLUETOOTH;
 	l2sa.l2cap_psm = (dst == NULL)? htole16(NG_L2CAP_PSM_RFCOMM) : 0;
 	bcopy(src, &l2sa.l2cap_bdaddr, sizeof(l2sa.l2cap_bdaddr));
+	l2sa.l2cap_cid = 0;
+	l2sa.l2cap_bdaddr_type = BDADDR_BREDR;
 
 	error = sobind(s->l2so, (struct sockaddr *) &l2sa, td);
 	if (error != 0)
@@ -1360,6 +1362,8 @@ ng_btsocket_rfcomm_session_create(ng_bts
 		l2sa.l2cap_family = AF_BLUETOOTH;
 		l2sa.l2cap_psm = htole16(NG_L2CAP_PSM_RFCOMM);
 	        bcopy(dst, &l2sa.l2cap_bdaddr, sizeof(l2sa.l2cap_bdaddr));
+		l2sa.l2cap_cid = 0;
+		l2sa.l2cap_bdaddr_type = BDADDR_BREDR;
 
 		error = soconnect(s->l2so, (struct sockaddr *) &l2sa, td);
 		if (error != 0)



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201507071556.t67FupnF061902>