JavaScript is required to for searching.
Skip Navigation Links
Exit Print View
man pages section 3: Extended Library Functions, Volume 4     Oracle Solaris 11 Express 11/10
search filter icon
search icon

Document Information

Preface

Extended Library Functions, Volume 4

acl_check(3SEC)

aclcheck(3SEC)

acl_free(3SEC)

aclfrommode(3SEC)

acl_fromtext(3SEC)

aclfromtext(3SEC)

acl_get(3SEC)

acl_set(3SEC)

aclsort(3SEC)

acl_strip(3SEC)

acltomode(3SEC)

acl_totext(3SEC)

acltotext(3SEC)

acl_trivial(3SEC)

bcleartoh(3TSOL)

bcleartoh_r(3TSOL)

bcleartos(3TSOL)

blcompare(3TSOL)

bldominates(3TSOL)

blequal(3TSOL)

blinrange(3TSOL)

blmaximum(3TSOL)

blminimum(3TSOL)

blminmax(3TSOL)

blstrictdom(3TSOL)

bltocolor(3TSOL)

bltocolor_r(3TSOL)

bltos(3TSOL)

bsltoh(3TSOL)

bsltoh_r(3TSOL)

bsltos(3TSOL)

btohex(3TSOL)

cfc_file_start(3TECLA)

cfc_literal_escapes(3TECLA)

cfc_set_check_fn(3TECLA)

chkauthattr(3SECDB)

cpl_add_completion(3TECLA)

cpl_check_exe(3TECLA)

cpl_complete_word(3TECLA)

cpl_file_completions(3TECLA)

cpl_last_error(3TECLA)

cpl_list_completions(3TECLA)

cpl_recall_matches(3TECLA)

cpl_record_error(3TECLA)

del_CplFileConf(3TECLA)

del_ExpandFile(3TECLA)

del_GetLine(3TECLA)

del_PathCache(3TECLA)

del_PcaPathConf(3TECLA)

del_WordCompletion(3TECLA)

ef_expand_file(3TECLA)

ef_last_error(3TECLA)

ef_list_expansions(3TECLA)

endauthattr(3SECDB)

endexecattr(3SECDB)

endprofattr(3SECDB)

enduserattr(3SECDB)

facl_get(3SEC)

facl_set(3SEC)

fgetuserattr(3SECDB)

free_authattr(3SECDB)

free_execattr(3SECDB)

free_profattr(3SECDB)

free_proflist(3SECDB)

free_userattr(3SECDB)

getauthattr(3SECDB)

getauthnam(3SECDB)

getexecattr(3SECDB)

getexecprof(3SECDB)

getexecuser(3SECDB)

getpathbylabel(3TSOL)

getplabel(3TSOL)

getprofattr(3SECDB)

getproflist(3SECDB)

getprofnam(3SECDB)

getuserattr(3SECDB)

getusernam(3SECDB)

getuserrange(3TSOL)

getuseruid(3SECDB)

getzoneidbylabel(3TSOL)

getzonelabelbyid(3TSOL)

getzonelabelbyname(3TSOL)

getzonerootbyid(3TSOL)

getzonerootbylabel(3TSOL)

getzonerootbyname(3TSOL)

gl_abandon_line(3TECLA)

gl_append_history(3TECLA)

gl_automatic_history(3TECLA)

gl_bind_keyseq(3TECLA)

gl_catch_blocked(3TECLA)

gl_change_terminal(3TECLA)

gl_clear_history(3TECLA)

gl_completion_action(3TECLA)

gl_configure_getline(3TECLA)

gl_customize_completion(3TECLA)

gl_display_text(3TECLA)

gl_echo_mode(3TECLA)

gl_erase_terminal(3TECLA)

gl_error_message(3TECLA)

gl_get_line(3TECLA)

gl_group_history(3TECLA)

gl_handle_signal(3TECLA)

gl_ignore_signal(3TECLA)

gl_inactivity_timeout(3TECLA)

gl_io_mode(3TECLA)

gl_last_signal(3TECLA)

gl_limit_history(3TECLA)

gl_list_signals(3TECLA)

gl_load_history(3TECLA)

