103 memset (
new, 0,
sizeof *
new);
146 if (table -> first > h || table -> limit <= h)
151 if (table -> leafp) {
153 (&table -> children [h - table -> first].
object,
169 index = (h - table -> first) /
scale;
179 inner -> first = index *
scale + table -> first;
186 status = omapi_object_handle_in_table (h,
inner,
o);
188 status = (omapi_handle_table_enclose
189 (&table -> children [index].table));
193 return omapi_object_handle_in_table
194 (h, table -> children [index].table,
o);
203 int index, base,
scale;
228 memset (
new, 0,
sizeof *
new);
230 new -> limit = base +
scale;
233 new -> children [index].table =
inner;
250 if (!table || table->
first > h || table->
limit <= h)
278 return(omapi_handle_lookup_in(
o, h, table->
children[index].
table, op));
290 handle->u.buffer.len ==
sizeof h) {
isc_result_t omapi_object_handle(omapi_handle_t *h, omapi_object_t *o)
omapi_handle_table_t * omapi_handle_table
omapi_handle_t omapi_next_handle
isc_result_t omapi_handle_lookup(omapi_object_t **o, omapi_handle_t h)
isc_result_t omapi_handle_td_lookup(omapi_object_t **obj, omapi_typed_data_t *handle)
isc_result_t omapi_handle_clear(omapi_handle_t h)
isc_result_t omapi_object_reference(omapi_object_t **, omapi_object_t *, const char *, int)
unsigned int omapi_handle_t
void * dmalloc(size_t, const char *, int)
#define OMAPI_HANDLE_TABLE_SIZE
#define DHCP_R_INVALIDARG
struct __omapi_handle_table * table
union __omapi_handle_table::@6 children[OMAPI_HANDLE_TABLE_SIZE]