ProtocolCoAfRegisterNotify

VOID

ProtocolCoAfRegisterNotify(

  IN NDIS_HANDLE  ProtocolBindingContext,

  IN PCO_ADDRESS_FAMILY  AddressFamily

  );

¸ðµç ¿¬°á ÁöÇâ NDIS Ŭ¶óÀÌ¾ðÆ®µéÀº ¿ÏÀüÇÏ°Ô ±â´ÉÀûÀÎ ProtocolCoAfRegisterNotify ÇÔ¼öµéÀ» °¡Á®¾ß ÇÑ´Ù. È¥ÀÚÀÇ ¿¬°á ÁöÇâ ÄÝ ¸Å´ÏÀúµéÀº ´ÜÁö Á¦¾î¸¦ ¸®ÅÏÇÏ´Â ProtocolCoAfRegisterNotify ÇÔ¼öµéÀ» µî·ÏÇØ¾ß ÇÑ´Ù.

¸Å°³º¯¼ö

ProtocolBindingContext
Ŭ¶óÀÌ¾ðÆ® ÇÁ·ÎÅäÄÝÀÌ ¹ÙÀεù ´ç ·±Å¸ÀÓ »óŸ¦ À¯ÁöÇϴ Ŭ¶óÀÌ¾ðÆ® ÇÒ´ç ÄÁÅØ½ºÆ® ¿µ¿ª¿¡ ´ëÇÑ ÇÚµéÀ» ÁöÁ¤ÇÑ´Ù. Ŭ¶óÀ̾ðÆ®ÀÇ ProtocolBindAdapter ÇÔ¼ö´Â ÀÌ ÇÚµéÀ» NdisOpenAdapterÇÔ¼ö¸¦ È£ÃâÇÒ ¶§ Á¦°øÇÑ´Ù.

AddressFamily
NdisCmRegisterAddressFamily ȤÀº NdisMCmRegisterAddressFamily ÇÔ¼ö¸¦ È£ÃâÇÔÀ¸·Î½á NDIS¿¡°Ô ÀÌ·¯ÇÑ ¼­ºñ½ºµéÀ» µî·ÏÇÏ´Â ÄÝ ¸Å´ÏÀú¿¡ ÀÇÇØ Á¦°øµÈ ½Ã±×³Î¸µ ÇÁ·ÎÅäÄÝ Á¦°øÀ» ¼³¸íÇÏ´Â ¹öÆÛ¸¦ °¡¸®Å²´Ù.

ÁÖ¼®

ProtocolCoAfRegisterNotify ÇÔ¼ö¿¡ ´ëÇÑ È£ÃâÀÌ Å¬¶óÀÌ¾ðÆ®°¡ ¹ÙÀεåÇÑ ¾Æ·¡ ¿¬°á ÁöÇâ NIC¿¡ ƯÁ¤ È£Ã⠸ŴÏÀúÀÇ È¤Àº MCM µå¶óÀ̹öÀÇ ÄÝ °ü¸® ¼­ºñ½ºµéÀ» ±¤°íÇÑ´Ù.

ProtocolCoAfRegisterNotify ÇÔ¼ö´Â Ŭ¶óÀÌ¾ðÆ®°¡ ÀÏÇÑ Æ¯Á¤ ÄÝ ¸Å´ÏÀúÀÇ ¼­ºñ½º¸¦ »ç¿ëÇÒ ¼ö ÀÖ´ÂÁö¸¦ °áÁ¤Çϱâ À§ÇØ AddressFamily¿¡ µ¥ÀÌÅ͸¦ Á¶»çÇÑ´Ù. Ŭ¶óÀÌ¾ðÆ®°¡ AddressFamily¿¡ (M)CM-Á¦°ø µ¥ÀÌÅ͸¦ ¼öÁ¤ÇÒ ¼ö ÀÖ´ÂÁö´Â ÄÝ ¸Å´ÏÀúÀÇ Æ¯Á¤ ½Ã±×³Î¸µ ÇÁ·ÎÅäÄÝ Áö¿ø¿¡ ÀÇÁ¸ÇÑ´Ù.

