Přijímání UDP paketů na OS AIX

Pavel Just just at ais.cz
Fri Aug 15 09:24:09 CEST 2003


Zdravím.

   Snažím se pod AIXem napsat krátký program, který udělá něco podle
toho, odkud přijde udp paket. Bohužel mi volání recvfrom strukturu
o klientovi zatvrzele navyplňuje. Co je špatně na následujícím zdrojáku ?

int test3(void)
{
   struct sockaddr_in s,k;
   int fd,r;
   unsigned char buf[2048];
   socklen_t  l;

   memset(&s, '\0', sizeof(s));
   memset(&k, '\0', sizeof(k));

   k.sin_family=AF_INET;

   s.sin_family=AF_INET;
   s.sin_addr.s_addr=inet_addr(INADDR_ANY);
   s.sin_port=htons(8000);

   fd=socket(AF_INET,SOCK_DGRAM, 0);
   r=bind(fd,(struct sockaddr *)&s, sizeof(s));
   r=recvfrom(fd, buf, 2048, 0, (struct sockaddr *)&k, &l);
   printf("%d\n",l);

   return r;
}

Struktura k se nikdy nenaplní a l je nula :(. Pod linuxem to chodí.

Pavel Just
-- 
-----------------------------------
Tato zpráva neobsahuje viry, protože nepoužívám MS Windows.





More information about the net mailing list