lwip-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [lwip-users] TCP SYN to UDP port


From: Esa Hill
Subject: Re: [lwip-users] TCP SYN to UDP port
Date: Mon, 18 Apr 2016 05:25:07 +0000

Yes, that is correct.

I opened a new socket to  new (random) port 50000 and then run nmap scan to 
ports 49998-50002.

No reply from ports except 50000 which sends RST. Wireshark log attached.

Nmap command: 
nmap -p 49998-50002 -v -n --scan-delay 1ms -r 192.168.0.11

Nmap results:
49998/tcp filtered unknown
49999/tcp filtered unknown
50000/tcp closed   ibm-db2
50001/tcp filtered unknown
50002/tcp filtered iiimsf

And this is the code I used for this test:
#include "lwip/sockets.h"

void socketTest()
{
  struct sockaddr_in  myAddr;
  struct sockaddr_in  toAddr;
  struct timeval      recvtimeout;
  fd_set              readfds;
  UINT32              len       = 0;
  int                 retval    = 0;
  socklen_t           slen      = 0;    
  int socketHandle = -1;
  UINT8 rxBuf[512];

  socketHandle = socket(PF_INET, SOCK_DGRAM, IPPROTO_UDP);
  
  myAddr.sin_family = AF_INET;
  myAddr.sin_port = htons(50000);
  myAddr.sin_addr.s_addr = htonl(INADDR_ANY);
  
  if (-1 != bind(socketHandle, (struct sockaddr* )&myAddr, sizeof(myAddr)))
  {
    while (1)
    {
      retval = 0;
      slen = sizeof(struct sockaddr_in);
      
      FD_ZERO(&readfds);
      FD_SET(socketHandle, &readfds);
      
      recvtimeout.tv_sec = 2;
      recvtimeout.tv_usec = 0;
      
      retval = select(socketHandle + 1, &readfds, NULL, NULL, &recvtimeout);
      
      if (retval > 0 && FD_ISSET(socketHandle, &readfds))
      {       
        len = recvfrom(socketHandle, &rxBuf[0], 512, 0, (struct sockaddr* 
)&toAddr, &slen);
       
        if (len > 0)
        {
          //...
        }
      }
    }
  }
}

Br, 
Esa Hill



Attachment: RST-from-UDP-port.pcapng
Description: RST-from-UDP-port.pcapng


reply via email to

[Prev in Thread] Current Thread [Next in Thread]