Thanks Peter, Tony and Lyndon. Your comments were really helpful. I had
become a bit optimistic after looking at the WspSocket api and the heading
‘Network Devices: Windows Driver Kit’ in MSDN.
I will now follow what you folks have said.
Thanks and Best Regards,
Vishal
From: Vishal Pai [mailto:xxxxx@persistent.co.in]
Sent: Tuesday, April 04, 2006 10:29 PM
To: ‘xxxxx@lists.osr.com’
Subject: RE: Kernel mode to user mode communication
Hi,
By Java user mode service I do not mean a Windows NT service. It could
be a java application that is running continuously.
By porting the mini filter I meant that I would rewrite the kernel mode
portion for other OS. But the user mode application will remain the same.
I do not want to use filter manager ports. I want some generic mechanism
to communicate between the mini filter and the Java application.
Thanks,
Vishal
From: Vishal Pai [mailto:xxxxx@persistent.co.in]
Sent: Tuesday, April 04, 2006 9:22 PM
To: ‘xxxxx@lists.osr.com’
Subject: RE: Kernel mode to user mode communication
Hi,
The approach I am interested is in not using JNI or any platform
dependent technology. I want my user mode to be platform independent and I
will port only the mini filter portion to other OS. (It is very simple to
communicate from the mini filter to the user mode service written in C++
using the IFS API’s. But according to my requirements the user mode service
has to be portable.).
Can I open a generic port using the mini filter (i.e. not using the
FltCreateCommunicationPort) for example, sockets? The user mode service will
just connect to this port and get data (something like sockets)? Is there
any other way to achieve this?
I was reading about the “Windows Sockets Direct Reference”. This
indicates that we can create sockets in the kernel mode. However including
the file “Ws2spi.h” gave me a lot of compilation errors like
‘CRITICAL_SECTION is undeclared identifier’ etc.
Am I missing something out here (regarding the approach and
compilation)? I am not sure if the Java code could finally read the data on
the port that is created by using this approach. I am also worried about the
synchronization issues that I will have to face if this approach is correct.
Please advice on the approach. Also, please let me know what I am
missing in compilation as well.
Thanks,
Vishal
From: Vishal Pai [mailto:xxxxx@persistent.co.in]
Sent: Monday, April 03, 2006 10:59 AM
To: ‘xxxxx@lists.osr.com’
Subject: Kernel mode to user mode communication
Hi,
I am developing a mini filter using the Microsoft IFS kit. My mini
filter communicates with a user mode service which contains certain business
logic. I have written the user mode service as a Windows NT service. The
communication is done using the standard api’s like
FltCreateCommunicationPort, FilterConnectCommunicationPort,
FilterSendMessage and FilterReplyMessage etc.
(I had initially posted the following same question on a java group but
did not get any answer). Can the user mode service be written in Java? I
mean, is it possible for the mini filter to communicate with a user mode
service written in Java? Can the Java service call the functions
FilterConnectCommunicationPort, FilterReplyMessage etc.?
Thanks in advance,
Vishal