2
0
mirror of https://gitlab.isc.org/isc-projects/bind9 synced 2025-08-30 05:57:52 +00:00

removed libisc man pages

This commit is contained in:
Andreas Gustafsson 2001-01-18 01:42:50 +00:00
parent 01b8865b14
commit b4a62f571d
78 changed files with 0 additions and 3701 deletions

View File

@ -1,18 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc__errno2result.3,v 1.5 2001/01/09 21:47:26 bwelling Exp $
.so isc_error.3

View File

@ -1,228 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc_app.3,v 1.6 2001/01/09 21:47:27 bwelling Exp $
.Dd Jun 30, 2000
.Dt ISC_APP 3
.Os BIND9 9
.ds vT BIND9 Programmer's Manual
.Sh NAME
.Nm isc_app_start ,
.Nm isc_app_onrun ,
.Nm isc_app_run ,
.Nm isc_app_shutdown ,
.Nm isc_app_reload ,
.Nm isc_app_finish
.Nd application management functions
.Sh SYNOPSIS
.Fd #include <config.h>
.Fd #include <pthread.h>
.Fd #include <sys/types.h>
.Fd #include <stddef.h>
.Fd #include <errno.h>
.Fd #include <unistd.h>
.fd #include <signal.h>
.Fd #include <isc/app.h>
.Fd #include <isc/boolean.h>
.Fd #include <isc/mutex.h>
.Fd #include <isc/event.h>
.Fd #include <isc/string.h>
.Fd #include <isc/task.h>
.Fd #include <isc/util.h>
.Ft isc_result_t
.Fo isc_app_start
.Fa void
.Fc
.Ft isc_result_t
.Fo isc_app_onrun
.Fa "isc_mem_t *mctx"
.Fa "isc_task_t *task"
.Fa "isc_taskaction_t action"
.Fa "void *arg"
.Fc
.Ft isc_result_t
.Fo isc_app_run
.Fa void
.Fc
.Ft isc_result_t
.Fo isc_app_shutdown
.Fa void
.Fc
.Ft isc_result_t
.Fo isc_app_reload
.Fa void
.Fc
.Ft void
.Fo isc_app_finish
.Fa void
.Fc
.Sh DESCRIPTION
These functions define the interface for creating and terminating
applications which use the BIND9 library.
.Pp
Applications which use the BIND9 library should begin by calling
.Fn isc_app_start .
It sets up a signal handler to ignore
.Dv SIGPIPE .
.Fn isc_app_start
blocks signals
.Dv SIGHUP ,
.Dv SIGINT
and
.Dv SIGTERM
This ensures that all subsequent threads will have these signals blocked by
default.
Any thread which wants to take delivery of these signals will have to
arrange its own signal handlers for them.
.Fn isc_app_start
then initialises a queue of runnable tasks for the application.
Calls to
.Fn isc_app_start
should be made before any other BIND9 library call, ideally as
close to the beginning of the application as possible.
.Pp
.Fn isc_app_onrun
arranges for delivery of an event to an application when it is executing.
This function should only be invoked after
.Fn isc_app_start
has been called.
It creates an
.Ft isc_event_t
structure from memory context
.Fa mctx
for task
.Fa task .
.Fa arg
is a pointer to some structure that can be referenced by the event
handler
.Fa action
which is invoked when the application takes delivery of a shutdown
event
.Dv ISC_APPEVENT_SHUTDOWN .
.Pp
An ISC library application is executed by calling
.Fn isc_app_run .
It should only be used after
.Fn isc_app_start
has been called.
.Fn isc_app_run
will not block until any events that have been requested with
.Fn isc_app_onrun
have been posted.
These events will be in FIFO order.
Typically
.Fn isc_app_run
will be called by the initial thread of an application which will then
block until shutdown is requested.
When a call to
.Fn isc_app_run
returns, the caller should arrange to shutdown the application.
.Pp
Applications should be shutdown using
.Fn isc_app_shutdown .
It can only be invoked after
.Fn isc_app_run
has been called.
.Fn isc_app_shutdown
sends a
.Dv SIGTERM
signal to the current process.
Multiple calls to
.Fn isc_app_shutdown
can be made.
Only one shutdown attempt will be carried out.
.Pp
The reload signal
.Dv SIGHUP
is sent to the process by
.Fn isc_app_reload .
The function returns
.Er ISC_R_SUCCESS
on success or
.Er ISC_R_UNEXPECTED
if the attempt to send the reload signal fails.
.Pp
.Fn isc_app_finish
should be called at the end of an application which uses the BIND9
library.
It should be invoked at or near to the end of
.Dv main() .
The function ensures that any resources allocated by
.Fn isc_app_start
get released.
It therefore follows that
.Fn isc_app_finish
should only be used if
.Fn isc_app_start
was called earlier in the application.
.Sh RETURN VALUES
A successful call to
.Fn handle_signal
returns
.Er ISC_R_SUCCESS
and
.Er ISC_R_UNEXPECTED
is returned if it was unable to set up a signal handler.
.Pp
.Fn isc_app_start
returns
.Er ISC_R_SUCCESS
or
.Er ISC_R_UNEXPECTED
depending on whether the signal handler was successfully installed
or not.
.Pp
.Fn isc_app_onrun
returns
.Er ISC_R_SUCCESS
unless it was not possible to create the event structure
.Ft isc_event_t
in which case it returns
.Er ISC_R_NOMEMORY .
.Pp
.Fn isc_app_run
returns
.Er ISC_R_SUCCESS
if shutdown has been requested and
.Er ISC_R_RELOAD
if a reload was requested.
.Er ISC_R_UNEXPECTED
is returned by
.Fn isc_app_run
when attempts to set or reset signal handlers fail.
.Pp
.Er ISC_R_UNEXPECTED
is returned by
.Fn isc_app_shutdown
if the signal was not sent successfully.
Otherwise
.Fn isc_app_shutdown
returns
.Er ISC_R_SUCCESS .
.Pp
Functions which return
.Er ISC_R_UNEXPECTED
will print an error message on the standard error output,
.Dv stderr .
.Sh SEE ALSO
.Xr sigsetops 3 ,
.Xr pthreads 3 ,
.Xr kill 2

View File

@ -1,18 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc_app_finish.3,v 1.5 2001/01/09 21:47:28 bwelling Exp $
.so isc_app.3

View File

@ -1,18 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc_app_onrun.3,v 1.5 2001/01/09 21:47:29 bwelling Exp $
.so isc_app.3

View File

@ -1,18 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc_app_reload.3,v 1.5 2001/01/09 21:47:31 bwelling Exp $
.so isc_app.3

View File

@ -1,18 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc_app_run.3,v 1.5 2001/01/09 21:47:32 bwelling Exp $
.so isc_app.3

View File

@ -1,18 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc_app_shutdown.3,v 1.5 2001/01/09 21:47:33 bwelling Exp $
.so isc_app.3

View File

@ -1,18 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc_app_start.3,v 1.5 2001/01/09 21:47:34 bwelling Exp $
.so isc_app.3

View File

@ -1,163 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc_dir.3,v 1.5 2001/01/09 21:47:35 bwelling Exp $
.Dd Jun 30, 2000
.Dt ISC_DIR 3
.Os BIND9 9
.ds vT BIND9 Programmer's Manual
.Sh NAME
.Nm isc_dir_init ,
.Nm isc_dir_open ,
.Nm isc_dir_read ,
.Nm isc_dir_close ,
.Nm isc_dir_reset ,
.Nm isc_dir_chdir
.Nd file system directory operations
.Sh SYNOPSIS
.Fd #include <config.h>
.Fd #include <errno.h>
.Fd #include <unistd.h>
.Fd #include <isc/dir.h>
.Fd #include <isc/magic.h>
.Fd #include <isc/string.h>
.Fd #include <isc/util.h>
.Fd #include \*qerrno2result.h\*q
.Ft void
.Fo isc_dir_init
.Fa "isc_dir_t *dir"
.Fc
.Ft isc_result_t
.Fo isc_dir_open
.Fa "isc_dir_t *dir,
.Fa "const char *dirname"
.Fc
.Ft isc_result_t
.Fo isc_dir_read
.Fa "isc_dir_t *dir"
.Fc
.Ft isc_result_t
.Fo isc_dir_close
.Fa "isc_dir_t *dir"
.Fc
.Ft isc_result_t
.Fo isc_dir_chdir
.Fa "const char *dirname"
.Fc
.Sh DESCRIPTION
These functions define the operations performed on the file system's
directories by the name server.
They are intended to isolate BIND9 from the semantics of the underlying
directory access routines provided by the operating system,
BIND9 uses an internal structure of type
.Fa isc_dir_t
to reference a directory.
The contents of this structure are OS-specific.
.Fn isc_dir_init
initialises the directory structure pointed at
.Fa dir .
All functions taking a
.Fa dir
argument must ensure that
this parameter points at a valid
.Fa isc_dir_t
structure.
.Pp
.Fn isc_dir_open
opens the directory named by
.Fa dirname .
.Pp
.Fn isc_dir_read
retrieves the next entry from the file descriptor associated with directory
.Fa dir .
The name of that entry and the length of its name are copied to
.Fa dir .
A successful initial call to
.Fn isc_dir_read
on a directory will populate the
.Fa isc_dir_t
with details of the first valid directory entry.
Subsequent calls fetch the next entries.
.Pp
The
.Fn isc_dir_close
function
closes the file descriptor associated with
.Fa dir .
.Pp
.Fn isc_dir_reset
repositions
.Fa dir
to the start of the directory.
.Pp
The name server's current directory is changed to
.Fa dirname
by
.Fn isc_dir_chdir .
.Pp
.Sh RETURN VALUES
Successful calls to
.Fn isc_dir_open ,
.Fn isc_dir_read ,
.Fn isc_dir_reset ,
.Fn isc_dir_read
and
.Fn isc_dir_chdir
return
.Er ISC_R_SUCCESS .
.Fn isc_dir_read
returns
.Er ISC_R_NOMORE
when there are no more entries in the directory.
.Er ISC_R_UNEXPECTED
is returned if the name of the next directory entry is too big
to fit in the
.Fa isc_dir_t
structure.
If
.Fn isc_dir_chdir
fails,
.Er ISC_R_INVALIDFILE
is returned if
.Fa dirname
is not a directory, or
.Er ISC_R_NOPERM
if access permission is denied or
.Er ISC_R_IOERROR
if an I/O error occurs.
The WinNT version of
.Fn isc_dir_chdir
returns
.Er ISC_R_NOTIMPLEMENTED
when the operating system reports an error that cannot be defined by
either a return value of
.Er ISC_R_NOTFOUND
or
.Er ISC_R_UNEXPECTED .
An error of
.Er ISC_R_FAILURE
can be returned in the WinNT versions of
.Fn isc_dir_open
and
.Fn isc_dir_reset .
.Sh SEE ALSO
.Xr opendir 3 ,
.Xr readdir 3 ,
.Xr closedir 3 ,
.Xr rewinddir 3 ,
.Xr chdir 2

