0

I'm trying to reproduce a crash happening on a user's machine. My code assumed that there could only be a single socket fd used by c-ares, but apparently that is not always true.

I'm working on a fix, but for that I'd like to be able to reproduce the crash (i.e. get c-ares to use multiple sockets) so that I am certain that I fixed the issue.

chakaz
  • 261
  • 2
  • 13

1 Answers1

0

After looking into the libc-ares code, I came to conclude that sockets are not used in parallel.

However, in case there is some error in getting a response initially (like if the UDP response was truncated, see TC bit), it will create another socket and use that.

That makes sense, of course. Users of c-ares should not make other assumptions though, like we did.

chakaz
  • 261
  • 2
  • 13