Commit graph

247 commits

Author SHA1 Message Date
Mukund Sivaraman
03be5a6b4e Improve performance for delegation heavy answers and also general query performance (#44029) 2017-04-22 09:22:44 +05:30
Mark Andrews
4a85cab586 mem_put/mem_get were inconsistent in updating ctx->malloced if ISC_MEM_CHECKOVERRUN was defined 2017-02-03 12:39:35 +11:00
Tinderbox User
194f07c628 update copyright notice / whitespace 2017-02-02 23:45:47 +00:00
Mark Andrews
f783c2d579 4562. [func] Add additional memory statistics currently malloced
and maxmalloced per memory context. [RT #43593]
2017-02-02 15:36:38 +11:00
Mark Andrews
0c27b3fe77 4401. [misc] Change LICENSE to MPL 2.0. 2016-06-27 14:56:38 +10:00
Witold Krecicki
7a00d69909 4376. [experimental] Added support for Catalog Zones, a new method for
provisioning secondary servers in which a list of
                        zones to be served is stored in a DNS zone and can
                        be propagated to slaves via AXFR/IXFR. [RT #41581]

4375.   [func]          Add support for automatic reallocation of isc_buffer
                        to isc_buffer_put* functions. [RT #42394]
2016-05-26 21:23:19 +02:00
Tinderbox User
220ba6da87 update copyright notice / whitespace 2016-03-04 23:45:23 +00:00
Evan Hunt
d4ed29b019 [rt41656] line length
(cherry picked from commit 6957e9451cc7bf89d44716dfe4266281867e00e5)
2016-03-04 13:01:54 +05:30
Mukund Sivaraman
9da98335c1 Code cleanups (#41656) 2016-03-04 12:18:17 +05:30
Evan Hunt
fc5f1971a1 [master] fix build error with ISC_MEM_TRACKLINES=0 2015-07-09 14:23:29 -07:00
Mukund Sivaraman
fba894c98b Some cleanups in isc mem code (#38896) 2015-03-27 23:12:11 +05:30
Mukund Sivaraman
24f2cc7d06 Fix a possible race in updating stats counters (#38826)
and do some other isc mem cleanups.
2015-03-09 10:30:47 +05:30
Mukund Sivaraman
5a505fc4c2 Add facility to run system test nameds under Valgrind (#38546) 2015-02-25 09:06:45 +05:30
Evan Hunt
84ee90b52d [master] fix 'total use' accounting
4046.   [bug]           Accounting of "total use" in memory context
                        statistics was not correct. [RT #38370]
2015-01-22 09:44:24 -08:00
Tinderbox User
c110d61b17 update copyright notice / whitespace 2015-01-20 23:45:26 +00:00
Evan Hunt
11463c0ac2 [master] clean up gcc -Wshadow warnings
4039.	[cleanup]	Cleaned up warnings from gcc -Wshadow. [RT #37381]
2015-01-20 13:29:18 -08:00
Mark Andrews
50a7454174 3868. [bug] isc_mem_setwater incorrectly cleared hi_called
potentially leaving over memory cleaner running.
                        [RT #35270]
2014-06-02 16:31:42 +10:00
Evan Hunt
b454c03196 [master] use ANSI prototypes, clean up some casts 2014-03-04 10:42:25 -08:00
Tinderbox User
431a83fb29 update copyright notice 2014-01-09 23:46:35 +00:00
Evan Hunt
e851ea8260 [master] replace memcpy() with memmove().
3698.	[cleanup]	Replaced all uses of memcpy() with memmove().
			[RT #35120]
2014-01-08 16:39:05 -08:00
Mark Andrews
c3c8823fed 3681. [port] Update the Windows build system to support feature
selection and WIN64 builds.  This is a work in
                        progress. [RT #34160]
2013-12-04 12:47:23 +11:00
Mark Andrews
45b727f651 silence coverity warnings 2013-04-11 17:07:50 +10:00
Tinderbox User
12253af346 update copyright notice 2013-04-10 23:46:01 +00:00
Evan Hunt
b99bfa184b [master] unify internal and export libraries
3550.	[func]		Unified the internal and export versions of the
			BIND libraries, allowing external clients to use
			the same libraries as BIND. [RT #33131]
2013-04-10 13:49:57 -07:00
Tinderbox User
22dd28c5bc update copyright notice 2013-03-13 23:46:08 +00:00
Evan Hunt
feb067b25a [master] add JSON statistics channel
3524.	[func]		Added an alternate statistics channel in JSON format,
			when the server is built with the json-c library:
			http://[address]:[port]/json.  [RT #32630]
2013-03-13 14:24:50 -07:00
Mark Andrews
07cab7ffa8 improve isc_mempool_put memory model 2012-11-02 16:02:15 +11:00
Mark Andrews
ffd17aca38 move memory accounting to before free of memory to avoid "using" a pointer after it is freed 2012-11-02 15:57:56 +11:00
Mark Andrews
d9baadbb0c add coverity[+free : arg-1] directive 2012-11-02 11:16:32 +11:00
Tinderbox User
fcd7c22fdf update copyright notice 2012-10-31 23:45:49 +00:00
Mark Andrews
bbf31e6b62 More coverity fixes:
3410.   [bug]           Addressed Coverity warnings. [RT #31626]
Squashed commit of the following:

commit 6fec07bbb69ead784063052f2099674f8b52c6b3
Author: Mark Andrews <marka@isc.org>
Date:   Tue Oct 30 18:14:35 2012 +1100

    use strl{cat,cpy}

commit 19a5d3766f3dbc8a2944b21640a8226a89aae7ba
Author: Mark Andrews <marka@isc.org>
Date:   Tue Oct 30 14:38:55 2012 +1100

    address unchecked xmlTextWriter* calls
2012-11-01 10:22:11 +11:00
Evan Hunt
2f57f353e8 [master] address mem.c compilation problems
3406.	[bug]		mem.c: Fix compilation errors when building with
			ISC_MEM_TRACKLINES or ISC_MEMPOOL_NAMES disabled.
                        Also, ISC_MEM_DEBUG is no longer optional. [RT #31559]
2012-10-25 18:56:47 -07:00
Mark Andrews
c963ca7542 3351. [bug] isc_mem_put and isc_mem_putanddetach didn't report
caller if either ISC_MEM_DEBUGSIZE or ISC_MEM_DEBUGCTX
                        memory debugging flags are set. [RT #30243]
2012-07-18 10:02:32 +10:00
Mark Andrews
d0d892f449 3350. [bug] Memory read overrun in isc___mem_reallocate if
ISC_MEM_DEBUGCTX memory debugging flag is set.
                        [RT #30240]
2012-07-18 09:50:52 +10:00
Evan Hunt
dd2a0a6d2d Merge statistics code (ATT SoW, rt24117)
This includes the following changes:

3326.	[func]		Added task list statistics: task model, worker
			threads, quantum, tasks running, tasks ready.
			[RT #27678]

3325.	[func]		Report cache statistics: memory use, number of
			nodes, number of hash buckets, hit and miss counts.
			[RT #27056]

3324.	[test]		Add better tests for ADB stats [RT #27057]

3323.	[func]		Report the number of buckets the resolver is using.
			[RT #27020]

3322.	[func]		Monitor the number of active TCP and UDP dispatches.
			[RT #27055]

3321.	[func]		Monitor the number of recursive fetches and the
			number of open sockets, and report these values in
			the statistics channel. [RT #27054]

3320.	[func]		Added support for monitoring of recursing client
			count. [RT #27009]

3319.	[func]		Added support for monitoring of ADB entry count and
			hash size. [RT #27057]
2012-05-14 10:06:05 -07:00
Tinderbox User
5fa46bc916 update copyright notice 2012-03-10 23:45:53 +00:00
Mark Andrews
28a8f5b0de set $Id$ 2012-03-08 00:21:15 +11:00
Mark Andrews
e334405421 2981. [func] Partial DNS64 support (AAAA synthesis). [RT #21991] 2010-12-08 02:46:17 +00:00
Automatic Updater
cc4dd0d08d update copyright notice 2010-08-11 23:46:42 +00:00
Tatuya JINMEI 神明達哉
253ae50e09 required ctx is valid in mem_isovermem(). 2010-08-11 23:11:45 +00:00
Tatuya JINMEI 神明達哉
27fe1966c9 2937. [bug] Worked around an apparent race condition in over
memory conditions.  Without this fix a DNS cache DB or
			ADB could incorrectly stay in an over memory state,
			effectively refusing further caching, which
			subsequently made a BIND 9 caching server unworkable.
			This fix prevents this problem from happening by
			polling the state of the memory context, rather than
			making a copy of the state, which appeared to cause
			a race.  This is a "workaround" in that it doesn't
			solve the possible race per se, but several experiments
			proved this change solves the symptom.  Also, the
			polling overhead hasn't been reported to be an issue.
			This bug should only affect a caching server that
			specifies a finite max-cache-size.  It's also quite
			likely that the bug happens only when enabling threads,
			but it's not confirmed yet. [RT #21818]
2010-08-11 22:54:58 +00:00
Mark Andrews
2fca4a3321 2882. [bug] Remove memory context from list of active contexts
before clearing 'magic'. [RT #21274]
2010-05-12 00:46:55 +00:00
Automatic Updater
4d42b714be update copyright notice 2010-03-04 23:50:34 +00:00
Mark Andrews
d1a5fdc34a 2955. [bug] The size of a memory allocation was not always properly
recorded. [RT #20927]
2010-03-04 05:29:15 +00:00
Evan Hunt
e7c38ca963 - define isc_mem_reallocate() in the abstract API for export lib [rt20208]
- define BIND9 in config.h.win32
- fix problems in mem.h caused by the win32 preprocessor failing to
  expand macros used within macros
- silence a win32 compiler warning in hip_55.c
2009-09-02 23:43:54 +00:00
Tatuya JINMEI 神明達哉
8fec8134ea suppress compiler warnings [RT #20203] 2009-09-02 04:25:19 +00:00
Automatic Updater
823ca3c14f update copyright notice 2009-09-01 23:47:45 +00:00
Tatuya JINMEI 神明達哉
307d208450 2660. [func] Add a new set of DNS libraries for non-BIND9
applications.  See README.libdns. [RT #19369]
2009-09-01 00:22:28 +00:00
Mark Andrews
6fbeed7f8f silence 'Different types treated as unsigned for >=.' warning 2009-02-16 03:16:10 +00:00
Tatuya JINMEI 神明達哉
77d90dc2b5 2547. [bug] openssl_link.c:mem_realloc() could reference an
out-of-range area of the source buffer.  New public
			function isc_mem_reallocate() was introduced to address
			this bug. [RT #19313]
2009-02-11 03:04:18 +00:00
Automatic Updater
3319413a67 update copyright notice 2009-01-22 23:47:54 +00:00
Mark Andrews
f148f53794 2536. [cleanup] Silence some warnings when -Werror=format-security is
specified. [RT #19083]
2009-01-22 05:39:29 +00:00
Mark Andrews
3f42cf2f3e 2349. [func] Provide incremental re-signing support for secure
dynamic zones. [RT #1091]

back out incorrect branch rt1091 and apply correct branch rt1091a.
2008-04-02 02:37:42 +00:00
Mark Andrews
a76b380643 2349. [func] Provide incremental re-signing support for secure
dynamic zones. [RT #1091]
2008-04-01 01:37:25 +00:00
Automatic Updater
db0008c448 update copyright notice 2008-03-31 23:47:11 +00:00
Mark Andrews
cffe96e267 2346. [func] Memory statistics now cover all active memory contexts
in increased detail. [RT #17580]
2008-03-31 05:00:30 +00:00
Mark Andrews
9a7d202077 2330. [bug] Remove potential race condition when handling
over memory events. [RT #17572]

                        WARNING: API CHANGE: over memory callback
                        function now needs to call isc_mem_waterack().
                        See <isc/mem.h> for details.
2008-02-07 02:41:26 +00:00
Automatic Updater
2f012d936b update copyright notice 2008-01-18 23:46:58 +00:00
Automatic Updater
1da14e066c update copyright notice 2008-01-02 23:47:02 +00:00
Mark Andrews
f5d0f49584 2285. [func] Test framework for client memory context management.
[RT #17377]
2008-01-02 05:03:07 +00:00
Mark Andrews
404df30f4f 2265. [bug] Test that the memory context's basic_table is non NULL
before freeing.  [RT #17265]
2007-11-26 04:27:19 +00:00
Mark Andrews
c810393bd8 whitespace 2007-10-30 23:30:09 +00:00
Automatic Updater
ec5347e2c7 update copyright notice 2007-06-18 23:47:57 +00:00
Mark Andrews
a56f5ada43 2157. [func] dns_db_transfernode() created. [RT #16685]
2156.   [bug]           Fix node reference leaks in lookup.c:lookup_find(),
                        resolver.c:validated() and resolver.c:cache_name().
                        Fix a memory leak in rbtdb.c:free_noqname().
                        Make lookup.c:lookup_find() robust against
                        event leaks. [RT #16685]
2007-03-06 00:38:58 +00:00
Mark Andrews
acb6a99ccb temorarially comment out INSIST 2007-02-27 03:31:04 +00:00
Mark Andrews
58f32ac26e 2149. [bug] isc_mem_checkdestroyed() failed to abort on
if there were still active memory contexts.
                        [RT #16672]
2007-02-26 22:57:03 +00:00
Mark Andrews
25380f483f %ld and (long) cast for size_t 2007-02-14 02:39:44 +00:00
Mark Andrews
cdce8b88c6 update copyright notice 2007-02-14 00:27:27 +00:00
Mark Andrews
96ea716328 2134. [func] Additional statistics support. [RT #16666] 2007-02-13 02:49:08 +00:00
Mark Andrews
f2b2de10ce 0 => 0U 2006-12-08 05:09:16 +00:00
Mark Andrews
e60f01cdd2 2116. [bug] 'rndc reload' could cause the cache to continually
be cleaned. [RT #16401]
2006-12-07 06:27:34 +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
Mark Andrews
4ba6b6a7ef silence compiler warnings 2005-08-23 04:05:50 +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
016c0a82f1 1888. [func] "USE INTERNAL MALLOC" is now runtime selectable.
[RT #14892]
2005-06-17 02:22:45 +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
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
Rob Austein
ab023a6556 1851. [doc] Doxygen comment markup. [RT #11398] 2005-04-27 04:57:32 +00:00
Mark Andrews
b7b6b01a0d update copyright 2005-03-16 00:55:19 +00:00
Mark Andrews
5218822573 1826. [bug] Missing DESTROYLOCK() in isc_mem_createx() on out
of memory error. [RT #13537]
2005-03-15 01:11:01 +00:00
Mark Andrews
1676408640 pullup silence compiler fixes
ifconfig.sh for Solaris 9
README updates
2004-03-18 02:58:08 +00:00
Mark Andrews
dafcb997e3 update copyright notice 2004-03-05 05:14:21 +00:00
Mark Andrews
5eb91bd90e silence compiler warnings (HPUX/11i) 2003-07-25 00:01:16 +00:00
Mark Andrews
acc8b7ac3d 1299. [port] Darwin uses (unsigned long) for size_t. [RT #2590] 2002-05-23 04:32:30 +00:00
Mark Andrews
72b6ec6e5d lock mctx for DELETE_TRACE call in isc__mempool_put() 2002-03-19 02:40:16 +00:00
Mark Andrews
a7038d1a05 copyrights 2002-02-20 03:35:59 +00:00
Brian Wellington
fca9cc33ad 1189. [bug] On some systems, malloc(0) returns NULL, which
could cause the caller to report an out of memory
			error. [RT #2398]
2002-01-22 15:40:24 +00:00
Brian Wellington
e128be1387 track the size of memory blocks when debugging is enabled. 2001-12-05 19:13:26 +00:00
Andreas Gustafsson
91cd0f93ad sizeof style 2001-11-27 01:56:32 +00:00
Andreas Gustafsson
f1b6872550 Do not put a space before ';' when terminating a statement or in a 'for' statement. 2001-11-27 00:56:32 +00:00
Andreas Gustafsson
059a29a179 when using the system malloc, isc__mempool_get(), isc__mempool_put(),
and isc_mempool_destroy() failed to update memory statistics. [RT #1915]
2001-10-19 01:29:09 +00:00
Andreas Gustafsson
eb7f938194 style 2001-10-19 00:38:18 +00:00
Andreas Gustafsson
dfafc36515 style 2001-10-19 00:17:17 +00:00
Andreas Gustafsson
e69b9ffb0f 1048. [bug] Servers built with -DISC_MEM_USE_INTERNAL_MALLOC=1
didn't work.
2001-10-12 00:35:11 +00:00
Andreas Gustafsson
f8dbd659d0 When ISC_MEM_TRACKLINES=1, don't calle {add,delete}_trace_entry()
for every alloc/free if neither ISC_MEM_DEBUGTRACE nor
ISC_MEM_DEBUGRECORD is turned on.  This removes my
last objection to setting ISC_MEM_TRACKLINES=1 by default.
2001-09-06 23:03:01 +00:00
Mark Andrews
7f006841fc Assertion failure when ISC_MEM_DEBUGRECORD set. 2001-09-05 06:26:07 +00:00
Andreas Gustafsson
9ec3c7b42d mem.c did not compile when ISC_MEM_TRACKLINES was not defined 2001-08-30 20:23:44 +00:00
Mark Andrews
90989375ca Improve time taken to free memory when ISC_MEM_DEBUGRECORD is set. 2001-08-30 05:40:04 +00:00
Mark Andrews
15903c9f3a memory allocation failure would cause INSIST(ctx->stats[i].gets == 0) failure.
use consistant arguement name for MEMRECORD
2001-07-17 10:02:46 +00:00