Hi All
I am trying to develop a sample callout driver . I am working On
Ale_Auth_Recv_Accept Layer… my Code Part For Creating Clone is
NET_BUFFER_LIST* netBufferList = (NET_BUFFER_LIST*)packet;
NET_BUFFER_LIST* clonedNetBufferList = NULL;
status =
FwpsAllocateCloneNetBufferList0(netBufferList,NULL,NULL,0,&clonedNetBufferList);
if (!NT_SUCCESS(status))
{
classifyOut->actionType = FWP_ACTION_BLOCK;
classifyOut->rights &= ~FWPS_RIGHT_ACTION_WRITE;
log((LOG_INFO,“FwpsAllocateCloneNetBufferList0 return :%X”,status));
goto cleanup;
}
before calling this function i use to check the layer data
pointer too… But in All the case i got the Error C022001C …I don`t Think I
am Passing Any Invalid Pointer Here…Please help me to find the problem…
is it my code problem?
Thanks
Niraj Jha
At this layer “packet” is not a NetBufferList. You’re at a “stream-layer”…If “packet” parameter is != NULL try to cast to FWPS_STREAM_CALLOUT_IO_PACKET0.
“Niraj Jha” schrieb im Newsbeitrag news:xxxxx@ntdev…
Hi All
I am trying to develop a sample callout driver . I am working On Ale_Auth_Recv_Accept Layer… my Code Part For Creating Clone is
NET_BUFFER_LIST* netBufferList = (NET_BUFFER_LIST*)packet;
NET_BUFFER_LIST* clonedNetBufferList = NULL;
status = FwpsAllocateCloneNetBufferList0(netBufferList,NULL,NULL,0,&clonedNetBufferList);
if (!NT_SUCCESS(status))
{
classifyOut->actionType = FWP_ACTION_BLOCK;
classifyOut->rights &= ~FWPS_RIGHT_ACTION_WRITE;
log((LOG_INFO,“FwpsAllocateCloneNetBufferList0 return :%X”,status));
goto cleanup;
}
before calling this function i use to check the layer data pointer too… But in All the case i got the Error C022001C …I don`t Think I am Passing Any Invalid Pointer Here…Please help me to find the problem… is it my code problem?
Thanks
Niraj Jha
Thanks Frank…it works now… actually i was doing a silly mistake that i
was executing this to VISTA 5384 build so it was generating such error…
one thing … what adjectly we get at ale layers … My major
work is to make a clone of original packet which invoked at ale…pending
this and again reinjecting back…
On 1/18/07, frank wrote:
>
> At this layer “packet” is not a NetBufferList. You’re at a
> “stream-layer”…If “packet” parameter is != NULL try to cast to FWPS_STREAM_CALLOUT_IO_PACKET0.
>
>
>
> “Niraj Jha” schrieb im Newsbeitrag
> news:xxxxx@ntdev…
> Hi All
>
> I am trying to develop a sample callout driver . I am working On
> Ale_Auth_Recv_Accept Layer… my Code Part For Creating Clone is
>
>
> NET_BUFFER_LIST* netBufferList = (NET_BUFFER_LIST*)packet;
> NET_BUFFER_LIST* clonedNetBufferList = NULL;
>
>
>
> status =
> FwpsAllocateCloneNetBufferList0(netBufferList,NULL,NULL,0,&clonedNetBufferList);
>
> if (!NT_SUCCESS(status))
>
> {
>
> classifyOut->actionType = FWP_ACTION_BLOCK;
>
> classifyOut->rights &= ~FWPS_RIGHT_ACTION_WRITE;
>
> log((LOG_INFO,“FwpsAllocateCloneNetBufferList0 return :%X”,status));
>
> goto cleanup;
>
> }
>
> before calling this function i use to check the layer data
> pointer too… But in All the case i got the Error C022001C …I don`t Think I
> am Passing Any Invalid Pointer Here…Please help me to find the problem…
> is it my code problem?
>
> Thanks
>
> Niraj Jha
>
>
>
>
>
>
> —
> Questions? First check the Kernel Driver FAQ at
> http://www.osronline.com/article.cfm?id=256
>
> To unsubscribe, visit the List Server section of OSR Online at
> http://www.osronline.com/page.cfm?name=ListServer
>