Commit Graph
453 Commits
Author SHA1 Message Date
Michael Graff 5d9d8d114f Add magic.h, which should eventually contain all isc magic numbers, perhaps
macros to validate structures using them, and perhaps a do-all function
which can be used by debugging code to identify a structure and print
the contents by calling the correct dump function.
1999-09-25 01:23:39 +00:00
Michael Graff fb6b65a005 I just can't win today. Remove redundant 'block' from function names. 1999-09-24 23:47:21 +00:00
Michael Graff 783e10df2c mutexblock, not just mutex. Duh. 1999-09-24 23:32:14 +00:00
Michael Graff 9c91aa2641 add a function to initialize a block of mutexes, and to destroy them. 1999-09-24 23:26:23 +00:00
Michael Graff e141888b93 protect with <isc/lang.h> and ISC_LANG_BEGINDECLS/ISC_LANG_ENDDECLS 1999-09-24 23:24:51 +00:00
Bob Halley 3c5c6fc345 ISC_R_TASKDONE and ISC_R_TASKNOSEND are not relevant anymore 1999-09-24 01:39:56 +00:00
David Lawrence 1c333c1415 Not all dirents have d_namlen.
include stdlib.h to define NULL; BSD/OS managed to define it in
one of the other files already included, but that was not portable.

Thanks for pointing these issues out for Linux, Brian.
1999-09-23 21:35:19 +00:00
Bob Halley 271d5bfc5c conforming changes for task API simplification 1999-09-23 21:31:03 +00:00
Bob Halley 3bff571ab2 Simply task API:
Tasks now terminate when

		Any shutdown events have been posted

		There are no references

		The event queue is empty

	If a task has no references and the event queue
	is empty, then a shutdown will be triggered if
	it hasn't been already.

	allowdone and allowsend are gone

	sending events can no longer fail
1999-09-23 21:30:26 +00:00
David Lawrence bdec0dc85e win32 interface for isc_stdtime_get 1999-09-23 18:34:27 +00:00
David Lawrence e904ee6c52 Include process.h for _beginthreadex prototype. 1999-09-23 18:26:12 +00:00
David Lawrence cb73e2bfac isc_once_do() for NT. Two different methods were coded and one
should be decided on; it is kind of a toss-up to me personally.
One method is slightly more complicated but the other uses a spin lock.
See once.c for details.
1999-09-23 18:14:16 +00:00
David Lawrence 05d763d642 Fixed prototype for isc_condition_waituntil.
Fixed calls to isc_time_now and isc_time_millidiff.
1999-09-23 18:06:47 +00:00
David Lawrence d5069ac954 Fixed function prototypes to match unix/include/isc/time.h protos.
Wrote isc_time_nowplusinterval, a new function added to unix/time.c.

Made some LARGE_INTEGERS to be ULARGE_INTEGERS to ameliorate any
possible hint of a signed vs unsigned problem, even though it would
not happen for 28,847 more years from now.

Assert t1 and t2 not NULL in isc_time_millidiff.
1999-09-23 18:03:39 +00:00
David Lawrence c910282c40 Shut up MSVC++ compiler warning about loss of precision when assigning
8 bits masked out of a 32 bit int to individual bytes.
1999-09-23 17:54:57 +00:00
David Lawrence fc80027fb5 logging interface & test program. not yet NT portable because of syslog. 1999-09-23 17:43:51 +00:00
David Lawrence 49e558760e directory scanning API for unix/nt portability 1999-09-23 17:31:59 +00:00
Bob Halley cae6ddd340 add isc_buffer_copyregion 1999-09-22 00:35:59 +00:00
Michael Graff 5f0e2c8913 update copyright text 1999-09-16 00:02:20 +00:00
Michael Graff 0ed6a92981 clean up print.h in make distclean step 1999-09-15 23:15:57 +00:00
Michael Graff 2f072c2982 Update copyrights 1999-09-15 23:03:43 +00:00
Michael Graff 50dfb7ee4a implement mempool locking 1999-09-15 17:47:08 +00:00
Mark Andrews 0da4fbb842 added print.h 1999-09-14 04:32:26 +00:00
Mark Andrews 1468e4fb6e Now print.c 1999-09-14 04:31:11 +00:00
Mark Andrews 34884bf789 #ifdef protect long doubles 1999-09-14 04:27:11 +00:00
Mark Andrews b1f833cea5 Allow isc/print.h to be included multiple times.
cvs: ----------------------------------------------------------------------
1999-09-14 02:40:49 +00:00
Mark Andrews cd71050434 ISC versions of vsnprint and snprintf. 1999-09-14 02:07:03 +00:00
Michael Graff aca2a14afc Implement MSG_TRUNC faking for UDP, on systems where recvmsg() doesn't set that
flag for us.  To see if a UDP packet was truncated, look at
done_event->attributes and see if ISC_SOCKEVENTATTR_TRUNC is set.
1999-09-13 22:00:28 +00:00
Michael Graff 07a9b8b588 Make a few helper macros which will return lengths of regions rather than
requiring an isc_region_t to fill in.  Use these macros in a few places.
1999-09-10 21:13:39 +00:00
Mark Andrews c08fedf6a5 Not all OS's yet supply {v}snprintf().
This implementation is nearly complete except for outragous
	precision values on floating point numbers.  This impelemation
	has a maximum precision of 512.
