/
usr
/
include
/
isc
/
/usr/include/isc
mkdir
upload
Name
Size
Mode
Actions
app.h
10535
0644
edit
dl
rm
assertions.h
3314
0644
edit
dl
rm
atomic.h
4258
0644
edit
dl
rm
base64.h
2967
0644
edit
dl
rm
bind9.h
1185
0644
edit
dl
rm
bitstring.h
4478
0644
edit
dl
rm
boolean.h
1212
0644
edit
dl
rm
buffer.h
22941
0644
edit
dl
rm
bufferlist.h
1979
0644
edit
dl
rm
commandline.h
1823
0644
edit
dl
rm
condition.h
2011
0644
edit
dl
rm
counter.h
2328
0644
edit
dl
rm
dir.h
2569
0644
edit
dl
rm
entropy.h
9444
0644
edit
dl
rm
error.h
1871
0644
edit
dl
rm
event.h
3360
0644
edit
dl
rm
eventclass.h
1915
0644
edit
dl
rm
file.h
9259
0644
edit
dl
rm
formatcheck.h
1423
0644
edit
dl
rm
fsaccess.h
7954
0644
edit
dl
rm
hash.h
5973
0644
edit
dl
rm
heap.h
5754
0644
edit
dl
rm
hex.h
2911
0644
edit
dl
rm
hmacmd5.h
1964
0644
edit
dl
rm
httpd.h
2029
0644
edit
dl
rm
int.h
1873
0644
edit
dl
rm
interfaceiter.h
3631
0644
edit
dl
rm
iterated_hash.h
1512
0644
edit
dl
rm
keyboard.h
1510
0644
edit
dl
rm
lang.h
1158
0644
edit
dl
rm
lex.h
9653
0644
edit
dl
rm
lfsr.h
3480
0644
edit
dl
rm
lib.h
1594
0644
edit
dl
rm
list.h
5887
0644
edit
dl
rm
log.h
28964
0644
edit
dl
rm
magic.h
1471
0644
edit
dl
rm
md5.h
2527
0644
edit
dl
rm
mem.h
21767
0644
edit
dl
rm
msgcat.h
3256
0644
edit
dl
rm
msgs.h
8862
0644
edit
dl
rm
mutex.h
4061
0644
edit
dl
rm
mutexblock.h
1902
0644
edit
dl
rm
namespace.h
7184
0644
edit
dl
rm
net.h
9269
0644
edit
dl
rm
netaddr.h
4917
0644
edit
dl
rm
netdb.h
1392
0644
edit
dl
rm
offset.h
1898
0644
edit
dl
rm
once.h
1510
0644
edit
dl
rm
ondestroy.h
3327
0644
edit
dl
rm
os.h
1191
0644
edit
dl
rm
parseint.h
2058
0644
edit
dl
rm
platform.h
8623
0644
edit
dl
rm
print.h
2449
0644
edit
dl
rm
quota.h
2873
0644
edit
dl
rm
radix.h
7058
0644
edit
dl
rm
random.h
1826
0644
edit
dl
rm
ratelimiter.h
3564
0644
edit
dl
rm
refcount.h
6203
0644
edit
dl
rm
region.h
2497
0644
edit
dl
rm
resource.h
3396
0644
edit
dl
rm
result.h
4814
0644
edit
dl
rm
resultclass.h
2077
0644
edit
dl
rm
rwlock.h
3843
0644
edit
dl
rm
serial.h
1959
0644
edit
dl
rm
sha1.h
1806
0644
edit
dl
rm
sha2.h
5861
0644
edit
dl
rm
sockaddr.h
6578
0644
edit
dl
rm
socket.h
32969
0644
edit
dl
rm
stdio.h
2243
0644
edit
dl
rm
stdlib.h
1221
0644
edit
dl
rm
stdtime.h
1880
0644
edit
dl
rm
string.h
6404
0644
edit
dl
rm
symtab.h
4748
0644
edit
dl
rm
syslog.h
1373
0644
edit
dl
rm
task.h
19753
0644
edit
dl
rm
taskpool.h
3787
0644
edit
dl
rm
thread.h
1878
0644
edit
dl
rm
time.h
8045
0644
edit
dl
rm
timer.h
11285
0644
edit
dl
rm
types.h
5929
0644
edit
dl
rm
util.h
7934
0644
edit
dl
rm
version.h
1207
0644
edit
dl
rm
xml.h
1556
0644
edit
dl
rm
Edit:
/usr/include/isc/interfaceiter.h
(3631B)
/* * Copyright (C) 2004-2007 Internet Systems Consortium, Inc. ("ISC") * Copyright (C) 1999-2001 Internet Software Consortium. * * Permission to use, copy, modify, and/or 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 ISC DISCLAIMS ALL WARRANTIES WITH * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY * AND FITNESS. IN NO EVENT SHALL ISC 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: interfaceiter.h,v 1.17 2007-06-19 23:47:18 tbox Exp $ */ #ifndef ISC_INTERFACEITER_H #define ISC_INTERFACEITER_H 1 /***** ***** Module Info *****/ /*! \file isc/interfaceiter.h * \brief Iterates over the list of network interfaces. * * Interfaces whose address family is not supported are ignored and never * returned by the iterator. Interfaces whose netmask, interface flags, * or similar cannot be obtained are also ignored, and the failure is logged. * * Standards: * The API for scanning varies greatly among operating systems. * This module attempts to hide the differences. */ /*** *** Imports ***/ #include <isc/lang.h> #include <isc/netaddr.h> #include <isc/types.h> /*! * \brief Public structure describing a network interface. */ struct isc_interface { char name[32]; /*%< Interface name, null-terminated. */ unsigned int af; /*%< Address family. */ isc_netaddr_t address; /*%< Local address. */ isc_netaddr_t netmask; /*%< Network mask. */ isc_netaddr_t dstaddress; /*%< Destination address (point-to-point only). */ isc_uint32_t flags; /*%< Flags; see INTERFACE flags. */ }; /*@{*/ /*! Interface flags. */ #define INTERFACE_F_UP 0x00000001U #define INTERFACE_F_POINTTOPOINT 0x00000002U #define INTERFACE_F_LOOPBACK 0x00000004U /*@}*/ /*** *** Functions ***/ ISC_LANG_BEGINDECLS isc_result_t isc_interfaceiter_create(isc_mem_t *mctx, isc_interfaceiter_t **iterp); /*!< * \brief Create an iterator for traversing the operating system's list * of network interfaces. * * Returns: *\li #ISC_R_SUCCESS * \li #ISC_R_NOMEMORY *\li Various network-related errors */ isc_result_t isc_interfaceiter_first(isc_interfaceiter_t *iter); /*!< * \brief Position the iterator on the first interface. * * Returns: *\li #ISC_R_SUCCESS Success. *\li #ISC_R_NOMORE There are no interfaces. */ isc_result_t isc_interfaceiter_current(isc_interfaceiter_t *iter, isc_interface_t *ifdata); /*!< * \brief Get information about the interface the iterator is currently * positioned at and store it at *ifdata. * * Requires: *\li The iterator has been successfully positioned using * isc_interface_iter_first() / isc_interface_iter_next(). * * Returns: *\li #ISC_R_SUCCESS Success. */ isc_result_t isc_interfaceiter_next(isc_interfaceiter_t *iter); /*!< * \brief Position the iterator on the next interface. * * Requires: * \li The iterator has been successfully positioned using * isc_interface_iter_first() / isc_interface_iter_next(). * * Returns: *\li #ISC_R_SUCCESS Success. *\li #ISC_R_NOMORE There are no more interfaces. */ void isc_interfaceiter_destroy(isc_interfaceiter_t **iterp); /*!< * \brief Destroy the iterator. */ ISC_LANG_ENDDECLS #endif /* ISC_INTERFACEITER_H */
Save
cmd:
run