RE: Is there a queue object that the kernel mode and user mode can share?

Hi, Laura:

I do not see you need get data back to usr mode in order to write it to
network. In the email Vikhram replying to you, he layed out the step to do
this by create a dedicated system thread in kernel and impersonating the
current log-on user. This is far more efficient and general than routing
back to user mode. By general I mean you can, in your file system filter
driver, intercept any write of certain files and route it to network. It
does not limit your solution only to your application.

Bi

-----Original Message-----
From: Laura Ren [mailto:xxxxx@yahoo.ca]
Sent: Tuesday, October 08, 2002 11:17 PM
To: File Systems Developers
Subject: [ntfsd] RE: Is there a queue object that the kernel mode and user
mode can share?

Hi, Chen
Thanks for your answer.
I need to block IRP_WRITE in the dispatch routine and transfer the data to
user mode and write the same data to remote. So there are no limits of the
data. And the IRP_WRITE packets should be blocked in sequnce.

At first I tried to complete network file writing in my driver. But failed
if I logon as a general domain user. So now, I tried to send the written
data to user mode then write to network file.

The failure of network file writing in driver are described as follow:
////////////////////////////////////////////////////////////////////////////
////////////////////////

I met a problem when access network shared files in the kernel driver.

I always got a “Access Denied 0xc0000022” error.

The senario is:

  1. A Win2000 Domain;

  2. User account “Acc” in this domain in Domain/Users group.

  3. A Shared folder on a Server(win 2000) in this domain.( the Acc has the

permission to full control to this shared folder)

  1. A Computer(win2000) in this domain

The steps are:

  1. I logon to that computer using the domain account “Acc”

  2. I start a app and send out an IOCTL from this app

  3. Create a system thread in the driver after receive this IOCTL. and create

a security client context.

  1. When needed in the dispacth routine of this driver, impersonate the

thread using the saved security client context then access the shared folder

on that server in this domain.

Always got an 0xC0000022 error.

  1. But When I logon that computer using an adminstrator domain account. Then

every thing ok.

  1. even after logon under adminstrator’s account then create the sytem

thread and log out and relogon under the “Acc” account, this time I can

access that share folder also.

Does any one has any suggestion?

Or is there any books or articles about those? I search on the web. still

can not get whole picture about security and network resource access and

user logon.

Thanks

Laura.

////////////////////////////////////////////////////////////////////////////
///////////////////

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com]On Behalf Of Bi Chen
Sent: Tuesday, October 08, 2002 1:44 PM
To: File Systems Developers
Subject: [ntfsd] RE: Is there a queue object that the kernel mode and user
mode can share?

Hi, Laura:

There are many ways to do this kind of thing. None of them are best in all
cases.

It totally depends on your need. For example, do you have large amount of
data to transfer to usr mode? Does your driver needs to take a peek of the
data, what is the concurrency of the incoming data, i.e. the possiblity of
multiple data packets coming in simultaneously.

Using dangling IRP as described in Walter’s WDM boot, Chap. 9. is quite good
choice if you data packet size is within certain limit. There are many other
ways. Let me know you situation.

Bi

-----Original Message-----
From: Laura Ren [mailto:xxxxx@yahoo.ca mailto:xxxxx]
Sent: Tuesday, October 08, 2002 7:36 AM
To: File Systems Developers
Subject: [ntfsd] RE: Is there a queue object that the kernel mode and
user mode can share?

Because I thought IOCTL is good if the user mode know when to request data.
But if it doesn’t, IOCTL is not good enough.

I’d better check LPC first.
I also thought to create a file as the share media between user mode and
kernel mode. but it may be too slow.

Thanks.

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com
mailto:xxxxx]On Behalf Of Fuller, Rob
Sent: Tuesday, October 08, 2002 10:17 AM
To: File Systems Developers
Subject: [ntfsd] RE: Is there a queue object that the kernel mode and
user mode can share?

LPC does what you want, but it’s undocumented. O well. Why not use IOCTL’s

which is what the rest of us do?

-----Original Message-----
From: Laura Ren [mailto:xxxxx@yahoo.ca mailto:xxxxx]
Sent: Tuesday, October 08, 2002 9:19 AM
To: File Systems Developers
Subject: [ntfsd] Is there a queue object that the kernel mode and user
mode can share?

Hi all,
Is there a queue object that the kernel driver and user mode app can share?
I need transfer data from my driver to my user mode app.

Thanks for your help.

Laura



Post your ad for free now! http://personals.yahoo.ca
http:


You are currently subscribed to ntfsd as: xxxxx@inin.com
To unsubscribe send a blank email to %%email.unsub%%


You are currently subscribed to ntfsd as: xxxxx@yahoo.ca
To unsubscribe send a blank email to %%email.unsub%%



Post your free ad now! http://personals.yahoo.ca http:


You are currently subscribed to ntfsd as: xxxxx@appstream.com
To unsubscribe send a blank email to %%email.unsub%%


You are currently subscribed to ntfsd as: xxxxx@yahoo.ca
To unsubscribe send a blank email to %%email.unsub%%


You are currently subscribed to ntfsd as: xxxxx@appstream.com
To unsubscribe send a blank email to %%email.unsub%%</http:></http:></mailto:xxxxx></mailto:xxxxx></mailto:xxxxx>