* PERFORMANCE OF THIS SOFTWARE.
*/
-/* $Id: socket.h,v 1.97 2011/07/28 23:47:59 tbox Exp $ */
+/* $Id: socket.h,v 1.98 2011/08/24 23:17:52 marka Exp $ */
#ifndef ISC_SOCKET_H
#define ISC_SOCKET_H 1
isc_result_t (*fdwatchpoke)(isc_socket_t *sock, int flags);
isc_result_t (*dup)(isc_socket_t *socket,
isc_socket_t **socketp);
+ int (*getfd)(isc_socket_t *socket);
} isc_socketmethods_t;
/*%
* PERFORMANCE OF THIS SOFTWARE.
*/
-/* $Id: socket_api.c,v 1.7 2011/07/28 23:47:59 tbox Exp $ */
+/* $Id: socket_api.c,v 1.8 2011/08/24 23:17:52 marka Exp $ */
#include <config.h>
return(sock->methods->dup(sock, socketp));
}
+
+int
+isc_socket_getfd(isc_socket_t *sock) {
+ REQUIRE(ISCAPI_SOCKET_VALID(sock));
+
+ return(sock->methods->getfd(sock));
+}
* PERFORMANCE OF THIS SOFTWARE.
*/
-/* $Id: socket.c,v 1.345 2011/08/23 17:02:53 each Exp $ */
+/* $Id: socket.c,v 1.346 2011/08/24 23:17:52 marka Exp $ */
/*! \file */
isc__socket_fdwatchpoke(isc_socket_t *sock, int flags);
ISC_SOCKETFUNC_SCOPE isc_result_t
isc__socket_dup(isc_socket_t *sock, isc_socket_t **socketp);
+ISC_SOCKETFUNC_SCOPE int
+isc__socket_getfd(isc_socket_t *sock);
static struct {
isc_socketmethods_t methods;
isc__socket_gettype,
isc__socket_ipv6only,
isc__socket_fdwatchpoke,
- isc__socket_dup
+ isc__socket_dup,
+ isc__socket_getfd
}
#ifndef BIND9
,