NdisReadConfiguration

VOID

  NdisReadConfiguration(

    OUT PNDIS_STATUS  Status,

    OUT PNDIS_CONFIGURATION_PARAMETER  *ParameterValue,

    IN NDIS_HANDLE  ConfigurationHandle,

    IN PNDIS_STRING  Keyword,

    IN NDIS_PARAMETER_TYPE  ParameterType

    );

NdisReadConfigurationÀº ¿­¸° ·¹Áö½ºÆ®¸® Ű¿¡ ´ëÇÑ ÇÚµéÀÌ ÁÖ¾îÁø´Ù¸éÀº ·¹Áö½ºÆ®¸®·ÎºÎÅÍ Æ¯Á¤ ŸÀÔÀÇ À̸§À» °¡Áø ¿£Æ®¸®¿¡ ´ëÇÑ °ªÀ» ¸®ÅÏÇÑ´Ù.

¸Å°³º¯¼ö

Status
ÀÌ ÇÔ¼ö°¡ ´ÙÀ½°ú °°Àº ÇϳªÀÇ °ªÀ¸·Î È£Ãâ¿¡ ´ëÇÑ »óŸ¦ ¸®ÅÏÇϴ ȣÃâÀÚ Á¦°ø º¯¼ö¸¦ °¡¸®Å²´Ù.

NDIS_STATUS_SUCCESS
ParameterValue¿¡ ÁöÁ¤µÈ ¹öÆÛ´Â ¸®ÅÏµÈ ±¸¼º Á¤º¸¸¦ Æ÷ÇÔÇÑ´Ù.

NDIS_STATUS_RESOURCES
NDIS´Â ¿ä±¸µÈ Á¤º¸¸¦ ¸®ÅÏÇϱâ À§ÇÑ ÃæºÐÇÑ ¸Þ¸ð¸®·Î ÀÚ¿øÀ» ÇÒ´çÇÒ ¼ö ¾ø´Ù.

NDIS_STATUS_FAILURE
¿ä±¸µÈ Á¤º¸´Â ConfigurationHandle¿¡ ÀÇÇØ ÁöεÈ(designated) ¿­¸° ·¹Áö½ºÆ®¸® Ű ¾Æ·¡¿¡ ¹ß°ßµÉ ¼ö ¾ø´Ù.

ParameterValue
NdisReadConfiguration¿¡ ´ëÇÑ ¼º°øÀûÀΠȣÃâÀÌ ¾Æ·¡ Á¤ÀÇµÈ NDIS_CONFIGURATION_PARAMETER¿¡ ´ëÇÑ Æ÷ÀÎÅ͸¦ ¸®ÅÏÇϴ ȣÃâÀÚ Á¦°ø º¯¼ö¸¦ °¡¸®Å²´Ù.

typedef struct _NDIS_CONFIGURATION_PARAMETER

{

   NDIS_PARAMETER_TYPE ParameterType;

   union

   {

      ULONG IntegerData;

      NDIS_STRING StringData;

   } ParameterData;

} NDIS_CONFIGURATION_PARAMETER, *PNDIS_CONFIGURATION_PARAMETER;

ÀÌ ±¸Á¶Ã¼ÀÇ ¸â¹ö´Â ´ÙÀ½ÀÇ µ¥ÀÌÅ͸¦ Æ÷ÇÔÇÑ´Ù.

ParameterType
¸¸¾à È£ÃâÀÌ ¼º°øÀûÀ̶ó¸éÀº ParameterType¿¡ °ªÀÌ ÀÏÄ¡ÇÑ´Ù.

ParameterData
ÁÖ¾îÁø À̸§ÀÇ ¿£Æ®¸® °ªÀ» ÁöÁ¤ÇÑ´Ù. ¸¸¾à ParameterTypeÀÌ ¹®ÀÚ¿­ ŸÀÔÀ̸éÀº ÀÌ ¸â¹ö´Â ½Ã½ºÅÛ µðÆúÆ® ¹®ÀÚ ¼ÂÀÎ ¹öÆÛÈ­µÇ°í, Ä«¿îƮȭµÈ ¹®ÀÚ¿­ Æ÷ÀÎÅÍÀÌ´Ù. À©µµ¿ìÁî NT¿¡¼­ ±×·¯ÇÑ ¹®ÀÚ¿­Àº À¯´ÏÄÚµå ¹®ÀÚµéÀ» Æ÷ÇÔÇÑ´Ù.