View File

@ -1,18 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc_dir_chdir.3,v 1.5 2001/01/09 21:47:36 bwelling Exp $
.so isc_dir.3

View File

@ -1,18 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc_dir_close.3,v 1.5 2001/01/09 21:47:37 bwelling Exp $
.so isc_dir.3

View File

@ -1,18 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc_dir_init.3,v 1.5 2001/01/09 21:47:38 bwelling Exp $
.so isc_dir.3

View File

@ -1,18 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc_dir_open.3,v 1.5 2001/01/09 21:47:39 bwelling Exp $
.so isc_dir.3

View File

@ -1,18 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc_dir_read.3,v 1.5 2001/01/09 21:47:41 bwelling Exp $
.so isc_dir.3

View File

@ -1,18 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc_dir_reset.3,v 1.5 2001/01/09 21:47:42 bwelling Exp $
.so isc_dir.3

View File

@ -1,95 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc_error.3,v 1.5 2001/01/09 21:47:43 bwelling Exp $
.Dd Jun 30, 2000
.Dt error 3
.Os BIND9 9
.ds vT BIND9 Programmer's Manual
.Sh NAME
.Nm isc__errno2result
.Nd map POSIX error codes to BIND9 error codes
.Sh SYNOPSIS
.Fd #include <config.h>
.Fd #include <errno.h>
.Fd #include <isc/result.h>
.Fd #include "errno2result.h"
.Ft isc_result_t
.Fo isc__errno2result
.Fa "int posixerrno"
.Fc
.Sh DESCRIPTION
.Fn isc__errno2result
maps the POSIX error code
.Fa posixerrno
to its equivalent BIND9 error code.
This function is internal to BIND9.
It is not intended to be called by applications using the BIND9 library.
The function is documented here to indicate how POSIX error codes
are mapped to their ISC equivalents.
.Pp
.Sh RETURN VALUES
When
.Fa posixerrno
is set to the POSIX error codes
.Er ENOTDIR ,
.Er ELOOP ,
.Er EINVAL ,
.Er ENAMETOOLONG ,
and
.Er EBADF ,
.Fn isc__errno2result
returns
.Er ISC_R_INVALIDFILE .
.Er ISC_R_FILENOTFOUND
is returned when
.Fa posixerrno
is set to
.Er ENOENT .
A retun value of
.Er ISC_R_NOPERM
is produced when the POSIX error code is
.Er EACCES .
If
.Fa posixerrno
is set to
.Er EIO
.Fn isc__errno2result
returns
.Er ISC_R_IOERROR
and if the error code is
.Er ENOMEM ,
.Er ISC_R_NOMEMORY
is returned.
For all other values of
.Fa posixerrno ,
.Fn isc__errno2result
returns
.Er ISC_R_UNEXPECTED .
.Sh SEE ALSO
.Xr errno 2 ,
.Xr perror 3
.Sh BUGS
Returning
.Er ISC_R_UNEXPECTED
for so many error codes is a little unhelpful.
It would be nice if
.Fn isc__errno2result
produced something more descriptive like the system's error string for
these error codes.

View File

@ -1,158 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc_file.3,v 1.6 2001/01/09 21:47:44 bwelling Exp $
.Dd Jun 30, 2000
.Dt ISC_FILE 3
.Os BIND9 9
.ds vT BIND9 Programmer's Manual
.Sh NAME
.Nm isc_file_getmodtime ,
.Nm isc_file_settime ,
.Nm isc_file_mktemplate ,
.Nm isc_file_openunique ,
.Nm isc_file_remove
.Nd BIND9 file operation functions
.Sh SYNOPSIS
.Fd #include <config.h>
.Fd #include <errno.h>
.Fd #include <limits.h>
.Fd #include <stdlib.h>
.Fd #include <unistd.h>
.Fd #include <sys/stat.h>
.Fd #include <sys/time.h>
.Fd #include <isc/file.h>
.Fd #include <isc/string.h>
.Fd #include <isc/time.h>
.Fd #include <isc/util.h>
.Fd #include \*qerrno2result.h\*q
.Ft isc_result_t
.Fo isc_file_getmodtime
.Fa "const char *file"
.Fa "isc_time_t *time"
.Fc
.Ft isc_result_t
.Fo isc_file_settime
.Fa "const char *file"
.Fa "isc_time_t *time"
.Fc
.Ft isc_result_t
.Fo isc_file_mktemplate
.Fa "const char *path"
.Fa "char *buf"
.Fa "size_t buflen"
.Fc
.Ft isc_result_t
.Fo isc_file_openunique
.Fa "char *templet"
.Fa "FILE **fp"
.Fc
.Ft isc_result_t
.Fo isc_file_remove
.Fa "const char *filename"
.Fc
.Sh DESCRIPTION
The BIND9 library provides these function calls to manipulate files.
.Pp
The modification date of filename
.Fa file
is obtained by a call to
.Fn isc_file_getmodtime .
.Fa time
is a pointer to an
.Dv isc_time_t
structure which contains the file's modification date.
.Pp
.Fn isc_file_settime
sets the access and modification times of the file named
.Fa file
to the value of the timestamp supplied in
.Fa time .
.Pp
Pathnames for temporary files are created with
.Fn isc_file_mktemplate .
It copies the pathname in
.Fa path
up to the last \*q/\*q character, if any, in
.Fa buf .
The 14-character string \*qtmp-XXXXXXXXXX\*q is then appended to that
buffer.
.Fa buflen
indicates the size of buffer
.Fa buf .
Calls to
.Fn isc_file_mktemplate
fail if the buffer is too small to hold for the newly-created pathname.
.Pp
.Fn isc_file_openunique
creates a unique file name with access permissions 0600 and opens the
file for reading and writing.
The name of the unique file is returned in
.Fa templet
and a pointer to a pointer to a
.Dv stdio stream
associated with the opened file is returned in
.Fa fp .
The file name template
.Fa templet
should be generated by calling
.Fn isc_file_mktemplate .
This ensures the last 10 characters of the template are the letter \*qX\*q
so that these can be overwritten by
.Fn mkstemp
to generate a unique file name.
.Pp
Files are deleted with
.Fn isc_file_remove .
It unlinks the file named
.Fa filename .
.Sh RETURN VALUES
Successful calls to these functions all return
.Er ISC_R_SUCCESS .
Apart from the exceptions listed below, failed calls return
a BIND9 error code by mapping the corresponding POSIX error code using\p
.Fn isc__errno2result .
.Fn file_stats ,
.Fn isc_file_getmodtime
calls
.Fn file_stats
and returns whatever values can be returned by that function.
.Pp
.Fn isc_file_settime
will return
.Er ISC_R_RANGE
if the count of the number of seconds in
.Dv time
is too big to fit in a 32-bit quantity.
.Pp
An error of
.Ev ISC_R_NOSPACE
is returned by
.Fn isc_file_mktemplate
if the pathname overflows the allocated buffer.
.Sh SEE ALSO
.Xr perror 3 ,
.Xr isc__errno2result 3 ,
.Xr stat 2 ,
.Xr isc_time_set 3 ,
.Xr utimes 2 ,
.Xr mkstemp 3 ,
.Xr fdopen 3 ,
.Xr unlink 2 .

View File

@ -1,18 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc_file_getmodtime.3,v 1.5 2001/01/09 21:47:45 bwelling Exp $
.so isc_file.3

View File

@ -1,18 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc_file_mktemplate.3,v 1.5 2001/01/09 21:47:46 bwelling Exp $
.so isc_file.3

View File

@ -1,18 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc_file_openunique.3,v 1.5 2001/01/09 21:47:47 bwelling Exp $
.so isc_file.3