gl_lookup_history(3TECLA)

gl_normal_io(3TECLA)

gl_pending_io(3TECLA)

gl_prompt_style(3TECLA)

gl_query_char(3TECLA)

gl_range_of_history(3TECLA)

gl_raw_io(3TECLA)

gl_read_char(3TECLA)

gl_register_action(3TECLA)

gl_replace_prompt(3TECLA)

gl_resize_history(3TECLA)

gl_return_status(3TECLA)

gl_save_history(3TECLA)

gl_set_term_size(3TECLA)

gl_show_history(3TECLA)

gl_size_of_history(3TECLA)

gl_state_of_history(3TECLA)

gl_terminal_size(3TECLA)

gl_toggle_history(3TECLA)

gl_trap_signal(3TECLA)

gl_tty_signals(3TECLA)

gl_watch_fd(3TECLA)

h_alloc(3TSOL)

hextob(3TSOL)

h_free(3TSOL)

htobclear(3TSOL)

htobsl(3TSOL)

kva_match(3SECDB)

labelclipping(3TSOL)

label_to_str(3TSOL)

libtecla_version(3TECLA)

libtnfctl(3TNF)

match_execattr(3SECDB)

media_findname(3VOLMGT)

media_getattr(3VOLMGT)

media_getid(3VOLMGT)

media_setattr(3VOLMGT)

m_label(3TSOL)

m_label_alloc(3TSOL)

m_label_dup(3TSOL)

m_label_free(3TSOL)

new_CplFileConf(3TECLA)

new_ExpandFile(3TECLA)

new_GetLine(3TECLA)

new_PathCache(3TECLA)

new_PcaPathConf(3TECLA)

new_WordCompletion(3TECLA)

pca_last_error(3TECLA)

pca_lookup_file(3TECLA)

pca_path_completions(3TECLA)

pca_scan_path(3TECLA)

pca_set_check_fn(3TECLA)

ppc_file_start(3TECLA)

ppc_literal_escapes(3TECLA)

sbcleartos(3TSOL)

sbltos(3TSOL)

sbsltos(3TSOL)

scf_count_ranges_destroy(3SCF)

scf_entry_add_value(3SCF)

scf_entry_create(3SCF)

scf_entry_destroy(3SCF)

scf_entry_destroy_children(3SCF)

scf_entry_handle(3SCF)

scf_entry_reset(3SCF)

scf_error(3SCF)

scf_handle_bind(3SCF)

scf_handle_create(3SCF)

scf_handle_decode_fmri(3SCF)

scf_handle_decorate(3SCF)

scf_handle_destroy(3SCF)

scf_handle_get_scope(3SCF)

scf_handle_unbind(3SCF)

scf_instance_add_pg(3SCF)

scf_instance_create(3SCF)

scf_instance_delete(3SCF)

scf_instance_destroy(3SCF)

scf_instance_get_name(3SCF)

scf_instance_get_parent(3SCF)

scf_instance_get_pg(3SCF)

scf_instance_get_pg_composed(3SCF)

scf_instance_get_snapshot(3SCF)

scf_instance_handle(3SCF)

scf_instance_to_fmri(3SCF)

scf_int_ranges_destroy(3SCF)

scf_iter_create(3SCF)

scf_iter_destroy(3SCF)

scf_iter_handle(3SCF)

scf_iter_handle_scopes(3SCF)

scf_iter_instance_pgs(3SCF)

scf_iter_instance_pgs_composed(3SCF)

scf_iter_instance_pgs_typed(3SCF)

scf_iter_instance_pgs_typed_composed(3SCF)

scf_iter_instance_snapshots(3SCF)

scf_iter_next_instance(3SCF)

scf_iter_next_pg(3SCF)

scf_iter_next_property(3SCF)

scf_iter_next_scope(3SCF)

scf_iter_next_service(3SCF)

scf_iter_next_snapshot(3SCF)

scf_iter_next_value(3SCF)

scf_iter_pg_properties(3SCF)

scf_iter_property_values(3SCF)

scf_iter_reset(3SCF)

scf_iter_scope_services(3SCF)

scf_iter_service_instances(3SCF)

scf_iter_service_pgs(3SCF)