ConfigurationHandle
NIC µå¶óÀ̹öÀÇ ..\DriverName\Parameters ·¹Áö½ºÆ®¸® ŰÀÎ NdisOpenConfiguration¿¡ ÀÇÇØ ¸®ÅÏµÈ ÇÚµéÀ» ÁöÁ¤Çϰųª ·¹Áö½ºÆ®¸®ÀÇ ÇÁ·ÎÅäÄÝ ¼½¼Ç ºÎºÐ¿¡ ÇÁ·ÎÅäÄÝÀÇ ..\NICDriverInstance\Parameters\ProtocolName ŰÀÎ NdisOpenProtocolConfiguration¿¡ ÀÇÇØ ¸®ÅÏµÈ ÇÚµéÀ» ÁöÁ¤ÇÑ´Ù.

keyword
°ªÀ» ¸®ÅÏÇϱâ À§ÇØ ¿­¸° ·¹Áö½ºÆ®¸® Ű ¾Æ·¡¿¡ ¿£Æ®¸®ÀÇ À̸§À» ÁöÁ¤ÇÏ´Â ½Ã½ºÅÛ µðÆúÆ® ¹®ÀÚ¼ÂÀΠȣÃâÀÚ Á¦°ø Ä«¿îÆ®µÈ ¹®ÀÚ¿­À» °¡¸®Å²´Ù.

ÀÌ ¸Å°³º¯¼ö´Â ¶ÇÇÑ ¸ðµç NDIS µå¶óÀ̹öµéÀ» À§ÇØ ´ÙÀ½¿¡ ¹Ì¸® Á¤ÀÇµÈ ±Û·Î¹ú Ű¿öµåÁß¿¡ Çϳª¸¦ °¡¸®Å³ ¼ö ÀÖ´Ù.

¹Ì¸® Á¤ÀÇµÈ Å°¿öµå ¹Ì¸® Á¤ÀÇµÈ ¸®Åϰª
Environment NdisEnvironmentWindowsNt
NdisEnvironmentWindows
ProcessorType NdisProcessorX86
//
//
Following possible only if
// current machine's Environment ==
// NdisEnvironmentWindowsNt
//

NdisProcessorAlpha
//
Following possible only if legacy driver
NdisProcessorMips
NdisProcessorPpc
NdisVersion 0xMMMMmmmm
// where MMMM is the major version and
// mmmm the minor version number.
// For example, 0x00050000 indicates the
// the driver is connection-oriented
// (current version of NDIS library), while
// 0x00040000 indicates the driver
// uses underlying connectionless media.

ParameterType
´ÙÀ½Áß Çϳª·Î¼­ °ª ¿£Æ®¸® ŸÀÔÀ» ÁöÁ¤ÇÑ´Ù.

NdisParameterInteger
½ÊÁø Ç¥±â·Î Á¤¼ö¸¦ ÁöÁ¤ÇÑ´Ù.

NdisParameterHexInteger
16Áø Ç¥½Ã·Î Á¤¼ö¸¦ ÁöÁ¤ÇÑ´Ù.

NdisParameterString
ŸÀÔ NDIS_STRINGÀÇ ¹®ÀÚ¿­À» ÁöÁ¤ÇÑ´Ù. À©µµ¿ìÁî NT µå¶óÀ̹ö¸¦ À§ÇØ, ÀÌ °ªÀº ¼ýÀÚÈ­µÈ À¯´ÏÄÚµå ¹®ÀÚ¿­ÀÌ´Ù.

NdisParameterMultiString
À©µµ¿ìÁî NT Á¤ÀÇµÈ REG_MULTI_SZ ŸÀÔÀÇ ¸ÖƼ ¹®ÀÚ¿­ ¸Å°³º¯¼ö¸¦ ÁöÁ¤ÇÑ´Ù.

ÁÖ¼®

À©µµ¿ìÁî NT ±¸¼º ·¹Áö½ºÆ®¸®¿¡¼­ NDIS Ű¿öµå´Â °ª ¿£Æ®¸® À̸§°ú ºñ½ÁÇÏ´Ù. ±×·¯ÇÑ À̸§Àº 0À¸·Î ³¡³ª´Â ¼ýÀÚÈ­µÈ ¿¬¼ÓÀûÀÎ À¯´ÏÄÚµå ¹®ÀÚµéÀÌ´Ù.

