Lines 379-387
GF_Err gf_sk_set_buffer_size(GF_Socket *sock, Bool SendBuffer, u32 NewSize)
Link Here
|
379 |
res = setsockopt(sock->socket, SOL_SOCKET, SO_RCVBUF, (char *) &NewSize, sizeof(u32) ); |
379 |
res = setsockopt(sock->socket, SOL_SOCKET, SO_RCVBUF, (char *) &NewSize, sizeof(u32) ); |
380 |
} |
380 |
} |
381 |
if (res<0) { |
381 |
if (res<0) { |
382 |
GF_LOG(GF_LOG_ERROR, GF_LOG_NETWORK, ("[Core] Couldn't set socket %s buffer size: %d\n", SendBuffer ? "send" : "receive", res)); |
382 |
GF_LOG(GF_LOG_ERROR, GF_LOG_NETWORK, ("[Socket] Couldn't set socket %s buffer size to %d: %d\n", SendBuffer ? "send" : "receive", NewSize, res)); |
383 |
} else { |
383 |
} else { |
384 |
GF_LOG(GF_LOG_DEBUG, GF_LOG_NETWORK, ("[Core] Set socket %s buffer size\n", SendBuffer ? "send" : "receive")); |
384 |
GF_LOG(GF_LOG_DEBUG, GF_LOG_NETWORK, ("[Socket] Set socket %s buffer size to %d\n", SendBuffer ? "send" : "receive", NewSize)); |
385 |
} |
385 |
} |
386 |
return GF_OK; |
386 |
return GF_OK; |
387 |
} |
387 |
} |
Lines 483-490
GF_Err gf_sk_connect(GF_Socket *sock, const char *PeerName, u16 PortNumber, cons
Link Here
|
483 |
|
483 |
|
484 |
gf_sk_free(sock); |
484 |
gf_sk_free(sock); |
485 |
|
485 |
|
|
|
486 |
GF_LOG(GF_LOG_INFO, GF_LOG_NETWORK, ("[Sock_IPV6] Solving %s address\n", PeerName)); |
486 |
res = gf_sk_get_ipv6_addr(PeerName, PortNumber, AF_UNSPEC, AI_PASSIVE, type); |
487 |
res = gf_sk_get_ipv6_addr(PeerName, PortNumber, AF_UNSPEC, AI_PASSIVE, type); |
487 |
if (!res) return GF_IP_CONNECTION_FAILURE; |
488 |
if (!res) return GF_IP_CONNECTION_FAILURE; |
|
|
489 |
GF_LOG(GF_LOG_INFO, GF_LOG_NETWORK, ("[Sock_IPV6] Host %s found\n", PeerName)); |
488 |
|
490 |
|
489 |
/*turn on MobileIP*/ |
491 |
/*turn on MobileIP*/ |
490 |
if (local_ip && MobileIPAdd && !strcmp(MobileIPAdd, local_ip) ) { |
492 |
if (local_ip && MobileIPAdd && !strcmp(MobileIPAdd, local_ip) ) { |
Lines 525-536
GF_Err gf_sk_connect(GF_Socket *sock, const char *PeerName, u16 PortNumber, cons
Link Here
|
525 |
} |
527 |
} |
526 |
} |
528 |
} |
527 |
|
529 |
|
|
|
530 |
GF_LOG(GF_LOG_INFO, GF_LOG_NETWORK, ("[Sock_IPV6] Connecting to %s:%d\n", PeerName, PortNumber)); |
528 |
ret = connect(sock->socket, aip->ai_addr, (int) aip->ai_addrlen); |
531 |
ret = connect(sock->socket, aip->ai_addr, (int) aip->ai_addrlen); |
529 |
if (ret == SOCKET_ERROR) { |
532 |
if (ret == SOCKET_ERROR) { |
530 |
closesocket(sock->socket); |
533 |
closesocket(sock->socket); |
531 |
sock->socket = NULL_SOCKET; |
534 |
sock->socket = NULL_SOCKET; |
532 |
continue; |
535 |
continue; |
533 |
} |
536 |
} |
|
|
537 |
GF_LOG(GF_LOG_INFO, GF_LOG_NETWORK, ("[Sock_IPV6] Connected to %s:%d\n", PeerName, PortNumber)); |
534 |
|
538 |
|
535 |
memcpy(&sock->dest_addr, aip->ai_addr, aip->ai_addrlen); |
539 |
memcpy(&sock->dest_addr, aip->ai_addr, aip->ai_addrlen); |
536 |
sock->dest_addr_len = (u32) aip->ai_addrlen; |
540 |
sock->dest_addr_len = (u32) aip->ai_addrlen; |
Lines 562-567
GF_Err gf_sk_connect(GF_Socket *sock, const char *PeerName, u16 PortNumber, cons
Link Here
|
562 |
/*get the server IP*/ |
566 |
/*get the server IP*/ |
563 |
sock->dest_addr.sin_addr.s_addr = inet_addr(PeerName); |
567 |
sock->dest_addr.sin_addr.s_addr = inet_addr(PeerName); |
564 |
if (sock->dest_addr.sin_addr.s_addr==INADDR_NONE) { |
568 |
if (sock->dest_addr.sin_addr.s_addr==INADDR_NONE) { |
|
|
569 |
GF_LOG(GF_LOG_INFO, GF_LOG_NETWORK, ("[Sock_IPV4] Solving %s address\n", PeerName)); |
565 |
Host = gethostbyname(PeerName); |
570 |
Host = gethostbyname(PeerName); |
566 |
if (Host == NULL) { |
571 |
if (Host == NULL) { |
567 |
switch (LASTSOCKERROR) { |
572 |
switch (LASTSOCKERROR) { |
Lines 574-587
GF_Err gf_sk_connect(GF_Socket *sock, const char *PeerName, u16 PortNumber, cons
Link Here
|
574 |
return GF_IP_NETWORK_FAILURE; |
579 |
return GF_IP_NETWORK_FAILURE; |
575 |
} |
580 |
} |
576 |
} |
581 |
} |
|
|
582 |
GF_LOG(GF_LOG_INFO, GF_LOG_NETWORK, ("[Sock_IPV4] Host %s found\n", PeerName)); |
577 |
memcpy((char *) &sock->dest_addr.sin_addr, Host->h_addr_list[0], sizeof(u32)); |
583 |
memcpy((char *) &sock->dest_addr.sin_addr, Host->h_addr_list[0], sizeof(u32)); |
578 |
} |
584 |
} |
579 |
|
585 |
|
580 |
if (sock->flags & GF_SOCK_IS_TCP) { |
586 |
if (sock->flags & GF_SOCK_IS_TCP) { |
|
|
587 |
GF_LOG(GF_LOG_INFO, GF_LOG_NETWORK, ("[Sock_IPV4] Connecting to %s:%d\n", PeerName, PortNumber)); |
581 |
ret = connect(sock->socket, (struct sockaddr *) &sock->dest_addr, sizeof(struct sockaddr)); |
588 |
ret = connect(sock->socket, (struct sockaddr *) &sock->dest_addr, sizeof(struct sockaddr)); |
582 |
if (ret == SOCKET_ERROR) { |
589 |
if (ret == SOCKET_ERROR) { |
583 |
u32 res = LASTSOCKERROR; |
590 |
u32 res = LASTSOCKERROR; |
584 |
GF_LOG(GF_LOG_ERROR, GF_LOG_NETWORK, ("[Core] Couldn't connect socket - last sock error %d\n", res)); |
591 |
GF_LOG(GF_LOG_ERROR, GF_LOG_NETWORK, ("[Sock_IPV4] Couldn't connect socket - last sock error %d\n", res)); |
585 |
switch (res) { |
592 |
switch (res) { |
586 |
case EAGAIN: |
593 |
case EAGAIN: |
587 |
return GF_IP_SOCK_WOULD_BLOCK; |
594 |
return GF_IP_SOCK_WOULD_BLOCK; |
Lines 606-611
GF_Err gf_sk_connect(GF_Socket *sock, const char *PeerName, u16 PortNumber, cons
Link Here
|
606 |
return GF_IP_CONNECTION_FAILURE; |
613 |
return GF_IP_CONNECTION_FAILURE; |
607 |
} |
614 |
} |
608 |
} |
615 |
} |
|
|
616 |
GF_LOG(GF_LOG_INFO, GF_LOG_NETWORK, ("[Sock_IPV4] Connected to %s:%d\n", PeerName, PortNumber)); |
609 |
} |
617 |
} |
610 |
#endif |
618 |
#endif |
611 |
return GF_OK; |
619 |
return GF_OK; |