none
Icmpsendecho API is unable to send echo messages(ping) on compact 7 RRS feed

  • General discussion

  • Hi All,

    Hardware Configuration -

    Processor - TI OMAP4470

    OS: Windows Embedded Compact 7

    Ethernet IC - SMSC9500(USB to Ethernet adapter)

    I connected the target device with my PC through a ethernet cable, I gave a static IP address to the  target device and my PC. When I tried pinging the device from my PC I was able to get the response from the target. It works fine from my PC side. The problem is.. I don't get the response from my PC if i try to ping from the device. It throws the below error.

    ping:transfer failed, error code 87

    I tried pinging the IP set to target even then it is throwing the above error.

    To enable ICMP echo request I followed the below link to set a new rule to windows firewall on my PC but failed to resolve the issue

    http://www.sysprobs.com/enable-ping-reply-windows-7

    When i tried connecting two target devices together thorugh ethernet cable and tried pinging each other but it throws 

    ping:transfer failed, error code 87 error.

     When I refered the datasheet of SMSC9500 I got to know that it supports ICMP protocol.

    I am sure the problem is not my PC side can anyone tell me what should I do on WEC7 platform to enable Icmp echo messages??

    Regards,

    James

    Friday, September 20, 2013 11:41 AM

All replies

  • hi folks,

    Can anyone help? what needs to be set in the registry to enable ICMP echo messages??

    Regards,

    James

    Tuesday, September 24, 2013 5:25 AM
  • Error 87 is invalid parameter - look it up in winerror.h.

    That leads me to ask how you are pinging?   That and the use of the wording "It throws the below error." which might suggest that you are doing this in code.


    Bruce Eitman (eMVP)
    Senior Engineer
    Bruce.Eitman AT Eurotech DOT com
    My BLOG http://geekswithblogs.net/bruceeitman

    Eurotech Inc.
    www.Eurotech.com

    Tuesday, September 24, 2013 12:39 PM
    Moderator
  • Hi Bruce,

    I meant the ping.exe is throwing me the error . I am actually opening a cmd prompt and giving the below command line

    eg- ping 192.168.1.11

    error-ping:transmit failed, error code 87

    I have also tried with loop back address(127.0.0.1). it gives the same error. I am referring the ping.c  file in the below path 

    C:\WINCE700\public\common\oak\drivers\netsamp\ping\ping.c

    Is it the problem in WEC7 or some problem in my TCP\IP stack settings??

    Regards,

    James

    Tuesday, September 24, 2013 1:47 PM
  • Ping works in WEC7.

    Does anything else work over your network?

    What update/QFEs do you have installed?

    Have you looked at ping.c to see if you can find where the error occurs and what it is doing when the error occurs?


    Bruce Eitman (eMVP)
    Senior Engineer
    Bruce.Eitman AT Eurotech DOT com
    My BLOG http://geekswithblogs.net/bruceeitman

    Eurotech Inc.
    www.Eurotech.com

    Tuesday, September 24, 2013 5:29 PM
    Moderator
  • Hi Bruce,

    I can access to internet over my network. I have installed the platform builder in my PC in the month of June 2013. I haven't installed any updates/QFE after that. Do you suggest me to install any QFEs?  http://support.microsoft.com/kb/2678235/en-us

    In the above link I found that Icmpsendecho function had a timeout parameter issue.. does this QFE fix my issue?

    I haven't looked deep into ping.c but what I harve seen is it uses Icmpsendcho API to send echo messages and in my case it fails to do so and throws me the below message

    ping:transmit failed, error code 87..

    Regards,

    James

    Tuesday, September 24, 2013 6:07 PM

  • Hi,

    The code snippet from ping .c is as shown below

    numberOfReplies = IcmpSendEcho(hIcmp, ((LPSOCKADDR_IN)&address)->sin_addr.s_addr, 
                                                   SendBuffer, (unsigned short) SendSize,
                                                   &SendOpts, RcvBuffer, RcvSize, Timeout);

                    if (numberOfReplies == 0)
                    {
                        errorCode = GetLastError();

                        OutputMessage(TEXT("PING: transmit failed, error code %lu\r\n"),
                                    errorCode);

                    }

    else

    {...

    ... It prints the IP address of the receiver from which it gets the reply, Number of bytes obtained,

    ... time taken etc....

                     }

        Regards,

        James

    Wednesday, September 25, 2013 6:31 AM
  • Hi Bruce,

    I found one registry entry missing in my SMSC9500.reg file(miniport driver) i.e TCP/IP stack was not linked to the miniport driver. I have added it now as shown below but still no luck. I am unable to do pinging to other devices.

    [HKEY_LOCAL_MACHINE\Comm\Tcpip\Linkage]
    "Bind"=multi_sz:"SMSC95001" 

    My registry entry has the following details 

    [HKEY_LOCAL_MACHINE\Drivers\USB\LoadClients\1060_38144\Default\Default\SMSC9500]
        "DLL"="SMSC9500.DLL"
        "Prefix"="LAN"

    [HKEY_LOCAL_MACHINE\Drivers\USB\LoadClients\1060_38153\Default\Default\SMSC9500]
        "DLL"="SMSC9500.DLL"
        "Prefix"="LAN"

    [HKEY_LOCAL_MACHINE\Drivers\USB\LoadClients\1060_40448\Default\Default\SMSC9500]
        "DLL"="SMSC9500.DLL"
        "Prefix"="LAN"

    [HKEY_LOCAL_MACHINE\Drivers\USB\LoadClients\1060_40449\Default\Default\SMSC9500]
        "DLL"="SMSC9500.DLL"
        "Prefix"="LAN"

    [HKEY_LOCAL_MACHINE\Drivers\USB\LoadClients\1060_60416\Default\Default\SMSC9500]
        "DLL"="SMSC9500.DLL"
        "Prefix"="LAN"

    [HKEY_LOCAL_MACHINE\Drivers\USB\ClientDrivers\SMSC9500]
        "DLL"="SMSC9500.DLL"
        "Prefix"="LAN"

    [HKEY_LOCAL_MACHINE\Comm\SMSC9500]
        "DisplayName"="SMSC9500 USB2.0 Fast Ethernet Driver"
        "Group"="NDIS"
        "ImagePath"="smsc9500.dll"

    [HKEY_LOCAL_MACHINE\Comm\SMSC9500\Linkage]
        "Route"=multi_sz:"SMSC95001"

    [HKEY_LOCAL_MACHINE\Comm\Tcpip\Linkage]
    "Bind"=multi_sz:"SMSC95001" 

    [HKEY_LOCAL_MACHINE\Comm\SMSC95001]
        "DisplayName"="SMSC9500 USB2.0 FAST Ethernet Driver"
        "Group"="NDIS"
        "ImagePath"="smsc9500.dll"

    [HKEY_LOCAL_MACHINE\Comm\SMSC95001\Parms]

        "InstanceIndex"=dword:1
        "BusNumber"=dword:0
        "BusType"=dword:0
        "PhyAddress"=dword:1 ; PHY address (0x20:Auto, 0xFF:Internal)
        "MediaType"=dword:0
       "CustomCapa"=dword:0
        "FlowControl"=dword:1


         "VlanID"=dword:0 ;Vlan Tag ID
         "PriorityVlanTag"=dword:0

         "AutoMdix"=dword:3                 ;AMDIX_DISABLE_STRAIGHT 0x00000000UL

         "AutoMdixMode"=dword:0


         "SleepPhyOnLinkDown"=dword:0 ;Only for LAN9500A
                                            ;0 disabled,     1 Enabled

         "DetachOnLinkDownMode"=dword:1     ;Only for LAN9500A
    ;0 disabled,     1 Enabled

         "EDPDConfig"=dword:0 ;Only for LAN9500A
    ;0 disabled,     1 Enabled
         "SDReconnectGpio"=dword:c


    [HKEY_LOCAL_MACHINE\Comm\SMSC95001\Parms\TcpIp]
    "EnableWINS"=dword:1
    ;    "IpAddress"="192.168.8.50"
    ;    "Subnetmask"="255.255.255.0"
    ;    "DefaultGateway"="192.168.8.1"
            "UseZeroBroadcast"=dword:0
    "EnableAddrMaskReply"=dword:1
    "EnableICMPRedirect"=dword:1



    [HKEY_LOCAL_MACHINE\Comm\SMSC95002]
        "DisplayName"="SMSC9500 USB2.0 FAST Ethernet Driver"
        "Group"="NDIS"
        "ImagePath"="smsc9500.dll"

    [HKEY_LOCAL_MACHINE\Comm\SMSC95002\Parms]
        "InstanceIndex"=dword:2
        "BusNumber"=dword:0
        "BusType"=dword:0
        "PhyAddress"=dword:1 ; PHY address (0x20:Auto, 0xFF:Internal)
        "MediaType"=dword:0

       "CustomCapa"=dword:0
        "FlowControl"=dword:1
         "VlanID"=dword:0 ;Vlan Tag ID
         "PriorityVlanTag"=dword:0

         "AutoMdix"=dword:3                 ;AMDIX_DISABLE_STRAIGHT 0x00000000UL

         "AutoMdixMode"=dword:0

         "SleepPhyOnLinkDown"=dword:0 ;Only for LAN9500A
                                            ;0 disabled,     1 Enabled

         "DetachOnLinkDownMode"=dword:1     ;Only for LAN9500A
    ;0 disabled,     1 Enabled

         "EDPDConfig"=dword:0 ;Only for LAN9500A
    ;0 disabled,     1 Enabled
         "SDReconnectGpio"=dword:c



    [HKEY_LOCAL_MACHINE\Comm\SMSC95002\Parms\TcpIp]
        "EnableWINS"=dword:1
    ;"EnableDHCP"=dword:1
    ;    "IpAddress"="192.168.3.50"
    ;    "Subnetmask"="255.255.255.0"
     ;   "DefaultGateway"="192.168.8.1"
        "UseZeroBroadcast"=dword:0
    "IpEnableRouter"=dword:1
    "IpInitializeRouter"=dword:1

    [HKEY_LOCAL_MACHINE\SMSC]
        "NdisLoaded"=dword:0               ;Use this key to indicate Ndis is already loaded

    can anyone tell me what is missing in my registry? any other TCP\IP configuration to be done?

    Regards,

    James

    Wednesday, September 25, 2013 3:48 PM
  • Suspicious entries:

     "PhyAddress"=dword:1 ; PHY address (0x20:Auto, 0xFF:Internal)

    What does "1" mean?

    [HKEY_LOCAL_MACHINE\Comm\SMSC95001\Parms\TcpIp]
    "EnableWINS"=dword:1
    ;    "IpAddress"="192.168.8.50"
    ;    "Subnetmask"="255.255.255.0"
    ;    "DefaultGateway"="192.168.8.1"
            "UseZeroBroadcast"=dword:0
    "EnableAddrMaskReply"=dword:1
    "EnableICMPRedirect"=dword:1

    Does your device (instance 1, here, but instance 2 is the same) have an IP address? Have you tried IPCONFIG /ALL? DHCP isn't enabled and you have not assigned a static IP.

    My 2 first guesses:

    1. Hardware/MAC address is wrong so no network I/O will work right. Did you design this USB Ethernet adapter? If so, what is the Ethernet address? If you don't know, I think you found the problem!

    2. TCP/IP address is wrong so no IP-based network operations will work right. Try EnableDHCP= DWORD:1.

    Paul T.

    Wednesday, September 25, 2013 5:37 PM
  • Hi paul, 

    Thanks for your reply. I give a static address after my system boots up. So that is not an issue.

    For your kind information I didn't design USB ethernet adapter.

    I have even tried enabling DHCP but the problem remains in both the cases(DHCP and static IP). On further research in the below links I found that when ever we have multiple instances of the same device.

    we declare  it as  "PhyAddress"=dword:1.

    http://microsoft.public.windowsce.embedded.narkive.com/lrxEpAdZ/multiple-nics-on-wince-6-0

    http://e2e.ti.com/support/embedded/wince/f/353/p/249508/877644.aspx

    I also found that they define IoBaseAddress eg: "IoBaseAddress"=dword:0C000000. 

    In my case I don't have it defined. Do you want me to define it? If yes, where do I find it? Is it mandatory?

    what is the significance of having multiple instances? I have not routed my second instance. do u suggest me to remove it?

    Regards,

    James

    Thursday, September 26, 2013 9:00 AM
  • hi Folks,

    I am unable to fix the problem. Since I am new to Ethernet and TCP/IP stack I am unable to figure out where should I look in to so that I can make ping work on WEC7 platform. How is miniport driver responsible for this?

    I know it is very high level question but please kindly assist me.

    Regards,

    James

    Friday, September 27, 2013 12:51 PM
  • What hardware do you actually HAVE? As with every Windows driver you can't use a driver for the wrong hardware and expect it to work correctly. Do you have an SMSC LAN9500-based USB to Ethernet adapter?

    Your referenced links are for other adapters so the settings do not mean the same things.

    You do not need a base address setting (if you're using an SMSC LAN9500) because it connects via USB, not memory addresses.

    If you are using the LAN9500 via USB, undo all changes to the REG file that came with your adapter, rebuild your OS and reboot your device. After boot open an MS-DOS window on the device and type 'IPCONFIG /ALL' and tell us what is returned. This will tell us whether the Ethernet adapter is recognized (do you have the right driver, for example?) and if so whether it has a valid IP address. Once those two things happen we can progress to actually communicating using the device.

    Paul T.

    Friday, September 27, 2013 5:20 PM
  • Network communications use a layer called NDIS to manage network hardware devices called "adapters". An adapter might connect with USB, might plug into an expansion slot of some type, or might be integrated onto the motherboard. Each adapter has a miniport driver which plugs into NDIS, allowing most of the network I/O to be handled by NDIS and implementing only the specific hardware differences for the specific hardware. You must have the right driver for your hardware just as you must have the right printer driver on desktop Windows to print. Wrong driver = no print-out or garbage on the page.

    Forget about "make ping work". Ping is a diagnostic that will help determine if your network device is working, not a goal. If your device is working, ping will work and so will other communication. The goal is to get your network device working. For that you must have the CORRECT driver for YOUR HARDWARE and configure the driver to work with your build of Windows CE.

    Paul T.

    Friday, September 27, 2013 5:26 PM
  • Hi Paul,

    Thanks for your reply. I have SMSC LAN9500 and I am using the right driver for the hardware.

    Here in my case My device is working completely fine. I am even able to access internet but the only problem is ping.exe doesn't work. I know it is a diagnostic tool but I don't know why only this tool not working. With tracert tool(tracert -4 192.168.1.11, I have set the IP statically.) I am getting the below error.

    "Unable to contact IP driver. Error code 0".

    Actually I am performing the below test(link) and I am ending up getting many failures.

    http://msdn.microsoft.com/en-us/library/gg154810(v=winembedded.70).aspx

    
    Ethernet adapter Local Area Connection:
             IPv4 Address ...... : 192.168.1.11
             Subnet Mask ....... : 255.255.255.0
             IPv6 Address ...... : fe80::b0b9:99ac:b21f:29c1%2
             Default Gateway ... : 0.0.0.0
             Adapter Name ...... : SMSC95001
             Description ....... : SMSC95001
             Adapter Index ..... : 2
             Physical Address... : 00-80-0f-11-70-00
             DHCP Enabled....... : NO
             Primary WinsServer  :
             Secondary WinsServer:
    		 
             Host name.......... : WindowsCE
             Domain Name........ :
             NODETYPE........... :  0        Routing Enabled.... : YES
             Proxy Enabled...... :  NO
    

    The above information I can see when I run ipconfig on my device..

    Please assist..

    Regards,

    James

    Monday, September 30, 2013 12:14 PM
  • OK, back another step. You are running PING or you are running the test kit? If you're using the test kit, drop that for now and let's actually use Ping. How is the network built? You have your CE device direct-cabled to your PC or you have a normal hub/router configuration?

    What device are you pinging (it's your PC or your cable modem or what?)? What is that target device's IP address? The IPCONFIG output above represents your CE device's network connection when you do this ping, yes?

    -----

    First thing to try:

    ping localhost

    This should show a ping transaction to an IP. Record that IP and the results.

    Next:

    ping <ip address of your CE device, 192.168.1.11; ping yourself another way>

    Next:

    ping <ip of the target device mentioned above>

    This should show some attempted transactions and some results.

    -----

    Finally we have to talk about your statement that the CE device can reach the Internet. Your gateway indicated from IPCONFIG above will not allow Internet access. If that actually is your adapter/driver setup and if you can browse the Web using the CE device, your adapter is not being used to achieve that and we're missing some information from you!

    Paul T.

    Monday, September 30, 2013 6:53 PM
  • Hi Paul,

    The test kit tests Icmpsendecho API where the ICMP protocol has been implemented.  So, I went through ping application and got to know that even ping is using the same API to send echo messages. According to me if ping works fine on WEC7 the test kit will automatically pass.

    When ever I try to ping my system I try to remove it from the network and connect it to the CE device with a LAN cable and perform the test. Since only two devices are connected together I don't think we need to give a gateway. The above ipconfig is taken when the CE device was not connected to the internet.

    Also I have taken care of the below things in the link while performing the test.

    http://www.sysprobs.com/enable-ping-reply-windows-7

    ipconfig -all
    Windows IP configuration
    
    Ethernet adapter Local Area Connection:
             IPv4 Address ...... : 192.168.1.10
             Subnet Mask ....... : 255.255.255.0
             IPv6 Address ...... : fe80::25d1:f030:52a9:729c%7
             Default Gateway ... : 192.168.1.1
             Adapter Name ...... : SMSC95001
             Description ....... : SMSC95001
             Adapter Index ..... : 7
             Physical Address... : 00-80-0f-11-70-00
             DHCP Enabled....... : NO
             Primary WinsServer  :
             Secondary WinsServer:
    
             Host name.......... : A4NF00000000000
             Domain Name........ :
             NODETYPE........... :  0        Routing Enabled...
             Proxy Enabled...... :  NO
    
    \> ping 127.0.0.1
    Pinging Host 127.0.0.1
    PING: transmit failed, error code 87
    PING: transmit failed, error code 87
    PING: transmit failed, error code 87
    PING: transmit failed, error code 87
    \> ping 192.168.1.10
    Pinging Host 192.168.1.10
    PING: transmit failed, error code 87
    PING: transmit failed, error code 87
    PING: transmit failed, error code 87
    PING: transmit failed, error code 87
    \> ping 192.168.1.11
    Pinging Host 192.168.1.11
    PING: transmit failed, error code 87
    PING: transmit failed, error code 87
    PING: transmit failed, error code 87
    PING: transmit failed, error code 87

    The above is the result obtained when two CE devices  were connected and the other device IP address is set as shown below

    	
    Ethernet adapter Local Area Connection:
             IPv4 Address ...... : 192.168.1.11
             Subnet Mask ....... : 255.255.255.0
             IPv6 Address ...... : fe80::b0b9:99ac:b21f:29c1%2
             Default Gateway ... :192.168.1.1
             Adapter Name ...... : SMSC95001
             Description ....... : SMSC95001
             Adapter Index ..... : 2
             Physical Address... : 00-80-0f-11-70-00
             DHCP Enabled....... : NO
             Primary WinsServer  :
             Secondary WinsServer:
    		 
             Host name.......... : WindowsCE
             Domain Name........ :
             NODETYPE........... :  0        Routing Enabled.... : YES
             Proxy Enabled...... :  NO


    Regards,

    James

    Tuesday, October 1, 2013 6:55 AM
  • I note that both of your CE devices have the same Physical Address. That's VERY BAD. I don't know absolutely that this will cause PING to fail, but it indicates a problem in your design. Certainly "bad MAC address" causes many odd responses. This is job #1.

    So there's something nagging from the back of my memory about trying to ping across a direct cable connection. You are using a cross-over cable not standard Ethernet cable?

    I'd hook everything together on a regular network and give that a try once the MAC address error is fixed.

    Paul T.

    Tuesday, October 1, 2013 4:26 PM
  • Hi Paul,

    I have tried pinging CE devices connected together with a standard Ethernet cable and also with cross cover cable but no luck.

    I will check why there is same MAC address in both the devices and get back to you. If there is any other pointers please let me know.

    Regards,

    James 

    Tuesday, October 1, 2013 8:44 PM
  • The MAC stands alone at the top of the list. I don't know what would happen if I built 2 devices with the same MAC and connected them directly to one another but I know that a router or switch would not work properly. Maybe it's the same here.

    Paul T.

    Tuesday, October 1, 2013 10:44 PM
  • Hi Paul,

    Thanks for the reply. I agree that all my CE devices over here have the same MAC ID but also like to share a point with you.. If two  CE devices are connected together and tried pinging each other may not work because the MAC ID is the same(I am working on this.For time being let's assume MAC ID is creating problem ) but why I am unable to ping the system from CE device when CE device and my system are connected together with a LAN(not cross-over) cable?

    They have different MAC ID and I have also taken care of the things mentioned in the below link and disabled firewall.

    http://www.sysprobs.com/enable-ping-reply-windows-7

    What is your take on this buddy?

    Regards,

    James 

    Wednesday, October 2, 2013 4:20 AM
  • If everything started from ground zero, no routing tables in your Enet switches, no routing table on your PC, no routing table in your CE device and valid MAC address, ping should work. That would mean you powered off your network, powered off the PC, and powered off the CE device, restarting and running everything.

    If it didn't work, then the network driver configuration would be suspect (registry entries), as would the actual hardware configuration (is IPCONFIG MAC address actually the one in the hardware loaded from on-adapter EEPROM or some phony one reported by the driver? is the driver supposed to do something to transfer the MAC address from EEPROM to actual Ethernet chip; maybe it's not doing that because of the PhyAddress registry entry?).

    The OS component list might be suspect (is IPHLPAPI missing for example?)

    Paul T.

    Wednesday, October 2, 2013 3:54 PM
  • Hi Paul,

    I did check in my driver code. What it does is.. it gets the MAC address from EEPROM of the device(this is default MAC address) and we can also override the default MAC address by setting Network address as shown below in the registry under [HKEY_LOCAL_MACHINE\Comm\SMSC95001\Parms]

    eg: "NetWorkAddress"="02-80-0f-11-72-02"       ;Override the MAC address

    So, I retained default MAC ID in one CE device and changed the MAC ID for other device by setting the above entry in the registry then tried pinging each other but no luck on that. The most strange part is, it is unable to ping loop back address 127.0.0.1(for which there is no requirement of miniport driver at all). I don't know what is going wrong..

    Any other datapoints from your side Paul??

    Thanks,

    James

    Thursday, October 3, 2013 3:50 PM
  • If it were me, I'd add all of the TCP/IP-related network components from catalog to be sure they are present (IPHLPAPI as mentioned, TCP/IP, NDISUIO). Do a clean OS build. Run IPCONFIG /ALL. As before, this should list all known network adapters. Perhaps you have an adapter set in the registry that is not associated with TCP/IP and that happens to be the one chosen for PING (for some as yet unknown reason, or because your real adapter shows "disconnected from network").

    I'd next connect a network sniffer to the network and ping from CE to PC (one of those is pretty well known so hopefully we have only 1 point of failure). Check the Ethernet header; is the MAC address what you expect based on your device EEPROM and registry configuration.  Check the TCP/IP header. Is the IP address "correct" based on what you know about the CE device. If both pieces seem correct, is the ICMP packet responded by the PC?

    If no packets are sent or if you see an ARP packet group but no ICMP, I think we're back to the adapter setup in the CE registry. Capturing the serial debug messages during boot may reveal an error, crash, or NDIS problem for investigation. If nothing appears during startup tracing, capture the serial debug messages during the actual ping operation. That might reveal what the error means to some extent.

    Paul T.

    Thursday, October 3, 2013 5:31 PM
  • Hi paul,

    Here we don't have Network sniffer tool to debug the issue. I have made sure that all catalog items like TCP/IP,IPHLPAPI and NDISUIO are there. 

    I have also tried capturing serial debug logs. I could not get any other information apart from the error code which is nothing but ERROR INVALD PARMATER. This is because Icmpcreatefile() API gets a invalid handle(-1) and it is passed as one of the argument to Icmpsendecho() API hence the error.

    the code snippet is as shown below

    numberOfReplies = IcmpSendEcho(hIcmp, ((LPSOCKADDR_IN)&address)->sin_addr.s_addr, 
                                                   SendBuffer, (unsigned short) SendSize,
                                                   &SendOpts, RcvBuffer, RcvSize, Timeout);
    
                    if (numberOfReplies == 0)
                    {
                        errorCode = GetLastError();
    
                        OutputMessage(TEXT("PING: transmit failed, error code %lu\r\n"),
                                    errorCode);
    
                    }

    Any other way to debug the issue? Don't you think because Icmpcreatefile() unable to get a handle(very first step) there could be an issue Usermode and  kernel mode?? What is your take on this?

    Thanks,

    James


    Wednesday, October 9, 2013 6:27 AM
  • At this point you really need to see what's happening on the network. Take a look at a software sniffer for the network. Even a sniffer running on the target PC would tell us something. I use UfaSoft Sniffer when this type of thing comes up. It has a bunch of quirks but is reasonable.

    As for the code, check the values before the call is made. Invalid parameters could be incorrectly handled s_addr values, bad hIcmp, null buffers, incorrect or negative sizes, etc.

    Paul T.

    Wednesday, October 9, 2013 4:58 PM
  • James,

    Did you ever find out the resolution to this issue? I currently have this problem.

    Chris

    Tuesday, December 10, 2019 9:19 AM