View File

@ -1,18 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc_file_remove.3,v 1.5 2001/01/09 21:47:48 bwelling Exp $
.so isc_file.3

View File

@ -1,18 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc_file_settime.3,v 1.5 2001/01/09 21:47:49 bwelling Exp $
.so isc_file.3

View File

@ -1,18 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc_interfaceiter_create.3,v 1.5 2001/01/09 21:47:50 bwelling Exp $
.so isc_netif.3

View File

@ -1,18 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc_interfaceiter_current.3,v 1.5 2001/01/09 21:47:51 bwelling Exp $
.so isc_netif.3

View File

@ -1,18 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc_interfaceiter_destroy.3,v 1.5 2001/01/09 21:47:52 bwelling Exp $
.so isc_netif.3

View File

@ -1,18 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc_interfaceiter_first.3,v 1.5 2001/01/09 21:47:54 bwelling Exp $
.so isc_netif.3

View File

@ -1,18 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc_interfaceiter_next.3,v 1.5 2001/01/09 21:47:55 bwelling Exp $
.so isc_netif.3

View File

@ -1,18 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc_interval_iszero.3,v 1.5 2001/01/09 21:47:56 bwelling Exp $
.so isc_time.3

View File

@ -1,76 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc_ipproto.3,v 1.6 2001/01/09 21:47:57 bwelling Exp $
.Dd Jun 30, 2000
.Dt ISC_IPPROTO 3
.Os BIND9 9
.ds vT BIND9 Programmer's Manual
.Sh NAME
.Nm isc_net_probeipv4 ,
.Nm isc_net_probeipv6
.Nd protocol probe functions
.Sh SYNOPSIS
.Fd #include <config.h>
.Fd #include <errno.h>
.Fd #include <unistd.h>
.Fd #include <isc/net.h>
.Fd #include <isc/once.h>
.Fd #include <isc/string.h>
.Fd #include <isc/util.h>
.Fo isc_net_probeipv4
.Fa void
.Fc
.Ft isc_result_t
.Fo isc_net_probeipv4
.Fa void
.Fc
.Sh DESCRIPTION
.Fn isc_net_probeipv4
and
.Fn isc_net_probeipv6
check that the operating system support the IPv4 and IPv6 protocols
respectively.
.Sh RETURN VALUES
.Fn isc_net_probeipv4
returns
.Er ISC_R_SUCCESS
if the IPv4 protocol is supported by the kernel and
.Fn isc_net_probeipv6
returns
.Er ISC_R_SUCCESS
if the operating system supports IPv6.
.Fn try_proto
returns
.Fn ISC_R_NOTFOUND
if the chosen protocol family
.Fa domain
is not supported by the kernel.
An error message is printed on
.Dv stderr
and
.Er ISC_R_UNEXPECTED
returned if another error occurred when the attempt was made to create
the
.Dv SOCK_STREAM
socket.
.Sh SEE ALSO
.Xr socket 2 ,
.Xr ip 4 ,
.Xr ipv6 4 .

View File

@ -1,18 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc_net_probeipv4.3,v 1.5 2001/01/09 21:47:58 bwelling Exp $
.so isc_ipproto.3

View File

@ -1,18 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc_net_probeipv6.3,v 1.5 2001/01/09 21:47:59 bwelling Exp $
.so isc_ipproto.3

View File

@ -1,258 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc_netif.3,v 1.5 2001/01/09 21:48:00 bwelling Exp $
.Dd Jun 30, 2000
.Dt ISC_NETIF 3
.Os BIND9 9
.ds vT BIND9 Programmer's Manual
.Sh NAME
.Nm isc_interfaceiter_create ,
.\" .Nm internal_current ,
.\" .Nm internal_next ,
.\" .Nm internal_destroy ,
.\" .Nm get_addr ,
.Nm isc_interfaceiter_current ,
.Nm isc_interfaceiter_first ,
.Nm isc_interfaceiter_next ,
.Nm isc_interfaceiter_destroy
.Nd network interface management
.Sh SYNOPSIS
.Fd #include <config.h>
.Fd #include <sys/types.h>
.Fd #include <sys/ioctl.h>
.Fd #ifdef HAVE_SYS_SOCKIO_H
.Fd #include <sys/sockio.h> /* Required for ifiter_ioctl.c. */
.Fd #endif
.Fd #include <stdio.h>
.Fd #include <stdlib.h>
.Fd #include <unistd.h>
.Fd #include <errno.h>
.Fd #include <isc/mem.h>
.Fd #include <isc/net.h>
.Fd #include <isc/result.h>
.Fd #include <isc/string.h>
.Fd #include <isc/types.h>
.Fd #include <isc/interfaceiter.h>
.Fd #include <isc/util.h>
.Fd #include <net/if.h> /* Must follow <isc/net.h>. */
.Ft isc_result_t
.Fo isc_interfaceiter_create
.Fa "isc_mem_t *mctx"
.Fa "isc_interfaceiter_t **iterp"
.Fc
.\" .Ft static isc_result_t
.\" .Fo internal_current
.\" .Fc
.\" .Ft static isc_result_t
.\" .Fo internal_next
.\" .Fc
.\" .Ft static void
.\" .Fo internal_destroy
.\" .Fc
.\" .Ft static void
.\" .Fo get_addr
.\" .Fa "unsigned int family"
.\" .Fa "isc_netaddr_t *dst"
.\" .Fa "struct sockaddr *src"
.\" .Fc
.Ft isc_result_t
.Fo isc_interfaceiter_current
.Fa "isc_interfaceiter_t *iter"
.Fa "isc_interface_t *ifdata"
.Fc
.Ft isc_result_t
.Fo isc_interfaceiter_first
.Fa "isc_interfaceiter_t *iter"
.Fc
.Ft isc_result_t
.Fo isc_interfaceiter_next
.Fa "isc_interfaceiter_t *iter"
.Fc
.Ft void
.Fo isc_interfaceiter_destroy "isc_interfaceiter_t **iter"
.Fc
.Sh DESCRIPTION
Details of the system's network interfaces can be retrieved with
.Fn isc_interfaceiter_create .
It uses
.Xr sysctl 3
or an
.Dv SIOCGLIFCONF
.Xr ioctl 2
to get the information from the kernel.
Configuration details of the system's network interfaces - IP addresses, network
mask, status, MAC address, etc. - is stored in a buffer which is
accessed through
.Fa iterp .
Memory is allocated from the memory context
.Fa mctx
to store this information.
The maximum buffer size that can be used to store the configuration
data of all the network interfaces is 1 Megabyte
This data buffer should be far more than enough for a system with a
sensible number of network interfaces.
.Pp
The
.Dv isc_interfaceiter_t
structure is not accessed directly.
The contents of this structure are\p
operating system specific.
They depend on whether the kernel provides a
.Xr sysctl 3
or
.Dv SIOCGLIFCONF
.Xr ioctl 2
interface for retreiving network interface details.
Information from the
.Dv isc_interfaceiter_t
can be accessed using
.Fn isc_interfaceiter_current ,
.Fn isc_interfaceiter_first
and
.Fn isc_interfaceiter_next .
.\" which use the internal functions
.\" .Fa internal_current
.\" and
.\" .Fa internal_next .
.\" .Pp
.\" .Fn internal_current
.\" gets information for the current network interface from
.\" .Fa iter .
.\" .Fn internal_current
.\" sets
.\" .Dv iter->current
.\" to point at the information about the current interface.
.\" .Fa internal_next
.\" gets the next interface in the list created by
.\" .Fn isc_interfaceiter_create .
.\" Unlike
.\" .Fn isc_interfaceiter_next ,
.\" calls to
.\" .Fn internal_next
.\" can position the
.\" .Fa iter
.\" pointers at an interface which will be ignored because it uses an
.\" unsupported address family: a non-IP interface for example.
.\" .Pp
.\" .Fn internal_destroy
.\" does nothing.
.\" It serves as a stub for
.\" .Xr isc_interfaceiter_destroy 3 .
.\" .Pp
.\" .Fn get_addr
.\" extracts the network address part of the
.\" .Dv sockaddr
.\" struct referenced by
.\" .Fa src
.\" and copies it to
.\" .Fa dst .
.\" .Fa family
.\" indicates the address family \*-
.\" .Dv AF_INET
.\" or
.\" .Dv AF_INET6 .
.\" The address family is given explicitly because the network address might
.\" contain a netmask obtained by an
.\" .Dv SIOCGIFNETMASK
.\" .Xr ioctl 2 .
.\" which will not assign a valid address family to
.\" .Dv src->sa_family .
.Pp
.Fn isc_interfaceiter_current
copies the configuration details of
.Fa iter 's
current network interface to
.Fa ifdata .
.Pp
.Fn isc_interfaceiter_first
locates the first network interface in
.Fa iter
which has an address in a supported address family: i.e. an IPv4 or
IPv6 address.
.Fn isc_interfaceiter_next
find the next network interface in the list referenced by
.Fa iter
that has an IPv4 or IPv6 address.
.Pp
The
.Dv isc_interfaceiter_t
structure referenced by
.Fa iterp
is discarded by calling
.Fn isc_interfaceiter_destroy .
Any memory associated with
.Fa iterp is freed.
.Sh RETURN VALUES
Successful calls to
.Fn isc_interfaceiter_create
return
.Er ISC_R_SUCCESS .
The function returns
.Er ISC_R_NOMEMORY
if it was unable to allocate enough memory for the list if network
interfaces.
.Er ISC_R_UNEXPECTED
is returned and an error message printed on
.Dv stderr
if it was not possible to obtain a list of network interfaces.
.\" .Pp
.\" .Fa internal_current
.\" returns
.\" .Er ISC_R_SUCCESS
.\" on success.
.\" If the current interface uses an unsupported address family or if some
.\" operation on the interface fails, the function returns
.\" .Er ISC_R_IGNORE .
.\" .Pp
.\" .Er ISC_R_NOMORE
.\" is returned by
.\" .Fn internal_next
.\" when there are no more entries in the list of interfaces referenced
.\" via
.\" .Fa iter.
.\" It returns
.\" .Er ISC_R_SUCCESS
.\" otherwise.
.Pp
.Fn isc_interfaceiter_current
always returns
.Er ISC_R_SUCCESS
if
.Fa iter
points to a valid
.Dv isc_interfaceiter_t
structure.
.Pp
.Fn isc_interfaceiter_first
and
.Fn isc_interfaceiter_next
return
.Er ISC_R_SUCCESS
on success or
.Er ISC_R_NOMORE
if there are no more network interfaces in
.Fa iter .
.Sh SEE ALSO
.Xr netintro 4,
.Xr sysctl 3 ,
.Xr ioctl 2 ,
.Xr ifconfig 8 .

