Changeset 21665 in vbox
- Timestamp:
- Jul 17, 2009 7:09:08 AM (16 years ago)
- svn:sync-xref-src-repo-rev:
- 50204
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Devices/Network/slirp/socket.c
r21385 r21665 658 658 { 659 659 int ret; 660 struct sockaddr_in addr; 660 struct sockaddr_in *paddr; 661 struct sockaddr addr; 661 662 #if 0 662 663 struct sockaddr_in host_addr; … … 666 667 DEBUG_ARG("so = %lx", (long)so); 667 668 DEBUG_ARG("m = %lx", (long)m); 668 669 addr.sin_family = AF_INET; 669 670 memset(&addr, 0, sizeof(struct sockaddr)); 671 #ifdef RT_OS_DARWIN 672 addr.sa_len = sizeof(struct sockaddr_in); 673 #endif 674 paddr = (struct sockaddr_in *)&addr; 675 paddr->sin_family = AF_INET; 670 676 if ((so->so_faddr.s_addr & htonl(pData->netmask)) == special_addr.s_addr) 671 677 { … … 694 700 default: 695 701 if (last_byte == ~pData->netmask) 696 addr.sin_addr.s_addr = INADDR_BROADCAST;702 paddr->sin_addr.s_addr = INADDR_BROADCAST; 697 703 else 698 addr.sin_addr = loopback_addr;704 paddr->sin_addr = loopback_addr; 699 705 break; 700 706 } 701 707 } 702 708 else 703 addr.sin_addr = so->so_faddr;704 addr.sin_port = so->so_fport;709 paddr->sin_addr = so->so_faddr; 710 paddr->sin_port = so->so_fport; 705 711 706 712 DEBUG_MISC((dfd, " sendto()ing, addr.sin_port=%d, addr.sin_addr.s_addr=%.16s\n", 707 ntohs( addr.sin_port), inet_ntoa(addr.sin_addr)));713 ntohs(paddr->sin_port), inet_ntoa(paddr->sin_addr))); 708 714 709 715 /* Don't care what port we get */ 710 ret = sendto(so->s, m->m_data, m->m_len, 0, 711 (struct sockaddr *)&addr, sizeof (struct sockaddr)); 716 ret = sendto(so->s, m->m_data, m->m_len, 0, &addr, sizeof (struct sockaddr_in)); 712 717 if (ret < 0) 713 718 {
Note:
See TracChangeset
for help on using the changeset viewer.