--- Begin Message ---
Subject: |
dbus uses Emacs integer as pointer, possible core dump |
Date: |
Wed, 09 May 2012 08:20:57 -0700 |
User-agent: |
Mozilla/5.0 (X11; Linux i686; rv:12.0) Gecko/20120430 Thunderbird/12.0.1 |
The trunk version of Emacs src/dbusbind.c contains a function
xd_get_connection_address that does this:
connection = (DBusConnection *) (intptr_t) XFASTINT (val);
This converts an Emacs integer to a pointer without checking
that it is actually of the proper C type. It is possible
for Lisp code to mistakenly put an integer there that will
cause Emacs to dump core. Shouldn't this be made safe, so
that Lisp code can't do that? For example, a DbusConnection *
could be made a proper Lisp pseudovector or misc type or
something like that. The idea is to avoid a bad pointer
leaking into the C code.
--- End Message ---
--- Begin Message ---
Subject: |
Re: bug#11442: dbus uses Emacs integer as pointer, possible core dump |
Date: |
Wed, 09 May 2012 14:35:47 -0700 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:11.0) Gecko/20120329 Thunderbird/11.0.1 |
On 05/09/2012 02:19 PM, Michael Albinus wrote:
> I've converted it to be an internal Lisp object.
Thanks; that looks good. Closing the bug.
--- End Message ---