From owner-freebsd-bluetooth@FreeBSD.ORG Tue Nov 2 22:26:31 2010 Return-Path: Delivered-To: freebsd-bluetooth@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id A61E8106564A for ; Tue, 2 Nov 2010 22:26:31 +0000 (UTC) (envelope-from plunky@rya-online.net) Received: from mail.ukfsn.org (mail.ukfsn.org [77.75.108.10]) by mx1.freebsd.org (Postfix) with ESMTP id 42F7B8FC15 for ; Tue, 2 Nov 2010 22:26:30 +0000 (UTC) Received: from localhost (smtp-filter.ukfsn.org [192.168.54.205]) by mail.ukfsn.org (Postfix) with ESMTP id 9D259DEC82 for ; Tue, 2 Nov 2010 22:26:29 +0000 (GMT) Received: from mail.ukfsn.org ([192.168.54.25]) by localhost (smtp-filter.ukfsn.org [192.168.54.205]) (amavisd-new, port 10024) with ESMTP id ReblGOhof+Bm for ; Tue, 2 Nov 2010 22:26:29 +0000 (GMT) Received: from galant.ukfsn.org (unknown [89.194.39.203]) by mail.ukfsn.org (Postfix) with ESMTP id 75DDADEC7F for ; Tue, 2 Nov 2010 22:26:28 +0000 (GMT) Received: by galant.ukfsn.org (Postfix, from userid 1000) id CFE50260261; Tue, 2 Nov 2010 22:26:08 +0000 (GMT) Date: Tue, 2 Nov 2010 22:26:08 +0000 (GMT) From: Iain Hibbert To: freebsd-bluetooth@freebsd.org Message-ID: User-Agent: Alpine 2.00 (NEB 1167 2008-08-23) MIME-Version: 1.0 Content-Type: MULTIPART/MIXED; BOUNDARY="0-707870261-1288736768=:10122" Subject: obexapp alloc server channel X-BeenThere: freebsd-bluetooth@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Using Bluetooth in FreeBSD environments List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 02 Nov 2010 22:26:31 -0000 This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools. --0-707870261-1288736768=:10122 Content-Type: TEXT/PLAIN; charset=US-ASCII Hi, one more thing for obexapp, I think FreeBSD has the thing of RFCOMM where you can bind() to channel 0 and use getsockname() after listen() in order to find the allocated channel? It was discussed on the list some time ago anyway, and I did implement it on NetBSD (using RFCOMM_CHANNEL_ANY == 0) The patch attached implements this functionality in obexapp, allowing -C to be optional in server mode. regards, iain btw I implemented similar for L2CAP except that binding to L2CAP_PSM_ANY gets you one of the dynamic PSM (1001->) after listen() call --0-707870261-1288736768=:10122 Content-Type: TEXT/PLAIN; charset=US-ASCII; name=any.diff Content-Transfer-Encoding: BASE64 Content-ID: Content-Description: Content-Disposition: attachment; filename=any.diff LS0tIG1haW4uYy5vcmlnCTIwMTAtMTAtMjIgMDc6Mjk6MDYuMDAwMDAwMDAw ICswMTAwDQorKysgbWFpbi5jCTIwMTAtMTEtMDIgMjI6MDU6MDguMDAwMDAw MDAwICswMDAwDQpAQCAtMjY2LDcgKzI2Niw3IEBADQogCQl9DQogCX0NCiAN Ci0JaWYgKGNvbnRleHQuY2hhbm5lbCA8PSAwIHx8IGNvbnRleHQuY2hhbm5l bCA+IDMwKQ0KKwlpZiAoKGNvbnRleHQuY2hhbm5lbCA9PSAwICYmICFjb250 ZXh0LnNlcnZlcikgfHwgY29udGV4dC5jaGFubmVsID4gMzApDQogCQllcnJ4 KDEsICJJbnZhbGlkIFJGQ09NTSBjaGFubmVsICVkIiwNCiAJCQljb250ZXh0 LmNoYW5uZWwpOw0KIA0KLS0tIHRyYW5zcG9ydC5jLm9yaWcJMjAxMC0xMC0y MiAwNzoyOTowNi4wMDAwMDAwMDAgKzAxMDANCisrKyB0cmFuc3BvcnQuYwky MDEwLTExLTAyIDIyOjExOjE5LjAwMDAwMDAwMCArMDAwMA0KQEAgLTIwMiw2 ICsyMDIsMTYgQEANCiAJCXJldHVybiAoLTEpOw0KIAl9DQogDQorCWlmIChj b250ZXh0LT5jaGFubmVsID09IDApIHsNCisJCWFkZHJsZW4gPSBzaXplb2Yo YWRkcik7DQorCQlpZiAoZ2V0c29ja25hbWUocywgKHN0cnVjdCBzb2NrYWRk ciAqKSAmYWRkciwgJmFkZHJsZW4pIDwgMCkgew0KKwkJCWxvZ19lcnIoIiVz KCk6IENvdWxkIG5vdCBnZXQgc29ja2V0IGFkZHJlc3MuICVzICglZCkiLA0K KwkJCQlfX2Z1bmNfXywgIHN0cmVycm9yKGVycm5vKSwgZXJybm8pOw0KKwkJ CXJldHVybiAoLTEpOw0KKwkJfQ0KKwkJY29udGV4dC0+Y2hhbm5lbCA9IGFk ZHIucmZjb21tX2NoYW5uZWw7DQorCX0NCisNCiAJbWVtc2V0KCZvcHVzaCwg MCwgc2l6ZW9mKG9wdXNoKSk7DQogCW9wdXNoLnNlcnZlcl9jaGFubmVsID0g Y29udGV4dC0+Y2hhbm5lbDsNCiAJb3B1c2guc3VwcG9ydGVkX2Zvcm1hdHNf c2l6ZSA9IDc7DQotLS0gb2JleGFwcC4xLm9yaWcJMjAwOS0wOC0yMCAyMjo1 NzoxOC4wMDAwMDAwMDAgKzAxMDANCisrKyBvYmV4YXBwLjEJMjAxMC0xMS0w MiAyMjoyMTozNi4wMDAwMDAwMDAgKzAwMDANCkBAIC01NCw3ICs1NCw3IEBA DQogLkZsIHMNCiAuT3AgRmwgZERGT1NSaA0KIC5PcCBGbCBBIEFyIEJEX0FE RFINCi0uRmwgQyBBciBjaGFubmVsDQorLk9wIEZsIEMgQXIgY2hhbm5lbA0K IC5PcCBGbCBtIEFyIE1UVQ0KIC5PcCBGbCByIEFyIHBhdGgNCiAuT3AgRmwg dSBBciB1c2VyDQpAQCAtMTE3LDggKzExNyw5IEBAIFRoZSBwYXRoIGNvbXBv bmVudCBvZiB0aGUgY29uc3RydWN0ZWQgcmUNCiAuUHANCiBJbiB0aGUgc2Vy dmVyIG1vZGUNCiAuTm0NCi1saXN0ZW5zIGZvciBpbmNvbW1pbmcgY29ubmVj dGlvbnMsIG9uIHRoZSBzcGVjaWZpZWQgQkRfQUREUiBhbmQgY2hhbm5lbCwg ZnJvbQ0KLXJlbW90ZSBjbGllbnRzLg0KK2xpc3RlbnMgZm9yIGluY29tbWlu ZyBjb25uZWN0aW9ucywgb24gdGhlIHNwZWNpZmllZCBCRF9BRERSIGFuZCBj aGFubmVsDQord2hlbiBnaXZlbiwgZnJvbSByZW1vdGUgY2xpZW50cy4NCitJ ZiBubyBjaGFubmVsIGlzIGdpdmVuLCB0aGUgZmlyc3QgdW51c2VkIFJGQ09N TSBjaGFubmVsIHdpbGwgYmUgYWxsb2NhdGVkLg0KIE9uY2UgbmV3IGNvbm5l Y3Rpb24gaXMgYWNjZXB0ZWQNCiAuTm0NCiBmb3JrcyBhbmQgc3RhcnQgbmV3 IE9CRVggc2VydmVyIGZvciB0aGUgY2xpZW50Lg0KQEAgLTE0NSw3ICsxNDYs NyBAQCBJZiBub3Qgc3BlY2lmaWVkLCBCREFERFJfQU5ZIHdpbGwgYmUgdXNl DQogSW4gdGhlIGNsaWVudCBtb2RlIHRoaXMgcmVxdWlyZWQgb3B0aW9uIHNw ZWNpZmllcyB0aGUgcmVtb3RlIEJEX0FERFIgb2YgdGhlDQogT0JFWCBzZXJ2 ZXIuDQogLkl0IEZsIEMgQXIgY2hhbm5lbA0KLUluIGJvdGggY2xpZW50IGFu ZCBzZXJ2ZXIgbW9kZXMgdGhpcyByZXF1aXJlZCBvcHRpb24gc3BlY2lmaWVz IFJGQ09NTSBjaGFubmVsDQorSW4gYm90aCBjbGllbnQgYW5kIHNlcnZlciBt b2RlcyB0aGlzIG9wdGlvbiBzcGVjaWZpZXMgUkZDT01NIGNoYW5uZWwNCiB0 byBjb25uZWN0IHRvIG9yIGxpc3RlbiBvbi4NCiBJbiB0aGUgc2VydmVyIG1v ZGUgUkZDT01NIGNoYW5uZWwgc2hvdWxkIGJlIG51bWJlciBiZXR3ZWVuIDEg YW5kIDMwLg0KIEluIHRoZSBjbGllbnQgbW9kZSBSRkNPTU0gY2hhbm5lbCBj b3VsZCBiZSBlaXRoZXIgbnVtYmVyIGJldHdlZW4gMSBhbmQgMzAgb3INCg== --0-707870261-1288736768=:10122--