Sun Microsystems, Inc.
spacerspacer
spacer   www.sun.com docs.sun.com | | |  
spacer
black dot
   
A   B   C   D   E   F   G   H   I   J   K   L   M   N   O   P   Q   R   S   T   U   V   W   X   Y   Z
    
 
TNF Library Functionstnfctl_register_funcs(3TNF)


NAME

 tnfctl_register_funcs - register callbacks for probe creation and destruction

SYNOPSIS

 
cc [ flag ... ] file ... -ltnfctl [ library ... ]
#include <tnf/tnfctl.h>
tnfctl_errcode_t tnfctl_register_funcs(tnfctl_handle_t *hndl, void * (*create_func)(tnfctl_handle_t *, tnfctl_probe_t *), void (*destroy_func)(void *));

DESCRIPTION

 

The function tnfctl_register_funcs() is used to store client-specific data on a per-probe basis. It registers a creator and a destructor function with hndl, either of which can be NULL. The creator function is called for every probe that currently exists in hndl. Every time a new probe is discovered, that is brought in by dlopen(3DL), create_func is called.

The return value of the creator function is stored as part of the probe state and can be retrieved by tnfctl_probe_state_get(3TNF) in the member field client_registered_data.

destroy_func is called for every probe handle that is freed. This does not necessarily happen at the time dlclose(3DL) frees the shared object. The probe handles are freed only when hndl is closed by tnfctl_close(3TNF). If tnfctl_register_funcs() is called a second time for the same hndl, then the previously registered destructor function is called first for all of the probes.

RETURN VALUES

 

tnfctl_register_funcs() returns TNFCTL_ERR_NONE upon success.

ERRORS

 
TNFCTL_ERR_INTERNAL
An internal error occurred.

ATTRIBUTES

 

See attributes(5) for descriptions of the following attributes:

ATTRIBUTE TYPEATTRIBUTE VALUE
AvailabilitySUNWtnfc
MT LevelMT-Safe

SEE ALSO

 

prex(1), TNF_PROBE(3TNF), dlclose(3DL), dlopen(3DL), libtnfctl(3TNF), tnfctl_close(3TNF), tnfctl_probe_state_get(3TNF), tracing(3TNF), tnf_kernel_probes(4), attributes(5)

Linker and Libraries Guide


SunOS 5.9Go To TopLast Changed 4 Mar 1997

 
      
      
Copyright 2002 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms.