NdisSetPacketFlags
VOID
NdisSetPacketFlags(
IN PNDIS_PACKET Packet,
IN UINT Flags
);
|
NdisSetPacketFlags ÇÔ¼ö´Â ÁÖ¾îÁø ÆÐŶ µð½ºÅ©¸³ÅÍÀÇ Ç÷¡±× ¾È¿¡ È£ÃâÀÚ °áÁ¤, ±×¸®°í ¹Ìµð¾÷ ƯÁ¤ Á¤º¸¸¦ ¼³Á¤ÇÑ´Ù.
¸Å°³º¯¼ö
- Packet
- Ç÷¡±×°¡ ¼³Á¤µÇ´Â ÆÐŶ µð½ºÅ©¸³Å͸¦ °¡¸®Å²´Ù.
- Flags
- NDIS¿¡ ÀÇÇØ »ç¿ëµÇ±â À§Çؼ ¿¹¾àµÈ ÆÐŶ µð½ºÅ©¸³ÅÍÀÇ private ºÎºÐ¿¡ ÀÖ´Â Ç÷¡±× ¾È¿¡ ¼³Á¤µÇ´Â °ªÀ» ¼¼úÇÑ´Ù.
ÇÁ·ÎÅäÄÝÀÌ ¹ÙÀεùÀ» ¼³Á¤Çϱâ À§Çؼ NdisOpenAdapter ÇÔ¼ö¸¦ È£ÃâÇßÀ» ¶§ ÇÁ·ÎÅäÄÝ¿¡ ´ëÇØ¼ ÀÌ °ªÀÇ Æ÷¸ËÀº ÇϺÎÀÇ µå¶óÀ̹ö°¡ ¼±ÅÃÇÑ ¹Ìµð¾ö¿¡ Ư¡Áö¾îÁø´Ù.
ÁÖ¼®
ÆÐŶ µð½ºÅ©¸³ÅÍ¿¡ Ç÷¡±×¸¦ ¼³Á¤ÇÏ´Â °ÍÀº ÇÁ·ÎÅäÄÝ µå¶óÀ̹ö°¡ ÆÐŶ µ¥ÀÌŸ¿¡ Æ÷ÇÔµÇÁö ¾Ê´Â, º¸³»±â ¸®Äù½ºÆ®¿¡ ´ëÇÑ Á¤º¸¸¦ Àü´ÞÇÏ´Â °ÍÀ» Çã¶ôÇÑ´Ù.
ÇÁ·ÎÅäÄÝ µå¶óÀ̹ö´Â ½Å¼ÓÇÏ°Ô Ã³¸®µÇ´Â ¹æ¹ýÀ¸·Î µ¥ÀÌŸ¸¦ Àü¼ÛÇÏ´Â ¾î¶² ¹Ìµð¾ö »ó¿¡¼ º¸³»Áø ÆÐŶ ¾ÈÀÇ Ç÷¡±×¸¦ ¼³Á¤Çϱâ À§Çؼ ÀϹÝÀûÀ¸·Î NdisSetPacketFlags ÇÔ¼ö¸¦ È£ÃâÇÑ´Ù. ¸î¸î ¹Ìµð¾î ŸÀÔÀº º¸³»±â ÆÐŶ¿¡ üÀÎÈµÈ ¹öÆÛ¾È¿¡ Æ÷ÇԵǴ ÆÐŶÀÇ Çì´õ¾È¿¡ Ç÷¡±× Á¤º¸¸¦ Æ÷ÇÔÇÑ´Ù. ÇÁ·ÎÅäÄÝ µå¶óÀ̹ö°¡ ÀÌ ¹Ìµð¾î ŸÀÔÀ» À§Çؼ ÇϺÎÀÇ µå¶óÀ̹ö¿Í ¹ÙÀεùÇßÀ» ¶§ NdisSetPacketFlags ÇÔ¼öÀÇ È£ÃâÀº ºÒÇÊ¿äÇÏ´Ù.
¹ÙÀεùµÈ ÇÁ·ÎÅäÄÝÀÌ NdisSetPacketFlags ÇÔ¼ö¸¦ È£ÃâÇßÀ» ¶§ ÇϺΠµå¶óÀ̹öÀÇ MiniportSendPackets ÇÔ¼ö´Â NdisGetPacketFlags ÇÔ¼ö¸¦ È£ÃâÇϹǷνḸ ÀÌ Ç÷¡±×µéÀ» ÀÐÀ» ¼ö ÀÖ´Ù. MiniportSend ÇÔ¼ö¸¦ °¡Áø ÇϺÎÀÇ µå¶óÀ̹ö¿¡ ´ëÇØ¼ NdisGetPacketFlags ÇÔ¼öÀÇ È£ÃâÀº Ç÷¡±×°¡ MiniportSend ÇÔ¼öÀÇ ÀÔ·Â ÆÄ¶ó¹ÌÅÍ·Î Àü´ÞµÇ±â ¶§¹®¿¡ ºÒÇÊ¿äÇÏ´Ù.
NdisAllocatePacket ÇÔ¼ö¸¦ °¡Áö°í ÇÒ´çµÈ ¸ðµç ÆÐŶ µð½ºÅ©¸³Å͵éÀº 0 À¸·Î ÃʱâÈµÈ Ç÷¡±×¸¦ °¡Áö°í ÀÖ´Ù. NdisGetPacketFlags ÇÔ¼ö¿¡ ÀÇÇØ¼ ¸®ÅÏµÈ °ªÀÌ 0 À̶ó¸é ÇϺÎÀÇ µå¶óÀ̹ö´Â ÆÐŶÀÌ ÇÁ·ÎÅäÄÝ ¼³Á¤ Ç÷¡±× Á¤º¸¸¦ °¡Áö°í ÀÖÁö ¾Ê´Ù°í °¡Á¤ÇÒ ¼ö ÀÖ´Ù.
±×·¯³ª ÇÁ·ÎÅäÄÝÀº ½Ì±Û ÆÐŶÀ» Çã¶ôÇÏ´Â NdisSetPacketFlags ÇÔ¼ö¸¦ È£ÃâÇÏ´Â °Íº¸´Ù °¢°¢ÀÇ ÆÐŶ µð½ºÅ©¸³ÅÍ¿Í ¿¬°üµÈ OOB µ¥ÀÌŸ ºí·° ¾È¿¡ ÆÐŶ ¿ì¼±±Ç°ú °°Àº ÈξÀ ´õ ¸¹Àº ¹Ìµð¾î ƯÁ¤ Á¤º¸¸¦ Á¦°øÇÒ ¼ö ÀÖ´Ù.
NdisSetPacketFlags ÇÔ¼öÀÇ È£ÃâÀÚ´Â IRQL <= DISPATCH_LEVEL¿¡¼ ½ÇÇàÇÑ´Ù.
|