scf_iter_service_pgs_typed(3SCF)

scf_iter_snaplevel_pgs(3SCF)

scf_iter_snaplevel_pgs_typed(3SCF)

scf_limit(3SCF)

scf_myname(3SCF)

scf_pg_create(3SCF)

scf_pg_delete(3SCF)

scf_pg_destroy(3SCF)

scf_pg_get_flags(3SCF)

scf_pg_get_name(3SCF)

scf_pg_get_parent_instance(3SCF)

scf_pg_get_parent_service(3SCF)

scf_pg_get_parent_snaplevel(3SCF)

scf_pg_get_property(3SCF)

scf_pg_get_type(3SCF)

scf_pg_get_underlying_pg(3SCF)

scf_pg_handle(3SCF)

scf_pg_to_fmri(3SCF)

scf_pg_update(3SCF)

scf_property_create(3SCF)

scf_property_destroy(3SCF)

scf_property_get_name(3SCF)

scf_property_get_value(3SCF)

scf_property_handle(3SCF)

scf_property_is_type(3SCF)

scf_property_to_fmri(3SCF)

scf_property_type(3SCF)

scf_scope_add_service(3SCF)

scf_scope_create(3SCF)

scf_scope_destroy(3SCF)

scf_scope_get_name(3SCF)

scf_scope_get_service(3SCF)

scf_scope_handle(3SCF)

scf_scope_to_fmri(3SCF)

scf_service_add_instance(3SCF)

scf_service_add_pg(3SCF)

scf_service_create(3SCF)

scf_service_delete(3SCF)

scf_service_destroy(3SCF)

scf_service_get_instance(3SCF)

scf_service_get_name(3SCF)

scf_service_get_parent(3SCF)

scf_service_get_pg(3SCF)

scf_service_handle(3SCF)

scf_service_to_fmri(3SCF)

scf_simple_app_props_free(3SCF)

scf_simple_app_props_get(3SCF)

scf_simple_app_props_next(3SCF)

scf_simple_app_props_search(3SCF)

scf_simple_prop_free(3SCF)

scf_simple_prop_get(3SCF)

scf_simple_prop_name(3SCF)

scf_simple_prop_next_astring(3SCF)

scf_simple_prop_next_boolean(3SCF)

scf_simple_prop_next_count(3SCF)

scf_simple_prop_next_integer(3SCF)

scf_simple_prop_next_opaque(3SCF)

scf_simple_prop_next_reset(3SCF)

scf_simple_prop_next_time(3SCF)

scf_simple_prop_next_ustring(3SCF)

scf_simple_prop_numvalues(3SCF)

scf_simple_prop_pgname(3SCF)

scf_simple_prop_type(3SCF)

scf_simple_walk_instances(3SCF)

scf_snaplevel_create(3SCF)

scf_snaplevel_destroy(3SCF)

scf_snaplevel_get_instance_name(3SCF)

scf_snaplevel_get_next_snaplevel(3SCF)

scf_snaplevel_get_parent(3SCF)

scf_snaplevel_get_pg(3SCF)

scf_snaplevel_get_scope_name(3SCF)

scf_snaplevel_get_service_name(3SCF)

scf_snaplevel_handle(3SCF)

scf_snapshot_create(3SCF)

scf_snapshot_destroy(3SCF)

scf_snapshot_get_base_snaplevel(3SCF)

scf_snapshot_get_name(3SCF)

scf_snapshot_get_parent(3SCF)

scf_snapshot_handle(3SCF)

scf_snapshot_update(3SCF)

scf_strerror(3SCF)

scf_string_to_type(3SCF)

scf_tmpl_error_pg(3SCF)

scf_tmpl_error_pg_tmpl(3SCF)

scf_tmpl_error_prop(3SCF)

scf_tmpl_error_prop_tmpl(3SCF)

scf_tmpl_errors_destroy(3SCF)

scf_tmpl_error_source_fmri(3SCF)

scf_tmpl_error_type(3SCF)

scf_tmpl_error_value(3SCF)

scf_tmpl_get_by_pg(3SCF)

scf_tmpl_get_by_pg_name(3SCF)

