NdisReset

VOID

  NdisReset(

    OUT PNDIS_STATUS  Status,

    IN NDIS_HANDLE  NdisBindingHandle

    );

NdisReset ÇÔ¼ö´Â ÇϺÎÀÇ µå¶óÀ̹ö·Î ¸®¼Â ¸®Äù½ºÆ®¸¦ Àü´ÞÇÑ´Ù.

¸Å°³º¯¼ö

Status
ÀÌ ÇÔ¼öÀÇ ¸®ÅÏ¿¡¼­ ¼³Á¤µÈ È£ÃâÀÚ Á¦°ø º¯¼ö¸¦ °¡¸®Å²´Ù. ÇϺÎÀÇ µå¶óÀ̹ö´Â NDIS_STATUS_XXX°¡ ¸®ÅϵǴÂÁö¸¦ °áÁ¤ÇÏÁö¸¸ ´ëºÎºÐ ´ÙÀ½Áß ÇϳªÀÇ °ªÀÌ´Ù:

NDIS_STATUS_SUCCESS
ÇϺÎÀÇ µå¶óÀ̹ö´Â NIC ȤÀº °¡»ó NICÀ» óÀ½ »óÅ·Π¸®¼ÂÇÑ´Ù.

NDIS_STATUS_PENDING
¸®Äù½ºÆ®´Â ºñµ¿±âÀûÀ¸·Î 󸮵ǰí ÀÖ°í È£ÃâÀÚÀÇ ProtocolResetComplete ÇÔ¼ö´Â ¸®Äù½ºÆ®°¡ ¿Ï·áµÉ ¶§ È£ÃâµÈ´Ù.

NDIS_STATUS_RESET_IN_PROGRESS
ÇϺÎÀÇ µå¶óÀ̹ö°¡ ÇöÀç NICÀ» ¸®¼ÂÁßÀ̱⠶§¹®¿¡ ÀÌ ¸®Äù½ºÆ®´Â ºÎÀûÀýÇÏ´Ù. °Ô´Ù°¡ È£ÃâÀÚÀÇ ProtocolStatus ÇÔ¼ö´Â ¸®¼ÂÀÌ ÁøÇàÁßÀÓÀ» ¾Ë¸®±â À§Çؼ­ NDIS_STATUS_RESET_START¸¦ °¡Áö°í È£ÃâµÉ °ÍÀÌ´Ù.

NDIS_STATUS_NOT_RESETTABLE
ÇϺÎÀÇ NICÀº ¼ÒÇÁÆ®¿þ¾î ¸í·É¿¡ ÀÇÇØ¼­´Â ¸®¼ÂµÉ ¼ö ¾ø´Ù.

NDIS_STATUS_ADAPTER_REMOVED ȤÀº NDIS_STATUS_FAILURE
È£ÃâÀÚÀÇ ¹ÙÀεùÀÌ ÀÌ¹Ì ´ÝÇû°í ¸®¼ÂÀº ÀÌ È£ÃâÀÚ¸¦ À§Çؼ­ ½ÃµµµÇÁö ¾ÊÀ» °ÍÀÌ´Ù.

NDIS_STATUS_CLOSING
È£ÃâÀÚÀÇ ¹ÙÀεùÀÌ ÇöÀç ´ÝÈ÷°í ÀÖ°í ¸®¼ÂÀº ÀÌ È£ÃâÀÚ¸¦ À§Çؼ­ ½ÃµµµÇÁö ¾ÊÀ» °ÍÀÌ´Ù.

NDIS_STATUS_SOFT_ERRORS
ÇϺÎÀÇ NIC µå¶óÀ̹ö´Â ³ÝÄ«µå¸¦ ¸®¼ÂÇÏÁö¸¸ ÀÌ ¿¬»êµ¿¾È¿¡ ȸº¹ÀÌ °¡´ÉÇÑ ÇϳªÀÌ»óÀÇ Çϵå¿þ¾î ¿¡·¯°¡ ¹ß»ýÇÑ´Ù. NIC µå¶óÀ̹ö´Â ¿¡·¯¸¦ ÀúÀåÇß´Ù.

NDIS_STATUS_HARD_ERRORS
ÇϺÎÀÇ NIC µå¶óÀ̹ö°¡ ³ÝÄ«µå ¸®¼ÂÀ» ½ÃµµÇßÁö¸¸ ÀÌ ¿¬»êµ¿¾È¿¡ ȸº¹ÀÌ °¡´ÉÇÑ Çϵå¿þ¾î ¿¡·¯°¡ ¹ß»ýÇÑ´Ù. NIC µå¶óÀ̹ö´Â ¿¡·¯¸¦ ÀúÀåÇß´Ù.

NDIS_STATUS_NOT_ACCEPTED
ÀÌ °ªÀº º¸Åë NDIS ȤÀº ÇϺÎÀÇ NIC µå¶óÀ̹ö·Î ÇÏ¿©±Ý ¸®Äù½ºÆ®¸¦ ½ÇÆÐÇϵµ·ÏÇϴ ƯÁ¤ NDIS_STATUS_XXX°¡ ¾øÀ» ¶§ ¸®ÅϵǴ ºñƯÁ¤ µðÆúÆ®ÀÌ´Ù.

