3 | | This doesn't work for DNS SRV resolver, because once the resolver is in the state of resolving the host with DNS A resolution, the current query job is now different than that is returned by the original '''{{{pj_dns_srv_resolve()}}}''' call. |
| 3 | This doesn't work for DNS SRV resolver, because once the resolver is in the state of resolving hosts with DNS A resolution, the current query job is now different than that is returned by the original '''{{{pj_dns_srv_resolve()}}}''' call. |
| 4 | |
| 5 | This will cause {{{pj_dns_resolver_cancel_query()}}} to potentially cancel the wrong query, and because the intended query or queries are not canceled, they will call the callback when the DNS response is finally received, and this will cause crash/segmentation fault (or assertion in debug mode). |
| 6 | |
| 7 | The crash is reproducible by running pjnath unit test, in the TURN socket destroy test (on Linux i386, gcc-4.1.1). |
| 8 | |