scf_tmpl_get_by_prop(3SCF)

scf_tmpl_iter_pgs(3SCF)

scf_tmpl_iter_props(3SCF)

scf_tmpl_next_error(3SCF)

scf_tmpl_pg_common_name(3SCF)

scf_tmpl_pg_create(3SCF)

scf_tmpl_pg_description(3SCF)

scf_tmpl_pg_destroy(3SCF)

scf_tmpl_pg_name(3SCF)

scf_tmpl_pg_required(3SCF)

scf_tmpl_pg_reset(3SCF)

scf_tmpl_pg_target(3SCF)

scf_tmpl_pg_type(3SCF)

scf_tmpl_prop_cardinality(3SCF)

scf_tmpl_prop_common_name(3SCF)

scf_tmpl_prop_create(3SCF)

scf_tmpl_prop_description(3SCF)

scf_tmpl_prop_destroy(3SCF)

scf_tmpl_prop_internal_seps(3SCF)

scf_tmpl_prop_name(3SCF)

scf_tmpl_prop_required(3SCF)

scf_tmpl_prop_reset(3SCF)

scf_tmpl_prop_type(3SCF)

scf_tmpl_prop_units(3SCF)

scf_tmpl_prop_visibility(3SCF)

scf_tmpl_reset_errors(3SCF)

scf_tmpl_strerror(3SCF)

scf_tmpl_validate_fmri(3SCF)

scf_tmpl_value_common_name(3SCF)

scf_tmpl_value_count_range_choices(3SCF)

scf_tmpl_value_count_range_constraints(3SCF)

scf_tmpl_value_description(3SCF)

scf_tmpl_value_in_constraint(3SCF)

scf_tmpl_value_int_range_choices(3SCF)

scf_tmpl_value_int_range_constraints(3SCF)

scf_tmpl_value_name_choices(3SCF)

scf_tmpl_value_name_constraints(3SCF)

scf_tmpl_visibility_to_string(3SCF)

scf_transaction_commit(3SCF)

scf_transaction_create(3SCF)

scf_transaction_destroy(3SCF)

scf_transaction_destroy_children(3SCF)

scf_transaction_handle(3SCF)

scf_transaction_property_change(3SCF)

scf_transaction_property_change_type(3SCF)

scf_transaction_property_delete(3SCF)

scf_transaction_property_new(3SCF)

scf_transaction_reset(3SCF)

scf_transaction_reset_all(3SCF)

scf_transaction_start(3SCF)

scf_type_base_type(3SCF)

scf_type_to_string(3SCF)

scf_value_base_type(3SCF)

scf_value_create(3SCF)

scf_value_destroy(3SCF)

scf_value_get_as_string(3SCF)

scf_value_get_as_string_typed(3SCF)

scf_value_get_astring(3SCF)

scf_value_get_boolean(3SCF)

scf_value_get_count(3SCF)

scf_value_get_integer(3SCF)

scf_value_get_opaque(3SCF)

scf_value_get_time(3SCF)

scf_value_get_ustring(3SCF)

scf_value_handle(3SCF)

scf_value_is_type(3SCF)

scf_value_reset(3SCF)

scf_values_destroy(3SCF)

scf_value_set_astring(3SCF)

scf_value_set_boolean(3SCF)

scf_value_set_count(3SCF)

scf_value_set_from_string(3SCF)

scf_value_set_integer(3SCF)

scf_value_set_opaque(3SCF)

scf_value_set_time(3SCF)

scf_value_set_ustring(3SCF)

scf_value_type(3SCF)

setauthattr(3SECDB)

setexecattr(3SECDB)

setflabel(3TSOL)

setprofattr(3SECDB)

setuserattr(3SECDB)

smf_degrade_instance(3SCF)

smf_disable_instance(3SCF)

smf_enable_instance(3SCF)

smf_get_state(3SCF)

smf_maintain_instance(3SCF)

smf_notify_del_params(3SCF)

smf_notify_get_params(3SCF)

smf_notify_set_params(3SCF)

smf_refresh_instance(3SCF)

smf_restart_instance(3SCF)

smf_restore_instance(3SCF)

smf_state_from_string(3SCF)

