阅读:2032回复:0
谁做过passthru中的分片?请帮忙看看
在mpsend中对数据进行加密后,其长度有可能超过MTU,所以考虑对其分片。
基本流程如下: 将原Packet中的内容拷入一片内存; 加密; if(长度<=MTU) { 分配MyPacket; NdisSetPacketFlags(MyPacket, NDIS_FLAGS_DONT_LOOPBACK); 拷贝oob数据; 拷贝Media specific information; ndisSend(MyPacket) } else { 分配MyPacket1; NdisSetPacketFlags(MyPacket1, NDIS_FLAGS_DONT_LOOPBACK); 拷贝oob数据; 拷贝Media specific information; ndisSend(MyPacket1); 分配MyPacket2; NdisSetPacketFlags(MyPacket2, NDIS_FLAGS_DONT_LOOPBACK);//运行到此处系统便崩溃了。 拷贝oob数据; 拷贝Media specific information; ndisSend(MyPacket2); } 苦思不得其解。望高手指点。 btw:不分片的时候一切正常。 |
|
最新喜欢:chili |