From: Carsten Haitzler (Rasterman) Date: Sat, 29 Jul 2017 01:35:39 +0000 (+0900) Subject: efl net - fix ipv6 getsockname to use the proper struct to do it X-Git-Tag: upstream/1.20.0~68 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=ff269912207ed2d1480cdee1f5e7b07caaa8876d;p=platform%2Fupstream%2Fefl.git efl net - fix ipv6 getsockname to use the proper struct to do it struct sockaddr_storage *addr; AS the actual storage ( a ptr to store the whole data). kind of... wrong. it should be: struct sockaddr_storage addr; see examples of this kind of usage of getsockname: http://www.masterraghu.com/subjects/np/introduction/unix_network_programming_v1.3/ch04lev1sec10.html found by PVS studio @fix --- diff --git a/src/lib/ecore_con/efl_net_server_tcp.c b/src/lib/ecore_con/efl_net_server_tcp.c index c4d1a62..f82d57b 100644 --- a/src/lib/ecore_con/efl_net_server_tcp.c +++ b/src/lib/ecore_con/efl_net_server_tcp.c @@ -167,7 +167,7 @@ _efl_net_server_tcp_efl_net_server_fd_socket_activate(Eo *o, Efl_Net_Server_Tcp_ char buf[INET6_ADDRSTRLEN + sizeof("[]:65536")]; Eina_Bool listening; Eina_Error err; - struct sockaddr_storage *addr; + struct sockaddr_storage addr; socklen_t addrlen; SOCKET fd; diff --git a/src/lib/ecore_con/efl_net_server_udp.c b/src/lib/ecore_con/efl_net_server_udp.c index cd68271..f45fd61 100644 --- a/src/lib/ecore_con/efl_net_server_udp.c +++ b/src/lib/ecore_con/efl_net_server_udp.c @@ -213,7 +213,7 @@ _efl_net_server_udp_efl_net_server_fd_socket_activate(Eo *o, Efl_Net_Server_Udp_ { char buf[INET6_ADDRSTRLEN + sizeof("[]:65536")]; Eina_Error err; - struct sockaddr_storage *addr; + struct sockaddr_storage addr; socklen_t addrlen; SOCKET fd; diff --git a/src/lib/ecore_con/efl_net_server_unix.c b/src/lib/ecore_con/efl_net_server_unix.c index 4ec9176..b1a1d2d 100644 --- a/src/lib/ecore_con/efl_net_server_unix.c +++ b/src/lib/ecore_con/efl_net_server_unix.c @@ -173,7 +173,7 @@ _efl_net_server_unix_efl_net_server_fd_socket_activate(Eo *o, Efl_Net_Server_Uni char buf[INET6_ADDRSTRLEN + sizeof("[]:65536")]; Eina_Bool listening; Eina_Error err; - struct sockaddr_storage *addr; + struct sockaddr_storage addr; socklen_t addrlen; SOCKET fd;