[pso] NR_open

Cristea Liviu liviu.daniel.cristea at gmail.com
Tue Mar 15 08:18:18 EET 2011


Da, asa este !
M-a derutat informatia din curs si nu m-as fi gandit ca incepe cu "__"

Multumesc

2011/3/15 Lucian Cojocar <cojocar at rosedu.org>

> On 03/14/2011 11:47 PM, Cristea Liviu wrote:
>
>> Salut,
>>
>> In cursul 2 avem un exemplu de interceptare de open().
>> Acolo se foloseste un NR_open, dar eu nu pot compila cu asa ceva, ca nu
>> stie unde se afla constanta ( nu se afla in linux/kernel.h sau
>> linux/init.h sau altele asemenea )
>> A gasit cineva unde este declarat? Voiam sa vad si eu un prim exemplu ca
>> merge.
>>
>>  Este vorba despre __NR_open, numărul apelului de sistem open.
>
> Headerul în care este definit este:
> * unul dependent de arhitectură, numărul syscallului este dependent de
> arhitectură,
> * este utilizat și în user-space, (pentru a compila libc de exemplu [1]).
>
> Având cele două informații putem căuta:
>
> ""
> find arch/x86/include/ -name *.h -exec grep -H NR_open {} \;
> ""
>
> Fișierele găsite vor fi asm/unistd_{32,64}.h, care sunt incluse automat (în
> funcție de (sub)arhitectură) de către unistd.h.
>
> Deci răspunsul este <asm/unistd.h>
>
> P.S. define-ul este __NR_open.
>
> Lucian
>
> [1]http://www.mjmwired.net/kernel/Documentation/make/headers_install.txt
>
> _______________________________________________
> http://elf.cs.pub.ro/so2/wiki/resurse/lista-discutii
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://cursuri.cs.pub.ro/pipermail/pso/attachments/20110315/24e884eb/attachment.htm>


More information about the pso mailing list