Commit graph

3119 commits

Author SHA1 Message Date
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
Automatic Updater
2b91038561 update copyright notice 2008-03-27 23:46:57 +00:00
Tatuya JINMEI 神明達哉
d8eb00152d always enable ISC_xxx_NAMES 2008-03-27 21:08:52 +00:00
Automatic Updater
0a7e6db2db update copyright notice 2008-03-20 23:47:00 +00:00
Mark Andrews
ea8564f68a 2342. [func] Use getifaddrs() if available under Linux. [RT #17224] 2008-03-20 04:51:00 +00:00
Automatic Updater
eb0e8ace24 update copyright notice 2008-02-18 23:46:59 +00:00
Mark Andrews
23d4dc13e1 2335. [port] sunos: libbind and *printf() support for long long.
[RT #17513]
2008-02-18 04:06:40 +00:00
Automatic Updater
6475e22cc9 update copyright notice 2008-02-15 23:46:51 +00:00
Mark Andrews
9e8947d9e6 2333. [bug] Fix off by one error in isc_time_nowplusinterval().
[RT #17608]
2008-02-15 02:24:04 +00:00
Mark Andrews
43581a71ab clean up example code 2008-02-07 02:45:49 +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
60d19b2f15 update copyright notice 2008-01-27 23:47:20 +00:00
Mark Andrews
1fa2ce7eae 2324. [bug] Fix IPv6 matching against "any;" [RT #17533] 2008-01-27 02:13:34 +00:00
Mark Andrews
7539c231d4 2323. [port] tru64: namespace clash. [RT #17547] 2008-01-27 01:58:19 +00:00
Tatuya JINMEI 神明達哉
29d019169b corrected type 2008-01-25 23:50:38 +00:00
Automatic Updater
4f640b0d8f update copyright notice 2008-01-25 23:46:48 +00:00
Tatuya JINMEI 神明達哉
7ae2fa27e9 2322. [port] MacOS: work around the limitation of setrlimit()
for RLIMIT_NOFILE. [RT #17526]
2008-01-25 19:31:29 +00:00
Automatic Updater
cbf0854acc update copyright notice 2008-01-24 23:47:00 +00:00
Tatuya JINMEI 神明達哉
1c3ed2a83d 2320. [func] Make statistics couters thread-safe for platforms
that support certain atomic operations. [RT #17466]
2008-01-24 02:00:44 +00:00
Automatic Updater
f148623ce2 update copyright notice 2008-01-23 03:22:43 +00:00
Mark Andrews
b356686ecb Fixes needed to compile on windows 2008-01-23 03:10:48 +00:00
Mark Andrews
f86c5d30de 2312. [cleanup] Silence Coverity warning in lib/isc/unix/socket.c.
[RT #17458]
2008-01-22 01:06:33 +00:00
Automatic Updater
140a27777d update copyright notice 2008-01-21 23:46:56 +00:00
Evan Hunt
262c39b236 IPv6 addresses could match IPv4 ACL entries and vice versa. [RT #17462] 2008-01-21 20:38:54 +00:00
Automatic Updater
2f012d936b update copyright notice 2008-01-18 23:46:58 +00:00
Automatic Updater
2f99b54e8e update copyright notice 2008-01-17 23:47:00 +00:00
Evan Hunt
1aba9fe678 Fix coverity warnings in acl.c and iptable.c [rt17455] 2008-01-17 08:08:08 +00:00
Tatuya JINMEI 神明達哉
bfcc5ae79a 2294. [func] Allow the experimental statistics channels to have
multiple connections and ACL.
			Note: the stats-server and stats-server-v6 options
			available in the previous beta releases are replaced
			with the generic statistics-channels statment.
2008-01-17 00:15:14 +00:00
Automatic Updater
6f2e211d39 update copyright notice 2008-01-10 23:47:01 +00:00
Mark Andrews
2dc8bf19c8 isc_mem_references 2008-01-08 03:37:47 +00:00
Automatic Updater
660a209ee4 update copyright notice 2008-01-04 23:46:55 +00:00
Mark Andrews
8486ce1efa 2287. [bug] Use 'volatile' if the compiler supports it. [RT #17413] 2008-01-04 03:28:39 +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
604419a812 2282. [bug] Acl code fixups. [RT #17346] 2007-12-20 01:48:29 +00:00
Mark Andrews
da31aff2f2 2279. [bug] Use setsockopt(SO_NOSIGPIPE), when available,
to protect applications from receiving spurious
                        SIGPIPE signals when using the resolver.
2007-12-14 03:52:40 +00:00
Michael Graff
f1e733e612 fix rt17100: don't set free callback to NULL here. This was likely early debugging code, and was an error since it is set at the beginning of each request, and should not be modified during the request. 2007-12-02 21:34:20 +00:00
Evan Hunt
0899d16ebd Radix tree node_num value could be set incorrectly, causing positive ACL
matches to look like negative ones.  [rt17311]
2007-11-27 19:14:45 +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
2cc262c093 2257. [bug] win32: Use the full path to vcredist_x86.exe when
calling it. [RT #17222]
2007-10-31 01:34:19 +00:00
Mark Andrews
c810393bd8 whitespace 2007-10-30 23:30:09 +00:00
Mark Andrews
f183f4c0cd 2254. [bug] timer.c:dispatch() failed to lock timer->lock
when reading timer->idle allowing it to see
                        intermediate values as timer->idle was reset by
                        isc_timer_touch(). [RT #17243]
2007-10-24 00:57:23 +00:00
Michael Graff
b239c8294a commit lruttl to the mainline. A tag was set called skan_lruttl-mainline-base, and I will tag this as skan_lruttl-mainline-merge after this commit 2007-10-19 17:15:53 +00:00
Evan Hunt
adcd4ef11a Clean up build errors on Windows for 9.5.0a7.
Also, changed isc_destroy_radix() to isc_radix_destroy() to match
the naming convention for other radix routines.
2007-09-28 00:11:32 +00:00
Evan Hunt
8327cdb88f Fixes for several errors found by Coverity. [rt17160] 2007-09-24 17:18:25 +00:00
Mark Andrews
69f3cb5abc Part 3 of:
2233.   [func]          Add support for O(1) ACL processing, based on
                        radix tree code originally written by kevin
                        brintnall. [RT #16288]
2007-09-19 03:03:29 +00:00
Shane Kerr
e6555b0467 Allow configuration files without a newline at the end now parse
without error. Should allow Windows users to edit their configuration
files with NOTEPAD.EXE, or other text editors that don't believe in a
final newline.

See RT ticket #17120 for more.
2007-09-17 09:56:29 +00:00
Mark Andrews
b6384e6f77 2235. [bug] <isc/atomic.h> was not being installed. [RT #17135] 2007-09-14 04:10:00 +00:00
Mark Andrews
de05f7d061 2235. [bug] <isc/atomic.h> was not being installed. [RT #17135] 2007-09-14 03:40:36 +00:00
Mark Andrews
12e0477d4e Part 2 of:
2233.   [func]          Add support for O(1) ACL processing, based on
                        radix tree code originally written by kevin
                        brintnall. [RT #16288]
2007-09-14 01:46:06 +00:00
Evan Hunt
7de2c6e6d5 Fix compiler warnings on SCO OSr5 2007-09-13 04:48:16 +00:00
Evan Hunt
d468b1b7b2 Fix compiler warnings on SCO OSr5 2007-09-13 04:45:18 +00:00
Automatic Updater
2c94a0e56d update copyright notice 2007-09-12 23:46:47 +00:00
Evan Hunt
3181d0e359 Add support for O(1) ACL processing, based on radix tree code originally
written by kevin brintnall. [RT #16288]
2007-09-12 01:46:28 +00:00
Evan Hunt
c7e266b7e5 Add support for O(1) ACL processing, based on radix tree code originally
written by kevin brintnall. [RT #16288]
2007-09-12 01:09:08 +00:00
Mark Andrews
6f4375f230 missing ISC_FORMAT_PRINTF 2007-09-02 23:06:59 +00:00
Mark Andrews
8a45eeebb8 2225. [bug] More support for systems with no IPv4 addresses.
[RT #17111]
2007-08-30 06:02:28 +00:00
Mark Andrews
8e74bfb604 2220. [bug] win32: Address a race condition in final shutdown of
the Windows socket code. [RT #17028]
2007-08-28 00:39:15 +00:00
Mark Andrews
557bcc2092 2216. [cleanup] Fix a number of errors reported by Coverity.
[RT #17094]
2007-08-27 03:32:27 +00:00
Mark Andrews
c60eaaf9b3 2215. [bug] Bad REQUIRE check isc_hmacsha1_verify(). [RT #17094] 2007-08-27 03:27:53 +00:00
Michael Graff
d8acf6268a Use enum values (isc_sockettype_tcp) rather than integers (2) 2007-07-27 14:28:04 +00:00
Michael Graff
a84724de8d Remove the attribute(__always_inline__) tag, as it generates warnings
on non-BSD OSs.  It was really optional anyway, but seemed like a good
idea.
2007-07-27 14:22:53 +00:00
Michael Graff
aa43623600 fix atomic.h warnings; reviewed by Mark 2007-07-23 16:10:15 +00:00
Automatic Updater
70e5a7403f update copyright notice 2007-06-19 23:47:24 +00:00
Automatic Updater
ec5347e2c7 update copyright notice 2007-06-18 23:47:57 +00:00
Mark Andrews
47ee25b1f5 2199. [bug] win32: don't call WSAStartup() while loading dlls.
[RT #16911]
2007-06-18 03:36:51 +00:00
Mark Andrews
32391301db 2198. [bug] win32: RegCloseKey() could be called when
RegOpenKeyEx() failed. [RT #16911]
2007-06-18 03:05:46 +00:00
Mark Andrews
f05a4bf2bf 2196. [port] win32: yield processor while waiting for once to
to complete. [RT# 16958]
2007-06-18 01:16:46 +00:00
Mark Andrews
4bb0f1046f 2189. [bug] Handle socket() returning EINTR. [RT #15949] 2007-05-21 01:55:10 +00:00
Automatic Updater
af1e34f918 update copyright notice 2007-05-10 23:46:54 +00:00
Mark Andrews
a5d7c242b5 2175. [bug] win32: window broadcast condition variable support
was broken. [RT #16592]
2007-05-09 23:49:37 +00:00
Mark Andrews
278a75dbfe 2292bis -> RFC 3542 2007-04-02 02:03:55 +00:00
Automatic Updater
67a00bc40b update copyright notice 2007-03-12 23:46:48 +00:00
Mark Andrews
37d373d886 2160. [bug] libisc wasn't handling NULL ifa_addr pointers returned
from getifaddrs(). [RT #16708]
2007-03-12 05:59:08 +00:00
Mark Andrews
2d4cb13dfb add functions 2007-03-06 01:56:23 +00:00
Mark Andrews
bdf9b9caac add name and tag to socket structure 2007-03-06 01:50:48 +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
Automatic Updater
adea559405 update copyright notice 2007-03-05 23:46:52 +00:00
Mark Andrews
c53a5699c8 2154. [func] Scoped (e.g. IPv6 link-local) addresses may now be
matched in acls by omitting the scope. [RT #16599]
2007-03-05 04:57:57 +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
340a05967a 2146. [cleanup] Silence Linux's spurious "obsolete setsockopt
SO_BSDCOMPAT" message. [RT #16641]
2007-02-26 01:37:37 +00:00
Mark Andrews
25380f483f %ld and (long) cast for size_t 2007-02-14 02:39:44 +00:00
Mark Andrews
cadb5c8591 #ifdef HAVE_LIBXML2 statenames 2007-02-14 02:32:30 +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
149e7eacf0 update copyright notice 2007-02-13 00:04:51 +00:00
Mark Andrews
f31446e6b5 2133. [port] powerpc: Support both IBM and MacOS Power PC
assembler syntaxes. [RT #16647]
2007-02-12 00:50:01 +00:00
Mark Andrews
1f369c2581 update copyright notice 2007-02-01 23:55:21 +00:00
Mark Andrews
fd276c2493 remove SO_BSDCOMPAT reference 2007-02-01 04:40:32 +00:00
Mark Andrews
00499ae65e update copyright notice 2007-01-12 00:14:51 +00:00
Michael Graff
de4f679a17 revert changes accidently committed to mainline 2007-01-10 18:56:20 +00:00
Mark Andrews
f8574167b2 update copyright notice 2007-01-09 23:49:38 +00:00
Mark Andrews
92f56936fb update copyright notice 2007-01-09 03:11:16 +00:00
Mark Andrews
ca48338b3d #ifdef HAVE_LIBXML2 statenames declaration 2007-01-05 07:24:51 +00:00
Mark Andrews
edf8e79280 update copyright notice 2007-01-04 00:01:13 +00:00
Michael Graff
ca21196249 implement statistics for sockets. Need to port this to the win32 build too. 2007-01-03 20:57:07 +00:00
Michael Graff
69da4348da add some basic statistics to task.c 2007-01-03 20:23:46 +00:00
Mark Andrews
74d6235d13 isc_time_seconds 2006-12-22 05:26:26 +00:00
Mark Andrews
0aef230aba remove duplicate function 2006-12-22 05:18:53 +00:00
Mark Andrews
4b6f61ea34 cleanup 2006-12-22 04:20:52 +00:00
Michael Graff
b015e6b3e1 make changes on HEAD, not on a branch. 2006-12-22 03:07:57 +00:00
Mark Andrews
ed954ce73b 9.5.0a1 2006-12-22 02:32:59 +00:00
Mark Andrews
148f27aee6 update copyright notice 2006-12-22 01:59:44 +00:00
Mark Andrews
29747dfe5e 2123. [func] Use Doxygen to generate internal documention.
[RT #11398]
2006-12-22 01:46:19 +00:00
Mark Andrews
3b31d6634f don't use C90 constructs 2006-12-21 10:06:17 +00:00
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
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
cfcb0881d1 2111. [bug] Fix a number of errors reported by Coverity.
[RT #16507]
2006-12-07 04:46:27 +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
91ddbb6e4f update copyright notice 2006-10-03 23:50:52 +00:00
Mark Andrews
bc8711b148 win32 2006-10-02 07:03:05 +00:00
Mark Andrews
5cf0c55948 2090. [port] win32: Visual C++ 2005 command line manifest support.
[RT #16417]
2006-10-02 02:27:41 +00:00
Mark Andrews
53d3679913 2087. [port] libisc failed to compile on OS's w/o a vsnprintf.
[RT #16382]
2006-10-02 01:29:27 +00:00
Mark Andrews
896e6a0e44 update copyright notice 2006-08-25 05:25:52 +00:00
Mark Andrews
c781727055 2076. [bug] Several files were missing #include <config.h>
causing build failures on OSF. [RT #16341]
2006-08-24 00:17:54 +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
f07fe5a1ac 2067. [bug] 'rndc' could close the socket too early triggering
a INSIST under Windows. [RT #16317]
2006-08-04 02:55:37 +00:00
Mark Andrews
78ff0e94ea 2044. [port] add support for atomic operations for Itanium.
[RT #16179]
2006-06-21 03:40:34 +00:00
Mark Andrews
ea5775a7fd silence: large integer implicitly truncated to unsigned type 2006-06-21 01:21:59 +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
529035492e 2026. [port] linux: socket.c compatability for old systems.
[RT #16015]
2006-05-19 02:47:18 +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
069a2ad007 update copyright notice 2006-04-03 00:00:42 +00:00
Michael Graff
8c9c09dacf add <string.h> since we call strlen() here 2006-03-21 15:34:02 +00:00
Mark Andrews
ecffc3aae3 win32 2006-03-10 03:49:57 +00:00
Mark Andrews
b6d199bd6a 1998. [bug] Restrict handling of fifos as sockets to just SunOS.
This allows named to connect to entropy gathering
                        daemons that use fifos instead of sockets. [RT #15840]
2006-03-02 23:25:05 +00:00
Mark Andrews
641f68d427 update copyright notice 2006-03-02 00:37:23 +00:00
Mark Andrews
7042126e8a 1993. [bug] Log messsage, via syslog, were missing the space
after the timestamp if "print-time yes" was specified.
                        [RT #15844]
2006-03-01 02:20:41 +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
69f56d4ef2 remove redundant memset 2006-02-26 22:28:22 +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
2043039104 update copyright notice 2006-02-13 23:50:54 +00:00
Mark Andrews
a37e44f107 1981. [bug] win32: condition.c:wait() could fail to reattain
the mutex lock.
2006-02-13 03:35:47 +00:00
Mark Andrews
e0fe05b5ae update copyright notice 2006-02-03 23:51:39 +00:00
Mark Andrews
43501e6570 1978. [port] Handle systems which have a broken recvmsg().
[RT #15742]
2006-02-02 23:07:53 +00:00
Mark Andrews
d140ae2834 1976. [bug] Handle systems with no IPv4 addresses. [RT #15695] 2006-02-02 22:32:27 +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
aa520ab1cb silence compiler warning 2006-01-31 01:58:12 +00:00
Mark Andrews
fc7685a7f1 silence compiler warnings 2006-01-31 00:35:21 +00:00
Mark Andrews
68e0fce2df set BYTE_ORDER from WORDS_BIGENDIAN if not otherwise defined 2006-01-31 00:10:57 +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
141132c272 update copyright notice 2006-01-07 00:23:35 +00:00
Mark Andrews
e88d4e2ebd 1969. [bug] win32: the socket code was freeing the socket
structure too early. [RT #15776]
2006-01-06 01:32:08 +00:00
Mark Andrews
1b06367c34 update copyright notice 2006-01-06 00:01:44 +00:00
Mark Andrews
94b58e01ae 1963. [port] Tru64 4.0E doesn't support send() and recv().
[RT #15586]
2006-01-05 03:42:53 +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
35da39a7f1 update copyright notice 2006-01-04 00:37:24 +00:00
Mark Andrews
be2c2c29a8 1944. [cleanup] isc_hash_create() does not need a read/write lock.
[RT #15522]
2006-01-03 05:51:15 +00:00
Michael Graff
fd8302422b Fix a socket leak I created. 2005-12-07 04:21:27 +00:00
Michael Graff
03aa32f0ab Remove some code that may make tests fail, although it's unlikely... 2005-12-07 03:55:06 +00:00
Michael Graff
36ca9f636b Don't close the file descriptor for fdwatch socket shutdowns. Let the application do this, since it is passed in, and it may have other uses or shutdown to do on it first. 2005-12-06 18:11:54 +00:00
Michael Graff
e6c3041c28 add file descriptor watching functions, Unix only. 2005-12-06 16:54:49 +00:00
Mark Andrews
2674e1a455 1940. [bug] Fixed a number of error conditions reported by
Coverity.
2005-11-30 03:33:49 +00:00
Mark Andrews
c481327e75 silence compiler warnings [RT #15562] 2005-11-03 22:59:53 +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
645ef8ba31 update copyright notice 2005-10-14 02:14:29 +00:00
Mark Andrews
216030f284 1930. [port] HPUX: ia64 support. [RT #15473]
1929.   [port]          FreeBSD: extend use of PTHREAD_SCOPE_SYSTEM.
2005-10-14 01:18:47 +00:00
Mark Andrews
9547d3e03b 1926. [bug] The Windows installer did not check for empty
passwords. [RT #15483]
2005-10-11 22:54:45 +00:00
Mark Andrews
3a8be17fbf win32 2005-09-20 06:16:29 +00:00
Mark Andrews
ed6ca94ad7 finetune isc_thread_key implementation [RT #15408] 2005-09-18 07:16:24 +00:00
Mark Andrews
47c2e9924e win32 fixes 2005-09-12 02:16:36 +00:00
Mark Andrews
8d10c10ec9 update copyright notice 2005-09-09 14:11:38 +00:00
Mark Andrews
345cd7d777 win32: minimal isc_key_*() implementation 2005-09-09 12:26:19 +00:00
Mark Andrews
6cf369f528 1916. [func] Integrate contibuted IDN code from JPNIC. [RT #15383] 2005-09-09 06:17:03 +00:00
Mark Andrews
676619a22f win32 fixes 2005-09-05 02:54:38 +00:00
Mark Andrews
03e200df5d 1913. [func] Integrate contibuted DLZ code into named. [RT #11382] 2005-09-05 00:12:29 +00:00
Mark Andrews
6672b3524c 1921. [port] aix: atomic locking for powerpc. [RT #15020] 2005-09-01 03:36:18 +00:00
Mark Andrews
74f261bd2b 1920. [bug] Update windows socket code. [RT #14965] 2005-09-01 02:25:06 +00:00
Mark Andrews
fd894f8cb4 silence compiler warnings 2005-08-25 03:26:54 +00:00
Mark Andrews
4ba6b6a7ef silence compiler warnings 2005-08-23 04:05:50 +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
01b8bc018d 1906. [func] x86 and x86_64 now have seperate atomic locking
implementations.
2005-07-27 04:22:59 +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
9ada5ea35f ref not rep 2005-07-25 00:52:12 +00:00
Mark Andrews
fb827ed6df 9.4/HEAD sync 2005-07-18 06:03:01 +00:00
Mark Andrews
43e68674d4 1900. [port] freebsd: pthread_mutex_init can fail if it runs out
of memory. [RT #14995]
2005-07-12 01:14:31 +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
0563d476de 1899. [func] Raise the UDP recieve buffer size to 32k if it is
less than 32k. [RT #14953]
2005-07-12 00:41:55 +00:00
Tatuya JINMEI 神明達哉
d3882e1177 added atomic ops for mips
(implemented by Evan, reviewed by jinmei)
2005-07-09 07:08:30 +00:00
Tatuya JINMEI 神明達哉
7db10fef08 typo in a comment line 2005-07-09 06:43:57 +00:00
Mark Andrews
b2f160f266 1898. [port] sunos: non blocking i/o support. [RT #14951] 2005-07-08 04:30:22 +00:00
Tatuya JINMEI 神明達哉
2dea622a0c atomic operation support for powerpc
(implemented by Evan, reviewed and committed by jinmei)
2005-07-05 00:44:24 +00:00
Mark Andrews
49a83dbc7e enable format checking 2005-06-19 22:57:59 +00:00
Mark Andrews
396819cd65 style 2005-06-19 22:56:03 +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
f7d7c7ba43 update copyright notice 2005-06-10 00:00:59 +00:00
Mark Andrews
e7fb847ed5 1883. [port] sunos: portability fixes. [RT #14814] 2005-06-08 02:09:18 +00:00
Mark Andrews
ab9871e71e 1882. [port] win32: isc__errno2result() now reports its caller.
[RT #13753]

1881.   [port]          win32: Handle ERROR_NETNAME_DELETED.  [RT #13753]
2005-06-08 01:04:30 +00:00
Mark Andrews
dc5c59bd1d update copyright 2005-06-05 00:01:55 +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
Mark Andrews
d73541ea2e 1845. [bug] Improve error reporting to distingish between
accept()/fcntl() and socket()/fcntl() errors.
                        [RT #13745]
2005-05-19 02:42:42 +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
fcf6c62ab4 update copyright notice 2005-03-31 23:54:46 +00:00
Mark Andrews
0f222d322b 1844. [bug] inet_pton() accepted more that 4 hexadecimal digits
for each 16 bit piece of the IPv6 address.  The text
                        representation of a IPv6 address has been tighted
                        to disallow this (draft-ietf-ipv6-addr-arch-v4-02.txt).
                        [RT #5662]
2005-03-31 06:37:03 +00:00
Mark Andrews
2132a56b5c 1841. [port] cmsg_len() could produce incorrect results on
some platform. [RT #13744]
2005-03-30 05:37:08 +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
9f069b2771 update copyright notice 2005-03-17 03:56:12 +00:00
Mark Andrews
15683369e0 namespace sun -> sunix 2005-03-16 23:39:06 +00:00
Mark Andrews
66a12302e1 silence ptr mismatch signed/unsigned. 2005-03-16 20:15:08 +00:00
Mark Andrews
5e5b467e8c 1833. [bug] Race condition in isc_mutex_lock_profile(). [RT #13660] 2005-03-16 01:56:17 +00:00
Mark Andrews
4f082b58b1 1816. [port] UnixWare: failed to compile lib/isc/unix/net.c.
[RT #13597]
2005-03-16 01:23:08 +00:00
Mark Andrews
b7b6b01a0d update copyright 2005-03-16 00:55:19 +00:00
Mark Andrews
7d9b632906 1828. [bug] isc_rwlock_init() failed to properly cleanup if it
encountered a error. [RT #13549]
2005-03-15 02:03:11 +00:00
Mark Andrews
8cd830d7c8 1802. [bug] Handle connection resets better. [RT #11280] 2005-03-15 01:41:28 +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
5a4854e226 1823. [bug] Wrong macro used to check for point to point interface.
[RT#13418]
2005-03-15 00:09:07 +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
6b49f69359 add new functions 2005-02-09 22:46:59 +00:00
Mark Andrews
2d7fc01cb3 update copyright notice 2005-02-09 05:19:30 +00:00
Mark Andrews
fde0a3f89b 1812. [port] win32: IN6_IS_ADDR_UNSPECIFIED macro is incorrect.
[RT #13453]
2005-02-09 03:38:25 +00:00
Mark Andrews
498e628692 remove unused variable. 2005-01-19 23:22:50 +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
70e854766f 1781. [port] FreeBSD 5.3: set PTHREAD_SCOPE_SYSTEM. [RT #12810] 2004-12-04 06:48:43 +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
fcdef14f4a 1767. [port] Builds on IPv6 platforms without IPv6 Advanced API
support for (struct in6_pktinfo) failed.  [RT #13077]
2004-11-18 21:31:47 +00:00
Mark Andrews
77fad835c5 1762. [bug] isc_interfaceiter_create() could return ISC_R_SUCCESS
even when it failed. [RT #12995]
2004-11-10 22:22:10 +00:00
Mark Andrews
61a4d5e7d8 1742. [bug] If isc_taskmgr_create() was not able to create the
requested number of worker threads then destruction
                        of the manager would trigger an INSIST() failure.
                        [RT #12790]
2004-10-15 00:45:34 +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
Mark Andrews
43fe2897fc 1731. [port] darwin: relax version test in ifconfig.sh.
[RT #12581]

1730.   [port]          Determine the length type used by the socket API.
                        [RT #12581]
2004-10-05 03:17:18 +00:00
Mark Andrews
ffcbf9ea91 silence compiler warnings 2004-09-16 01:01:27 +00:00
Mark Andrews
3dd9bafd2e fix typo in unexecuted code 2004-09-01 04:38:43 +00:00
Mark Andrews
16a68807e1 1704. [port] lwres needed a snprintf() implementation for
platforms without snprintf().  Add missing
                        "#include <isc/print.h>". [RT #12321]
2004-08-28 06:20:14 +00:00
Mark Andrews
d7a8ba373d copyright 2004-08-19 04:44:08 +00:00
Mark Andrews
9f7d51ee32 1688. [bug] LDFLAGS was not supported. 2004-07-20 07:13:43 +00:00
Mark Andrews
ae507663cf indenting 2004-07-01 04:53:14 +00:00
Mark Andrews
9aa7706900 1681. [bug] Only set SO_REUSEADDR when a port is specified in
isc_socket_bind(). [RT #11742]
2004-06-30 23:35:17 +00:00
Mark Andrews
b0196673ab 1674. [port] linux: increase buffer size used to scan
/proc/net/if_inet6.
2004-06-22 05:25:49 +00:00
Mark Andrews
4916f4c2ca add a explict dependancy for interfaceiter.@O@. 2004-06-22 02:54:55 +00:00
Mark Andrews
40fe5e7ac2 1673. [port] linux: issue a error messages if IPv6 interface
scans fails.
2004-06-22 02:25:32 +00:00
Mark Andrews
358043e40f 1667. [port] linux: not all versions have IF_NAMESIZE. 2004-06-19 00:48:15 +00:00
Mark Andrews
99ba7fc5ff 1660. [bug] win32: connection_reset_fix() was being called
unconditionally.  [RT #11595]
2004-06-18 01:14:59 +00:00
Mark Andrews
3386e92795 1655. [bug] Logging multiple versions w/o a size was broken.
[RT #11446]
2004-06-11 00:36:30 +00:00
Mark Andrews
23fdb6a5a3 1654. [bug] isc_result_totext() contained array bounds read
error.

1653.   [func]          Add key type checking to dst_key_fromfilename(),
                        DST_TYPE_KEY should be used to read TSIG, TKEY and
                        SIG(0) keys.

1652.   [bug]           TKEY still uses KEY.
2004-06-11 00:27:06 +00:00
Mark Andrews
f66cd386cf 1646. [bug] win32: logging file versions didn't work with
non-UNC filenames.  [RT#11486]
2004-06-04 02:19:17 +00:00
Mark Andrews
be00eb0795 1640. [bug] win32: isc_socket_cancel(ISC_SOCKCANCEL_ACCEPT) was
incorrectly closing the socket.  [RT #11291]
2004-05-17 03:15:59 +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
Michael Graff
e3421eaa6c include <sys/param.h> for NetBSD 2004-05-12 23:01:36 +00:00
Mark Andrews
71839e2a42 1628. [bug] Typo in Compaq Trucluster support. [RT# 11264] 2004-05-06 03:16:07 +00:00
Mark Andrews
578f588228 1627. [bug] win32: sockets were not being closed when the
last external reference was removed. [RT# 11179]
2004-05-03 23:54:38 +00:00
Mark Andrews
cc32d38366 1622. [func] probe the system to see if IPV6_(RECV)PKTINFO is
available, and suppress wildcard binding if not.

1621.   [bug]           match-destinations did not work for IPv6 TCP queries.
                        [RT# 11156]
2004-04-29 01:37:14 +00:00
Mark Andrews
fa81ddd7b9 1613. [bug] Builds would fail on machines w/o a if_nametoindex().
Missing #ifdef ISC_PLATFORM_HAVEIFNAMETOINDEX/#endif.
                        [RT #11119]
2004-04-20 06:46:46 +00:00
Mark Andrews
eec7c83e23 add missing entry points 2004-04-19 05:16:42 +00:00
Mark Andrews
5ed76fa7ea 1617. [port] win32: VC++ 6.0 support. 2004-04-19 04:16:55 +00:00
Mark Andrews
b21b49a1d4 1615. [port] Define ISC_SOCKADDR_LEN_T based on _BSD_SOCKLEN_T_ if
it is defined.
2004-04-19 02:54:15 +00:00
Mark Andrews
b4fe7caac9 1611. [bug] solaris: IPv6 interface scanning failed to cope with
no active IPv6 interfaces.
2004-04-15 07:02:06 +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
1676408640 pullup silence compiler fixes
ifconfig.sh for Solaris 9
README updates
2004-03-18 02:58:08 +00:00
Mark Andrews
28b863e609 pullup fixed from 9.3 2004-03-16 05:52:24 +00:00
Mark Andrews
dafcb997e3 update copyright notice 2004-03-05 05:14:21 +00:00
Mark Andrews
a03848252f 1580. [bug] Zone destuction on final detach takes a long time.
[RT #3746]

1579.   [bug]           Multiple task managers could not be created.
2004-03-04 06:56:41 +00:00
Mark Andrews
1285fa26e6 1588. [bug] win32: TCP sockets could become blocked. [RT #10115] 2004-03-04 05:54:29 +00:00
Mark Andrews
3f08fb69eb 1577. [bug] Use isc_uint32_t in ultrasparc optimizer bug
workaround code. [RT #10331]
2004-03-04 01:43:24 +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
74cb99072c 1573. [port] linux: update to libtool 1.5.2 so that
"make install DESTDIR=/xx" works with
                        "configure --with-libtool".  [RT #9941]
2004-02-24 01:41:28 +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
Mark Andrews
daa73eae70 silence punned messages 2004-02-03 00:59:05 +00:00
Mark Andrews
774c3a62d9 1566. [port] Support for the cmsg framework on Solaris and HP/UX.
This also solved the problem that match-destinations
                        for IPv6 addresses did not work on these systems.
                        [RT #10221]
2004-01-29 04:39:19 +00:00
Mark Andrews
96c973a6a9 1562. [bug] isc_socket_create() and isc_socket_accept() could
leak memory under error conditions. [RT #10230]
2004-01-26 23:33:32 +00:00
Mark Andrews
bece90bfd7 double )) 2004-01-08 08:23:11 +00:00
Mark Andrews
c3f9bda20f 1553. [bug] The windows socket code could stop accepting
connections.
2004-01-08 05:35:53 +00:00
Mark Andrews
2cb73c34bf ireq ->ifreq 2004-01-07 21:55:47 +00:00
Mark Andrews
5e41884b4a 1536. [bug] Windows socket code failed to log a error description
when returning ISC_R_UNEXPECTED. [RT #9998]
2004-01-05 08:14:56 +00:00
Mark Andrews
7360d06313 {strlcpy,strlcat} -> isc_string_{strlcpy,strlcat} 2003-11-17 01:19:52 +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
Mark Andrews
fcb54ce0a4 whitespace / layout 2003-10-17 03:46:46 +00:00
Mark Andrews
2f0bdbae4a only look for IFF_POINTOPOINT if it is defined. 2003-10-16 05:56:25 +00:00
Tatuya JINMEI 神明達哉
cf756bac81 typo in a comment line. 2003-10-10 06:39:23 +00:00
Mark Andrews
846f974d57 1517. [port] Support for IPv6 interface scanning on HP/UX and
TrueUNIX 5.1.
2003-10-07 03:34:30 +00:00
Mark Andrews
a2b8bb8777 remove extraneous spaces before semicolons 2003-10-03 06:12:34 +00:00
Mark Andrews
12040a4f5c missing includes [RT#9194] 2003-10-01 00:58:07 +00:00
Mark Andrews
cc083bb703 sizeof style 2003-09-11 01:49:18 +00:00
Mark Andrews
1b5a728293 1499. [bug] isc_random need to be seeded better if arc4random()
is not used.
2003-08-05 00:08:30 +00:00
Mark Andrews
d19fc9d988 #include <isc/string.h> [RT #8537] 2003-07-30 01:10:46 +00:00
Mark Andrews
a8f061d5c6 #include <config.h> 2003-07-29 04:31:23 +00:00
Mark Andrews
3f40de5598 isc_int32_t -> isc_uint32_t 2003-07-29 04:22:53 +00:00
Mark Andrews
3184ff5e45 1496. [port] test for pthread_attr_setstacksize(). 2003-07-25 05:08:51 +00:00
Mark Andrews
d5d2dca925 missing '*' 2003-07-25 05:02:54 +00:00
Mark Andrews
96391d4178 add hash.c/hash.h 2003-07-25 02:57:58 +00:00
Mark Andrews
1e107b3d7b 1495. [cleanup] Replace hash functions with universal hash. 2003-07-25 02:22:26 +00:00
Mark Andrews
4691e18ca0 deconst 2003-07-25 02:04:28 +00:00
Mark Andrews
5eb91bd90e silence compiler warnings (HPUX/11i) 2003-07-25 00:01:16 +00:00
Mark Andrews
4c54e122fe silence compiler warning (HPUX/11i) 2003-07-24 06:41:20 +00:00
Mark Andrews
ce08911be8 typo 2003-07-23 03:18:56 +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
ffdfae8e41 1486. [bug] isc_print_snprintf() '%%' consumed one too many format
characters. [RT# 8230]
2003-07-18 02:27:40 +00:00
Mark Andrews
dbd34ac1d0 remove potential file descriptor leak 2003-07-09 03:28:44 +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
d20c22f634 check that proc != NULL 2003-05-11 02:24:11 +00:00
Mark Andrews
1f58c45566 memset the entire lifc structure 2003-05-01 00:35:33 +00:00
Mark Andrews
f5af519ab5 1465. [bug] isc_base64_decodestring() and isc_base64_tobuffer()
failed to check that trailing bits were zero allowing
                        some invalid base64 strings to be accepted.  [RT #5397]
2003-04-17 06:04:13 +00:00
Mark Andrews
163547c0c0 1461. [bug] Remove deadlock from rbtdb code. [RT #5999] 2003-04-17 01:56:35 +00:00
Mark Andrews
8ff31bab2f 1454. [bug] inet_pton() failed to reject certian malformed
IPv6 literals.
2003-04-17 01:52:45 +00:00
Mark Andrews
c716229384 win32: define S_ISREG if it not already defined. 2003-04-12 04:57:17 +00:00
Mark Andrews
806c235ecf 1458. [cleanup] sprintf() -> snprintf(). 2003-04-11 07:25:31 +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
c1561e8a36 tab -> space 2003-03-03 01:42:59 +00:00
Mark Andrews
602d2e93f7 close of wrong socket [RT #5221] 2003-03-03 01:41:27 +00:00
Mark Andrews
463fc8f9d6 1437. [bug] Leave space for stdio to work in. [RT #5033]
developer: marka
reviewer: explorer
2003-02-26 04:00:20 +00:00
Mark Andrews
22a9cd54c0 1431. [bug] isc_print_snprintf() "%s" with precision could walk of
end of arguement. [RT #5191]
2003-02-25 21:32:07 +00:00
Mark Andrews
21ba6c18e4 1430. [port] linux: IPv6 interface scanning support.
reviewed: jinmei
developer: marka
This is a interim solution that needs to be compared to getifaddrs()
and PF_NETLINK solution spaces which Jinmei is exploring.  It's not
clear which linux kernels support which of these three interfaces.
2003-02-24 01:46:11 +00:00
Mark Andrews
7418c7cc78 silence compiler 2003-02-18 06:07:40 +00:00
Mark Andrews
0f09ef5a50 1420. [port] solaris: work around gcc optimiser bug. 2003-01-21 04:32:19 +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
2f4fbeb360 SOCKET vs int 2003-01-14 23:37:06 +00:00
Mark Andrews
f4cbe536b1 cygwin support 2002-12-27 03:29:37 +00:00
Mark Andrews
602274b30f isc_net_probeipv6() was #ifdef'd out 2002-12-24 05:12:50 +00:00
Mark Andrews
def8e47c68 use isc_random_get() rather than rand()/arc4random() directly.
developer: marka
reviewer: bwelling
2002-12-05 04:36:26 +00:00
Mark Andrews
767fd19da4 1407. [bug] lfsr incorrectly implements the shift register.
[RT #4617]
2002-12-05 04:01:54 +00:00
Mark Andrews
5b76a09697 1405. [func] Use arc4random() if available.
from: jakob@crt.se
reviewed: marka
2002-12-04 01:19:28 +00:00
Mark Andrews
c5689081b7 define PATH_MAX if not defined. [RT #4602 + others] 2002-11-29 01:42:18 +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
aebe37a461 ensure that zone id is set to zero.
only look for BSD internal scope if platform supports scope_id.
reviewer: marka
developer: jinmei
2002-11-26 03:16:31 +00:00
Mark Andrews
aa39170da8 1394. [func] It is now possible to check if a particular element is
in a acl.  Remove duplicate entries from the localnets
                        acl.

1393.   [port]          Bind to individual IPv6 interfaces if IPV6_IPV6ONLY
                        is not available in the kernel to prevent accidently
                        listening on IPv4 interfaces.
developer: jinmei
reviewer: marka
2002-10-29 04:40:26 +00:00
Mark Andrews
2357adb0d4 use family specific socket to lookup interface flags, etc. 2002-10-28 06:12:13 +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
cbc0becf05 isc_netaddr_fromsockaddr failed to set zone for AF_INET 2002-10-25 02:36:42 +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
Mark Andrews
c0c9d2b566 Remove layer violation. [RT #3615] 2002-09-12 02:44:29 +00:00
Michael Graff
de6aca419d Rework previous slightly, to only signal if we were using WAITUNTIL() and we
actually have a due time
2002-09-09 21:15:58 +00:00
Michael Graff
e5242f042b When scheduling a new timer, check to see if we missed our last wakeup
by more than 15 seconds.  If we have, SIGNAL().
2002-09-09 20:04:10 +00:00
Michael Graff
88f7da4690 add a new log module, timer 2002-09-09 20:02:22 +00:00
Mark Andrews
6125833e82 isc_timer_poke is thread specific 2002-09-09 06:01:06 +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
Michael Graff
3e42be4026 rename 'worklimited' to 'idle' 2002-09-08 18:35:20 +00:00
Michael Graff
8f7b56e275 add goo for error checking mutexes on (at least) tru64 2002-09-08 18:32:38 +00:00
Mark Andrews
741a75f81b reviewed: marka
developer: mayer
relative paths
build against openssl 0.9.6g
2002-08-17 01:34:09 +00:00
Mark Andrews
d8ec783e6d reviewed: jinmei
who: marka
1359.   [bug]           remove IF_RUNNING test when scanning interfaces.
2002-08-16 00:05:57 +00:00
Danny Mayer
8c17b6f1e4 Updated code to support more than 63 accepts and connects by adding capability to add more event_wait threads on demand 2002-08-06 03:32:53 +00:00
Danny Mayer
834aa90500 Change isc_win32_version_check name to isc_win32_versioncheck and fix return value to be as reported in the header 2002-08-03 01:36:24 +00:00
Danny Mayer
70406959df Fix NTReportError which needed an array of strings instead of just a pointer to a string 2002-08-03 01:34:14 +00:00
Danny Mayer
5da7016a6c Message header is per I/O and not per socket. Changes made to make them per I/O. 2002-08-02 03:45:56 +00:00
Danny Mayer
dd472802de ipv6 cleanup and reorganization of header information 2002-08-01 03:56:08 +00:00
Danny Mayer
5a18a1174d Version-specific functions 2002-08-01 03:54:30 +00:00
Danny Mayer
931e557ecf Fixed code to check for NULL before freeing buffer 2002-08-01 03:52:14 +00:00
Danny Mayer
1ceb6aa154 Added Windows-specific error codes to list 2002-08-01 03:50:24 +00:00
Danny Mayer
4d9aec9c8c Redesigned sockets to use I/O Completion Ports and Events and eliminating multiple socket bugs reported 2002-08-01 03:46:21 +00:00
Danny Mayer
de4f4b6c58 Added NTReportError to use when the Event Log is not open for updates 2002-08-01 03:43:31 +00:00
Danny Mayer
498e1c30b2 Moved Win32 Version information to Win32os.c 2002-08-01 03:41:49 +00:00
Danny Mayer
d3e0cb0000 Win32 Version information 2002-08-01 03:40:21 +00:00
Danny Mayer
ace73367af Added files and functions 2002-08-01 03:37:01 +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
6244f49146 protect clua_context access w/ #ifdef 2002-07-03 06:25:32 +00:00
Mark Andrews
7fd9fd9e4c TRUCLUSTER support: isc_interfaceiter_first() should set clua_context. 2002-07-02 05:51:43 +00:00
Mark Andrews
89251e453b result undeclared, #include <isc/log.h> 2002-07-01 23:00:38 +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
33c5380153 1334. [port] Handle ECONNRESET from sendmsg() [unix]. 2002-06-26 00:12:54 +00:00
Mark Andrews
880f50a1e6 Protect both the socket and fifo tests with #ifdef's. 2002-06-20 01:19:51 +00:00
Mark Andrews
e2cf63c5df 1218. [port] Compaq Trucluster support. 2002-06-07 00:03:50 +00:00
Mark Andrews
918102a7d2 mask of mode format bits and compare result 2002-06-05 02:20:59 +00:00
Mark Andrews
5ddbaad44e || should have been && in #if test. 2002-06-04 23:26:16 +00:00
Mark Andrews
0a1fa37641 1217. [port] linux: make handling EINVAL from socket() no longer
conditional on #ifdef LINUX.
2002-06-03 06:31:16 +00:00
Mark Andrews
c61ec97ae0 1216. [bug] isc_log_closefilelogs() needed to lock the log
context.
2002-06-03 04:34:19 +00:00
Mark Andrews
49f7d1585e 1215. [bug] isc_log_setdebuglevel() needed to lock the log
context.
2002-06-03 03:39:56 +00:00
Mark Andrews
945cb085b8 1213. [func] Entropy can now be retrieved from EGDs. [RT #2438] 2002-05-30 04:21:17 +00:00
Mark Andrews
5ed4b0d445 1212. [func] Enable IPv6 support when using ioctl style interface
scanning and OS supports SIOCGLIFADDR using struct
                        if_laddrreq.
2002-05-30 01:28:53 +00:00
Mark Andrews
c549b3a4d5 1211. [func] Enable IPv6 support when using sysctl style interface
scanning.
2002-05-30 01:24:12 +00:00
Mark Andrews
f93fad20d4 check location before dereference 2002-05-27 11:37:40 +00:00
Mark Andrews
a1edcd1b8d 1203. [func] Use "dataready" accept filter if available. 2002-05-27 00:40:23 +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
a2734fa74a isc_file_renameunique() no longer used mkstemp(). 2002-05-22 05:57:17 +00:00
Mark Andrews
26cf4737b3 1288. [port] Openserver: the value FD_SETSIZE depends on whether
<sys/param.h> is included or not.  Be consistant.
2002-05-10 06:41:55 +00:00
Mark Andrews
34e5a08809 1287. [func] isc_file_openunique() now creates file using mode
0666 rather than 0600.
2002-05-09 09:08:56 +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
ac70982956 add ECONNREFUSED 2002-05-03 05:43:40 +00:00
Mark Andrews
c311ed52d4 1247. [bug] Don't reset the interface index for link/site local
addresses. [RT #2576]
2002-04-03 06:44:11 +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
5d26560e2b 1245. [bug] Treat ENOBUFS, ENOMEM and ENFILE as soft errors for
accept().

HPUX 11.11 returns ENOBUFS when the TCP connecting is closed before accept.
ENOMEM and ENFILE were also recommend by HP to be treated as soft for accept().
2002-04-03 05:41:20 +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
Mark Andrews
0bd9d19281 INSIST that there are no outstanding tasks when the task manager is
about to be destroyed (non-threaded).
2002-03-29 01:25:04 +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
c00a1eb423 1232. [bug] unix/errno2result() didn't handle EADDRNOTAVAIL. 2002-03-15 05:01:33 +00:00
Mark Andrews
1e258716ac 1231. [port] HPUX 11.11 recvmsg() can return spurious EADDRNOTAVAIL. 2002-03-15 04:59:03 +00:00
Mark Andrews
80b469ae8c silence compiler 2002-03-12 04:07:37 +00:00
Mark Andrews
03fae7ef21 1227. [bug] dns_lex_getmastertoken() now returns ISC_R_BADNUMBER
if a number was expected and some other token was
                       found. [RT#2532]
2002-03-11 05:38:29 +00:00
Mark Andrews
8133c5d6ae We could select on a closed file descriptor. 2002-03-05 06:41:08 +00:00
Brian Wellington
65c709f4de add isc_parse_uint16() and isc_parse_uint8() 2002-02-28 20:08:06 +00:00
Mark Andrews
b9c80c8bdd 1214. [bug] Win32: isc_file_renameunique() could leave zero length
files behind.
2002-02-28 00:23:34 +00:00
Andreas Gustafsson
3806b4e01e removed unused struct field isc_lex_t::options 2002-02-21 20:04:01 +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
Danny Mayer
e2759ff73a Fixes for error handling that were missing in previous commit 2002-02-18 22:20:13 +00:00
Andreas Gustafsson
28e509b145 const correctness 2002-02-11 18:19:26 +00:00
Mark Andrews
28d8b4118d 1200. [bug] Log 'errno' that we are unable to convert to
isc_result_t. [RT #2404]
2002-02-11 05:11:07 +00:00
Danny Mayer
c6d29fbd5f Added isc_fsaccess_changeowner function similar to the code to set file access attributes 2002-02-02 01:01:15 +00:00
Danny Mayer
6fedbb60b2 Change freebuf flag to be local to calls to NTstrerror() and be threadsafe 2002-01-25 03:39:25 +00:00
Danny Mayer
efd263562b Removed C++ "//" comment lines 2002-01-24 23:43:28 +00:00
Danny Mayer
d7979cbb6c Removed errno references (except for pipe) and used WSAGetLastError() instead, changed logging to use isc__strerror() (adding function in this file for now), changed select timeout to 400 Milleseconds from 2 seconds. This reduces the wait when adding a socket at the cost of CPU usage. 2002-01-24 23:19:35 +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
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
Mark Andrews
852fa3b2e3 1183. [bug] Handle ENOSR error when writing to the internal
control pipe. [RT #2395]
2002-01-22 02:38:34 +00:00
Brian Wellington
6e8b843125 When parsing a hex string of unknown length, properly unget the EOL token
at the end.  This doesn't affect any existing code, since the one caller
passes a known length, but it's still a bug.
2002-01-15 02:10:10 +00:00
Andreas Gustafsson
9cf6d43887 cut-and-paste-o:s 2002-01-11 01:30:32 +00:00
Mark Andrews
d073663cb4 1174. [bug] Win32: add WSAECONNRESET to the expected errors
from connect(). [RT #2308]
2002-01-10 03:50:13 +00:00
Mark Andrews
cad61731f8 1173. [bug] Potential leaks in isc_log_create() and
isc_log_settag(). [RT #2336]
2002-01-09 06:16:10 +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
Mark Andrews
df1415d1e8 Out of date comment. 2001-12-19 05:51:34 +00:00
Mark Andrews
82107a8889 reference after free in error path. 2001-12-19 05:44:54 +00:00
Danny Mayer
13f20ab1fa Update isc_time_formattimestamp to use the 12-Dec-2001 style of datestamp. Fix badtime to be 99-Bad-9999 2001-12-19 03:46:57 +00:00
Mark Andrews
c36f45e354 1163. [func] isc_time_formattimestamp() will now reports the year.
The format matches BIND 8 date stamp.
2001-12-17 02:55:06 +00:00
Mark Andrews
23fb770906 1161. [bug] named-checkzone looped on unbalanced brackets.
[RT #2248]
2001-12-13 06:13:44 +00:00
Brian Wellington
e128be1387 track the size of memory blocks when debugging is enabled. 2001-12-05 19:13:26 +00:00
Mark Andrews
111e3433d2 1154. [bug] When scanning interfaces skip the interface
if address no address is configured.  [RT #2176]
2001-12-03 04:41:42 +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
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
Danny Mayer
d67b892041 isc__strerror was being used incorrectly. Return value is the result and not a pointer to the error message 2001-11-22 03:08:12 +00:00
Andreas Gustafsson
d9d6d2f77f 1134. [bug] Multithreaded servers could deadlock in ferror()
when reloading zone files. [RT #1951, #1998]
2001-11-21 22:26:46 +00:00
Mark Andrews
eb2c518a38 1133. [bug] IN6_IS_ADDR_LOOPBACK not portably defined on platforms
without IN6_IS_ADDR_LOOPBACK. [RT #2106]
2001-11-21 13:06:20 +00:00
Danny Mayer
d5f394f4c4 Change strerror references to use isc__strerror [RT #1689] 2001-11-21 05:07:25 +00:00
Andreas Gustafsson
4f30395c97 Suppress compiler warnings about empty translation units 2001-11-20 21:28:41 +00:00
Andreas Gustafsson
945f7311ca Don't return a value from isc__strerror(); it was never used, and
casting it to void everywhere as required by the coding standards would have been silly
and pointless
2001-11-20 01:45:49 +00:00
Andreas Gustafsson
6cd7bd1fb5 spacing 2001-11-19 22:32:04 +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
Danny Mayer
33b8775d3a Updated to support tree organization changes and to support the lib/bind9 library code 2001-11-18 03:11:06 +00:00
Mark Andrews
d1abb8bb02 1130. [bug] Out of range serial number were not being logged.
[RT #2076]
2001-11-16 10:50:00 +00:00
Andreas Gustafsson
36d8518388 indentation 2001-11-15 19:06:04 +00:00
Brian Wellington
a873540eb6 When in singlethreaded mode, don't drain the event queue before exiting
isc_app_run().  The events will be delivered when the taskmgr is destroyed.
This will allow, for example, dnssec-signzone to be aborted with ^C.
I think this works, and the system tests pass, but it might break something.
2001-11-14 22:11:58 +00:00
Danny Mayer
5c4e92b973 Added support for NTFS disks 2001-11-13 05:07:57 +00:00
Mark Andrews
f498427f17 theoretically potential file descriptor leak. 2001-11-09 00:37:10 +00:00
Andreas Gustafsson
ea01b618d9 1114. [port] Ignore more accept() errors. [RT #2021] 2001-11-08 20:24:25 +00:00
Danny Mayer
afce5ee1c8 On a successful connect need to clear the except_fds bit for the socket. except_fds is only set for a connect call, so it is always safe to clear 2001-11-08 03:29:05 +00:00
Danny Mayer
e209942448 Fix select to set and check for exception fds for the connect() function for the socket. Miscellaneous error handling cleanup. [RT #1870] 2001-11-07 04:24:38 +00:00
Danny Mayer
93c498f0c6 ntfile.c now unnecessary as the iob array is now properly referenced 2001-11-02 05:22:05 +00:00
Danny Mayer
e5cba9f559 Win32 I/O - remove ntfile routines and _iob from .def files. Standard calls now work 2001-11-02 05:02:15 +00:00
Andreas Gustafsson
785d1541b6 yet another in6addr_loopback change 2001-11-01 23:20:21 +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
Andreas Gustafsson
65775fe205 1081. [bug] Multicast queries were incorrectly identified
based on the source address, not the destination
                        address.
(from JINMEI Tatuya)
2001-10-31 01:24:58 +00:00
Andreas Gustafsson
30e3e23338 replaced the name RLIMIT_NOFILE by WIN32_MAX_OPEN_FILES, since
it was used for something completely unrelated to the Unix meaning of
RLIMIT_NOFILE
2001-10-31 00:32:42 +00:00
Mark Andrews
bc508906db 1078. [bug] We failed to correct bad tv_usec values in one case.
[RT #1966]
2001-10-30 02:39:33 +00:00
Danny Mayer
7e7bede4bd Fix indentation 2001-10-26 02:29:43 +00:00
Danny Mayer
339335189b Added support for max open files for Win32 2001-10-26 01:25:29 +00:00
Andreas Gustafsson
40a31ba506 strerror.c did not compile if HAVE_STRERROR was not defined 2001-10-22 22:17:30 +00:00
Andreas Gustafsson
8bdf7f2972 stdtime.@O@ was listed twice in OBJS 2001-10-22 21:37:28 +00:00
Andreas Gustafsson
a9bc22bf37 if() statement needs braces after isc__strerror() call added 2001-10-22 20:57:41 +00:00
Andreas Gustafsson
3931325c6d spacing 2001-10-22 18:18:34 +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
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
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
Andreas Gustafsson
b38ab99bdc patch from Danny:
Fixed formattimestamp to use locale specific dates and times, the same way
as Unix format
2001-10-13 01:57:37 +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
6c6ceac1bc reverted incorrect commit 2001-10-08 18:58:11 +00:00
Danny Mayer
f3fcde886c Fixed formattimestamp to use locale specific dates and times, the same way as Unix format 2001-10-08 01:20:08 +00:00
Danny Mayer
4186249fea Eliminate unnecessary macro and increase buffer length MAX_NAME_LENGTH 2001-10-06 01:10:06 +00:00
Danny Mayer
5ea492b94d Restore Andrea's changes along with the updates 2001-10-05 22:25:54 +00:00
Danny Mayer
49d23a92a9 Check for malloc out-of-memory conditions, changed return codes to provide more meaningful error codes. Minor cleanup 2001-10-05 05:51:50 +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
Andreas Gustafsson
1b8eaf4143 style 2001-10-01 20:58:51 +00:00
Danny Mayer
37f08fab28 Timestamp was one month later than it should have been. SYSTEMTIME starts with January=1 2001-09-30 02:41:11 +00:00
Andreas Gustafsson
513dd4a616 style 2001-09-28 23:34:55 +00:00
Danny Mayer
7e351cd18f Added named service location in Registry 2001-09-25 01:41:43 +00:00
Danny Mayer
ecde762a60 Code to fetch list of NT Groups for a given account. This is used for retrieving privilege information and rights for an account as well as for NTFS File system and other object security 2001-09-25 01:37:02 +00:00
Andreas Gustafsson
1299e93989 1011. [cleanup] Removed isc_dir_current(). 2001-09-20 21:21:53 +00:00
Mark Andrews
ae5df22719 iadd missing const 2001-09-20 06:50:34 +00:00
Mark Andrews
ad8e6236a4 add missing const to declaration. 2001-09-20 06:50:08 +00:00
Andreas Gustafsson
1de63e34f1 1004. [port] Deal with recvfrom() returning EHOSTDOWN. [RT #1770] 2001-09-18 22:54:02 +00:00
Mark Andrews
8138bb315d The hash of IPv6 isc_sockaddr_t containing mapped IPv4 addresses should be
the same as the hash of the corresponding IPv4 isc_sockaddr_t.
2001-09-17 06:58:18 +00:00
Danny Mayer
8423b244ec doio_recv was not catching a ECONNRESET error. Fixed this and added code to catch other possible errors. Miscellaneous errno handling cleanup [RT #1745] 2001-09-16 06:19:22 +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
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
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
Brian Wellington
aba9f3dd7e remove an invalid close paren 2001-09-05 21:05:36 +00:00
Andreas Gustafsson
26f327f1f5 const correctness 2001-09-05 17:22:55 +00:00
Andreas Gustafsson
ff6e834f7d check return value of strftime() 2001-09-05 17:05:47 +00:00
Andreas Gustafsson
33f87146a8 needs #include <isc/print.h> 2001-09-05 17:03:42 +00:00
Mark Andrews
7f006841fc Assertion failure when ISC_MEM_DEBUGRECORD set. 2001-09-05 06:26:07 +00:00
Danny Mayer
e78a28ffb5 isc_time_formattimestamp() created static const for bad time string 2001-09-05 04:18:15 +00:00
Danny Mayer
fdacf913e1 isc_file_getmodtime() does not need write access to file 2001-09-05 04:17:13 +00:00
Danny Mayer
6f2e507e7e Added support for isc__strerror, moving the message code handling from errno2result.c to strerror.c. updated routines to use it and updated makes to include additional files 2001-09-04 03:22:23 +00:00
Danny Mayer
7c7b389ae0 Added isc_file_truncate routine 2001-09-04 03:10:33 +00:00
Danny Mayer
a22a4084dd Update to change path to resolv.conf and define RESOLV_CONF 2001-09-01 05:22:04 +00:00
Andreas Gustafsson
355cc22e32 The epoch is once again zero in Win32;
removed win32 implementations of isc_time_set(), isc_time_seconds() and
isc_time_secondsastimet() as they are no longer needed
2001-09-01 00:55:27 +00:00
Andreas Gustafsson
43f117d5f0 typo in comment 2001-09-01 00:46:04 +00:00
Andreas Gustafsson
b3034d815c isc_time_formattimestamp() declaration should go before ISC_LANG_ENDDECLS, not after 2001-09-01 00:18:43 +00:00
Andreas Gustafsson
bdec94477c isc_file_getmodtime() should call GetFileTime(), not file_stats(),
so that the time returned is a native win32 FILETIME
2001-09-01 00:05:38 +00:00
Andreas Gustafsson
528baec07b removed C++ comments; comment and indentation style 2001-08-31 23:57:05 +00:00
Andreas Gustafsson
ff8cd3afa7 implemented isc_time_formattimestamp() for Win32.
I have no way of testing this.
2001-08-31 22:31:18 +00:00
Andreas Gustafsson
6184f9fc1e REQUIRE(len > 0) 2001-08-31 21:58:49 +00:00
Andreas Gustafsson
c8563aaf86 added isc_time_formattimestamp() (Unix only so far);
call it from log.c [RT #1687]
2001-08-31 21:51:27 +00:00
Mark Andrews
4b87939256 strerror() -> isc__strerror() [RT #1689] 2001-08-31 05:57:58 +00:00
Mark Andrews
6db92bd107 string formats 2001-08-31 04:47:59 +00:00
Andreas Gustafsson
39125379e5 made mkstemp() static 2001-08-30 21:16:41 +00:00
Andreas Gustafsson
faa96aba6d removed empty line 2001-08-30 20:55:37 +00:00
Andreas Gustafsson
c2df80e759 lower case 2001-08-30 20:40:27 +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
59251c9e9c isc_file_truncate() 2001-08-30 04:55:36 +00:00
Mark Andrews
91579a2424 add isc_strerror to build 2001-08-30 04:49:36 +00:00
Mark Andrews
c654449ccf isc__strerror 2001-08-30 04:33:20 +00:00
Danny Mayer
b602bf9e8b RT #1667. File modification dates were wrong due to the isc_time_set routine not adding back the epoch to give the absolute Windows time and isc_file_settime not correctly making the right calls to modify the file date 2001-08-30 04:31:31 +00:00
Danny Mayer
e2a35f7524 RT #1675 resolv.conf was specified to be in an invalid directory. Location was changed to be in the same etc directory as all of the other configuration files 2001-08-30 04:28:24 +00:00
Danny Mayer
06b47b13db Bug #1671 isc_time_now was erroneously calling strtime() 2001-08-29 05:13:42 +00:00
Mark Andrews
28fc90e6c8 #857 was incomplete, ISC_MAGIC was not being used everwhere it should have been.
'magic' was not being declared consistantly.
some #include <isc/magic.h> were missing from other include files.
NS_SERVER_VALID was not using ISC_MAGIC_VALID.
2001-08-28 03:58:29 +00:00
Mark Andrews
330b421487 963. [bug] bad ISC_LANG_ENDDECLS. [RT #1645] 2001-08-20 23:56:25 +00:00
Mark Andrews
2c0b26955e 961. [bug] Tried to use a IPV6 feature when ISC_PLATFORM_HAVEIPV6
was not defined.  [RT #1482]
2001-08-16 07:27:48 +00:00
Mark Andrews
6f7660093e 959. [port] freebsd: ncpus via sysctlbyname(). [RT #1584] 2001-08-16 06:19:58 +00:00
Mark Andrews
8ff4edd14e silence format warning: remove unused arg. 2001-08-12 00:12:14 +00:00
Danny Mayer
51ac5c28de Changed win32 code to remove references to named.key 2001-08-09 02:55:41 +00:00
Andreas Gustafsson
76c8294c81 format string bugs and improved format string checking [RT #1578] 2001-08-08 22:54:55 +00:00
Danny Mayer
66352c0a05 Added support for key for win32 2001-08-06 05:34:26 +00:00
Danny Mayer
a59a1d313a Updated .mak files to remove dependancies 2001-08-02 07:05:43 +00:00
Danny Mayer
b59115de5f Updated config information 2001-07-28 02:50:39 +00:00
Andreas Gustafsson
321fd0ceb4 in named-checkconf, pass in the complete path of named.conf
as NAMED_CONFFILE instead of constructing it by compile-time concatenation of NS_SYSCONFDIR
and /named.conf, to facilitate win32 support
2001-07-27 17:45:29 +00:00
Danny Mayer
0794ffffee Added paths info 2001-07-27 05:17:39 +00:00
Danny Mayer
075a7534a8 Added path information - retry 2001-07-27 05:16:55 +00:00
Danny Mayer
61e561c2ca Added path information 2001-07-27 05:15:27 +00:00
Andreas Gustafsson
e5b18854e3 define RNDC_AUTOCONFFILE on win32 so that the code again
compiles on win32 and behaves like it did before.
2001-07-26 20:40:01 +00:00
Andreas Gustafsson
dcfaeabc63 renamed RNDC_SYSCONFPATH to RNDC_CONFFILE; there's
nothing specifically SYS about it
2001-07-26 20:06:22 +00:00
Danny Mayer
922a15c7c0 Changes to support win32 2001-07-26 03:15:16 +00:00
Danny Mayer
2b9debd520 syslog for win32 2001-07-23 03:03:22 +00:00
Danny Mayer
e056d87076 Updated scripts 2001-07-22 06:26:47 +00:00
Danny Mayer
138fc7eeba Created makefile 2001-07-22 06:25:34 +00:00
Mark Andrews
aac5a28f1f LIBISCCFG_EXTERNAL_DATA should be in lwres/platform.h 2001-07-18 08:15:23 +00:00
Andreas Gustafsson
d2a7d7e26c all failures opening /dev/random were reported as
'I/O error'.  This was highly confusing.
2001-07-18 01:31:13 +00:00
Andreas Gustafsson
07dcadc6e2 update_copyrights 2001-07-17 20:29:36 +00:00
Andreas Gustafsson
4954945531 coding style 2001-07-17 19:17:02 +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
Andreas Gustafsson
ba35e9924e added isc_file_ischdiridempotent() 2001-07-16 18:33:02 +00:00
Andreas Gustafsson
a548a3c20c added unix implementation of isc_file_absolutepath() 2001-07-16 17:26:44 +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
Mark Andrews
bddfe77128 936. [func] Warn when non dotted decimal quad's are used.
[RT #1084]

 935.   [bug]           inet_pton failed to reject leading zeros.
2001-07-16 03:06:53 +00:00
Andreas Gustafsson
aa0dc8d920 934. [port] Deal with systems where accept() spuriously returns
ECONNRESET.
2001-07-15 22:50:24 +00:00
Andreas Gustafsson
86a733bc74 use ISC_PLATFORM_RLIMITTYPE unconditionally, eliminating
the need for the HAVE_RLIM_T macro
2001-07-14 01:55:08 +00:00
Danny Mayer
c4958494a9 Updates to support LIBISC_EXTERNAL_DATA and misc. cleanup 2001-07-12 05:58:28 +00:00
Mark Andrews
c70896e026 namespace collision [RT #1399] 2001-07-12 03:51:14 +00:00
David Lawrence
37aa910318 ISC_PLATFORM_USEDECLSPEC hook for Microsoft DLL declaration junk 2001-07-11 05:32:55 +00:00
Danny Mayer
ad38e19578 Fix isabsolute for absolute path names 2001-07-11 04:32:15 +00:00
Andreas Gustafsson
5d97773191 rewrote isc_file_isabsolute() 2001-07-10 17:31:05 +00:00
Danny Mayer
14597c218d Fix memory leak [RT 1478] 2001-07-10 06:27:44 +00:00
Danny Mayer
bb48ac4f81 array bounds error in isc_file_isabsolute and REQUIRE != NULL fixes [RT 1470] 2001-07-10 06:24:15 +00:00
Brian Wellington
bb5de15290 REQUIRE that parameters are not NULL in many functions [RT #1470] 2001-07-10 04:23:01 +00:00
Andreas Gustafsson
38fed7505d do multiple inclusion protection in all header files, and using the established ISC style 2001-07-09 21:34:44 +00:00
Andreas Gustafsson
e76d4c91bf coding style 2001-07-09 21:06:30 +00:00
Mark Andrews
9d99e3fda1 924. [port] Extend pre-RFC2133 support. [RT #987] 2001-07-09 08:07:41 +00:00
Danny Mayer
36d26b9d26 add export for isc_ntfile_printf 2001-07-08 07:22:42 +00:00
Danny Mayer
11045ab3d1 code style cleanup 2001-07-08 05:16:13 +00:00
Danny Mayer
68c2ccc953 code style cleanup 2001-07-08 05:09:35 +00:00
Andreas Gustafsson
305795c093 finish app.h move 2001-07-06 22:12:21 +00:00
Andreas Gustafsson
1e71bc82b8 coding style 2001-07-06 21:57:22 +00:00
Andreas Gustafsson
718d6eadd4 spacing 2001-07-06 21:47:15 +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
Andreas Gustafsson
8e3366bd7c simplified 2001-07-06 19:40:33 +00:00
Danny Mayer
2c50ab702f stat routines 2001-07-06 06:00:17 +00:00
Danny Mayer
7fb411cfd1 plaform specific header 2001-07-06 05:59:09 +00:00
Danny Mayer
b02635aa75 offset header 2001-07-06 05:58:00 +00:00
Danny Mayer
1ee7ce8fbd win32-specific runtime path header 2001-07-06 05:57:19 +00:00
Danny Mayer
b22d62aa69 ntfile FILE replacement headers 2001-07-06 05:56:25 +00:00
Danny Mayer
bcf5804255 win32 keyboard routines 2001-07-06 05:51:45 +00:00
Danny Mayer
a0f854291f IPv6 on Win32 header 2001-07-06 05:50:42 +00:00
Danny Mayer
12d08bf91e win32-specific integer definitions 2001-07-06 05:49:22 +00:00
Danny Mayer
c15033634e Initial win32 release 2001-07-06 05:48:27 +00:00
Danny Mayer
83a373fc81 BIND Event information header 2001-07-06 05:46:37 +00:00
Danny Mayer
f950ce9932 BIND registry header information 2001-07-06 05:45:21 +00:00
Danny Mayer
c5e84ff0e4 app headers 2001-07-06 05:44:32 +00:00
Danny Mayer
f210fb51ef Version information for libisc module 2001-07-06 05:43:17 +00:00
Danny Mayer
d4cfec8537 I/O header definitions 2001-07-06 05:42:24 +00:00
Danny Mayer
39a1539c7a Header file for win32 emulation of syslog use the event log 2001-07-06 05:40:41 +00:00
Danny Mayer
f3f064ba86 win32 emulation of syslog use the event log 2001-07-06 05:39:57 +00:00
Danny Mayer
9ecea05b89 stdio routines 2001-07-06 05:38:47 +00:00
Danny Mayer
fd61d0cab1 Initial release of socket code 2001-07-06 05:37:46 +00:00
Danny Mayer
ca5c761cde Resources Available 2001-07-06 05:37:10 +00:00
Danny Mayer
1c456bcdb4 O/S specific code 2001-07-06 05:36:13 +00:00
Danny Mayer
72c0894efa functions to determine locations of configuration files at runttime 2001-07-06 05:35:09 +00:00
Danny Mayer
e397736476 win32 overrides of FILE function to centralize I/O stream and avoid problems with iob array 2001-07-06 05:34:06 +00:00
Danny Mayer
48b785fe6b win32 version of netdb.h headers 2001-07-06 05:32:44 +00:00
Danny Mayer
602f0b8e48 net routines 2001-07-06 05:30:51 +00:00
Danny Mayer
e1bdeeadb3 libisc workspace file 2001-07-06 05:29:58 +00:00
Danny Mayer
fc72de271b libisc project file 2001-07-06 05:29:24 +00:00
Danny Mayer
1d7574a6de Export link File 2001-07-06 05:28:32 +00:00
Danny Mayer
0b38e0a117 Keyboard Routines 2001-07-06 05:27:37 +00:00
Danny Mayer
e2d579a021 ipv6 variables initialization 2001-07-06 05:26:58 +00:00
Danny Mayer
3d8c1213d9 Interface Iteration routines 2001-07-06 05:25:20 +00:00
Danny Mayer
fc4bae7e83 header file for error routines 2001-07-06 05:24:22 +00:00
Danny Mayer
9fe3c2060d error routines 2001-07-06 05:23:58 +00:00
Danny Mayer
a38e51e5ef Fixed duplicate routines 2001-07-06 05:22:46 +00:00
Danny Mayer
6f5d6e3f8c isc_app_* routines 2001-07-06 05:21:44 +00:00
Danny Mayer
1e36937976 Entry point routine for libisc 2001-07-06 05:20:33 +00:00
Danny Mayer
e35c1bb3ec Initial win32 Release 2001-07-06 05:08:39 +00:00
Brian Wellington
64b92523f9 check for getc_unlocked() 2001-07-04 00:34:44 +00:00
Mark Andrews
c18d42b96b use MEM_RECORD rather than debugging > 1 2001-06-28 01:57:34 +00:00
Mark Andrews
594a685c8d Add ISC_MEM_DEBUGGING to set default compile time flags.
Remember ISC_MEM_DEBUGRECORD state when isc_mem_create() is called as
it is dangerous to change this afterwards.
2001-06-28 01:51:20 +00:00
Mark Andrews
950d71eee3 allow maximum inuse memory to be tracked. 2001-06-27 23:29:29 +00:00
Danny Mayer
53bc020d74 modified to use isc_file_rename instead of rename 2001-06-27 04:37:11 +00:00
Mark Andrews
2bc98b7d91 910. [port] Some pre-RFC2133 IPv6 do not define IN6ADDR_ANY_INIT. 2001-06-25 03:56:58 +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
David Lawrence
2d67c24744 906. [port] Separated the system independent portion of
lib/isc/unix/entropy.c into lib/isc/entropy.c
			and added lib/isc/win32/entropy.c.
2001-06-21 14:19:20 +00:00
Andreas Gustafsson
19872fdfb7 convert more socket errors to specific ISC error codes, notably ECONNRESET 2001-06-15 22:07:51 +00:00
Mark Andrews
9a6573e16b sys/select.h not sys/socket.h 2001-06-12 01:35:42 +00:00
Andreas Gustafsson
509ef0c871 Keep track of the number of times the system malloc() has
failed, to help determine whether a server crash resulted
from a bug in the handling of an out-of-memory condition
or not.
2001-06-11 20:27:16 +00:00
David Lawrence
eda73d8aad redo 1.64 "potential null pointer dereference" more consistent with the style
of the function and file (i.e., not returning from the middle of a function)
2001-06-10 17:06:45 +00:00
David Lawrence
04260c5c48 895. [func] New function, isc_dir_current(), akin to POSIX's
getcwd().
2001-06-08 23:50:32 +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
Mark Andrews
4585aeb2cc 866. [func] Close debug only file channels when debug is set to
zero. [RT #1246]
2001-06-08 02:57:13 +00:00
Brian Wellington
224e84bc0e misc. stuff related to [RT #1293] 2001-06-07 00:21:53 +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
Brian Wellington
33e49e8fdc #include <isc/magic.h> 2001-06-05 06:34:11 +00:00
David Lawrence
92ef1a9b9d use ISC_MAGIC for all magic numbers, for our friends in EBCDIC land 2001-06-04 19:33:39 +00:00
Brian Wellington
d0b6ece407 ISC_LANG_BEGINDECLS -> ISC_LANG_ENDDECLS 2001-06-01 01:11:28 +00:00
David Lawrence
64c7a503c2 ensure that INADDR_LOOPBACK is defined 2001-05-31 10:54:51 +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
Brian Wellington
9547c4a3f8 potential null pointer dereference 2001-05-29 22:35:54 +00:00
Mark Andrews
097dc0a693 add sys/types.h for FreeBSD 2.1 2001-05-18 03:02:45 +00:00
Andreas Gustafsson
d76b6ae2ad isc_print_vsnprintf() could throw an assertion failure when
given a %lld format, causing a deadlock when logging the assertion if invoked
from the logging system.  Since the %qd format does not have the bug, this only
affects platforms where the native quad format is %lld and that lack a native
vsnprintf().  The only known such platform is SunOS 5.5.1. [RT #1312]
2001-05-16 00:52:55 +00:00
Andreas Gustafsson
740ae0808f when returning a socket error, use isc__errno2result() instead
of always returning ISC_R_UNEXPECTED
2001-05-14 23:58:33 +00:00
Andreas Gustafsson
fd5847ef09 828. [bug] The errno value from recvfrom() could be overwritten
by logging code. [RT #1293]
2001-05-14 18:20:03 +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
1ed0723a1f a pointer argument used to return an "int" value into an "int"
variable is better defined as "int *" than "unsigned int *"
2001-04-28 01:08:07 +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
David Lawrence
2b5f436aeb Make greatest_version() return an isc_result_t, which it should have
been doing all along since there was the possibility isc_dir_open() would
fail and overloading the return value of "0" was bad practice.

If isc_dir_open() fails in greatest_version(), make sure the path separator
is restored to the destination pathname if it was NULified before returning
the error.

The underlying problem of isc_log_open() not having the bad result of
isc_dir_open() reported anywhere will be slightly mediate by a change
to bin/named/logconf.c to test the directory.  lib/isc/log.c can't really
handle it because it has no idea to where such an error should be reported,
and it only shows up during isc_log_open() as part of the isc_log_write()
family of calls, which are all void.
2001-04-25 23:59:44 +00:00
Andreas Gustafsson
0dc1e14537 alphabetized includes 2001-04-24 18:40:07 +00:00
David Lawrence
1bd5b8aac6 use ISC_MAGIC to define magic number 2001-04-17 14:36:45 +00:00
David Lawrence
79ed194592 sigh. always test recompile things even after a minor change. after deciding
to _not_ much with the lock tracing/printing facility for the last change,
i forgot to also add the new result variable back into the stack
declarations, where i had correctly put it the first time.
2001-04-17 13:42:32 +00:00
David Lawrence
8e60ba90e0 unlock the mutex when non-blocking locking is attempted and the lock is busy. 2001-04-17 04:07:38 +00:00
David Lawrence
900d7d9c9b forgot to actually change the macro call that needed the deconst argument 2001-04-14 00:20:07 +00:00
David Lawrence
ddb8f23a09 a different approach to shutting up compilers about an empty file, one that
does not cause all the compilers to complain about a variable being
defined but not used.
2001-04-13 02:26:32 +00:00
David Lawrence
79b19f175c added a single static variable declaration to prevent compilers from
complainig about an effectively empty input file.
2001-04-12 22:26:41 +00:00
David Lawrence
de6fe5ebe2 cleared up a const issue with IN6_IS_ADDR_V4MAPPED on some platforms 2001-04-12 21:23:21 +00:00
David Lawrence
6f053cd485 use ISC_TF() to set an isc_boolean_t 2001-04-12 21:04:14 +00:00
David Lawrence
3507ae5d59 #include <time.h> for the utimes() prototype 2001-04-12 19:46:39 +00:00
Andreas Gustafsson
7900390a52 Previous change turned invalid peer address returns from accept()
into hard errors - they should be soft errors
2001-04-10 21:48:27 +00:00
Andreas Gustafsson
a84cfaa3f2 The bug fix in socket.c 1.189 was less than ideal: if a socket
got wedged in a state where accept() always returns EBADF, the server would loop calling
internal_accept() repeatedly.  Implemented an alternative fix where a hard
error in accept() causes an event with a nonzero result code to be sent, and
the new socket object to be freed
2001-04-10 21:38:33 +00:00
Brian Wellington
f8b3c62794 804. [bug] Attempting to obtain entropy could fail in some
situations.  This would be most common on systems
			with user-space threads. [RT #1131]
2001-04-04 20:57:35 +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
David Lawrence
2a86ee1f54 simplify the test about whether to roll; one expression was redundant 2001-03-28 05:48:16 +00:00
David Lawrence
9027e1bcf1 796. [func] When a size limit is associated with a log file,
only roll it when the size is reached, not every
			time the log file is opened. [RT #1096]
2001-03-28 04:16:32 +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
Andreas Gustafsson
9efa0d2ae3 do not capitalize error message strings 2001-03-24 02:18:42 +00:00
Brian Wellington
734ae1f7c6 isc_{base64|hex}_decodestring took an unused mctx. Remove the mctx. 2001-03-22 00:07:07 +00:00
Brian Wellington
48565891e8 784. [bug] nsupdate and other programs would not quit properly
if some signals were blocked by the caller. [RT #1081]
2001-03-20 21:45:20 +00:00
Brian Wellington
dde4382b7f fix comment 2001-03-19 22:44:52 +00:00
Brian Wellington
2f02f32f04 exit(1), not exit(-1) 2001-03-14 06:31:17 +00:00
Bob Halley
c6237585d8 Fix some typos in the non-threaded version of isc_rwlock_trylock() that
were preventing compilation.
2001-03-08 19:52:13 +00:00
David Lawrence
a82fd2c01b added non-blocking locking, isc_rwlock_trylock() 2001-03-08 00:55:15 +00:00
Andreas Gustafsson
d55642259e use a simpler, faster hash function 2001-03-07 23:52:16 +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
Brian Wellington
303243b9d4 Add isc/unix/syslog.c with a function to convert strings to syslog facilities. 2001-03-02 19:25:19 +00:00
Brian Wellington
a8dd4ccadb missing space 2001-03-01 22:40:09 +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
Andreas Gustafsson
c05eeed3c9 754. [bug] Certain failure returns from sendto() could
cause the server to retry the transmission
                        indefinitely. [RT #902]
2001-02-24 23:51:09 +00:00
Mark Andrews
70ec7dd741 fix tv_usec in isc_time_nowplusinterval() also. 2001-02-24 10:22:20 +00:00
Mark Andrews
0fd53e151b unse not sec 2001-02-24 02:53:38 +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
9165c95fc2 use isc_int64_t, not long long 2001-02-22 18:03:11 +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
Andreas Gustafsson
b7d448de55 no need to specifically ask people to mail bind9-bugs about mempool leaks 2001-02-20 22:03:36 +00:00
Andreas Gustafsson
52719005ab removed empty line 2001-02-17 01:23:43 +00:00
Brian Wellington
94178e98f8 isc_base64_decodestring should take a const char *, not a char * 2001-02-15 23:21:47 +00:00
Brian Wellington
2d67fbd786 80 character lines 2001-02-15 07:58:48 +00:00
Andreas Gustafsson
449f4411c9 NO NEED TO SHOUT 2001-02-14 23:05:14 +00:00
Brian Wellington
47d78f67cb Give more information when isc_mempool_destroy() dies with an assertion
failure, in the hope that we'll be able to fix the bug one day.
2001-02-13 20:29:27 +00:00
Mark Andrews
382c4ce5a3 737. [port] stdtime failed to compile on certain platforms. 2001-02-13 13:24:09 +00:00
Mark Andrews
ba6e506ed2 #if not #ifdef ISC_MEM_TRACKLINES 2001-02-13 13:20:37 +00:00
Mark Andrews
b499a7c511 Print out the active memory prior to INSIST/REQUIRE failures. 2001-02-13 06:21:32 +00:00
Andreas Gustafsson
02940eaf0f 736. [func] New functions isc_task_{begin,end}exclusive(). 2001-02-13 04:11:44 +00:00
Brian Wellington
9f708f9014 isc_mem_stats() should print memory statistics even when there are no
allocated blocks at the time it's called.
2001-02-13 01:07:54 +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
Brian Wellington
7c3996209b fix a "statement is unreachable" warning 2001-02-11 00:52:31 +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
50179a15d1 UNUSED() 2001-02-09 19:08:11 +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
780db05762 use the UNUSED() macro 2001-02-09 18:27:18 +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
1938554ccc consolidate duplicated code 2001-02-08 00:04:11 +00:00
Mark Andrews
df0bcff664 extend change #727 to check returned address length for zero. 2001-02-07 23:40:28 +00:00
Brian Wellington
744304361c actually call isc_thread_setconcurrency() 2001-02-07 21:16:12 +00:00
Andreas Gustafsson
1964de81da UNUSED() macro added in 1.79 was in the wrong place 2001-02-07 20:05:15 +00:00
Andreas Gustafsson
91f74728a7 UNUSED() 2001-02-07 20:03:23 +00:00
Brian Wellington
abc0c36dc3 The ISC__BUFFER_INIT macro had a typo. 2001-02-07 01:36:12 +00:00
Andreas Gustafsson
9a3ee1570d "hard" errors in accept() were handled really badly. They were logged
twice, and the socket object for the new socket was never destroyed,
causing the server to hang on exit (if multithreaded) or dump core on exit
(if singlethreaded).  Now the only difference between "hard" and "soft" errors
is that the latter are not logged.
2001-02-06 23:43:01 +00:00
Andreas Gustafsson
8dab78b566 as a workaround for various OS bugs, do not INSIST() that
accept() returns a valid peer address; instead just log an ugly error message
and continue if the peer address is left unchanged or insane by accept()
[RT #809]
2001-02-06 23:04:02 +00:00
Brian Wellington
2305225a1c The interface name field was only partially initialized. 2001-02-06 01:20:46 +00:00
Brian Wellington
770d3b36da ctx->checkfree was only being initialized if USE_INTERNAL_MALLOC was on. 2001-02-05 23:48:25 +00:00
Brian Wellington
0ef3f4fb41 When memsetting the entropy pool to 0, the count should be the size in bytes,
not words.
2001-02-05 23:00:18 +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
Mark Andrews
fd50497bbe isc_dir_chroot() 2001-01-29 03:17:45 +00:00
Brian Wellington
6f9786fdcf Consolidate duplicated code in isc_socket_sendto[v] and isc_socket_recv[v]. 2001-01-27 06:41:36 +00:00
Brian Wellington
3a66efb0cb remove the completely unused timer->mctx field. 2001-01-27 02:44:07 +00:00
Brian Wellington
562f162981 remove unused labels 2001-01-27 01:16:09 +00:00
Brian Wellington
dd66e6306b Remove isc_socket/[send|recv]mark, which were never used. 2001-01-26 23:17:26 +00:00
Damien Neil
dfb0717d75 - Receive and send operations on UDP sockets no longer need to acquire
the socket lock.  (Assuming the operation succeeds immediately, and doesn't
need to be queued.)

- Communications with the watcher thread tweaked to reduce the need for
locking.
2001-01-25 22:25:10 +00:00
Andreas Gustafsson
b586eb4408 revert half of 711. - there was no off by one error in the v6 case,
only in the v4 case
2001-01-25 20:10:02 +00:00
Brian Wellington
1ac2c28488 711. [bug] The libisc and liblwres implementations of
inet_ntop contained an off by one error.
2001-01-25 19:39:48 +00:00
Damien Neil
3c31899857 Fix warning in the overrun detection code. 2001-01-25 01:38:01 +00:00
Damien Neil
823eed5ea9 Made the internal malloc() optional, selected by the
ISC_MEM_USE_INTERNAL_MALLOC preprocessor constant.
2001-01-25 01:18:00 +00:00
Brian Wellington
f6478f5e44 formatting & macro updates 2001-01-24 21:12:48 +00:00
Brian Wellington
1e3bc7eaeb only use data from accept() if accept succeeds. 2001-01-23 21:07:12 +00:00
Andreas Gustafsson
b346ae570d style 2001-01-23 20:45:31 +00:00
Brian Wellington
e90441d922 INSIST that accept() returns a socket of the correct protocol family. Also
assign the "pf" field in the new socket.
2001-01-23 20:42:46 +00:00
Mark Andrews
ab0380976c add isc/platform.h 2001-01-23 06:00:11 +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
Mark Andrews
07d6480b68 704. [port] RLIMIT_NOFILE in to available on all platforms.
[RT #695]
2001-01-23 03:14:28 +00:00
Mark Andrews
363cb30a83 703. [port] sys/select.h is needed on older platforms. [RT #695] 2001-01-23 03:07:18 +00:00
Brian Wellington
47f65caf30 The msgcat text contained an extra %s. 2001-01-23 02:27:19 +00:00
Andreas Gustafsson
e8af4e1524 699. [bug] The lexer mishandled empty quoted strings. [RT #694] 2001-01-22 02:46:34 +00:00
Andreas Gustafsson
eed89be339 incremented library version number for 9.2 2001-01-19 01:55:11 +00:00
Bob Halley
5c7d67e3e6 include <stdlib.h> to get prototype for exit() 2001-01-17 19:48:45 +00:00
Mark Andrews
fb0663dbdd 687. [bug] Only say we have IPv6, with sufficent functionality,
if it has actually been tested.  [RT #586]
2001-01-17 02:11:20 +00:00
Brian Wellington
64dcb08113 If the app is blocked and a shutdown signal arrives, just exit(). 2001-01-17 00:48:54 +00:00
Mark Andrews
2728a98ee4 683. [bug] file leak in isc_lex_openfile(). 2001-01-16 07:47:16 +00:00
Andreas Gustafsson
90bffb134e make_nonblock() errors were reported twice, and one of the instances
used the wrong errno value [RT #640]
2001-01-11 18:57:23 +00:00
Brian Wellington
499b34cea0 copyright update 2001-01-09 22:01:04 +00:00
Mark Andrews
6976801867 Replace memset() w/ null assignment to last element of array.
the strncpy() fills in the other bytes.
2001-01-09 00:39:46 +00:00
Andreas Gustafsson
1514371d94 added UNUSED() macro 2001-01-08 19:58:10 +00:00
Andreas Gustafsson
d1dc805692 include NetBSD mutex debugging kludge only if explicitly requested
with -DISC_MUTEX_DEBUG and only if PTHREAD_MUTEX_ERRORCHECK is defined by the pthreads library
2001-01-08 19:47:30 +00:00
Andreas Gustafsson
9afcd92352 enable deadlock detection for mutexes on NetBSD 2001-01-06 01:26:36 +00:00
Brian Wellington
f92f41acea Detect multiple CPUs on HP-UX. 2001-01-06 01:10:04 +00:00
Brian Wellington
6cf489f9bc Enabling mutex profiling caused compilation to fail. 2001-01-05 02:17:03 +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
Damien Neil
2e36a55861 Added changes for mutex profiling. 2001-01-04 23:38:37 +00:00
Damien Neil
b2a6ebf1bd Cleaned up some nasty hacks I forgot in the mutex profiling code. 2001-01-04 23:34:03 +00:00
Damien Neil
e535db4a21 Removed some very nasty hacks which I had forgotten in the mutex
profiling code.
2001-01-04 23:32:15 +00:00
Damien Neil
0195648290 Turn off mutex profiling by default. (Oops.) 2001-01-04 22:39:33 +00:00
Damien Neil
e9453d609d Mutex profiling updates, to collect more statistics on mutex usage. 2001-01-04 22:37:37 +00:00
Brian Wellington
bb06860389 CPU detection for IRIX. 2001-01-04 02:52:13 +00:00
Brian Wellington
4502c1b020 spelling 2001-01-04 00:28:19 +00:00
Mark Andrews
4e7942dc76 648. [port] Add support for pre-RFC2133 IPv6 implementations. 2001-01-03 13:13:14 +00:00
David Lawrence
b8ebf57228 fix a rather stupid incomplete cut-n-pasting job of in the
ISC_PLATFORM_FIXIN6ISADDR block for UnixWare.
2001-01-01 22:02:27 +00:00
Brian Wellington
ed6d3c9660 remove sanitize cruft 2000-12-29 22:07:25 +00:00
Brian Wellington
0c710d7162 #define isc_mutex_stats to nothing 2000-12-29 19:55:37 +00:00
Brian Wellington
26d20cd51c oops, forgot to commit this yesterday. 2000-12-29 18:19:52 +00:00
Brian Wellington
3f160155da ISC_MUTEX_PROFILE can be set to enable basic mutex profiling. Running named
with -s prints the results.
2000-12-29 01:29:56 +00:00
Brian Wellington
8e047d3b74 microoptimizations to make quantize/rmsize more efficient. 2000-12-29 01:02:07 +00:00
David Lawrence
090432605e isc_file_renameunique() set its result incorrectly if renaming failed; it used
the value of errno from an unlink() call, not from the rename() call.
2000-12-27 17:21:53 +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
801dceea23 Revert my last change. It was stupid, which I if I had been thinking clearly
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.)
2000-12-26 21:45:08 +00:00
David Lawrence
bdcae3560b Only include isc/thread.h, isc/mutex.h and isc/condition.h if
ISC_PLATFORM_USETHREADS is defined.
2000-12-26 21:12:25 +00:00
David Lawrence
8ab1d97093 sigh. "define" -> "defined". never make trivial changes without retesting. 2000-12-26 21:06:49 +00:00
David Lawrence
86b8c48576 638. [port] lib/isc/random.c needed to explicitly include
time.h explicitly to get a prototype for time() when
			pthreads was not being used. [RT #592]
2000-12-26 21:02:14 +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
David Lawrence
17012a8797 632. [port] Cope with rlim_t missing on BSD/OS systems. [RT #575] 2000-12-23 02:46:34 +00:00
Brian Wellington
489b762926 - if pthreads are not found, build a nonthreaded version
- check for pthread_attr_getstacksize
2000-12-22 20:50:05 +00:00
Andreas Gustafsson
4c1fee4236 don't turn on ISC_MEM_BDEBUGRECORD by default 2000-12-22 18:30:26 +00:00
Brian Wellington
48540261f1 replace (isc_mem_debugging > 1) with (MEM_RECORD) 2000-12-22 00:26:33 +00:00
Andreas Gustafsson
2207599e64 condition.h was not installed 2000-12-21 16:14:49 +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
70c91849c3 eliminated compiler warning 2000-12-19 19:29:13 +00:00
Andreas Gustafsson
0833ef954a when code is duplicated (which it shouldn't be), it should at
least be duplicated consistently
2000-12-19 19:19:45 +00:00
Brian Wellington
64a84169d7 621. [port] Disable IPv6 at runtime if they are unusable. This
mostly affects Red Hat Linux 7.0.
2000-12-19 01:36:52 +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
Andreas Gustafsson
5412d26798 entropy.c did not include header files necessary for select(),
causing nonthreaded builds to fail on AIX
2000-12-14 22:40:17 +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
eb2d0f4d9d isc_thread_self() is a function, not an integer [RT #551] 2000-12-11 19:17:29 +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
Mark Andrews
dd2e7df916 pointer math 2000-12-09 03:20:05 +00:00
Andreas Gustafsson
10e22ebcc3 605. [func] New function isc_lex_getlasttokentext(). 2000-12-09 02:05:26 +00:00
Brian Wellington
bb812feb3c line numbers could be corrupted by very large tokens. 2000-12-09 00:41:33 +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
Brian Wellington
1afae09da4 redundant code 2000-12-06 23:39:04 +00:00
David Lawrence
92f9189aee move definition of check_overrun() before its first use 2000-12-06 20:34:34 +00:00
David Lawrence
f616ef2ea9 missing close parenthesis for an isc_msgcat_get() in an
"#if ISC_MEM_TRACKLINES" block.
2000-12-06 20:32:12 +00:00
Brian Wellington
17aac384e0 595. [port] On Linux 2.2, socket() returns EINVAL when it
should return EAFNOSUPPORT.  Work around this.
2000-12-06 01:53:38 +00:00
David Lawrence
ee57537f1d missing close parenthesis after an isc_mgscat_get() 2000-12-06 01:28:02 +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
6e8d5fd217 missed some #ifdef->#if changes 2000-12-01 00:52:38 +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
16ef05fe1b incremented 2000-11-30 23:06:32 +00:00
Andreas Gustafsson
25303900d1 missing semicolon 2000-11-29 01:51:54 +00:00
Andreas Gustafsson
1d90a73d6d Make reloads work again after condition variable hack; added comments 2000-11-29 01:50:49 +00:00
Andreas Gustafsson
8e7ce54bef Make omapi clients work on single-threaded systems by
means of a gross hack involving recursive invocation of the
event loop. [RT #505]
2000-11-29 01:27:09 +00:00
Andreas Gustafsson
1f1ff380e0 switch() was missing all break; statements, causing setting of resource
limits to always fail
2000-11-28 21:40:52 +00:00
Andreas Gustafsson
78aa86abc6 typos 2000-11-27 17:49:41 +00:00
Mark Andrews
07892e4443 Memory leak when ISC_MEM_TRACKLINES is defined. 2000-11-25 06:40:54 +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
bfa244d5d4 Mark callback sources as bad if the get() routine returns failure. Also
some other cleanup, and a reversal of the incorrect destroylock patch.
2000-11-23 01:04:00 +00:00
Brian Wellington
a452eb6b5d a mutex wasn't being destroyed 2000-11-23 00:26:11 +00:00
Andreas Gustafsson
20e1ac3376 removed unused variable poke_needed 2000-11-22 23:48:14 +00:00
Brian Wellington
b0214977e8 Instead of storing parentheses deltas, just copy lex->paren_count and
restore it on ungettoken().  This is much easier (thanks, Mark).
2000-11-20 00:41:50 +00:00
Brian Wellington
cfd8d65ec1 #include <ctype.h> 2000-11-19 22:10:03 +00:00
Brian Wellington
fb1ee7bee0 isc_hex_fromtext didn't handle lowercase a-f 2000-11-19 20:58:58 +00:00
Brian Wellington
bea3d187ee fixed another assertion failure. 2000-11-18 21:15:23 +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
Brian Wellington
6a9f7f6e51 fix paren handling in quoted strings again. 2000-11-18 01:02:39 +00:00
Brian Wellington
66a39bda9c parentheses in strings were handled incorrectly. 2000-11-18 00:54:19 +00:00
Andreas Gustafsson
0d8fe6131e treat EHOSTDOWN (if defined) the same as EHOSTUNREACH rather than as an
unexpected error [RT #215]
2000-11-17 21:04:12 +00:00
Brian Wellington
729916054d if a string token was immediately followed by an EOF token, ungetting the
string token would fail.
2000-11-17 00:34:37 +00:00
Brian Wellington
308785a470 If a token is ungotten, the source is no longer at EOF. 2000-11-16 03:44:41 +00:00
Brian Wellington
09ce346fd8 ungetting eof tokens could trigger an assertion. 2000-11-16 03:03:16 +00:00
David Lawrence
78e5d07050 comment why <sys/time.h> is needed 2000-11-15 22:41:56 +00:00
Mark Andrews
edc9f47a1d add #include <sys/time.h> 2000-11-15 03:58:53 +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
Brian Wellington
b8d6376e1b the ungettoken changes also broke multiline records. 2000-11-15 00:42:53 +00:00
David Lawrence
7ff4d6ebca compile unix/resource.c 2000-11-14 23:43:36 +00:00
David Lawrence
3fdfcc7977 use symbolic constant for formatting 64 bit ints 2000-11-14 23:42:29 +00:00
David Lawrence
1097943242 would have helped if the MIN/MAX for all of the signed integers were not
reversed.
2000-11-14 23:41:46 +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
David Lawrence
b59aac4816 new functions, isc_resource_getlimit and isc_resource_setlimit 2000-11-14 23:38:10 +00:00
David Lawrence
1ab0c9558f map EPERM to ISC_R_NOPERM 2000-11-14 23:37:26 +00:00
David Lawrence
91676aba50 provide errno by way of errno.h 2000-11-14 23:37:10 +00:00
David Lawrence
be9a4bd82a symbolic constants for integral maximums and signed integral minimums 2000-11-14 23:35:43 +00:00
Brian Wellington
1f2f5445ec remove an uninitialized variable warning 2000-11-13 21:29:27 +00:00
Mark Andrews
733e928f71 552. [bug] We were not correctly detecting the end of all c-style
comments.  [RT #455]
2000-11-13 04:09:40 +00:00
Brian Wellington
66f7feef55 the ungettoken changes broken line number reporting 2000-11-10 01:41:00 +00:00
Brian Wellington
066faef119 548. [func] The lexer now ungets tokens more correctly. 2000-11-09 02:23:40 +00:00
Brian Wellington
60a7fe5da1 remove uninitialized variable. 2000-11-08 18:24:37 +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
5e589b5356 Uninitalised link fixes, batch 1. 2000-10-20 02:21:58 +00:00
Mark Andrews
643f42815f Modified list macros w/ checking currently disabled. 2000-10-20 01:57:57 +00:00
Brian Wellington
1dc5c713eb removed unused variable 2000-10-19 01:10:24 +00:00
Mark Andrews
78bdbbaccb 'more_frags' lost the memory after the last fragment. Add the remaining
memory to the appropriate free list.
2000-10-13 05:37:17 +00:00
Brian Wellington
c0150ad6aa Don't call UNEXPECTED_ERROR if setsockopt(SO_TIMESTAMP) returns ENOPROTOOPT. 2000-10-12 00:35:49 +00:00
Mark Andrews
3030ea490c If the rename failed in isc_file_renameunique() unlink the temporary file. 2000-10-07 06:55:01 +00:00
Brian Wellington
e0521dac5d Not all of the setsockopt failures logged the reason for failure. 2000-10-07 00:16:50 +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
Brian Wellington
2c18231946 The nonthreaded private include files should be deleted by the sanitizer. 2000-09-28 21:32:51 +00:00
Brian Wellington
0d89afffb2 Make sure #else and #endif for ISC_PLATFORM_USETHREADS are marked as such. 2000-09-28 21:31:08 +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
Brian Wellington
df03463a37 Allow *_log_setcontext() to be called multiple times, so that *_lctx
can be set to NULL once the log context has been freed.
2000-09-26 22:10:44 +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
Brian Wellington
3f123dcc2f 487. [port] flockfile() is not defined on all systems.
Also check for libpthreads, if libpthread isn't found.
2000-09-22 18:52:39 +00:00
Michael Graff
08ad332552 put a break in the switch 2000-09-21 21:40:29 +00:00
Michael Graff
e710c2162a check for more expected error values in connect() case 2000-09-21 21:30:27 +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
Andreas Gustafsson
c89ac488df 472. [bug] Off-by-one error caused isc_time_add() to sometimes
produce invalid time values.
2000-09-18 18:43:03 +00:00
Brian Wellington
f3f22040a8 The ipv6 probe fails if IPv6 is disabled. 2000-09-15 20:52:27 +00:00
Bob Halley
3302ed8d6e bitstring assertion addition; doc fixes 2000-09-13 00:11:45 +00:00
Andreas Gustafsson
a9d3c26ed0 some CPP macros were not fully parenthesized 2000-09-12 23:27:44 +00:00
Bob Halley
83d2840b6f fix erroneous isc_bitstring_copy() REQUIRE 2000-09-12 19:26:40 +00:00
Brian Wellington
0fded1c8b7 remove warnings. 2000-09-12 13:46:12 +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
Andreas Gustafsson
2c9c7c5bb5 433. [func] isc_base64_decodestring() now accepts newlines
within the base64 data.  This makes it possible
                        to break up the key data in a trusted-keys
                        statement into multiple lines. [RT #284]
2000-09-08 00:34:21 +00:00
Michael Graff
95236b0363 make the returned value sane in all cases 2000-09-08 00:06:39 +00:00
Michael Graff
1deaf52c98 kill persistent errors. Always retry the I/O now. 2000-09-07 01:59:57 +00:00
Michael Graff
e558faa60b make unreachable errors on unconnected UDP sockets be soft errors, rather than hard ones. 2000-09-06 22:55:33 +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
Brian Wellington
1b32bc7da1 417. [func] Add isc_app_block() and isc_app_unblock(), which
allow an application to handle signals while
                        blocking.
2000-09-01 21:31:54 +00:00
Brian Wellington
4b809ba346 415. [bug] The logging code leaked file descriptors. 2000-08-31 20:58:15 +00:00
Andreas Gustafsson
04cec6dc5b comment style 2000-08-31 17:10:58 +00:00
Andreas Gustafsson
50a3152b70 clarified comment 2000-08-31 16:58:28 +00:00
Mark Andrews
7523838d84 make error message more informative. 2000-08-31 13:38:55 +00:00
Mark Andrews
3a34b87c87 Add cache cleaning support (disabled). 2000-08-31 12:15:17 +00:00
Brian Wellington
5a842a6fc3 The non-threaded version does a better job avoiding starvation. 2000-08-30 23:47:16 +00:00
Mark Andrews
68e32e13a5 #include <isc/platform.h> 2000-08-30 21:24:57 +00:00
Brian Wellington
aa3f41bafc signals were broken in the non-threaded version 2000-08-30 01:43:59 +00:00
Brian Wellington
743add946b Comment out calls to flockfile() and funlockfile(), since it's not
evident that they're needed, and they don't work on all platforms without
threads.
2000-08-30 01:28:10 +00:00
Brian Wellington
5aa95f94c9 don't need <pthread.h> or <isc/platform.h> 2000-08-30 01:11:37 +00:00
Brian Wellington
ae8b7e02a8 Non threaded isc_app_* - basically an event loop that calls into the
task, timer, and socket modules.
2000-08-30 00:58:28 +00:00
Brian Wellington
efafe4fa7f Non-threaded socket manager. 2000-08-29 23:58:17 +00:00
Brian Wellington
8dd5562555 #include <isc/platform.h> 2000-08-29 22:55:57 +00:00
Brian Wellington
0c4887513b add copyright 2000-08-29 22:53:59 +00:00
Brian Wellington
3be0a4382d ALlow the task manager to run without threads. This doesn't handle fairness
too well.
2000-08-29 22:30:14 +00:00
Brian Wellington
8ec174ad4e Allow the timer code to run without threads. 2000-08-29 21:30:03 +00:00
Brian Wellington
5e872705df condition.c needs to be added 2000-08-29 19:22:34 +00:00
Brian Wellington
fafb62400d When --disable-threads is passed, use "nothreads" instead of "pthreads" in
the build process.
2000-08-29 18:24:01 +00:00
Brian Wellington
f05941692e Add an empty lib/isc/nothreads/condition.c, since it greatly simplifies
the build process.
2000-08-29 18:19:29 +00:00
Brian Wellington
3c7f352550 single-threaded versions. 2000-08-29 00:33:36 +00:00
Brian Wellington
9ce781741a don't use DESTROYLOCK, since isc_mutexblock_destroy actually returns
failure if isc_mutex_destroy fails.
2000-08-29 00:25:23 +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
bc40028504 Added the "nothreads" directory in lib/isc. These will be used in the
non-threaded libisc.
2000-08-28 23:16:50 +00:00
Brian Wellington
762b1edceb DESTROYLOCK does not need a do { } while (0) construct. 2000-08-28 19:49:38 +00:00
Brian Wellington
fa9a407180 Last set of DESTROYLOCK changes 2000-08-26 01:42:34 +00:00
Brian Wellington
a44038277a MOre calls to DESTROYLOCK 2000-08-26 01:31:56 +00:00
Brian Wellington
6714319d0f Add a DESTROYLOCK macro to wrap isc_mutex_destroy() 2000-08-26 01:23:17 +00:00
Brian Wellington
bba01d378b Since the result of isc_mutex_destroy() is being ignored, cast it to void. 2000-08-26 01:10:54 +00:00
Brian Wellington
569c05295c removed a chunk of dead debugging code. 2000-08-25 22:07:52 +00:00
Brian Wellington
960d37edc3 Setting event->ev_sender to a bogus non-null value is no longer necessary. 2000-08-25 18:58:35 +00:00
Brian Wellington
f5ad7569cb #include <stddef.h> 2000-08-24 23:26:13 +00:00
Brian Wellington
d07ef64ed1 #include <time.h> 2000-08-24 23:22:40 +00:00
Brian Wellington
3cab47dbea A read lock could incorrectly be granted in some cases. 2000-08-24 19:06:38 +00:00
Andreas Gustafsson
dcfbc7c73e do not clear lctx->buffer before it is has been locked 2000-08-24 18:21:40 +00:00
Andreas Gustafsson
249b19d917 print lock address and thread ID in rwlock trace messages 2000-08-24 17:06:31 +00:00
Andreas Gustafsson
eb5670ecd2 send task trace output to stderr, not stdout, so that
it gets buffered synchronously with logging output sent to stderr
2000-08-24 01:40:46 +00:00
Andreas Gustafsson
ce4ccd5d7f const correctness 2000-08-24 01:38:46 +00:00
Andreas Gustafsson
6cab5e204c write ASCII NUL as '\0', not 0 2000-08-23 02:21:16 +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
Andreas Gustafsson
a3e7b6450e style 2000-08-10 23:42:17 +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
Brian Wellington
3d37f10b91 On send, treat EPERM like ISC_R_HOSTUNREACH. send() seems to return EPERM
on Linux when firewall rules block the send.
2000-08-10 21:47:46 +00:00
Brian Wellington
cd7ffa4c12 381. [bug] Check for IPV6_RECVPKTINFO and use it instead of
IPV6_PKTINFO if found. [RT #229]
2000-08-10 00:05:45 +00:00
Brian Wellington
281fce5ed7 When tracing allocations, don't die with an assertion failure if
isc_mem_setdestroycheck(mctx, ISC_FALSE) was called.  Also, print the
context in the trace statement.
2000-08-09 23:03:15 +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
450e48205f Ensure argument to isdigit() is within valid range by "&"ing with 0xff. 2000-08-03 13:44:02 +00:00
David Lawrence
e15ecf08f2 use ISC_TF() to set an isc_boolean_t return value 2000-08-02 15:28:13 +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
Brian Wellington
153d59973f Allow keyboard operations to be interrupted by the interrupt or quit
character.
2000-07-31 20:36:08 +00:00
Brian Wellington
eefb0a0720 If there are no writers waiting, always let new readers in. Also change the
hardcoded default read and write quota values to #defines.
2000-07-30 17:57:48 +00:00
Michael Graff
a4cb99bf12 pasto 2000-07-27 23:31:20 +00:00
Brian Wellington
677045ed61 356. [cleanup] isc_task_send no longer requires event->sender to
be non-null.
2000-07-27 22:24:54 +00:00
David Lawrence
15a4474541 word wrap copyright notice at column 70 2000-07-27 09:55:03 +00:00
David Lawrence
febf5f8b55 355. [func] Added isc_dir_createunique(), similar to mkdtemp(). 2000-07-27 02:04:36 +00:00
David Lawrence
976f44baa3 needed isc/string.h for memset() prototype 2000-07-26 22:36:34 +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
6d016e34bf minor formatting issue -- kill trailing whitespace 2000-07-26 20:56:39 +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
Brian Wellington
da892e9733 Typo in comment - isc_time_microdiff returns microseconds, not milliseconds. 2000-07-14 16:59:32 +00:00
Andreas Gustafsson
4532e9e7c6 in isc_log_wouldlog(), deal with the possibility of lctx
being NULL
2000-07-13 02:28:18 +00:00
Andreas Gustafsson
0072e42780 use isc_log_wouldlog() in manager_log() 2000-07-13 01:38:40 +00:00
Brian Wellington
2935e25e99 Removed debugging code that is no longer useful. 2000-07-13 01:22:56 +00:00
Brian Wellington
febc974d0f Use isc_log_wouldlog() to avoid calling strerror() whenever possible. 2000-07-13 01:13:53 +00:00
Andreas Gustafsson
211ac47e07 use isc_log_wouldlog() to avoid unnecessary formatting work
when the debug level does not warrant logging
2000-07-13 00:25:38 +00:00
Andreas Gustafsson
30576c592b 330. [func] New function isc_log_wouldlog(). 2000-07-13 00:19:02 +00:00
Brian Wellington
a6f31a3fd0 Only install default handlers for SIGTERM and SIGWAIT if we haven't installed
other handlers already.
2000-07-12 01:46:57 +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
Brian Wellington
838f13fbdc Set default signal handlers for SIGINT and SIGTERM (SIGHUP already had one).
This doesn't appear to have an effect on any platform, but it seems like a
good idea.
2000-07-11 19:18:05 +00:00
Mark Andrews
5c0a406664 325. [bug] isc_lex_gettoken was processing octal strings when
ISC_LEXOPT_CNUMBER was not set.
2000-07-11 02:44:54 +00:00
Andreas Gustafsson
a4db2a47f5 incremented library version numbers to 1.0.0 2000-07-10 22:20:43 +00:00
Michael Graff
401bea7527 set connected and bound when the connect completes 2000-07-10 19:40:06 +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
David Lawrence
641689bff4 note in the comment that isc_time_microdiff returns 0 if t1 < t2.
no need to pull up.
2000-06-30 22:40:32 +00:00
Andreas Gustafsson
fe8d130967 make install didn't work when using separate build dir 2000-06-30 00:29:29 +00:00
Michael Graff
2e0e781ba4 use the correct function name in debugging statements 2000-06-29 07:40:58 +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
Andreas Gustafsson
33e482fa3e edited comment, no functional change 2000-06-27 21:04:12 +00:00
Michael Sawyer
d8afbf2f30 Force SIGHUP to be in state SIG_DFL when starting, since Solaris would break
that, if run from under cron.
2000-06-27 18:49:14 +00:00
Andreas Gustafsson
a7d4703552 commented 2000-06-26 22:59:22 +00:00
David Lawrence
2298aec5a1 test for high bit being set in isc_file_settime needed to use an
unsigned long long constant to work correctly on platforms that have
a 64 bit timeval.tv_sec and 32 bit ints.
2000-06-26 21:33:57 +00:00
Brian Wellington
98164bc1ad Printing a size_t as either %d or %u doesn't work on some 64 bit architectures. 2000-06-26 20:27:42 +00:00
Michael Graff
a72ca8608c revert part of a previous commit. This makes net/host unreachable hard errors again. 2000-06-26 20:16:01 +00:00
Brian Wellington
0191211ce5 Casting void * to unsigned long works better than casting to isc_uint32_t 2000-06-26 18:41:06 +00:00
Michael Graff
53b63f5467 minor change to make certain 'on' is defined. This used to be used only by USE_CMSG, but is also used to turn on BSD compatibility, so test on SO_BSDCOMPAT too. 2000-06-26 18:20:25 +00:00
Michael Graff
18a8c21c77 turn on BSD compatibility to avoid the annoying linux 'return host unreachable for unconnected UDP datagrams' bug. 2000-06-26 17:48:26 +00:00
James Brister
8775909be9 282. [bug] lexer now returns ISC_R_RANGE if parsed integer is
too big for an usigned long.
2000-06-23 22:32:10 +00:00
David Lawrence
24de6390c1 "entropy.c", line 1319: remark(1552): variable "ent" was set but never used 2000-06-23 22:06:47 +00:00
David Lawrence
438d4a305d include order lint 2000-06-23 21:43:46 +00:00
Michael Graff
79f9369c4f gc DOIO_UNEXPECTED as it was never used 2000-06-23 19:58:38 +00:00
David Lawrence
c244584cad 276. [bug] isc_log_categorybyname() and isc_log_modulebyname()
would fail to find the first member of any category
                        or module array apart from the internal defaults.
                        Thus, for example, the "notify" category was improperly
                        configured by named.

This resolves RT #132, "Logging channels definition problems."
2000-06-23 17:52:20 +00:00
David Lawrence
544f8fd0be protect sys/types.h from check-includes.pl removal recommendation 2000-06-23 03:08:18 +00:00
David Lawrence
b654509b18 protect limits.h from check-includes.pl removal recommendation 2000-06-23 03:07:45 +00:00
David Lawrence
ec32c6b366 use isc/lang.h and add protective UNIX_ERRNO2RESULT_H wrapper 2000-06-23 03:03:57 +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
Michael Graff
0087d83906 thinko. Check for necessary entropy content correctly. 2000-06-23 02:31:10 +00:00
David Lawrence
9c3531d72a add RCS id string 2000-06-22 22:00:42 +00:00
Brian Wellington
aed3b8cb4e cfmakeraw() is not posix 2000-06-22 20:50:55 +00:00
David Lawrence
7c74e180c2 update_copyrights 2000-06-22 03:00:36 +00:00
David Lawrence
038b0bd35c return the number of ncpus, instead of whatever random crap is on the stack 2000-06-22 02:23:39 +00:00
Michael Graff
0eb2572d79 add isc_thread_setconcurrency() 2000-06-22 01:48:24 +00:00
Brian Wellington
386a52a5ea Add isc/unix/os.c, which has isc_os_ncpus() 2000-06-22 01:06:35 +00:00
Michael Graff
9f95b0199c add an argument to indicate how long to wait before draining the keyboard's input queue. This keeps people from overrunning input into the shell, etc. 2000-06-22 00:25:33 +00:00
Michael Graff
8e7e1ef75b let the entropy source seed the pseudorandom source from _very_ bad sources like the time and the pid. Update the dispatcher to always expect success in these cases. 2000-06-21 22:12:23 +00:00
David Lawrence
49dbdb0186 update_copyrights 2000-06-21 22:05:07 +00:00
David Lawrence
8cbd9988dc the ipv6.h header file is now platform independent 2000-06-21 20:50:55 +00:00
Andreas Gustafsson
0302c5670c do includes in alphabetical order 2000-06-21 17:27:55 +00:00
Michael Graff
890fb60939 add keyboard API 2000-06-21 01:45:21 +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
3036f326e5 attach to the memory context on manager create, and detach on destroy 2000-06-21 00:01:52 +00:00
Michael Graff
35250798eb Actually create sample sources now. 2000-06-20 19:10:19 +00:00
Michael Graff
b9672b61d8 add processing of sample sources, and of callback sources 2000-06-20 19:01:13 +00:00
Michael Graff
8470db5b12 clean up ; remove unneeded function arguments 2000-06-20 17:24:47 +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
fbcba391fa fix format argument 2000-06-19 22:23:05 +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
57ded06933 fix multicast test 2000-06-16 22:35:36 +00:00
Michael Graff
29a2e0c9b5 Bring back warnings we supressed for b4 :) 2000-06-16 01:39:05 +00:00
Michael Graff
e92d6ed5e7 snapshot 2000-06-16 01:38:13 +00:00
David Lawrence
c9687c0800 HPUX said:
cc: "netaddr.c", line 235: warning 508: Statement can never be reached.
cc: "netaddr.c", line 238: warning 508: Statement can never be reached.
... but now it won't say that anymore.  "break"s following "return"s removed.
2000-06-16 01:07:43 +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
06ed5a0d46 fixec typos in previous checkin 2000-06-15 17:42:16 +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
c498b4be95 initialize with at least THRESHOLD_BITS bits of entropy for pseudorandom case. 2000-06-12 22:28:05 +00:00
Michael Graff
6a3beb6f7e don't reset initialized state to ISC_TRUE -- it is a counter now, not a boolean 2000-06-12 21:37:13 +00:00
Brian Wellington
898c0c12f0 MIN -> MAX 2000-06-12 20:49:18 +00:00
Michael Graff
8fdd9c31b9 allow blocking when priming the pseudorandom generator 2000-06-12 18:28:25 +00:00
Michael Graff
8422b3823f require that we collect at least 20 bytes (hash size) of good randomness
before allowing pseudorandom operation.
2000-06-12 18:19:43 +00:00
Michael Graff
8b143acb3a remove debugging printfs, no really 2000-06-10 01:53:02 +00:00
Michael Graff
01e8ed519e remove debugging printfs 2000-06-10 01:52:35 +00:00
Michael Graff
f1400cb774 snapshot 2000-06-10 01:47:06 +00:00
Michael Graff
d08577ac0b don't reset added when retrying sources, and add another printf 2000-06-10 01:09:22 +00:00
Michael Graff
a0dc53dd58 check in a debugging printf, to help track down a problem on linux 2000-06-10 00:52:56 +00:00
Michael Graff
d730157099 Try a different tactic before returning failure 2000-06-10 00:50:03 +00:00
Michael Graff
e679d0acb1 <, not <= 2000-06-10 00:35:08 +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
Andreas Gustafsson
7e006df76f reordered copyright messages so that the ISC 'portions' copyright
can be automatically maintained
2000-06-09 21:23:19 +00:00
Andreas Gustafsson
1cad45e9cf whitespace changes in copyright message 2000-06-09 20:59:32 +00:00
Andreas Gustafsson
db03efe326 changed copyright years to 1999,2000 per util/copyrights 2000-06-09 20:57:29 +00:00
Michael Graff
b90f80957a use create/attach/detach semantics 2000-06-09 19:18:56 +00:00
Michael Graff
24629383aa kill printf 2000-06-09 18:46:17 +00:00
Michael Graff
348f351145 checkpoint 2000-06-09 18:45:51 +00:00
Michael Graff
99bec2168f checkpoint 2000-06-09 18:33:35 +00:00
Michael Graff
b8feb9c67c checkpoint 2000-06-09 18:22:11 +00:00
Michael Graff
630a955711 checkpoint 2000-06-09 17:48:08 +00:00
Michael Graff
b48abf6b85 snapshot 2000-06-09 17:25:41 +00:00
Mark Andrews
ce1b0e505e INSIST() on sane time from the kernel. 2000-06-09 06:01:37 +00:00
Michael Graff
e596c6fe81 make it build. 2000-06-09 04:06:06 +00:00
Michael Graff
c6e2d36708 snapshot 2000-06-09 02:00:22 +00:00
Michael Graff
9403a56228 checkpoint 2000-06-09 00:11:39 +00:00
Michael Graff
118332fc5c snapshot 2000-06-08 23:42:17 +00:00
David Lawrence
6ba9a50031 need errno.h for errno 2000-06-08 23:20:01 +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
David Lawrence
076f3bc6ad use ANSI memset instead of bzero 2000-06-08 20:42:11 +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
1e3c9ce3ab kill a warning on some systems. 2000-06-08 05:26:00 +00:00
Michael Graff
ccc067f7d5 enable INSIST/REQUIRE() checking of bound status on sockets 2000-06-08 00:23:54 +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
Michael Graff
90407942d3 Use autoconf's AC_C_BIGENDIAN macro to detect endian flavor, and use WORDS_BIGENDIAN from config.h{,.in} 2000-06-07 19:41:49 +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
fbb2ab3056 md5 endian doesn't seem to matter? 2000-06-07 02:21:39 +00:00
Michael Graff
f2314fbd79 fix comments 2000-06-07 01:17:06 +00:00
Michael Graff
db4871e843 complain if BYTE_ORDER isn't defined 2000-06-07 01:14:26 +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
David Lawrence
5fda9ca75a redefined ISC_OFFSET_MAXIMUM 2000-06-06 22:10:10 +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
Brian Wellington
4c050ce9dc typo 2000-06-06 17:57:58 +00:00
Brian Wellington
36bcb04af2 If ISC_MEM_DEBUG is enabled, the variable isc_mem_debugging controls
whether messages are printed or not.
2000-06-06 17:50:43 +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
527bf54995 s/u_int32_t/isc_uint32_t/g 2000-06-03 05:38:29 +00:00
Michael Graff
2f1059efb7 checkpoint 2000-06-03 02:15:08 +00:00
Michael Graff
9f732d73da put the correct (new) socket on the linked list, not the existing (listen) socket. 2000-06-02 20:09:01 +00:00
Brian Wellington
ac37a32d23 If isc_log_settag() was used to set a non-NULL tag, the allocated memory
was never freed.
2000-06-02 18:15:45 +00:00
Andreas Gustafsson
35af0018dd made isc_sockaddr_totext() return failure rather than catch an
assertion when confronted with an unsupported address family, like it used to
before it was changed to use isc_netaddr_totext() internally
2000-06-02 17:48:31 +00:00
Michael Graff
0a161e9da7 use a linked list, rather than a counter, to keep track of sockets. This makes
debugging easier.  Also, while here, s/EMPTY/ISC_LIST_EMPTY/g
2000-06-02 01:27:27 +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
Michael Graff
d98c74e2ec set the default destination port in the view, and use it when returning addresses from the adb. 2000-06-01 00:30:58 +00:00
Michael Graff
bfd98dd959 don't log ports where they don't make sense 2000-05-31 23:03:01 +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
bb25076ffc implement isc_sockaddr_totext() in terms of isc_netaddr_totext() 2000-05-26 00:41:57 +00:00
Andreas Gustafsson
8eaa51a699 new functions isc_netaddr_totext() and isc_netaddr_format() 2000-05-26 00:41:03 +00:00
David Lawrence
05e3940191 made operand to left shift in ISC_OFFSET_MAXIMUM unsigned to avoid
integer overflow.
2000-05-25 16:44:25 +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
6deb631b20 208. [func] Added ISC_OFFSET_MAXIMUM for the maximum value
of an isc_offset_t.
2000-05-25 03:34:34 +00:00
David Lawrence
db9628e897 changed "c" stack variable from char to unsigned char to quiet Solaris 5.8
warnings that "subscript has type char".
2000-05-25 01:08:07 +00:00
David Lawrence
826c281a05 Solaris 5.6 gives this warning about a left shift to set the high bit:
warning: integer overflow detected: op "<<"
unless the operand is unsigned/
2000-05-24 21:36:01 +00:00
David Lawrence
bad71acec3 removed non-existing directory ./include from CINCLUDES 2000-05-24 18:38:43 +00:00
David Lawrence
ed019cabc1 fixed lines > 79 columns wide 2000-05-24 05:10:00 +00:00
David Lawrence
604a596b5f added an UNUSED() to shut up the irix compiler. 2000-05-24 02:39:01 +00:00
David Lawrence
77685300d9 cast isc_time_seconds to long when assigning to a timeval.tv_sec, and explain
why this is an ok thing to do.  shuts up the irix compiler.
2000-05-24 02:36:49 +00:00
David Lawrence
389b5c8593 added a sync_channellist call to isc_log_create to ensure the channellist in
the logconfig is properly dimensioned, and only free the channellist
memory in isc_logconfig_destroy if the channellist_count is > 0.
the first addresses a problem that could occur when a successful
isc_log_create was followed immediately by isc_log_[v]write[1] or
isc_log_destroy (with no intervening isc_log_usechannel or
isc_logconfig_use), and the second addresses a problem that could
occur in cleanup if isc_log_create or isc_logconfig_create failed.
2000-05-24 02:33:16 +00:00
Michael Graff
862d18c79a set ifindex to 0 for outgoing udp ipv6 datagrams. 2000-05-23 02:51:39 +00:00
Michael Graff
5cc49bc70c don't set permanent failure on udp sockets, even on unexpected error 2000-05-23 02:20:23 +00:00
Andreas Gustafsson
b291fec7c9 offset.h was not installed by 'make install' 2000-05-22 22:46:53 +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
Andreas Gustafsson
34b26adb24 heap invariant INSIST did the wrong thing in the border case
of a heap item and its parent having identical priority
2000-05-22 19:47:01 +00:00
Andreas Gustafsson
b68f341a48 must include <isc/print.h> to use snprintf 2000-05-22 19:29:09 +00:00
Michael Graff
a330a4b008 only set permanent failure for tcp streams on sending 2000-05-22 16:56:12 +00:00
Andreas Gustafsson
e996ff2d5b print isc_time_t fields using %u, not %lu 2000-05-22 03:07:47 +00:00
Andreas Gustafsson
4c94069644 199. [bug] isc_heap_delete() sometimes violated the heap
invariant, causing timer events not to be posted
			when due.

Specifically, isc_heap_delete() moved the last element of the heap to
the vacated position and then attempted to restore the heap invariant
by calling sink_down().  This works when the last element has a lower
priority than the one being deleted, and this is often the case
because the last element tends to have a low priority.  However, it is
not guaranteed to be the lowest.  When deleting an item of a lower
priority than the last item, restoring the invariant requires a call
to float_up(), not sink_down().

isc_heap_delete_now calls either float_up() or sink_down() as needed,
and INSISTs have been added to verify that the heap invariant indeed
holds after the calls.
2000-05-22 02:53:52 +00:00
Michael Graff
24d3d0ecff fix a slight documentation bug 2000-05-20 01:30:16 +00:00
Michael Graff
46993e1d9d Merge the mlg-20000518 branch onto the mainline. Change summary:
dns_dispatch_create() no longer exists.  dns_dispatch_createtcp()
	and dns_dispatch_getudp() are the replacements.  _createtcp() takes
	a bound, connected TCP socket, while _getudp() will search for
	a sharable UDP socket, and if found, attach to it and return a
	pointer to it.  If one is not found, it will create a udp socket,
	bind it to a supplied local address, and create a new dispatcher
	around it.

	dns_dispatch_remove{request,response}() no longer take the dispatch
	as an argument.

	query-source can now be set per view.

	The dispatch manager holds onto three memory pools, one for
	allocating dispatchers from, one for events, and one for
	requests/replies.  The free list on these pools is hard-coded,
	but set to 1024.  This keeps us from having to dig into the
	isc_mem_t the pools draw from as often.

	dns_resolver_create() and dns_view_createresolver() require that
	valid dispatchers be passed in; dispatchers are no longer created
	for the caller.
2000-05-19 21:46:46 +00:00
David Lawrence
e6ce1a0ea9 use _PLATFORM_NEEDINETIN6H 2000-05-18 22:43:48 +00:00
David Lawrence
e8336c458c use HAVE_UNIXWARE_SIGWAIT 2000-05-18 22:39:24 +00:00
David Lawrence
76b4bfdf32 minor assertion check shuffling 2000-05-18 22:38:49 +00:00
Michael Sawyer
232fd751ed Require nanoseconds is valid, instead of t->nanoseconds, which is what we're
getting ready to set.
2000-05-18 18:59:38 +00:00
Brian Wellington
a375150af2 REQUIRE() checking in isc_log_doit could seg fault 2000-05-18 17:56:35 +00:00
David Lawrence
75a44b91a9 isc_time_subtract() now returns isc_result_t.
Use isc_time_secondsastimet() to set a time_t variable.

Properly skip the duplicate checking loop if the boundary time is not
successfully set (this was intended before, but coded wrongly).

Removed unused variable pid_string, after I opted to not add the
unrequested ISC_LOG_PRINTPID option half way into implementing it.
2000-05-18 17:20:15 +00:00
David Lawrence
60e412971e isc_time_add now returns an isc_result_t, ensuring proper range of the
result of the addition.
2000-05-18 17:15:11 +00:00
David Lawrence
87480bb860 Use isc_time_secondsastimet() set timespec.tv_sec (returning an
error if the seconds are out of range), and cast isc_time_nanoseconds()
to shut up the IRIX compiler.
2000-05-18 17:13:58 +00:00
David Lawrence
bc12a0c0d0 Ensure proper range of isc_time_seconds() assigning to timeval.tv_sec,
and cast isc_time_nanoseconds to shut up the IRIX compiler.
2000-05-18 17:12:14 +00:00
David Lawrence
6fa1cb5754 189. [func] isc_time_secondsastimet(), a new function, will ensure
that the number of seconds in an isc_time_t does not
                        exceed the range of a time_t, or return ISC_R_RANGE.
                        Similarly, isc_time_now(), isc_time_nowplusinterval(),
                        isc_time_add() and isc_time_subtract() now check the
                        range for overflow/underflow.  In the case of
                        isc_time_subtract, this changed a calling requirement
                        (ie, something that could generate an assertion)
                        into merely a condition that returns an error result.
                        isc_time_add() and isc_time_subtract() were void-
                        valued before but now return isc_result_t.

The seconds member isc_time_t on Unix platforms was changed from time_t
to unsigned int.

unix/time.c now uses macros for nanoseconds per second, nanoseconds per
microsecond and microseconds per second to make sure that the right
number of zeros appears each place the constant is used.

unix/time.c functions which take initialized isc_(interval|time)_t arguments
INSIST() that the nanoseconds value is less than one full second.

unix/time.c's isc_time_microdiff was broken because it did multiplication and
addition with unsigned integers and attempted to set them a 64 bit int to
avoid overflow, but C's ints don't promote to 64 bits on machines that only
have 32 bit longs.  Fixed.

Added all the pertinent documentation to time.h.
2000-05-18 17:08:32 +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
Brian Wellington
a823dfa663 sys/time.h needed for struct timeval 2000-05-16 21:05:03 +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
David Lawrence
cb4a97bb1c added missing config.h 2000-05-16 03:00:53 +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
33e0be00e3 isc_sockaddr_any6() set sockaddr->length incorrectly 2000-05-15 04:47:20 +00:00
David Lawrence
02b152eb28 line 356: remark(1174): parameter "msg" was declared but never referenced
line 356: remark(1174): parameter "dev" was declared but never referenced

This is true when ISC_NET_BSD44MSGHDR is not defined.  UNUSED()s were added.

line 1580: remark(1552): variable "task" was set but never used
line 1670: remark(1552): variable "task" was set but never used

I removed the stack variable and its assignment in each case.

line 2915: remark(1552): variable "ret" was set but never used

It was apparent that the variable was meant to be the return value
of isc_socket_getsockname, so the return statement was changed to use it.

Also ...

Changed function declarations to ISC coding style.

Wrapped two lines that were wider than column 79.

Removed two UNUSED() macros for variables that were no longer unused.
2000-05-14 22:35:45 +00:00
Andreas Gustafsson
bbf6673828 use isc_sockaddr_format() instead of a static function doing
the same thing
2000-05-14 20:52:35 +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
David Lawrence
0c73b546ec Moved posix_result from file.c to errno2result.[ch], for use by multiple
source files.  We may want to generalize this as part of the libisc API,
but with a better name.
2000-05-11 15:09:30 +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
6849d91cd7 mark accepted connections as connected and bound. 2000-05-11 06:35:20 +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
f019e00452 Add (commented out) 'must be bound' checking 2000-05-10 21:17:49 +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
47b26abe77 ensure proper range for argument to ctype functions 2000-05-09 22:22:25 +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
8b9ad57c12 Comment about unavoidable HP/UX compiler warning:
warning 541: Integer overflow during conversion.
when their own SIO* macros are used in ioctl calls.
2000-05-08 23:36:19 +00:00
David Lawrence
0c5a46afed comment about why unistd.h is required 2000-05-08 21:10:35 +00:00
Michael Graff
ab7c671292 add <stdlib.h> for mkstemp on NetBSD 2000-05-08 20:05:27 +00:00
David Lawrence
454e318ef6 include string.h for memcpy; gcc fails to warn about its absence, but hp doesn't 2000-05-08 18:37:22 +00:00
David Lawrence
6e3a8256ee need <sys/time.h> on some platforms 2000-05-08 16:30:49 +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
Andreas Gustafsson
8dfc98528f isc_mem_get() return value check used the wrong variable 2000-05-04 23:59:49 +00:00
Andreas Gustafsson
ae0713cac2 removed debugging printf 2000-05-04 23:58:05 +00:00
Michael Graff
99b24bbca2 include <isc/print.h> 2000-05-03 22:04:49 +00:00
Michael Graff
4142e747f2 use new isc_lctx logging 2000-05-03 21:09:49 +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