Commit graph

1059 commits

Author SHA1 Message Date
Mark Andrews
186e7f37c9 2122. [func] Experimental http server and statistics support
for named via xml.
2006-12-21 06:03:37 +00:00
Mark Andrews
377231eb95 update copyright notice 2006-12-05 00:13:48 +00:00
Mark Andrews
289ae548d5 2105. [func] GSS-TSIG support (RFC 3645). 2006-12-04 01:54:53 +00:00
Michael Graff
20f1bc4434 somehow, new files got committed to mainline, and changes to my branch. Remove them from the mainline for now. 2006-11-13 20:38:06 +00:00
Michael Graff
ea964e3e20 update to mainline's bind9, and make a new branch for it. 2006-11-13 20:07:57 +00:00
Mark Andrews
02ced31b6a 2072. [bug] We were not generating valid HMAC SHA digests.
[RT #16320]
2006-08-16 03:15:09 +00:00
Mark Andrews
03f65be27b update copyright notice 2006-06-07 00:29:46 +00:00
Mark Andrews
9a482d1fce 2039. [func] Check that all buffers passed to the socket code
have been retrieve when the socket event is freed.
                        [RT #16122]

2038.   [bug]           dig/nslookup/host was unlinking from wrong list
                        when handling errors. [RT #16122]
2006-06-06 00:53:36 +00:00
Mark Andrews
472460e05f update copyright notice 2006-06-06 00:11:42 +00:00
Mark Andrews
cd18f34923 checkpoint 2006-05-30 04:18:36 +00:00
Mark Andrews
4b3f3cc671 update copyright notice 2006-04-15 01:30:16 +00:00
Michael Graff
80a63e1574 Documentation changes; no functional changes. Some variables were renamed from 'i' to 'index' in heap.h so documentation can be nicer. 2006-04-10 16:28:04 +00:00
Mark Andrews
641f68d427 update copyright notice 2006-03-02 00:37:23 +00:00
Mark Andrews
45e1bd6358 1991. [cleanup] The configuration data, once read, should be treated
as readonly.  Expand the use of const to enforce this
                        at compile time. [RT #15813]
2006-02-28 02:39:52 +00:00
Mark Andrews
472ce617b7 1988. [bug] Remove a bus error from the SHA256/SHA512 support.
[RT #15878]
2006-02-24 00:03:15 +00:00
Mark Andrews
e256ce5f47 update copyright notice 2006-02-01 00:10:35 +00:00
Mark Andrews
bc4f5d111a silence compiler warnings 2006-01-31 23:01:23 +00:00
Mark Andrews
fc7685a7f1 silence compiler warnings 2006-01-31 00:35:21 +00:00
Mark Andrews
26e2a07a0b update copyright notice 2006-01-27 23:57:46 +00:00
Mark Andrews
c6d4f78152 1973. [func] TSIG HMACSHA1, HMACSHA224, HMACSHA256, HMACSHA384 and
HMACSHA512 support. [RT #13606]
2006-01-27 02:35:15 +00:00
Mark Andrews
acb4f52369 update copyright notice 2006-01-04 23:50:24 +00:00
Mark Andrews
e9733bc599 1949. [func] Addition memory leakage checks. [RT #15544] 2006-01-04 03:16:47 +00:00
Michael Graff
e6c3041c28 add file descriptor watching functions, Unix only. 2005-12-06 16:54:49 +00:00
Mark Andrews
625d1dd4f4 fix isc_timer_gettype return type 2005-10-26 06:46:36 +00:00
Mark Andrews
1425217e5c spelling arguement vs arguments 2005-10-26 04:35:56 +00:00
Mark Andrews
b3d1e3a945 silence compiler warning 2005-10-17 03:47:10 +00:00
Mark Andrews
c9b4dafc92 soft is an int 2005-08-11 15:03:20 +00:00
Mark Andrews
611ec5dd43 1907. [bug] Extend ISC_SOCKADDR_FORMATSIZE and
ISC_NETADDR_FORMATSIZE to allow for scope details.
2005-07-28 04:54:17 +00:00
Mark Andrews
8abe06b25d 1905. [bug] Recursive clients soft quota support wasn't working
as expected. [RT #15103]
2005-07-27 02:29:01 +00:00
Mark Andrews
fb827ed6df 9.4/HEAD sync 2005-07-18 06:03:01 +00:00
Mark Andrews
18d0b5e54b 1900. [port] freebsd: pthread_mutex_init can fail if it runs out
of memory. [RT #14995]
2005-07-12 01:00:20 +00:00
Mark Andrews
49a83dbc7e enable format checking 2005-06-19 22:57:59 +00:00
Mark Andrews
016c0a82f1 1888. [func] "USE INTERNAL MALLOC" is now runtime selectable.
[RT #14892]
2005-06-17 02:22:45 +00:00
Tatuya JINMEI 神明達哉
c528bd6986 provided __asm version of assembly code for atomic atomic operations
for better compatibility.

(this is a temporary resolution so that this one won't block other tests.
we'll revisit this change when we figure out performance implication of
the __asm version.)
2005-06-16 21:58:00 +00:00
Mark Andrews
d4d68515d2 1885. [func] Additional memory debugging support to track size
and mctx arguements. [RT #14814]
2005-06-10 07:00:20 +00:00
Mark Andrews
e7fb847ed5 1883. [port] sunos: portability fixes. [RT #14814] 2005-06-08 02:09:18 +00:00
Tatuya JINMEI 神明達哉
5597be9bb8 1813. [func] Restructured the data locking framework using
architecture dependent atomic operations (when
			available), improving response performance on
			multi-processor machines significantly.
			x86, x86_64, alpha, and sparc64 are currently
			supported.

(RT #13505)
2005-06-04 05:32:50 +00:00
Mark Andrews
ef67e6d8fa 1859. [func] Add support for CH A record. [RT #14695] 2005-06-04 00:18:56 +00:00
Jakob Schlyter
baf62093eb extended string API from rt11733 2005-05-14 22:11:56 +00:00
Mark Andrews
69fe9aaafd update copyright notice 2005-04-29 00:24:12 +00:00
Rob Austein
ab023a6556 1851. [doc] Doxygen comment markup. [RT #11398] 2005-04-27 04:57:32 +00:00
Mark Andrews
bd77e3252a update copyright notice 2005-03-22 02:35:14 +00:00
Mark Andrews
5cb7e15551 1839. [bug] <isc/hash.h> was not being installed. 2005-03-21 05:16:47 +00:00
Mark Andrews
15683369e0 namespace sun -> sunix 2005-03-16 23:39:06 +00:00
Mark Andrews
c2a5a4a3cf update copyright notice 2005-02-24 00:33:35 +00:00
Mark Andrews
4423c99613 1814. [func] UNIX domain controls are now supported. 2005-02-23 01:09:23 +00:00
Mark Andrews
ebf264ea10 update copyright 2005-01-17 23:58:33 +00:00
Mark Andrews
4844ed026a 1798. [func] The server syntax has been extended to support a
range of servers.  [RT #11132]
2005-01-17 00:46:05 +00:00
Mark Andrews
c1807114ce 1745. [bug] Dig/host/nslookup accept replies from link locals
regardless of scope if no scope was specified when
                        query was sent. [RT #12745]
2004-11-22 23:29:10 +00:00
Mark Andrews
073bd4c4bc 1739. [bug] dns_rbt_deletetree() could incorrectly return
ISC_R_QUOTA.  [RT #12695]

1738.   [bug]           Enable overrun checking by default. [RT #12695]
2004-10-11 05:49:29 +00:00
Tatuya JINMEI 神明達哉
ec3f1d3517 1629. [func] dig now supports IPv6 scoped addresses with the
extended format in the local-server part. [RT #8753]
2004-05-15 03:37:34 +00:00
Mark Andrews
42b48d11ca hide ((isc_event_t **) (void *)) cast using a macro, ISC_EVENT_PTR. 2004-04-15 01:58:25 +00:00
Mark Andrews
9287a6b182 silence compiler warning 2004-04-14 05:09:43 +00:00
Mark Andrews
8862388bcb 1602. [bug] Logging to a file failed unless a size was specified.
[RT# 10925]
2004-04-10 04:33:36 +00:00
Mark Andrews
dafcb997e3 update copyright notice 2004-03-05 05:14:21 +00:00
Mark Andrews
7052e191ce 1544. [bug] Named would logged a single entry to a file despite it
being over the specified size limit.

1543.   [bug]           Logging using "versions unlimited" did not work.
2004-03-03 05:39:05 +00:00
Mark Andrews
22fa4e3206 1578. [bug] Don't use CLASS E IPv4 addresses when resolving.
[RT #10346]
2004-02-20 00:52:46 +00:00
Tatuya JINMEI 神明達哉
6da7c87a77 1527. [cleanup] Reduce the number of gettimeofday() calls without
losing necessary timer granularity.

(reviewed by marka and Kurt)
2003-10-25 00:09:14 +00:00
Tatuya JINMEI 神明達哉
cf756bac81 typo in a comment line. 2003-10-10 06:39:23 +00:00
Mark Andrews
d5d2dca925 missing '*' 2003-07-25 05:02:54 +00:00
Mark Andrews
1e107b3d7b 1495. [cleanup] Replace hash functions with universal hash. 2003-07-25 02:22:26 +00:00
Mark Andrews
4c54e122fe silence compiler warning (HPUX/11i) 2003-07-24 06:41:20 +00:00
Mark Andrews
17a14e451d 1492. [cleanup] Preserve rwlock quota context when upgrading /
downgrading. [RT #5599]
2003-07-21 01:14:18 +00:00
Mark Andrews
f95231835f 1475. [port] Probe for old sprintf(). 2003-06-24 06:24:44 +00:00
Mark Andrews
090f79c6c2 1474. [port] Provide strtoul() and memmove() for platforms
without them.
2003-06-24 05:18:39 +00:00
Mark Andrews
21f1794606 1474. [port] Provide strtoul() and memmove() for platforms
without them.
2003-06-24 05:11:53 +00:00
Mark Andrews
163547c0c0 1461. [bug] Remove deadlock from rbtdb code. [RT #5999] 2003-04-17 01:56:35 +00:00
Mark Andrews
935000aa6e 1457. [port] Provide strlcat() and strlcpy() for platforms without
them.
2003-04-10 04:47:56 +00:00
Mark Andrews
8ca42f6318 1454. [port] Use getifaddrs() if available for interface scanning.
--disable-getifaddrs to override.  Glibc currently
                        has a getifaddrs() that does not support IPv6.
                        Use --enable-getifaddrs=glibc to force the use of
                        this version under linux machines.
2003-04-01 05:18:22 +00:00
Mark Andrews
0ffaee887f 1412. [func] You can now specify servers to be tried if a nameserver
has IPv6 address and you only support IPv4 or the
                       reverse. See dual-stack-servers.
2003-01-16 03:59:28 +00:00
Mark Andrews
646182a67f missing include
adjust prototype for isc_netscope_pton() to use void *.
2002-11-26 04:36:46 +00:00
Mark Andrews
41f5cf4ac1 check for the existance of if_nametoindex().
developer: jinmei
reviewer: marka
2002-11-26 03:53:42 +00:00
Mark Andrews
e12b02b62c u_int32_t -> isc_uin32_t 2002-10-28 02:23:54 +00:00
Mark Andrews
a3bcfd4660 u_int#_t -> isc_uint#_t 2002-10-28 02:16:21 +00:00
Mark Andrews
6526fd032f 1391. [func] Add support for IPv6 scoped addresses in named. 2002-10-24 03:52:35 +00:00
Tatuya JINMEI 神明達哉
959cf5e112 (RT #3666) named could fail to rotate long log files.
developer: marka
reviewer: jinmei
2002-10-16 13:15:30 +00:00
Michael Graff
88f7da4690 add a new log module, timer 2002-09-09 20:02:22 +00:00
Michael Graff
371147fdc5 add isc_timer_gettype() (useful in debugging code) and a temporary hack of isc_timermgr_poke 2002-09-08 18:35:55 +00:00
Mark Andrews
012a2b979e 1341. [func] Allow a rate limiter to be stalled. 2002-07-26 06:42:02 +00:00
Mark Andrews
0d993c02ba 1250. [bug] When processing events (non-threaded) only allow
the task one chance to use to use its quantum.
2002-07-19 03:39:44 +00:00
Mark Andrews
ecf7a18125 isc_modules[2] not isc_modules[3] 2002-07-01 01:39:45 +00:00
Mark Andrews
fe4d3e1992 hpux: ioctl(SIOCGLIFCONF) failure -> debug(1) 2002-07-01 01:08:37 +00:00
Mark Andrews
a1edcd1b8d 1203. [func] Use "dataready" accept filter if available. 2002-05-27 00:40:23 +00:00
Mark Andrews
0cd36f1d15 1286. [bug] ISC_LINK_INIT, ISC_LINK_UNLINK, ISC_LIST_DEQUEUE,
__ISC_LINK_UNLINKUNSAFE and __ISC_LIST_DEQUEUEUNSAFE
                        are not C++ compatible, use *_TYPE versions instead.
2002-05-09 07:09:30 +00:00
Mark Andrews
79a6a33184 1246. [func] New functions isc_sockaddr_issitelocal(),
isc_sockaddr_islinklocal(), isc_netaddr_issitelocal()
                        and isc_netaddr_islinklocal().
2002-04-03 06:38:38 +00:00
Mark Andrews
091b098b49 1241. [bug] Drop received UDP messsages with a zero source port
as these are invariably forged. [RT #2621]
2002-04-02 04:36:52 +00:00
Brian Wellington
65c709f4de add isc_parse_uint16() and isc_parse_uint8() 2002-02-28 20:08:06 +00:00
Brian Wellington
02e5f92113 isc_lex_setsourcename(), for use when lexing buffers or streams 2002-02-21 00:44:16 +00:00
Mark Andrews
a7038d1a05 copyrights 2002-02-20 03:35:59 +00:00
Andreas Gustafsson
6a8832f784 There are four "i":s in "initialize" 2002-02-20 01:45:15 +00:00
Andreas Gustafsson
28e509b145 const correctness 2002-02-11 18:19:26 +00:00
Andreas Gustafsson
93aba2cb04 The comment saying that the string passed to isc_log_settag()
may not be altered after the call no longer applies
2002-01-23 01:27:52 +00:00
Andreas Gustafsson
9cf6d43887 cut-and-paste-o:s 2002-01-11 01:30:32 +00:00
Brian Wellington
e74100e3f4 move isc_region_compare to isc/region.[ch], not isc/buffer.[ch] 2002-01-05 07:28:44 +00:00
Olafur Gudmundsson
90e303b114 Adding function isc_region_compare and using in instead of compare_region in lib/dns 2002-01-05 07:05:28 +00:00
Andreas Gustafsson
1f1d36a87b Check return values or cast them to (void), as required by the coding
standards; add exceptions to the coding standards for cases where this is
not desirable
2001-11-30 01:59:49 +00:00
Andreas Gustafsson
242bba8991 1151. [bug] nslookup failed to check that the arguments to
the port, timeout, and retry options were
                        valid integers and in range. [RT #2099]

1150.   [bug]           named incorrectly accepted TTL values
                        containing plus or minus signs, such as
                        1d+1h-1s.

1149.   [func]          New function isc_parse_uint32().
2001-11-30 01:02:18 +00:00
Mark Andrews
0cfa2fb26d 1146. [func] Allow IPV6_IPV6ONLY to be set/cleared on a socket if
supported by the OS by a new function
                        isc_socket_ipv6only().
2001-11-29 07:31:25 +00:00
Andreas Gustafsson
4f30395c97 Suppress compiler warnings about empty translation units 2001-11-20 21:28:41 +00:00
Danny Mayer
e61793f086 Added LIB*_EXTERNAL_DATA Macros necessary to make lib extern variables globally visible in Win32 2001-11-19 03:08:44 +00:00
Andreas Gustafsson
9f6c66e1b3 Deal with AIX defining in6addr_any but not in6addr_loopback
in libc, even though both are declared in <netinet/in.h>.  This caused
named to fail to link on AIX after change 1083, which introduced
the first actual use of in6addr_loopback.
2001-11-01 22:39:30 +00:00
Mark Andrews
1255d388f0 1067. [func] Allow quotas to be soft, isc_quota_soft(). 2001-10-22 07:09:25 +00:00
Mark Andrews
31d3464c0c 1065. [func] Runtime support to select new / old style interface
scanning using ioctls.
2001-10-22 04:01:32 +00:00
Mark Andrews
9234d92d4e 1058. [func] Limited lifetime ticker timers are now available,
isc_timertype_limited.
2001-10-18 06:06:13 +00:00
Andreas Gustafsson
dcfc52bbba Added a version.h file for each library; made version
variables const
2001-10-16 23:21:07 +00:00
Mark Andrews
40dd9cb8cc 1024. [port] HP and Sun decided to use the same macros and
structures for different things.
2001-10-03 05:08:32 +00:00
Mark Andrews
c54091c8ed IPv6 addresses containing mapped IPv4 addresses generate the same hash
value as the equivalent IPv4 address.  This is now true regardless of
the value of address_only.  Document.
2001-10-02 06:06:15 +00:00
Mark Andrews
e0806ab5ed Correct comment saying that 'max_size' is ignored. 2001-09-07 00:51:51 +00:00
Andreas Gustafsson
50a8312c9f #define ISC_MEM_TRACKLINES 1 2001-09-06 23:03:17 +00:00
Andreas Gustafsson
6d858e75d4 more documentation; indentation 2001-09-06 22:13:47 +00:00
Andreas Gustafsson
18159f6f60 document what ISC_MEM_DEBUG does; clarify descriptions of other
memory debugging options
2001-09-06 18:23:35 +00:00
Brian Wellington
ed29aefe31 [RT #1709]
Change isc_entropy_usebestsource() to have saner semantics:
 - If an invalid file is specified, an error will be returned instead of the
   keyboard being used.
 - If no file is specified but a random device is present, the keyboard will
   be used if there is an error opening the random device.
 - ISC_ENTROPY_KEYBOARDYES indicates that the keyboard should be the
   only device used.  Otherwise, passing '-r keyboard' is meaningless
   on a machine with a random device, since the keyboard will not be used.

Change the callers in the dnssec tools and rndc-confgen to check for the
special file "keyboard" and call isc_entropy_usebestsource() with the right set
of parameters.
2001-09-05 22:32:09 +00:00
Andreas Gustafsson
c2df80e759 lower case 2001-08-30 20:40:27 +00:00
Mark Andrews
59251c9e9c isc_file_truncate() 2001-08-30 04:55:36 +00:00
Mark Andrews
aac5a28f1f LIBISCCFG_EXTERNAL_DATA should be in lwres/platform.h 2001-07-18 08:15:23 +00:00
Andreas Gustafsson
ba35e9924e added isc_file_ischdiridempotent() 2001-07-16 18:33:02 +00:00
Andreas Gustafsson
dee69dd3aa renamed isc_file_getabsolutepath() to isc_file_absolutepath()
to be more consistent with established naming conventions
2001-07-16 17:22:17 +00:00
Andreas Gustafsson
9115330256 coding style 2001-07-16 04:09:45 +00:00
Danny Mayer
3bd4083e48 Updates to support win32 2001-07-16 03:52:14 +00:00
Danny Mayer
c4958494a9 Updates to support LIBISC_EXTERNAL_DATA and misc. cleanup 2001-07-12 05:58:28 +00:00
David Lawrence
37aa910318 ISC_PLATFORM_USEDECLSPEC hook for Microsoft DLL declaration junk 2001-07-11 05:32:55 +00:00
Andreas Gustafsson
305795c093 finish app.h move 2001-07-06 22:12:21 +00:00
Andreas Gustafsson
96ed624253 923. [bug] Multiline TSIG secrets (and other multiline strings)
were not accepted in named.conf. [RT #1469]
2001-07-06 20:34:12 +00:00
Andreas Gustafsson
675a191f43 moved <isc/app.h> to OS-independent include directory 2001-07-06 19:50:05 +00:00
Mark Andrews
950d71eee3 allow maximum inuse memory to be tracked. 2001-06-27 23:29:29 +00:00
David Lawrence
9bfa90768a 907. [func] The ability to get entropy from either the
random device, a user-provided file or from
			the keyboard was migrated from the DNSSEC tools
			to libisc as isc_entropy_usebestsource().
2001-06-22 17:05:54 +00:00
Andreas Gustafsson
19872fdfb7 convert more socket errors to specific ISC error codes, notably ECONNRESET 2001-06-15 22:07:51 +00:00
David Lawrence
504f7802d4 893. [func] Removed isc_file_test() and added isc_file_exists()
for the basic functionality that was being added
			with isc_file_test().
2001-06-08 21:53:49 +00:00
Brian Wellington
338d559b3e remove extraneous blank line 2001-06-06 21:02:43 +00:00
David Lawrence
65640f401a Removed the requirement for isc_mem_setwater() that when the callback function
is not null then hi_water must exceed lo_water and both must be > 0.
Now requires hi_water >= lo_water, and they can both be 0.  Not allowing
them to be equal was just an unnecessary restriction, and letting them be 0
is useful for the case where the context has had non-zero values set, went
over hi_water and called the callback, and then wanted to remove limits
(perhaps because of a reconfiguration).  This allows the callback to
be signaled as ISC_MEM_LOWATER on the next isc_mem_put(), which the caller
might need to terminate any outstanding action that was triggered by
the hi_water.
2001-06-05 22:14:20 +00:00
David Lawrence
50b7860fff new function isc_file_test() as framework for determining various attributes
of a pathname
2001-05-31 10:53:14 +00:00
Andreas Gustafsson
c3ebcedbe5 Add isc_file_progname(), with trivial POSIX implementation, and
call it from main().  A separate WIN32 implementation will be needed.
2001-05-08 19:47:55 +00:00
Brian Wellington
d144ea1d1c isc_file_basename should return a (const char *) 2001-05-05 02:47:21 +00:00
Brian Wellington
f2194a8ba9 implement isc_file_basename() 2001-05-03 18:59:30 +00:00
Andreas Gustafsson
5e194abb5b 814. [bug] Socket objects left over from accept() failures
were incorrectly destroyed, causing corruption
                        of socket manager data structures.

 813.   [bug]           File descriptors exceeding FD_SETSIZE were handled
                        badly. [RT #1192]
2001-04-26 23:45:55 +00:00
Brian Wellington
672056d560 797. [func] Issue a warning if the 'directory' option contains
a relative path. [RT #269]
2001-03-29 02:33:48 +00:00
Brian Wellington
1d92d8a245 792. [cleanup] Replace the OMAPI command channel protocol with a
simpler one.
2001-03-27 00:44:59 +00:00
Brian Wellington
6eccf5bd07 788. [feature] Add the "match-mapped-addresses" options, which
causes IPv6 v4mapped addresses to be treated as
			IPv4 addresses for the purpose of acl matching.
2001-03-26 21:33:07 +00:00
Brian Wellington
734ae1f7c6 isc_{base64|hex}_decodestring took an unused mctx. Remove the mctx. 2001-03-22 00:07:07 +00:00
David Lawrence
a82fd2c01b added non-blocking locking, isc_rwlock_trylock() 2001-03-08 00:55:15 +00:00
Brian Wellington
2eb3dafdcf Add the socket flag ISC_R_NORETRY, which makes the socket code treat
a soft error as a hard error on send (that is, not retry it).  It also
modifies the code calling sendmsg() to retry on EINTR.
2001-03-06 01:23:03 +00:00
Danny Mayer
943322a123 Remove LIBISC_EXTERNAL_DATA usage 2001-03-05 18:47:00 +00:00
Danny Mayer
8096fe1df5 put function declaration on new line 2001-03-05 18:20:24 +00:00
David Lawrence
c56c28c3f2 grammatical typo in comment 2001-03-05 12:34:02 +00:00
Andreas Gustafsson
28a3d52904 define ISC_PLATFORM_QUADFORMAT in platform.h so that it can more easily
be overridden on Win32.  This means ISC_PLATFORM_LONGLONGEQUALLONG is no longer
needed. [RT #896]
2001-02-27 02:22:17 +00:00
Mark Andrews
df0f58959e 752. [func] Correct bad tv_usec elements returned by gettimeofday(). 2001-02-23 23:12:28 +00:00
Andreas Gustafsson
042285a6a6 localization-wise, an assertion error message saying
(literally) "INSIST(isc_msgcat_get(isc_msgcat, ISC_MSGSET_PRINT, ISC_MSG_USELD,
"use %ld instead of %D") == NULL) failed" is not really any more user-friendly
than one saying just "INSIST("use %ld instead of %D" == NULL) failed
2001-02-22 19:12:57 +00:00
Andreas Gustafsson
4115f9d34b revert 'protect long long with ISC_PLATFORM_HAVELONGLONG' change 2001-02-22 18:01:48 +00:00
Mark Andrews
0490a61acd protect long long with ISC_PLATFORM_HAVELONGLONG 2001-02-21 06:13:33 +00:00
Mark Andrews
754cca729d add long long test 2001-02-21 06:09:56 +00:00
Brian Wellington
94178e98f8 isc_base64_decodestring should take a const char *, not a char * 2001-02-15 23:21:47 +00:00
Andreas Gustafsson
02940eaf0f 736. [func] New functions isc_task_{begin,end}exclusive(). 2001-02-13 04:11:44 +00:00
Andreas Gustafsson
ea16b37d71 install refcount.h 2001-02-12 23:11:05 +00:00
Brian Wellington
1f7f8d5c07 Add isc_socket_sendto2() and isc_socket_recv2(). These versions take
a partially constructed event and flags.  The flags can include
ISC_SOCKFLAG_IMMEDIATE, which means that if the operation completes, the
event is filled in and not sent.
2001-02-12 21:43:17 +00:00
Brian Wellington
a13ca8a125 Add ISC_R_INPROGRESS (operation in progress) 2001-02-12 20:03:16 +00:00
Andreas Gustafsson
1d625775ee note that max_size and target_size apply only when
ISC_MEM_USE_INTERNAL_MALLOC is set
2001-02-09 19:19:17 +00:00
Andreas Gustafsson
dd0ef1a9d3 removed the unused and undocumented functions
isc_mem_preallocate(), isc_mem_valid(), isc_mem_setsplit(), and
isc_mem_restore()
2001-02-09 19:05:23 +00:00
Andreas Gustafsson
c674a8d5e7 documented the isc_mem_* interface 2001-02-09 18:51:20 +00:00
Andreas Gustafsson
3f53ec3bd7 added missing copyright message; ISC_REFERENCE_H -> ISC_REFCOUNT_H 2001-02-09 00:26:20 +00:00
Andreas Gustafsson
b7f7a77d56 #include <isc/mutex.h> 2001-02-09 00:20:01 +00:00
Brian Wellington
abc0c36dc3 The ISC__BUFFER_INIT macro had a typo. 2001-02-07 01:36:12 +00:00
Andreas Gustafsson
7e361074bc 724. [func] New libisc functions isc_netaddr_any(),
isc_netaddr_any6().
2001-02-02 02:48:47 +00:00
Brian Wellington
63ca494e7e Added the isc_refcount_t type, which is a generic locked reference counter,
and make the rbtdb, zone, and view objects use it.
This should reduce contention on other locks, since (in the normal)
implementation, the reference count has its own lock.  In the future, it
should also be possible to implement an isc_refcount_t with atomic operations
instead of mutexes, which should also help performance.
2001-01-30 02:50:51 +00:00
Brian Wellington
dd66e6306b Remove isc_socket/[send|recv]mark, which were never used. 2001-01-26 23:17:26 +00:00
Mark Andrews
4ae98f5100 Use approptiate typoe based on configure results. 2001-01-23 05:13:25 +00:00
Mark Andrews
66ad1d85cb 703. [port] sys/select.h is needed on older platforms. [RT #695] 2001-01-23 04:47:56 +00:00
Brian Wellington
499b34cea0 copyright update 2001-01-09 22:01:04 +00:00
Brian Wellington
7357590bee 656. [func] Treat an unescaped newline in a quoted string as
an error.  This means that TXT records with missing
                        close quotes should have meaningful errors printed.
2001-01-05 01:02:26 +00:00
Mark Andrews
4e7942dc76 648. [port] Add support for pre-RFC2133 IPv6 implementations. 2001-01-03 13:13:14 +00:00
Brian Wellington
ee303f481d 639. [bug] Reading entropy from the keyboard would sometimes fail.
[RT #591]

note: the entropy callback conventions should really be documented.
2000-12-27 00:11:26 +00:00
David Lawrence
8ab1d97093 sigh. "define" -> "defined". never make trivial changes without retesting. 2000-12-26 21:06:49 +00:00
David Lawrence
125a916d1a 637. [port] Use isc_u?int64_t instead of (unsigned) long long in
lib/isc/print.c.  Also allow lib/isc/print.c to
			be compiled even if the platform does not need it.
			[RT #592]

Also cleaned up some const issues.
2000-12-26 21:00:41 +00:00
David Lawrence
0b3427d15c 636. [port] Shut up MSVC++ about a possible loss of precision
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.
2000-12-26 20:51:14 +00:00
David Lawrence
f8da2d9583 634. [bug] A log file will completely stop being written when
it reaches the maximum size in all cases, not just
			when versioning is also enabled. [RT #570]
2000-12-23 19:23:48 +00:00
Brian Wellington
a644e87df7 Move the msgcat stuff into socket_log(), to avoid unnecessary calls to
isc_msgcat_get() and speed things up.
2000-12-19 20:35:37 +00:00
Andreas Gustafsson
6c29053a20 614. [bug] Checks for uninitialized link fields were prone
to false positives, causing assertion failures.
                        The checks are now disabled by default and may
                        be re-enabled by defining ISC_LIST_CHECKINIT.
2000-12-15 00:20:55 +00:00
David Lawrence
b74896ead5 599. [func] Added four new functions to the libisc log API to
support i18n messages.  isc_log_iwrite(),
			isc_log_ivwrite(), isc_log_iwrite1() and
			isc_log_ivwrite1() were added.

(The log.h/log.c changes were just minor formatting changes.)
2000-12-12 05:29:33 +00:00
Andreas Gustafsson
fc6f5743aa use isc_log_iwrite() for localized logging,
to keep backwards compatibility
2000-12-12 00:18:01 +00:00
Andreas Gustafsson
dea478db31 isc_symexists_ policies were not referred to by their
true names in the header comments
2000-12-11 04:08:52 +00:00
Andreas Gustafsson
10e22ebcc3 605. [func] New function isc_lex_getlasttokentext(). 2000-12-09 02:05:26 +00:00
David Lawrence
e544b507b8 602. [func] Cope automatically with UnixWare's broken
IN6_IS_ADDR_* macros. [RT #539]
2000-12-08 00:55:51 +00:00
Mark Andrews
6fda157766 ISC_LINK_*UNSAFE -> ISC_LINK_INITAND* 2000-12-07 20:15:58 +00:00
David Lawrence
b161f87be8 Updated API to support i18n message arguments to isc_log_{,v}write{,1}.
Provided isc_log_i{,v}write{,1}, with appropriate macro substitutions,
for files that are not yet converted to the new API.  When everything
is converted, the added functions will be removed.
2000-12-07 19:30:28 +00:00
David Lawrence
77078ddc9a added msgs.h 2000-12-06 01:24:24 +00:00
David Lawrence
87762baad1 oops, guess you guys need this 2000-12-06 01:21:51 +00:00
David Lawrence
9cd6d409b7 first pass at using isc_msgcat_get for message strings in libisc 2000-12-06 00:30:32 +00:00
Andreas Gustafsson
c52e5c8ed1 test the various memory debug flags with #if instead of #ifdef
so that they can be turned off by passing -DISC_MEM_FOO=0 on the compiler
command line; removed some historical cruft
2000-12-01 00:32:02 +00:00
Andreas Gustafsson
78aa86abc6 typos 2000-11-27 17:49:41 +00:00
Mark Andrews
8a0ff6c15c 576. [doc] isc_log_create() description did not match reality.
575.   [bug]           isc_log_create() was not setting internal state
                        correctly to reflect the default channels created.
2000-11-24 01:37:26 +00:00
Brian Wellington
cffe50abf6 Lots of copyright updates 2000-11-18 03:01:17 +00:00
Andreas Gustafsson
fcf28b759c Don't log ENFILE and EMFILE as unexpected errors 2000-11-18 02:56:48 +00:00
David Lawrence
21ec512685 some systems do not implement all of the resources of
the isc_resource_t enum, so the API was changed to return
ISC_R_NOTIMPLEMENTED in such cases.
2000-11-15 02:11:50 +00:00
Andreas Gustafsson
4b7018f4cc illegal token after #endif 2000-11-15 01:31:45 +00:00
David Lawrence
6c7b702df1 symbolic constant for the format string of a 64 bit long 2000-11-14 23:40:31 +00:00
David Lawrence
d653744935 isc_resource_t, isc_resourcevalue_t 2000-11-14 23:39:34 +00:00
David Lawrence
015c481e8b new functions, isc_resource_getlimit and isc_resource_setlimit, via new
header file, <isc/resource.h>
2000-11-14 23:39:15 +00:00
Brian Wellington
add4043305 The identical gettoken() routines in rdata.c, hex.c, and base64.c have
been replaced with isc_lex_getmastertoken().
2000-11-08 01:56:15 +00:00
Brian Wellington
19e0a2c2d1 Add isc_hex_* routines, which handle conversion to and from hex strings. 2000-11-07 20:58:08 +00:00
Andreas Gustafsson
b28d2a3d7b the established alternate spelling of 'template' is
'templet', not 'templat'
2000-10-20 22:09:01 +00:00
Mark Andrews
4b6d5b2312 528. [func] The ISC_LIST_XXXX macros now perform sanity checks
on their arguements.  ISC_LIST_XXXXUNSAFE can be use
                        to skip the checks however use with caution.
2000-10-20 13:35:58 +00:00
Mark Andrews
643f42815f Modified list macros w/ checking currently disabled. 2000-10-20 01:57:57 +00:00
Mark Andrews
9282d220f4 New functions isc_file_template(), isc_file_renameunique().
isc_file_template() allows the caller to specify the prefix unlike
isc_file_mktemplate().  The later is now written using isc_file_template().
2000-10-03 05:45:39 +00:00
Mark Andrews
cd5475efa4 Describe and enforce the contract for isc_event_allocate().
Silent failure for bad args is not the BIND 9 way.
2000-09-27 22:53:33 +00:00
Brian Wellington
c76926d714 comment updates 2000-09-26 22:14:35 +00:00
Andreas Gustafsson
94361d5867 simplified isc_random_jitter() and eliminated floating
point from the code using it in zone.c
2000-09-26 17:23:19 +00:00
Andreas Gustafsson
922e6a3c2a 478. [bug] "make install" failed if the directory specified with
--prefix did not already exist.
2000-09-20 19:06:16 +00:00
Bob Halley
3302ed8d6e bitstring assertion addition; doc fixes 2000-09-13 00:11:45 +00:00
Andreas Gustafsson
b7e031d517 435. [bug] dns_zone_dump() overwrote existing zone files
rather than writing to a temporary file and
                        renaming.  This could lead to empty or partial
                        zone files being left around in certain error
                        conditions involving the initial transfer of a
                        slave zone, interfering with subsequent server
                        startup. [RT #282]
2000-09-08 21:47:03 +00:00
Andreas Gustafsson
e881887f18 commented 2000-09-08 21:25:21 +00:00
Andreas Gustafsson
7ec4367f3d 434. [func] New function isc_file_isabsolute(). 2000-09-08 18:37:28 +00:00
Michael Graff
1deaf52c98 kill persistent errors. Always retry the I/O now. 2000-09-07 01:59:57 +00:00
Andreas Gustafsson
3bd723c53a clarified comment 2000-09-06 16:25:35 +00:00
Michael Graff
7da0286b54 get rid of isc_random_t -- use a wrapper around rand() instead that doesn't do as much work. Also, implement isc_random_jitter(), used to generate a value between a min, max, with a provided jitter value. 2000-09-06 02:40:00 +00:00
Mark Andrews
6c6bed90cb Add comments describing isc_mem_putanddetach(). 2000-09-05 22:20:36 +00:00
Mark Andrews
1162a4e02a New function isc_mem_putanddetach(). 2000-09-05 03:30:19 +00:00
Andreas Gustafsson
50a3152b70 clarified comment 2000-08-31 16:58:28 +00:00
Mark Andrews
3a34b87c87 Add cache cleaning support (disabled). 2000-08-31 12:15:17 +00:00
Mark Andrews
68e32e13a5 #include <isc/platform.h> 2000-08-30 21:24:57 +00:00
Brian Wellington
3c7f352550 single-threaded versions. 2000-08-29 00:33:36 +00:00
Andreas Gustafsson
892abf3178 added configure option --enable-threads/--disable-threads,
define ISC_PLATFORM_USETHREADS
2000-08-28 23:51:21 +00:00
Brian Wellington
762b1edceb DESTROYLOCK does not need a do { } while (0) construct. 2000-08-28 19:49:38 +00:00
Brian Wellington
6714319d0f Add a DESTROYLOCK macro to wrap isc_mutex_destroy() 2000-08-26 01:23:17 +00:00
Brian Wellington
4e0c5cba87 Added isc_consttextregion_t 2000-08-17 23:33:04 +00:00
Andreas Gustafsson
708c4ac042 stubbed out ISLOCKED() 2000-08-17 18:33:41 +00:00
Mark Andrews
2910719100 Add ISLOCKED macro. 2000-08-17 09:25:38 +00:00
Brian Wellington
acba1142b4 The region passed to isc_buffer_copyregion() should be const. 2000-08-17 02:09:12 +00:00
Brian Wellington
90c917523e entropy.h was missing from HEADERS, so it wasn't being installed. 2000-08-17 00:18:00 +00:00
David Lawrence
cd5a526372 ISC_R_NRESULTS was not bumped when ISC_R_FAMILYNOSUPPORT was added. 2000-08-15 23:30:22 +00:00
Mark Andrews
44215b932d 392. [func] Add ISC_R_FAMILYNOSUPPORT. Returned when OS does
not support the given address family requested.

 391.   [clarity]       ISC_R_FAMILY -> ISC_R_FAMILYMISMATCH.
2000-08-15 01:43:38 +00:00
Brian Wellington
5e989d1777 If isc_socket_bind tries to bind to a socket with a different address
family than the address specified, return a meaningful error.
2000-08-10 23:11:12 +00:00
Andreas Gustafsson
ff92fcaff3 some isc_sockaddr_* functions were undocumented, and others were
documented in the source file rather than the header file
2000-08-09 19:09:09 +00:00
Andreas Gustafsson
5bba7216f3 added isc_sockaddr_anyofpf() 2000-08-09 18:57:16 +00:00
David Lawrence
40f53fa8d9 Trailing whitespace trimmed. Perhaps running "perl util/spacewhack.pl in your
own CVS tree will help minimize CVS conflicts.  Maybe not.
Blame Graff for getting me to trim all trailing whitespace.
2000-08-01 01:33:37 +00:00
David Lawrence
15a4474541 word wrap copyright notice at column 70 2000-07-27 09:55:03 +00:00
David Lawrence
f6f4d7ee0f separate the ISC_R_NRESULTS macro from those that define result codes, for
clarity
2000-07-26 21:34:11 +00:00
Michael Graff
bfab56849d Revamp memory stuff.
Now, if you define ISC_MEM_TRACKLINES, and set isc_mem_debugging = 2 first
thing in main(), isc_mem_stats() will dump the file/line where any leaking
allocations were made.
2000-07-26 19:06:20 +00:00
Andreas Gustafsson
97684ed87d new functions isc_task_getname() and isc_task_gettag(),
to be used for debugging
2000-07-26 17:11:14 +00:00
Brian Wellington
9c4cba349f 334. [func] Added hmac-md5 to libisc. 2000-07-17 17:33:39 +00:00
Andreas Gustafsson
30576c592b 330. [func] New function isc_log_wouldlog(). 2000-07-13 00:19:02 +00:00
David Lawrence
9bf765ab3a 328. [func] Added isc_base64_decodestring().
(This is basically bin/named/server.c:base64_cstring_tobuffer(), which I
will remove in another revision that will not need to be pulled up.  I also
would like to change isc_base64_totext() and isc_base64_tobuffer() to be
isc_base64_encoderegion() and isc_base64_decodelexer(), unless there are
exceptions.  I find their existing names to be quite confusing with regard to
what translation function each performs.)
2000-07-11 21:51:13 +00:00
Mark Andrews
b47f3dc885 Add isc_lex_isfile(). 2000-07-10 05:11:18 +00:00
David Lawrence
de8e189332 300. [bug] Using both <isc/net.h> and <lwres/net.h> didn't work
on platforms lacking IPv6 because each included their
			own ipv6 header file for the missing definitions.  Now
			each library's ipv6.h defines the wrapper symbol of
			the other (ISC_IPV6_H and LWRES_IPV6_H).
2000-07-01 01:41:54 +00:00
Andreas Gustafsson
fe8d130967 make install didn't work when using separate build dir 2000-06-30 00:29:29 +00:00
David Lawrence
de88422aec only define ISC_MEM_DEBUG if it is not already defined, or if ISC_MEM_DEBUGOFF
is not defined.  no need to pull this one up to v9_0.
2000-06-28 03:46:37 +00:00
David Lawrence
ac9e556e49 use isc/lang.h and fix ISC_STDIO_H wrapper 2000-06-23 03:03:14 +00:00
David Lawrence
e9acb52098 use isc/lang.h and fix ISC_SHA1_H wrapper 2000-06-23 03:02:58 +00:00
David Lawrence
76d6c9e54f protect isc/formatcheck.h from check-includes.pl removal recommendation 2000-06-23 03:02:41 +00:00
David Lawrence
d7984899c8 use isc/lang.h 2000-06-23 03:02:04 +00:00
David Lawrence
bac5798358 use isc/lang.h and add protective ISC_FSACCESS_H wrapper 2000-06-23 03:01:46 +00:00
David Lawrence
8dfc0c1ab0 does not need isc/magic.h 2000-06-23 03:01:12 +00:00
David Lawrence
9c3531d72a add RCS id string 2000-06-22 22:00:42 +00:00
David Lawrence
7c74e180c2 update_copyrights 2000-06-22 03:00:36 +00:00
Brian Wellington
386a52a5ea Add isc/unix/os.c, which has isc_os_ncpus() 2000-06-22 01:06:35 +00:00
David Lawrence
49dbdb0186 update_copyrights 2000-06-21 22:05:07 +00:00
Andreas Gustafsson
0302c5670c do includes in alphabetical order 2000-06-21 17:27:55 +00:00
Michael Graff
96e79f7ede Fully implement callback sources, and add a test program to test it. 2000-06-21 00:04:57 +00:00
Michael Graff
b9672b61d8 add processing of sample sources, and of callback sources 2000-06-20 19:01:13 +00:00
David Lawrence
4acd8d2afe build fsaccess 2000-06-20 04:09:48 +00:00
David Lawrence
1f5eafd61b added ISC_R_NOTFILE and ISC_R_NOTDIRECTORY 2000-06-20 04:07:21 +00:00
David Lawrence
60f67141b8 added isc_fsaccess_t 2000-06-20 04:06:23 +00:00
David Lawrence
a904de0bc8 OS-independent filesystem permissions 2000-06-20 04:06:01 +00:00
Michael Graff
6d81064bf7 include isc/formatcheck.h 2000-06-19 22:16:25 +00:00
Michael Graff
9550eb2dab add formatcheck.h 2000-06-19 21:45:05 +00:00
David Lawrence
afd7f38277 style lint 2000-06-19 19:18:45 +00:00
Brian Wellington
0c7b7a19e5 Use GCC's format attribute for better error checking when possible. 2000-06-19 18:02:32 +00:00
Michael Graff
7685c082c8 remove flags from source types. It was never used, and probably shouldn't be there. 2000-06-17 01:42:21 +00:00
Michael Graff
fd316ab4f9 snapshot 2000-06-17 01:30:40 +00:00
Michael Graff
9ceb50ed04 protect isc_entropy_stats() with a lock, and use a static dumpstats() internally when a lock is already held, for debugging. Add isc_entropy_putdata() which can be used to prime the pool. 2000-06-17 00:43:11 +00:00
Michael Graff
e92d6ed5e7 snapshot 2000-06-16 01:38:13 +00:00
Michael Graff
f64ded0ac7 set ISC_SOCKEVENTATTR_MULTICAST on packets received from a multicast address 2000-06-15 18:25:49 +00:00
Michael Graff
d80da258e3 Add isc_netaddr_ismulticast() and isc_sockaddr_ismulticast() 2000-06-15 18:23:54 +00:00
Michael Graff
d2e9c94edb Add ISC_R_MULTICAST 2000-06-15 18:21:38 +00:00
Michael Graff
c3581e2bcc No need to destroy filesources -- they will clean up when the source is destroyed 2000-06-15 18:15:26 +00:00
Andreas Gustafsson
aa79283a0d 257. [bug] The server detached the last zone manager reference
too early, while it could still be in use by queries.
                        This manifested itself as assertion failures during the
                        shutdown process for busy name servers (RT #133).

 256.   [func]          isc_ratelimiter_t now has attach/detach semantics, and
                        isc_ratelimiter_shutdown guarantees that the rate
                        limiter is detached from its task.

 255.   [func]          New function dns_zonemgr_attach().
2000-06-15 17:40:22 +00:00
Andreas Gustafsson
7e86b27bc0 typos in comments 2000-06-15 16:46:24 +00:00
Michael Graff
f8b50c193f snapshot 2000-06-09 22:24:22 +00:00
Michael Graff
79fdce6aff add blocking mode, and add a flag to indicate the input is a device 2000-06-09 21:36:51 +00:00
Michael Graff
b90f80957a use create/attach/detach semantics 2000-06-09 19:18:56 +00:00
Michael Graff
b48abf6b85 snapshot 2000-06-09 17:25:41 +00:00
Michael Graff
c6e2d36708 snapshot 2000-06-09 02:00:22 +00:00
Michael Graff
60a7475dd8 checkpoint 2000-06-08 22:18:53 +00:00
Michael Graff
81b7c342c4 s/ISC_R_ENTROPY/ISC_R_NOENTROPY/g 2000-06-08 22:17:03 +00:00
Michael Graff
d10733a5a3 add ISC_R_ENTROPY 2000-06-08 19:23:04 +00:00
Michael Graff
016742f7d8 add stirring functions and other bits. Snapshot. 2000-06-08 06:35:49 +00:00
Michael Graff
270ad529d3 snapshot 2000-06-07 22:15:55 +00:00
Michael Graff
17b8fc714a snapshot 2000-06-07 20:55:12 +00:00
Brian Wellington
1ee3b153b6 Added length constants, changed _final parameter from array to pointer. 2000-06-07 02:28:43 +00:00
Michael Graff
f2314fbd79 fix comments 2000-06-07 01:17:06 +00:00
Michael Graff
bb2d54f1b3 build md5.c 2000-06-07 00:49:04 +00:00
Michael Graff
801c511ecd s/u_int/unsigned int/g 2000-06-07 00:30:42 +00:00
Michael Graff
676c534c8d We really don't need to export the sha1 transform() function, it is internal only. 2000-06-07 00:22:32 +00:00
Michael Graff
74da616f07 add sha1 implementation 2000-06-07 00:15:19 +00:00
Brian Wellington
54ef500660 Turn on ISC_MEM_DEBUG by default and define isc_mem_debugging as an extern
defaulting to ISC_FALSE.
2000-06-06 18:07:38 +00:00
Andreas Gustafsson
f6684513fa style; no functional change 2000-06-06 17:50:38 +00:00
Andreas Gustafsson
ee03a00244 changed references to 'binary buffer' in comments
to just 'buffer', as there is no longer a distinction between binary
and text buffers
2000-06-06 17:47:54 +00:00
David Lawrence
ed71ea51c6 Silence a few more warnings:
+ missing sigwait prototype on BSD/OS 4.0/4.0.1
 + PTHREAD_ONCE_INIT unbraced initializer warnings on Solaris 2.8.
 + IN6ADDR_ANY_INIT unbraced initializer warnings on BSD/OS 4.*, Linux and
   Solaris 2.8.
2000-06-06 16:06:50 +00:00
Michael Graff
2f1059efb7 checkpoint 2000-06-03 02:15:08 +00:00
David Lawrence
87cafc5e70 Megacommit of many files.
Mostly, several functions that take pointers as arguments, almost
always char * pointers, had those pointers qualified with "const".
Those that returned pointers to previously const-qualified arguments
had their return values qualified as const.  Some structure members
were qualified as const to retain that attribute from the variables
from which they were assigned.

The macro DE_CONST was added to isc/util.h to deal with a handful of very
special places where something is qualified as const but really needs to have
its const qualifier removed.

Also cleaned up a few places where variable names clashed with reserved
identifiers.  (Which mostly works fine, but strictly speaking is undefined
by the standard.)

Minor other ISC style cleanups.
2000-06-01 17:20:56 +00:00
Andreas Gustafsson
6c7bfa7c59 added ISC_NETADDR_FORMATSIZE as a counterpart to
ISC_SOCKADDR_FORMATSIZE and commented them both
2000-05-26 16:39:28 +00:00
Andreas Gustafsson
8eaa51a699 new functions isc_netaddr_totext() and isc_netaddr_format() 2000-05-26 00:41:03 +00:00
Andreas Gustafsson
1b106e224d typo: *lcfgp points to a logging configuration
not a logging context
2000-05-25 05:07:21 +00:00
David Lawrence
ed019cabc1 fixed lines > 79 columns wide 2000-05-24 05:10:00 +00:00
Andreas Gustafsson
bac6f7fd14 the comments for isc_ratelimiter_create() said the
events are executed in the context of 'task'; this is no longer true
2000-05-22 19:47:43 +00:00
Michael Graff
24d3d0ecff fix a slight documentation bug 2000-05-20 01:30:16 +00:00
David Lawrence
e6ce1a0ea9 use _PLATFORM_NEEDINETIN6H 2000-05-18 22:43:48 +00:00
Mark Andrews
1aae402fc3 187. [func] isc_ratelimter_enqueue() has an additional arguement
'task'.

 checkpoint zone maintence / notify work.
2000-05-18 04:43:00 +00:00
Mark Andrews
fc1feadb61 Add ISC_SOCKADDR_FORMATSIZE macro. 2000-05-17 02:20:58 +00:00
David Lawrence
600cfa2ba4 184. [cleanup] Variables/functions which began with two leading
underscores were made to conform to the ANSI/ISO
                        standard, which says that such names are reserved.
2000-05-16 05:19:47 +00:00
David Lawrence
6d8cdbaff4 185. [bug] Fixed up handling of ISC_MEMCLUSTER_LEGACY. Several
public functions did not have an isc__ prefix, and
                        referred to functions that had previously been
                        renamed.

 184.   [cleanup]       Variables/functions which began with two leading
                        underscores were made to conform to the ANSI/ISO

function declaration and comment reformatting in accordance with coding
style document.

check_overrun conditionally compiled based on ISC_MEM_FILL and
ISC_MEM_CHECKOVERRUN to avoid compiler warnings about being defined
but not used if one of those two CPP symbols is not defined.
2000-05-16 05:17:31 +00:00
David Lawrence
a120694df8 conform variable names in isc_.*region_consume to ANSI/ISO standard 2000-05-16 03:37:40 +00:00
David Lawrence
2918b5bda6 ISC_LOG_PRINTTAG/isc_log_settag()/isc_log_gettag() added 2000-05-16 03:37:39 +00:00
Mark Andrews
5273184ae1 Add isc_file_settime() set access and modification times. 2000-05-16 02:13:08 +00:00
David Lawrence
c5c3b17a0a added ISC_R_RANGE 2000-05-15 20:37:06 +00:00
Andreas Gustafsson
527ea00c17 174. [func] New public function isc_sockaddr_format(), for
formatting socket addresses in log messages.
2000-05-14 20:42:43 +00:00
David Lawrence
2467f3cafd Removed comment about some day prefixing members of ISC_EVENT_COMMON
with ev_ prefix, since that has been done.
2000-05-14 02:12:18 +00:00
David Lawrence
e52750239e Changed the CPP symbol it uses from *_HAVENETINET6* to *_NEEDNETINET6*
to better clarify what is going on with regard to the symbol.
2000-05-13 18:18:08 +00:00
Michael Graff
3ee8ba5e32 expand on why magic numbers need to be first in the structure 2000-05-11 16:18:01 +00:00
David Lawrence
d8e34837cd isc_file_{stdiofunc} -> isc_stdio_* 2000-05-11 16:14:05 +00:00
Mark Andrews
c052487cdf 169. [func] ratelimiter can now process N events per interval. 2000-05-11 09:23:29 +00:00
Michael Graff
2fc337ec38 add isc_socket_isbound() 2000-05-11 07:39:17 +00:00
Michael Graff
8321dd2150 add ISC_R_NOTBOUND and ISC_R_NOTCONNECTED and return them where appropriate. 2000-05-11 05:43:53 +00:00
Michael Graff
2968701c3a require that magic numbers be the first item in the structure. 2000-05-10 17:45:45 +00:00
Michael Graff
86bf5e8c34 add ISC_MAGIC('a','b','c','d') to make specifying magic numbers a bit more
readable
2000-05-10 17:06:57 +00:00
Andreas Gustafsson
996f4a8bc3 164. [cleanup] Added functions isc_file_fopen(), isc_file_fclose(),
isc_file_fseek(), isc_file_fread(), isc_file_fwrite(),
                        isc_file_fflush(), isc_file_ffsync(), isc_file_remove()
                        to encapsulate nonportable usage of errno and fflush().
2000-05-09 23:19:32 +00:00
Andreas Gustafsson
6a13d6f3c6 Added result codes ISC_R_FILENOTFOUND and ISC_R_FILEEXISTS 2000-05-09 23:10:34 +00:00
David Lawrence
681bd61239 isc/{unix,win32}/include/isc/ipv6.h moved to isc/include/isc/ipv6.h 2000-05-09 00:55:59 +00:00
David Lawrence
1a69a1a78c Megacommit of dozens of files.
Cleanup of redundant/useless header file inclusion.

ISC style lint, primarily for function declarations and standalone
comments -- ie, those that appear on a line without any code, which
should be written as follows:
   /*
    * This is a comment.
    */
2000-05-08 14:38:29 +00:00
Michael Graff
6c41175537 add isc_sockaddr_any() and isc_sockaddr_any6 to set up a wildcarded address/port for v4 and v6 sockaddrs 2000-05-06 01:49:43 +00:00
Michael Graff
96e3bc37e6 document that before send*() or recv*() may be called, the socket must be bound either via connect() or bind() 2000-05-06 01:49:07 +00:00
Michael Graff
ece3d6c356 Cause runtime probing of v6 addresses to fail, even if we can actually
make v6 sockets, but we do not have struct in6_pktinfo.

Add a check in configure.in for struct in6_pktinfo.

Use the result of that check to define (if needed) in6_pktinfo in net.h.

This change makes us build on platforms that have SOME ipv6 structures
(like in6_addr, etc) but not enough to be useful to us.

Note:  Before making an ipv6 socket the code should verify that ipv6
sockets can be made using isc_net_probeipv6().  It should also
check for v4 sockets using isc_net_probeipv4() to be consistant.
2000-05-06 01:30:32 +00:00
Michael Graff
1a487fb7d2 Add isc_log_setcontext() to set the isc_lctx global (ala dns_lctx) and add module names for isc/socket 2000-05-03 21:09:34 +00:00
David Lawrence
b887048653 move prototype for isc_string_separate outside of ISC_PLATFORM_NEEDSTRSEP test 2000-04-28 22:47:45 +00:00
David Lawrence
358628c8f4 138. [cleanup] isc_strtouq moved from str.[ch] to string.[ch] and
renamed isc_string_touint64.  isc_strsep moved from
                        strsep.c to string.c and renamed isc_string_separate.
2000-04-28 22:40:10 +00:00
David Lawrence
54a2e7e8a2 137. [cleanup] <isc/commandline.h>, <isc/mem.h>, <isc/print.h>
<isc/serial.h>, <isc/string.h> and <isc/offset.h>
                        made to conform to the same style for multiple
                        inclusion protection.
2000-04-28 22:13:15 +00:00
David Lawrence
027212247d 136. [cleanup] <isc/commandline.h>, <isc/interfaceiter.h>,
<isc/net.h> and Win32's <isc/thread.h> needed
                        ISC_LANG_BEGINDECLS/ISC_LANG_ENDDECLS.
2000-04-28 22:09:15 +00:00
David Lawrence
738922ba7b 133. [cleanup] <isc/ipv6.h> needs <isc/platform.h>. 2000-04-28 21:19:55 +00:00
David Lawrence
9c4f33b671 131. [cleanup] <isc/mutex.h> and <isc/util.h> need <isc/result.h>
for ISC_R_* codes used in macros.
2000-04-28 19:03:50 +00:00
David Lawrence
b22879b057 include <isc/asssertions.h> since several defines depend on it 2000-04-28 18:32:30 +00:00
David Lawrence
904463e94c 126. [cleanup] <isc/quota.h> and <isc/taskpool.h> need <isc/lang.h>. 2000-04-28 17:24:26 +00:00
David Lawrence
2d78d06402 125. [cleanup] <isc/eventclass.h>, <isc/ipv6.h>, <isc/magic.h>,
<isc/mutex.h>, <isc/once.h>, <isc/region.h>, and
                        <isc/resultclass.h> do not need <isc/lang.h>.
2000-04-28 17:19:11 +00:00
David Lawrence
bf6f755a74 <isc/magic.h> does not need <isc/lang.h>. 2000-04-28 16:55:58 +00:00
David Lawrence
dd518cf33d make conforming inclusion wrapper 2000-04-28 16:54:53 +00:00
David Lawrence
56433595bb <isc/event.h> does not need <stddef.h>. 2000-04-28 04:34:30 +00:00
David Lawrence
fc9e755ba3 <isc/task.h> does not need <isc/mem.h> or <isc/result.h>. 2000-04-28 04:26:08 +00:00
David Lawrence
7896e45912 121. [cleanup] <isc/symtab.h> does not need <isc/mem.h> or
<isc/result.h>.  Multiple inclusion protection
                        symbol fixed from ISC_SYMBOL_H to ISC_SYMTAB_H.
                        isc_symtab_t moved to <isc/types.h>.
2000-04-28 04:16:34 +00:00
David Lawrence
ed94876a19 missing ifndef ISC_STRING_H wrapper for body 2000-04-28 03:56:27 +00:00
David Lawrence
32eddfc189 120. [cleanup] <isc/socket.h> does not need <isc/boolean.h>,
<isc/bufferlist.h>, <isc/task.h>, <isc/mem.h> or
                        <isc/net.h>.
2000-04-28 03:53:48 +00:00
Bob Halley
4e507aaa4e add assertion and error macros 2000-04-28 01:03:42 +00:00
Bob Halley
35ffe86508 namespace goodness 2000-04-28 01:03:24 +00:00
David Lawrence
61e9c1cdbe 116. [func] Added <isc/offset.h> for isc_offset_t 2000-04-28 00:36:56 +00:00
David Lawrence
d1baeb3888 sys/types.h needed for some (BSD/OS pre-4.1) systems 2000-04-27 23:44:44 +00:00
David Lawrence
2cc1d2536d 114. [cleanup] <isc/sockaddr.h> does not need <isc/buffer.h> or <isc/list.h>. 2000-04-27 23:29:28 +00:00
David Lawrence
6d208969b3 112. [cleanup] <isc/serial.h> does not need <isc/boolean.h>. 2000-04-27 23:08:18 +00:00
David Lawrence
145bd6ea33 111. [cleanup] <isc/rwlock.h> does not need <isc/result.h> or
<isc/mutex.h>.
2000-04-27 23:01:34 +00:00
David Lawrence
0c33e418cb 110. [cleanup] <isc/result.h> does not need <isc/boolean.h> or
<isc/list.h>.
2000-04-27 22:48:57 +00:00
Bob Halley
6699408663 rename internal functions 2000-04-27 20:20:12 +00:00
Michael Graff
d8d845eb47 Call the macros from within the compiled functions. This puts the implementation in one place (buffer.h) and the REQUIRE() checking in buffer.c 2000-04-27 02:12:10 +00:00
Michael Graff
35a8d16d61 Make many functions (optionally) inlined. Currently disabled. To enable, see the top of buffer.h 2000-04-27 01:46:16 +00:00
David Lawrence
6e49e91bd0 103. [func] libisc buffer API changes for <isc/buffer.h>:
Added:
                                isc_buffer_base(b)          (pointer)
                                isc_buffer_current(b)       (pointer)
                                isc_buffer_active(b)        (pointer)
                                isc_buffer_used(b)          (pointer)
                                isc_buffer_length(b)            (int)
                                isc_buffer_usedlength(b)        (int)
                                isc_buffer_consumedlength(b)    (int)
                                isc_buffer_remaininglength(b)   (int)
                                isc_buffer_activelength(b)      (int)
                                isc_buffer_availablelength(b)   (int)
                        Removed:
                                ISC_BUFFER_USEDCOUNT(b)
                                ISC_BUFFER_AVAILABLECOUNT(b)
                                isc_buffer_type(b)
                        Changed names:
                                isc_buffer_used(b, r) ->
                                        isc_buffer_usedregion(b, r)
                                isc_buffer_available(b, r) ->
                                        isc_buffer_available_region(b, r)
                                isc_buffer_consumed(b, r) ->
                                        isc_buffer_consumedregion(b, r)
                                isc_buffer_active(b, r) ->
                                        isc_buffer_activeregion(b, r)
                                isc_buffer_remaining(b, r) ->
                                        isc_buffer_remainingregion(b, r)

                        Buffer types were removed, so the ISC_BUFFERTYPE_*
                        macros are no more, and the type argument to
                        isc_buffer_init and isc_buffer_allocate were removed.
                        isc_buffer_putstr is now void (instead of isc_result_t)
                        and requires that the caller ensure that there
                        is enough available buffer space for the string.
2000-04-27 00:03:12 +00:00
David Lawrence
f6cdcafa33 100. [cleanup] <isc/random.h> does not need <isc/int.h> or
<isc/mutex.h>.  isc_random_t moved to <isc/types.h>.
2000-04-26 17:25:03 +00:00
Andreas Gustafsson
16a107c904 rate limiter now has separate shutdown() and
destroy() functions, and it guarantees that all queued
events are delivered even in the shutdown case
2000-04-26 17:10:32 +00:00
David Lawrence
b5dbab9c3f typedef isc_ondestroy_t moved to <isc/types.h> 2000-04-26 17:06:44 +00:00
Andreas Gustafsson
8e04f382b6 updated comments based on API review 2000-04-26 17:04:11 +00:00
Andreas Gustafsson
bfcb9c7878 added ISC_EVENTCLASS_RATELIMITER 2000-04-26 16:59:18 +00:00
Andreas Gustafsson
e2e72750af added ISC_EVENTATTR_CANCELED 2000-04-26 16:58:17 +00:00
David Lawrence
33e927bf86 98. [cleanup] <isc/print.h> does not need <stdarg.h> or <stddef.h>
unless ISC_PLATFORM_NEEDVSNPRINTF is defined.
2000-04-26 02:18:59 +00:00
David Lawrence
3e6b98586e <isc/ondestroy.h> does not need <stddef.h> or <isc/event.h>. 2000-04-26 01:54:48 +00:00
David Lawrence
947bd6c648 <isc/mutex.h> does not need <isc/lang.h> or <isc/result.h>. 2000-04-26 01:29:27 +00:00
David Lawrence
878363c06b 95. [cleanup] <isc/mutexblock.h> does not need <isc/result.h>. 2000-04-26 01:18:24 +00:00
David Lawrence
a890fbefa3 C++ reserves the word "template"; use "templet" as the parameter to
isc_file_openunique
2000-04-26 00:45:24 +00:00
David Lawrence
b8957f3496 93. [cleanup] <isc/msgcat.h> does not need <isc/result.h>. 2000-04-26 00:21:42 +00:00
David Lawrence
c7f22f83aa 92. [cleanup] <isc/mem.h> does not need <stddef.h>, <isc/boolean.h>,
or <isc/result.h>.
2000-04-26 00:15:39 +00:00
David Lawrence
c4717613e4 <isc/log.h> does not need <sys/types.h> or <isc/result.h> 2000-04-25 23:44:20 +00:00
Andreas Gustafsson
fc4256ffdd need <isc/lang.h> 2000-04-25 23:29:02 +00:00
David Lawrence
e8d3d40f0b do not include obsolete rbtgen.h in HEADERS 2000-04-25 23:16:59 +00:00
David Lawrence
11e0238bbe do not include obsolete mktemplate.h and ufile.h in HEADERS 2000-04-25 23:15:38 +00:00
David Lawrence
d41c9885ec <isc/lex.h> does not need <stddef.h> 2000-04-25 23:08:16 +00:00
David Lawrence
334a4057e0 added isc_interface_t and isc_interfaceiter_t 2000-04-25 23:07:46 +00:00
David Lawrence
38feb01f1b 88. [cleanup] <isc/interfaceiter.h> does not need <isc/result.h> or
<isc/mem.h>.  isc_interface_t and isc_interfaceiter_t
                        moved to <isc/types.h>.
2000-04-25 22:55:50 +00:00
David Lawrence
802aa6f2b7 87. [cleanup] <isc/heap.h> does not need <isc/boolean.h>,
<isc/mem.h> or <isc/result.h>.
(... and now heap.c needs <isc/mem.h>.)
2000-04-25 22:32:26 +00:00
David Lawrence
f42e994baf added isc_bufferlist_t 2000-04-25 22:30:13 +00:00
David Lawrence
5baea3a021 Move isc_bufferlist_t to isc/types.h.
Do not need isc/buffer.h or isc/list.h.
2000-04-25 22:29:55 +00:00
David Lawrence
9cd39d7306 include <isc/types.h> instead of <isc/time.h> and <isc/result.h> 2000-04-25 22:04:08 +00:00
David Lawrence
408c676732 85. [cleanup] <isc/bufferlist.h> does not need <isc/mem.h>,
<isc/region.h> or <isc/int.h>.
2000-04-25 22:02:54 +00:00
David Lawrence
cc43f2461d 82. [cleanup] <isc/buffer.h> does not need <isc/list.h>. 2000-04-25 21:44:27 +00:00
David Lawrence
58bc93c3dd 81. [cleanup] <isc/int.h> and <isc/boolean.h> do not need
<isc/lang.h>.
2000-04-25 21:16:12 +00:00
David Lawrence
7ce81e15fa 80. [cleanup] <isc/print.h> does not need <stdio.h> or <stdlib.h>.
(and now dns/ttl.c needs it since it was taken out of isc/print.h)
2000-04-25 20:20:31 +00:00
David Lawrence
0a7bde9fa8 isc_interval_t and isc_time_t typedefs moved to isc/types.h 2000-04-25 19:33:07 +00:00
David Lawrence
cc19a2200f Removed mktemplate.h, ufile.h. Install file.h instead. 2000-04-24 21:49:50 +00:00
David Lawrence
8b7304a34c 73. [func] New "file" API in libisc, including new function
isc_file_getmodtime, isc_mktemplate renamed to
                        isc_file_mktemplate and isc_ufile renamed to
                        isc_file_openunique.  By no means an exhaustive API,
                        it is just what's needed for now.
2000-04-24 21:36:10 +00:00
David Lawrence
945874face rbtgen was never used by anything 2000-04-24 20:45:19 +00:00
Michael Graff
e44487bfc2 convert sender, arg, action, etc. to ev_sender, ev_arg, ev_action, etc. 2000-04-17 19:22:44 +00:00
Bob Halley
64b1a68e10 isc_task_create() no longer takes an mctx.
isc_task_mem() has been eliminated.
Use memory context reference counting.
2000-04-12 01:34:16 +00:00
Bob Halley
fd3271152c Add isc_mem_attach(), isc_mem_detach(), isc_mem_preallocate(), and
isc_mem_setsplit().  Rename isc_mem_destroy_check() to
isc_mem_setdestroycheck().  Add isc_mem_inuse().
2000-04-12 01:24:17 +00:00
Andreas Gustafsson
0f7045b0c4 moved a few more typedefs to <isc/types.h>: isc_region_t,
isc_textregion_t, isc_lex_t
2000-04-10 21:57:24 +00:00
Andreas Gustafsson
e9da40a783 no need to include <isc/buffer.h>, <isc/result.h> from <isc/base64.h> 2000-04-10 21:35:48 +00:00
Andreas Gustafsson
e3b279bfa9 no need to include <isc/buffer.h>, <isc/result.h>, <isc/mem.h> from <isc/base64.h> 2000-04-10 21:33:36 +00:00
Andreas Gustafsson
dc46294525 added log.h and ondestroy.h to HEADERS 2000-04-04 23:04:30 +00:00
Andreas Gustafsson
e247a05711 need <sys/types.h> 2000-04-04 23:03:44 +00:00
Andreas Gustafsson
8f804834e2 moved logging typedefs from <isc/log.h> to <isc/types.h> 2000-04-04 20:09:05 +00:00