View File

@ -1,898 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc_socket.3,v 1.5 2001/01/09 21:48:01 bwelling Exp $
.Dd Jun 30, 2000
.Dt ISC_SOCKET 3
.Os BIND9 9
.ds vT BIND9 Programmer's Manual
.Sh NAME
.Nm isc_socket_create ,
.Nm isc_socket_attach ,
.Nm isc_socket_detach ,
.Nm isc_socketmgr_create ,
.Nm isc_socketmgr_destroy ,
.Nm isc_socket_recvv ,
.Nm isc_socket_recv ,
.Nm isc_socket_send ,
.Nm isc_socket_sendto ,
.Nm isc_socket_sendv ,
.Nm isc_socket_sendtov ,
.Nm isc_socket_bind ,
.Nm isc_socket_listen ,
.Nm isc_socket_accept ,
.Nm isc_socket_connect ,
.Nm isc_socket_getpeername ,
.Nm isc_socket_getsockname ,
.Nm isc_socket_cancel ,
.Nm isc_socket_recvmark ,
.Nm isc_socket_sendmark ,
.Nm isc_socket_gettype ,
.Nm isc_socket_isbound
.Nd name server network I/O
.Sh SYNOPSIS
.Fd #include <config.h>
.Fd
.Fd #include <sys/param.h>
.Fd #include <sys/types.h>
.Fd #include <sys/socket.h>
.Fd #include <sys/time.h>
.Fd #include <sys/uio.h>
.Fd
.Fd #include <errno.h>
.Fd #include <stddef.h>
.Fd #include <stdlib.h>
.Fd #include <string.h>
.Fd #include <unistd.h>
.Fd #include <fcntl.h>
.Fd
.Fd #include <isc/buffer.h>
.Fd #include <isc/bufferlist.h>
.Fd #include <isc/condition.h>
.Fd #include <isc/list.h>
.Fd #include <isc/log.h>
.Fd #include <isc/mem.h>
.Fd #include <isc/net.h>
.Fd #include <isc/print.h>
.Fd #include <isc/region.h>
.Fd #include <isc/socket.h>
.Fd #include <isc/task.h>
.Fd #include <isc/thread.h>
.Fd #include <isc/util.h>
.Fd
.Ft isc_result_t
.Fo isc_socket_create
.Fa "isc_socketmgr_t *manager"
.Fa "int pf"
.Fa "isc_sockettype_t type"
.Fa "isc_socket_t **socketp"
.Fc
.Ft void
.Fo isc_socket_attach
.Fa "isc_socket_t *sock"
.Fa "isc_socket_t **socketp"
.Fc
.Ft void
.Fo isc_socket_detach
.Fa "isc_socket_t **socketp"
.Fc
.Ft isc_result_t
.Fo isc_socketmgr_create
.Fa "isc_mem_t *mctx"
.Fa "isc_socketmgr_t **managerp"
.Fc
.Ft void
.Fo isc_socketmgr_destroy
.Fa "isc_socketmgr_t **managerp"
.Fc
.Ft isc_result_t
.Fo isc_socket_recvv
.Fa "isc_socket_t *sock"
.Fa "isc_bufferlist_t *buflist"
.Fa "unsigned int minimum"
.Fa "isc_task_t *task"
.Fa "isc_taskaction_t action"
.Fa "void *arg"
.Fc
.Ft isc_result_t
.Fo isc_socket_recv
.Fa "isc_socket_t *sock"
.Fa "isc_region_t *region"
.Fa "unsigned int minimum"
.Fa "sc_task_t *task"
.Fa "isc_taskaction_t action"
.Fa "void *arg"
.Fc
.Ft isc_result_t
.Fo isc_socket_send
.Fa "isc_socket_t *sock"
.Fa "isc_region_t *region"
.Fa "sc_task_t *task"
.Fa "isc_taskaction_t action"
.Fa "void *arg"
.Fc
.Ft isc_result_t
.Fo isc_socket_sendto
.Fa "isc_socket_t *sock"
.Fa "isc_region_t *region"
.Fa "isc_task_t *task"
.Fa "isc_taskaction_t action"
.Fa "void *arg"
.Fa "isc_sockaddr_t *address"
.Fa "struct in6_pktinfo *pktinfo"
.Fc
.Ft isc_result_t
.Fo isc_socket_sendv
.Fa "isc_socket_t *sock"
.Fa "isc_bufferlist_t *buflist"
.Fa "isc_task_t *task"
.Fa "isc_taskaction_t action"
.Fa "void *arg"
.Fc
.Ft isc_result_t
.Fo isc_socket_sendtov
.Fa "isc_socket_t *sock"
.Fa "isc_bufferlist_t *buflist"
.Fa "isc_task_t *task"
.Fa "isc_taskaction_t action"
.Fa "void *arg"
.Fa "isc_sockaddr_t *address"
.Fa "struct in6_pktinfo *pktinfo"
.Fc
.Ft isc_result_t
.Fo isc_socket_bind
.Fa "isc_socket_t *sock"
.Fa "isc_sockaddr_t *sockaddr"
.Fc
.Ft isc_result_t
.Fo isc_socket_listen
.Fa "isc_socket_t *sock"
.Fa "unsigned int backlog"
.Fc
.Ft isc_result_t
.Fo isc_socket_accept
.Fa "isc_socket_t *sock"
.Fa "isc_task_t *task"
.Fa "isc_taskaction_t action"
.Fa "void *arg"
.Fc
.Ft isc_result_t
.Fo isc_socket_connect
.Fa "isc_socket_t *sock"
.Fa "isc_sockaddr_t *addr"
.Fa "isc_task_t *task"
.Fa "isc_taskaction_t action"
.Fa "void *arg"
.Fc
.Ft isc_result_t
.Fo isc_socket_getpeername
.Fa "isc_socket_t *sock"
.Fa "isc_sockaddr_t *addressp"
.Fc
.Ft isc_result_t
.Fo isc_socket_getsockname
.Fa "isc_socket_t *sock"
.Fa "isc_sockaddr_t *addressp"
.Fc
.Ft void
.Fo isc_socket_cancel
.Fa "isc_socket_t *sock"
.Fa "isc_task_t *task"
.Fa "unsigned int how"
.Fc
.Ft isc_result_t
.Fo isc_socket_recvmark
.Fa "isc_socket_t *sock"
.Fa "isc_task_t *task"
.Fa "isc_taskaction_t action"
.Fa "void *arg"
.Fc
.Ft isc_result_t
.Fo isc_socket_sendmark
.Fa "isc_socket_t *sock"
.Fa "isc_task_t *task"
.Fa "isc_taskaction_t action"
.Fa "void *arg"
.Fc
.Ft isc_sockettype_t
.Fo isc_socket_gettype
.Fa "isc_socket_t *sock"
.Fc
.Ft isc_boolean_t
.Fo isc_socket_isbound
.Fa "isc_socket_t *sock"
.Fc
.Sh DESCRIPTION
Applications using the BIND9 library should use the following
functions for interfacing with the operating system's networking
subsystem.
These functions make extensive make use of the two data
structures below which are abstractions from the
.Xr socket 2
interface provided by most
.Ux
systems.
The contents of these structures should not be manipulated directly.
They should be altered using the functions described below.
.Bd -literal -offset indent
struct isc_socket {
/* Not locked. */
unsigned int magic;
isc_socketmgr_t *manager;
isc_mutex_t lock;
isc_sockettype_t type;
/* Locked by socket lock. */
unsigned int references;
int fd;
isc_result_t recv_result;
isc_result_t send_result;
ISC_LIST(isc_socketevent_t) send_list;
ISC_LIST(isc_socketevent_t) recv_list;
ISC_LIST(isc_socket_newconnev_t) accept_list;
isc_socket_connev_t *connect_ev;
/*
* Internal events. Posted when a descriptor is readable or
* writable. These are statically allocated and never freed.
* They will be set to non-purgable before use.
*/
intev_t readable_ev;
intev_t writable_ev;
isc_sockaddr_t address; /* remote address */
unsigned int pending_recv : 1,
pending_send : 1,
pending_accept : 1,
listener : 1, /* listener socket */
connected : 1,
connecting : 1, /* connect pending */
bound : 1; /* bound to local addr */
#ifdef ISC_NET_RECVOVERFLOW
unsigned char overflow; /* used for MSG_TRUNC fake */
#endif
#ifdef USE_CMSG
unsigned char *cmsg;
unsigned int cmsglen;
#endif
};
typedef struct isc_socket isc_socket_t;
.Ed
.Bd -literal -offset indent
struct isc_socketmgr {
/* Not locked. */
unsigned int magic;
isc_mem_t *mctx;
isc_mutex_t lock;
/* Locked by manager lock. */
unsigned int nsockets; /* sockets managed */
isc_thread_t watcher;
isc_condition_t shutdown_ok;
fd_set read_fds;
fd_set write_fds;
isc_socket_t *fds[FD_SETSIZE];
int fdstate[FD_SETSIZE];
int maxfd;
int pipe_fds[2];
};
typedef struct isc_socketmgr isc_socketmgr_t;
.Ed
.Pp
.Fn isc_socket_create
creates a new socket of protocol family
.Fa pf
which is either
.Dv PF_INET
or
.Dv PF_INET6 .
The socket manager
.Fa manager
will be used to control the socket.
.Fa manager
must be a valid socket manager and
.Fa socketp
should be a pointer to a NULL pointer.
The newly-created socket is returned through
.Fa *socketp .
.Pp
.Fn isc_socket_attach
increments the reference count to
to the socket
.Fa sock
and attaches
.Fa *socketp
to socket
.Fa sock .
.Fa sock
must be a pointer to a valid socket.
The reference count on a socket is decremented by calling
.Fn isc_socket_detach .
.Fa *socketp
must be a valid socket pointer.
When the socket's last reference is removed, its reference count
will be zero.
The socket will then be destroyed and any resources associated with it
will be discarded.
.Pp
Socket manager structures
.Dv "struct isc_socketmgr"
are set up and torn down by
.Fn isc_socketmgr_create
and
.Fn isc_socketmgr_destroy
respectively.
Memory from context
.Fa mctx
is allocated for the structure and
.Fa managerp
should point to a NULL
.Dv isc_socketmgr_t .
If
.Fn isc_socketmgr_create
succeeds,
.Fa *managerp
will be a pointer to the created
.Dv "struct isc_socketmgr" .
Calls to
.Fn isc_socketmgr_destroy
will block until there are no sockets left in the manager referenced
by
.Fa *managerp .
If the caller uses this manager to hold any socket references, it will
deadlock itself.
Therefore those sockets should be detached by calling
.Xr isc_socket_detach 3
before invoking
.Fn isc_socketmgr_destroy .
.Pp
Reading data from a socket is performed by
.Fn isc_socket_recvv
and
.Fn isc_socket_recv .
.Fn isc_socket_recv
reads data into a single region,
.Fa region
while
.Fn isc_socket_recvv
uses a list of buffers
.Fa buflist
for storing the data.
.Fa minimum
indicates how many bytes should be read.
A read done event -
.Dv ISC_SOCKEVENT_RECVDONE
- with the given action
.Fa action
and argument
.Fa arg
gets posted to the event queue of task
.Fa task .
When
.Fa minimum
is non-zero, the completion event will be posted
when at least that number of bytes have been read from the socket
.Fa sock .
If
.Fa minimum
is zero, the completion event is posted when the exact number of bytes
in
.Fa region
or
.Fa buflist
have been read.
This only makes sense for TCP sockets where there is a reasonable guarantee
that a predictable number of bytes can be received.
For UDP sockets,
.Fa minimum
is always set to 1.
The read completes when the requested number of bytes have been
received or if either an error or end of input occurs.
Buffers or regions passed to
.Fn isc_socket_recv
or
.Fn isc_socket_recvv
or any data they refer to
should not be modified by the caller until the completion event has
been received.
When a successful call to
.Fn isc_socket_recvv
completes,
.Fa *buflist
will be empty.
The list of buffers that store the data which has been read are
returned in the done event's
.Dv bufferlist .
.Fa *buflist is unchanged if
.Fn isc_socket_recvv
returns an error.
.Pp
A number of assertion checks are performed by
.Fn isc_socket_recv
and
.Fn isc_socket_recvv .
For both functions,
.Fa sock
should be a valid socket and
.Fa task
should be a valid task.
.Fa action
has to be a valid action.
It must not be NULL.
.Fn isc_socket_recv
checks that
.Fa region
is a valid region.
.Fn isc_socket_recvv
demands that
.Fa buflist
is not NULL and that there is at least one buffer in
.Fa *buflist .
.Pp
The functions
.Fn isc_socket_send ,
.Fn isc_socket_sendto ,
.Fn isc_socket_sendv
and
.Fn isc_socket_sendtov
are used to send data to the peer for socket
.Fa sock .
The data to be sent are held in either the region
.Fa region
or in multiple buffers referenced through
.Fa buflist .
The contents of the
.Fa region
and
.Fa buflist
structures and their underlying buffers must not be modified by the
caller until the completion event has been received.
A send done event
.Dv ISC_SOCKEVENT_SENDDONE
with action
.Fa action
and argument
.Fa arg
is quueued for task
.Fa task
when the data have been sent.
If
.Fa action
is NULL, no completion event is posted.
.Pp
For
.Fn isc_socket_sendto
and
.Fn isc_socket_sendtov ,
.Fa address
is a pointer to the
.Dv "struct isc_sockaddr"
containing the destination address.
If
.Fa sock
is an IPv6 socket (protocol family
.Dv PF_INET6 )
.Fa pktinfo
is a pointer to the packet info structure
.Dv "struct in6_pktinfo"
for the socket.
.Pp
When
.Fn isc_socket_sendv
or
.Fn isc_socket_sendtov
complete successfully,
.Fa *buflist
will be empty.
The done event's
.Dv bufferlist
will contain the list of the buffers that were used.
.Fa *buflist
is not altered if an error occurs in
.Fn isc_socket_sendv
or
.Fn isc_socket_sendtov .
.Pp
These functions perform a number of assertion checks.
.Fa task
has to be a valid task and
.Fa sock
must be a valid, bound socket.
\fBCONFIRM THIS! Recall recent discussion/bug report about OSes that
don't allow sending data on unnamed sockets - JR\fP
.Fa action
must be either NULL or a valid action.
.Fn isc_socket_send
and
.Fn isc_socket_sendto
insist that
.Fa region
is a valid region.
.Fn isc_socket_sendv
and
.Fn isc_socket_sendtov
check that
.Fa buflist
is non-NULL and that there is at least one buffer in
.Fa *buflist .
.Pp
.Fn isc_socket_send
is a trivial "wrapper" function to
.Fn isc_socket_sendto
while
.Fn isc_socket_sendv
offers a similar service for calls to
.Fn isc_socket_sendtov .
If a task is shut down while it has any writes pending, the outcome is
system-dependent.
Data that has not yet been sent may be discarded or successfully written
to the socket's peer.
.Pp
.Fn isc_socket_bind
associates a name with socket
.Fa sock .
The name that is bound to the socket is given by
.Fa *addressp .
.Pp
To put a socket into listen mode,
.Fn isc_socket_listen
is called.
.Fa sock
must be a valid socket.
Once the socket
.Fa sock
is in listen mode, it can only be used in calls to
.Fn isc_socket_accept ,
.Fn isc_socket_attach
and
.Fn isc_socket_detach .
.Fa backlog
has the usual meaning for the
.Xr listen 2
system call in
.Ux .
It specifies the maximum number of pending connections that can be
queued waiting for the application to
.Xr accept 2
them.
If
.Fa backlog
is zero, a reasonable system default is used, typically
.Dv SOMAXCONN .
The value of
.Fa backlog
may be ignored on other operating systems.
.Pp
.Fn isc_socket_accept
is used to queue an accept event when an incoming connection request
is made.
Task
.Fa task
gets a
.Dv ISC_SOCKEVENT_NEWCONN
event with the sender set to socket
.Fa sock
which was previously put into listen mode by
.Fn isc_socket_listen .
The new socket structure is attached to task
.Fa task
It is made available through the
.Dv isc_socket_newconnev_t
event type.
The function has assertion checks to ensure that
.Fa sock
is a valid socket and is in listen mode.
.Pp
.Fn isc_socket_connect
connects socket
.Fa sock
to the peer with address
.Fa addr .
When the connection completes - either on success or if an error
occurs - a
.Dv ISC_SOCKEVENT_CONNECT
event with action
.Fa action
and argument
.Fa arg is posted to the event queue for task
.Fa task .
The function's assertion checks ensure that
.Fa sock
is a valid TCP socket and
.Fa addressp
points to a valid
.Dv "struct isc_sockaddr" .
The checks also make sure that
.Fa task
and
.Fa action
are valid tasks and actions respectively.
.Pp
.Fn isc_socket_getpeername
returns the name of the peer connected to socket
.Fa sock .
and copies it to
.Fa addressp .
.Fn isc_socket_getsockname
gets the name of socket
.Fa sock
and copies it to
.Fa addressp .
Both functions have assertion checks to ensure that
.Fa sock
is a valid socket
and that
.Fa *addressp
is not NULL.
.Pp
Socket events that hav been queued for some task can be cancelled using
.Fn isc_socket_cancel .
.Fa sock
and
.Fa task
are a valid socket and task pointers respectively.
.Fa how
is a bitmask of the events that are to be cancelled.
Possible values for
.Fa how
are any combination of
.Dv ISC_SOCKCANCEL_RECV ,
.Dv ISC_SOCKCANCEL_SEND ,
.Dv ISC_SOCKCANCEL_ACCEPT
and
.Dv ISC_SOCKCANCEL_CONNECT .
When the events are cancelled,
.Fn isc_socket_cancel
attempts to remove it from the task's queue.
If this fails, the event is marked as cancelled and the task
is expected to clean it up later.
A done event with status
.Dv ISC_R_CANCELED
is posted for each cancelled event and any necessary state information
is reset.
.Pp
.Fn isc_socket_recvmark
and
.Fn isc_socket_sendmark
insert a receive or send marker for socket
.Fa sock .
The marker gets processed when all I/O requests in the the task
.Fa task 's
queue have been processed.
If that queue is empty, the event is posted immediately to that task.
Both functions check that
.Fa sock ,
.Fa task
and
.Fa action
are a valid socket, task and action respectively.
.Pp
When the event handler returns, its
.Dv result
member can sometimes contain useful information.
Depending on the marker type, the event's
.Dv result member
will contain the same error that the last
.Fn isc_socket_recv ,
.Fn isc_socket_send
.Fn isc_socket_sendto
if the mark was processed after a fatal error.
.Pp
.Fn isc_socket_gettype
returns the type of socket - UDP or TCP - for
.Fa sock ,
which must be a valid socket.
.Fn isc_socket_isbound
returns
.Er ISC_TRUE
or
.Er ISC_FALSE
depending on whether the socket
.Fa sock
has been bound to a name or not: in other words if
.Fn isc_socket_bind
has been successfully invoked on the socket.
.Sh RETURN VALUES
A successful call to
.Fn isc_socket_create
returns
.Er ISC_R_SUCCESS .
.Er ISC_R_NORESOURCES
if the operating system was unable to allocate resources for the
socket: typically buffers or file descriptors.
If the
.Fn isc_socket_create
is unable to allocate memory for the socket,
.Er ISC_R_NOMEMORY
is returned.
Unexpected errors - for instance when setting options on the new
socket - return
.Er ISC_R_UNEXPECTED .
.Pp
.Fn isc_socketmgr_create
returns
.Er ISC_R_SUCCESS
on success.
The function returns
.Er ISC_R_NOMEMORY
if the BIND9 library was unable to allocate memory for the socket
manager structure.
.Er ISC_R_UNEXPECTED
is returned if it was not possible to initialise the
.Dv "struct isc_socketmgr" .
.Pp
Successful calls to
.Fn isc_socket_recv
and
.Fn isc_socket_recvv
return
.Er ISC_R_SUCCESS .
They return
.Er ISC_R_NOMEMORY
if it was not possible to allocate memory for a
socket event handler.
The handler that is invoked for
the
.Dv ISC_SOCKEVENT_RECVDONE
when the socket read
completes will return
.Er ISC_R_SUCCESS
on success or
.Er ISC_R_UNEXPECTED
if it encounters an error.
.Pp
The functions
.Fn isc_socket_sendto ,
.Fn isc_socket_sendtov ,
.Fn isc_socket_send
and
.Fn isc_socket_sendv
all return
.Er ISC_R_SUCCESS
on success.
If these four functions are unable to allocate memory when setting up
an event handler, they return
.Er ISC_R_NOMEMORY .
The event handler that is invoked when a
.Dv ISC_SOCKEVENT_SENDDONE
event is posted when socket write
completes returns
.Er ISC_R_SUCCESS
on success.
It returns
.Er ISC_R_UNEXPECTED
if an error occurs.
.Pp
Successful calls to
.Fn isc_socket_bind
return
.Er ISC_R_SUCCESS .
The function returns
.Er ISC_R_NOPERM
if the requested address needs a privileged port, and the current user
does no have sufficient permission to access it.
.Er ISC_R_ADDRNOTAVAIL
is returned if the specified address is not available.
.Fn isc_socket_bind
returns
.Er ISC_R_ADDRINUSE
if the address is already in use and
.Er ISC_R_BOUND
if
.Fa sock had already been bound to an address.
.Er ISC_R_UNEXPECTED
is returned for any other error conditions that are reported by
.Xr bind 2
and an error message printed on
.Dv stderr .
.Pp
.Fn isc_socket_listen
returns
.Er ISC_R_SUCCESS
on success.
.Er ISC_R_UNEXPECTED
is returned and an error message printed on
.Dv stderr
if the
.Xr listen 2
system call fails.
.Pp
.Er ISC_R_NOMEMORY
is returned by
.Fn isc_socket_accept
if it was unable to allocate memory for the new socket or the event
handler.
.Er ISC_R_SUCCESS
is returned on success.
.Pp
.Fn isc_socket_connect
returns
.Er ISC_R_NOMEMORY
if there was a memory allocation problem
or
.Er ISC_R_UNEXPECTED
if the call to
.Xr connect 2
fails.
.Er ISC_R_SUCCESS
is returned otherwise.
The event handler returns
.Er ISC_R_SUCCESS
when the connection attempt completes successfully.
It returns
.Er ISC_R_TIMEDOUT
when the connection attempt times out or
.Er ISC_R_CONNREFUSED
if the peer
.Fa addr
refused the connection.
An error of
.Er ISC_R_NETUNREACH
if the peer's network isn't reachable.
Other error conditions from
.Xr connect 2
return
.Er ISC_R_UNEXPECTED .
.Pp
If the socket
.Fa sock
is connected,
.Fa isc_socket_getpeername
returns
.Er ISC_R_SUCCESS
and
.Er ISC_R_NOTCONNECTED
otherwise.
.Fn isc_socket_getsockname
normally returns
.Er ISC_R_SUCCESS.
It returns
.Er ISC_R_NOTBOUND
if
.Fa sock
is not bound.
.Er ISC_R_UNEXPECTED
is returned and an error message logged on
.Dv stderr
if
.Xr getsockname 2
failed
.Pp
.Fn isc_socket_recvmark
and
.Fn isc_socket_sendmark
always return
.Er ISC_R_SUCCESS
unless they were unable to set up an event handler, in which case they
return
.Er ISC_R_NOMEMORY .
.Sh SEE ALSO
.Xr socket 2 ,
.Xr readv 2
.Xr recv 2 ,
.Xr writev 2 ,
.Xr send 2 ,
.Xr sendto 2 ,
.Xr bind 2 ,
.Xr listen 2 ,
.Xr accept 2 ,
.Xr connect 2 ,
.Xr getpeername 2 ,
.Xr getsockname 2 .

