[pyar] ctypes y dl

Ramiro Morales cramm0 en gmail.com
Mie Ago 25 14:47:59 ART 2010


2010/8/25 Mario Colque <colquemario en gmail.com>:
> hola amigos!
>
> tengo una pequeña duda, me pasaron una aplicación para que la revise
> (encontre el error, que resulto ser algo de sintaxis), pero resulta
> que al inicio tiene estas lineas que me llamaron la atención:
>
> Unos detalles:
> * la aplicacion se llama quara
> * todo corre bajo ubuntu
>
> if (arch.find('x86_64') >= 0):
>        import ctypes
>        libc = ctypes.CDLL('libc.so.6')
>        libc.prctl(15, 'quara', 0, 0, 0)
> else:
>        import dl
>        libc = dl.open('/lib/libc.so.6')
>        libc.call('prctl', 15, 'quara', 0, 0, 0)

En realidad el uso de ctypes o dl son medios para un fin.
El fin es llamar a prctl(2).

Vas a tener que buscar en los .h del kernel
qué significa el 15 para poder entender qué
esta tratando de configurar la llamada porque
prctl es una función ómnibus. Lamentablemente
quien escribió eso no tuvo en cuenta la legibilidad.

-- 
Ramiro Morales  |  http://rmorales.net



More information about the pyar mailing list