smf_state_to_string(3SCF)

srpt_GetDefaultState(3SRPT)

srpt_GetTargetState(3SRPT)

srpt_ResetTarget(3SRPT)

srpt_SetDefaultState(3SRPT)

srpt_SetTargetState(3SRPT)

SSAAgentIsAlive(3SNMP)

SSAGetTrapPort(3SNMP)

SSAOidCmp(3SNMP)

SSAOidCpy(3SNMP)

SSAOidDup(3SNMP)

SSAOidFree(3SNMP)

SSAOidInit(3SNMP)

SSAOidNew(3SNMP)

SSAOidString(3SNMP)

SSAOidStrToOid(3SNMP)

SSAOidZero(3SNMP)

SSARegSubagent(3SNMP)

SSARegSubtable(3SNMP)

SSARegSubtree(3SNMP)

SSASendTrap(3SNMP)

SSAStringCpy(3SNMP)

SSAStringInit(3SNMP)

SSAStringToChar(3SNMP)

SSAStringZero(3SNMP)

SSASubagentOpen(3SNMP)

stmfAddToHostGroup(3STMF)

stmfAddToTargetGroup(3STMF)

stmfAddViewEntry(3STMF)

stmfClearProviderData(3STMF)

stmfCreateHostGroup(3STMF)

stmfCreateLu(3STMF)

stmfCreateLuResource(3STMF)

stmfCreateTargetGroup(3STMF)

stmfDeleteHostGroup(3STMF)

stmfDeleteLu(3STMF)

stmfDeleteTargetGroup(3STMF)

stmfDestroyProxyDoor(3STMF)

stmfDevidFromIscsiName(3STMF)

stmfDevidFromWwn(3STMF)

stmfFreeLuResource(3STMF)

stmfFreeMemory(3STMF)

stmfGetAluaState(3STMF)

stmfGetHostGroupList(3STMF)

stmfGetHostGroupMembers(3STMF)

stmfGetLogicalUnitList(3STMF)

stmfGetLogicalUnitProperties(3STMF)

stmfGetLuProp(3STMF)

stmfGetLuResource(3STMF)

stmfGetPersistMethod(3STMF)

stmfGetProviderData(3STMF)

stmfGetProviderDataProt(3STMF)

stmfGetState(3STMF)

stmfGetStmfProp(3STMF)

stmfGetTargetGroupList(3STMF)

stmfGetTargetGroupMembers(3STMF)

stmfGetTargetList(3STMF)

stmfGetTargetProperties(3STMF)

stmfGetViewEntryList(3STMF)

stmfImportLu(3STMF)

stmfInitProxyDoor(3STMF)

stmfLuStandby(3STMF)

stmfModifyLu(3STMF)

stmfModifyLuByFname(3STMF)

stmfOfflineLogicalUnit(3STMF)

stmfOfflineTarget(3STMF)

stmfOnlineLogicalUnit(3STMF)

stmfOnlineTarget(3STMF)

stmfPostProxyMsg(3STMF)

stmfRemoveFromHostGroup(3STMF)

stmfRemoveFromTargetGroup(3STMF)

stmfRemoveViewEntry(3STMF)

stmfSetAluaState(3STMF)

stmfSetLuProp(3STMF)

stmfSetPersistMethod(3STMF)

stmfSetProviderData(3STMF)

stmfSetProviderDataProt(3STMF)

stmfSetStmfProp(3STMF)

stmfValidateView(3STMF)

stobclear(3TSOL)

stobl(3TSOL)

stobsl(3TSOL)

str_to_label(3TSOL)

sysevent_bind_handle(3SYSEVENT)

sysevent_free(3SYSEVENT)

sysevent_get_attr_list(3SYSEVENT)

sysevent_get_class_name(3SYSEVENT)

sysevent_get_pid(3SYSEVENT)

sysevent_get_pub_name(3SYSEVENT)

sysevent_get_seq(3SYSEVENT)

sysevent_get_size(3SYSEVENT)

sysevent_get_subclass_name(3SYSEVENT)

sysevent_get_time(3SYSEVENT)

sysevent_get_vendor_name(3SYSEVENT)