¸¸¾à Ŭ¶óÀÌ¾ðÆ®°¡ Á¦°øµÈ ¼ö¶ôÇÒ ¼ö ¾ø´Â ÄÝ °ü¸® ¼­ºñ½ºµéÀ» ¹ß°ßÇÑ´Ù¸é, ProtocolCoAfRegisterNotify ÇÔ¼ö´Â Á¦¾î¸¦ ¸®ÅÏÇϰí NDIS´Â ´Ù½Ã °°Àº ProtocolBindingContext ÇÚµé°ú ÀÌ°Í È¤Àº °°Àº ¾Æ·¡ NIC µå¶óÀ̹ö¿¡ ¹ÙÀεåµÈ ¶Ç ÇϳªÀÇ ÄÝ ¸Å´ÏÀú¿¡ ÀÇÇØ Á¦°øµÈ AF »ç¾çÀ¸·Î ´Ù½Ã ProtocolCoAfRegisterNotify ÇÔ¼ö¸¦ È£ÃâÇÒ °ÍÀÌ´Ù. ±×·¸Áö ¾ÊÀ¸¸é ProtocolCoAfRegisterNotify ÇÔ¼ö´Â Ŭ¶óÀÌ¾ðÆ®¸¦ À§ÇØ AF´ç ÄÁÅØ½ºÆ® ¿µ¿ªÀ» ÇÒ´çÇϰí AddressFamily Æ÷ÀÎÅÍ·Î NdisClOpenAddressFamily ÇÔ¼ö¸¦ È£ÃâÇÑ´Ù. ¸¸¾à ÀÌ·¯ÇÑ È£ÃâÀÌ ¼º°øÇÑ´Ù¸é, Ŭ¶óÀÌ¾ðÆ®´Â ÀÌ·¯ÇÑ ÄÝ ¸Å´ÏÀúÀÇ ¼­ºñ½ºµéÀ» »ç¿ëÇÏ¿© °è¼ÓÀûÀÎ ¿¬°á ÁöÇâ ¿¬»êµéÀ» À§ÇØ NDIS¿¡°Ô ProtocolClXxx ÇÔ¼öµéÀ» µî·ÏÇÑ´Ù.

¿¹¸¦ µé¾î, ProtocolCoAfRegisterNotify ÇÔ¼ö ȤÀº ProtocolClOpenAfComplete ÇÔ¼ö´Â Ŭ¶óÀÌ¾ðÆ®°¡ °è¼ÓÇØ¼­ ÇÊ¿äÇÏ´Â SAP´ç, VC´ç, party´ç ÄÁÅØ½ºÆ® ¿µ¿ªµéÀÇ µ¿Àû ÇÒ´çµé°ú ÇØÁ¦µéÀ» À§ÇÑ Áغñ·Î Çѹø ȤÀº ¿©·¯¹ø NdisInitializeNPagedLookasideList ÇÔ¼ö¸¦ È£ÃâÇÒ °ÍÀÌ´Ù.

¸¸¾à µé¾î¿À´Â È£ÃâµéÀ» Çã¶ôÇÑ´Ù¸é, Ŭ¶óÀ̾ðÆ®ÀÇ ProtocolCoAfRegisterNotify ÇÔ¼ö ȤÀº ProtocolClOpenAfComplete ÇÔ¼ö´Â Ç×»ó ÄÝ ¸Å´ÏÀú¿¡°Ô Çϳª ȤÀº ±× ÀÌ»óÀÇ SAPµéÀ» µî·ÏÇÑ´Ù. ±×·¯ÇÑ ÄÝ ¸Å´ÏÀúÀÇ AF¸¦ ¿¬ ÈÄ, Ŭ¶óÀÌ¾ðÆ®´Â SAP´ç »óÅ ¿µ¿ªÀ» ÇÒ´çÇÒ °ÍÀ̰í NdisClOpenAddressFamily ÇÔ¼ö·ÎºÎÅÍ ¾òÀº NdisAfHandle·Î Çѹø ȤÀº ¿©·¯¹ø NdisClRegisterSap ÇÔ¼ö¸¦ È£ÃâÇÒ °ÍÀÌ´Ù. ¸¸¾à ³ª°¡´Â È£ÃâµéÀ» ÇÑ´Ù¸é, Ŭ¶óÀÌ¾ðÆ®´Â VC´ç »óÅ ¿µ¿ªÀ» ÇÒ´çÇÏ´Â °ÍÀ» ó¸®ÇÒ °ÍÀÌ°í ¸®¸ðÆ® ³ëµå¿¡ ´ëÇÑ ³ª°¡´Â È£ÃâÀ» ÇÏ´Â ÀÚ½ÅÀÇ Å¬¶óÀ̾ðÆ®ÀÇ Çϳª·ÎºÎÅÍ µé¾î¿À´Â ¿ä±¸ÀÇ ±â´ë·Î NdisCoCreateVc ÇÔ¼ö·Î VC¸¦ ¸¸µé°ÍÀÌ´Ù.

µðÆúÆ®·Î, ProtocolCoAfRegisterNotify ÇÔ¼ö´Â IRQL PASSIVE_LEVEL¿¡¼­ ½ÇÇàÇÑ´Ù.