mmap and ctypes

castironpi castironpi at
Sat Aug 16 20:34:21 CEST 2008

Hi all,

I have a mmap and a data structure in it.  I know the structure's
location in the mmap and what structure it is.  It has a ctypes

I want to initialize a ctypes object to point to a part of the mmap.

Here is my attempt:

>>> b
<mmap.mmap object at 0x009FEDB8>
>>> c= ctypes.pointer( b )
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "C:\programs\Python25\lib\ctypes\", line 318, in
    return POINTER(type(inst))(inst)
  File "C:\programs\Python25\lib\ctypes\", line 262, in
    {'_type_': cls})
TypeError: _type_ must have storage info

and then use 'cast', but it fails here.

Is there some way to combine ctypes with struct.pack_into and
struct.unpack_from?  Can I access the mmap's buffer directly?  Could
be very handy and I'm willing to talk about the C function involved.
What kind of modification to mmapmodule would we be looking at?  Does
someone want to do it with me?

I am looking at mmapmodule.c, line 75, access to the char * data
member of mmap_object.  Link is here:

More information about the Python-list mailing list