Why ISC developing wheel again?

Danny Mayer mayer at ntp.isc.org
Mon Oct 8 04:11:09 UTC 2007


Mark Andrews wrote:
>> Hi all,
>>
>> I've checkouted 9.5.0a7 from CVS and I'm really baffled how ISC try impleme=
>> nt all standard libc functions. Quick example - nsupdate.c source contains =
>> isc_string_printf function. But BIND source also contains isc_print_snprint=
>> f function. And C99 standard defines snprintf() function. All those three f=
>> unctions are same.
> 
> 	Have you actually read the code?
> 
> 	isc_print_snprintf() is there only for those platforms where
> 	configure cannot find a working (C 99) snprintf().  We do
> 	have people that compile named on such platforms.  The code
> 	to do this was added circa Jun '03.  If we find a working
> 	sprintf() we use it.  Similarly for vsnprintf().
> 

Actually some of that dates back to 2001 if not earlier. I remember
reviewing the code to see if my platform supported these functions or
had to use the isc created ones. However this was done because some
platforms didn't have those functions or had incorrect implementations
of them. Those functions only got used if native versions were not
available.

Danny


More information about the bind-workers mailing list