647. [bug] Resolver queries sent after following multiple
referrals had excessively long retransmission
timeouts due to incorrectly counting the referrals
as "restarts".
It was possible to join to an already running fctx
after it had "cloned" its events, but before it sent
them. In this case, the event of the newly joined
fetch would not contain the answer, and would
trigger the INSIST() in fctx_sendevents().
[RT #597, #605, #607]
647. [bug] Resolver queries sent after following multiple
referrals had excessively long retransmission
timeouts due to incorrectly counting the referrals
as "restarts".
I would have seen *before* I commited anything. So, include isc/thread.h,
isc/mutex.h and isc/condition.h even if ISC_PLATFORM_USETHREADS is not defined.
(What caused me to bother with this at all was a problem that I resolved
a few days ago by fixing configure ... though now that I think about it,
that probably means there is some other latent problem with inconsistent
definitions that could maybe be handled better. I'll look into it more
later, AFTER vacation.)
in the ISC__BUFFER_PUTUINT*() macros. [RT #592]
This is the basically the same change made to buffer.c before the macros
were created:
revision 1.18
date: 1999/09/23 17:54:57; author: tale; state: Exp; lines: +4 -4
Shut up MSVC++ compiler warning about loss of precision when assigning
8 bits masked out of a 32 bit int to individual bytes.
Also, an #if 0 around "#define ISC_BUFFER_USEINLINE" was removed, per the
ISC coding style, and instead a comment was used to disable the definition.
in the ISC__BUFFER_PUTUINT*() macros. [RT #592]
This is the basically the same change made to buffer.c before the macros
were created:
revision 1.18
date: 1999/09/23 17:54:57; author: tale; state: Exp; lines: +4 -4
Shut up MSVC++ compiler warning about loss of precision when assigning
8 bits masked out of a 32 bit int to individual bytes.
Also, an #if 0 around "#define ISC_BUFFER_USEINLINE" was removed, per the
ISC coding style, and instead a comment was used to disable the definition.
have pthreads support. Not all systems have libpthread (eg, BSD/OS).
Many compiler options that were not particular to whether threads were being
used were being set in a threads-specific block, meaning they didn't get
set at all if threads were not being used.
ISC_PLATFORM_USETHREADS could end up still defined even if threading was
later disabled, such as if pthread_create was not found.