sysevent_post_event(3SYSEVENT)

sysevent_subscribe_event(3SYSEVENT)

sysevent_unbind_handle(3SYSEVENT)

sysevent_unsubscribe_event(3SYSEVENT)

tnfctl_buffer_alloc(3TNF)

tnfctl_buffer_dealloc(3TNF)

tnfctl_check_libs(3TNF)

tnfctl_close(3TNF)

tnfctl_continue(3TNF)

tnfctl_exec_open(3TNF)

tnfctl_filter_list_add(3TNF)

tnfctl_filter_list_delete(3TNF)

tnfctl_filter_list_get(3TNF)

tnfctl_filter_state_set(3TNF)

tnfctl_indirect_open(3TNF)

tnfctl_internal_open(3TNF)

tnfctl_kernel_open(3TNF)

tnfctl_pid_open(3TNF)

tnfctl_probe_apply(3TNF)

tnfctl_probe_apply_ids(3TNF)

tnfctl_probe_connect(3TNF)

tnfctl_probe_disable(3TNF)

tnfctl_probe_disconnect_all(3TNF)

tnfctl_probe_enable(3TNF)

tnfctl_probe_state_get(3TNF)

tnfctl_probe_trace(3TNF)

tnfctl_probe_untrace(3TNF)

tnfctl_register_funcs(3TNF)

tnfctl_strerror(3TNF)

tnfctl_trace_attrs_get(3TNF)

tnfctl_trace_state_set(3TNF)

TNF_DEBUG(3TNF)

TNF_DECLARE_RECORD(3TNF)

TNF_DEFINE_RECORD_1(3TNF)

TNF_DEFINE_RECORD_2(3TNF)

TNF_DEFINE_RECORD_3(3TNF)

TNF_DEFINE_RECORD_4(3TNF)

TNF_DEFINE_RECORD_5(3TNF)

TNF_PROBE_0(3TNF)

TNF_PROBE_0_DEBUG(3TNF)

TNF_PROBE_1(3TNF)

TNF_PROBE_1_DEBUG(3TNF)

TNF_PROBE_2(3TNF)

TNF_PROBE_2_DEBUG(3TNF)

TNF_PROBE_3(3TNF)

TNF_PROBE_3_DEBUG(3TNF)

TNF_PROBE(3TNF)

TNF_PROBE_4(3TNF)

TNF_PROBE_4_DEBUG(3TNF)

TNF_PROBE_5(3TNF)

TNF_PROBE_5_DEBUG(3TNF)

tnf_process_disable(3TNF)

tnf_process_enable(3TNF)

tnf_thread_disable(3TNF)

tnf_thread_enable(3TNF)

tracing(3TNF)

tsol_getrhtype(3TSOL)

uuid_clear(3UUID)

uuid_compare(3UUID)

uuid_copy(3UUID)

uuid_generate(3UUID)

uuid_generate_random(3UUID)

uuid_generate_time(3UUID)

uuid_is_null(3UUID)

uuid_parse(3UUID)

uuid_time(3UUID)

uuid_unparse(3UUID)

volmgt_acquire(3VOLMGT)

volmgt_check(3VOLMGT)

volmgt_feature_enabled(3VOLMGT)

volmgt_inuse(3VOLMGT)

volmgt_ownspath(3VOLMGT)

volmgt_release(3VOLMGT)

volmgt_root(3VOLMGT)

volmgt_running(3VOLMGT)

volmgt_symdev(3VOLMGT)

volmgt_symname(3VOLMGT)

wsreg_add_child_component(3WSREG)

wsreg_add_compatible_version(3WSREG)

wsreg_add_dependent_component(3WSREG)

wsreg_add_display_name(3WSREG)

wsreg_add_required_component(3WSREG)

wsreg_can_access_registry(3WSREG)

wsreg_clone_component(3WSREG)

wsreg_components_equal(3WSREG)

wsreg_create_component(3WSREG)

wsreg_free_component(3WSREG)

wsreg_free_component_array(3WSREG)

wsreg_get(3WSREG)

wsreg_get_all(3WSREG)

wsreg_get_child_components(3WSREG)

wsreg_get_compatible_versions(3WSREG)