View File

@ -1,18 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc_socket_accept.3,v 1.5 2001/01/09 21:48:02 bwelling Exp $
.so isc_socket.3

View File

@ -1,18 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc_socket_attach.3,v 1.5 2001/01/09 21:48:04 bwelling Exp $
.so isc_socket.3

View File

@ -1,18 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc_socket_bind.3,v 1.5 2001/01/09 21:48:05 bwelling Exp $
.so isc_socket.3

View File

@ -1,18 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc_socket_cancel.3,v 1.5 2001/01/09 21:48:06 bwelling Exp $
.so isc_socket.3

View File

@ -1,18 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc_socket_connect.3,v 1.5 2001/01/09 21:48:07 bwelling Exp $
.so isc_socket.3

View File

@ -1,18 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc_socket_create.3,v 1.5 2001/01/09 21:48:08 bwelling Exp $
.so isc_socket.3

View File

@ -1,18 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc_socket_detach.3,v 1.5 2001/01/09 21:48:09 bwelling Exp $
.so isc_socket.3

View File

@ -1,18 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc_socket_getpeername.3,v 1.5 2001/01/09 21:48:10 bwelling Exp $
.so isc_socket.3

View File

@ -1,18 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc_socket_getsockname.3,v 1.5 2001/01/09 21:48:11 bwelling Exp $
.so isc_socket.3

