From owner-freebsd-bluetooth@FreeBSD.ORG Tue Dec 1 12:23:03 2009 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 095F81065670 for ; Tue, 1 Dec 2009 12:23:03 +0000 (UTC) (envelope-from m.drochner@googlemail.com) Received: from fg-out-1718.google.com (fg-out-1718.google.com [72.14.220.155]) by mx1.freebsd.org (Postfix) with ESMTP id 8F3428FC14 for ; Tue, 1 Dec 2009 12:23:02 +0000 (UTC) Received: by fg-out-1718.google.com with SMTP id e12so323571fga.13 for ; Tue, 01 Dec 2009 04:23:01 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=gamma; h=domainkey-signature:received:received:date:from:to:cc:subject :message-id:x-mailer:mime-version:content-type :content-transfer-encoding; bh=owNyq+1uOtOsIwneuLhLRvQ1QeodWw6up8cfxo4fnnQ=; b=dnkoPD2M/AV1tUKCCnoTmf3GyjMGhD3uAw2n95SBLzPTiKdHk1rrIjQr/ysI3ZaFrh oWKAhWBltkd9e0Z++svi5zHXODxAnjjvVGx+55JpPgtjm23/+nsAtShaGKqWsMXO/NW5 sz6+A/ALsZMmyzWahnjtl9te3QFA339u/Sjag= DomainKey-Signature: a=rsa-sha1; c=nofws; d=googlemail.com; s=gamma; h=date:from:to:cc:subject:message-id:x-mailer:mime-version :content-type:content-transfer-encoding; b=DpaDj0ZhUkFmX/6w5YMiHZltqnbg+N3vdHAmiojmxLhnDDouNL1GBoABYjollHjm2S AxwRGmU/zL3qrLSKdSi6zMQhhBAQyaL6Q8NHO7W0Tn6IL6oHsVjCr9NyYwJzlPEBWExO qntDIbLNlRDxsLDz/zZ4D3g+gmWS5wMgOfXCI= Received: by 10.86.11.9 with SMTP id 9mr5263615fgk.13.1259668256757; Tue, 01 Dec 2009 03:50:56 -0800 (PST) Received: from zelz27 (gnat.frm2.tum.de [129.187.179.99]) by mx.google.com with ESMTPS id e11sm1823566fga.19.2009.12.01.03.50.55 (version=SSLv3 cipher=RC4-MD5); Tue, 01 Dec 2009 03:50:55 -0800 (PST) Date: Tue, 1 Dec 2009 12:50:54 +0100 From: Matthias Drochner To: Maksim Yevmenkin Message-ID: <20091201125054.44a00147@zelz27> X-Mailer: Claws Mail 3.7.2 (GTK+ 2.18.4; i486--netbsdelf) Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Cc: freebsd-bluetooth@freebsd.org, plunky@netbsd.org Subject: patch to make obexapp work with BSD iconv(3) 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, 01 Dec 2009 12:23:03 -0000 Here is a patch which removes the GNU iconv dependency from obexapp. I've successfully tested it by sending vcards with strange names; the resulting files were identical. The relevant changes are: -just use the result of nl_langinfo(CODESET) as input of iconv_open(3), this is more robust than trying to interpret the locale string -remove iconvctl(ICONV_SET_DISCARD_ILSEQ) -- BSD doesn't have this and it should be unneeded because it only compensates for some non-standard behaviour of GNU iconv. (The bsdxml->expat part is unrelated.) best regards Matthias From owner-freebsd-bluetooth@FreeBSD.ORG Tue Dec 1 12:52:42 2009 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 6DFAF10656A6 for ; Tue, 1 Dec 2009 12:52:42 +0000 (UTC) (envelope-from m.drochner@googlemail.com) Received: from mail-fx0-f218.google.com (mail-fx0-f218.google.com [209.85.220.218]) by mx1.freebsd.org (Postfix) with ESMTP id EFF468FC27 for ; Tue, 1 Dec 2009 12:52:41 +0000 (UTC) Received: by fxm10 with SMTP id 10so4015596fxm.14 for ; Tue, 01 Dec 2009 04:52:41 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=gamma; h=domainkey-signature:received:received:date:from:to:cc:subject :message-id:in-reply-to:references:x-mailer:mime-version :content-type; bh=dfDkhkCOdpK0u9Nd+TczzBVEZ3unIMDRnxpbGH1q5G4=; b=K0+ZMy4z2orfwf111T6c80PhNHfEi4/DgyxAJ2HVwsK06guc9e2eH9VjtCXFeHKzlm PlC1bYZ/ZPDUIbDvKFXLFdshxQ1yqq9obXiFuaZtuHNLF8ajA/ZbJBpdGY/PBlBgYZsD +oM+fDdJq4jj84/X186PBLW7zKnYJn5vo9e5g= DomainKey-Signature: a=rsa-sha1; c=nofws; d=googlemail.com; s=gamma; h=date:from:to:cc:subject:message-id:in-reply-to:references:x-mailer :mime-version:content-type; b=iWZb1y8gTscgDFHE9a7+ZodVbbn0ebPKytesqNqhx+JnWPNBRVvh6E0vk4jh2mvJ5S V8yQrvIljlMIBXi/aH7TwIMyQfLEg3Xrgisico0LeGFauO53DuLN5kBebsl31ByJAJGa r2uVS1rU7vhNo+GMYQZghv5u6PL5U8MzGsV/8= Received: by 10.103.125.17 with SMTP id c17mr2004517mun.16.1259671960860; Tue, 01 Dec 2009 04:52:40 -0800 (PST) Received: from zelz27 (gnat.frm2.tum.de [129.187.179.99]) by mx.google.com with ESMTPS id i7sm235226mue.46.2009.12.01.04.52.39 (version=SSLv3 cipher=RC4-MD5); Tue, 01 Dec 2009 04:52:39 -0800 (PST) Date: Tue, 1 Dec 2009 13:52:39 +0100 From: Matthias Drochner To: Maksim Yevmenkin Message-ID: <20091201135239.322f50f1@zelz27> In-Reply-To: <20091201125054.44a00147@zelz27> References: <20091201125054.44a00147@zelz27> X-Mailer: Claws Mail 3.7.2 (GTK+ 2.18.4; i486--netbsdelf) Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="MP_/vbMBJAHyl7KxJfFFC5JqgWR" Cc: freebsd-bluetooth@freebsd.org, plunky@netbsd.org Subject: Re: patch to make obexapp work with BSD iconv(3) 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, 01 Dec 2009 12:52:42 -0000 --MP_/vbMBJAHyl7KxJfFFC5JqgWR Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Content-Disposition: inline On Tue, 1 Dec 2009 12:50:54 +0100 Matthias Drochner wrote: > Here is a patch Oops, this time for real. best regards Matthias --MP_/vbMBJAHyl7KxJfFFC5JqgWR Content-Type: application/octet-stream; name=patch-ac Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename=patch-ac JE5ldEJTRDogcGF0Y2gtYWMsdiAxLjQgMjAwOS8xMi8wMSAxMToxODo0OCBkcm9jaG5lciBFeHAg JAoKLS0tIHV0aWwuYy5vcmlnCTIwMDktMDgtMjAgMjM6NTc6MTguMDAwMDAwMDAwICswMjAwCisr KyB1dGlsLmMKQEAgLTMwLDkgKzMwLDkgQEAKICAqLwogCiAjaW5jbHVkZSA8Ymx1ZXRvb3RoLmg+ Ci0jaW5jbHVkZSA8YnNkeG1sLmg+CiAjaW5jbHVkZSA8Y3R5cGUuaD4KICNpbmNsdWRlIDxlcnJu by5oPgorI2luY2x1ZGUgPGV4cGF0Lmg+CiAjaW5jbHVkZSA8aWNvbnYuaD4KICNpbmNsdWRlIDxs aWJnZW4uaD4KICNpbmNsdWRlIDxsaW1pdHMuaD4KQEAgLTQzLDYgKzQzLDcgQEAKICNpbmNsdWRl IDxzdHJpbmcuaD4KICNpbmNsdWRlIDx0aW1lLmg+CiAjaW5jbHVkZSA8dW5pc3RkLmg+CisjaW5j bHVkZSA8bGFuZ2luZm8uaD4KIAogI2luY2x1ZGUgPHJlYWRsaW5lL3JlYWRsaW5lLmg+CiAjaW5j bHVkZSA8cmVhZGxpbmUvaGlzdG9yeS5oPgpAQCAtNjYsMjYgKzY3LDEyIEBAIHN0YXRpYyBpY29u dl90CQkgbG9jYWxlMnV0ZjE2YmUgPSAoaWNvbnYKIGludAogb2JleGFwcF91dGlsX2xvY2FsZV9p bml0KHZvaWQpCiB7Ci0JaW50CW9uZSA9IDE7CiAKLQlsb2NhbGUgPSBzZXRsb2NhbGUoTENfQ1RZ UEUsICIiKTsKKwlzZXRsb2NhbGUoTENfQ1RZUEUsICIiKTsKKwlsb2NhbGUgPSBubF9sYW5naW5m byhDT0RFU0VUKTsKIAlpZiAobG9jYWxlID09IE5VTEwpCiAJCXJldHVybiAoLTEpOwogCi0JaWYg KHN0cmNtcChsb2NhbGUsICJBU0NJSSIpID09IDAgfHwKLQkgICAgc3RyY21wKGxvY2FsZSwgIkMi KSA9PSAwIHx8Ci0JICAgIHN0cmNtcChsb2NhbGUsICJQT1NJWCIpID09IDAgfHwKLQkgICAgc3Ry Y21wKGxvY2FsZSwgIlVTLUFTQ0lJIikgPT0gMCkKLQkJbG9jYWxlID0gImVuX1VTLlVTLUFTQ0lJ IjsKLQotCWxvY2FsZSA9IHN0cmNocihsb2NhbGUsICcuJyk7Ci0JaWYgKGxvY2FsZSA9PSBOVUxM KQotCQlyZXR1cm4gKC0xKTsKLQotCWxvY2FsZSArKzsKLQlpZiAobG9jYWxlWzBdID09ICdcMCcp Ci0JCXJldHVybiAoLTEpOwotCiAJdXRmMTYgPSAoc3Ryc3RyKGxvY2FsZSwgIlVURi0xNiIpICE9 IE5VTEwpPyAxIDogMDsKIAogCS8qIFVURi04IC0+IGN1cnJlbnQgbG9jYWxlICovCkBAIC05NCw3 ICs4MSw2IEBAIG9iZXhhcHBfdXRpbF9sb2NhbGVfaW5pdCh2b2lkKQogCQlyZXR1cm4gKC0xKTsK IAogCWljb252KHV0ZjgybG9jYWxlLCBOVUxMLCBOVUxMLCBOVUxMLCBOVUxMKTsKLQlpY29udmN0 bCh1dGY4MmxvY2FsZSwgSUNPTlZfU0VUX0RJU0NBUkRfSUxTRVEsICZvbmUpOwogCiAJLyogY3Vy cmVudCBsb2NhbGUgLT4gVVRGLTggKi8KIAlsb2NhbGUydXRmOCA9IGljb252X29wZW4oIlVURi04 IiwgbG9jYWxlKTsKQEAgLTEwNCw3ICs5MCw2IEBAIG9iZXhhcHBfdXRpbF9sb2NhbGVfaW5pdCh2 b2lkKQogCX0KIAogCWljb252KGxvY2FsZTJ1dGY4LCBOVUxMLCBOVUxMLCBOVUxMLCBOVUxMKTsK LQlpY29udmN0bChsb2NhbGUydXRmOCwgSUNPTlZfU0VUX0RJU0NBUkRfSUxTRVEsICZvbmUpOwog CiAJLyogVVRGLTE2QkUgLT4gY3VycmVudCBsb2NhbGUgKi8KIAl1dGYxNmJlMmxvY2FsZSA9IGlj b252X29wZW4obG9jYWxlLCAiVVRGLTE2QkUiKTsKQEAgLTExNCw3ICs5OSw2IEBAIG9iZXhhcHBf dXRpbF9sb2NhbGVfaW5pdCh2b2lkKQogCX0KIAogCWljb252KHV0ZjE2YmUybG9jYWxlLCBOVUxM LCBOVUxMLCBOVUxMLCBOVUxMKTsKLQlpY29udmN0bCh1dGYxNmJlMmxvY2FsZSwgSUNPTlZfU0VU X0RJU0NBUkRfSUxTRVEsICZvbmUpOwogCiAJLyogY3VycmVudCBsb2NhbGUgLT4gVVRGLTE2QkUg Ki8KIAlsb2NhbGUydXRmMTZiZSA9IGljb252X29wZW4oIlVURi0xNkJFIiwgbG9jYWxlKTsKQEAg LTEyNCw3ICsxMDgsNiBAQCBvYmV4YXBwX3V0aWxfbG9jYWxlX2luaXQodm9pZCkKIAl9CiAKIAlp Y29udihsb2NhbGUydXRmMTZiZSwgTlVMTCwgTlVMTCwgTlVMTCwgTlVMTCk7Ci0JaWNvbnZjdGwo bG9jYWxlMnV0ZjE2YmUsIElDT05WX1NFVF9ESVNDQVJEX0lMU0VRLCAmb25lKTsKIAogCXJldHVy biAoMCk7CiB9Cg== --MP_/vbMBJAHyl7KxJfFFC5JqgWR-- From owner-freebsd-bluetooth@FreeBSD.ORG Tue Dec 1 18:28:41 2009 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 666441065670 for ; Tue, 1 Dec 2009 18:28:41 +0000 (UTC) (envelope-from maksim.yevmenkin@gmail.com) Received: from mail-pz0-f185.google.com (mail-pz0-f185.google.com [209.85.222.185]) by mx1.freebsd.org (Postfix) with ESMTP id 3DD0E8FC12 for ; Tue, 1 Dec 2009 18:28:41 +0000 (UTC) Received: by pzk15 with SMTP id 15so3722868pzk.3 for ; Tue, 01 Dec 2009 10:28:40 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:in-reply-to:references :date:message-id:subject:from:to:cc:content-type; bh=cK9iMqIbO/f9y6TYTjsx90jMURM4LP+H+C3xgtrrIU0=; b=q3DLUCfGNzJO668fypw0tT+ueQTVsU9ujB7Akk3jpXR9fR5aZYECgFSGPPPQ45AwKF GaXT8iKlcr7OizA0Y1v1cdrf7ygW0IVxGu4A0O1a3VcRd/oesygYK22LOKNHV5mXlmr7 lUUsaf9W6J20ga6zcV3fIXEMqHJtWgpuJp1jc= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; b=iTV7lDbkQu18IXhS3rgqtevLtCDQEzriBMEL0qIypsTafx6zqi2XHKGwETwuQ3zuE+ gHH1QV8os3hOFamAAoc8OzgpBsJRjF62dZZUTvfxl0++Ukadnmm1QdlWVzbNEkjP+2zN t8dM7d7mW0hPDmWn4fn9U3chPEOgsx46IvMs8= MIME-Version: 1.0 Received: by 10.114.252.14 with SMTP id z14mr11706649wah.84.1259692120596; Tue, 01 Dec 2009 10:28:40 -0800 (PST) In-Reply-To: <20091201125054.44a00147@zelz27> References: <20091201125054.44a00147@zelz27> Date: Tue, 1 Dec 2009 10:28:40 -0800 Message-ID: From: Maksim Yevmenkin To: Matthias Drochner Content-Type: text/plain; charset=ISO-8859-1 Cc: freebsd-bluetooth@freebsd.org, plunky@netbsd.org Subject: Re: patch to make obexapp work with BSD iconv(3) 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, 01 Dec 2009 18:28:41 -0000 Matthias, > Here is a patch which removes the GNU iconv dependency from obexapp. > I've successfully tested it by sending vcards with strange names; > the resulting files were identical. thanks for the patch! could you please tell me which bsd flavor you tested this on? > The relevant changes are: > -just use the result of nl_langinfo(CODESET) as input of > iconv_open(3), this is more robust than trying to interpret > the locale string > -remove iconvctl(ICONV_SET_DISCARD_ILSEQ) -- BSD doesn't > have this and it should be unneeded because it only > compensates for some non-standard behaviour of GNU iconv. > (The bsdxml->expat part is unrelated.) i dont really have any objections to those, just wanted to get some clarification. thanks max From owner-freebsd-bluetooth@FreeBSD.ORG Tue Dec 1 19:15:25 2009 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 2DD3F1065692 for ; Tue, 1 Dec 2009 19:15:25 +0000 (UTC) (envelope-from plunky@rya-online.net) Received: from smtp6.freeserve.com (smtp6.freeserve.com [193.252.22.190]) by mx1.freebsd.org (Postfix) with ESMTP id E434E8FC0A for ; Tue, 1 Dec 2009 19:15:24 +0000 (UTC) Received: from me-wanadoo.net (localhost [127.0.0.1]) by mwinf3633.me.freeserve.com (SMTP Server) with ESMTP id 83BF8700008D; Tue, 1 Dec 2009 20:15:23 +0100 (CET) Received: from me-wanadoo.net (localhost [127.0.0.1]) by mwinf3633.me.freeserve.com (SMTP Server) with ESMTP id 73F7C70000D2; Tue, 1 Dec 2009 20:15:23 +0100 (CET) Received: from rya-online.net (unknown [89.194.129.131]) by mwinf3633.me.freeserve.com (SMTP Server) with SMTP id 15FA1700008D; Tue, 1 Dec 2009 20:15:21 +0100 (CET) X-ME-UUID: 20091201191522901.15FA1700008D@mwinf3633.me.freeserve.com Received: (nullmailer pid 11248 invoked by uid 1000); Tue, 01 Dec 2009 19:15:48 -0000 Date: Tue, 1 Dec 2009 19:15:48 +0000 (GMT) To: Matthias Drochner In-Reply-To: <20091201125054.44a00147@zelz27> References: <20091201125054.44a00147@zelz27> User-Agent: Alpine 2.00 (NEB 1167 2008-08-23) MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Message-Id: <1259694948.961003.27487.nullmailer@galant.ukfsn.org> From: Iain Hibbert Cc: freebsd-bluetooth@freebsd.org Subject: Re: patch to make obexapp work with BSD iconv(3) 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, 01 Dec 2009 19:15:25 -0000 On Tue, 1 Dec 2009, Matthias Drochner wrote: > iconv_open(3), this is more robust than trying to interpret > the locale string btw nl_langinfo(3) is defined to always return a valid pointer, so the if (locale == NULL) return (-1); is not required.. also, the locale variable can be private to obexapp_util_locale_init() as it is not used elsewhere regards, iain From owner-freebsd-bluetooth@FreeBSD.ORG Tue Dec 1 19:30:49 2009 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 0052F106566C for ; Tue, 1 Dec 2009 19:30:48 +0000 (UTC) (envelope-from plunky@rya-online.net) Received: from smtp5.freeserve.com (smtp5.freeserve.com [193.252.22.159]) by mx1.freebsd.org (Postfix) with ESMTP id 923988FC08 for ; Tue, 1 Dec 2009 19:30:48 +0000 (UTC) Received: from me-wanadoo.net (localhost [127.0.0.1]) by mwinf3402.me.freeserve.com (SMTP Server) with ESMTP id EAA931C00090 for ; Tue, 1 Dec 2009 20:30:46 +0100 (CET) Received: from me-wanadoo.net (localhost [127.0.0.1]) by mwinf3402.me.freeserve.com (SMTP Server) with ESMTP id DDE411C00092 for ; Tue, 1 Dec 2009 20:30:46 +0100 (CET) Received: from rya-online.net (unknown [89.194.129.131]) by mwinf3402.me.freeserve.com (SMTP Server) with SMTP id A408E1C00090 for ; Tue, 1 Dec 2009 20:30:45 +0100 (CET) X-ME-UUID: 20091201193045671.A408E1C00090@mwinf3402.me.freeserve.com Received: (nullmailer pid 5097 invoked by uid 1000); Tue, 01 Dec 2009 19:31:13 -0000 Date: Tue, 1 Dec 2009 19:31:13 +0000 (GMT) To: freebsd-bluetooth@freebsd.org In-Reply-To: <1259694948.961003.27487.nullmailer@galant.ukfsn.org> References: <20091201125054.44a00147@zelz27> <1259694948.961003.27487.nullmailer@galant.ukfsn.org> User-Agent: Alpine 2.00 (NEB 1167 2008-08-23) MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Message-Id: <1259695873.086896.28523.nullmailer@galant.ukfsn.org> From: Iain Hibbert Subject: obexapp patches for type-punning 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, 01 Dec 2009 19:30:49 -0000 Hi, while on the subject of obexapp, I have a patch to remove some annoying 'type punning' compilation errors that gcc spits out that I'm not totally sure are valid, but see below anyway.. I don't understand the OBEX protocol or libopenobex enough to know if it is possible, but the last case also removes a potential NULL dereference - if the OBEX_ObjectGetNonHdrData() fails to recover a proper data, an error is logged but it carries on and hdr->flags might cause a segfault? iain --- ~client.c 2009-04-10 00:16:31.000000000 +0100 +++ client.c 2009-12-01 16:44:49.000000000 +0000 @@ -1219,10 +1219,10 @@ obexapp_client_request_connect_done(obex int obex_rsp) { context_p context = (context_p) OBEX_GetUserData(handle); - obex_connect_hdr_t *hdr = NULL; obex_headerdata_t hv; uint8_t hi; uint32_t hlen; + uint8_t *data = NULL; log_debug("%s(): Connect completed, response %#x", __func__, obex_rsp); @@ -1232,10 +1232,12 @@ obexapp_client_request_connect_done(obex if (obex_rsp != OBEX_RSP_SUCCESS) return (obex_rsp); - if (OBEX_ObjectGetNonHdrData(object, (uint8_t **) &hdr) == sizeof(*hdr)) + if (OBEX_ObjectGetNonHdrData(object, &data) == sizeof(obex_connect_hdr_t)) log_debug("%s(): OBEX connect header: " \ "version=%#x, flags=%#x, mtu=%d", __func__, - hdr->version, hdr->flags, ntohs(hdr->mtu)); + ((obex_connect_hdr_t *)data)->version, + ((obex_connect_hdr_t *)data)->flags, + ntohs(((obex_connect_hdr_t *)data)->mtu)); else log_err("%s(): Invalid OBEX connect header?!", __func__); --- ~server.c 2009-08-20 22:57:18.000000000 +0100 +++ server.c 2009-12-01 16:57:08.000000000 +0000 @@ -471,19 +471,21 @@ static int obexapp_server_request_connect(obex_t *handle, obex_object_t *object, __unused int obex_rsp) { - obex_connect_hdr_t *hdr = NULL; obex_headerdata_t hv; uint8_t hi; uint32_t hlen; uint8_t const *target = NULL; int target_len = 0; + uint8_t *data = NULL; log_debug("%s()", __func__); - if (OBEX_ObjectGetNonHdrData(object, (uint8_t **) &hdr) == sizeof(*hdr)) + if (OBEX_ObjectGetNonHdrData(object, &data) == sizeof(obex_connect_hdr_t)) log_debug("%s(): OBEX connect header: version=%#x, " \ - "flags=%#x, mtu=%d", __func__, hdr->version, hdr->flags, - ntohs(hdr->mtu)); + "flags=%#x, mtu=%d", __func__, + ((obex_connect_hdr_t *)data)->version, + ((obex_connect_hdr_t *)data)->flags, + ntohs(((obex_connect_hdr_t *)data)->mtu)); else log_err("%s(): Invalid OBEX connect header?!", __func__); @@ -1086,20 +1088,22 @@ obexapp_server_request_setpath(obex_t *h __unused int obex_rsp) { context_p context = (context_p) OBEX_GetUserData(handle); - obex_setpath_hdr_t *hdr = NULL; obex_headerdata_t hv; uint8_t hi; uint32_t hlen; int got_name = 0; + uint8_t *data = NULL; + uint8_t flags = 0; log_debug("%s()", __func__); context->file[0] = '\0'; - if (OBEX_ObjectGetNonHdrData(object, (uint8_t **) &hdr) == sizeof(*hdr)) + if (OBEX_ObjectGetNonHdrData(object, &data) == sizeof(obex_setpath_hdr_t)) { + flags = ((obex_setpath_hdr_t *)data)->flags; log_debug("%s(): OBEX setpath header: flags=%#x, constants=%d", - __func__, hdr->flags, hdr->constants); - else + __func__, flags, ((obex_setpath_hdr_t *)data)->constants); + } else log_err("%s(): Invalid OBEX setpath header?!", __func__); while (OBEX_ObjectGetNextHeader(handle, object, &hi, &hv, &hlen)) { @@ -1145,15 +1149,14 @@ obexapp_server_request_setpath(obex_t *h } if (!got_name) { - /* * No name and flags == 0x3 (back up one level + don't create * directory) means "cd ..". Everything else is forbidden. */ - if (hdr->flags != 0x3) { + if (flags != 0x3) { log_err("%s(): Invalid flags for 'cd ..', flags=%#x", - __func__, hdr->flags); + __func__, flags); return (OBEXAPP_PACK_RSP_CODES(OBEX_RSP_FORBIDDEN, OBEX_RSP_FORBIDDEN)); @@ -1169,9 +1172,9 @@ obexapp_server_request_setpath(obex_t *h * 'cd /'. Everything else is forbidden */ - if (hdr->flags != 0x2) { + if (flags != 0x2) { log_err("%s(): Invalid flags for 'cd /', flags=%#x", - __func__, hdr->flags); + __func__, flags); return (OBEXAPP_PACK_RSP_CODES(OBEX_RSP_FORBIDDEN, OBEX_RSP_FORBIDDEN)); @@ -1180,7 +1183,7 @@ obexapp_server_request_setpath(obex_t *h strlcpy(context->file, context->root, PATH_MAX); } - if (hdr->flags == 0) { + if (flags == 0) { if (mkdir(context->file, 0755) < 0 && errno != EEXIST) { log_err("%s(): mkdir(%s) failed. %s (%d)", __func__, context->file, From owner-freebsd-bluetooth@FreeBSD.ORG Tue Dec 1 23:24:18 2009 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 C89F51065703 for ; Tue, 1 Dec 2009 23:24:18 +0000 (UTC) (envelope-from maksim.yevmenkin@gmail.com) Received: from mail-px0-f190.google.com (mail-px0-f190.google.com [209.85.216.190]) by mx1.freebsd.org (Postfix) with ESMTP id 9A77C8FC17 for ; Tue, 1 Dec 2009 23:24:18 +0000 (UTC) Received: by pxi28 with SMTP id 28so4078880pxi.7 for ; Tue, 01 Dec 2009 15:24:18 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:in-reply-to:references :date:message-id:subject:from:to:cc:content-type; bh=xStVCasxOJw8wtVoAf5FXhCFni5Nh7Y79bzMlYdp0WU=; b=fFws12yaJvyD5pabDmTrv2mhHZswf2hFY5Pu+xjt5g4PHLQKntjQg8AOcx7XWgt5it HoNFBSqNP9B2q0LkxZyBmZSga4Vz6H4WggMZQppphutya/YMTEjBYuz1K/lKztHAV2Tn ZqV3+Q5Qz1I61Qo4QA6DUayfp1l2c+Xbroe1A= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; b=rWrIhywM7TfxoCVKj5Y1N5z0/bBPAyYEIU6ot2nGUyBsPGr7uiVSgtRrZmIZpwL/D6 Ec1lJw/Af68YXVoPd5b7UApZFHotCXHgbr1cgilrQ4o2X6b0IiQyaPUJD9bh1nM3wahM oYleKkGzDtlWr/b81xMpvBystEkJKt6hM7kWQ= MIME-Version: 1.0 Received: by 10.115.84.40 with SMTP id m40mr12269817wal.192.1259709858175; Tue, 01 Dec 2009 15:24:18 -0800 (PST) In-Reply-To: <1259694948.961003.27487.nullmailer@galant.ukfsn.org> References: <20091201125054.44a00147@zelz27> <1259694948.961003.27487.nullmailer@galant.ukfsn.org> Date: Tue, 1 Dec 2009 15:24:18 -0800 Message-ID: From: Maksim Yevmenkin To: Iain Hibbert , Matthias Drochner Content-Type: multipart/mixed; boundary=0016e64ccb9c9ddf0b0479b30e8b Cc: freebsd-bluetooth@freebsd.org Subject: Re: patch to make obexapp work with BSD iconv(3) 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, 01 Dec 2009 23:24:18 -0000 --0016e64ccb9c9ddf0b0479b30e8b Content-Type: text/plain; charset=ISO-8859-1 On Tue, Dec 1, 2009 at 11:15 AM, Iain Hibbert wrote: > On Tue, 1 Dec 2009, Matthias Drochner wrote: > >> iconv_open(3), this is more robust than trying to interpret >> the locale string > > btw nl_langinfo(3) is defined to always return a valid pointer, so the > > if (locale == NULL) > return (-1); > > is not required.. > > also, the locale variable can be private to obexapp_util_locale_init() as > it is not used elsewhere ok, so, combined patch would look something like the attached. could you please give it a try and see if it still works? thanks, max --0016e64ccb9c9ddf0b0479b30e8b Content-Type: text/plain; charset=US-ASCII; name="obexapp.patch.txt" Content-Disposition: attachment; filename="obexapp.patch.txt" Content-Transfer-Encoding: base64 X-Attachment-Id: f_g2papss40 SW5kZXg6IE1ha2VmaWxlCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT0KUkNTIGZpbGU6IC91c3IvbG9jYWwvY3ZzL3BvcnRz L29iZXhhcHAvTWFrZWZpbGUsdgpyZXRyaWV2aW5nIHJldmlzaW9uIDEuMTEKZGlmZiAtdSAtcjEu MTEgTWFrZWZpbGUKLS0tIE1ha2VmaWxlCTIzIEFwciAyMDA3IDE4OjI5OjE4IC0wMDAwCTEuMTEK KysrIE1ha2VmaWxlCTEgRGVjIDIwMDkgMjA6MDA6MTkgLTAwMDAKQEAgLTE0LDggKzE0LDcgQEAK IERFQlVHX0ZMQUdTPQktZwogCiBDRkxBR1MrPQktSS91c3IvbG9jYWwvaW5jbHVkZSBcCi0JCS1J L3Vzci9sb2NhbC9pbmNsdWRlL29wZW5vYmV4IFwKLQkJLWZuby1zdHJpY3QtYWxpYXNpbmcKKwkJ LUkvdXNyL2xvY2FsL2luY2x1ZGUvb3Blbm9iZXgKIAogRFBBREQ9CQkke0xJQkJMVUVUT09USH0g JHtMSUJTRFB9ICR7TElCQlNEWE1MfSAke0xJQlJFQURMSU5FfQogTERBREQ9CQktTC91c3IvbGli IC1ML3Vzci9sb2NhbC9saWIgXApJbmRleDogY2xpZW50LmMKPT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpSQ1MgZmlsZTog L3Vzci9sb2NhbC9jdnMvcG9ydHMvb2JleGFwcC9jbGllbnQuYyx2CnJldHJpZXZpbmcgcmV2aXNp b24gMS4xOApkaWZmIC11IC1yMS4xOCBjbGllbnQuYwotLS0gY2xpZW50LmMJOSBBcHIgMjAwOSAy MzoxNjozMSAtMDAwMAkxLjE4CisrKyBjbGllbnQuYwkxIERlYyAyMDA5IDE5OjQwOjMyIC0wMDAw CkBAIC0xMjE5LDkgKzEyMTksOCBAQAogCQlpbnQgb2JleF9yc3ApCiB7CiAJY29udGV4dF9wCQkg Y29udGV4dCA9IChjb250ZXh0X3ApIE9CRVhfR2V0VXNlckRhdGEoaGFuZGxlKTsKLQlvYmV4X2Nv bm5lY3RfaGRyX3QgICAgICAqaGRyID0gTlVMTDsKIAlvYmV4X2hlYWRlcmRhdGFfdAkgaHY7Ci0J dWludDhfdAkJCSBoaTsKKwl1aW50OF90CQkJIGhpLCAqZGF0YSA9IE5VTEw7CiAJdWludDMyX3QJ CSBobGVuOwogCiAJbG9nX2RlYnVnKCIlcygpOiBDb25uZWN0IGNvbXBsZXRlZCwgcmVzcG9uc2Ug JSN4IiwgX19mdW5jX18sIG9iZXhfcnNwKTsKQEAgLTEyMzIsMTAgKzEyMzEsMTIgQEAKIAlpZiAo b2JleF9yc3AgIT0gT0JFWF9SU1BfU1VDQ0VTUykKIAkJcmV0dXJuIChvYmV4X3JzcCk7CiAKLQlp ZiAoT0JFWF9PYmplY3RHZXROb25IZHJEYXRhKG9iamVjdCwgKHVpbnQ4X3QgKiopICZoZHIpID09 IHNpemVvZigqaGRyKSkKKwlpZiAoT0JFWF9PYmplY3RHZXROb25IZHJEYXRhKG9iamVjdCwgJmRh dGEpID09IHNpemVvZihvYmV4X2Nvbm5lY3RfaGRyX3QpKQogCQlsb2dfZGVidWcoIiVzKCk6IE9C RVggY29ubmVjdCBoZWFkZXI6ICIgXAotCQkJInZlcnNpb249JSN4LCBmbGFncz0lI3gsIG10dT0l ZCIsIF9fZnVuY19fLCAKLQkJCWhkci0+dmVyc2lvbiwgaGRyLT5mbGFncywgbnRvaHMoaGRyLT5t dHUpKTsKKwkJCSJ2ZXJzaW9uPSUjeCwgZmxhZ3M9JSN4LCBtdHU9JWQiLCBfX2Z1bmNfXywKKwkJ CSgob2JleF9jb25uZWN0X2hkcl90ICopIGRhdGEpLT52ZXJzaW9uLAorCQkJKChvYmV4X2Nvbm5l Y3RfaGRyX3QgKikgZGF0YSktPmZsYWdzLAorCQkJbnRvaHMoKChvYmV4X2Nvbm5lY3RfaGRyX3Qg KikgZGF0YSktPm10dSkpOwogCWVsc2UKIAkJbG9nX2VycigiJXMoKTogSW52YWxpZCBPQkVYIGNv bm5lY3QgaGVhZGVyPyEiLCBfX2Z1bmNfXyk7CiAKSW5kZXg6IHNlcnZlci5jCj09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K UkNTIGZpbGU6IC91c3IvbG9jYWwvY3ZzL3BvcnRzL29iZXhhcHAvc2VydmVyLmMsdgpyZXRyaWV2 aW5nIHJldmlzaW9uIDEuMTIKZGlmZiAtdSAtcjEuMTIgc2VydmVyLmMKLS0tIHNlcnZlci5jCTIw IEF1ZyAyMDA5IDIxOjU3OjE4IC0wMDAwCTEuMTIKKysrIHNlcnZlci5jCTEgRGVjIDIwMDkgMjA6 MDQ6MzMgLTAwMDAKQEAgLTQ3MSwxOSArNDcxLDIwIEBACiBvYmV4YXBwX3NlcnZlcl9yZXF1ZXN0 X2Nvbm5lY3Qob2JleF90ICpoYW5kbGUsIG9iZXhfb2JqZWN0X3QgKm9iamVjdCwKIAkJX191bnVz ZWQgaW50IG9iZXhfcnNwKQogewotCW9iZXhfY29ubmVjdF9oZHJfdCAgICAgICpoZHIgPSBOVUxM OwogCW9iZXhfaGVhZGVyZGF0YV90CSBodjsKLQl1aW50OF90CQkJIGhpOworCXVpbnQ4X3QJCQkg aGksICpkYXRhID0gTlVMTDsKIAl1aW50MzJfdAkJIGhsZW47CiAJdWludDhfdCBjb25zdAkJKnRh cmdldCA9IE5VTEw7CiAJaW50CQkJIHRhcmdldF9sZW4gPSAwOwogCiAJbG9nX2RlYnVnKCIlcygp IiwgX19mdW5jX18pOwogCi0JaWYgKE9CRVhfT2JqZWN0R2V0Tm9uSGRyRGF0YShvYmplY3QsICh1 aW50OF90ICoqKSAmaGRyKSA9PSBzaXplb2YoKmhkcikpCisJaWYgKE9CRVhfT2JqZWN0R2V0Tm9u SGRyRGF0YShvYmplY3QsICZkYXRhKSA9PSBzaXplb2Yob2JleF9jb25uZWN0X2hkcl90KSkKIAkJ bG9nX2RlYnVnKCIlcygpOiBPQkVYIGNvbm5lY3QgaGVhZGVyOiB2ZXJzaW9uPSUjeCwgIiBcCi0J CQkiZmxhZ3M9JSN4LCBtdHU9JWQiLCBfX2Z1bmNfXywgaGRyLT52ZXJzaW9uLCBoZHItPmZsYWdz LAotCQkJbnRvaHMoaGRyLT5tdHUpKTsKKwkJCSJmbGFncz0lI3gsIG10dT0lZCIsIF9fZnVuY19f LAorCQkJKChvYmV4X2Nvbm5lY3RfaGRyX3QgKikgZGF0YSktPnZlcnNpb24sCisJCQkoKG9iZXhf Y29ubmVjdF9oZHJfdCAqKSBkYXRhKS0+ZmxhZ3MsCisJCQludG9ocygoKG9iZXhfY29ubmVjdF9o ZHJfdCAqKSBkYXRhKS0+bXR1KSk7CiAJZWxzZQogCQlsb2dfZXJyKCIlcygpOiBJbnZhbGlkIE9C RVggY29ubmVjdCBoZWFkZXI/ISIsIF9fZnVuY19fKTsKIApAQCAtMTA4Niw5ICsxMDg3LDggQEAK IAkJX191bnVzZWQgaW50IG9iZXhfcnNwKQogewogCWNvbnRleHRfcAkJIGNvbnRleHQgPSAoY29u dGV4dF9wKSBPQkVYX0dldFVzZXJEYXRhKGhhbmRsZSk7Ci0Jb2JleF9zZXRwYXRoX2hkcl90CSpo ZHIgPSBOVUxMOwogCW9iZXhfaGVhZGVyZGF0YV90CSBodjsKLQl1aW50OF90CQkJIGhpOworCXVp bnQ4X3QJCQkgaGksIGZsYWdzID0gMHhmZiwgKmRhdGEgPSBOVUxMOwogCXVpbnQzMl90CQkgaGxl bjsKIAlpbnQJCQkgZ290X25hbWUgPSAwOwogCkBAIC0xMDk2LDEwICsxMDk2LDEyIEBACiAKIAlj b250ZXh0LT5maWxlWzBdID0gJ1wwJzsKIAotCWlmIChPQkVYX09iamVjdEdldE5vbkhkckRhdGEo b2JqZWN0LCAodWludDhfdCAqKikgJmhkcikgPT0gc2l6ZW9mKCpoZHIpKQotICAgICAgICAgICAg ICAgIGxvZ19kZWJ1ZygiJXMoKTogT0JFWCBzZXRwYXRoIGhlYWRlcjogZmxhZ3M9JSN4LCBjb25z dGFudHM9JWQiLAotCQkJX19mdW5jX18sIGhkci0+ZmxhZ3MsIGhkci0+Y29uc3RhbnRzKTsKLQll bHNlCisJaWYgKE9CRVhfT2JqZWN0R2V0Tm9uSGRyRGF0YShvYmplY3QsICZkYXRhKSA9PSBzaXpl b2Yob2JleF9zZXRwYXRoX2hkcl90KSkgeworCQlmbGFncyA9ICgob2JleF9zZXRwYXRoX2hkcl90 ICopIGRhdGEpLT5mbGFnczsKKworCQlsb2dfZGVidWcoIiVzKCk6IE9CRVggc2V0cGF0aCBoZWFk ZXI6IGZsYWdzPSUjeCwgY29uc3RhbnRzPSVkIiwKKwkJCV9fZnVuY19fLCBmbGFncywgKChvYmV4 X3NldHBhdGhfaGRyX3QgKikgZGF0YSktPmNvbnN0YW50cyk7CisJfSBlbHNlCiAJCWxvZ19lcnIo IiVzKCk6IEludmFsaWQgT0JFWCBzZXRwYXRoIGhlYWRlcj8hIiwgX19mdW5jX18pOwogCiAJd2hp bGUgKE9CRVhfT2JqZWN0R2V0TmV4dEhlYWRlcihoYW5kbGUsIG9iamVjdCwgJmhpLCAmaHYsICZo bGVuKSkgewpAQCAtMTE1MSw5ICsxMTUzLDkgQEAKIAkJICogZGlyZWN0b3J5KSBtZWFucyAiY2Qg Li4iLiBFdmVyeXRoaW5nIGVsc2UgaXMgZm9yYmlkZGVuLgogCQkgKi8KIAkKLQkJaWYgKGhkci0+ ZmxhZ3MgIT0gMHgzKSB7CisJCWlmIChmbGFncyAhPSAweDMpIHsKIAkJCWxvZ19lcnIoIiVzKCk6 IEludmFsaWQgZmxhZ3MgZm9yICdjZCAuLicsIGZsYWdzPSUjeCIsCi0JCQkJX19mdW5jX18sIGhk ci0+ZmxhZ3MpOworCQkJCV9fZnVuY19fLCBmbGFncyk7CiAJCQkJCiAJCQlyZXR1cm4gKE9CRVhB UFBfUEFDS19SU1BfQ09ERVMoT0JFWF9SU1BfRk9SQklEREVOLAogCQkJCQkJCU9CRVhfUlNQX0ZP UkJJRERFTikpOwpAQCAtMTE2OSw5ICsxMTcxLDkgQEAKIAkJICogJ2NkIC8nLiBFdmVyeXRoaW5n IGVsc2UgaXMgZm9yYmlkZGVuCiAJCSAqLwogCi0JCWlmIChoZHItPmZsYWdzICE9IDB4Mikgewor CQlpZiAoZmxhZ3MgIT0gMHgyKSB7CiAJCQlsb2dfZXJyKCIlcygpOiBJbnZhbGlkIGZsYWdzIGZv ciAnY2QgLycsIGZsYWdzPSUjeCIsCi0JCQkJX19mdW5jX18sIGhkci0+ZmxhZ3MpOworCQkJCV9f ZnVuY19fLCBmbGFncyk7CiAJCQkJCiAJCQlyZXR1cm4gKE9CRVhBUFBfUEFDS19SU1BfQ09ERVMo T0JFWF9SU1BfRk9SQklEREVOLAogCQkJCQkJCU9CRVhfUlNQX0ZPUkJJRERFTikpOwpAQCAtMTE4 MCw3ICsxMTgyLDcgQEAKIAkJc3RybGNweShjb250ZXh0LT5maWxlLCBjb250ZXh0LT5yb290LCBQ QVRIX01BWCk7CiAJfQogCi0JaWYgKGhkci0+ZmxhZ3MgPT0gMCkgeworCWlmIChmbGFncyA9PSAw KSB7CiAJCWlmIChta2Rpcihjb250ZXh0LT5maWxlLCAwNzU1KSA8IDAgJiYgZXJybm8gIT0gRUVY SVNUKSB7CiAJCQlsb2dfZXJyKCIlcygpOiBta2RpciglcykgZmFpbGVkLiAlcyAoJWQpIiwKIAkJ CQlfX2Z1bmNfXywgY29udGV4dC0+ZmlsZSwgCkluZGV4OiB1dGlsLmMKPT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpSQ1Mg ZmlsZTogL3Vzci9sb2NhbC9jdnMvcG9ydHMvb2JleGFwcC91dGlsLmMsdgpyZXRyaWV2aW5nIHJl dmlzaW9uIDEuMTUKZGlmZiAtdSAtcjEuMTUgdXRpbC5jCi0tLSB1dGlsLmMJMjAgQXVnIDIwMDkg MjE6NTc6MTggLTAwMDAJMS4xNQorKysgdXRpbC5jCTEgRGVjIDIwMDkgMTk6NTg6NTMgLTAwMDAK QEAgLTM0LDYgKzM0LDcgQEAKICNpbmNsdWRlIDxjdHlwZS5oPgogI2luY2x1ZGUgPGVycm5vLmg+ CiAjaW5jbHVkZSA8aWNvbnYuaD4KKyNpbmNsdWRlIDxsYW5naW5mby5oPgogI2luY2x1ZGUgPGxp Ymdlbi5oPgogI2luY2x1ZGUgPGxpbWl0cy5oPgogI2luY2x1ZGUgPGxvY2FsZS5oPgpAQCAtNTYs NyArNTcsNiBAQAogICogSW5pdCBsb2NhbGUKICAqLwogCi1zdGF0aWMgY2hhciBjb25zdAkqbG9j YWxlID0gTlVMTDsKIHN0YXRpYyBpbnQzMl90CQkgdXRmMTYgPSAwOwogc3RhdGljIGljb252X3QJ CSB1dGY4MmxvY2FsZSA9IChpY29udl90KSAtMTsKIHN0YXRpYyBpY29udl90CQkgbG9jYWxlMnV0 ZjggPSAoaWNvbnZfdCkgLTE7CkBAIC02NiwyNSArNjYsMTAgQEAKIGludAogb2JleGFwcF91dGls X2xvY2FsZV9pbml0KHZvaWQpCiB7Ci0JaW50CW9uZSA9IDE7CisJY2hhciBjb25zdAkqbG9jYWxl OwogCi0JbG9jYWxlID0gc2V0bG9jYWxlKExDX0NUWVBFLCAiIik7Ci0JaWYgKGxvY2FsZSA9PSBO VUxMKQotCQlyZXR1cm4gKC0xKTsKLQotCWlmIChzdHJjbXAobG9jYWxlLCAiQVNDSUkiKSA9PSAw IHx8Ci0JICAgIHN0cmNtcChsb2NhbGUsICJDIikgPT0gMCB8fAotCSAgICBzdHJjbXAobG9jYWxl LCAiUE9TSVgiKSA9PSAwIHx8Ci0JICAgIHN0cmNtcChsb2NhbGUsICJVUy1BU0NJSSIpID09IDAp Ci0JCWxvY2FsZSA9ICJlbl9VUy5VUy1BU0NJSSI7Ci0KLQlsb2NhbGUgPSBzdHJjaHIobG9jYWxl LCAnLicpOwotCWlmIChsb2NhbGUgPT0gTlVMTCkKLQkJcmV0dXJuICgtMSk7Ci0KLQlsb2NhbGUg Kys7Ci0JaWYgKGxvY2FsZVswXSA9PSAnXDAnKQotCQlyZXR1cm4gKC0xKTsKKwlzZXRsb2NhbGUo TENfQ1RZUEUsICIiKTsKKwlsb2NhbGUgPSBubF9sYW5naW5mbyhDT0RFU0VUKTsKIAogCXV0ZjE2 ID0gKHN0cnN0cihsb2NhbGUsICJVVEYtMTYiKSAhPSBOVUxMKT8gMSA6IDA7CiAKQEAgLTk0LDcg Kzc5LDYgQEAKIAkJcmV0dXJuICgtMSk7CiAKIAlpY29udih1dGY4MmxvY2FsZSwgTlVMTCwgTlVM TCwgTlVMTCwgTlVMTCk7Ci0JaWNvbnZjdGwodXRmODJsb2NhbGUsIElDT05WX1NFVF9ESVNDQVJE X0lMU0VRLCAmb25lKTsKIAogCS8qIGN1cnJlbnQgbG9jYWxlIC0+IFVURi04ICovCiAJbG9jYWxl MnV0ZjggPSBpY29udl9vcGVuKCJVVEYtOCIsIGxvY2FsZSk7CkBAIC0xMDQsNyArODgsNiBAQAog CX0KIAogCWljb252KGxvY2FsZTJ1dGY4LCBOVUxMLCBOVUxMLCBOVUxMLCBOVUxMKTsKLQlpY29u dmN0bChsb2NhbGUydXRmOCwgSUNPTlZfU0VUX0RJU0NBUkRfSUxTRVEsICZvbmUpOwogCiAJLyog VVRGLTE2QkUgLT4gY3VycmVudCBsb2NhbGUgKi8KIAl1dGYxNmJlMmxvY2FsZSA9IGljb252X29w ZW4obG9jYWxlLCAiVVRGLTE2QkUiKTsKQEAgLTExNCw3ICs5Nyw2IEBACiAJfQogCiAJaWNvbnYo dXRmMTZiZTJsb2NhbGUsIE5VTEwsIE5VTEwsIE5VTEwsIE5VTEwpOwotCWljb252Y3RsKHV0ZjE2 YmUybG9jYWxlLCBJQ09OVl9TRVRfRElTQ0FSRF9JTFNFUSwgJm9uZSk7CiAKIAkvKiBjdXJyZW50 IGxvY2FsZSAtPiBVVEYtMTZCRSAqLwogCWxvY2FsZTJ1dGYxNmJlID0gaWNvbnZfb3BlbigiVVRG LTE2QkUiLCBsb2NhbGUpOwpAQCAtMTI0LDcgKzEwNiw2IEBACiAJfQogCiAJaWNvbnYobG9jYWxl MnV0ZjE2YmUsIE5VTEwsIE5VTEwsIE5VTEwsIE5VTEwpOwotCWljb252Y3RsKGxvY2FsZTJ1dGYx NmJlLCBJQ09OVl9TRVRfRElTQ0FSRF9JTFNFUSwgJm9uZSk7CiAKIAlyZXR1cm4gKDApOwogfQo= --0016e64ccb9c9ddf0b0479b30e8b-- From owner-freebsd-bluetooth@FreeBSD.ORG Tue Dec 1 23:25:56 2009 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 4F0831065670 for ; Tue, 1 Dec 2009 23:25:56 +0000 (UTC) (envelope-from maksim.yevmenkin@gmail.com) Received: from mail-pz0-f178.google.com (mail-pz0-f178.google.com [209.85.222.178]) by mx1.freebsd.org (Postfix) with ESMTP id 25D128FC0C for ; Tue, 1 Dec 2009 23:25:55 +0000 (UTC) Received: by pzk8 with SMTP id 8so845684pzk.8 for ; Tue, 01 Dec 2009 15:25:55 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:in-reply-to:references :date:message-id:subject:from:to:cc:content-type; bh=/vVMRyTCG4I99uegC1IXTF4N9Qnud1rSu26xmP2/b5Y=; b=MkF4LgbwhrUyWDTT7kkux7H/J6ryV1E/1euKK4b23hJiFFG4bwszANyJwxtxUCZTDY Et3ApYRaosFQUQjyYKyQdq1WzjczO6VLm5mosesVBsSGILxEtOjt0i0J2/Tn1a1wu8er fPr95Lty6S92vVZVkiRlwwVtRKescG8hatfUM= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; b=Tue/J/v9Zfj0hrzNgqqGvkUiSZmKqpRn46YqzG+Ve9UcgtIdR6OTXMBOEMAJ/3mzrG A2RvsDbkETbg8cQ/Mo6L8Naidy4rKi1inND8RgF4g0VDU0FSdWzeIEFnGxdvZA9gOaIc eEpx5RMcMALFFPXfgQNsIYB+2dKaGmGj0ftTc= MIME-Version: 1.0 Received: by 10.115.101.1 with SMTP id d1mr3154175wam.40.1259709955367; Tue, 01 Dec 2009 15:25:55 -0800 (PST) In-Reply-To: <1259695873.086896.28523.nullmailer@galant.ukfsn.org> References: <20091201125054.44a00147@zelz27> <1259694948.961003.27487.nullmailer@galant.ukfsn.org> <1259695873.086896.28523.nullmailer@galant.ukfsn.org> Date: Tue, 1 Dec 2009 15:25:55 -0800 Message-ID: From: Maksim Yevmenkin To: Iain Hibbert Content-Type: text/plain; charset=ISO-8859-1 Cc: freebsd-bluetooth@freebsd.org Subject: Re: obexapp patches for type-punning 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, 01 Dec 2009 23:25:56 -0000 On Tue, Dec 1, 2009 at 11:31 AM, Iain Hibbert wrote: > Hi, > > while on the subject of obexapp, I have a patch to remove some annoying > 'type punning' compilation errors that gcc spits out that I'm not totally > sure are valid, but see below anyway.. that is why i had -fno-strict-aliasing in makefile :) > I don't understand the OBEX protocol or libopenobex enough to know if it > is possible, but the last case also removes a potential NULL dereference - > if the OBEX_ObjectGetNonHdrData() fails to recover a proper data, an error > is logged but it carries on and hdr->flags might cause a segfault? yes, i think those are good. combined patch went out in the previous email. thanks, max