DeviceIoControl,METHOD_BUFFERED и данные по поинтеру Win32,

From
Ihor Osov'yak ()
To
All ()
Date
2003-04-21T20:17:26Z
Area
SU.WINDOWS.NT.PROG
From: "Ihor Osov'yak" <osi@osi.te.ua>


идущие вглубь драйвера.

 То есть, в драйвер передаются не сами данные, а поинтер на них.
Драйвер потом успешно эти данные получает. Примерно по такой же схеме данные
возвращаются, только там не METHOD_BUFFERED, а METHOD_NEITHER.. Область
данных, на которые смотрят эти поинтера распределяются конечно в win32 и на
время выполнения DeviceIoControl живы и никуда не исчезают - DeviceIoControl
выполняется в синхронном режиме.

 Я был убежден, что это чушь, пока сам не увидел работающего изделия по
такому принцыпу и его исходники.. Которые сам компилил :-).

 Это дело проверялось под W2K.

 То есть получается, что из kernel mode можно работать по поинтеру, который
передан из пользовательского режима?
Насколько така техника безопасна?

 Зы - я в общем то заинтересован доказать, что так работать плохо...

Спасибо за внимание




-- 
Отправлено через сервер Форумы@mail.ru - http://talk.mail.ru
--- ifmail v.2.15dev5
 * Origin: Talk.Mail.Ru (2:5020/400)