View File

@ -1,18 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc_socket_gettype.3,v 1.5 2001/01/09 21:48:12 bwelling Exp $
.so isc_socket.3

View File

@ -1,18 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc_socket_isbound.3,v 1.5 2001/01/09 21:48:13 bwelling Exp $
.so isc_socket.3

View File

@ -1,18 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc_socket_listen.3,v 1.5 2001/01/09 21:48:14 bwelling Exp $
.so isc_socket.3

View File

@ -1,18 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc_socket_recv.3,v 1.5 2001/01/09 21:48:16 bwelling Exp $
.so isc_socket.3

View File

@ -1,18 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc_socket_recvmark.3,v 1.5 2001/01/09 21:48:17 bwelling Exp $
.so isc_socket.3

View File

@ -1,18 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc_socket_recvv.3,v 1.5 2001/01/09 21:48:18 bwelling Exp $
.so isc_socket.3

View File

@ -1,18 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc_socket_send.3,v 1.5 2001/01/09 21:48:19 bwelling Exp $
.so isc_socket.3

View File

@ -1,18 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc_socket_sendmark.3,v 1.5 2001/01/09 21:48:20 bwelling Exp $
.so isc_socket.3

View File

@ -1,18 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc_socket_sendto.3,v 1.5 2001/01/09 21:48:21 bwelling Exp $
.so isc_socket.3

