[pso] [Tema3][Windows]Update offset

Bogdan Nitu nitubogdan_cc at yahoo.com
Mon Apr 26 23:14:16 EEST 2010


Daca plec de la presupunerea ca nu vor exista doua citiri consecutive
cerute din userspace cu acelasi offset (sau scrieri) - si nu prea are sens
sa existe - atunci cand primesc acelasi offset nu fac altceva decat sa
avansez un offset intern. Astfel trec si toate testele. E discutabil cat
de ok este solutia. Oricum 

ret = IoCreateDevice(
driver, 
sizeof(struct s), 
&nume,
FILE_DEVICE_DISK, 
FILE_DEVICE_SECURE_OPEN, 
FALSE,
&dev);

nu-i place FILE_DEVICE_DISK cand apelez IoGetCurrentIrpStackLocation(irp)

--- On Mon, 4/26/10, Bogdan Nitu <nitubogdan_cc at yahoo.com> wrote:

> From: Bogdan Nitu <nitubogdan_cc at yahoo.com>
> Subject: [pso] [Tema3][Windows]Update offset
> To: pso at cursuri.cs.pub.ro
> Date: Monday, April 26, 2010, 5:49 PM
> 
> 
> Salut!
> 
> Am problema la utlimele teste  -  cele cu "out of
> bounds". 
> In functiile read si write nu reusesc sa modific deloc
> offset-ul.
> 
> Am gasit http://cursuri.cs.pub.ro/pipermail/pso/2008-May/002550.html
> 
> 
> Daca pun FILE_DEVICE_DISK in loc de FILE_DEVICE_UNKNOWN in
> IoCreateDevice,
> imi da BSOD in functiile read/write in zona de cod:
> 
>     -    pIrpStack =
> IoGetCurrentIrpStackLocation(irp);
>     -       Daca
> incerc sa apelez vre-un camp al lui pIrpStack da
> BSOD. (daca nu ma ating de pIrpStack nu apare BSOD)
> 
>     sau daca incerc sa testez de la bun
> inceput 
> 
>        
> IoGetCurrentIrpStackLocation(irp) == NULL apare la fel
> BSOD.
> 
> In windbg dupa !analyze -v nu imi zice nimic de
> FAULTING_IP, iar la 
> MODULE_NAME imi zice nt si nu ssr (foarte ciudat, pana acum
> cand imi aparea
> BSOD, memory dump imi pomenea numele modulului meu).
> 
> Cu FILE_DEVICE_UNKNOWN merge tema, dar nu trece ultimul
> test (pentru ca nu
> reusesc sa fac update la offset).
> 
> 
> De ce nu ma lasa sa accesez campurile lui  pIrpStack
> ?
> 
> Multumesc frumos!
> 
> Bogdan!
> 
> 
>       
> _______________________________________________
> http://elf.cs.pub.ro/so2/wiki/resurse/lista-discutii
> 


      



More information about the pso mailing list