> On Oct 13, 2016, at 10:52 AM, Ted Woodward via lldb-dev
> wrote:
>
> TCPSocket::Connect has this line:
> host_str = ::inet_ntoa (*(struct in_addr
> *)*host_entry->h_addr_list);
>
> host_entry->h_addr_list is a char**, while struct in_addr contains a
> uint32_t. Casting like th
fine by me. We should probably also stop using inet_ntoa as it is not
thread-safe (I don't know what is the safe alternative off-hand).
pl
On 13 October 2016 at 19:00, Zachary Turner via lldb-dev
wrote:
> I believe you are correct. We should create an in_addr on the stack and
> memcpy into it.
I believe you are correct. We should create an in_addr on the stack and
memcpy into it.
On Thu, Oct 13, 2016 at 10:52 AM Ted Woodward via lldb-dev <
lldb-dev@lists.llvm.org> wrote:
> TCPSocket::Connect has this line:
>
> host_str = ::inet_ntoa (*(struct in_addr
> *)*host_entry->h_add
TCPSocket::Connect has this line:
host_str = ::inet_ntoa (*(struct in_addr
*)*host_entry->h_addr_list);
host_entry->h_addr_list is a char**, while struct in_addr contains a
uint32_t. Casting like this (char * to uint_32t *) could cause a bus error
on systems that don't allow non-al