NdisCmActivateVc
NDIS_STATUS
NdisCmActivateVc(
IN NDIS_HANDLE NdisVcHandle,
IN OUT PCO_CALL_PARAMETERS CallParameters
);
|
NdisCmActivateVc´Â Ưº°ÇÑ VC¿¡´ëÇÑ ¹Ìµð¾î ÆÄ¶ó¹ÌÅ͵éÀ» Æ÷ÇÔÇÏ´Â CMÁ¦°ø ÄÝ ÆÄ¶ó¹ÌÅ͵éÀ» ÇÏÀ§ ´Ð µå¶óÀ̹ö¿¡°Ô º¸³½´Ù.
¸Å°³º¯¼ö
- NdisVcHandle
- ÄÝ ÆÄ¶ó¹ÌÅ͵éÀ» ¼³Á¤ÇÏ´Â VC¸¦ È®ÀÎ ÇÏ´Â ÇÚµéÀ» ÁöÁ¤ÇÑ´Ù. ÄÝ ¸Å´ÏÀú´Â µé¾î¿À´Â È£Ãâ¿¡´ëÇÑ NdisCoCreateVc·ÎºÎÅÍ ÀÌ ÇÚµéÀ» ¾ò°Å³ª ȤÀº Ŭ¶óÀÌ¾ðÆ®°¡ ÃʱâÈÇÑ ³ª°¡´Â È£Ãâ¿¡´ëÇÑ ProtocolCoCreateVcÇÔ¼ö¿¡°Ô ÀÔ·Â ÆÄ¶ó¹ÌÅÍ·Î½á ¾ò´Â´Ù.
- CallParameters
- CMÇÒ´ç »óÁÖ ¹öÆÛÀÇ Æ÷ÀÎÅÍ, CO_CALL_PARAMETERSŸÀÔ ±¸Á¶Ã¼·Î½á Æ÷¸ËµÈ, ÇÏÀ§ ¹Ì´ÏÆ÷Æ®°¡ VCȰ¼ºÈ¸¦ À§ÇØ »ç¿ëÇÏ´Â ¸ðµç ¹Ìµð¾î ƯÁ¤ ÆÄ¶ó¹ÌÅ͵éÀ» Æ÷ÇÔÇÏ´Â.
¸®Åϰª
NdisCmActivateVcÇÔ¼ö°¡ NDIS_STATUS_PENDINGÀÌ¿ÜÀÇ ´Ù¸¥ °ÍÀ» ¸®ÅÏÇÒ¶§, ÄÝ ¸Å´ÏÀú´Â ProtocolCmActivateVcCompleteÇÔ¼öÀÇ ³»ºÎÀûÀΠȣÃâÀ» ÇØ¾ß¸¸ÇÑ´Ù. ±×·¸Áö¾ÊÀ¸¸é, NDIS´Â ÀÌ ¿¬»êÀÌ ¿Ï·áµÆÀ»¶§ CMÀÇ ProtocolCmActivateVcCompleteÇÔ¼ö¸¦ È£ÃâÇÑ´Ù.
ÁÖ¼®
NdisCmActivateVcÇÔ¼ö´Â ÇÏÀ§ ´Ð µå¶óÀ̹ö¿¡°Ô »õ·Ó°Ô ¸¸µé¾îÁø VC¿¡´ëÇÑ È£Ãâ°ú ¹Ìµð¾î ÆÄ¶ó¹ÌÅÍ¿Í È£ÃâÀ» ¼³Á¤ÇÏ´Â°Í È¤Àº ¼º¸³µÈ VCÀÇ ÀÌ·¯ÇÑ º¯È¸¦ ¾Ë¸°´Ù. NDIS´Â ÁÖ¾îÁø ÄÝ ÆÄ¶ó¹ÌÅ͵é°ú VCÇÚµéÀ» ÇÏÀ§ ´Ð µå¶óÀ̹öÀÇ MiniportCoActivateVcÇÔ¼ö¿¡°Ô Æ÷¿öµå ÇÑ´Ù. À̰ÍÀº VCÀÇ »óŸ¦ Æ®·¢ÇϱâÀ§ÇÑ ¸ðµç ÇÊ¿äÇÑ ¸®¼Ò½ºµéÀ» ¼³Á¤ÇÏ°í ½º½º·Î ¸¸µé°í VC¿¡´ëÇÑ µ¥ÀÌŸ Àü¼ÛÀ» À§ÇÑ ´Ð Áغñ¸¦ ¼³Á¤ÇÑ´Ù.
VC¿¡´ëÇÑ ¿¬°áÀ» ¼³Á¤ÇÑÈÄ¿¡ ±×·¸Áö¸¸ ¾î¶² µ¥ÀÌŸ°¡ VC·Î º¸³»Áö°Å³ª ¹Þ¾ÆÁö±â Àü¿¡ µ¶ÀÚÀûÀÎ Á¶ÀÛÀÌ °¡´ÉÇÑ CMÀº Ç×»ó NdisCmActivateVcÇÔ¼ö¸¦ È£ÃâÇÑ´Ù. ¿¬°áµÇ¾î Àִµ¿¾È¿¡´ëÇØ, CMÀº ³×Æ®¿÷ º¯È¿¡´ëÇÑ »óÅ ±×¸®°í/ȤÀº Ŭ¶óÀÌ¾ðÆ®°¡ NdisClModifyCallQoSÇÔ¼ö¸¦ È£ÃâÇÒ¶§¸¶´Ù °°ÀºNdisVcHandle·Î NdisCmActivateVcÇÔ¼ö¸¦ ÀÚÁÖ È£ÃâÇÑ´Ù. °¢°¢ÀÇ ±×·± NdisCmActivateVcÇÔ¼öÀÇ È£Ãâ¿¡¼, ÇÏÀ§ ´Ð µå¶óÀ̹öÀÇ MiniportCoActivateVcÇÔ¼ö´Â ´ÙÀ½Áß Çϳª¸¦ ÇØ¾ß¸¸ ÇÑ´Ù.:
- ¸¸¾à ¹Ì´ÏÆ÷Æ®°¡ »õ·Ó°Ô ¼öÁ¤µÈ ÄÝ ÆÄ¶ó¹ÌÅ͵鿡µû¸¥ VC·ÎÀÇ Àü¼ÛµéÀ» ÀÌ·ç´Â°ÍÀ» °è¼ÓÇÒ¼ö ÀÖ´Ù¸é, ´Ð µå¶óÀ̹ö°¡ ÄÝ ¸Å´ÏÀú¿¡ÀÇÇØ Á¦°øÇÑ »õ·Î¿î °ª¿¡´ëÇÑ ÄÝ ÆÄ¶ó¹ÌÅ͵鿡´ëÇØ À¯ÁöÇÏ´Â »óŸ¦ ¾÷µ¥ÀÌÆ®ÇÑ´Ù.
- ¸¸¾à ´Ð µå¶óÀ̹ö°¡ ÁÖ¾îÁø ÄÝ ÆÄ¶ó¹ÌÅÍÀÇ Á¦¾àÇÏ¿¡ Àü¼ÛÀ» ÀÌ·ç´Â°ÍÀ» °è¼ÓÇÒ ¼ö ¾ø´Ù¸é È£ÃâÀº ½ÇÆÐÀÌ´Ù.
ÇÏÀ§¹Ì´ÏÆ÷Æ®°¡ ÄÝ ÆÄ¶ó¹ÌÅ͵éÀÇ ¼³Á¤°ú Àç¼³Á¤ ¿äûÀÌ ½ÇÆÐÇÒ¶§, ÄÝ ¸Å´ÏÀú´Â CallParametersÀÇ ¿ø·¡ Ư¼ºÀº ¼öÁ¤ÇÒ°ÍÀ̰í NdisCmActivateVcÇÔ¼ö¸¦ ´Ù½Ã È£ÃâÇÑ´Ù. ¾î¶² ÄݸŴÏÀú°¡ VC¸¦ Ȱ¼ºÈ ÇÏ·Á´Â ½ÃµµÀÇ ¸¹Àº ¹Ýº¹¿¡´ëÇÑ Á¦ÇÑÀº ±¸Çö¿¡ ÀÇÁ¸ÇÑ´Ù.
NDIS¿¡°Ô NdisCmMakeCallCompleteÀ¸·Î ³ª°¡´Â È£ÃâÀ» ¾Ë¸®±âÀü¿¡, Ŭ¶óÀÌ¾ðÆ®°¡ ÃʱâÈÇÑ ³ª°¡´Â È£Ãâ¿¡´ëÇØ, µ¶¸³ÀûÀÎ CMÀº ÀϹÝÀûÀ¸·Î È£ÃâÀÇ ¸®¸ðÆ® Ÿ°Ù°ú ½ºÀ§Ä¡ÀÇ ÄÝ ¼Â¾÷À¸·Î Çù»óµÈ µ¿ÀǸ¦ È®ÀÎÇÏ´Â ÆÐŶ ±³È¯À» ÀÌÀ¸¸é¼ NdisCmActivateVcÇÔ¼ö¸¦ Áï½Ã È£ÃâÇÑ´Ù. µé¾î¿À´Â È£Ãâ¿¡´ëÇØ, NdisCoCreateVcÇÔ¼öÀÇ ¼º°øÀûÀΠȣÃâÈÄ ±×¸®°í NdisCmDispatchIncomingCallÇÔ¼öÀÇ È£ÃâÀü¿¡ ÄÝ ¸Å´ÏÀú´Â ÀϹÝÀûÀ¸·Î NdisCmActivateVcÇÔ¼ö¸¦ È£ÃâÇÑ´Ù.
³ª°¡´Â È£ÃâÀÇ ¼³Á¤°úÁ¤¿¡¼ ±×¸®°í ¾î¶² VC°¡ Ȱ¼ºÈ »óÅ·Π³²¾ÆÀÖ´Â µ¿¾È, Ŭ¶óÀÌ¾ðÆ®´Â VC¿¡´ëÇÑ ÄÝ ÆÄ¶ó¹ÌÅÍ¿¡´ëÇÑ º¯È¸¦ ¿äûÇÒ¼öÀÖ´Ù. ¿¹¸¦µé¾î, NdisClModifyCallQosÀÇ È£Ãâ¿¡ÀÇÇØ. ¾î¶² ±×·± ¿äû¿¡´ëÇØ ÁÖ¾îÁø ÄÝ ÆÄ¶ó¹ÌÅÍÀÇ À¯È¿¸¦ ¼öÁ¤ÇÑÈÄ, µ¶¸³ÀûÀÎ ÄÝ ¸Å´ÏÀú´Â ¼öÁ¤µÈ ÄÝ ÆÄ¶ó¹ÌÅ͸¦ ÇÏÀ§ ¹Ì´ÏÆ÷Æ®¿¡°Ô º¸³»±âÀ§ÇØ NdisCmActivateVcÇÔ¼ö¸¦ È£ÃâÇØ¾ß¸¸ÇÑ´Ù.
NDIS·Î ÇÁ·ÎÅäÄÝ¿¡°Ô ½º½º·Î µî·Ï ÇÒ¼öÀÖ´Â ´ÜÁö µ¶¸³ÀûÀÎ ÄÝ ¸Å´ÏÀú¸¸ÀÌ NdisCmActivateVcÇÔ¼ö¸¦ È£ÃâÇÒ¼ö ÀÖ´Ù. ÅëÇÕµÈ ÄÝ ¸Å´ÏÀú Áö¿øÀ» Á¦°øÇÏ´Â ¿¬°áÁöÇâ ´Ð ¹Ì´ÏÆ÷Æ®´Â NdisMCmActivateVcÇÔ¼ö¸¦ ´ë½Å È£ÃâÇÑ´Ù.
NdisCmActivateVcÀÇ È£ÃâÀÚ´Â IRQL <= DISPATCH_LEVEL¿¡¼ µ¿À۵ɼöÀÖ´Ù.
|