1 /* 2 * Copyright (C) 1999-2001 Internet Software Consortium. 3 * 4 * Permission to use, copy, modify, and distribute this software for any 5 * purpose with or without fee is hereby granted, provided that the above 6 * copyright notice and this permission notice appear in all copies. 7 * 8 * THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM 9 * DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL 10 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL 11 * INTERNET SOFTWARE CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT, 12 * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING 13 * FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, 14 * NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION 15 * WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 16 */ 17 18 /* $Id: types.h,v 1.33 2002/07/19 03:39:44 marka Exp $ */ 19 20 #ifndef ISC_TYPES_H 21 #define ISC_TYPES_H 1 22 23 /* 24 * OS-specific types, from the OS-specific include directories. 25 */ 26 #include <isc/int.h> 27 #include <isc/offset.h> 28 29 /* 30 * XXXDCL should isc_boolean_t be moved here, requiring an explicit include 31 * of <isc/boolean.h> when ISC_TRUE/ISC_FALSE/ISC_TF() are desired? 32 */ 33 #include <isc/boolean.h> 34 /* 35 * XXXDCL This is just for ISC_LIST and ISC_LINK, but gets all of the other 36 * list macros too. 37 */ 38 #include <isc/list.h> 39 40 /*** 41 *** Core Types. Alphabetized by defined type. 42 ***/ 43 44 typedef struct isc_bitstring isc_bitstring_t; 45 typedef struct isc_buffer isc_buffer_t; 46 typedef ISC_LIST(isc_buffer_t) isc_bufferlist_t; 47 typedef struct isc_constregion isc_constregion_t; 48 typedef struct isc_consttextregion isc_consttextregion_t; 49 typedef struct isc_entropy isc_entropy_t; 50 typedef struct isc_entropysource isc_entropysource_t; 51 typedef struct isc_event isc_event_t; 52 typedef ISC_LIST(isc_event_t) isc_eventlist_t; 53 typedef unsigned int isc_eventtype_t; 54 typedef isc_uint32_t isc_fsaccess_t; 55 typedef struct isc_interface isc_interface_t; 56 typedef struct isc_interfaceiter isc_interfaceiter_t; 57 typedef struct isc_interval isc_interval_t; 58 typedef struct isc_lex isc_lex_t; 59 typedef struct isc_log isc_log_t; 60 typedef struct isc_logcategory isc_logcategory_t; 61 typedef struct isc_logconfig isc_logconfig_t; 62 typedef struct isc_logmodule isc_logmodule_t; 63 typedef struct isc_mem isc_mem_t; 64 typedef struct isc_mempool isc_mempool_t; 65 typedef struct isc_msgcat isc_msgcat_t; 66 typedef struct isc_ondestroy isc_ondestroy_t; 67 typedef struct isc_netaddr isc_netaddr_t; 68 typedef struct isc_quota isc_quota_t; 69 typedef struct isc_random isc_random_t; 70 typedef struct isc_ratelimiter isc_ratelimiter_t; 71 typedef struct isc_region isc_region_t; 72 typedef isc_uint64_t isc_resourcevalue_t; 73 typedef unsigned int isc_result_t; 74 typedef struct isc_rwlock isc_rwlock_t; 75 typedef struct isc_sockaddr isc_sockaddr_t; 76 typedef struct isc_socket isc_socket_t; 77 typedef struct isc_socketevent isc_socketevent_t; 78 typedef struct isc_socketmgr isc_socketmgr_t; 79 typedef struct isc_symtab isc_symtab_t; 80 typedef struct isc_task isc_task_t; 81 typedef ISC_LIST(isc_task_t) isc_tasklist_t; 82 typedef struct isc_taskmgr isc_taskmgr_t; 83 typedef struct isc_textregion isc_textregion_t; 84 typedef struct isc_time isc_time_t; 85 typedef struct isc_timer isc_timer_t; 86 typedef struct isc_timermgr isc_timermgr_t; 87 88 typedef void (*isc_taskaction_t)(isc_task_t *, isc_event_t *); 89 90 typedef enum { 91 isc_resource_coresize = 1, 92 isc_resource_cputime, 93 isc_resource_datasize, 94 isc_resource_filesize, 95 isc_resource_lockedmemory, 96 isc_resource_openfiles, 97 isc_resource_processes, 98 isc_resource_residentsize, 99 isc_resource_stacksize 100 } isc_resource_t; 101 102 #endif /* ISC_TYPES_H */ 103