[pso] Tema1 Linux Help

Cibu Cristian pso@cursuri.cs.pub.ro
Wed, 24 Mar 2004 13:51:22 +0200


Pai n-ai tu treaba cati parametrii are functia aia. Ii dai pe toti  maxim 6.
int sau long.
Deci functia ta pe care o pui in locul rutinei originale are numarul maxim
de parametrii (6) si dupa o mica bucatarie apelezi
rutina veche la fel, cu toti cei 6 parametrii (initiali). Parametrii se
transmit de fapt prin registrii si functia originala stie ea de ce registrii
avea nevoie.
Cei 6 parametrii se mapeaza peste registrii ebx ecx etc.

Sper ca n-am spus prostii.

----- Original Message ----- 
From: "Andrei Costin" <zveriu_biz@yahoo.com>
To: <pso@cursuri.cs.pub.ro>
Sent: Wednesday, March 24, 2004 11:29 AM
Subject: [pso] Tema1 Linux Help


> Salut la toata lumea.
>
> Am o intrebare si anume:
>
>  tabela "void* sys_call_table[]" contine pointeri la adresele de start
>  ale system calls functions. Ok. De unde totusi stiu signatura exacta
>  a unui system call, de exemplu a system call-ului
>  "sys_call_exit[__NR_whatever]". Sa presupunem ca acea functie
>  intoarce "long", dar de unde stiu cati parametri primeste si tipul
>  acestora?! Intreb aceasta pentru ca la interceptarea unui systemcall
>  oarecare, stiu cum sa extrag numarul system call-ului (vezi curs 2,
>  pag 20) si ca trebuie sa fac inside interceptor
>  "return (original_sys_call_table[found_system_call_number])", dar
parametrii raman
>  totusi in aer. Era tot in curs 2 pag 20 ceva vag despre o functie
>  (*f)(...), dar...
>
> Any hints guys&girls?
>
> Multumesc anticipat :)
>
> Best regards and respect,
>  Andrei Costin (mailto:zveriu_biz@yahoo.com)
>
> ___________________________________________
> Manifest - ".M D - My Domain!" - by .Zveriu.
>              y o
>                m
>                a
>                i
>                n
>
>
> __________________________________
> Do you Yahoo!?
> Yahoo! Finance Tax Center - File online. File on time.
> http://taxes.yahoo.com/filing.html
> _______________________________________________
> pso mailing list
> pso@cursuri.cs.pub.ro
> http://cursuri.cs.pub.ro/cgi-bin/mailman/listinfo/pso