Changeset 38345 in vbox
- Timestamp:
- Aug 8, 2011 10:53:27 AM (13 years ago)
- Location:
- trunk/src/VBox/Devices/Network/slirp
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Devices/Network/slirp/libalias/alias_db.c
r26495 r38345 774 774 #endif 775 775 776 776 777 err = bind(sock, 777 778 (struct sockaddr *)&sock_addr, … … 780 781 la->sockCount++; 781 782 #ifdef VBOX 782 783 784 785 786 787 788 789 790 791 792 793 794 795 783 so->so_expire = la->curtime + SO_EXPIRE; 784 setsockopt(so->s, SOL_SOCKET, SO_BROADCAST, 785 (const char *)&opt, sizeof(opt)); 786 status = getsockname(so->s, &sa_addr, &socklen); 787 if (status != 0 || sa_addr.sa_family != AF_INET) 788 { 789 closesocket(so->s); 790 RTMemFree(so); 791 return 0; 792 } 793 so->so_hlport = ((struct sockaddr_in *)&sa_addr)->sin_port; 794 so->so_hladdr.s_addr = 795 ((struct sockaddr_in *)&sa_addr)->sin_addr.s_addr; 796 NSOCK_INC_EX(la); 796 797 if (link_type == LINK_TCP) 797 { 798 insque(la->pData, so, &la->tcb); 799 } 798 insque(la->pData, so, &la->tcb); 800 799 else if (link_type == LINK_UDP) 801 { 802 insque(la->pData, so, &la->udb); 803 } 804 else { 805 Assert(!"Shouldn't be here"); 806 } 807 800 insque(la->pData, so, &la->udb); 801 else 802 Assert(!"Shouldn't be here"); 803 LogFunc(("bind called for socket: %R[natsock]\n", so)); 808 804 #else 809 805 *sockfd = sock; -
trunk/src/VBox/Devices/Network/slirp/udp.c
r37936 r38345 493 493 socklen_t addrlen = sizeof(struct sockaddr_in); 494 494 int opt = 1; 495 LogFlowFunc(("ENTER: bind_addr:%RTnaipv4, port:%d, laddr:%RTnaipv4, lport:%d, flags:%x\n", 496 bind_addr, RT_N2H_U16(port), laddr, RT_N2H_U16(lport), flags)); 495 497 496 498 if ((so = socreate()) == NULL) 499 { 500 LogFlowFunc(("LEAVE: NULL\n")); 497 501 return NULL; 502 } 498 503 499 504 so->s = socket(AF_INET, SOCK_DGRAM, 0); … … 502 507 LogRel(("NAT: can't create datagram socket\n")); 503 508 RTMemFree(so); 509 LogFlowFunc(("LEAVE: NULL\n")); 504 510 return NULL; 505 511 } … … 524 530 LogRel(("NAT: bind to %RTnaipv4 has been failed\n", addr.sin_addr)); 525 531 udp_detach(pData, so); 532 LogFlowFunc(("LEAVE: NULL\n")); 526 533 return NULL; 527 534 } … … 546 553 so->so_state = SS_ISFCONNECTED; 547 554 555 LogFlowFunc(("LEAVE: %R[natsock]\n", so)); 548 556 return so; 549 557 }
Note:
See TracChangeset
for help on using the changeset viewer.