View File

@ -1,18 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc_socket_sendtov.3,v 1.5 2001/01/09 21:48:22 bwelling Exp $
.so isc_socket.3

View File

@ -1,18 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc_socket_sendv.3,v 1.5 2001/01/09 21:48:23 bwelling Exp $
.so isc_socket.3

View File

@ -1,18 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc_socketmgr_create.3,v 1.5 2001/01/09 21:48:24 bwelling Exp $
.so isc_socket.3

View File

@ -1,18 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc_socketmgr_destroy.3,v 1.5 2001/01/09 21:48:25 bwelling Exp $
.so isc_socket.3

View File

@ -1,192 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc_stdio.3,v 1.5 2001/01/09 21:48:26 bwelling Exp $
.Dd Jun 30, 2000
.Dt ISC_STDIO 3
.Os BIND9 9
.ds vT BIND9 Programmer's Manual
.Sh NAME
.Nm isc_stdio_open ,
.Nm isc_stdio_close ,
.Nm isc_stdio_seek ,
.Nm isc_stdio_read ,
.Nm isc_stdio_write ,
.Nm isc_stdio_flush ,
.Nm isc_stdio_sync
.Nd BIND9 interface to stdio functions
.Sh SYNOPSIS
.Fd #include <config.h>
.Fd #include <errno.h>
.Fd #include <unistd.h>
.Fd #include <isc/stdio.h>
.Fd #include \*qerrno2result.h\*q
.Ft isc_result_t
.Fo isc_stdio_open
.Fa "const char *filename"
.Fa "const char *mode"
.Fa "FILE **fp"
.Fc
.Ft isc_result_t
.Fo isc_stdio_close
.Fa "FILE *f"
.Fc
.Ft isc_result_t
.Fo isc_stdio_seek
.Fa "FILE *f"
.Fa "long offset"
.Fa "int whence"
.Fc
.Ft isc_result_t
.Fo isc_stdio_read
.Fa "void *ptr"
.Fa "size_t size"
.Fa "size_t nmemb"
.Fa "FILE *f"
.Fa "size_t *nret"
.Fc
.Ft isc_result_t
.Fo isc_stdio_write
.Fa "void *ptr"
.Fa "size_t size"
.Fa "size_t nmemb"
.Fa "FILE *f"
.Fa "size_t *nret"
.Fc
.Ft isc_result_t
.Fo isc_stdio_flush
.Fa "FILE *f"
.Fc
.Ft isc_result_t
.Fo isc_stdio_sync
.Fa "FILE *f"
.Fc
.Sh DESCRIPTION
The BIND9 library uses the following routines for standard I/O
operations.
These functions call their equivalents in the operating system's stdio
library.
.Pp
.Fn isc_stdio_open
opens the file
.Fa filename
with access mode
.Fa mode .
The string
.Fa mode
should correspond to the
.Fa mode
parameter in
.Xr fopen 3 .
If the file open succeeds,
.Fa fp
contains a pointer to the pointer to the relevant stdio
.Dv FILE
structure.
Files get closed by calling
.Fn isc_stdio_close .
.Fa fp
should be a pointer to the
.DV FILE
structure that was returned by an earlier call to
.Fn isc_stdio_open .
.Pp
The file position indicator for a stdio stream is adjusted with
.Fn isc_stdio_seek .
.Fa f
is the
.Dv FILE
pointer and
.Fa offset
and
.Fa whence
have the usual meanings.
The new position is found by adding
.Fa offset
bytes to the position specified by
.Fa whence
which is set to the values
.Dv SEEK_SET ,
.Dv SEEK_CUR ,
or
.Dv SEEK_END .
These values indicate the new position is calculated relative to the start
of the file, the current position indicator, or end of file
respectively.
.Pp
Reading and writing on a stdio stream is performed using
.Fn isc_stdio_read
and
.Fn isc_stdio_write
respectively.
The function
.Fn isc_stdio_read
reads reads
.Fa nmemb
objects, each
.Fa size
bytes long, from the stream pointed to by
.Fa f .
The objects are stored at the location given by
.Fa ptr .
.Fa isc_stdio_write
writes
.Fa nmemb
objects, each
.Fa size
bytes long, from location
.Fa ptr
to the stream
.Fa f .
The number of objects written is returned via
.Fa nret .
If this is less than
.Fa nmemb ,
some type of write error occurred.
.Pp
A
.Xr write 2
of buffered data associated with the output
.Fa f
can be forced with
.Fn isc_stdio_flush .
This data can be committed to permanent storage by
.Fn isc_stdio_sync
which will invoke
.Xr fsync 2 .
.Sh RETURN VALUES
Successful calls to all these functions return
.Er ISC_R_SUCCESS .
If the calls fail, the error code returned by the operating system is
mapped to the appropriate BIND9 error code by calling
.Xr isc__errno2result 3 .
.Fn isc_stdio_read
returns
.Er ISC_R_EOF
at end of file.
.Sh SEE ALSO
.Xr stdio 3 ,
.Xr fopen 3 ,
.Xr fclose 3 ,
.Xr fread 3 ,
.Xr fwrite 3 ,
.Xr fflush 3 ,
.Xr fsync 2 ,
.Xr isc__errno2result 3 .

View File

@ -1,18 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc_stdio_close.3,v 1.5 2001/01/09 21:48:28 bwelling Exp $
.so isc_stdio.3

View File

@ -1,18 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc_stdio_flush.3,v 1.5 2001/01/09 21:48:29 bwelling Exp $
.so isc_stdio.3

View File

@ -1,18 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc_stdio_open.3,v 1.5 2001/01/09 21:48:30 bwelling Exp $
.so isc_stdio.3

View File

@ -1,18 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc_stdio_read.3,v 1.5 2001/01/09 21:48:31 bwelling Exp $
.so isc_stdio.3

View File

@ -1,18 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc_stdio_seek.3,v 1.5 2001/01/09 21:48:32 bwelling Exp $
.so isc_stdio.3

View File

@ -1,18 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc_stdio_sync.3,v 1.5 2001/01/09 21:48:33 bwelling Exp $
.so isc_stdio.3

View File

@ -1,18 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc_stdio_write.3,v 1.5 2001/01/09 21:48:34 bwelling Exp $
.so isc_stdio.3

View File

@ -1,61 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc_stdtime.3,v 1.5 2001/01/09 21:48:35 bwelling Exp $
.Dd Jun 30, 2000
.Dt ISC_STDTIME 3
.Os BIND9 9
.ds vT BIND9 Programmer's Manual
.Sh NAME
.Nm isc_stdtime_get
.Nd get the current date and time
.Sh SYNOPSIS
.Fd #include <config.h>
.Fd #include <sys/time.h>
.Fd #include <isc/stdtime.h>
.Fd #include <isc/util.h>
.Ft void
.Fo isc_stdtime_get
.Fa "isc_stdtime_t *t"
.Fc
.Sh DESCRIPTION
.Fn isc_stdtime_get
sets
.Fa t
to the number of seconds since the UNIX epoch, 00:00:00 UTC, January
1, 1970.
.Sh SEE ALSO
.Xr gettimeofday 2 ,
.Xr isc_time_now 3 .
.Sh BUGS
A time synchronisation protocol such as NTP is needed to ensure that
the kernel's concept of the current time is accurate.
.Pp
At 03:14:08 GMT on Tue Jan 19 2038, the number of seconds since
the UNIX epoch will overflow a 32-bit signed integer.
This may cause unpredictable behaviour on systems which treat these
timestamps as 32-bit signed quantities.
.Dv isc_stdtime_t
is defined as a 32-bit unsigned quantity, which means
.Fn isc_stdtime_get
should be safe until some time in 2106.
Applications that
want maximum portability should not assume anything about the size
of a
.Dv isc_stdtime_t .

View File

@ -1,18 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc_stdtime_get.3,v 1.5 2001/01/09 21:48:36 bwelling Exp $
.so isc_stdtime.3

View File