¸ðµç NDIS µå¶óÀ̹ö´Â ¼³Ä¡ ½ºÅ©¸³Æ®¸¦ »ç¿ëÇÏ¿© µå¶óÀ̹öÀÇ Parameters Ű ¾Æ·¡¿¡ ·¹Áö½ºÆ®¸®³»¿¡ ±¸¼º Á¤º¸¸¦ ¼³Á¤ÇÒ ¼ö ÀÖ´Ù. ¿¹¸¦ µé¾î, ÇÁ·ÎÅäÄÝ µå¶óÀ̹ö´Â NdisRegisterProtocol È£Ãâ¿¡ Àü´ÞµÉ ¼ö ÀÖ´Â ¹Ì¸® Æ÷¸ËÈ­µÈ ¹®ÀÚ¿­ °ªÀ» ¿£Æ®¸®·Î¼­ ÀÚ½ÅÀÇ À̸§À» ÀúÀåÇÒ ¼ö ÀÖ´Ù.

°¢ NIC µå¶óÀ̹ö´Â ¶ÇÇÑ µå¶óÀ̹öÀÇ Parameters ·¹Áö½ºÆ®¸® Ű ¾Æ·¡¿¡ °ª ¿£Æ®¸®µéÀÌ °ü·ÃµÇ¾î ÀÖ´Ù. ¾î¶² ƯÁ¤ NIC µå¶óÀ̹ö¸¦ À§ÇØ °ª ¿£Æ®¸®µéÀº ¿ø·¡ ÀåÄ¡ Á¾¼ÓÀÌ µÉ ¼ö ÀÖ´Ù. ¿¹¸¦ µé¾î, ÀÌ´õ³Ý NIC µå¶óÀ̹ö´Â InterruptNumber, SharedMemoryAddress, MulticastListSize ¿Í °°Àº Ű¿öµåµéÀ» °¡Áú °ÍÀÌ´Ù. ±×·¯ÇÑ NDIS Ű¿öµå °°Àº °ü·ÃµÈ °ªÀº Á¤¼ö(ULONG-ŸÀÔ) ȤÀº ¹®ÀÚ¿­ (NDIS_STRING - ŸÀÔ)ÀÌ µÉ ¼ö ÀÖ´Ù. ¿¹¸¦ µé¾î, ÀÌ¹Ì ¾ð±ÞµÈ InterruptNumber ¿£Æ®¸®¸¦ À§ÇÑ °¡´ÉÇÑ °ªµéÀº NdisParameterInter °ªµé 2, 3, 4, 5 ȤÀº NdisParameterHexInteger °ªÀ¸·Î 16Áø¼ö·Î °°Àº °ªÀÌ µÉ ¼ö ÀÖ´Ù.

NdisReadConfiguration Keyword¿¡ È£ÃâÀÚ Á¦°ø ¹®ÀÚ¿­À» ¹öÆÛÈ­Çϰí Ä«ÇÇÇϰí È£ÃâÀÚ¿¡°Ô Á¦¾î¸¦ ¸®ÅÏÇϱâ Àü¿¡ ÀÌ º¹»ç¸¦ À§ÇØ ÇÒ´çµÈ ÀúÀå°ø°£À» ÇØÁ¦ÇÑ´Ù. NDIS_CONFIGURATION_PARAMETER ±¸Á¶Ã¼¸¦ À§ÇØ ÇÒ´çµÈ ¸Þ¸ð¸®´Â µå¶óÀ̹ö°¡ NdisCloseConfiguration¿¡ ConfigurationHandleÀ» ÇØÁ¦ÇÒ ¶§ ÇØÁ¦µÇ¾îÁø´Ù. NdisReadConfigurationÀÇ È£ÃâÀÚ´Â Keyword¿¡ ¹öÆÛÈ­µÈ ¹®ÀÚ¿­À» ÇØÁ¦ÇÒ Ã¥ÀÓÀÌ ÀÖ´Ù.

¼Â¾÷°ú ¼³Ä¡ ½ºÅ©¸³Æ®¿¡ °üÇÑ ´õ ÀÚ¼¼ÇÑ Á¤º¸´Â, Programmer's Guide¸¦ ºÁ¶ó.

NdisReadConfiguration¿¡ ´ëÇÑ È£ÃâÀÚ´Â IRQL PASSIVE_LEVEL¿¡¼­ ½ÇÇàÇÑ´Ù.