wsreg_get_data(3WSREG)

wsreg_get_data_pairs(3WSREG)

wsreg_get_dependent_components(3WSREG)

wsreg_get_display_languages(3WSREG)

wsreg_get_display_name(3WSREG)

wsreg_get_id(3WSREG)

wsreg_get_instance(3WSREG)

wsreg_get_location(3WSREG)

wsreg_get_parent(3WSREG)

wsreg_get_required_components(3WSREG)

wsreg_get_type(3WSREG)

wsreg_get_uninstaller(3WSREG)

wsreg_get_unique_name(3WSREG)

wsreg_get_vendor(3WSREG)

wsreg_get_version(3WSREG)

wsreg_initialize(3WSREG)

wsreg_query_create(3WSREG)

wsreg_query_free(3WSREG)

wsreg_query_get_id(3WSREG)

wsreg_query_get_instance(3WSREG)

wsreg_query_get_location(3WSREG)

wsreg_query_get_unique_name(3WSREG)

wsreg_query_get_version(3WSREG)

wsreg_query_set_id(3WSREG)

wsreg_query_set_instance(3WSREG)

wsreg_query_set_location(3WSREG)

wsreg_query_set_unique_name(3WSREG)

wsreg_query_set_version(3WSREG)

wsreg_register(3WSREG)

wsreg_remove_child_component(3WSREG)

wsreg_remove_compatible_version(3WSREG)

wsreg_remove_dependent_component(3WSREG)

wsreg_remove_display_name(3WSREG)

wsreg_remove_required_component(3WSREG)

wsreg_set_data(3WSREG)

wsreg_set_id(3WSREG)

wsreg_set_instance(3WSREG)

wsreg_set_location(3WSREG)

wsreg_set_parent(3WSREG)

wsreg_set_type(3WSREG)

wsreg_set_uninstaller(3WSREG)

wsreg_set_unique_name(3WSREG)

wsreg_set_vendor(3WSREG)

wsreg_set_version(3WSREG)

wsreg_unregister(3WSREG)

Xbcleartos(3TSOL)

Xbsltos(3TSOL)

XTSOLgetClientAttributes(3XTSOL)

XTSOLgetPropAttributes(3XTSOL)

XTSOLgetPropLabel(3XTSOL)

XTSOLgetPropUID(3XTSOL)

XTSOLgetResAttributes(3XTSOL)

XTSOLgetResLabel(3XTSOL)

XTSOLgetResUID(3XTSOL)

XTSOLgetSSHeight(3XTSOL)

XTSOLgetWorkstationOwner(3XTSOL)

XTSOLIsWindowTrusted(3XTSOL)

XTSOLMakeTPWindow(3XTSOL)

XTSOLsetPolyInstInfo(3XTSOL)

XTSOLsetPropLabel(3XTSOL)

XTSOLsetPropUID(3XTSOL)

XTSOLsetResLabel(3XTSOL)

XTSOLsetResUID(3XTSOL)

XTSOLsetSessionHI(3XTSOL)

XTSOLsetSessionLO(3XTSOL)

XTSOLsetSSHeight(3XTSOL)

XTSOLsetWorkstationOwner(3XTSOL)

tnfctl_indirect_open

, tnfctl_check_libs

- control probes of another process where caller provides /proc functionality

Synopsis

cc [ flag ... ] file ... -ltnfctl [ library ... ]
#include <tnf/tnfctl.h>

tnfctl_errcode_t tnfctl_indirect_open(void *prochandle,
     tnfctl_ind_config_t *config, tnfctl_handle_t **ret_val);
tnfctl_errcode_t tnfctl_check_libs(tnfctl_handle_t *hndl);

Description

The interfaces tnfctl_indirect_open() and tnfctl_check_libs() are used to control probes in another process where the libtnfctl(3TNF) client has already opened proc(4) on the target process. An example of this is when the client is a debugger. Since these clients already use /proc on the target, libtnfctl(3TNF) cannot use /proc directly. Therefore, these clients must provide callback functions that can be used to inspect and to update the target process. The target process must load libtnfprobe.so.1 (defined in <tnf/tnfctl.h> as macro TNFCTL_LIBTNFPROBE).