@ -1,348 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc_time.3,v 1.7 2001/01/09 21:48:38 bwelling Exp $
.Dd Jun 30, 2000
.Dt ISC_TIME 3
.Os BIND9 9
.ds vT BIND9 Programmer's Manual
.Sh NAME
.Nm isc_interval_iszero ,
.Nm isc_time_set ,
.Nm isc_time_settoepoch ,
.Nm isc_time_isepoch ,
.Nm isc_time_now ,
.Nm isc_time_nowplusinterval ,
.Nm isc_time_compare ,
.Nm isc_time_add ,
.Nm isc_time_subtract ,
.Nm isc_time_microdiff ,
.Nm isc_time_seconds ,
.Nm isc_time_secondsastimet ,
.Nm isc_time_nanoseconds
.Nd time-related operations
.Sh SYNOPSIS
.Fd #include <config.h>
.Fd #include <errno.h>
.Fd #include <limits.h>
.Fd #include <time.h>
.Fd #include <sys/time.h>
.Fd #include <isc/string.h>
.Fd #include <isc/time.h>
.Fd #include <isc/util.h>
.Ft void
.Fo "isc_interval_set"
.Fa "isc_interval_t *i"
.Fa "unsigned int seconds"
.Fa "unsigned int nanoseconds"
.Fc
.Ft isc_boolean_t
.Fo isc_interval_iszero
.Fa "isc_interval_t *"
.Fc
.Ft void
.Fo isc_time_set
.Fa "isc_time_t *t"
.Fa "unsigned int seconds"
.Fa "unsigned int nanoseconds"
.Fc
.Ft void
.Fo isc_time_settoepoch
.Fa "isc_time_t *t"
.Fc
.Ft isc_boolean_t
.Fo isc_time_isepoch
.Fa "isc_time_t *t"
.Fc
.Ft isc_result_t
.Fo isc_time_now
.Fa "isc_time_t *t"
.Fc
.Ft isc_result_t
.Fo isc_time_nowplusinterval
.Fa "isc_time_t *t"
.Fa "isc_interval_t *i"
.Fc
.Ft int
.Fo isc_time_compare
.Fa "isc_time_t *t1"
.Fa "isc_time_t *t2"
.Fc
.Ft isc_result_t
.Fo isc_time_add
.Fa "isc_time_t *t"
.Fa "isc_interval_t *i"
.Fa "isc_time_t *result"
.Fc
.Ft isc_result_t
.Fo isc_time_subtract
.Fa "isc_time_t *t"
.Fa "isc_interval_t *i"
.Fa "isc_time_t *result"
.Fc
.Ft isc_uint64_t
.Fo isc_time_microdiff
.Fa "isc_time_t *t1"
.Fa "isc_time_t *t2"
.Fc
.Ft isc_uint32_t
.Fo isc_time_seconds
.Fa "isc_time_t *t"
.Fc
.Ft isc_result_t
.Fo isc_time_secondsastimet
.Fa "isc_time_t *t"
.Fa "time_t *secondsp"
.Fc
.Ft isc_uint32_t
.Fo isc_time_nanoseconds
.Fa "isc_time_t *t"
.Fc
.Sh DESCRIPTION
These functions are used by the name server for any time-related activities.
They operate on the system's struct
.Dv time_t
and two local data structures:
.Bd -literal -offset indent
struct isc_interval {
unsigned int seconds;
unsigned int nanoseconds;
};
typedef struct isc_interval isc_interval_t;
.Ed
.Bd -literal -offset indent
struct isc_time {
unsigned int seconds;
unsigned int nanoseconds;
};
typedef struct isc_time isc_time_t;
.Ed
The contents of these structures are private
and MUST NOT be accessed by callers directly.
Details have only been provided so that callers can avoid
dynamic allocation.
The elements of these structures should only be manipulated via the
following functions.
.Pp
The function
.Fn isc_interval_set
initialises the
.Dv isc_interval_t
pointed at by
.Fa *i .
The elements
.Dv seconds
and
.Dv nanoseconds
are set to the values of
.Fa seconds
and
.Fa nanoseconds
respectively.
.Pp
.Fn isc_interval_iszero
returns
.Er ISC_TRUE
if
.Fa *i
is the zero interval.
This condition should hold when the desired amount of time until an
event associated with interval
.Fa *i
has elapsed.
.Pp
.Fn isc_time_settoepoch
sets
.Fa *t
to the time of the epoch.
On
.Ux
systems this is 0 hours, 0 minutes, 0 seconds, January 1, 1970 UTC.
.Pp
The function
.Fn isc_time_isepoch
returns
.Er ISC_TRUE
if the time in
.Fa *t
is equal to the epoch time: "time zero".
It returns
.Er ISC_FALSE
otherwise.
.Pp
The current absolute time of day is obtained from
.Fn isc_time_now .
On a successful call to this function, the structure pointed at by
.Fa *t
is set to the number of seconds and nanoseconds since the epoch.
.Pp
.Fn isc_time_nowplusinterval
sets
.Fa *t
to the current time plus the interval specified in
.Fa *i .
.Pp
.Fn isc_time_compare
compares the times referenced by
.Fa *t1
and
.Fa *t2 .
It returns 0 if the two times are equal.
A value of 1 is returned when
.Fa *t1
is greater than
.Fa *t2 .
If
.Fa *t1
is less than
.Fa *t2
.Fn isc_time_compare
returns -1.
.Pp
The function
.Fn isc_time_add
adds
.Fa *i
to
.Fa *t
and
.Fa *result .
The converse operation is performed by
.Fa isc_time_subtract .
It subtracts
.Fa *i
from
.Fa *t
and stores the result in
.Fa result .
.Pp
.Fn isc_time_microdiff
returns the number of difference in microseconds between
.Fa *t1
and
.Fa *t2.
Zero is returned if the time represented by
.Fa *t1
is less than that given by
.Fa t2 .
.Pp
.Fn isc_time_seconds
and
.Fn isc_time_nanoseconds
return the number of seconds and nanoseconds respectively
in the time indicated by
.Fa *t .
.Pp
The function
.Fn isc_time_secondsastimet
converts the time value represented by
.Fa *t
to the system's
.Dv time_t
struct pointed at by
.Fa *secondsp .
It takes great care to ensure that the number of seconds represented
by
.Dv t->seconds
can be represented by a
.Dv time_t .
This is not as straightforward as it might seem because a
.Dv time_t
might not be an integral type.
Implementations may treat this type as a signed or unsigned quantity
which potentially creates sign extension problems.
.Sh RETURN VALUES
.Fn isc_time_now
and
.Fn isc_time_nowplusinterval
return
.Er ISC_R_UNEXPECTED
if they are unable to get the time of day or if the operating system returns
nonsense.
They return
.Er ISC_R_RANGE
if the number of seconds returned by the operating system is too big
to fit in a
.Dv "unsigned int" .
A result of
.Er ISC_R_SUCCESS
is returned when the functions are successful.
.Pp
Calls to
.Fn isc_time_add ,
.Fn isc_time_subtract
and
.Fn isc_time_secondsastimet
normally return
.Er ISC_R_SUCCESS .
.Fn isc_time_add
returns
.Er ISC_R_RANGE
if the addition of the time values represented by
.Fa t
and
.Fa i
result in a number of seconds that are too big to fit in a
.Dv "unsigned int"
quantity.
If the time value given by
.Fa i
is less than that in
.Fa t ,
.Er ISC_R_RANGE
is returned by
.Fn isc_time_subtract .
.Er ISC_R_RANGE
is returned by
.Fn isc_time_secondsastimet
when the number of seconds represented by
.Dv t->seconds
cannot be represented by the operating system's
.Dv time_t
type.
.Sh SEE ALSO
.Xr gettimeofday 2 ,
.Xr getitimer 2 ,
.Xr ctime 3
.Sh BUGS
Nanosecond and microsecond resolution time values are notoriously
inaccurate on most
.Ux
systems because few, if any, of them have
hardware or software which provides that level of precision.
Consult the vendor's documentation.
The resolution of the real-time clock in most systems is typically
100Hz which means the finest granularity of time-related activity is
at most 0.01 seconds.
Scheduling latency and process or thread context switching can also
delay the processing of real-time events.
For most DNS activity such as decrementing TTLs or zone refreshes,
this loss of accuracy is not significant.
.Pp
The accuracy of absolute times returned by
.Fn isc_time_now
and
.Fn isc_time_nowplusinterval
depend on the reliability of the system's time of day clock.
This should be synchronised to UTC using an external time source using
a good timekeeping protocol such as NTP.
Pedants might want to worry about whether the absolute time includes
leap seconds or not.

View File

@ -1,18 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc_time_add.3,v 1.5 2001/01/09 21:48:39 bwelling Exp $
.so isc_time.3

View File

@ -1,18 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc_time_compare.3,v 1.5 2001/01/09 21:48:40 bwelling Exp $
.so isc_time.3

View File

@ -1,18 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc_time_isepoch.3,v 1.5 2001/01/09 21:48:41 bwelling Exp $
.so isc_time.3

View File

@ -1,18 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc_time_microdiff.3,v 1.5 2001/01/09 21:48:42 bwelling Exp $
.so isc_time.3

View File

@ -1,18 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc_time_nanoseconds.3,v 1.5 2001/01/09 21:48:43 bwelling Exp $
.so isc_time.3

View File

@ -1,18 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc_time_now.3,v 1.5 2001/01/09 21:48:44 bwelling Exp $
.so isc_time.3

View File

@ -1,18 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc_time_nowplusinterval.3,v 1.5 2001/01/09 21:48:45 bwelling Exp $
.so isc_time.3

View File

@ -1,18 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc_time_seconds.3,v 1.5 2001/01/09 21:48:46 bwelling Exp $
.so isc_time.3

View File

@ -1,18 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc_time_secondsastimet.3,v 1.5 2001/01/09 21:48:47 bwelling Exp $
.so isc_time.3

View File

@ -1,18 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc_time_set.3,v 1.5 2001/01/09 21:48:48 bwelling Exp $
.so isc_time.3

View File

@ -1,18 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc_time_settoepoch.3,v 1.5 2001/01/09 21:48:50 bwelling Exp $
.so isc_time.3

View File

@ -1,18 +0,0 @@
.\" Copyright (C) 2000, 2001 Internet Software Consortium.
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM
.\" DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
.\" INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\" $Id: isc_time_subtract.3,v 1.5 2001/01/09 21:48:51 bwelling Exp $
.so isc_time.3