1999-09-10 12:45:28 +00:00
Michael Graff 3df43dad43 Make the ISC_BUFFER_VALID() be exported from buffer.h, so bufferlist.h
can use internal buffer pointers without fear by first performing the
same validity check used in the buffer.c file.  This eliminates a
function call inside a loop, and the bufferlist.c file is really a
superset of buffers in many ways already.
1999-09-10 01:54:08 +00:00
James Brister fe4cf362bb Fixed bad use of return(). 1999-09-09 22:32:33 +00:00
Bob Halley ac70da9a27 allow malloc() and free() to be replaced 1999-09-09 19:32:03 +00:00
David Lawrence b906092cb1 MSVC++ does not allow "long long". This uses the MSVC++ native types
to specify integers of the appropriate bit widths.
1999-09-09 15:19:43 +00:00
Andreas Gustafsson b1a67f989f ISC_LIST_APPENDLIST now clears list2 consistently 1999-09-08 05:56:21 +00:00
Bob Halley 8660a2d45b stdio.h is required if tracing 1999-09-07 23:09:06 +00:00
Bob Halley 1819606910 add bitstring 1999-09-07 01:32:27 +00:00
Michael Graff e4f133deed Add isc_buffer_usedcount() and availablecount() -- which should become macros 1999-09-06 04:45:13 +00:00
Michael Graff c520793fb9 Add isc_socket_sendv(), sendtov(), and recvv() that work 1999-09-06 04:44:40 +00:00
Michael Graff 85f0f10eeb add bufferlist.c and bufferlist.h 1999-09-06 04:41:38 +00:00
Bob Halley 17836c7ab3 remove erroneous inet_ntop.@O@ 1999-09-03 17:56:58 +00:00
Bob Halley 453f3213e9 undo ISC_MEM_RECORD 1999-09-03 17:45:17 +00:00
Michael Graff c138fc2791 multi-buffer isc_socket_recvv() -- needs testing 1999-09-03 16:38:08 +00:00
Mark Andrews feb72cfbe7 Record where memory requests and releases were made.
Double isc_mem_put()'s well now cause an INSIST failures.
	These are on by default during development but can be turned
	off by "#define ISC_MEM_RECORD 0" or equivalent.
1999-09-03 13:19:17 +00:00
Michael Graff e823f5d408 common path for sending, too 1999-09-03 01:18:45 +00:00
Michael Graff ad76b9d585 checkpoint new development: recvmsg() path is now common between all receiving
routines (internal and external)
1999-09-03 00:22:28 +00:00
Michael Graff dfeb5a60db fix 1999-09-02 23:34:09 +00:00
Michael Graff 9f1c521285 change some flags (so we can use internal ones, too) 1999-09-02 20:52:44 +00:00
Michael Graff 3467456ae4 deal with partial writes correctly 1999-09-02 20:06:55 +00:00
Michael Graff ad4f276061 Use a static function to allocate and initialize isc_socketevent_t's 1999-09-02 18:56:11 +00:00