Date: Tue, 07 Dec 2004 12:39:16 -0800 From: Maksim Yevmenkin <maksim.yevmenkin@savvis.net> To: Tuc at Beach House <tuc@tucs-beachin-obx-house.com> Cc: Tuc at Beach House <tuc@ttsg.com> Subject: Re: sdpcontrol issues (LONG) Message-ID: <41B614F4.4070009@savvis.net> In-Reply-To: <200412070048.iB70m6WY020523@himinbjorg.tucs-beachin-obx-house.com> References: <200412070048.iB70m6WY020523@himinbjorg.tucs-beachin-obx-house.com>
next in thread | previous in thread | raw e-mail | index | archive | help
Tuc at Beach House wrote: >>> I had to configure pppd and rfcomm_pppd and a few other things, and >>>its been running all day. >> >>ah, ok. so, you are saying treo *can* connect to your laptop via >>bluetooth and you can browse on treo? or you can connect windows box to >>your laptop via bluetooth and can browse on windows? > > Treo is using DUN on FreeBSD for its connectivity. FreeBSD > can see all services Windows offers. Windows can see DUN on FreeBSD. > Otherwise, the only thing I *CANT* do so far is find any services on the > Treo. ok. i think i have an idea why it does not work. a colleague of mine has audiovox smartphone (running windows-something) but it gives similar error on sdp requests. apparently sdp server chokes when attribute range has exactly one attribute, i.e. range specified as 0x0004 - 0x0004, meaning return only attribute id 0x0004. could you please try the following: 1) edit /usr/src/usr.sbin/bluetooth/sdpcontrol/search.c file and replace the following lines 39: /* List of the attributes we are looking for */ 40: static u_int32_t attrs[] = 41: { 42: SDP_ATTR_RANGE( SDP_ATTR_SERVICE_RECORD_HANDLE, 43: SDP_ATTR_SERVICE_RECORD_HANDLE), 44: SDP_ATTR_RANGE( SDP_ATTR_SERVICE_CLASS_ID_LIST, 45: SDP_ATTR_SERVICE_CLASS_ID_LIST), 46: SDP_ATTR_RANGE( SDP_ATTR_PROTOCOL_DESCRIPTOR_LIST, 47: SDP_ATTR_PROTOCOL_DESCRIPTOR_LIST), 48: SDP_ATTR_RANGE( SDP_ATTR_BLUETOOTH_PROFILE_DESCRIPTOR_LIST, 49: SDP_ATTR_BLUETOOTH_PROFILE_DESCRIPTOR_LIST) 50: }; with /* List of the attributes we are looking for */ static uint32_t attrs[] = { SDP_ATTR_RANGE( 0, 1 ), SDP_ATTR_RANGE( 3, 4 ), SDP_ATTR_RANGE( 8, 9 ), /* SDP_ATTR_RANGE( SDP_ATTR_SERVICE_RECORD_HANDLE, SDP_ATTR_SERVICE_RECORD_HANDLE), SDP_ATTR_RANGE( SDP_ATTR_SERVICE_CLASS_ID_LIST, SDP_ATTR_SERVICE_CLASS_ID_LIST), SDP_ATTR_RANGE( SDP_ATTR_PROTOCOL_DESCRIPTOR_LIST, SDP_ATTR_PROTOCOL_DESCRIPTOR_LIST), SDP_ATTR_RANGE( SDP_ATTR_BLUETOOTH_PROFILE_DESCRIPTOR_LIST, SDP_ATTR_BLUETOOTH_PROFILE_DESCRIPTOR_LIST) */ }; 2) re-compile sdpcontrol(8) 3) try to search for the services again. thanks, max
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?41B614F4.4070009>