[pso] [tema1][win] Parametrii apelurilor de sistem & return value
Andrei Costin
pso@cursuri.cs.pub.ro
Wed, 16 Mar 2005 04:42:32 -0800 (PST)
--0-1856965408-1110976952=:63119
Content-Type: text/plain; charset=us-ascii
Buna.
Cu loggarea log_packet-urilor m-am lamurit - mersi ptr hints.
Acum am problema extragerii (copierii) parametrilor transmisi. Inainte de trap (int 2e), in ebx se pune pointer la adresa din stiva user-mode de unde incep parametrii, corect?
Dupa ce se executa int 2e si se ajunge in functia interceptor(), parametrii transmisi trebuie sa se gaseasca pe stiva kernel-mode. corect? dar care e adresa la care se gaseste inceputul parametrilor transmiti?
m-am plimbat cu un (char *) intre adresele new_stack si old_stack si nu am gasit vreo urma de parametri transmiti de test.exe (am modificat putin test.exe sa afiseze parametrii transmisi)
La fel intrebare pentru valoarea returnata - in interceptor de unde o luam si si cand - inainte sau dupa apelul original_sys_call()?
PS logic ar trebui sa o luam dupa apelul original_sys_call(), dar in cursul cu interceptarile "..." apar doar inainte de apelul originalului - ce sa insemne acest lucru?!
Mersi anticipat.
Andrei
---------------------------------
Do you Yahoo!?
Yahoo! Small Business - Try our new resources site!
--0-1856965408-1110976952=:63119
Content-Type: text/html; charset=us-ascii
<DIV>Buna.</DIV>
<DIV> </DIV>
<DIV>Cu loggarea log_packet-urilor m-am lamurit - mersi ptr hints.</DIV>
<DIV> </DIV>
<DIV>Acum am problema extragerii (copierii) parametrilor transmisi. Inainte de trap (int 2e), in ebx se pune pointer la adresa din stiva user-mode de unde incep parametrii, corect?</DIV>
<DIV> </DIV>
<DIV>Dupa ce se executa int 2e si se ajunge in functia interceptor(), parametrii transmisi trebuie sa se gaseasca pe stiva kernel-mode. corect? dar care e adresa la care se gaseste inceputul parametrilor transmiti?</DIV>
<DIV> </DIV>
<DIV>m-am plimbat cu un (char *) intre adresele new_stack si old_stack si nu am gasit vreo urma de parametri transmiti de test.exe (am modificat putin test.exe sa afiseze parametrii transmisi)</DIV>
<DIV> </DIV>
<DIV>La fel intrebare pentru valoarea returnata - in interceptor de unde o luam si si cand - inainte sau dupa apelul original_sys_call()?</DIV>
<DIV> </DIV>
<DIV>PS logic ar trebui sa o luam dupa apelul original_sys_call(), dar in cursul cu interceptarile "..." apar doar inainte de apelul originalului - ce sa insemne acest lucru?!</DIV>
<DIV> </DIV>
<DIV>Mersi anticipat.</DIV>
<DIV> </DIV>
<DIV>Andrei</DIV><p>
<hr size=1>Do you Yahoo!?<br>
Yahoo! Small Business - <a href="http://us.rd.yahoo.com/evt=31637/*http://smallbusiness.yahoo.com/resources/">Try our new resources site!</a>
--0-1856965408-1110976952=:63119--