The first argument prochandle is a pointer to an opaque structure that is used in the callback functions that inspect and update the target process. This structure should encapsulate the state that the caller needs to use /proc on the target process (the /proc file descriptor). The second argument, config, is a pointer to

typedef
struct tnfctl_ind_config {
    int (*p_read)(void *prochandle, paddr_t addr, char *buf,
                    size_t size);
    int (*p_write)(void *prochandle, paddr_t addr, char *buf,
                    size_t size);
    pid_t (*p_getpid)(void *prochandle);
    int (*p_obj_iter)(void *prochandle, tnfctl_ind_obj_f *func,
                    void *client_data);
} tnfctl_ind_config_t;

The first field p_read is the address of a function that can read size bytes at address addr in the target image into the buffer buf. The function should return 0 upon success.. The second field p_write is the address of a function that can write size bytes at address addr in the target image from the buffer buf. The function should return 0 upon success. The third field p_getpid is the address of a function that should return the process id of the target process (prochandle). The fourth field p_obj_iter is the address of a function that iterates over all load objects and the executable by calling the callback function func with client_data. If func returns 0, p_obj_iter should continue processing link objects. If func returns any other value, p_obj_iter should stop calling the callback function and return that value. p_obj_iter should return 0 if it iterates over all load objects.

If a failure is returned by any of the functions in config, the error is propagated back as PREX_ERR_INTERNAL by the libtnfctl interface that called it.

The definition of tnfctl_ind_obj_f is:

typedef int
tnfctl_ind_obj_f(void *prochandle,
    const struct tnfctl_ind_obj_info *obj
    void *client_data);
typedef struct tnfctl_ind_obj_info {
    int     objfd;            /* -1 indicates fd not available */
    paddr_t text_base;        /* virtual addr of text segment */
    paddr_t data_base;        /* virtual addr of data segment */
    const char *objname;        /* null-term. pathname to loadobj */
} tnfctl_ind_obj_info_t;

objfd should be the file descriptor of the load object or executable. If it is -1, then objname should be an absolute pathname to the load object or executable. If objfd is not closed by libtnfctl, it should be closed by the load object iterator function. text_base and data_base are the addresses where the text and data segments of the load object are mapped in the target process.

Whenever the target process opens or closes a dynamic object, the set of available probes may change. See dlopen(3C) and dlclose(3C). In indirect mode, call tnfctl_check_libs() when such events occur to make libtnfctl aware of any changes. In other modes this is unnecessary but harmless. It is also harmless to call tnfctl_check_libs() when no such events have occurred.

Return Values

tnfctl_indirect_open() and tnfctl_check_libs() return TNFCTL_ERR_NONE upon success.

Errors

The following error codes apply to tnfctl_indirect_open():

TNFCTL_ERR_ALLOCFAIL

A memory allocation failure occurred.

TNFCTL_ERR_BUSY

Internal tracing is being used.

TNFCTL_ERR_NOLIBTNFPROBE

libtnfprobe.so.1 is not loaded in the target process.

TNFCTL_ERR_INTERNAL

An internal error occurred.

The following error codes apply to tnfctl_check_libs():

TNFCTL_ERR_ALLOCFAIL

A memory allocation failure occurred.

TNFCTL_ERR_INTERNAL

An internal error occurred.

Attributes

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

ATTRIBUTE TYPE
ATTRIBUTE VALUE
Availability
system/tnf
MT Level
MT-Safe

See Also

prex(1), TNF_PROBE(3TNF), dlclose(3C), dlopen(3C), libtnfctl(3TNF), tnfctl_probe_enable(3TNF), tnfctl_probe_trace(3TNF), tracing(3TNF), proc(4), attributes(5)

Linker and Libraries Guide

Notes

tnfctl_indirect_open() should only be called after the dynamic linker has mapped in all the libraries (rtld sync point) and called only after the process is stopped. Indirect process probe control assumes the target process is stopped whenever any libtnfctl interface is used on it. For example, when used for indirect process probe control, tnfctl_probe_enable(3TNF) and tnfctl_probe_trace(3TNF) should be called only for a process that is stopped.