NdisBindingHandle
È£ÃâÀÚ°¡ ¹ÙÀεùÇÏ´Â ´ÙÀ½ ÇÏÀ§ µå¶óÀ̹öÀÇ °¡»ó ¾î´ðÅÍ È¤Àº Ÿ°Ù NICÀ» È®ÀνÃŰ´Â NdisOpenAdapter ÇÔ¼ö¿¡ ÀÇÇØ¼­ ¸®ÅÏµÈ ÇÚµéÀ» ¼­¼úÇÑ´Ù.

ÁÖ¼®

ÇÁ·ÎÅäÄÝÀÌ NdisReset ÇÔ¼ö¸¦ È£ÃâÇßÀ» ¶§ NDIS°¡ ³»ºÎÀûÀ¸·Î Å¥¿¡ ÀúÀåµÈ ½ÃÀÛÇÏ´Â ÇÁ·ÎÅäÄÝ·ÎÀÇ º¸³»±â ¸®Äù½ºÆ®¸¦ ¿Ï·áÇÒ ¶§±îÁö NDIS ¶óÀ̺귯¸®´Â ÇϺΠNIC µå¶óÀ̹öÀÇ MiniportReset ÇÔ¼ö¸¦ È£ÃâÇÏÁö ¾Ê´Â´Ù. NDIS°¡ ÇϺÎÀÇ NIC µå¶óÀ̹ö¸¦ À§Çؼ­ º¸³»±â Å¥¸¦ Ŭ¸®¾îÇÑ ÈÄ¿¡¸¸ NDIS´Â µå¶óÀ̹öÀÇ MiniportReset ÇÔ¼ö¸¦ È£ÃâÇÑ´Ù.

ÇϺÎÀÇ µå¶óÀ̹ö°¡ ³»ºÎÀûÀ¸·Î º¸³»±â ÆÐŶÀ» Å¥¿¡ ÀúÀåÇÑ´Ù¸é ÇϺÎÀÇ µå¶óÀ̹ö´Â NICÀÇ ¸®¼Â½Ãµµ Àü¿¡ ÇöÀç Å¥¿¡ ÀúÀåÇÏ´Â º¸³»±â ÆÐŶÀ» ¿Ï·áÇÑ´Ù.

°á±¹ °°Àº NIC¿¡ ¹ÙÀεùµÈ ¸ðµç ÇÁ·ÎÅäÄÝ µå¶óÀ̹ö´Â ¸®¼Â¿¬»êµ¿¾È¿¡ ƯÁ¤ º¸³»±â ÆÐŶÀ» À¯ÁöÇØ¾ßÇÑ´Ù. ¸®¼ÂÀÇ ½ÃÀÛÁ¡¿¡¼­ NDIS´Â NDIS_STATUS_RESET_START¸¦ °¡Áö°í °¢°¢ÀÇ ¹ÙÀεùµÈ ÇÁ·ÎÅäÄÝÀÇ ProtocolStatus ÇÔ¼ö¸¦ È£ÃâÇÏ°í ±×¸®°í³ª¼­´Â ´ëÀÀÇÏ´Â ProtocolStatusComplete ÇÔ¼ö¸¦ È£ÃâÇÑ´Ù. ¸®¼Â¿¬»ê¿¡ ÇàÇØÁ³À» ¶§ NDIS´Â NDIS_STATUS_RESET_END¸¦ °¡Áö°í ´Ù½Ã °¢°¢ÀÇ ¹ÙÀεùµÈ ÇÁ·ÎÅäÄÝÀÇ ProtocolStatus ÇÔ¼ö¸¦ È£ÃâÇÑ´Ù. ±×¸®°í³ª¼­ ´ëÀÀÇÏ´Â ProtocolStatusComplete ÇÔ¼ö¸¦ È£ÃâÇÑ´Ù.

°°Àº NIC¿¡ ¹ÙÀεùµÈ ´Ù¸¥ µå¶óÀ̹öó·³ NdisReset ÇÔ¼ö¸¦ È£ÃâÇÏ´Â µå¶óÀ̹öÀÇ ProtocolStatus¿Í ProtocolStatusComplete ÇÔ¼ö´Â ÀÌ Å뺸¸¦ ¹Þ´Â´Ù. ±×·¯³ª NdisReset ÇÔ¼ö°¡ STATUS_PENDINGÀ» ¸®ÅÏÇÑ´Ù¸é ¸®¼Â¿¬»êÀÌ ÇàÇØÁ³À» ¶§ ¿ø·¡ È£ÃâÀÚÀÇ ProtocolResetComplete ÇÔ¼ö¸¸ÀÌ ÀνĵȴÙ.

NDISWAN°ú ¹ÙÀεùµÈ ÇÁ·ÎÅäÄÝÀº °áÄÚ NdisReset ÇÔ¼ö¸¦ È£ÃâÇÏÁö ¾Ê´Â´Ù.

NdisReset ÇÔ¼öÀÇ È£ÃâÀÚ´Â IRQL <= DISPATCH_LEVEL¿¡¼­ ½ÇÇàÇÑ´Ù.