tdata
[table]

Implement a table with datamatted storage. [詳細]

関数

void _netsnmp_tdata_generate_index_oid (netsnmp_tdata_row *row)
netsnmp_tdatanetsnmp_tdata_create_table (const char *name, long flags)
 creates and returns a 'tdata' table data structure
void netsnmp_tdata_delete_table (netsnmp_tdata *table)
 creates and returns a 'tdata' table data structure
netsnmp_tdata_rownetsnmp_tdata_create_row (void)
 creates and returns a pointer to new row data structure
netsnmp_tdata_rownetsnmp_tdata_clone_row (netsnmp_tdata_row *row)
 clones a 'tdata' row.
int netsnmp_tdata_copy_row (netsnmp_tdata_row *dst_row, netsnmp_tdata_row *src_row)
 copy the contents of a 'tdata' row.
void * netsnmp_tdata_delete_row (netsnmp_tdata_row *row)
 deletes the memory used by the specified row returns the table-specific entry data (that it doesn't know how to delete)
int netsnmp_tdata_add_row (netsnmp_tdata *table, netsnmp_tdata_row *row)
 Adds a row to the given table (stored in proper lexographical order).
void netsnmp_tdata_replace_row (netsnmp_tdata *table, netsnmp_tdata_row *origrow, netsnmp_tdata_row *newrow)
 swaps out origrow with newrow.
netsnmp_tdata_rownetsnmp_tdata_remove_row (netsnmp_tdata *table, netsnmp_tdata_row *row)
 removes a row from the given table and returns it (no free's called)
void * netsnmp_tdata_remove_and_delete_row (netsnmp_tdata *table, netsnmp_tdata_row *row)
 removes and frees a row of the given table and returns the table-specific entry data
netsnmp_mib_handlernetsnmp_get_tdata_handler (netsnmp_tdata *table)
 Creates a tdata handler and returns it
int _netsnmp_tdata_helper_handler (netsnmp_mib_handler *handler, netsnmp_handler_registration *reginfo, netsnmp_agent_request_info *reqinfo, netsnmp_request_info *requests)
int netsnmp_tdata_register (netsnmp_handler_registration *reginfo, netsnmp_tdata *table, netsnmp_table_registration_info *table_info)
 registers a tdata-based MIB table
netsnmp_tdatanetsnmp_tdata_extract_table (netsnmp_request_info *request)
 extracts the tdata table from the request structure
netsnmp_containernetsnmp_tdata_extract_container (netsnmp_request_info *request)
 extracts the tdata container from the request structure
netsnmp_tdata_rownetsnmp_tdata_extract_row (netsnmp_request_info *request)
 extracts the tdata row being accessed from the request structure
void * netsnmp_tdata_extract_entry (netsnmp_request_info *request)
 extracts the (table-specific) entry being accessed from the request structure
NETSNMP_INLINE void netsnmp_insert_tdata_row (netsnmp_request_info *request, netsnmp_tdata_row *row)
 inserts a newly created tdata row into a request
void * netsnmp_tdata_row_entry (netsnmp_tdata_row *row)
 returns the (table-specific) entry data for a given row
netsnmp_tdata_rownetsnmp_tdata_row_first (netsnmp_tdata *table)
 returns the first row in the table
netsnmp_tdata_rownetsnmp_tdata_row_get (netsnmp_tdata *table, netsnmp_tdata_row *row)
 finds a row in the 'tdata' table given another row
netsnmp_tdata_rownetsnmp_tdata_row_next (netsnmp_tdata *table, netsnmp_tdata_row *row)
 returns the next row in the table
netsnmp_tdata_rownetsnmp_tdata_row_get_byidx (netsnmp_tdata *table, netsnmp_variable_list *indexes)
 finds a row in the 'tdata' table given the index values
netsnmp_tdata_rownetsnmp_tdata_row_get_byoid (netsnmp_tdata *table, oid *searchfor, size_t searchfor_len)
 finds a row in the 'tdata' table given the index OID
netsnmp_tdata_rownetsnmp_tdata_row_next_byidx (netsnmp_tdata *table, netsnmp_variable_list *indexes)
 finds the lexically next row in the 'tdata' table given the index values
netsnmp_tdata_rownetsnmp_tdata_row_next_byoid (netsnmp_tdata *table, oid *searchfor, size_t searchfor_len)
 finds the lexically next row in the 'tdata' table given the index OID
int netsnmp_tdata_row_count (netsnmp_tdata *table)
int netsnmp_tdata_compare_idx (netsnmp_tdata_row *row, netsnmp_variable_list *indexes)
 compare a row with the given index values
int netsnmp_tdata_compare_oid (netsnmp_tdata_row *row, oid *compareto, size_t compareto_len)
 compare a row with the given index OID
int netsnmp_tdata_compare_subtree_idx (netsnmp_tdata_row *row, netsnmp_variable_list *indexes)
int netsnmp_tdata_compare_subtree_oid (netsnmp_tdata_row *row, oid *compareto, size_t compareto_len)

変数

Netsnmp_Node_Handler _netsnmp_tdata_helper_handler

説明

Implement a table with datamatted storage.

This helper helps you implement a table where all the rows are expected to be stored within the agent itself and not in some external storage location. It can be used to store a list of rows, where a row consists of the indexes to the table and a generic data pointer. You can then implement a subhandler which is passed the exact row definition and data it must return data for or accept data for. Complex GETNEXT handling is greatly simplified in this case.


関数

netsnmp_mib_handler* netsnmp_get_tdata_handler ( netsnmp_tdata table  ) 

Creates a tdata handler and returns it

table_tdata.c284 行で定義されています。

参照先 _netsnmp_tdata_helper_handlernetsnmp_mib_handler_s::flagsMIB_HANDLER_AUTO_NEXTnetsnmp_mib_handler_s::myvoidnetsnmp_create_handler()NULLsnmp_log().

参照元 netsnmp_tdata_register().

NETSNMP_INLINE void netsnmp_insert_tdata_row ( netsnmp_request_info request,
netsnmp_tdata_row row 
)

inserts a newly created tdata row into a request

table_tdata.c399 行で定義されています。

参照先 netsnmp_container_table_row_insert().

int netsnmp_tdata_add_row ( netsnmp_tdata table,
netsnmp_tdata_row row 
)

Adds a row to the given table (stored in proper lexographical order).

returns SNMPERR_SUCCESS on successful addition. or SNMPERR_GENERR on failure (E.G., indexes already existed)

table_tdata.c186 行で定義されています。

参照先 _netsnmp_tdata_generate_index_oid()netsnmp_tdata_s::containernetsnmp_tdata_s::flagsnetsnmp_tdata_row_s::indexesnetsnmp_tdata_s::nameNULLnetsnmp_tdata_row_s::oid_indexnetsnmp_index_s::oidssnmp_free_varbind()snmp_log().

参照元 netsnmp_tdata_replace_row().

netsnmp_tdata_row* netsnmp_tdata_clone_row ( netsnmp_tdata_row row  ) 

clones a 'tdata' row.

DOES NOT CLONE THE TABLE-SPECIFIC ENTRY DATA.

table_tdata.c92 行で定義されています。

参照先 memdup()NULLsnmp_clone_varbind()SNMP_FREEsnmp_free_varbind().

int netsnmp_tdata_compare_idx ( netsnmp_tdata_row row,
netsnmp_variable_list indexes 
)

compare a row with the given index values

table_tdata.c518 行で定義されています。

参照先 build_oid_noalloc()netsnmp_tdata_compare_oid()NULL.

int netsnmp_tdata_compare_oid ( netsnmp_tdata_row row,
oid *  compareto,
size_t  compareto_len 
)

compare a row with the given index OID

table_tdata.c531 行で定義されています。

参照先 netsnmp_index_s::lennetsnmp_index_s::oidssnmp_oid_compare().

参照元 netsnmp_tdata_compare_idx().

int netsnmp_tdata_copy_row ( netsnmp_tdata_row dst_row,
netsnmp_tdata_row src_row 
)

copy the contents of a 'tdata' row.

DOES NOT COPY THE TABLE-SPECIFIC ENTRY DATA.

table_tdata.c129 行で定義されています。

参照先 memdup()snmp_clone_varbind().

netsnmp_tdata_row* netsnmp_tdata_create_row ( void   ) 

creates and returns a pointer to new row data structure

table_tdata.c84 行で定義されています。

参照先 SNMP_MALLOC_TYPEDEF.

netsnmp_tdata* netsnmp_tdata_create_table ( const char *  name,
long  flags 
)

creates and returns a 'tdata' table data structure

table_tdata.c54 行で定義されています。

参照先 netsnmp_tdata_s::containernetsnmp_tdata_s::nameNULLSNMP_MALLOC_TYPEDEF.

void* netsnmp_tdata_delete_row ( netsnmp_tdata_row row  ) 

deletes the memory used by the specified row returns the table-specific entry data (that it doesn't know how to delete)

table_tdata.c157 行で定義されています。

参照先 netsnmp_tdata_row_s::datanetsnmp_tdata_row_s::indexesNULLnetsnmp_tdata_row_s::oid_indexnetsnmp_index_s::oidsSNMP_FREEsnmp_free_varbind().

参照元 netsnmp_tdata_remove_and_delete_row().

void netsnmp_tdata_delete_table ( netsnmp_tdata table  ) 

creates and returns a 'tdata' table data structure

table_tdata.c68 行で定義されています。

参照先 netsnmp_tdata_s::containernetsnmp_tdata_s::nameSNMP_FREE.

netsnmp_container* netsnmp_tdata_extract_container ( netsnmp_request_info request  ) 

extracts the tdata container from the request structure

table_tdata.c370 行で定義されています。

参照先 netsnmp_tdata_s::containernetsnmp_request_get_list_data()NULL.

void* netsnmp_tdata_extract_entry ( netsnmp_request_info request  ) 

extracts the (table-specific) entry being accessed from the request structure

table_tdata.c387 行で定義されています。

参照先 netsnmp_tdata_row_s::datanetsnmp_tdata_extract_row()NULL.

netsnmp_tdata_row* netsnmp_tdata_extract_row ( netsnmp_request_info request  ) 

extracts the tdata row being accessed from the request structure

table_tdata.c379 行で定義されています。

参照先 netsnmp_container_table_row_extract().

参照元 netsnmp_tdata_extract_entry().

netsnmp_tdata* netsnmp_tdata_extract_table ( netsnmp_request_info request  ) 

extracts the tdata table from the request structure

table_tdata.c362 行で定義されています。

参照先 netsnmp_request_get_list_data().

int netsnmp_tdata_register ( netsnmp_handler_registration reginfo,
netsnmp_tdata table,
netsnmp_table_registration_info table_info 
)

registers a tdata-based MIB table

table_tdata.c351 行で定義されています。

参照先 netsnmp_tdata_s::containernetsnmp_container_table_register()netsnmp_get_tdata_handler()netsnmp_inject_handler().

void* netsnmp_tdata_remove_and_delete_row ( netsnmp_tdata table,
netsnmp_tdata_row row 
)

removes and frees a row of the given table and returns the table-specific entry data

returns the void * pointer on successful deletion. or NULL on failure (bad arguments)

table_tdata.c260 行で定義されています。

参照先 netsnmp_tdata_delete_row()netsnmp_tdata_remove_row()NULL.

netsnmp_tdata_row* netsnmp_tdata_remove_row ( netsnmp_tdata table,
netsnmp_tdata_row row 
)

removes a row from the given table and returns it (no free's called)

returns the row pointer itself on successful removing. or NULL on failure (bad arguments)

table_tdata.c242 行で定義されています。

参照先 netsnmp_tdata_s::containerNULL.

参照元 netsnmp_tdata_remove_and_delete_row()netsnmp_tdata_replace_row().

void netsnmp_tdata_replace_row ( netsnmp_tdata table,
netsnmp_tdata_row origrow,
netsnmp_tdata_row newrow 
)

swaps out origrow with newrow.

This does *not* delete/free anything!

table_tdata.c227 行で定義されています。

参照先 netsnmp_tdata_add_row()netsnmp_tdata_remove_row().

void* netsnmp_tdata_row_entry ( netsnmp_tdata_row row  ) 

returns the (table-specific) entry data for a given row

table_tdata.c414 行で定義されています。

参照先 netsnmp_tdata_row_s::dataNULL.

netsnmp_tdata_row* netsnmp_tdata_row_first ( netsnmp_tdata table  ) 

returns the first row in the table

table_tdata.c424 行で定義されています。

参照先 netsnmp_tdata_s::container.

netsnmp_tdata_row* netsnmp_tdata_row_get ( netsnmp_tdata table,
netsnmp_tdata_row row 
)

finds a row in the 'tdata' table given another row

table_tdata.c431 行で定義されています。

参照先 netsnmp_tdata_s::container.

netsnmp_tdata_row* netsnmp_tdata_row_get_byidx ( netsnmp_tdata table,
netsnmp_variable_list indexes 
)

finds a row in the 'tdata' table given the index values

table_tdata.c447 行で定義されています。

参照先 build_oid_noalloc()netsnmp_tdata_row_get_byoid()NULL.

netsnmp_tdata_row* netsnmp_tdata_row_get_byoid ( netsnmp_tdata table,
oid *  searchfor,
size_t  searchfor_len 
)

finds a row in the 'tdata' table given the index OID

table_tdata.c460 行で定義されています。

参照先 netsnmp_tdata_s::containernetsnmp_index_s::lenNULLnetsnmp_index_s::oids.

参照元 netsnmp_tdata_row_get_byidx().

netsnmp_tdata_row* netsnmp_tdata_row_next ( netsnmp_tdata table,
netsnmp_tdata_row row 
)

returns the next row in the table

table_tdata.c439 行で定義されています。

参照先 netsnmp_tdata_s::container.

netsnmp_tdata_row* netsnmp_tdata_row_next_byidx ( netsnmp_tdata table,
netsnmp_variable_list indexes 
)

finds the lexically next row in the 'tdata' table given the index values

table_tdata.c475 行で定義されています。

参照先 build_oid_noalloc()netsnmp_tdata_row_next_byoid()NULL.

netsnmp_tdata_row* netsnmp_tdata_row_next_byoid ( netsnmp_tdata table,
oid *  searchfor,
size_t  searchfor_len 
)

finds the lexically next row in the 'tdata' table given the index OID

table_tdata.c489 行で定義されています。

参照先 netsnmp_tdata_s::containernetsnmp_index_s::lenNULLnetsnmp_index_s::oids.

参照元 netsnmp_tdata_row_next_byidx().


net-snmpに対してSat Sep 5 13:14:30 2009に生成されました。  doxygen 1.4.7