UM C API  6.16
lbm.h File Reference

Ultra Messaging (UM) Core API. The "lbm.h" header file defines the main APIs to use Ultra Messaging. For many applications, this is the only header file needed. The binary code is contained in the "lbm" library (dynamic on Unix: "liblbm.so", static on Unix: "liblbm.a", dynamic only on Windows: "lbm.dll"). See UM C API for general information on the C API. See Fundamental Concepts for an introduction to Ultra Messaging. More...

#include <inttypes.h>

Go to the source code of this file.

Data Structures

struct  lbm_iovec_t_stct
 Structure, struct iovec compatible, that holds information about buffers used for vectored sends. More...
 
struct  lbm_ipv4_address_mask_t_stct
 Structure that holds an IPv4 address and a CIDR style netmask. More...
 
struct  lbm_timeval_t_stct
 Structure that holds seconds and microseconds since midnight, Jan 1, 1970 UTC. More...
 
struct  lbm_timespec_t_stct
 Structure that holds seconds and nanoseconds since midnight, Jan 1, 1970 UTC. More...
 
struct  lbm_src_event_wakeup_t_stct
 Structure that holds source wakeup event data. More...
 
struct  lbm_src_event_flight_size_notification_t_stct
 Structure that holds flight size notification event data. More...
 
struct  lbm_src_event_ume_registration_t_stct
 DEPRECATED, do not use. More...
 
struct  lbm_src_event_ume_registration_ex_t_stct
 Structure that holds Store registration information for the UMP source in an extended form. More...
 
struct  lbm_src_event_ume_registration_complete_ex_t_stct
 Structure that holds information for sources after registration is complete to all involved Stores. More...
 
struct  lbm_src_event_ume_deregistration_ex_t_stct
 Structure that holds Store deregistration information for the UMP source in an extended form. More...
 
struct  lbm_src_event_timestamp_info_t_stct
 Structure that holds the High Resolution Timestamp and sequence number associated with the sent message. More...
 
struct  lbm_msg_ume_registration_t_stct
 DEPRECATED, NOT USED. More...
 
struct  lbm_msg_ume_registration_ex_t_stct
 Structure that holds Store registration information for the UM persistent receiver after a successful registration. More...
 
struct  lbm_msg_ume_registration_complete_ex_t_stct
 Structure that holds information for receivers after registration is complete to all involved Stores. More...
 
struct  lbm_msg_ume_deregistration_ex_t_stct
 Structure that holds Store deregistration information for the UM receiver after a successful deregistration. More...
 
struct  lbm_src_event_ume_ack_info_t_stct
 Structure that holds ACK information for a given message. More...
 
struct  lbm_src_event_ume_ack_ex_info_t_stct
 Structure that holds ACK information for a given message in an extended form. More...
 
struct  lbm_flight_size_inflight_t_stct
 Structure that holds information for source total inflight messages and bytes See lbm_flight_size_inflight_t_stct for field definitions. More...
 
struct  lbm_umq_index_info_t_stct
 Structure that holds information used for sending and receiving messages with UMQ indices. More...
 
struct  lbm_msg_umq_index_assignment_eligibility_stop_complete_ex_t_stct
 Structure that holds index assignment information for queuing receivers when an index stops. More...
 
struct  lbm_msg_umq_index_assigned_ex_t_stct
 Structure that holds beginning-of-index information for queuing receivers. More...
 
struct  lbm_msg_umq_index_released_ex_t_stct
 Structure that holds end-of-index information for queuing receivers. More...
 
struct  lbm_msg_umq_index_assignment_eligibility_start_complete_ex_t_stct
 Structure that holds index assignment information for queuing receivers to indicate the start of index assignment. More...
 
struct  lbm_umq_msg_total_lifetime_info_t_stct
 Structure that holds UMQ message total lifetime information. More...
 
union  lbm_hf_sequence_number_t_stct
 Structure to hold a hot failover sequence number. More...
 
struct  lbm_umq_msgid_t_stct
 Structure that holds information for UMQ messages that allows the message to be identified uniquely. More...
 
struct  lbm_umq_queue_application_set_t_stct
 Structure for defining a UMQ application set. More...
 
struct  lbm_umq_queue_topic_t_stct
 Structure that holds queue topic information and can be used as a handle to a queue topic. More...
 
struct  lbm_umq_queue_topic_status_t
 Struct containing extended asynchronous operation status information about a single UMQ topic. More...
 
struct  lbm_ctx_umq_queue_topic_list_info_t
 Struct containing an array of queue topics retrieved via lbm_umq_queue_topic_list. More...
 
struct  lbm_umq_queue_msg_status_t
 Struct containing extended asynchronous operation status information about a single UMQ message. More...
 
struct  lbm_rcv_umq_queue_msg_list_info_t
 Struct containing an array of UMQ messages listed via lbm_rcv_umq_queue_msg_list. More...
 
struct  lbm_rcv_umq_queue_msg_retrieve_info_t
 Struct containing an array of UMQ messages retrieved via lbm_rcv_umq_queue_msg_retrieve. More...
 
struct  lbm_async_operation_info_t
 Results struct returned via the user-specified asynchronous operation callback from any asynchronous API. More...
 
struct  lbm_resolver_event_info_t_stct
 Resolver event structure (for UM internal use only). More...
 
struct  lbm_resolver_event_advertisement_t_stct
 Advertisement event structure (for UM internal use only). More...
 
struct  lbm_resolver_event_func_t_stct
 Resolver event function (for UM internal use only). More...
 
struct  lbm_mem_mgt_callbacks_t_stct
 Structure that holds the application function to configure Smart Source memory management. More...
 
struct  lbm_process_events_info_t_stct
 Structure that holds information for the extended Process Events calls. More...
 
struct  lbm_async_operation_func_t
 Structure that holds information for asynchronous operation callbacks. More...
 
struct  lbm_src_send_ex_info_t_stct
 Structure that holds information for the extended send calls. More...
 
struct  lbm_ssrc_send_ex_info_t_stct
 Structure that holds information for the extended smart source send calls. More...
 
struct  lbm_ume_rcv_regid_ex_func_info_t_stct
 Structure that holds information for UMP receiver registration ID application callbacks. More...
 
struct  lbm_src_event_sequence_number_info_t_stct
 Structure that holds sequence number information for a message sent by a source. More...
 
struct  lbm_ume_rcv_recovery_info_ex_func_info_t_stct
 Structure that holds information for UMP receiver recovery sequence number info application callbacks. More...
 
struct  lbm_src_event_umq_message_id_info_t_stct
 Structure that holds Message ID information for a message sent by a sending UMQ application. More...
 
struct  lbm_context_event_umq_registration_ex_t_stct
 Structure that holds queue registration information for the UMQ context in an extended form. More...
 
struct  lbm_context_event_umq_registration_complete_ex_t_stct
 Structure that holds information for contexts after registration is complete to all involved queue instances. More...
 
struct  lbm_src_event_umq_registration_complete_ex_t_stct
 Structure that holds information for sources after registration is complete to all involved queue instances. More...
 
struct  lbm_msg_umq_registration_complete_ex_t_stct
 Structure that holds queue information for queuing receivers after registration is complete to all involved queue instances. More...
 
struct  lbm_src_event_umq_stability_ack_info_ex_t_stct
 Structure that holds UMQ ACK information for a given message in an extended form. More...
 
struct  lbm_msg_umq_deregistration_complete_ex_t_stct
 Structure that holds information for queuing receivers after they de-register from a queue. More...
 
struct  lbm_src_event_umq_ulb_receiver_info_ex_t_stct
 Structure that holds UMQ ULB receiver information in an extended form. More...
 
struct  lbm_src_event_umq_ulb_message_info_ex_t_stct
 Structure that holds UMQ ULB message information in an extended form. More...
 
struct  lbm_datagram_acceleration_recv_info_t_stct
 Information returned from lbm_datagram_acceleration_recvfrom_function_t function. More...
 
struct  lbm_datagram_acceleration_func_t_stct
 A structure used to hold functions to configure datagram acceleration implementation callbacks. More...
 
struct  lbm_str_hash_func_t_stct
 Structure that holds the hash function callback information. More...
 
struct  lbm_str_hash_func_ex_t_stct
 Structure that holds the extended hash function callback information. More...
 
struct  lbm_src_notify_func_t_stct
 Structure that holds the context application function to configure the callback when new sources are discovered. More...
 
struct  lbm_rcv_batch_notify_func_t_stct
 UM internal use only. DO NOT USE. More...
 
struct  lbm_wildcard_rcv_compare_func_t_stct
 Structure that holds the application callback function to configure "appcb" type wildcard pattern type. More...
 
struct  lbm_ume_rcv_regid_func_t_stct
 Structure that holds the application function to configure the callback for registration ID setting. More...
 
struct  lbm_ume_rcv_regid_ex_func_t_stct
 Structure that holds the application function to configure the callback for registration ID setting, extended form. More...
 
struct  lbm_ume_src_force_reclaim_func_t_stct
 Structure that holds the application function to configure the forced reclamation notification callback. More...
 
struct  lbm_mim_unrecloss_func_t_stct
 Structure that holds the application callback for multicast immediate message unrecoverable loss notification. More...
 
struct  lbm_ume_rcv_recovery_info_ex_func_t_stct
 Structure that holds the application function to configure the callback for recovery sequence number information, extended form. More...
 
struct  lbm_ume_store_entry_t_stct
 Structure that holds information to configure a persistent Store. More...
 
struct  lbm_ucast_resolver_entry_t_stct
 Structure that holds information to configure a unicast resolver daemon. More...
 
struct  lbm_resolver_service_entry_t_stct
 Structure that holds information to configure a Resolver Service. More...
 
struct  lbm_transport_broker_entry_t_stct
 Structure that holds IP and Port to configure the broker. More...
 
struct  lbm_ume_store_name_entry_t_stct
 Structure that holds information to configure a persistent Store. More...
 
struct  lbm_ume_store_group_entry_t_stct
 Structure that holds information to configure a Persistent Store group. More...
 
struct  lbm_rcv_src_notification_func_t_stct
 Structure that holds the receiver application functions when configuring callbacks when sources are subscribed or unsubscribed. More...
 
struct  ume_liveness_receiving_context_t_stct
 Structure that holds the information about a receiving context. More...
 
struct  lbm_ume_ctx_rcv_ctx_notification_func_t_stct
 Structure that holds the application callback for receiving context status notifications for source context. More...
 
struct  lbm_umq_queue_entry_t_stct
 Structure that holds queue registration information to configure a queuing broker. More...
 
struct  lbm_umq_ulb_receiver_type_entry_t_stct
 Structure that holds ULB queue information to configure an application set. More...
 
struct  lbm_umq_ulb_application_set_attr_t_stct
 Structure that holds information to configure any of several ULB source's application set attributes. The attribute being set is determined by the configuration option. More...
 
struct  lbm_umq_ulb_receiver_type_attr_t_stct
 Structure that holds information to configure any of several ULB source's receiver type attributes. The attribute being set is determined by the configuration option. More...
 
struct  lbm_context_src_event_func_t_stct
 Structure that holds the application callback to configure context-level source events. More...
 
struct  lbm_context_event_func_t_stct
 Structure that holds the application function to configure the callback for context-level events. More...
 
struct  lbm_serialized_response_t_stct
 Structure that holds a serialized UM response object. More...
 
struct  lbm_msg_fragment_info_t_stct
 Structure that holds fragment information for UM messages when appropriate. More...
 
struct  lbm_msg_gateway_info_t_stct
 DEPRECATED, do not use. More...
 
struct  lbm_msg_channel_info_t_stct
 Structure that represents UMS Spectrum channel information. More...
 
struct  lbm_msg_t_stct
 Information structure for receive events delivered to receiver callback lbm_rcv_cb_proc. More...
 
struct  lbm_context_rcv_immediate_msgs_func_t_stct
 Structure that holds the application function to configure a callback for receiving certain immediate mode messages (UIM). More...
 
struct  lbm_transport_source_info_t_stct
 Structure that holds parsed transport source strings. More...
 
struct  lbm_src_cost_func_t_stct
 Structure that holds the source_cost_evaluation_function (context) context option. More...
 
struct  lbm_config_option_stct_t
 Config option structure holding the option name and value via string types. More...
 
struct  lbm_wildcard_rcv_create_func_t_stct
 Structure that holds the receiver creation function to configure the wildcard receiver create callback. More...
 
struct  lbm_wildcard_rcv_delete_func_t_stct
 Structure that holds the receiver deletion function information to configure the wildcard receiver delete callback. More...
 
struct  lbm_src_transport_stats_tcp_t_stct
 Structure that holds datagram statistics for source TCP transports. More...
 
struct  lbm_src_transport_stats_lbtrm_t_stct
 Structure that holds datagram statistics for source LBT-RM transports. More...
 
struct  lbm_src_transport_stats_daemon_t_stct
 DEPRECATED, do not use. More...
 
struct  lbm_src_transport_stats_lbtru_t_stct
 Structure that holds datagram statistics for source LBT-RU transports. More...
 
struct  lbm_src_transport_stats_lbtipc_t_stct
 Structure that holds datagram statistics for source LBT-IPC transports. More...
 
struct  lbm_src_transport_stats_lbtsmx_t_stct
 Structure that holds datagram statistics for source LBT-SMX transports. More...
 
struct  lbm_src_transport_stats_lbtrdma_t_stct
 DEPRECATED, do not use. lbt-rdma is no longer supported. More...
 
struct  lbm_src_transport_stats_broker_t_stct
 Structure that holds datagram statistics for source BROKER transports. More...
 
struct  lbm_src_transport_stats_t_stct
 Structure that holds statistics for source transports. More...
 
struct  lbm_rcv_transport_stats_tcp_t_stct
 Structure that holds datagram statistics for receiver TCP transports. More...
 
struct  lbm_rcv_transport_stats_lbtrm_t_stct
 Structure that holds datagram statistics for receiver LBT-RM transports. More...
 
struct  lbm_rcv_transport_stats_daemon_t_stct
 DEPRECATED, do not use. More...
 
struct  lbm_rcv_transport_stats_lbtru_t_stct
 Structure that holds datagram statistics for receiver LBT-RU transports. More...
 
struct  lbm_rcv_transport_stats_lbtipc_t_stct
 Structure that holds datagram statistics for receiver LBT-IPC transports. More...
 
struct  lbm_rcv_transport_stats_lbtsmx_t_stct
 Structure that holds datagram statistics for receiver LBT-SMX transports. More...
 
struct  lbm_rcv_transport_stats_lbtrdma_t_stct
 DEPRECATED, do not use. LBT-RDMA is no longer supported. More...
 
struct  lbm_rcv_transport_stats_broker_t_stct
 Structure that holds message statistics for receiver BROKER transports. More...
 
struct  lbm_rcv_transport_stats_t_stct
 Structure that holds statistics for receiver transports. More...
 
struct  lbm_event_queue_stats_t_stct
 Structure that holds statistics for an event queue. More...
 
struct  lbm_context_stats_t_stct
 Structure that holds statistics for a context. More...
 
struct  lbm_rcv_topic_stats_t_stct
 Structure that holds statistics for a receiver topic. More...
 
struct  lbm_wildcard_rcv_stats_t_stct
 Structure that holds statistics for a wildcard receiver. More...
 
struct  lbm_event_queue_cancel_cb_info_t_stct
 Structure passed to cancel/delete functions so that a cancel callback may be called. More...
 
struct  lbm_apphdr_chain_elem_t_stct
 Structure that represents an element in an app header chain. More...
 
struct  lbm_msg_properties_iter_t_stct
 A struct used for iterating over properties pointed to by an lbm_msg_properties_t. The iterator is used to access the fields of a property. More...
 
struct  lbm_umm_info_t_stct
 Structure for specifying UMM daemon connection options. More...
 
struct  lbm_xsp_zero_transports_func_t_stct
 Structure that holds the XSP zero transports function. More...
 
struct  lbm_new_transport_info_t_stct
 Structure that holds information about a transport session that we're about to join. More...
 
struct  lbm_transport_mapping_func_t_stct
 Structure that holds the application function to configure the XSP transport mapping function callback. More...
 

Macros

#define LBM_VERS_MAJOR   6
 
#define LBM_VERS_MINOR   16
 
#define LBM_VERS_MAINT   0
 
#define LBM_VERS_SFX   0
 
#define LBM_VERS_TAG   ""
 
#define LBM_VERS   (LBM_VERS_MAJOR*10000+LBM_VERS_MINOR*100+LBM_VERS_MAINT)
 
#define PRIuSZ   "zu"
 
#define PRIuSZcast(x)   (size_t)(x)
 
#define SCNuSZ   "zu"
 
#define SCNuSZcast(x)   (size_t * )(x)
 
#define LBMExpDLL
 
#define LBM_EINVAL   1
 Value returned by lbm_errnum() indicating an invalid argument was passed.
 
#define LBM_EWOULDBLOCK   2
 Value returned by lbm_errnum() indicating send function would have blocked, but send was LBM_SRC_NONBLOCK. More...
 
#define LBM_ENOMEM   3
 Value returned by lbm_errnum() indicating operation could not be completed due to memory allocation error.
 
#define LBM_EOP   4
 Value returned by lbm_errnum() indicating operation was invalid due to error in internal processing.
 
#define LBM_EOS   5
 Value returned by lbm_errnum() indicating operation failed due to unrecoverable OS system call error.
 
#define LBM_ETIMEDOUT   6
 Value returned by lbm_errnum() indicating operation timed out waiting to complete.
 
#define LBM_EDAEMONCONN   7
 Value returned by lbm_errnum() indicating UM daemon connection not connected.
 
#define LBM_EUMENOREG   8
 Value returned by lbm_errnum() indicating registration not completed.
 
#define LBM_EOPNOTSUPP   9
 Value returned by lbm_errnum() indicating operation is not supported.
 
#define LBM_EINPROGRESS   10
 Value returned by lbm_errnum() indicating operation in progress.
 
#define LBM_ENO_QUEUE_REG   11
 lbm_errnum() The queue is not fully registered.
 
#define LBM_ENO_STORE_REG   12
 lbm_errnum() the Store is not fully registered.
 
#define LBM_EMSG_SELECTOR   14
 lbm_errnum() Error parsing message selector.
 
#define LBM_MSG_DATA   0
 Value for lbm_msg_t::type indicating reception of a Data message, delivered to receiver callback lbm_rcv_cb_proc. More...
 
#define LBM_MSG_EOS   1
 Value for lbm_msg_t::type indicating End of Transport Session, delivered to receiver callback lbm_rcv_cb_proc. More...
 
#define LBM_MSG_REQUEST   2
 Value for lbm_msg_t::type indicating reception of a Request message, delivered to receiver callback lbm_rcv_cb_proc. More...
 
#define LBM_MSG_RESPONSE   3
 Value for lbm_msg_t::type indicating reception of a Response message, delivered to receiver callback lbm_rcv_cb_proc. More...
 
#define LBM_MSG_UNRECOVERABLE_LOSS   4
 Value for lbm_msg_t::type indicating that a lost message could not be recovered within the configured parameters, delivered to receiver callback lbm_rcv_cb_proc. More...
 
#define LBM_MSG_UNRECOVERABLE_LOSS_BURST   5
 Value for lbm_msg_t::type indicating that a series of consecutive lost messages exceeded the configured limit delivery_control_maximum_burst_loss (receiver), delivered to receiver callback lbm_rcv_cb_proc. More...
 
#define LBM_MSG_NO_SOURCE_NOTIFICATION   6
 Value for lbm_msg_t::type indicating that no source has yet been found for the requested topic for a time exceeding the configured limit, delivered to receiver callback lbm_rcv_cb_proc. More...
 
#define LBM_MSG_UME_REGISTRATION_ERROR   7
 Value for lbm_msg_t::type indicating that the persistent Store has rejected the receiver's registration, delivered to receiver callback lbm_rcv_cb_proc. More...
 
#define LBM_MSG_UME_REGISTRATION_SUCCESS   8
 Value for lbm_msg_t::type. DEPRECATED, do not use. More...
 
#define LBM_MSG_UME_REGISTRATION_CHANGE   9
 Value for lbm_msg_t::type indicating a change in the receiver's registration status, delivered to receiver callback lbm_rcv_cb_proc. More...
 
#define LBM_MSG_UME_REGISTRATION_SUCCESS_EX   10
 Value for lbm_msg_t::type indicating that a persistent Store has accepted the receiver's changed registration, delivered to receiver callback lbm_rcv_cb_proc. More...
 
#define LBM_MSG_UME_REGISTRATION_COMPLETE_EX   11
 Value for lbm_msg_t::type indicating successful persistent receiver registration with a quorum of Stores, delivered to receiver callback lbm_rcv_cb_proc. More...
 
#define LBM_MSG_UME_DEREGISTRATION_SUCCESS_EX   12
 Value for lbm_msg_t::type indicating successful persistent receiver deregistration from one Store, delivered to receiver callback lbm_rcv_cb_proc. More...
 
#define LBM_MSG_UME_DEREGISTRATION_COMPLETE_EX   13
 Value for lbm_msg_t::type indicating successful persistent receiver deregistration from all Stores, delivered to receiver callback lbm_rcv_cb_proc. More...
 
#define LBM_MSG_UMQ_REGISTRATION_ERROR   16
 Value for lbm_msg_t::type indicating that the queue has rejected the receiver's registration, delivered to receiver callback lbm_rcv_cb_proc. More...
 
#define LBM_MSG_UMQ_REGISTRATION_COMPLETE_EX   18
 Value for lbm_msg_t::type indicating queuing receiver registration, delivered to receiver callback lbm_rcv_cb_proc. More...
 
#define LBM_MSG_UMQ_DEREGISTRATION_COMPLETE_EX   19
 Value for lbm_msg_t::type indicating successful queuing receiver deregistration, delivered to receiver callback lbm_rcv_cb_proc. More...
 
#define LBM_MSG_BOS   20
 Value for lbm_msg_t::type indicating the beginning of a receive-side transport session, delivered to receiver callback lbm_rcv_cb_proc. More...
 
#define LBM_MSG_UMQ_INDEX_ASSIGNMENT_ELIGIBILITY_ERROR   21
 Value for lbm_msg_t::type indicating an error while attempting to start or stop a queuing message assignment, delivered to receiver callback lbm_rcv_cb_proc. More...
 
#define LBM_MSG_UMQ_INDEX_ASSIGNMENT_ELIGIBILITY_START_COMPLETE_EX   22
 Value for lbm_msg_t::type indicating the start of index assignment eligibility or index assignment, delivered to receiver callback lbm_rcv_cb_proc. More...
 
#define LBM_MSG_UMQ_INDEX_ASSIGNMENT_ELIGIBILITY_STOP_COMPLETE_EX   23
 Value for lbm_msg_t::type indicating the end of index assignment eligibility or index assignment, delivered to receiver callback lbm_rcv_cb_proc. More...
 
#define LBM_MSG_UMQ_INDEX_ASSIGNED_EX   24
 Value for lbm_msg_t::type indicating the start of index, delivered to receiver callback lbm_rcv_cb_proc. More...
 
#define LBM_MSG_UMQ_INDEX_RELEASED_EX   25
 Value for lbm_msg_t::type indicating the end of an index, delivered to receiver callback lbm_rcv_cb_proc. More...
 
#define LBM_MSG_UMQ_INDEX_ASSIGNMENT_ERROR   26
 Value for lbm_msg_t::type indicating an error assigning an index, delivered to receiver callback lbm_rcv_cb_proc. More...
 
#define LBM_MSG_HF_RESET   27
 Value for lbm_msg_t::type indicating the source invoked lbm_hf_src_send_rcv_reset() to reset HF sequence numbers, delivered to receiver callback lbm_rcv_cb_proc. More...
 
#define LBM_MSG_RESERVED_1   28
 Value for lbm_msg_t::type. NOT USED. Reserved for future use.
 
#define LBM_MSG_START_BATCH   0x1
 Value passed to "flag" parameter in send call. DEPRECATED, do not use. Starts an explicit batch of messages. See Explicit Batching.
 
#define LBM_MSG_END_BATCH   0x2
 Value passed to "flag" parameter in send call. DEPRECATED, do not use. Ends an explicit batch of messages. See Explicit Batching.
 
#define LBM_MSG_COMPLETE_BATCH   0x3 /* same as START | END */
 Value passed to "flag" parameter in send call. DEPRECATED, do not use. Indicates that this message is the entire batch (both start and end). See Explicit Batching.
 
#define LBM_MSG_FLUSH   0x4
 Flag passed to a source send call (e.g. lbm_src_send(), lbm_src_send_ex() etc) : Message is to be sent ASAP (not implicitly or explicitly batched). More...
 
#define LBM_SRC_NONBLOCK   0x8
 Flag passed to a source send call (e.g. lbm_src_send(), lbm_src_send_ex() etc) : If message could not be sent immediately return and error and signal LBM_EWOULDBLOCK.
 
#define LBM_SRC_BLOCK_TEMP   0x10
 reserved for future use
 
#define LBM_SRC_BLOCK   0x20
 Flag passed to a source send call (e.g. lbm_src_send(), lbm_src_send_ex() etc) : Block the caller indefinitely until the message is sent. More...
 
#define LBM_MSG_IOV_GATHER   0x40
 Flag passed to a source send vectored call (e.g. lbm_src_sendv(), lbm_src_sendv_ex() etc) : iovec elements should be gather into a single message.
 
#define LBM_MSG_BUFF_ALLOC   0x100
 Flag passed to the lbm source send call lbm_src_send() to indicate that the msg buffer passed was allocated with lbm_src_alloc_msg_buff() and should be sent using the Zero-Copy Send API feature. NOTE: This flag is only intended to work with lbm_src_send() call. Using it with other source send functions can cause unexpected behavior.
 
#define LBM_RCV_NONBLOCK   0x8
 reserved for future use
 
#define LBM_RCV_BLOCK_TEMP   0x10
 reserved for future use
 
#define LBM_RCV_BLOCK   0x20
 reserved for future use
 
#define LBM_MSG_FLAG_START_BATCH   0x1
 lbm_msg_t::flags. Message starts a batch.
 
#define LBM_MSG_FLAG_END_BATCH   0x2
 lbm_msg_t::flags. Message ends a batch.
 
#define LBM_MSG_FLAG_HF_PASS_THROUGH   0x4
 lbm_msg_t::flags. Message is a passed-through Hot Failover message.
 
#define LBM_MSG_FLAG_UME_RETRANSMIT   0x8
 lbm_msg_t::flags. Message is a UMP retransmission.
 
#define LBM_MSG_FLAG_RETRANSMIT   0x8
 lbm_msg_t::flags. Message is a retransmission.
 
#define LBM_MSG_FLAG_IMMEDIATE   0x10
 lbm_msg_t::flags. Message is an immediate message.
 
#define LBM_MSG_FLAG_HF_DUPLICATE   0x20
 lbm_msg_t::flags. Message is a Hot Failover duplicate message.
 
#define LBM_MSG_FLAG_UMQ_REASSIGNED   0x40
 lbm_msg_t::flags. Message is a UMQ message that has been re-assigned at least once.
 
#define LBM_MSG_FLAG_UMQ_RESUBMITTED   0x80
 lbm_msg_t::flags. Message is a UMQ message that has been resubmitted at least once.
 
#define LBM_MSG_FLAG_TOPICLESS   0x100
 lbm_msg_t::flags. Message has no topic.
 
#define LBM_MSG_FLAG_DELIVERY_LATENCY   0x200
 lbm_msg_t::flags. For UM internal use only.
 
#define LBM_MSG_FLAG_HF_OPTIONAL   0x400
 lbm_msg_t::flags. Message is a Hot Failover optional message.
 
#define LBM_MSG_FLAG_HF_32   0x800
 lbm_msg_t::flags. Message contains a 32 bit hot failover sequence number
 
#define LBM_MSG_FLAG_HF_64   0x1000
 lbm_msg_t::flags. Message contains a 64 bit hot failover sequence number.
 
#define LBM_MSG_FLAG_OTR   0x2000
 lbm_msg_t::flags. Message was recovered via OTR
 
#define LBM_MSG_FLAG_UME_SRC_REGID   0x4000
 lbm_msg_t::flags. For UM internal use only.
 
#define LBM_MSG_FLAG_NUMBERED_CHANNEL   0x1
 lbm_msg_channel_info_t::flags. Message was sent on a numbered channel
 
#define LBM_TOPIC_RES_REQUEST_GW_REMOTE_INTEREST   0x40
 Flag passed to lbm_context_topic_resolution_request() to request each Gateway to propagate remote interest.
 
#define LBM_TOPIC_RES_REQUEST_CONTEXT_QUERY   0x20
 Flag passed to lbm_context_topic_resolution_request() to request contexts to query for other contexts.
 
#define LBM_TOPIC_RES_REQUEST_CONTEXT_ADVERTISEMENT   0x10
 Flag passed to lbm_context_topic_resolution_request() to request contexts to re-advertise.
 
#define LBM_TOPIC_RES_REQUEST_RESERVED1   0x08
 reserved for UM internal use
 
#define LBM_TOPIC_RES_REQUEST_ADVERTISEMENT   0x04
 Flag passed to lbm_context_topic_resolution_request() to request sources to re-advertise.
 
#define LBM_TOPIC_RES_REQUEST_QUERY   0x02
 Flag passed to lbm_context_topic_resolution_request() to request receivers to query for source.
 
#define LBM_TOPIC_RES_REQUEST_WILDCARD_QUERY   0x01
 Flag passed to lbm_context_topic_resolution_request() to request wildcard receivers to query for source.
 
#define LBM_SRC_EVENT_CONNECT   1
 Value for "event" parameter of source event callback lbm_src_cb_proc indicating the first or initial receiver of a subscribing application has joined the source's transport session. The "ed" parameter of source event callback should be ignored. More...
 
#define LBM_SRC_EVENT_DISCONNECT   2
 Value for "event" parameter of source event callback lbm_src_cb_proc indicating the last or final receiver of a subscribing application has left the source's transport session. More...
 
#define LBM_SRC_EVENT_WAKEUP   3
 Value for "event" parameter of source event callback lbm_context_src_cb_proc and lbm_src_cb_proc indicating the application can send more messages. More...
 
#define LBM_SRC_EVENT_DAEMON_CONFIRM   4
 Value for "event" parameter of source event callback lbm_src_cb_proc. More...
 
#define LBM_SRC_EVENT_UME_REGISTRATION_ERROR   5
 Value for "event" parameter of source event callback lbm_src_cb_proc indicating persistent registration of source failed. The "ed" parameter of the source event callback should be cast to (char *), and contains an error message as a null-terminated string.
 
#define LBM_SRC_EVENT_UME_REGISTRATION_SUCCESS   6
 Value for "event" parameter of source event callback lbm_src_cb_proc. More...
 
#define LBM_SRC_EVENT_UME_MESSAGE_STABLE   7
 Value for "event" parameter of source event callback lbm_src_cb_proc. More...
 
#define LBM_SRC_EVENT_UME_DELIVERY_CONFIRMATION   8
 Value for "event" parameter of source event callback lbm_src_cb_proc. More...
 
#define LBM_SRC_EVENT_UME_STORE_UNRESPONSIVE   9
 Value for "event" parameter of source event callback lbm_src_cb_proc indicating a Store has not been active for the Store activity timeout (see ume_store_activity_timeout (source)). More...
 
#define LBM_SRC_EVENT_UME_MESSAGE_RECLAIMED   10
 Value for "event" parameter of source event callback lbm_src_cb_proc indicating a message is being reclaimed. This is the older form. See LBM_SRC_EVENT_UME_MESSAGE_RECLAIMED_EX for an expanded form of this event. More...
 
#define LBM_SRC_EVENT_UME_REGISTRATION_SUCCESS_EX   11
 Value for "event" parameter of source event callbacks lbm_src_cb_proc and lbm_ssrc_cb_proc indicating the source successfully registered with a Store. Note that since this represents a single Store's acceptance, this does not mean that registration is complete; see LBM_SRC_EVENT_UME_REGISTRATION_COMPLETE_EX. More...
 
#define LBM_SRC_EVENT_UME_REGISTRATION_COMPLETE_EX   12
 Value for "event" parameter of source event callbacks lbm_src_cb_proc and lbm_ssrc_cb_proc indicating the source successfully registered with a quorum of Stores. The application can now send messages. More...
 
#define LBM_SRC_EVENT_UME_MESSAGE_STABLE_EX   13
 Value for "event" parameter of source event callbacks lbm_src_cb_proc and lbm_ssrc_cb_proc indicating that a message is stable on the Store. More...
 
#define LBM_SRC_EVENT_UME_DELIVERY_CONFIRMATION_EX   14
 Value for "event" parameter of source event callbacks lbm_src_cb_proc and lbm_ssrc_cb_proc indicating that a receiver has confirmed delivery of a message. More...
 
#define LBM_SRC_EVENT_SEQUENCE_NUMBER_INFO   15
 Value for "event" parameter of source event callbacks lbm_src_cb_proc and lbm_ssrc_cb_proc indicating the assigned sequence number of a message being sent. This callback is made synchronously with a lbm_src_send_ex() call (or equivalent). More...
 
#define LBM_SRC_EVENT_UMQ_REGISTRATION_ERROR   16
 Value for "event" parameter of source event callback lbm_src_cb_proc indicating failure to register with the queuing broker. More...
 
#define LBM_SRC_EVENT_UMQ_MESSAGE_ID_INFO   17
 Value for "event" parameter of source event callback lbm_src_cb_proc indicating the queuing message ID being assigned to the message being sent. More...
 
#define LBM_SRC_EVENT_UMQ_REGISTRATION_COMPLETE_EX   18
 Value for "event" parameter of source event callback lbm_src_cb_proc indicating registration with the queuing broker is complete. More...
 
#define LBM_SRC_EVENT_UMQ_MESSAGE_STABLE_EX   19
 Value for "event" parameter of source event callback lbm_src_cb_proc indicating a message is stable on the queuing broker. More...
 
#define LBM_SRC_EVENT_UMQ_ULB_MESSAGE_ASSIGNED_EX   20
 Value for "event" parameter of source event callback lbm_src_cb_proc indicating a ULB message is has been assigned to a receiver. More...
 
#define LBM_SRC_EVENT_UMQ_ULB_MESSAGE_REASSIGNED_EX   21
 Value for "event" parameter of source event callback lbm_src_cb_proc indicating a ULB message is has been re-assigned to a different receiver. More...
 
#define LBM_SRC_EVENT_UMQ_ULB_MESSAGE_TIMEOUT_EX   22
 Value for "event" parameter of source event callback lbm_src_cb_proc indicating a ULB message has timed out and has exceeded its lifetime. The message is discarded. More...
 
#define LBM_SRC_EVENT_UMQ_ULB_MESSAGE_COMPLETE_EX   23
 Value for "event" parameter of source event callback lbm_src_cb_proc indicating that all ULB receiver application sets have confirmed that a ULB message has been received and processed. More...
 
#define LBM_SRC_EVENT_UMQ_ULB_MESSAGE_CONSUMED_EX   24
 Value for "event" parameter of source event callback lbm_src_cb_proc indicating that a ULB receiver has confirmed that a ULB message has been received and processed. More...
 
#define LBM_SRC_EVENT_UMQ_ULB_RECEIVER_REGISTRATION_EX   25
 Value for "event" parameter of source event callback lbm_src_cb_proc indicating that a ULB receiver has registered with this source. More...
 
#define LBM_SRC_EVENT_UMQ_ULB_RECEIVER_DEREGISTRATION_EX   26
 Value for "event" parameter of source event callback lbm_src_cb_proc indicating that a ULB receiver has de-registered with this source. More...
 
#define LBM_SRC_EVENT_UMQ_ULB_RECEIVER_READY_EX   27
 Value for "event" parameter of source event callback lbm_src_cb_proc indicating that a ULB receiver is ready to receive messages. More...
 
#define LBM_SRC_EVENT_UMQ_ULB_RECEIVER_TIMEOUT_EX   28
 Value for "event" parameter of source event callback lbm_src_cb_proc indicating that a ULB receiver has timed out and exceeded its lifetime. More...
 
#define LBM_SRC_EVENT_FLIGHT_SIZE_NOTIFICATION   29
 Value for "event" parameter of source event callbacks lbm_src_cb_proc, lbm_ssrc_cb_proc, and lbm_context_src_cb_proc indicating that a persistent, queuing, or ULB source has changed its flight size state. More...
 
#define LBM_SRC_EVENT_UME_MESSAGE_RECLAIMED_EX   30
 Value for "event" parameter of source event callbacks lbm_src_cb_proc and lbm_ssrc_cb_proc indicating a message is being reclaimed. This is the newer, expanded form. See LBM_SRC_EVENT_UME_MESSAGE_RECLAIMED for the older form. More...
 
#define LBM_SRC_EVENT_UME_DEREGISTRATION_SUCCESS_EX   31
 Value for "event" parameter of source event callbacks lbm_src_cb_proc and lbm_ssrc_cb_proc indicating the source successfully de-registered with a Store. Note that since this represents a single Store's deregistration, this does not mean that deregistration is complete; see LBM_SRC_EVENT_UME_DEREGISTRATION_COMPLETE_EX. More...
 
#define LBM_SRC_EVENT_UME_DEREGISTRATION_COMPLETE_EX   32
 Value for "event" parameter of source event callback lbm_src_cb_proc indicating the source successfully de-registered with all Stores. More...
 
#define LBM_SRC_EVENT_UME_MESSAGE_NOT_STABLE   33
 Value for "event" parameter of source event callbacks lbm_src_cb_proc and lbm_ssrc_cb_proc indicating the source gave up waiting for a quorum of Stores to acknowledge stability of a message. More...
 
#define LBM_SRC_EVENT_TIMESTAMP   34
 Value for "event" parameter of source event callback lbm_src_cb_proc indicating a high-resolution timestamp for a sent message. More...
 
#define LBM_CONTEXT_EVENT_UMQ_REGISTRATION_COMPLETE_EX   1
 Value for "event" parameter of context event callback lbm_context_event_cb_proc indicating the context has successfully registered with the queue broker. More...
 
#define LBM_CONTEXT_EVENT_UMQ_REGISTRATION_SUCCESS_EX   2
 Value for "event" parameter of context event callback lbm_context_event_cb_proc indicating the context has successfully registered with the queue broker. More...
 
#define LBM_CONTEXT_EVENT_UMQ_REGISTRATION_ERROR   3
 Value for "event" parameter of context event callback lbm_context_event_cb_proc indicating the context has successfully registered with the queue broker. More...
 
#define LBM_CONTEXT_EVENT_UMQ_INSTANCE_LIST_NOTIFICATION   4
 Value for "event" parameter of context event callback lbm_context_event_cb_proc indicating a change in the list of queue instances. More...
 
#define LBM_TRANSPORT_TYPE_TCP   0x00
 Transport type TCP.
 
#define LBM_TRANSPORT_TYPE_LBTRU   0x01
 Transport type LBT-RU.
 
#define LBM_TRANSPORT_TYPE_LBTSMX   0x4
 Transport type LBT-SMX.
 
#define LBM_TRANSPORT_TYPE_LBTRM   0x10
 Transport type LBT-RM.
 
#define LBM_TRANSPORT_TYPE_LBTIPC   0x40
 Transport type LBT-IPC.
 
#define LBM_TRANSPORT_TYPE_LBTRDMA   0x20
 Transport type LBT-RDMA.
 
#define LBM_TRANSPORT_TYPE_BROKER   0x80
 Transport type BROKER.
 
#define LBM_SECURITY_PROTOCOL_NONE   0x1
 No security.
 
#define LBM_SECURITY_PROTOCOL_TLS   0x2
 TLS 1.1 and above security.
 
#define LBM_CTX_ATTR_COMPRESSION_NONE   0
 
#define LBM_CTX_ATTR_COMPRESSION_LZ4   1
 
#define LBM_CTX_ATTR_OP_EMBEDDED   1
 Value for operational_mode (context) configuration option to enable Embedded Mode.
 
#define LBM_CTX_ATTR_OP_DAEMON   2
 Value for operational_mode (context) configuration option. DEPRECATED, do not use. More...
 
#define LBM_CTX_ATTR_OP_SEQUENTIAL   3
 Value for operational_mode (context) configuration option to enable Sequential Mode.
 
#define LBM_CTX_ATTR_FDTYPE_POLL   1
 
#define LBM_CTX_ATTR_FDTYPE_SELECT   2
 
#define LBM_CTX_ATTR_FDTYPE_WSAEV   3
 
#define LBM_CTX_ATTR_FDTYPE_WINCPORT   4
 
#define LBM_CTX_ATTR_FDTYPE_WINCPORT_OV   5
 
#define LBM_CTX_ATTR_FDTYPE_EPOLL   6
 
#define LBM_CTX_ATTR_FDTYPE_DEVPOLL   7
 
#define LBM_CTX_ATTR_FDTYPE_KQUEUE   8
 
#define LBM_CTX_ATTR_FDTYPE_WINRIOCPORT   9
 
#define LBM_CTX_ATTR_MON_TRANSPORT_LBM   1
 
#define LBM_CTX_ATTR_MON_TRANSPORT_LBMSNMP   2
 
#define LBM_CTX_ATTR_MON_FORMAT_CSV   1
 
#define LBM_CTX_ATTR_MON_FORMAT_PB   2
 
#define LBM_CTX_ATTR_IPC_RCV_THREAD_PEND   1
 
#define LBM_CTX_ATTR_IPC_RCV_THREAD_BUSY_WAIT   2
 
#define LBM_CTX_ATTR_FD_MANAGEMENT_BEHAVIOR_PEND   1
 
#define LBM_CTX_ATTR_FD_MANAGEMENT_BEHAVIOR_BUSY_WAIT   2
 
#define LBM_CTX_ATTR_RDMA_RCV_THREAD_PEND   1
 
#define LBM_CTX_ATTR_RDMA_RCV_THREAD_BUSY_WAIT   2
 
#define LBM_CTX_ATTR_RCV_THRD_POOL_CREATE   1
 
#define LBM_CTX_ATTR_RCV_THRD_POOL_DYNAMIC   2
 
#define LBM_CTX_ATTR_NET_COMPAT_MODE_DEFAULT   0x00000000
 
#define LBM_CTX_ATTR_NET_COMPAT_MODE_LBM_3_6   0x00030600
 
#define LBM_CTX_ATTR_NET_COMPAT_MODE_LBM_3_6_1   0x00030601
 
#define LBM_CTX_ATTR_NET_COMPAT_MODE_LBM_3_6_2   0x00030602
 
#define LBM_CTX_ATTR_NET_COMPAT_MODE_LBM_3_6_5   0x00030605
 
#define LBM_CTX_ATTR_NET_COMPAT_MODE_LBM_4_0   0x00040000
 
#define LBM_CTX_ATTR_NET_COMPAT_MODE_LBM_4_0_1   0x00040001
 
#define LBM_CTX_ATTR_NET_COMPAT_MODE_LBM_4_1   0x00040100
 
#define LBM_CTX_ATTR_NET_COMPAT_MODE_LBM_4_1_1   0x00040101
 
#define LBM_CTX_ATTR_NET_COMPAT_MODE_LBM_4_1_2   0x00040102
 
#define LBM_CTX_ATTR_NET_COMPAT_MODE_LBM_4_1_3   0x00040103
 
#define LBM_CTX_ATTR_NET_COMPAT_MODE_LBM_4_2_1   0x00040201
 
#define LBM_CTX_ATTR_NET_COMPAT_MODE_LBM_4_2_2   0x00040202
 
#define LBM_CTX_ATTR_NET_COMPAT_MODE_LBM_4_2_3   0x00040203
 
#define LBM_CTX_ATTR_NET_COMPAT_MODE_LBM_4_2_4   0x00040204
 
#define LBM_CTX_ATTR_NET_COMPAT_MODE_LBM_4_2_5   0x00040205
 
#define LBM_CTX_ATTR_NET_COMPAT_MODE_LBM_4_2_6   0x00040206
 
#define LBM_CTX_ATTR_NET_COMPAT_MODE_LBM_4_2_7   0x00040207
 
#define LBM_CTX_ATTR_NET_COMPAT_MODE_LBM_4_2_8   0x00040208
 
#define LBM_CTX_ATTR_NET_COMPAT_MODE_UME_3_0   0x01030000
 
#define LBM_CTX_ATTR_NET_COMPAT_MODE_UME_3_0_1   0x01030001
 
#define LBM_CTX_ATTR_NET_COMPAT_MODE_UME_3_0_2   0x01030002
 
#define LBM_CTX_ATTR_NET_COMPAT_MODE_UME_3_1   0x01030100
 
#define LBM_CTX_ATTR_NET_COMPAT_MODE_UME_3_1_1   0x01030101
 
#define LBM_CTX_ATTR_NET_COMPAT_MODE_UME_3_1_2   0x01030102
 
#define LBM_CTX_ATTR_NET_COMPAT_MODE_UME_3_1_3   0x01030103
 
#define LBM_CTX_ATTR_NET_COMPAT_MODE_UME_3_2_1   0x01030201
 
#define LBM_CTX_ATTR_NET_COMPAT_MODE_UME_3_2_2   0x01030202
 
#define LBM_CTX_ATTR_NET_COMPAT_MODE_UME_3_2_3   0x01030203
 
#define LBM_CTX_ATTR_NET_COMPAT_MODE_UME_3_2_4   0x01030204
 
#define LBM_CTX_ATTR_NET_COMPAT_MODE_UME_3_2_5   0x01030205
 
#define LBM_CTX_ATTR_NET_COMPAT_MODE_UME_3_2_6   0x01030206
 
#define LBM_CTX_ATTR_NET_COMPAT_MODE_UME_3_2_7   0x01030207
 
#define LBM_CTX_ATTR_NET_COMPAT_MODE_UME_3_2_8   0x01030208
 
#define LBM_CTX_ATTR_NET_COMPAT_MODE_UMQ_1_0   0x02010000
 
#define LBM_CTX_ATTR_NET_COMPAT_MODE_UMQ_1_1   0x02010100
 
#define LBM_CTX_ATTR_NET_COMPAT_MODE_UMQ_1_1_1   0x02010101
 
#define LBM_CTX_ATTR_NET_COMPAT_MODE_UMQ_2_0   0x02020000
 
#define LBM_CTX_ATTR_NET_COMPAT_MODE_UMQ_2_0_1   0x02020001
 
#define LBM_CTX_ATTR_NET_COMPAT_MODE_UMQ_2_1_1   0x02020101
 
#define LBM_CTX_ATTR_NET_COMPAT_MODE_UMQ_2_1_3   0x02020103
 
#define LBM_CTX_ATTR_NET_COMPAT_MODE_UMQ_2_1_4   0x02020104
 
#define LBM_CTX_ATTR_NET_COMPAT_MODE_UMQ_2_1_5   0x02020105
 
#define LBM_CTX_ATTR_NET_COMPAT_MODE_UMQ_2_1_6   0x02020106
 
#define LBM_CTX_ATTR_NET_COMPAT_MODE_UMQ_2_1_7   0x02020107
 
#define LBM_CTX_ATTR_NET_COMPAT_MODE_UMQ_2_1_8   0x02020108
 
#define LBM_CTX_ATTR_NET_COMPAT_MODE_UMQ_2_1_9   0x02020109
 
#define LBM_CTX_ATTR_NET_COMPAT_MODE_UMQ_2_1_10   0x0202010a
 
#define LBM_CTX_ATTR_NET_COMPAT_MODE_UM_5_0   0x03050000
 
#define LBM_CTX_ATTR_NET_COMPAT_MODE_UM_5_0_1   0x03050001
 
#define LBM_CTX_ATTR_NET_COMPAT_MODE_UM_5_1   0x03050100
 
#define LBM_CTX_ATTR_NET_COMPAT_MODE_UM_5_1_1   0x03050101
 
#define LBM_CTX_ATTR_NET_COMPAT_MODE_UM_5_1_2   0x03050102
 
#define LBM_CTX_ATTR_NET_COMPAT_MODE_UM_5_2   0x03050200
 
#define LBM_CTX_ATTR_NET_COMPAT_MODE_UM_5_2_1   0x03050201
 
#define LBM_CTX_ATTR_NET_COMPAT_MODE_UM_5_2_2   0x03050202
 
#define LBM_SRC_TOPIC_ATTR_TRANSPORT_TCP   LBM_TRANSPORT_TYPE_TCP
 
#define LBM_SRC_TOPIC_ATTR_TRANSPORT_LBTRM   LBM_TRANSPORT_TYPE_LBTRM
 
#define LBM_SRC_TOPIC_ATTR_TRANSPORT_LBTRU   LBM_TRANSPORT_TYPE_LBTRU
 
#define LBM_SRC_TOPIC_ATTR_TRANSPORT_LBTIPC   LBM_TRANSPORT_TYPE_LBTIPC
 
#define LBM_SRC_TOPIC_ATTR_TRANSPORT_LBTSMX   LBM_TRANSPORT_TYPE_LBTSMX
 
#define LBM_SRC_TOPIC_ATTR_TRANSPORT_LBTRDMA   LBM_TRANSPORT_TYPE_LBTRDMA
 
#define LBM_SRC_TOPIC_ATTR_TRANSPORT_BROKER   LBM_TRANSPORT_TYPE_BROKER
 
#define LBM_SRC_TOPIC_ATTR_TCP_MULTI_RECV_NORMAL   0
 
#define LBM_SRC_TOPIC_ATTR_TCP_MULTI_RECV_BOUNDED_LATENCY   1
 
#define LBM_SRC_TOPIC_ATTR_TCP_MULTI_RECV_SOURCE_PACED   2
 
#define LBM_SRC_TOPIC_ATTR_TCP_MULTI_RECV_SEND_ORDER_SERIAL   0
 
#define LBM_SRC_TOPIC_ATTR_TCP_MULTI_RECV_SEND_ORDER_RANDOM   1
 
#define LBM_SRC_TOPIC_ATTR_SSF_NONE   0
 
#define LBM_SRC_TOPIC_ATTR_SSF_INCLUSION   1
 
#define LBM_SRC_TOPIC_ATTR_SSF_EXCLUSION   2
 
#define LBM_SRC_TOPIC_ATTR_SSF_ULB   3
 
#define LBM_SRC_TOPIC_ATTR_IMPLICIT_BATCH_TYPE_DEFAULT   0
 
#define LBM_SRC_TOPIC_ATTR_IMPLICIT_BATCH_TYPE_ADAPTIVE   1
 
#define LBM_SRC_TOPIC_ATTR_UME_STORE_BEHAVIOR_RR   0x0
 
#define LBM_SRC_TOPIC_ATTR_UME_STORE_BEHAVIOR_QC   0x1
 
#define LBM_SRC_TOPIC_ATTR_UME_QC_SQN_BEHAVIOR_LOWEST   0x0
 
#define LBM_SRC_TOPIC_ATTR_UME_QC_SQN_BEHAVIOR_MAJORITY   0x1
 
#define LBM_SRC_TOPIC_ATTR_UME_QC_SQN_BEHAVIOR_HIGHEST   0x2
 
#define LBM_SRC_TOPIC_ATTR_UME_STABLE_BEHAVIOR_ANY   0x0
 
#define LBM_SRC_TOPIC_ATTR_UME_STABLE_BEHAVIOR_MAJORITY   0x1
 
#define LBM_SRC_TOPIC_ATTR_UME_STABLE_BEHAVIOR_QUORUM   0x1
 
#define LBM_SRC_TOPIC_ATTR_UME_STABLE_BEHAVIOR_ALL   0x2
 
#define LBM_SRC_TOPIC_ATTR_UME_STABLE_BEHAVIOR_ALL_ACTIVE   0x3
 
#define LBM_SRC_TOPIC_ATTR_UMQ_STABLE_BEHAVIOR_ANY   0x0
 
#define LBM_SRC_TOPIC_ATTR_UMQ_STABLE_BEHAVIOR_MAJORITY   0x1
 
#define LBM_SRC_TOPIC_ATTR_UMQ_STABLE_BEHAVIOR_QUORUM   0x1
 
#define LBM_SRC_TOPIC_ATTR_UMQ_STABLE_BEHAVIOR_ALL   0x2
 
#define LBM_SRC_TOPIC_ATTR_UMQ_STABLE_BEHAVIOR_ALL_ACTIVE   0x3
 
#define LBM_SRC_TOPIC_ATTR_LBTIPC_BEHAVIOR_SOURCE_PACED   LBTIPC_BEHAVIOR_SRC_PACED
 
#define LBM_SRC_TOPIC_ATTR_LBTIPC_BEHAVIOR_RECEIVER_PACED   LBTIPC_BEHAVIOR_RCVR_PACED
 
#define LBM_SRC_TOPIC_ATTR_UMQ_ULB_EVENT_MSG_CONSUME   0x1
 Configuration flag to enable delivery of the ULB source event LBM_SRC_EVENT_UMQ_ULB_MESSAGE_CONSUMED_EX. See umq_ulb_events (source).
 
#define LBM_SRC_TOPIC_ATTR_UMQ_ULB_EVENT_MSG_TIMEOUT   0x2
 Configuration flag to enable delivery of the ULB source event LBM_SRC_EVENT_UMQ_ULB_MESSAGE_TIMEOUT_EX. See umq_ulb_events (source).
 
#define LBM_SRC_TOPIC_ATTR_UMQ_ULB_EVENT_MSG_ASSIGNMENT   0x4
 Configuration flag to enable delivery of the ULB source event LBM_SRC_EVENT_UMQ_ULB_MESSAGE_ASSIGNED_EX. See umq_ulb_events (source).
 
#define LBM_SRC_TOPIC_ATTR_UMQ_ULB_EVENT_MSG_REASSIGNMENT   0x8
 Configuration flag to enable delivery of the ULB source event LBM_SRC_EVENT_UMQ_ULB_MESSAGE_REASSIGNED_EX. See umq_ulb_events (source).
 
#define LBM_SRC_TOPIC_ATTR_UMQ_ULB_EVENT_MSG_COMPLETE   0x10
 Configuration flag to enable delivery of the ULB source event LBM_SRC_TOPIC_ATTR_UMQ_ULB_EVENT_MSG_COMPLETE. See umq_ulb_events (source).
 
#define LBM_SRC_TOPIC_ATTR_UMQ_ULB_EVENT_RCV_TIMEOUT   0x20
 Configuration flag to enable delivery of the ULB source event LBM_SRC_EVENT_UMQ_ULB_RECEIVER_TIMEOUT_EX. See umq_ulb_events (source).
 
#define LBM_SRC_TOPIC_ATTR_UMQ_ULB_EVENT_RCV_REGISTRATION   0x40
 Configuration flag to enable delivery of the ULB source event LBM_SRC_EVENT_UMQ_ULB_RECEIVER_REGISTRATION_EX. See umq_ulb_events (source).
 
#define LBM_SRC_TOPIC_ATTR_UMQ_ULB_EVENT_RCV_DEREGISTRATION   0x80
 Configuration flag to enable delivery of the ULB source event LBM_SRC_EVENT_UMQ_ULB_RECEIVER_DEREGISTRATION_EX. See umq_ulb_events (source).
 
#define LBM_SRC_TOPIC_ATTR_UMQ_ULB_EVENT_RCV_READY   0x100
 Configuration flag to enable delivery of the ULB source event LBM_SRC_EVENT_UMQ_ULB_RECEIVER_READY_EX. See umq_ulb_events (source).
 
#define LBM_SRC_TOPIC_ATTR_UMQ_ULB_EVENT_ALL   0x1FF
 Configuration flag to enable delivery of all ULB source events. See umq_ulb_events (source).
 
#define LBM_SRC_TOPIC_ATTR_UMQ_ULB_ASSIGNMENT_DEFAULT   0x0
 
#define LBM_SRC_TOPIC_ATTR_UMQ_ULB_ASSIGNMENT_RANDOM   0x1
 
#define LBM_SRC_TOPIC_ATTR_UMQ_ULB_LF_BEHAVIOR_IGNORED   0x0
 
#define LBM_SRC_TOPIC_ATTR_UMQ_ULB_LF_BEHAVIOR_PROVISIONED   0x1
 
#define LBM_SRC_TOPIC_ATTR_UMQ_ULB_LF_BEHAVIOR_DYNAMIC   0x2
 
#define LBM_SRC_TOPIC_ATTR_UME_STABLE_EVENT_NONE   0x0
 
#define LBM_SRC_TOPIC_ATTR_UME_STABLE_EVENT_PER_FRAGMENT   0x1
 
#define LBM_SRC_TOPIC_ATTR_UME_STABLE_EVENT_PER_MESSAGE   0x2
 
#define LBM_SRC_TOPIC_ATTR_UME_STABLE_EVENT_FRAG_AND_MSG   0x3
 
#define LBM_SRC_TOPIC_ATTR_UME_CDELV_EVENT_NONE   0x0
 
#define LBM_SRC_TOPIC_ATTR_UME_CDELV_EVENT_PER_FRAGMENT   0x1
 
#define LBM_SRC_TOPIC_ATTR_UME_CDELV_EVENT_PER_MESSAGE   0x2
 
#define LBM_SRC_TOPIC_ATTR_UME_CDELV_EVENT_FRAG_AND_MSG   0x3
 
#define LBM_SRC_TOPIC_ATTR_SECURITY_PROTOCOL_NONE   LBM_SECURITY_PROTOCOL_NONE
 
#define LBM_SRC_TOPIC_ATTR_SECURITY_PROTOCOL_TLS   LBM_SECURITY_PROTOCOL_TLS
 
#define LBM_RCV_TOPIC_ATTR_UME_QC_SQN_BEHAVIOR_LOWEST   0x0
 
#define LBM_RCV_TOPIC_ATTR_UME_QC_SQN_BEHAVIOR_MAJORITY   0x1
 
#define LBM_RCV_TOPIC_ATTR_UME_QC_SQN_BEHAVIOR_HIGHEST   0x2
 
#define LBM_RCV_TOPIC_ATTR_TCP_ACTIVITY_TIMEOUT_SO_KEEPALIVE   0x1
 
#define LBM_RCV_TOPIC_ATTR_TCP_ACTIVITY_TIMEOUT_TIMER   0x2
 
#define LBM_RCV_TOPIC_ATTR_CHANNEL_BEHAVIOR_DELIVER_MSGS   0x1
 
#define LBM_RCV_TOPIC_ATTR_CHANNEL_BEHAVIOR_DISCARD_MSGS   0x2
 
#define LBM_RCV_TOPIC_ATTR_UMQ_INDEX_ASSIGN_ELIGIBILITY_INELIGIBLE   0x0
 
#define LBM_RCV_TOPIC_ATTR_UMQ_INDEX_ASSIGN_ELIGIBILITY_ELIGIBLE   0x1
 
#define LBM_RCV_TOPIC_ATTR_UMQ_QUEUE_PARTICIPATION_NONE   0
 
#define LBM_RCV_TOPIC_ATTR_UMQ_QUEUE_PARTICIPATION_NORMAL   1
 
#define LBM_RCV_TOPIC_ATTR_UMQ_QUEUE_PARTICIPATION_OBSERVER   2
 
#define LBM_RCV_TOPIC_ATTR_UMQ_HOLD_INTERVAL_FOREVER   0xFFFFFFFF
 
#define LBM_RCV_TOPIC_ATTR_SECURITY_PROTOCOL_NONE   LBM_SECURITY_PROTOCOL_NONE
 
#define LBM_RCV_TOPIC_ATTR_SECURITY_PROTOCOL_TLS   LBM_SECURITY_PROTOCOL_TLS
 
#define LBM_MSG_MAX_SOURCE_LEN   128
 
#define LBM_MSG_MAX_TOPIC_LEN   256
 
#define LBM_MSG_MAX_STATE_LEN   32
 
#define LBM_UME_MAX_STORE_STRLEN   24
 
#define LBM_UMQ_MAX_QUEUE_STRLEN   256
 
#define LBM_UMQ_MAX_TOPIC_STRLEN   256
 
#define LBM_UMQ_MAX_APPSET_STRLEN   256
 
#define LBM_MAX_CONTEXT_NAME_LEN   128
 
#define LBM_MAX_EVENT_QUEUE_NAME_LEN   128
 
#define LBM_MAX_UME_STORES   25
 
#define LBM_MAX_UME_GROUPS   5
 
#define LBM_UMQ_ULB_MAX_RECEIVER_STRLEN   32
 
#define LBM_UMQ_MAX_INDEX_LEN   216
 
#define LBM_UMQ_USER_NAME_LENGTH_MAX   127
 
#define LBM_UMQ_PASSWORD_LENGTH_MAX   15
 
#define LBM_UMM_NUM_SERVERS_MAX   16
 
#define LBM_UMM_USER_NAME_LENGTH_MAX   100
 
#define LBM_UMM_APP_NAME_LENGTH_MAX   100
 
#define LBM_UMM_PASSWORD_LENGTH_MAX   100
 
#define LBM_UMM_SERVER_LENGTH_MAX   32
 
#define LBM_HMAC_BLOCK_SZ   20
 
#define LBM_MAX_GATEWAY_NAME_LEN   128
 
#define LBM_OTID_BLOCK_SZ   32
 
#define LBM_CONTEXT_INSTANCE_BLOCK_SZ   8
 
#define LBM_FLIGHT_SIZE_BEHAVIOR_NOTIFY   0x0
 
#define LBM_FLIGHT_SIZE_BEHAVIOR_BLOCK   0x1
 
#define LBM_FD_EVENT_READ   0x1
 FD event bit passed in "ev" parameter to lbm_fd_cb_proc. Indicates file descriptor/socket is readable.
 
#define LBM_FD_EVENT_WRITE   0x2
 FD event bit passed in "ev" parameter to lbm_fd_cb_proc. Indicates file descriptor/socket is writable.
 
#define LBM_FD_EVENT_EXCEPT   0x4
 FD event bit passed in "ev" parameter to lbm_fd_cb_proc. Indicates file descriptor/socket is has an exception (OOB/URG).
 
#define LBM_FD_EVENT_ACCEPT   0x8
 FD event bit passed in "ev" parameter to lbm_fd_cb_proc. Indicates TCP socket has accepted a connection.
 
#define LBM_FD_EVENT_CLOSE   0x10
 FD event bit passed in "ev" parameter to lbm_fd_cb_proc. Indicates a file descriptor or socket has closed.
 
#define LBM_FD_EVENT_CONNECT   0x20
 FD event bit passed in "ev" parameter to lbm_fd_cb_proc. Indicates a TCP socket has completed connecting to a remote socket.
 
#define LBM_FD_EVENT_ALL   0x3f
 FD event bit mask in "ev" parameter to lbm_fd_cb_proc. Or together all of the possible individual event bits.
 
#define LBM_EVENT_QUEUE_BLOCK   0xFFFFFFFF
 Timeout value passed to lbm_event_dispatch() to ask it to block.
 
#define LBM_EVENT_QUEUE_POLL   0x0
 Timeout value passed to lbm_event_dispatch() to ask it to poll.
 
#define LBM_EVENT_QUEUE_SIZE_WARNING   0x1
 event queue monitor event type passed to lbm_event_queue_monitor_proc. Warning of event queue size.
 
#define LBM_EVENT_QUEUE_DELAY_WARNING   0x2
 event queue monitor event type passed to lbm_event_queue_monitor_proc. Warning of excessive delay for event.
 
#define LBM_EVENT_QUEUE_ENQUEUE_NOTIFICATION   0x3
 event queue monitor event type passed to lbm_event_queue_monitor_proc. Notification of something being added to queue.
 
#define LBM_LOG_EMERG   1
 log level, as passed to lbm_log_cb_proc. Emergency
 
#define LBM_LOG_ALERT   2
 log level, as passed to lbm_log_cb_proc. Alert
 
#define LBM_LOG_CRIT   3
 log level, as passed to lbm_log_cb_proc. Critical
 
#define LBM_LOG_ERR   4
 log level, as passed to lbm_log_cb_proc. Error
 
#define LBM_LOG_WARNING   5
 log level, as passed to lbm_log_cb_proc. Warning
 
#define LBM_LOG_NOTICE   6
 log level, as passed to lbm_log_cb_proc. Notice
 
#define LBM_LOG_INFO   7
 log level, as passed to lbm_log_cb_proc. Informational
 
#define LBM_LOG_DEBUG   8
 log level, as passed to lbm_log_cb_proc. Debugging information
 
#define LBM_LOG_ROLLOVER_SIZE_MAX   4000
 
#define LBM_DEBUG_LOG_ROLLOVER_SIZE_MAX   0xFFFFFFFF
 
#define LBM_DAEMON_EVENT_CONNECTED   1
 UM daemon event. Connected successfully to daemon (info not valid) More...
 
#define LBM_DAEMON_EVENT_CONNECT_ERROR   2
 UM daemon event. Connected could not complete successfully (info valid) More...
 
#define LBM_DAEMON_EVENT_DISCONNECTED   3
 UM daemon event. Connection to daemon aborted (info not valid) More...
 
#define LBM_DAEMON_EVENT_CONNECT_TIMEOUT   4
 UM daemon event. Connection to daemon timed out. More...
 
#define LBM_TRANSPORT_STAT_TCP   LBM_TRANSPORT_TYPE_TCP
 Transport statistic type. TCP transport.
 
#define LBM_TRANSPORT_STAT_LBTRM   LBM_TRANSPORT_TYPE_LBTRM
 Transport statistic type. LBT-RM transport.
 
#define LBM_TRANSPORT_STAT_DAEMON   0xFF
 Transport statistic type. UM Daemon is being used.
 
#define LBM_TRANSPORT_STAT_LBTRU   LBM_TRANSPORT_TYPE_LBTRU
 Transport statistic type. LBT-RU transport.
 
#define LBM_TRANSPORT_STAT_LBTIPC   LBM_TRANSPORT_TYPE_LBTIPC
 Transport statistic type. LBT-IPC transport.
 
#define LBM_TRANSPORT_STAT_LBTSMX   LBM_TRANSPORT_TYPE_LBTSMX
 Transport statistic type. LBT-SMX transport.
 
#define LBM_TRANSPORT_STAT_LBTRDMA   LBM_TRANSPORT_TYPE_LBTRDMA
 Transport statistic type. LBT-RDMA transport.
 
#define LBM_TRANSPORT_STAT_BROKER   LBM_TRANSPORT_TYPE_BROKER
 Transport statistic type. BROKER transport.
 
#define LBM_SRS_INTEREST_REMOVE   0
 Remove interest for a topic or pattern. (for UM internal use only)
 
#define LBM_SRS_INTEREST_ADD   1
 Add interest for a topic or pattern. (for UM internal use only)
 
#define LBM_CTX_ATTR_INTEREST_MODE_FLOOD   0
 Resolver service sends SIRs to all receivers on the domain.
 
#define LBM_CTX_ATTR_INTEREST_MODE_FILTER   1
 Resolver service sends SIRs only to interested receivers.
 
#define LBM_WILDCARD_RCV_PATTERN_TYPE_PCRE   1
 PCRE (Perl Compatible Regular Expressions) pattern type.
 
#define LBM_WILDCARD_RCV_PATTERN_TYPE_REGEX   2
 POSIX regex pattern type.
 
#define LBM_WILDCARD_RCV_PATTERN_TYPE_APP_CB   3
 Application defined callback pattern type.
 
#define LBM_SYMBOL_TYPE_TOPIC   0
 symbol type is topic. (for UM internal use only)
 
#define LBM_SYMBOL_TYPE_PATTERN   LBM_WILDCARD_RCV_PATTERN_TYPE_PCRE
 symbol type is pattern, support only PCRE. (for UM internal use only)
 
#define LBM_SRC_EVENT_WAKEUP_FLAG_NORMAL   0x1
 Flag bit for "flags" element of lbm_src_event_wakeup_t_stct. Indicates the unblocked source is a normal (or hot failover) source.
 
#define LBM_SRC_EVENT_WAKEUP_FLAG_MIM   0x2
 Flag bit for "flags" element of lbm_src_event_wakeup_t_stct. Indicates the unblocked source is a context-level multicast immediate mode source.
 
#define LBM_SRC_EVENT_WAKEUP_FLAG_UIM   0x4
 Flag bit for "flags" element of lbm_src_event_wakeup_t_stct. Indicates unblocked source is a context-level unicast immediate mode source.
 
#define LBM_SRC_EVENT_WAKEUP_FLAG_REQUEST   0x8
 Flag bit for "flags" element of lbm_src_event_wakeup_t_stct. Indicates the unblocked source is a context-level request source.
 
#define LBM_SRC_EVENT_WAKEUP_FLAG_RESPONSE   0x10
 Flag bit for "flags" element of lbm_src_event_wakeup_t_stct. Indicates the unblocked source is a context-level response source.
 
#define LBM_SRC_EVENT_UMQ_ULB_MESSAGE_TIMEOUT_EX_FLAG_TOTAL_LIFETIME_EXPIRED   0x1
 lbm_src_event_umq_ulb_message_info_ex_t::flags. Timeout is the result of the total lifetime expiring.
 
#define LBM_SRC_EVENT_UMQ_ULB_MESSAGE_TIMEOUT_EX_FLAG_EXPLICIT   0x2
 lbm_src_event_umq_ulb_message_info_ex_t::flags. Timeout is the result of the lbm_msg_umq_reassign API being called by a receiver.
 
#define LBM_SRC_EVENT_UMQ_ULB_MESSAGE_TIMEOUT_EX_FLAG_DISCARD   0x4
 lbm_src_event_umq_ulb_message_info_ex_t::flags. Timeout is the result of the lbm_msg_umq_reassign API being called with the LBM_MSG_UMQ_REASSIGN_FLAG_DISCARD flag set
 
#define LBM_SRC_EVENT_UMQ_ULB_MESSAGE_TIMEOUT_EX_FLAG_MAX_REASSIGNS   0x8
 lbm_src_event_umq_ulb_message_info_ex_t::flags. Timeout is the result of hitting umq_ulb_application_set_message_max_reassignments (source) number of assignments
 
#define LBM_SRC_EVENT_UMQ_ULB_MESSAGE_REASSIGNED_EX_FLAG_EXPLICIT   0x1
 lbm_src_event_umq_ulb_message_info_ex_t::flags. Reassignment is the result of the lbm_msg_umq_reassign API being called by a receiver
 
#define LBM_SRC_EVENT_FLIGHT_SIZE_NOTIFICATION_TYPE_UME   0x1
 Specifies a UMP flight size. See lbm_src_event_flight_size_notification_t.
 
#define LBM_SRC_EVENT_FLIGHT_SIZE_NOTIFICATION_TYPE_ULB   0x2
 Specifies a ULB flight size. See lbm_src_event_flight_size_notification_t.
 
#define LBM_SRC_EVENT_FLIGHT_SIZE_NOTIFICATION_TYPE_UMQ   0x3
 Specifies a UMQ flight size. See lbm_src_event_flight_size_notification_t.
 
#define LBM_SRC_EVENT_FLIGHT_SIZE_NOTIFICATION_STATE_OVER   0x1
 Value for "state" field in lbm_src_event_flight_size_notification_t indicating that persisted messages in flight are now above the threshold, and the application should avoid sending additional messages until the in-flight messages drop back under the threshold. More...
 
#define LBM_SRC_EVENT_FLIGHT_SIZE_NOTIFICATION_STATE_UNDER   0x2
 Value for "state" field in lbm_src_event_flight_size_notification_t indicating that persisted messages in flight are now below the threshold, and the application may resume sending messages. More...
 
#define LBM_FLIGHT_SIZE_TYPE_UME   0x1
 Specify a UMP flight size.
 
#define LBM_FLIGHT_SIZE_TYPE_ULB   0x2
 Specify a ULB flight size.
 
#define LBM_FLIGHT_SIZE_TYPE_UMQ   0x3
 Specify a UMQ flight size.
 
#define LBM_SRC_SEND_EX_FLAG_UME_CLIENTD   0x1
 Bit in lbm_src_send_ex_info_t::flags (passed to lbm_src_send_ex()) to indicate the UMP client data pointer is valid, in lbm_src_send_ex_info_t::ume_msg_clientd.
 
#define LBM_SRC_SEND_EX_FLAG_UMQ_CLIENTD   0x1
 Bit in lbm_src_send_ex_info_t::flags (passed to lbm_src_send_ex()) to indicate the UMQ client data pointer is valid, in lbm_src_send_ex_info_t::ume_msg_clientd.
 
#define LBM_SRC_SEND_EX_FLAG_SEQUENCE_NUMBER_INFO   0x2
 Bit in lbm_src_send_ex_info_t::flags (passed to lbm_src_send_ex()) to inform application of the sequence numbers used for message. See LBM_SRC_EVENT_SEQUENCE_NUMBER_INFO.
 
#define LBM_SRC_SEND_EX_FLAG_SEQUENCE_NUMBER_INFO_FRAGONLY   0x4
 Bit in lbm_src_send_ex_info_t::flags (passed to lbm_src_send_ex()) to inform application of the sequence numbers used for message (fragmented messages only) See LBM_SRC_EVENT_SEQUENCE_NUMBER_INFO.
 
#define LBM_SRC_SEND_EX_FLAG_APPHDR_CHAIN   0x8
 Bit in lbm_src_send_ex_info_t::flags (passed to lbm_src_send_ex()) to send messages using an appheader chain, in lbm_src_send_ex_info_t::apphdr_chain.
 
#define LBM_SRC_SEND_EX_FLAG_UMQ_MESSAGE_ID_INFO   0x10
 Bit in lbm_src_send_ex_info_t::flags (passed to lbm_src_send_ex()) to inform application of the UMQ Message ID used for the message.
 
#define LBM_SRC_SEND_EX_FLAG_CHANNEL   0x20
 Bit in lbm_src_send_ex_info_t::flags (passed to lbm_src_send_ex()) to send messages using supplied channel information, in lbm_src_send_ex_info_t::channel_info.
 
#define LBM_SRC_SEND_EX_FLAG_UMQ_INDEX   0x40
 Bit in lbm_src_send_ex_info_t::flags (passed to lbm_src_send_ex()) to send messages associating them with the supplied UMQ Index, in lbm_src_send_ex_info_t::umq_index.
 
#define LBM_SRC_SEND_EX_FLAG_UMQ_TOTAL_LIFETIME   0x80
 Bit in lbm_src_send_ex_info_t::flags (passed to lbm_src_send_ex()) to indicate the total UMQ lifetime is valid, in lbm_src_send_ex_info_t::umq_total_lifetime.
 
#define LBM_SRC_SEND_EX_FLAG_HF_OPTIONAL   0x100
 Bit in lbm_src_send_ex_info_t::flags (passed to lbm_src_send_ex()) to send messages marked as an optional message for Hot Failover.
 
#define LBM_SRC_SEND_EX_FLAG_PROPERTIES   0x200
 Bit in lbm_src_send_ex_info_t::flags (passed to lbm_src_send_ex()) to send message with the supplied messages properties, in lbm_src_send_ex_info_t::properties. See Message Properties.
 
#define LBM_SRC_SEND_EX_FLAG_HF_32   0x400
 Bit in lbm_src_send_ex_info_t::flags (passed to lbm_src_send_ex()) to send message with the supplied 32 bit hot failover sequence number, in lbm_src_send_ex_info_t::hf_sqn.
 
#define LBM_SRC_SEND_EX_FLAG_HF_64   0x800
 Bit in lbm_src_send_ex_info_t::flags (passed to lbm_src_send_ex()) to send message with the supplied 64 bit hot failover sequence number, in lbm_src_send_ex_info_t::hf_sqn.
 
#define LBM_SSRC_SEND_EX_FLAG_UME_CLIENTD   0x1
 Bit in lbm_ssrc_send_ex_info_t::flags (passed to lbm_ssrc_send_ex()) to send message with the supplied UMP client data pointer, in lbm_ssrc_send_ex_info_t::ume_msg_clientd. See Smart Sources.
 
#define LBM_SSRC_SEND_EX_FLAG_SEQUENCE_NUMBER_INFO   0x2
 Bit in lbm_ssrc_send_ex_info_t::flags (passed to lbm_ssrc_send_ex()) to inform application of the sequence numbers used for message. See Smart Sources.
 
#define LBM_SSRC_SEND_EX_FLAG_SEQUENCE_NUMBER_INFO_FRAGONLY   0x4
 Bit in lbm_ssrc_send_ex_info_t::flags (passed to lbm_ssrc_send_ex()) to inform application of the sequence numbers used for message (fragmented messages only). See Smart Sources.
 
#define LBM_SSRC_SEND_EX_FLAG_CHANNEL   0x20
 Bit in lbm_ssrc_send_ex_info_t::flags (passed to lbm_ssrc_send_ex()) to send messages using the supplied Spectrum channel information, in lbm_ssrc_send_ex_info_t::channel. See Smart Sources and Spectrum and Smart Sources.
 
#define LBM_SSRC_SEND_EX_FLAG_PROPERTIES   0x200
 Bit in lbm_ssrc_send_ex_info_t::flags (passed to lbm_ssrc_send_ex()) to send message with the supplied messages properties, in lbm_ssrc_send_ex_info_t::mprop_int_cnt, mprop_int_keys, and mprop_int_vals. See Smart Sources and Message Properties, Message Properties, and Smart Sources.
 
#define LBM_SSRC_SEND_EX_FLAG_REBUILD_BUFFER   0x1000
 Bit in lbm_ssrc_send_ex_info_t::flags (passed to lbm_ssrc_send_ex()) to rebuild buffer before sending message. See Smart Source Message Properties Usage and Smart Sources.
 
#define LBM_SSRC_SEND_EX_FLAG_UPDATE_CHANNEL   0x2000
 Bit in lbm_ssrc_send_ex_info_t::flags (passed to lbm_ssrc_send_ex()) to update Spectrum Channel number before sending message. See Smart Sources and Spectrum, Spectrum, Smart Sources.
 
#define LBM_SSRC_SEND_EX_FLAG_UPDATE_PROPERTY_VALUES   0x4000
 Bit in lbm_ssrc_send_ex_info_t::flags (passed to lbm_ssrc_send_ex()) to update message property values before sending message. See Smart Sources and Message Properties, Message Properties, and Smart Sources.
 
#define LBM_SSRC_SEND_EX_FLAG_USER_SUPPLIED_BUFFER   0x8000
 Bit in lbm_ssrc_send_ex_info_t::flags (passed to lbm_ssrc_send_ex()) to send message with the User supplied buffer pointer, in lbm_ssrc_send_ex_info_t::usr_supplied_buffer. See Smart Source Message Buffers and Smart Sources.
 
#define SSRC_DEFAULT_MAX_MSG_LEN   368
 Default Smart Source max message length. See smart_src_max_message_length (source).
 
#define LBM_MSG_PROPERTY_NONE   0x0
 Message property with no type (used to indicate an iterator has reached the last element). See Message Properties.
 
#define LBM_MSG_PROPERTY_BOOLEAN   0x1
 Message property of boolean type. Expects a "char" variable. See Message Properties.
 
#define LBM_MSG_PROPERTY_BYTE   0x2
 Message property of byte type. Expects a "char" variable. See Message Properties.
 
#define LBM_MSG_PROPERTY_SHORT   0x3
 Message property of short type (2 bytes). Expects a "lbm_uint16_t" variable. See Message Properties.
 
#define LBM_MSG_PROPERTY_INT   0x4
 Message property of int type (4 bytes). Expects a "lbm_uint32_t" variable. See Message Properties.
 
#define LBM_MSG_PROPERTY_LONG   0x5
 Message property of long type (8 bytes). Expects a "lbm_int64_t" variable. See Message Properties.
 
#define LBM_MSG_PROPERTY_FLOAT   0x6
 Message property of float type. Expects a "float" variable. See Message Properties.
 
#define LBM_MSG_PROPERTY_DOUBLE   0x7
 Message property of double type. Expects a "double" variable. See Message Properties.
 
#define LBM_MSG_PROPERTY_STRING   0x8
 Message property of string type. Expects a "char" array. See Message Properties.
 
#define LBM_MSG_PROPERTIES_MAX_NAMELEN   250
 Maximum size for the name of a message property. See Message Properties.
 
#define LBM_CHAIN_ELEM_CHANNEL_NUMBER   0x1
 Element is a channel number in network byte order. Internal use only.
 
#define LBM_CHAIN_ELEM_HF_SQN   0x2
 Element is a hot-failover sequence number in network byte order. Internal use only.
 
#define LBM_CHAIN_ELEM_GW_INFO   0x3
 Element is gateway information. Internal use only.
 
#define LBM_CHAIN_ELEM_APPHDR   0x4
 Element is a non-chain app header. Internal use only.
 
#define LBM_CHAIN_ELEM_USER_DATA   0x5
 Element is user data with no byte-order transformation applied.
 
#define LBM_CHAIN_ELEM_PROPERTIES_LENGTH   0x6
 Element is the offset of a serialized properties object within an LBM message. Internal use only.
 
#define LBM_SRC_EVENT_UME_REGISTRATION_SUCCESS_EX_FLAG_OLD   0x1
 Bit in lbm_src_event_ume_registration_ex_t::flags. Registration was flagged as an old source by the Store. An old source is one the Store had cached.
 
#define LBM_SRC_EVENT_UME_REGISTRATION_SUCCESS_EX_FLAG_NOACKS   0x2
 Bit in lbm_src_event_ume_registration_ex_t::flags. Registration was flagged as coming from a Store that is configured to not send ACKs for stability (no-cache Store)
 
#define LBM_SRC_EVENT_UME_REGISTRATION_SUCCESS_EX_FLAG_RPP   0x4
 Bit in lbm_src_event_ume_registration_ex_t::flags. Registration was flagged as coming from a Store that allows and has accepted RPP persistent topics.
 
#define LBM_SRC_EVENT_UME_REGISTRATION_COMPLETE_EX_FLAG_QUORUM   0x1
 Bit in lbm_src_event_ume_registration_complete_ex_t. Registration completed with only quorum reached.
 
#define LBM_SRC_EVENT_UME_MESSAGE_STABLE_EX_FLAG_INTRAGROUP_STABLE   0x1
 Bit in lbm_src_event_ume_ack_ex_info_t::flags. Message stable for intragroup stability.
 
#define LBM_SRC_EVENT_UME_MESSAGE_STABLE_EX_FLAG_INTERGROUP_STABLE   0x2
 Bit in lbm_src_event_ume_ack_ex_info_t::flags. Message stable for intergroup stability.
 
#define LBM_SRC_EVENT_UME_MESSAGE_STABLE_EX_FLAG_STABLE   0x4
 Bit in lbm_src_event_ume_ack_ex_info_t::flags. Message is stable according to behavior desired.
 
#define LBM_SRC_EVENT_UME_MESSAGE_STABLE_EX_FLAG_STORE   0x8
 Bit in lbm_src_event_ume_ack_ex_info_t::flags. Message stable information has active Store information.
 
#define LBM_SRC_EVENT_UME_MESSAGE_STABLE_EX_FLAG_WHOLE_MESSAGE_STABLE   0x10
 Bit in lbm_src_event_ume_ack_ex_info_t::flags. Whole message (each fragment) is stable.
 
#define LBM_SRC_EVENT_UME_MESSAGE_STABLE_EX_FLAG_USER   0x20
 Bit in lbm_src_event_ume_ack_ex_info_t::flags. Message stabilized via lbm_ume_src_msg_stable API.
 
#define LBM_SRC_EVENT_UME_MESSAGE_NOT_STABLE_FLAG_STORE   0x8
 Bit in lbm_src_event_ume_ack_ex_info_t::flags. Message not stable information has Store information.
 
#define LBM_SRC_EVENT_UME_MESSAGE_NOT_STABLE_FLAG_LOSS   0x40
 Bit in lbm_src_event_ume_ack_ex_info_t::flags. Message not stable due to explicitly reported unrecoverable loss at the Store or receiver.
 
#define LBM_SRC_EVENT_UME_MESSAGE_NOT_STABLE_FLAG_TIMEOUT   0x80
 Bit in lbm_src_event_ume_ack_ex_info_t::flags. Message not stable due to stability lifetime timeout.
 
#define LBM_SRC_EVENT_UME_DELIVERY_CONFIRMATION_EX_FLAG_UNIQUEACKS   0x1
 Bit in lbm_src_event_ume_ack_ex_info_t::flags. Confirmation received for specified number of unique ACKs.
 
#define LBM_SRC_EVENT_UME_DELIVERY_CONFIRMATION_EX_FLAG_UREGID   0x2
 Bit in lbm_src_event_ume_ack_ex_info_t::flags. Confirmation received with User Specified Rcv Registration ID flagged.
 
#define LBM_SRC_EVENT_UME_DELIVERY_CONFIRMATION_EX_FLAG_OOD   0x4
 Bit in lbm_src_event_ume_ack_ex_info_t::flags. Confirmation received with Out-of-Order Delivery (OOD) flagged.
 
#define LBM_SRC_EVENT_UME_DELIVERY_CONFIRMATION_EX_FLAG_EXACK   0x8
 Bit in lbm_src_event_ume_ack_ex_info_t::flags. Confirmation received with Explicit ACK (EXACK) flagged.
 
#define LBM_SRC_EVENT_UME_DELIVERY_CONFIRMATION_EX_FLAG_WHOLE_MESSAGE_CONFIRMED   0x10
 Bit in lbm_src_event_ume_ack_ex_info_t::flags. Whole message (each fragment) has been confirmed.
 
#define LBM_SRC_EVENT_UME_MESSAGE_RECLAIMED_EX_FLAG_FORCED   0x1
 Bit in lbm_src_event_ume_ack_ex_info_t::flags. Reclaim notification is the result of a forced reclaim.
 
#define LBM_MSG_UME_REGISTRATION_SUCCESS_EX_FLAG_OLD   0x1
 Bit in lbm_src_event_umq_ulb_message_info_ex_t::flags. Registration was flagged as an old receiver by the Store. An old receiver is one the Store had cached.
 
#define LBM_MSG_UME_REGISTRATION_SUCCESS_EX_FLAG_NOCACHE   0x2
 Bit in lbm_src_event_umq_ulb_message_info_ex_t::flags. Registration was flagged as coming from a Store that is configured to not cache data.
 
#define LBM_MSG_UME_REGISTRATION_SUCCESS_EX_FLAG_RPP   0x4
 Bit in lbm_src_event_umq_ulb_message_info_ex_t::flags. Registration was flagged as coming from a Store that has allowed a RPP receiver.
 
#define LBM_MSG_UME_REGISTRATION_SUCCESS_EX_FLAG_SRC_SID   0x8
 Bit in lbm_src_event_umq_ulb_message_info_ex_t::flags. The src_session_id field of the lbm_msg_ume_registration_ex_t structure is valid.
 
#define LBM_MSG_UME_REGISTRATION_SUCCESS_EX_FLAG_RPP_IS_NON_BLOCKING   0x10
 Bit in lbm_src_event_umq_ulb_message_info_ex_t::flags. Registration was flagged as coming from a Store that has allowed a non-blocking RPP receiver.
 
#define LBM_MSG_UME_REGISTRATION_SUCCESS_EX_FLAG_PROACTIVE_KEEPALIVE   0x20
 Bit in lbm_src_event_umq_ulb_message_info_ex_t::flags. Registration was flagged as coming from a Store that has allowed a proactive keepalive receiver.
 
#define LBM_MSG_UME_REGISTRATION_SUCCESS_EX_FLAG_RANGED_RXREQ   0x40
 Bit in lbm_src_event_umq_ulb_message_info_ex_t::flags. Registration was flagged as coming from a Store that supports ranged retransmit requests.
 
#define LBM_UME_RCV_RECOVERY_INFO_EX_FLAG_SRC_SID   0x1
 The src_session_id field of the lbm_ume_rcv_recovery_info_ex_func_info_t is valid.
 
#define LBM_MSG_UME_REGISTRATION_COMPLETE_EX_FLAG_QUORUM   0x1
 Bit in lbm_msg_ume_registration_complete_ex_t::flags that indicates Registration completed with only quorum reached.
 
#define LBM_MSG_UME_REGISTRATION_COMPLETE_EX_FLAG_RXREQMAX   0x2
 Bit in lbm_msg_ume_registration_complete_ex_t::flags that indicates registration completed with RX REQ maximum used.
 
#define LBM_MSG_UME_REGISTRATION_COMPLETE_EX_FLAG_SRC_SID   0x4
 Bit in lbm_msg_ume_registration_complete_ex_t::flags that indicates lbm_msg_ume_registration_complete_ex_t::src_session_id is set.
 
#define LBM_MSG_UME_DEREGISTRATION_SUCCESS_EX_FLAG_RPP   0x1
 Bit in lbm_msg_ume_deregistration_ex_t::flags that indicates the deregistration was flagged as coming from a RPP Store.
 
#define LBM_CONTEXT_EVENT_UMQ_REGISTRATION_COMPLETE_EX_FLAG_QUORUM   0x1
 Bit in lbm_context_event_umq_registration_complete_ex_t::flags that indicates registration completed with only quorum reached.
 
#define LBM_SRC_EVENT_UMQ_REGISTRATION_COMPLETE_EX_FLAG_QUORUM   0x1
 Bit in lbm_src_event_umq_registration_complete_ex_t::flags that indicates registration completed with only quorum reached.
 
#define LBM_SRC_EVENT_UMQ_MESSAGE_STABLE_EX_FLAG_INTRAGROUP_STABLE   0x1
 Bit in lbm_src_event_umq_stability_ack_info_ex_t::flags. Message stable for intragroup stability.
 
#define LBM_SRC_EVENT_UMQ_MESSAGE_STABLE_EX_FLAG_INTERGROUP_STABLE   0x2
 Bit in lbm_src_event_umq_stability_ack_info_ex_t::flags. Message stable for intergroup stability.
 
#define LBM_SRC_EVENT_UMQ_MESSAGE_STABLE_EX_FLAG_STABLE   0x4
 Bit in lbm_src_event_umq_stability_ack_info_ex_t::flags. Message is stable according to behavior desired.
 
#define LBM_SRC_EVENT_UMQ_MESSAGE_STABLE_EX_FLAG_USER   0x8
 Bit in lbm_src_event_umq_stability_ack_info_ex_t::flags. Message stabilized via the lbm_umq_ctx_msg_stable API.
 
#define LBM_MSG_UMQ_REGISTRATION_COMPLETE_EX_FLAG_QUORUM   0x1
 Bit in lbm_src_event_umq_stability_ack_info_ex_t::flags. Registration completed with only quorum reached.
 
#define LBM_MSG_UMQ_REGISTRATION_COMPLETE_EX_FLAG_ULB   0x2
 Bit in lbm_msg_umq_registration_complete_ex_t::flags. Registration completed for UMQ ULB source.
 
#define LBM_MSG_UMQ_DEREGISTRATION_COMPLETE_EX_FLAG_ULB   0x1
 Bit in lbm_msg_umq_deregistration_complete_ex_t::flags. Deregistration completed for UMQ ULB source.
 
#define LBM_MSG_UMQ_INDEX_ASSIGNED_EX_FLAG_ULB   0x1
 Bit in lbm_msg_umq_index_assigned_ex_t::flags. Beginning of index from ULB source.
 
#define LBM_MSG_UMQ_INDEX_ASSIGNED_EX_FLAG_REQUESTED   0x2
 Bit in lbm_msg_umq_index_assigned_ex_t::flags. Beginning of index assignment that was requested by receiver.
 
#define LBM_MSG_UMQ_INDEX_RELEASED_EX_FLAG_ULB   0x1
 Bit in lbm_msg_umq_index_released_ex_t::flags. End of index from ULB source.
 
#define LBM_MSG_UMQ_INDEX_ASSIGNMENT_ELIGIBILITY_STOP_COMPLETE_EX_FLAG_ULB   0x1
 Index assignment stopped for ULB source.
 
#define LBM_MSG_UMQ_INDEX_ASSIGNMENT_ELIGIBILITY_START_COMPLETE_EX_FLAG_ULB   0x1
 Bit in lbm_msg_umq_index_assignment_eligibility_start_complete_ex_t::flags. Index assignment started for ULB source.
 
#define LBM_MSG_UMQ_REASSIGN_FLAG_DISCARD   0x1
 Deprecated. Do not use.
 
#define LBM_UME_LIVENESS_RECEIVER_UNRESPONSIVE_FLAG_TMO   0x1
 Bit in ume_liveness_receiving_context_t::flag. The source context has not heard from a given receiver for a specified amount of time and is therefore declared "dead".
 
#define LBM_UME_LIVENESS_RECEIVER_UNRESPONSIVE_FLAG_EOF   0x2
 Bit in ume_liveness_receiving_context_t::flag. The receiver context has closed the response socket and the source context declares the receiver "dead".
 
#define LBM_UMM_INFO_FLAGS_USE_SSL   0x1
 Bit in lbm_umm_info_t::flags. Use SSL for UMM daemon connections.
 
#define LBM_TEXTMESSAGE   0
 
#define LBM_BYTEMESSAGE   1
 
#define LBM_MAPMESSAGE   2
 
#define LBM_MESSAGE   3
 
#define LBM_OBJECTMESSAGE   4
 
#define LBM_STREAMMESSAGE   5
 
#define LBM_JMSDeliveryMode   "JMSDeliveryMode"
 
#define LBM_JMSExpiration   "JMSExpiration"
 
#define LBM_JMSPriority   "JMSPriority"
 
#define LBM_JMSMessageID   "JMSMessageID"
 
#define LBM_JMSTimestamp   "JMSTimestamp"
 
#define LBM_JMSCorrelationID   "JMSCorrelationID"
 
#define LBM_JMSType   "JMSType"
 
#define LBM_JMSRedelivered   "JMSRedelivered"
 
#define LBM_LBMMessageType   "JMS_UM_MessageType"
 
#define LBM_JMSTopicType   "JMSTopicType"
 
#define LBM_JMSReplyToName   "JMSReplyToName"
 
#define LBM_JMSReplyToWildcard   "JMSReplyToWildcard"
 
#define LBM_JMSReplyToType   "JMSReplyToType"
 
#define LBM_EXTERNAL_STRUCT_FILL_SIZE   (512)
 
#define LBM_UMQ_INDEX_FLAG_NUMERIC   0x1
 Bit in lbm_umq_index_info_t::flags. Index is a 64-bit unsigned integer.
 
#define LBM_UMQ_QUEUE_MSG_STATUS_UNKNOWN   0
 Queue message status; queue has no knowledge of the message.
 
#define LBM_UMQ_QUEUE_MSG_STATUS_UNASSIGNED   1
 Queue message status; message is currently enqueued but not yet assigned.
 
#define LBM_UMQ_QUEUE_MSG_STATUS_ASSIGNED   2
 Queue message status; message is currently assigned to a receiver but not yet consumed.
 
#define LBM_UMQ_QUEUE_MSG_STATUS_REASSIGNING   3
 Queue message status; message is waiting to be re-assigned to a different receiver.
 
#define LBM_UMQ_QUEUE_MSG_STATUS_CONSUMED   4
 Queue message status; message has been fully consumed and is no longer present in the queue.
 
#define LBM_ASYNC_OP_TYPE_CTX_UMQ_QUEUE_TOPIC_LIST   1
 Asynchronous operation type. UMQ queue topic list.
 
#define LBM_ASYNC_OP_TYPE_RCV_UMQ_QUEUE_MSG_LIST   2
 Asynchronous operation type. UMQ queue message list.
 
#define LBM_ASYNC_OP_TYPE_RCV_UMQ_QUEUE_MSG_RETRIEVE   3
 Asynchronous operation type. UMQ queue message retrieve.
 
#define LBM_ASYNC_OP_STATUS_IN_PROGRESS   1
 Asynchronous operation status code. Overall operation is still in progress.
 
#define LBM_ASYNC_OP_STATUS_COMPLETE   128
 Asynchronous operation status code. Overall operation has completed successfully. This is a terminal status code.
 
#define LBM_ASYNC_OP_STATUS_ERROR   129
 Asynchronous operation status code. Overall operation has failed. This is a terminal status code.
 
#define LBM_ASYNC_OP_STATUS_CANCELED   130
 Asynchronous operation status code. Overall operation has been successfully canceled. This is a terminal status code.
 
#define LBM_ASYNC_OP_INVALID_HANDLE   0
 Invalid asynchronous operation handle.
 
#define LBM_ASYNC_OPERATION_CANCEL_FLAG_NONBLOCK   0x1
 lbm_async_operation_cancel:flag. Do not block if the operation cannot be immediately canceled.
 
#define LBM_ASYNC_OPERATION_STATUS_FLAG_NONBLOCK   0x1
 lbm_async_operation_status flag. Do not block if the operation's status cannot be retrieved immediately.
 
#define LBM_RESOLVER_EVENT_ADVERTISEMENT_TYPE   0x01
 
#define LBM_RESOLVER_EVENT_ADVERTISEMENT_FLAGS_LJ   0x00000001
 Bits related to topic resolution advertisements. For UM internal use only.
 
#define LBM_RESOLVER_EVENT_ADVERTISEMENT_FLAGS_UME   0x00000002
 Bits related to topic resolution advertisements. For UM internal use only.
 
#define LBM_RESOLVER_EVENT_ADVERTISEMENT_FLAGS_UMQ   0x00000004
 Bits related to topic resolution advertisements. For UM internal use only.
 
#define LBM_RESOLVER_EVENT_ADVERTISEMENT_FLAGS_ULB   0x00000008
 Bits related to topic resolution advertisements. For UM internal use only.
 
#define LBM_RESOLVER_EVENT_ADVERTISEMENT_FLAGS_EVC   0x00000010 /* Eviction Notice */
 Bits related to topic resolution advertisements. For UM internal use only.
 
#define LBM_PROC_EVENT_EX_FLAG_USER_TIME   0x0001
 Bit in lbm_process_events_info_t::flags. See lbm_context_process_events_ex(). User must supply a valid time of day in the time_val field when this bit is set.
 
#define LBM_PROC_EVENT_EX_FLAG_NO_MAIN_LOOP_MUTEX   0x0002
 Bit in lbm_process_events_info_t::flags. See lbm_context_process_events_ex(). Suppresses UM from taking certain Mutex locks.
 
#define LBM_RESOLVER_EVENT_INFO_CAPABILITY_VERSION_FLAG_UME   0x1
 
#define LBM_RESOLVER_EVENT_INFO_CAPABILITY_VERSION_FLAG_UMQ   0x2
 
#define LBM_RESOLVER_EVENT_INFO_INFO_DOMAIN_ID_PRESENT_FLAG   0x1ULL
 
#define LBM_RESOLVER_EVENT_INFO_INFO_SOURCE_ID_PRESENT_FLAG   0x2ULL
 
#define LBM_RESOLVER_EVENT_INFO_INFO_SOURCE_ID_TYPE_PRESENT_FLAG   0x4ULL
 
#define LBM_RESOLVER_EVENT_INFO_INFO_VERSION_PRESENT_FLAG   0x8ULL
 
#define LBMR_RESOLVER_EVENT_INFO_SRC_TYPE_APPLICATION   0
 
#define LBMR_RESOLVER_EVENT_INFO_SRC_TYPE_TNWGD   1
 
#define LBMR_RESOLVER_EVENT_INFO_SRC_TYPE_STORE   2
 
#define LBM_ASYNC_OP_INFO_FLAG_INLINE   0x1
 lbm_async_operation_info_t flag. Asynchronous operation callback is being called directly inline from within an API call.
 
#define LBM_ASYNC_OP_INFO_FLAG_FIRST   0x2
 lbm_async_operation_info_t flag. This is the very first notification for this particular asynchronous operation.
 
#define LBM_ASYNC_OP_INFO_FLAG_LAST   0x4
 lbm_async_operation_info_t flag. This is the very last notification for this particular asynchronous operation.
 
#define LBM_ASYNC_OP_INFO_FLAG_ONLY   (LBM_ASYNC_OP_INFO_FLAG_FIRST | LBM_ASYNC_OP_INFO_FLAG_LAST)
 lbm_async_operation_info_t flag. This is the only notification that will be delivered for this particular asynchronous operation.
 
#define LBM_SRC_COST_FUNCTION_REJECT   0xffffffff
 Source cost function return value to indicate this source should be permanently rejected.
 
#define LBM_CONFIG_OPTIONS_STR_LEN   128
 Size allocation of string buffers in lbm_config_option_t.
 
#define LBM_RCV_TOPIC_STATS_FLAG_NO_SOURCE   0x0
 Receiver topic stats structure with source information.
 
#define LBM_RCV_TOPIC_STATS_FLAG_SRC_CREATED   0x1
 
#define LBM_RCV_TOPIC_STATS_FLAG_SRC_DELETED   0x2
 
#define LBM_RCV_TOPIC_STATS_FLAG_SRC_VALID   LBM_RCV_TOPIC_STATS_FLAG_SRC_CREATED
 
#define lbm_rcv_retrieve_all_transport_stats(r, n, s)   lbm_rcv_retrieve_all_transport_stats_ex(r,n,sizeof(lbm_rcv_transport_stats_t),s)
 
#define lbm_context_retrieve_rcv_transport_stats(c, n, s)   lbm_context_retrieve_rcv_transport_stats_ex(c,n,sizeof(lbm_rcv_transport_stats_t),s)
 
#define lbm_context_retrieve_src_transport_stats(c, n, s)   lbm_context_retrieve_src_transport_stats_ex(c,n,sizeof(lbm_src_transport_stats_t),s)
 

Typedefs

typedef unsigned int lbm_uint_t
 For portability.
 
typedef unsigned long int lbm_ulong_t
 For portability.
 
typedef unsigned short int lbm_ushort_t
 For portability.
 
typedef unsigned char lbm_uchar_t
 For portability.
 
typedef uint8_t lbm_uint8_t
 For portability.
 
typedef uint16_t lbm_uint16_t
 For portability.
 
typedef uint32_t lbm_uint32_t
 For portability.
 
typedef int32_t lbm_int32_t
 For portability.
 
typedef uint64_t lbm_uint64_t
 For portability.
 
typedef int64_t lbm_int64_t
 For portability.
 
typedef int lbm_handle_t
 Portable type across Unix and Windows for network socket (fd).
 
typedef struct lbm_context_t_stct lbm_context_t
 Context object (opaque) for UM. See Context Object.
 
typedef struct lbm_iovec_t_stct lbm_iovec_t
 Structure, struct iovec compatible, that holds information about buffers used for vectored sends. More...
 
typedef struct lbm_ipv4_address_mask_t_stct lbm_ipv4_address_mask_t
 Structure that holds an IPv4 address and a CIDR style netmask. More...
 
typedef struct lbm_timeval_t_stct lbm_timeval_t
 Structure that holds seconds and microseconds since midnight, Jan 1, 1970 UTC. More...
 
typedef struct lbm_timespec_t_stct lbm_timespec_t
 Structure that holds seconds and nanoseconds since midnight, Jan 1, 1970 UTC. More...
 
typedef struct lbm_src_event_wakeup_t_stct lbm_src_event_wakeup_t
 Structure that holds source wakeup event data. More...
 
typedef struct lbm_src_event_flight_size_notification_t_stct lbm_src_event_flight_size_notification_t
 Structure that holds flight size notification event data. More...
 
typedef struct lbm_src_event_ume_registration_t_stct lbm_src_event_ume_registration_t
 DEPRECATED, do not use. More...
 
typedef struct lbm_src_event_ume_registration_ex_t_stct lbm_src_event_ume_registration_ex_t
 Structure that holds Store registration information for the UMP source in an extended form. More...
 
typedef struct lbm_src_event_ume_registration_complete_ex_t_stct lbm_src_event_ume_registration_complete_ex_t
 Structure that holds information for sources after registration is complete to all involved Stores. More...
 
typedef struct lbm_src_event_ume_deregistration_ex_t_stct lbm_src_event_ume_deregistration_ex_t
 Structure that holds Store deregistration information for the UMP source in an extended form. More...
 
typedef struct lbm_src_event_timestamp_info_t_stct lbm_src_event_timestamp_info_t
 Structure that holds the High Resolution Timestamp and sequence number associated with the sent message. More...
 
typedef struct lbm_msg_ume_registration_t_stct lbm_msg_ume_registration_t
 DEPRECATED, NOT USED. More...
 
typedef struct lbm_msg_ume_registration_ex_t_stct lbm_msg_ume_registration_ex_t
 Structure that holds Store registration information for the UM persistent receiver after a successful registration. More...
 
typedef struct lbm_msg_ume_registration_complete_ex_t_stct lbm_msg_ume_registration_complete_ex_t
 Structure that holds information for receivers after registration is complete to all involved Stores. More...
 
typedef struct lbm_msg_ume_deregistration_ex_t_stct lbm_msg_ume_deregistration_ex_t
 Structure that holds Store deregistration information for the UM receiver after a successful deregistration. More...
 
typedef struct lbm_src_event_ume_ack_info_t_stct lbm_src_event_ume_ack_info_t
 Structure that holds ACK information for a given message. More...
 
typedef struct lbm_src_event_ume_ack_ex_info_t_stct lbm_src_event_ume_ack_ex_info_t
 Structure that holds ACK information for a given message in an extended form. More...
 
typedef struct lbm_flight_size_inflight_t_stct lbm_flight_size_inflight_t
 Structure that holds information for source total inflight messages and bytes See lbm_flight_size_inflight_t_stct for field definitions.
 
typedef struct lbm_src_channel_info_t_stct lbm_src_channel_info_t
 Opaque structure that holds information used for sending on channels.
 
typedef struct lbm_umq_index_info_t_stct lbm_umq_index_info_t
 Structure that holds information used for sending and receiving messages with UMQ indices. More...
 
typedef struct lbm_msg_umq_index_assignment_eligibility_stop_complete_ex_t_stct lbm_msg_umq_index_assignment_eligibility_stop_complete_ex_t
 Structure that holds index assignment information for queuing receivers when an index stops. More...
 
typedef struct lbm_msg_umq_index_assigned_ex_t_stct lbm_msg_umq_index_assigned_ex_t
 Structure that holds beginning-of-index information for queuing receivers. More...
 
typedef struct lbm_msg_umq_index_released_ex_t_stct lbm_msg_umq_index_released_ex_t
 Structure that holds end-of-index information for queuing receivers. More...
 
typedef struct lbm_msg_umq_index_assignment_eligibility_start_complete_ex_t_stct lbm_msg_umq_index_assignment_eligibility_start_complete_ex_t
 Structure that holds index assignment information for queuing receivers to indicate the start of index assignment. More...
 
typedef struct lbm_apphdr_chain_t_stct lbm_apphdr_chain_t
 Opaque structure used for sending messages with app header chains.
 
typedef struct lbm_umq_msg_total_lifetime_info_t_stct lbm_umq_msg_total_lifetime_info_t
 Structure that holds UMQ message total lifetime information. More...
 
typedef union lbm_hf_sequence_number_t_stct lbm_hf_sequence_number_t
 Structure to hold a hot failover sequence number.
 
typedef lbm_uint64_t lbm_umq_regid_t
 Registration ID used for UMQ contexts for both sources and receivers.
 
typedef struct lbm_umq_msgid_t_stct lbm_umq_msgid_t
 Structure that holds information for UMQ messages that allows the message to be identified uniquely. More...
 
typedef struct lbm_umq_queue_application_set_t_stct lbm_umq_queue_application_set_t
 Structure for defining a UMQ application set. More...
 
typedef struct lbm_umq_queue_topic_t_stct lbm_umq_queue_topic_t
 Structure that holds queue topic information and can be used as a handle to a queue topic. More...
 
typedef struct lbm_msg_t_stct lbm_msg_t
 Information structure for receive events delivered to receiver callback lbm_rcv_cb_proc. See Message Object. More...
 
typedef struct lbm_event_queue_t_stct lbm_event_queue_t
 Opaque structure that designates a UM event queue object. See Event Queue Object.
 
typedef lbm_uint64_t lbm_async_operation_handle_t
 Opaque handle to an asynchronous operation.
 
typedef struct lbm_resolver_event_info_t_stct lbm_resolver_event_info_t
 Resolver event structure (for UM internal use only). More...
 
typedef lbm_uint32_t(* lbm_resolver_event_cb_func) (lbm_context_t *ctx, int event, const void *ed, const lbm_resolver_event_info_t *info, void *clientd)
 Resolver event callback signature (for UM internal use only).
 
typedef struct lbm_resolver_event_advertisement_t_stct lbm_resolver_event_advertisement_t
 Advertisement event structure (for UM internal use only).
 
typedef struct lbm_resolver_event_func_t_stct lbm_resolver_event_func_t
 Resolver event function (for UM internal use only).
 
typedef void *(* lbm_mem_mgt_malloc_cb_func) (size_t size, void *clientd)
 Application callback to malloc memory using application specific function. More...
 
typedef void *(* lbm_mem_mgt_realloc_cb_func) (void *ptr, size_t size, void *clientd)
 Application callback to reallocate memory using application specific function. More...
 
typedef void(* lbm_mem_mgt_free_cb_func) (void *ptr, void *clientd)
 Application callback to free memory using application specific function. More...
 
typedef struct lbm_mem_mgt_callbacks_t_stct lbm_mem_mgt_callbacks_t
 Structure that holds the application function to configure Smart Source memory management. More...
 
typedef struct lbm_process_events_info_t_stct lbm_process_events_info_t
 Structure that holds information for the extended Process Events calls. More...
 
typedef int(* lbm_async_operation_function_cb) (lbm_async_operation_info_t *opinfo, void *clientd)
 User-supplied application callback for asynchronous operation status and completion. More...
 
typedef struct lbm_msg_properties_t_stct lbm_msg_properties_t
 A struct that holds information used for messages with properties. (opaque) More...
 
typedef struct lbm_src_send_ex_info_t_stct lbm_src_send_ex_info_t
 Structure that holds information for the extended send calls. More...
 
typedef struct lbm_ssrc_send_ex_info_t_stct lbm_ssrc_send_ex_info_t
 Structure that holds information for the extended smart source send calls. More...
 
typedef struct lbm_ume_rcv_regid_ex_func_info_t_stct lbm_ume_rcv_regid_ex_func_info_t
 Structure that holds information for UMP receiver registration ID application callbacks. More...
 
typedef struct lbm_src_event_sequence_number_info_t_stct lbm_src_event_sequence_number_info_t
 Structure that holds sequence number information for a message sent by a source. More...
 
typedef struct lbm_ume_rcv_recovery_info_ex_func_info_t_stct lbm_ume_rcv_recovery_info_ex_func_info_t
 Structure that holds information for UMP receiver recovery sequence number info application callbacks. More...
 
typedef struct lbm_src_event_umq_message_id_info_t_stct lbm_src_event_umq_message_id_info_t
 Structure that holds Message ID information for a message sent by a sending UMQ application. More...
 
typedef struct lbm_context_event_umq_registration_ex_t_stct lbm_context_event_umq_registration_ex_t
 Structure that holds queue registration information for the UMQ context in an extended form. More...
 
typedef struct lbm_context_event_umq_registration_complete_ex_t_stct lbm_context_event_umq_registration_complete_ex_t
 Structure that holds information for contexts after registration is complete to all involved queue instances. More...
 
typedef struct lbm_src_event_umq_registration_complete_ex_t_stct lbm_src_event_umq_registration_complete_ex_t
 Structure that holds information for sources after registration is complete to all involved queue instances. More...
 
typedef struct lbm_msg_umq_registration_complete_ex_t_stct lbm_msg_umq_registration_complete_ex_t
 Structure that holds queue information for queuing receivers after registration is complete to all involved queue instances. More...
 
typedef struct lbm_src_event_umq_stability_ack_info_ex_t_stct lbm_src_event_umq_stability_ack_info_ex_t
 Structure that holds UMQ ACK information for a given message in an extended form. More...
 
typedef struct lbm_msg_umq_deregistration_complete_ex_t_stct lbm_msg_umq_deregistration_complete_ex_t
 Structure that holds information for queuing receivers after they de-register from a queue. More...
 
typedef struct lbm_src_event_umq_ulb_receiver_info_ex_t_stct lbm_src_event_umq_ulb_receiver_info_ex_t
 Structure that holds UMQ ULB receiver information in an extended form. More...
 
typedef struct lbm_src_event_umq_ulb_message_info_ex_t_stct lbm_src_event_umq_ulb_message_info_ex_t
 Structure that holds UMQ ULB message information in an extended form. More...
 
typedef struct lbm_datagram_acceleration_recv_info_t_stct lbm_datagram_acceleration_recv_info_t
 Information returned from lbm_datagram_acceleration_recvfrom_function_t function. More...
 
typedef int(* lbm_datagram_acceleration_init_function_t) (uint16_t api_version)
 Application callback function to implement datagram acceleration initialization. More...
 
typedef int(* lbm_datagram_acceleration_open_function_t) (struct in_addr *interface_addr, int flags, void **device_out)
 Application callback function to implement datagram acceleration open. More...
 
typedef int(* lbm_datagram_acceleration_close_function_t) (void *device)
 Application callback function to implement datagram acceleration close. More...
 
typedef int(* lbm_datagram_acceleration_bind_function_t) (void *device, int flags, int port, void *context, void **handle_out)
 Application callback function to implement datagram acceleration bind. More...
 
typedef int(* lbm_datagram_acceleration_unbind_function_t) (void *handle)
 Application callback function to implement datagram acceleration unbind. More...
 
typedef int(* lbm_datagram_acceleration_mcast_join_function_t) (void *handle, struct in_addr *mcast_addr)
 Application callback function to implement datagram acceleration multicast join. More...
 
typedef int(* lbm_datagram_acceleration_mcast_leave_function_t) (void *handle, struct in_addr *mcast_addr)
 Application callback function to implement datagram acceleration multicast leave. More...
 
typedef int(* lbm_datagram_acceleration_recvfrom_function_t) (void *device, int mode, char *buffer, size_t length, struct sockaddr_in *sin_from, struct sockaddr_in *sin_to, lbm_datagram_acceleration_recv_info_t *info)
 Application callback function to implement datagram acceleration receive from. More...
 
typedef int(* lbm_datagram_acceleration_send_connect_function_t) (void *handle, const struct sockaddr_in *dest_sin, int flags, int ttl, void **send_handle_out)
 Application callback function to implement datagram acceleration send connect. More...
 
typedef int(* lbm_datagram_acceleration_send_disconnect_function_t) (void *send_handle)
 Application callback function to implement datagram acceleration send disconnect. More...
 
typedef int(* lbm_datagram_acceleration_send_function_t) (void *send_handle, const void *buffer, size_t length, int flags)
 Application callback function to implement datagram acceleration send. More...
 
typedef int(* lbm_datagram_acceleration_sendto_function_t) (void *device, struct sockaddr_in *sin, const void *buffer, size_t length, int flags)
 Application callback function to implement datagram acceleration send to. More...
 
typedef int(* lbm_datagram_acceleration_getaddr_function_t) (void *device, struct sockaddr_in *sin)
 Application callback function to implement datagram acceleration get address. More...
 
typedef struct lbm_datagram_acceleration_func_t_stct lbm_datagram_acceleration_func_t
 A structure used to hold functions to configure datagram acceleration implementation callbacks. More...
 
typedef lbm_ulong_t(* lbm_str_hash_function_cb) (const char *str)
 Application callback for user-supplied topic hash function. More...
 
typedef lbm_ulong_t(* lbm_str_hash_function_cb_ex) (const char *str, size_t strlen, void *clientd)
 Application callback for user-supplied extended version of the topic hash function. More...
 
typedef int(* lbm_src_notify_function_cb) (const char *topic_str, const char *src_str, void *clientd)
 Application callback to inform application of the presence of new sources for topics. More...
 
typedef int(* lbm_wildcard_rcv_compare_function_cb) (const char *topic_str, void *clientd)
 Application callback for application-supplied wildcard matching. More...
 
typedef lbm_uint_t(* lbm_ume_rcv_regid_function_cb) (const char *src_str, lbm_uint_t src_regid, void *clientd)
 Application callback to set the registration ID for a receiver for a specific source. More...
 
typedef lbm_uint_t(* lbm_ume_rcv_regid_ex_function_cb) (lbm_ume_rcv_regid_ex_func_info_t *info, void *clientd)
 Application callback to set the registration ID for a receiver for a specific source, extended form. More...
 
typedef int(* lbm_ume_src_force_reclaim_function_cb) (const char *topic_str, lbm_uint_t seqnum, void *clientd)
 Application callback for notification of forced reclamation of retained messages for UMP sources. More...
 
typedef int(* lbm_mim_unrecloss_function_cb) (const char *source_name, lbm_uint_t seqnum, void *clientd)
 Application callback in receiving application for notification of unrecoverable lost messages from a multicast immediate message sender. More...
 
typedef int(* lbm_ume_rcv_recovery_info_ex_function_cb) (lbm_ume_rcv_recovery_info_ex_func_info_t *info, void *clientd)
 Application callback to set the lowest sequence number to be requested during recovery, extended form. More...
 
typedef void *(* lbm_rcv_src_notification_create_function_cb) (const char *source_name, void *clientd)
 Application callback for notification of creation of sources for a topic. More...
 
typedef int(* lbm_rcv_src_notification_delete_function_cb) (const char *source_name, void *clientd, void *source_clientd)
 Application callback for notification of deletion of sources for a topic. More...
 
typedef struct lbm_str_hash_func_t_stct lbm_str_hash_func_t
 Structure that holds the hash function callback information. More...
 
typedef struct lbm_str_hash_func_ex_t_stct lbm_str_hash_func_ex_t
 Structure that holds the extended hash function callback information. More...
 
typedef struct lbm_src_notify_func_t_stct lbm_src_notify_func_t
 Structure that holds the context application function to configure the callback when new sources are discovered. More...
 
typedef void *(* lbm_rcv_batch_notify_func_start_cb) (void *clientd)
 UM internal use only. DO NOT USE.
 
typedef void(* lbm_rcv_batch_notify_func_end_cb) (void *per_batch_clientd, void *clientd)
 UM internal use only. DO NOT USE.
 
typedef struct lbm_rcv_batch_notify_func_t_stct lbm_rcv_batch_notify_func_t
 UM internal use only. DO NOT USE.
 
typedef struct lbm_wildcard_rcv_compare_func_t_stct lbm_wildcard_rcv_compare_func_t
 Structure that holds the application callback function to configure "appcb" type wildcard pattern type. More...
 
typedef struct lbm_ume_rcv_regid_func_t_stct lbm_ume_rcv_regid_func_t
 Structure that holds the application function to configure the callback for registration ID setting. More...
 
typedef struct lbm_ume_rcv_regid_ex_func_t_stct lbm_ume_rcv_regid_ex_func_t
 Structure that holds the application function to configure the callback for registration ID setting, extended form. More...
 
typedef struct lbm_ume_src_force_reclaim_func_t_stct lbm_ume_src_force_reclaim_func_t
 Structure that holds the application function to configure the forced reclamation notification callback. More...
 
typedef struct lbm_mim_unrecloss_func_t_stct lbm_mim_unrecloss_func_t
 Structure that holds the application callback for multicast immediate message unrecoverable loss notification. More...
 
typedef struct lbm_ume_rcv_recovery_info_ex_func_t_stct lbm_ume_rcv_recovery_info_ex_func_t
 Structure that holds the application function to configure the callback for recovery sequence number information, extended form. More...
 
typedef struct lbm_ume_store_entry_t_stct lbm_ume_store_entry_t
 Structure that holds information to configure a persistent Store. More...
 
typedef struct lbm_ucast_resolver_entry_t_stct lbm_ucast_resolver_entry_t
 Structure that holds information to configure a unicast resolver daemon. More...
 
typedef struct lbm_resolver_service_entry_t_stct lbm_resolver_service_entry_t
 Structure that holds information to configure a Resolver Service. More...
 
typedef struct lbm_transport_broker_entry_t_stct lbm_transport_broker_entry_t
 Structure that holds IP and Port to configure the broker. More...
 
typedef struct lbm_ume_store_name_entry_t_stct lbm_ume_store_name_entry_t
 Structure that holds information to configure a persistent Store. More...
 
typedef struct lbm_ume_store_group_entry_t_stct lbm_ume_store_group_entry_t
 Structure that holds information to configure a Persistent Store group. More...
 
typedef struct lbm_rcv_src_notification_func_t_stct lbm_rcv_src_notification_func_t
 Structure that holds the receiver application functions when configuring callbacks when sources are subscribed or unsubscribed. More...
 
typedef struct ume_liveness_receiving_context_t_stct ume_liveness_receiving_context_t
 Structure that holds the information about a receiving context. More...
 
typedef void *(* lbm_ume_ctx_rcv_ctx_notification_create_function_cb) (const ume_liveness_receiving_context_t *rcv, void *clientd)
 Application callback for notification of detection of a receiving application. More...
 
typedef int(* lbm_ume_ctx_rcv_ctx_notification_delete_function_cb) (const ume_liveness_receiving_context_t *rcv, void *clientd, void *source_clientd)
 Application callback for notification of unresponsiveness of a receiving application. More...
 
typedef struct lbm_ume_ctx_rcv_ctx_notification_func_t_stct lbm_ume_ctx_rcv_ctx_notification_func_t
 Structure that holds the application callback for receiving context status notifications for source context. More...
 
typedef struct lbm_umq_queue_entry_t_stct lbm_umq_queue_entry_t
 Structure that holds queue registration information to configure a queuing broker. More...
 
typedef struct lbm_umq_ulb_receiver_type_entry_t_stct lbm_umq_ulb_receiver_type_entry_t
 Structure that holds ULB queue information to configure an application set. More...
 
typedef struct lbm_umq_ulb_application_set_attr_t_stct lbm_umq_ulb_application_set_attr_t
 Structure that holds information to configure any of several ULB source's application set attributes. The attribute being set is determined by the configuration option. More...
 
typedef struct lbm_umq_ulb_receiver_type_attr_t_stct lbm_umq_ulb_receiver_type_attr_t
 Structure that holds information to configure any of several ULB source's receiver type attributes. The attribute being set is determined by the configuration option. More...
 
typedef int(* lbm_context_src_cb_proc) (lbm_context_t *ctx, int event, void *ed, void *clientd)
 Application context-level callback for events associated with context sources (immediate mode sources and responses). More...
 
typedef struct lbm_context_src_event_func_t_stct lbm_context_src_event_func_t
 Structure that holds the application callback to configure context-level source events. More...
 
typedef int(* lbm_context_event_cb_proc) (lbm_context_t *ctx, int event, void *ed, void *clientd)
 Application context-level callback for events associated with contexts. More...
 
typedef struct lbm_context_event_func_t_stct lbm_context_event_func_t
 Structure that holds the application function to configure the callback for context-level events. More...
 
typedef struct lbm_serialized_response_t_stct lbm_serialized_response_t
 Structure that holds a serialized UM response object. More...
 
typedef struct lbm_buff_t_stct lbm_buff_t
 UM internal use only. DO NOT USE.
 
typedef struct lbm_wildcard_rcv_t_stct lbm_wildcard_rcv_t
 Opaque structure that designates a UM wildcard receiver object. See UM Wildcard Receivers.
 
typedef struct lbm_hf_rcv_t_stct lbm_hf_rcv_t
 Opaque structure that designates a UM Hot Failover receiver object.
 
typedef struct lbm_hfx_attr_t_stct lbm_hfx_attr_t
 Opaque structure that designates HFX configuration options.
 
typedef struct lbm_hfx_t_stct lbm_hfx_t
 Opaque structure that designates an HFX object (for hot failover receivers across multiple contexts)
 
typedef struct lbm_hfx_rcv_t_stct lbm_hfx_rcv_t
 Opaque structure that designates an HFX receiver.
 
typedef struct lbm_topic_t_stct lbm_topic_t
 Opaque structure that designates a Topic. See Topic Object.
 
typedef struct lbm_src_t_stct lbm_src_t
 Opaque structure that designates a UM source. See Source Object.
 
typedef struct lbm_ssrc_t_stct lbm_ssrc_t
 Opaque structure that designates a UM Smart Source. More...
 
typedef struct lbm_rcv_t_stct lbm_rcv_t
 Opaque structure that designates a UM receiver. See Receiver Object.
 
typedef struct lbm_request_t_stct lbm_request_t
 Opaque structure that designates a UM request object. More...
 
typedef struct lbm_response_t_stct lbm_response_t
 Opaque structure that designates a UM response object.
 
typedef struct lbm_msg_fragment_info_t_stct lbm_msg_fragment_info_t
 Structure that holds fragment information for UM messages when appropriate. More...
 
typedef struct lbm_msg_gateway_info_t_stct lbm_msg_gateway_info_t
 DEPRECATED, do not use. More...
 
typedef struct lbm_msg_channel_info_t_stct lbm_msg_channel_info_t
 Structure that represents UMS Spectrum channel information. More...
 
typedef struct lbm_ume_rcv_ack_t_stct lbm_ume_rcv_ack_t
 Opaque structure that designates a UMP ack object.
 
typedef int(* lbm_immediate_msg_cb_proc) (lbm_context_t *ctx, lbm_msg_t *msg, void *clientd)
 Application callback for topicless immediate-mode received messages. More...
 
typedef struct lbm_context_rcv_immediate_msgs_func_t_stct lbm_context_rcv_immediate_msgs_func_t
 Structure that holds the application function to configure a callback for receiving certain immediate mode messages (UIM). More...
 
typedef struct lbm_transport_source_info_t_stct lbm_transport_source_info_t
 Structure that holds parsed transport source strings. More...
 
typedef lbm_uint32_t(* lbm_src_cost_function_cb) (const char *topic, const lbm_transport_source_info_t *transport, lbm_uint32_t hop_count, lbm_uint32_t cost, void *clientd)
 Application callback to evaluate the cost of a newly discovered source. More...
 
typedef struct lbm_src_cost_func_t_stct lbm_src_cost_func_t
 Structure that holds the source_cost_evaluation_function (context) context option.
 
typedef struct lbm_context_attr_t_stct lbm_context_attr_t
 Structure used to hold configuration options for contexts. More...
 
typedef struct lbm_config_option_stct_t lbm_config_option_t
 Config option structure holding the option name and value via string types.
 
typedef struct lbm_src_topic_attr_t_stct lbm_src_topic_attr_t
 Opaque structure that holds configuration options for source topics.
 
typedef struct lbm_rcv_topic_attr_t_stct lbm_rcv_topic_attr_t
 Opaque structure that holds configuration options for receiver topics.
 
typedef int(* lbm_wildcard_rcv_create_function_cb) (const char *topic_str, lbm_rcv_topic_attr_t *attr, void *clientd)
 Application callback for wildcard receiver creation. More...
 
typedef struct lbm_wildcard_rcv_create_func_t_stct lbm_wildcard_rcv_create_func_t
 Structure that holds the receiver creation function to configure the wildcard receiver create callback. More...
 
typedef int(* lbm_wildcard_rcv_delete_function_cb) (const char *topic_str, void *clientd)
 Application callback for wildcard receiver deletion. More...
 
typedef struct lbm_wildcard_rcv_delete_func_t_stct lbm_wildcard_rcv_delete_func_t
 Structure that holds the receiver deletion function information to configure the wildcard receiver delete callback. More...
 
typedef struct lbm_wildcard_rcv_attr_t_stct lbm_wildcard_rcv_attr_t
 Opaque structure that holds configuration options for wildcard receivers.
 
typedef struct lbm_src_transport_stats_tcp_t_stct lbm_src_transport_stats_tcp_t
 Structure that holds datagram statistics for source TCP transports. More...
 
typedef struct lbm_src_transport_stats_lbtrm_t_stct lbm_src_transport_stats_lbtrm_t
 Structure that holds datagram statistics for source LBT-RM transports. More...
 
typedef struct lbm_src_transport_stats_daemon_t_stct lbm_src_transport_stats_daemon_t
 DEPRECATED, do not use. More...
 
typedef struct lbm_src_transport_stats_lbtru_t_stct lbm_src_transport_stats_lbtru_t
 Structure that holds datagram statistics for source LBT-RU transports. More...
 
typedef struct lbm_src_transport_stats_lbtipc_t_stct lbm_src_transport_stats_lbtipc_t
 Structure that holds datagram statistics for source LBT-IPC transports. More...
 
typedef struct lbm_src_transport_stats_lbtsmx_t_stct lbm_src_transport_stats_lbtsmx_t
 Structure that holds datagram statistics for source LBT-SMX transports. More...
 
typedef struct lbm_src_transport_stats_lbtrdma_t_stct lbm_src_transport_stats_lbtrdma_t
 DEPRECATED, do not use. lbt-rdma is no longer supported. More...
 
typedef struct lbm_src_transport_stats_broker_t_stct lbm_src_transport_stats_broker_t
 Structure that holds datagram statistics for source BROKER transports. More...
 
typedef struct lbm_src_transport_stats_t_stct lbm_src_transport_stats_t
 Structure that holds statistics for source transports. More...
 
typedef struct lbm_rcv_transport_stats_tcp_t_stct lbm_rcv_transport_stats_tcp_t
 Structure that holds datagram statistics for receiver TCP transports. More...
 
typedef struct lbm_rcv_transport_stats_lbtrm_t_stct lbm_rcv_transport_stats_lbtrm_t
 Structure that holds datagram statistics for receiver LBT-RM transports. More...
 
typedef struct lbm_rcv_transport_stats_daemon_t_stct lbm_rcv_transport_stats_daemon_t
 DEPRECATED, do not use. More...
 
typedef struct lbm_rcv_transport_stats_lbtru_t_stct lbm_rcv_transport_stats_lbtru_t
 Structure that holds datagram statistics for receiver LBT-RU transports. More...
 
typedef struct lbm_rcv_transport_stats_lbtipc_t_stct lbm_rcv_transport_stats_lbtipc_t
 Structure that holds datagram statistics for receiver LBT-IPC transports. More...
 
typedef struct lbm_rcv_transport_stats_lbtsmx_t_stct lbm_rcv_transport_stats_lbtsmx_t
 Structure that holds datagram statistics for receiver LBT-SMX transports. More...
 
typedef struct lbm_rcv_transport_stats_lbtrdma_t_stct lbm_rcv_transport_stats_lbtrdma_t
 DEPRECATED, do not use. LBT-RDMA is no longer supported. More...
 
typedef struct lbm_rcv_transport_stats_broker_t_stct lbm_rcv_transport_stats_broker_t
 Structure that holds message statistics for receiver BROKER transports. More...
 
typedef struct lbm_rcv_transport_stats_t_stct lbm_rcv_transport_stats_t
 Structure that holds statistics for receiver transports. More...
 
typedef struct lbm_event_queue_attr_t_stct lbm_event_queue_attr_t
 Opaque structure that holds configuration options for event queue objects.
 
typedef struct lbm_event_queue_stats_t_stct lbm_event_queue_stats_t
 Structure that holds statistics for an event queue. More...
 
typedef struct lbm_context_stats_t_stct lbm_context_stats_t
 Structure that holds statistics for a context. More...
 
typedef struct lbm_rcv_topic_stats_t_stct lbm_rcv_topic_stats_t
 Structure that holds statistics for a receiver topic. More...
 
typedef struct lbm_wildcard_rcv_stats_t_stct lbm_wildcard_rcv_stats_t
 Structure that holds statistics for a wildcard receiver. More...
 
typedef int(* lbm_timer_cb_proc) (lbm_context_t *ctx, const void *clientd)
 Application callback for timer events. More...
 
typedef int(* lbm_rcv_cb_proc) (lbm_rcv_t *rcv, lbm_msg_t *msg, void *clientd)
 Application callback for receiver events. More...
 
typedef int(* lbm_fd_cb_proc) (lbm_context_t *ctx, lbm_handle_t handle, lbm_ulong_t ev, void *clientd)
 Application callback for events associated with an application file descriptor or socket. More...
 
typedef int(* lbm_src_cb_proc) (lbm_src_t *src, int event, void *ed, void *clientd)
 Application callback for events associated with a source. More...
 
typedef int(* lbm_ssrc_cb_proc) (lbm_ssrc_t *ssrc, int event, void *ed, void *clientd)
 Application callback for source events associated with a UM Smart Source. More...
 
typedef int(* lbm_request_cb_proc) (lbm_request_t *req, lbm_msg_t *msg, void *clientd)
 Application callback for responses returned when a request is sent. More...
 
typedef int(* lbm_event_queue_monitor_proc) (lbm_event_queue_t *evq, int event, size_t evq_size, lbm_ulong_t event_delay_usec, void *clientd)
 Application callback for event queue monitor events. More...
 
typedef int(* lbm_log_cb_proc) (int level, const char *message, void *clientd)
 Application callback for message logging. More...
 
typedef int(* lbm_daemon_event_cb_proc) (lbm_context_t *ctx, int event, const char *info, void *clientd)
 Application callback for daemon events. DO NOT USE. More...
 
typedef void(* lbm_event_queue_cancel_cb_proc) (int dispatch_thrd, void *clientd)
 Application callback for a wide variety of object delete or operation cancellation functions that use an event queue. The application is called after all events associated with the deleted object or cancelled operation are deleted, cancelled, or completed. More...
 
typedef struct lbm_event_queue_cancel_cb_info_t_stct lbm_event_queue_cancel_cb_info_t
 Structure passed to cancel/delete functions so that a cancel callback may be called. More...
 
typedef int(* lbm_flight_size_set_inflight_cb_proc) (int inflight, void *clientd)
 Application callback used to override the Store's stability ACKs and force inflight message count to a specific value. More...
 
typedef void(* lbm_flight_size_set_inflight_ex_cb_proc) (lbm_flight_size_inflight_t *inflight, void *clientd)
 Application callback used to override the Store's stability ACKs and force inflight message and byte counts to specific values. More...
 
typedef struct lbm_apphdr_chain_iter_t_stct lbm_apphdr_chain_iter_t
 An iterator (opaque) used to iterate over elements of an app header chain.
 
typedef struct lbm_apphdr_chain_elem_t_stct lbm_apphdr_chain_elem_t
 Structure that represents an element in an app header chain. More...
 
typedef struct lbm_msg_properties_iter_t_stct lbm_msg_properties_iter_t
 A struct used for iterating over properties pointed to by an lbm_msg_properties_t. The iterator is used to access the fields of a property. More...
 
typedef struct lbm_umq_msg_selector_t_stct lbm_umq_msg_selector_t
 Opaque handle to a message selector.
 
typedef int(* lbm_cred_callback_fn) (const char *name, size_t name_len, const char *passwd, size_t passwd_len, void *clientd)
 DEPRECATED, DOES NOT FUNCTION.
 
typedef struct lbm_umm_info_t_stct lbm_umm_info_t
 Structure for specifying UMM daemon connection options. More...
 
typedef struct lbm_xsp_t_stct lbm_xsp_t
 XSP object (opaque) for UM. More...
 
typedef struct lbm_xsp_attr_t_stct lbm_xsp_attr_t
 Structure used to hold attributes for XSPs. More...
 
typedef int(* lbm_xsp_zero_transports_cb_proc) (lbm_xsp_t *xsp, void *clientd)
 Application callback to indicate that the number of transports associated with the given XSP has fallen to zero. More...
 
typedef struct lbm_xsp_zero_transports_func_t_stct lbm_xsp_zero_transports_func_t
 Structure that holds the XSP zero transports function. More...
 
typedef struct lbm_new_transport_info_t_stct lbm_new_transport_info_t
 Structure that holds information about a transport session that we're about to join. More...
 
typedef lbm_xsp_t *(* lbm_transport_mapping_cb_proc) (lbm_context_t *ctx, lbm_new_transport_info_t *info, void *clientd)
 Application callback to provide the user an opportunity to map a new transport session to an XSP. More...
 
typedef struct lbm_transport_mapping_func_t_stct lbm_transport_mapping_func_t
 Structure that holds the application function to configure the XSP transport mapping function callback. More...
 

Enumerations

enum  
 

Functions

LBMExpDLL const char * lbm_version (void)
 return the version string compiled into UM. More...
 
LBMExpDLL int lbm_context_dump (lbm_context_t *ctx, int *size, lbm_config_option_t *opts)
 Retrieves all context configuration option values. More...
 
LBMExpDLL int lbm_context_attr_dump (lbm_context_attr_t *cattr, int *size, lbm_config_option_t *opts)
 Retrieves all context configuration options. More...
 
LBMExpDLL int lbm_context_attr_option_size (void)
 Retrieves the number of options that are of type "context". More...
 
LBMExpDLL int lbm_context_attr_create (lbm_context_attr_t **attr)
 Create and fill a UM context attribute object with the current default values. Note: Informatica recommends the use of XML Configuration Files, for which lbm_context_attr_create_from_xml() should be used. More...
 
LBMExpDLL int lbm_context_attr_create_default (lbm_context_attr_t **attr)
 Create and fill a UM context attribute object with the initial default values. More...
 
LBMExpDLL int lbm_context_attr_create_from_xml (lbm_context_attr_t **attr, const char *context_name)
 Create and fill a UM context attribute object with the current default values for the given context name. More...
 
LBMExpDLL int lbm_context_attr_set_from_xml (lbm_context_attr_t *attr, const char *context_name)
 Fill a UM context attribute object with the current default values for the given context name. More...
 
LBMExpDLL int lbm_context_attr_delete (lbm_context_attr_t *attr)
 Delete a UM context attribute object. More...
 
LBMExpDLL int lbm_context_attr_dup (lbm_context_attr_t **attr, const lbm_context_attr_t *original)
 Duplicate a UM context attribute object. More...
 
LBMExpDLL int lbm_context_attr_setopt (lbm_context_attr_t *attr, const char *optname, const void *optval, size_t optlen)
 Set the value (in binary format) of a configuration option in the supplied context attribute object. More...
 
LBMExpDLL int lbm_context_attr_str_setopt (lbm_context_attr_t *attr, const char *optname, const char *optval)
 Set the value (in string format) of a configuration option in the supplied context attribute object. More...
 
LBMExpDLL int lbm_context_attr_getopt (lbm_context_attr_t *attr, const char *optname, void *optval, size_t *optlen)
 Retrieve the value of an option for the given UM context attribute object. More...
 
LBMExpDLL int lbm_context_attr_str_getopt (lbm_context_attr_t *attr, const char *optname, char *optval, size_t *optlen)
 Retrieve the textual value of an option for the given UM context attribute object. More...
 
LBMExpDLL int lbm_context_create (lbm_context_t **ctxp, const lbm_context_attr_t *attr, lbm_daemon_event_cb_proc proc, void *clientd)
 Create and initialize an lbm_context_t object. More...
 
LBMExpDLL int lbm_context_reactor_only_create (lbm_context_t **ctxp, const lbm_context_attr_t *attr)
 Create and initialize an lbm_context_t object suitable for FD and timers only. More...
 
LBMExpDLL int lbm_context_delete (lbm_context_t *ctx)
 Delete a UM context object. More...
 
LBMExpDLL int lbm_context_delete_ex (lbm_context_t *ctx, lbm_event_queue_cancel_cb_info_t *cbinfo)
 Delete a UM context object with an application callback indicating when the context is fully deleted. This extended version of the context delete function requires the configuration option queue_cancellation_callbacks_enabled (event_queue) be set to 1. More...
 
LBMExpDLL int lbm_context_topic_resolution_request (lbm_context_t *ctx, lbm_ushort_t flags, lbm_ulong_t interval_msec, lbm_ulong_t duration_sec)
 Request Topic Advertisements (sources), Topic Queries (receivers), and/or Wildcard Topic Queries (wildcard receivers) in the configured topic resolution address domain. Since Advertisements and Queries can become quiescent after a period defined by the Topic Resolution configuration options, this function will schedule Topic Resolution Requests at the given interval and duration. Contexts that receive these requests will respond with one advertisement per source and/or one query per receiver as appropriate. These requests will be ignored for topics that are not quiescent. Note that requests are only sent on the outgoing address and are only received on the incoming address. Responses to the request will similarly be sent only on the outgoing address. More...
 
LBMExpDLL int lbm_context_setopt (lbm_context_t *ctx, const char *optname, const void *optval, size_t optlen)
 Set the value (in binary format) of a configuration option in the supplied context. More...
 
LBMExpDLL int lbm_context_str_setopt (lbm_context_t *ctx, const char *optname, const char *optval)
 Set the value (in string format) of a configuration option in the supplied context. More...
 
LBMExpDLL int lbm_context_getopt (lbm_context_t *ctx, const char *optname, void *optval, size_t *optlen)
 Retrieve an option value within the given ctx. More...
 
LBMExpDLL int lbm_context_str_getopt (lbm_context_t *ctx, const char *optname, char *optval, size_t *optlen)
 Retrieve the textual option value within the given ctx. More...
 
LBMExpDLL int lbm_context_rcv_immediate_msgs (lbm_context_t *ctx, lbm_immediate_msg_cb_proc proc, void *clientd, lbm_event_queue_t *evq)
 Set the callback procedure and delivery method for topicless immediate messages. More...
 
LBMExpDLL int lbm_context_rcv_immediate_topic_msgs (lbm_context_t *ctx, lbm_immediate_msg_cb_proc proc, void *clientd, lbm_event_queue_t *evq)
 Set the callback procedure and delivery method for immediate messages to a topic for which there is no receiver. More...
 
LBMExpDLL int lbm_context_set_name (lbm_context_t *ctx, const char *name)
 DEPRECATED, DOES NOT FUNCTION. More...
 
LBMExpDLL int lbm_context_get_name (lbm_context_t *ctx, char *name, size_t *size)
 DEPRECATED, DOES NOT FUNCTION! More...
 
LBMExpDLL int lbm_license_file (const char *licfile)
 Initialize the UM license from the contents of a disk file. This function will only be effective if it is called before any other UM API function. More...
 
LBMExpDLL int lbm_license_str (const char *licstr)
 Initialize the UM license from a string. This function will only be effective if it is called before any other UM API function. More...
 
LBMExpDLL int lbm_license_ummnm_valid (void)
 Determine is the UMM product is licensed. More...
 
LBMExpDLL int lbm_license_vds_valid (void)
 Determine is the VDS product is licensed. More...
 
LBMExpDLL int lbm_config (const char *fname)
 Set one or more options from the contents of a disk file. More...
 
LBMExpDLL int lbm_config_xml_file (const char *url, const char *application_name)
 Load a UM XML configuration file. More...
 
LBMExpDLL int lbm_config_xml_string (const char *xml_data, const char *application_name)
 Load UM XML configuration data. More...
 
LBMExpDLL int lbm_log (lbm_log_cb_proc proc, void *clientd)
 Set a callback function to be called for UM log messages (warnings, notices, etc.). More...
 
LBMExpDLL void lbm_logf (int level, const char *format,...)
 Log a message. This is an entry to the UM logging mechanism. More...
 
LBMExpDLL const char * lbm_errmsg (void)
 Return an ASCII string containing the error message last encountered by this thread. More...
 
LBMExpDLL int lbm_errnum (void)
 Return the error number last encountered by this thread. More...
 
LBMExpDLL int lbm_win32_static_thread_attach (void)
 Instructs UM that a new thread will be calling UM functions. More...
 
LBMExpDLL int lbm_win32_static_thread_detach (void)
 Instructs UM that a new thread is done calling UM functions. More...
 
LBMExpDLL int lbm_schedule_timer (lbm_context_t *ctx, lbm_timer_cb_proc proc, void *clientd, lbm_event_queue_t *evq, lbm_ulong_t delay)
 Schedule a timer that calls proc when it expires. More...
 
LBMExpDLL int lbm_schedule_timer_recurring (lbm_context_t *ctx, lbm_timer_cb_proc proc, void *clientd, lbm_event_queue_t *evq, lbm_ulong_t delay)
 Schedule a recurring timer that calls proc when it expires. More...
 
LBMExpDLL int lbm_cancel_timer (lbm_context_t *ctx, int id, void **clientdp)
 Cancel a previously scheduled timer identified by id. More...
 
LBMExpDLL int lbm_cancel_timer_ex (lbm_context_t *ctx, int id, void **clientdp, lbm_event_queue_cancel_cb_info_t *cbinfo)
 Extended cancel a previously scheduled timer identified by id. More...
 
LBMExpDLL int lbm_context_process_events (lbm_context_t *ctx, lbm_ulong_t msec)
 Process internal events in the given UM context object. More...
 
LBMExpDLL int lbm_context_process_events_ex (lbm_context_t *ctx, lbm_ulong_t msec, lbm_process_events_info_t *info)
 Extended process internal events in the given UM context object. More...
 
LBMExpDLL int lbm_context_unblock (lbm_context_t *ctx)
 Unblock a sequential mode UM context. More...
 
LBMExpDLL int lbm_context_process_lbtipc_messages (lbm_context_t *ctx, lbm_ulong_t msec, lbm_ulong_t loop_count)
 Process LBT-IPC messages received. More...
 
LBMExpDLL int lbm_context_lbtipc_unblock (lbm_context_t *ctx)
 Unblock a sequential mode LBT-IPC processing loop. More...
 
LBMExpDLL int lbm_register_fd (lbm_context_t *ctx, lbm_handle_t handle, lbm_fd_cb_proc proc, void *clientd, lbm_event_queue_t *evq, lbm_ulong_t ev)
 Register a file descriptor/socket for events that calls proc when a given event occurs. More...
 
LBMExpDLL int lbm_cancel_fd (lbm_context_t *ctx, lbm_handle_t handle, lbm_ulong_t ev)
 Cancel a previously registered file descriptor/socket event. More...
 
LBMExpDLL int lbm_cancel_fd_ex (lbm_context_t *ctx, lbm_handle_t handle, lbm_ulong_t ev, lbm_event_queue_cancel_cb_info_t *cbinfo)
 Extended cancel a previously registered file descriptor/socket event. More...
 
LBMExpDLL int lbm_src_topic_dump (lbm_src_t *src, int *size, lbm_config_option_t *opts)
 Retrieves all source topic configuration options. More...
 
LBMExpDLL int lbm_ssrc_topic_dump (lbm_ssrc_t *ssrc, int *size, lbm_config_option_t *opts)
 Retrieves all smart source topic configuration options. More...
 
LBMExpDLL int lbm_src_topic_attr_dump (lbm_src_topic_attr_t *sattr, int *size, lbm_config_option_t *opts)
 Retrieves all source topic configuration options. More...
 
LBMExpDLL int lbm_src_topic_attr_option_size (void)
 Retrieves the number of options that are of type "topic". More...
 
LBMExpDLL int lbm_src_topic_alloc (lbm_topic_t **topicp, lbm_context_t *ctx, const char *symbol, const lbm_src_topic_attr_t *attr)
 Turn a Topic string into a UM topic object usable by sources. More...
 
LBMExpDLL int lbm_src_topic_attr_create (lbm_src_topic_attr_t **attr)
 Create and fill a UM source topic attribute object with the current default values. Note: Informatica recommends the use of XML Configuration Files, for which lbm_src_topic_attr_create_from_xml() should be used. More...
 
LBMExpDLL int lbm_src_topic_attr_create_default (lbm_src_topic_attr_t **attr)
 Create and fill a UM source topic attribute object with the initial default values. More...
 
LBMExpDLL int lbm_src_topic_attr_create_from_xml (lbm_src_topic_attr_t **attr, const char *context_name, const char *topicname)
 Create and fill a UM source topic attribute object with the current default values for the given topic name. More...
 
LBMExpDLL int lbm_src_topic_attr_set_from_xml (lbm_src_topic_attr_t *attr, const char *context_name, const char *topicname)
 Fill a UM source topic attribute object with the current default values for the given topic name. More...
 
LBMExpDLL int lbm_src_topic_attr_delete (lbm_src_topic_attr_t *attr)
 Delete a source topic attribute object. More...
 
LBMExpDLL int lbm_src_topic_attr_dup (lbm_src_topic_attr_t **attr, const lbm_src_topic_attr_t *original)
 Duplicate a UM source topic attribute object. More...
 
LBMExpDLL int lbm_src_topic_attr_setopt (lbm_src_topic_attr_t *attr, const char *optname, const void *optval, size_t optlen)
 Set the value (in binary format) of a configuration option in the supplied source topic attribute object. More...
 
LBMExpDLL int lbm_src_topic_attr_str_setopt (lbm_src_topic_attr_t *attr, const char *optname, const char *optval)
 Set the value (in string format) of a configuration option in the supplied source topic attribute object. More...
 
LBMExpDLL int lbm_src_topic_attr_getopt (lbm_src_topic_attr_t *attr, const char *optname, void *optval, size_t *optlen)
 Retrieve an option value within the given source topic attribute object. More...
 
LBMExpDLL int lbm_src_topic_attr_str_getopt (lbm_src_topic_attr_t *attr, const char *optname, char *optval, size_t *optlen)
 Retrieve a textual option value within the given source topic attribute object. More...
 
LBMExpDLL int lbm_rcv_topic_lookup (lbm_topic_t **topicp, lbm_context_t *ctx, const char *symbol, const lbm_rcv_topic_attr_t *attr)
 Turn a Topic string into a UM topic object usable by receivers. More...
 
LBMExpDLL int lbm_rcv_topic_dump (lbm_rcv_t *rcv, int *size, lbm_config_option_t *opts)
 Retrieves all receiver topic configuration options. More...
 
LBMExpDLL int lbm_rcv_topic_attr_dump (lbm_rcv_topic_attr_t *rattr, int *size, lbm_config_option_t *opts)
 Retrieves all receiver topic configuration options. More...
 
LBMExpDLL int lbm_rcv_topic_attr_option_size (void)
 Retrieves the number of options that are of type "source topic". More...
 
LBMExpDLL int lbm_rcv_topic_attr_create (lbm_rcv_topic_attr_t **attr)
 Create and fill a UM receiver topic attribute object with the current default values. Note: Informatica recommends the use of XML Configuration Files, for which lbm_rcv_topic_attr_create_from_xml() should be used. More...
 
LBMExpDLL int lbm_rcv_topic_attr_create_default (lbm_rcv_topic_attr_t **attr)
 Create and fill a UM receiver topic attribute object with the initial default values. More...
 
LBMExpDLL int lbm_rcv_topic_attr_create_from_xml (lbm_rcv_topic_attr_t **attr, const char *context_name, const char *topicname)
 Create and fill a UM receiver topic attribute object with the current default values for the given topic name. More...
 
LBMExpDLL int lbm_rcv_topic_attr_set_from_xml (lbm_rcv_topic_attr_t *attr, const char *context_name, const char *topicname)
 Fill a UM receiver topic attribute object with the current default values for the given topic name. More...
 
LBMExpDLL int lbm_rcv_topic_attr_delete (lbm_rcv_topic_attr_t *attr)
 Delete a receiver topic attribute object. More...
 
LBMExpDLL int lbm_rcv_topic_attr_dup (lbm_rcv_topic_attr_t **attr, const lbm_rcv_topic_attr_t *original)
 Duplicate a UM receiver topic attribute object. More...
 
LBMExpDLL int lbm_rcv_topic_attr_setopt (lbm_rcv_topic_attr_t *attr, const char *optname, const void *optval, size_t optlen)
 Set the value (in binary format) of a configuration option in the supplied receiver topic attribute object. More...
 
LBMExpDLL int lbm_rcv_topic_attr_str_setopt (lbm_rcv_topic_attr_t *attr, const char *optname, const char *optval)
 Set the value (in string format) of a configuration option in the supplied receiver topic attribute object. More...
 
LBMExpDLL int lbm_rcv_topic_attr_getopt (lbm_rcv_topic_attr_t *attr, const char *optname, void *optval, size_t *optlen)
 Retrieve an option value within the given receiver topic attribute. More...
 
LBMExpDLL int lbm_rcv_topic_attr_str_getopt (lbm_rcv_topic_attr_t *attr, const char *optname, char *optval, size_t *optlen)
 Retrieve a textual option value within the given receiver topic attribute. More...
 
LBMExpDLL int lbm_src_channel_create (lbm_src_channel_info_t **chnp, lbm_src_t *src, lbm_uint32_t channel_num)
 Create a channel info object to send messages with the given channel_num. More...
 
LBMExpDLL int lbm_src_channel_delete (lbm_src_channel_info_t *chn)
 Release the resources associated with a source channel. More...
 
LBMExpDLL int lbm_src_create (lbm_src_t **srcp, lbm_context_t *ctx, lbm_topic_t *topic, lbm_src_cb_proc proc, void *clientd, lbm_event_queue_t *evq)
 Create a UM source that will send messages to the given topic. More...
 
LBMExpDLL int lbm_ssrc_create (lbm_ssrc_t **ssrcp, lbm_context_t *ctx, lbm_topic_t *topic, lbm_ssrc_cb_proc proc, void *clientd, lbm_event_queue_t *evq)
 Create a UM Smart Source that will send messages to the given topic. More...
 
LBMExpDLL int lbm_event_queue_dump (lbm_event_queue_t *evq, int *size, lbm_config_option_t *opts)
 Retrieves all event queue attribute options. More...
 
LBMExpDLL int lbm_event_queue_attr_dump (lbm_event_queue_attr_t *eattr, int *size, lbm_config_option_t *opts)
 Retrieves all event queue attribute options. More...
 
LBMExpDLL int lbm_event_queue_attr_option_size (void)
 Retrieves the number of options that are of type "event queue". More...
 
LBMExpDLL int lbm_rcv_create (lbm_rcv_t **rcvp, lbm_context_t *ctx, lbm_topic_t *topic, lbm_rcv_cb_proc proc, void *clientd, lbm_event_queue_t *evq)
 Create a UM receiver that will receive messages sent to the given topic. More...
 
LBMExpDLL int lbm_rcv_subscribe_channel (lbm_rcv_t *rcv, lbm_uint32_t channel, lbm_rcv_cb_proc proc, void *clientd)
 Subscribe to a channel, with an optional callback and clientd data pointer. More...
 
LBMExpDLL int lbm_rcv_unsubscribe_channel (lbm_rcv_t *rcv, lbm_uint32_t channel)
 Discontinue an existing channel subscription. More...
 
LBMExpDLL int lbm_rcv_unsubscribe_channel_ex (lbm_rcv_t *rcv, lbm_uint32_t channel, lbm_event_queue_cancel_cb_info_t *cbinfo)
 Discontinue an existing channel subscription with an application callback indicating when all messages on the channel have been delivered. This extended version of the unsubscribe function requires the configuration option queue_cancellation_callbacks_enabled (event_queue) be set to 1. More...
 
LBMExpDLL int lbm_wildcard_rcv_subscribe_channel (lbm_wildcard_rcv_t *wrcv, lbm_uint32_t channel, lbm_rcv_cb_proc proc, void *clientd)
 Subscribe to a channel, with an optional callback and clientd data pointer. More...
 
LBMExpDLL int lbm_wildcard_rcv_unsubscribe_channel (lbm_wildcard_rcv_t *wrcv, lbm_uint32_t channel)
 Discontinue an existing channel subscription. More...
 
LBMExpDLL int lbm_wildcard_rcv_unsubscribe_channel_ex (lbm_wildcard_rcv_t *wrcv, lbm_uint32_t channel, lbm_event_queue_cancel_cb_info_t *cbinfo)
 Discontinue an existing channel subscription with an application callback indicating when all messages on the channel have been delivered. This extended version of the unsubscribe function requires the configuration option. More...
 
LBMExpDLL int lbm_src_delete (lbm_src_t *src)
 Delete a UM source object. More...
 
LBMExpDLL int lbm_ssrc_delete (lbm_ssrc_t *ssrc)
 Delete a UM Smart Source object. More...
 
LBMExpDLL int lbm_src_delete_ex (lbm_src_t *src, lbm_event_queue_cancel_cb_info_t *cbinfo)
 Extended delete a UM source object. More...
 
LBMExpDLL int lbm_ssrc_get_available_data_space (lbm_ssrc_t *ssrc, int *length)
 Retrieve the length of available data space after lbm_ssrc_create(). More...
 
LBMExpDLL lbm_context_tlbm_context_from_src (lbm_src_t *src)
 Retrieve the UM context object associated with a UM source object. More...
 
LBMExpDLL lbm_topic_tlbm_topic_from_src (lbm_src_t *src)
 Retrieve the UM topic object associated with a UM source object. More...
 
LBMExpDLL lbm_event_queue_tlbm_event_queue_from_src (lbm_src_t *src)
 Retrieve the UM event queue object associated with a UM source object. See Event Queue Object. More...
 
LBMExpDLL int lbm_rcv_delete (lbm_rcv_t *rcv)
 Delete a UM receiver object. More...
 
LBMExpDLL int lbm_rcv_delete_ex (lbm_rcv_t *rcv, lbm_event_queue_cancel_cb_info_t *cbinfo)
 Extended delete a UM receiver object. More...
 
LBMExpDLL lbm_context_tlbm_context_from_rcv (lbm_rcv_t *rcv)
 Retrieve the UM context object associated with a UM receiver object. More...
 
LBMExpDLL lbm_event_queue_tlbm_event_queue_from_rcv (lbm_rcv_t *rcv)
 Retrieve the UM event queue object associated with a UM receiver object. See Event Queue Object. More...
 
LBMExpDLL int lbm_src_setopt (lbm_src_t *src, const char *optname, const void *optval, size_t optlen)
 Set the value (in binary format) of a configuration option in the supplied source. More...
 
LBMExpDLL int lbm_src_str_setopt (lbm_src_t *src, const char *optname, const char *optval)
 Set the value (in string format) of a configuration option in the supplied source. More...
 
LBMExpDLL int lbm_src_getopt (lbm_src_t *src, const char *optname, void *optval, size_t *optlen)
 Retrieve an option value within the given src. More...
 
LBMExpDLL int lbm_src_str_getopt (lbm_src_t *src, const char *optname, char *optval, size_t *optlen)
 Retrieve a textual option value within the given src. More...
 
LBMExpDLL int lbm_rcv_setopt (lbm_rcv_t *rcv, const char *optname, const void *optval, size_t optlen)
 Set the value (in binary format) of a configuration option in the supplied receiver. More...
 
LBMExpDLL int lbm_rcv_str_setopt (lbm_rcv_t *rcv, const char *optname, const char *optval)
 Set the value (in string format) of a configuration option in the supplied receiver. More...
 
LBMExpDLL int lbm_rcv_getopt (lbm_rcv_t *rcv, const char *optname, void *optval, size_t *optlen)
 Retrieve an option value within the given rcv. More...
 
LBMExpDLL int lbm_rcv_str_getopt (lbm_rcv_t *rcv, const char *optname, char *optval, size_t *optlen)
 Retrieve a textual option value within the given rcv. More...
 
LBMExpDLL int lbm_src_send (lbm_src_t *src, const char *msg, size_t len, int flags)
 Send a message to the topic associated with a UM source. More...
 
LBMExpDLL int lbm_src_send_ex (lbm_src_t *src, const char *msg, size_t len, int flags, lbm_src_send_ex_info_t *info)
 Extended send of a message to the topic associated with a UM source. More...
 
LBMExpDLL int lbm_ssrc_send_ex (lbm_ssrc_t *ssrc, const char *usr_bufp, size_t len, int flags, lbm_ssrc_send_ex_info_t *info)
 Extended send of a message using a pre-allocated buffer to the topic associated with a UM Smart Source. More...
 
LBMExpDLL int lbm_src_flush (lbm_src_t *src)
 Send messages from both the explicit and implicit batches ASAP. More...
 
LBMExpDLL int lbm_flush_all (lbm_context_t *ctx)
 FOR UM INTERNAL USE ONLY, not for use by user applications. More...
 
LBMExpDLL int lbm_src_sendv (lbm_src_t *src, const lbm_iovec_t *iov, int num, int flags)
 Send a set of messages to the topic associated with a UM source. More...
 
LBMExpDLL int lbm_src_sendv_ex (lbm_src_t *src, const lbm_iovec_t *iov, int num, int flags, lbm_src_send_ex_info_t *info)
 Extended send of a set of messages to the topic associated with a UM source. More...
 
LBMExpDLL int lbm_rcv_msg_source_clientd (lbm_rcv_t *rcv, const char *source, void *source_clientd)
 Set the pointer value to set in the messages received for the given receiver from a specific source. More...
 
LBMExpDLL int lbm_src_send_lbmmon_stats (lbm_src_t *src, char *msg, size_t len, int lbmmon_type)
 Send a PB serialized buffer as an LBMMON message using a UM source. More...
 
LBMExpDLL int lbm_src_retrieve_transport_stats (lbm_src_t *src, lbm_src_transport_stats_t *stats)
 Retrieve the transport statistics for the transport used by the given source. More...
 
LBMExpDLL int lbm_ssrc_retrieve_transport_stats (lbm_ssrc_t *ssrc, lbm_src_transport_stats_t *stats)
 Retrieve the transport statistics for the transport used by the given smart source. More...
 
LBMExpDLL int lbm_src_reset_transport_stats (lbm_src_t *src)
 Reset the transport statistics for the transport used by the given source. More...
 
LBMExpDLL int lbm_ssrc_reset_transport_stats (lbm_ssrc_t *ssrc)
 Reset the transport statistics for the transport used by the given smart source. More...
 
LBMExpDLL int lbm_rcv_retrieve_transport_stats (lbm_rcv_t *rcv, const char *source, lbm_rcv_transport_stats_t *stats)
 Retrieve the transport statistics for the transport used by the given receiver from a specific source. More...
 
LBMExpDLL int lbm_rcv_reset_transport_stats (lbm_rcv_t *rcv, const char *source)
 Reset the transport statistics for the transport used by the given receiver from a specific source. More...
 
LBMExpDLL int lbm_rcv_retrieve_all_transport_stats (lbm_rcv_t *rcv, int *num, lbm_rcv_transport_stats_t *stats)
 Retrieve the transport stats for all the sources seen by the given receiver. More...
 
LBMExpDLL int lbm_rcv_retrieve_all_transport_stats_ex (lbm_rcv_t *rcv, int *num, int size, lbm_rcv_transport_stats_t *stats)
 Retrieve the transport stats for all the sources seen by the given receiver. More...
 
LBMExpDLL int lbm_rcv_reset_all_transport_stats (lbm_rcv_t *rcv)
 Reset the transport stats for all the sources seen by the given receiver. More...
 
LBMExpDLL int lbm_context_retrieve_rcv_transport_stats (lbm_context_t *ctx, int *num, lbm_rcv_transport_stats_t *stats)
 Retrieve the transport stats for all receivers in a given context. More...
 
LBMExpDLL int lbm_context_retrieve_rcv_transport_stats_ex (lbm_context_t *ctx, int *num, int size, lbm_rcv_transport_stats_t *stats)
 Retrieve the transport stats for all receivers in a given context. More...
 
LBMExpDLL int lbm_context_reset_rcv_transport_stats (lbm_context_t *ctx)
 Reset the transport stats for all receivers in a given context. More...
 
LBMExpDLL int lbm_context_retrieve_src_transport_stats (lbm_context_t *ctx, int *num, lbm_src_transport_stats_t *stats)
 Retrieve the transport stats for all the sources in a given context. More...
 
LBMExpDLL int lbm_context_retrieve_src_transport_stats_ex (lbm_context_t *ctx, int *num, int size, lbm_src_transport_stats_t *stats)
 Retrieve the transport stats for all the sources in a given context. More...
 
LBMExpDLL int lbm_context_reset_src_transport_stats (lbm_context_t *ctx)
 Reset the transport stats for all the sources in a given context. More...
 
LBMExpDLL int lbm_event_queue_retrieve_stats (lbm_event_queue_t *evq, lbm_event_queue_stats_t *stats)
 Retrieve the stats for an event queue. More...
 
LBMExpDLL int lbm_event_queue_reset_stats (lbm_event_queue_t *evq)
 Reset the stats for an event queue. More...
 
LBMExpDLL int lbm_context_retrieve_stats (lbm_context_t *ctx, lbm_context_stats_t *stats)
 Retrieve the stats for a context. More...
 
LBMExpDLL int lbm_context_reset_stats (lbm_context_t *ctx)
 Reset the stats for a context. More...
 
LBMExpDLL int lbm_context_retrieve_im_src_transport_stats (lbm_context_t *ctx, int *num, int size, lbm_src_transport_stats_t *stats)
 Retrieve the IM source stats for a context. More...
 
LBMExpDLL int lbm_context_reset_im_src_transport_stats (lbm_context_t *ctx)
 Reset the IM source stats for a context. More...
 
LBMExpDLL int lbm_context_retrieve_im_rcv_transport_stats (lbm_context_t *ctx, int *num, int size, lbm_rcv_transport_stats_t *stats)
 Retrieve the IM receiver stats for a context. More...
 
LBMExpDLL int lbm_context_reset_im_rcv_transport_stats (lbm_context_t *ctx)
 Reset the IM receiver stats for a context. More...
 
LBMExpDLL int lbm_msg_retain (lbm_msg_t *msg)
 Inform UM that the application is going to retain ownership of a UM message object after the receiver callback returns. More...
 
LBMExpDLL int lbm_msg_is_fragment (lbm_msg_t *msg)
 Determine if the current message is a single fragment of a larger, multi-fragment message. More...
 
LBMExpDLL int lbm_msg_retrieve_fragment_info (lbm_msg_t *msg, lbm_msg_fragment_info_t *info)
 Retrieves fragment information from a message. More...
 
LBMExpDLL int lbm_msg_retrieve_gateway_info (lbm_msg_t *msg, lbm_msg_gateway_info_t *info)
 DEPRECATED. Retrieve gateway information from a UM message. More...
 
LBMExpDLL int lbm_msg_retrieve_msgid (lbm_msg_t *msg, lbm_umq_msgid_t *id)
 Retrieve UMQ Message ID information from a UM message. More...
 
LBMExpDLL int lbm_msg_retrieve_umq_index (lbm_msg_t *msg, lbm_umq_index_info_t *info)
 Retrieve UMQ index information from a UM message. More...
 
LBMExpDLL int lbm_msg_retrieve_delivery_latency (lbm_msg_t *msg, lbm_int64_t *latency_nsecs)
 UM internal use only. DO NOT USE.
 
LBMExpDLL int lbm_msg_delete (lbm_msg_t *msg)
 Delete a UM message object. More...
 
LBMExpDLL int lbm_msg_ume_send_explicit_ack (lbm_msg_t *msg)
 Send a consumption acknowledgement to the persistent Store. More...
 
LBMExpDLL int lbm_msg_ume_can_send_explicit_ack (lbm_msg_t *msg)
 Check to see if Explicit UMP ACK for a UM message object can be called. More...
 
LBMExpDLL int lbm_src_ume_deregister (lbm_src_t *src)
 Deregister a source from the UMP Stores. More...
 
LBMExpDLL int lbm_ssrc_ume_deregister (lbm_ssrc_t *ssrc)
 Deregister a smart source from the UMP Stores. More...
 
LBMExpDLL int lbm_rcv_ume_deregister (lbm_rcv_t *rcv)
 Deregister a receiver from all known UMP Stores. More...
 
LBMExpDLL int lbm_wrcv_ume_deregister (lbm_wildcard_rcv_t *wrcv)
 Deregister a wildcard receiver from all known UMP Stores. More...
 
LBMExpDLL int lbm_msg_umq_reassign (lbm_msg_t *msg, int flags)
 Do not acknowledge the given message and instead request that the message be reassigned. More...
 
LBMExpDLL int lbm_rcv_umq_deregister (lbm_rcv_t *rcv, const char *queue_name)
 De-Register the given receiver from the given UMQ queue or all UMQ queues. More...
 
LBMExpDLL int lbm_rcv_umq_index_stop_assignment (lbm_rcv_t *rcv, const char *queue_name)
 Stop assignment of new UMQ indices to the given receiver from the given UMQ queue or all UMQ queues. More...
 
LBMExpDLL int lbm_rcv_umq_index_start_assignment (lbm_rcv_t *rcv, const char *queue_name)
 Start assignment of new UMQ indices to the given receiver from the given UMQ queue or all UMQ queues. More...
 
LBMExpDLL int lbm_rcv_umq_index_reserve (lbm_rcv_t *rcv, const char *queue_name, lbm_umq_index_info_t *index_info)
 Instruct the given UMQ queue(s) to reserve an index for assignment to this receiver. More...
 
LBMExpDLL int lbm_rcv_umq_index_release (lbm_rcv_t *rcv, const char *queue_name, lbm_umq_index_info_t *index_info)
 Instruct the given UMQ queue(s) to release the given UMQ index that is assigned to the given receiver. More...
 
LBMExpDLL int lbm_wildcard_rcv_umq_index_stop_assignment (lbm_wildcard_rcv_t *wrcv, const char *queue_name)
 Stop assignment of new UMQ indices to the given wildcard receiver from the given UMQ queue or all UMQ queues. More...
 
LBMExpDLL int lbm_wildcard_rcv_umq_index_start_assignment (lbm_wildcard_rcv_t *wrcv, const char *queue_name)
 Start assignment of new UMQ indices to the given wildcard receiver from the given UMQ queue or all UMQ queues. More...
 
LBMExpDLL int lbm_wildcard_rcv_umq_index_release (lbm_wildcard_rcv_t *wrcv, const char *queue_name, lbm_umq_index_info_t *index_info)
 Instruct the given UMQ queue(s) to release the given UMQ index that is assigned to the given wildcard receiver. More...
 
LBMExpDLL int lbm_wildcard_rcv_umq_deregister (lbm_wildcard_rcv_t *wrcv, const char *queue_name)
 De-Register the given wildcard receiver from the given UMQ queue or all UMQ queues. More...
 
LBMExpDLL int lbm_send_response (lbm_response_t *resp, const char *data, size_t len, int flags)
 Send a response for a given resp response. More...
 
LBMExpDLL int lbm_response_delete (lbm_response_t *resp)
 Delete a UM response object. More...
 
LBMExpDLL int lbm_serialized_response_delete (lbm_serialized_response_t *serialized_response)
 Delete a UM serialized response object. More...
 
LBMExpDLL lbm_serialized_response_tlbm_serialize_response (lbm_response_t *resp)
 Serialize a UM response object. More...
 
LBMExpDLL lbm_response_tlbm_deserialize_response (lbm_context_t *ctx, lbm_serialized_response_t *serialized_response)
 De-serialize a UM response object. More...
 
LBMExpDLL int lbm_send_request (lbm_request_t **reqp, lbm_src_t *src, const char *data, size_t len, lbm_request_cb_proc proc, void *clientd, lbm_event_queue_t *evq, int send_flags)
 Send a request on the given src that contains the given data. More...
 
LBMExpDLL int lbm_send_request_ex (lbm_request_t **reqp, lbm_src_t *src, const char *data, size_t len, lbm_request_cb_proc proc, void *clientd, lbm_event_queue_t *evq, int send_flags, lbm_src_send_ex_info_t *exinfo)
 Send a request on the given src that contains the given data. More...
 
LBMExpDLL int lbm_ssrc_send_request_ex (lbm_request_t **reqp, lbm_ssrc_t *ssrc, const char *usr_bufp, size_t len, lbm_request_cb_proc proc, void *clientd, lbm_event_queue_t *evq, int send_flags, lbm_ssrc_send_ex_info_t *exinfo)
 Send a request on the given Smart Source that contains the given data. More...
 
LBMExpDLL int lbm_request_delete (lbm_request_t *req)
 Delete a UM request object. More...
 
LBMExpDLL int lbm_request_delete_ex (lbm_request_t *req, lbm_event_queue_cancel_cb_info_t *cbinfo)
 Extended delete a UM request object. More...
 
LBMExpDLL int lbm_event_queue_create (lbm_event_queue_t **evqp, lbm_event_queue_monitor_proc proc, void *clientd, const lbm_event_queue_attr_t *attr)
 Create a UM event queue object. More...
 
LBMExpDLL int lbm_event_queue_attr_create (lbm_event_queue_attr_t **attr)
 Create and fill a UM event queue attribute object with the current default values. Note: Informatica recommends the use of XML Configuration Files, for which lbm_event_queue_attr_create_from_xml() should be used. More...
 
LBMExpDLL int lbm_event_queue_attr_create_default (lbm_event_queue_attr_t **attr)
 Create and fill a UM event queue attribute object with the initial default values. More...
 
LBMExpDLL int lbm_event_queue_attr_create_from_xml (lbm_event_queue_attr_t **attr, const char *event_queue_name)
 Create and fill a UM event queue attribute object with the current default values for the given event queue name. More...
 
LBMExpDLL int lbm_event_queue_attr_set_from_xml (lbm_event_queue_attr_t *attr, const char *event_queue_name)
 Fill a UM event queue attribute object with the current default values for the given event queue name. More...
 
LBMExpDLL int lbm_event_queue_attr_delete (lbm_event_queue_attr_t *attr)
 Delete an event queue attribute object. More...
 
LBMExpDLL int lbm_event_queue_attr_dup (lbm_event_queue_attr_t **attr, const lbm_event_queue_attr_t *original)
 Duplicate a UM event queue attribute object. More...
 
LBMExpDLL int lbm_event_queue_attr_setopt (lbm_event_queue_attr_t *attr, const char *optname, const void *optval, size_t optlen)
 Set the value (in binary format) of a configuration option in the supplied event queue attribute object. More...
 
LBMExpDLL int lbm_event_queue_attr_str_setopt (lbm_event_queue_attr_t *attr, const char *optname, const char *optval)
 Set the value (in string format) of a configuration option in the supplied event queue attribute object. More...
 
LBMExpDLL int lbm_event_queue_attr_getopt (lbm_event_queue_attr_t *attr, const char *optname, void *optval, size_t *optlen)
 Retrieve an option value within the given event queue attribute. More...
 
LBMExpDLL int lbm_event_queue_attr_str_getopt (lbm_event_queue_attr_t *attr, const char *optname, char *optval, size_t *optlen)
 Retrieve a textual option value within the given event queue attribute. More...
 
LBMExpDLL int lbm_event_queue_setopt (lbm_event_queue_t *evq, const char *optname, const void *optval, size_t optlen)
 Set the value (in binary format) of a configuration option in the supplied event queue. More...
 
LBMExpDLL int lbm_event_queue_str_setopt (lbm_event_queue_t *evq, const char *optname, const char *optval)
 Set the value (in string format) of a configuration option in the supplied event queue. More...
 
LBMExpDLL int lbm_event_queue_getopt (lbm_event_queue_t *evq, const char *optname, void *optval, size_t *optlen)
 Retrieve an option value within the given event queue. More...
 
LBMExpDLL int lbm_event_queue_str_getopt (lbm_event_queue_t *evq, const char *optname, char *optval, size_t *optlen)
 Retrieve a textual option value within the given event queue. More...
 
LBMExpDLL int lbm_event_dispatch (lbm_event_queue_t *evq, lbm_ulong_t tmo)
 Dispatch waiting events to appropriate callback functions. More...
 
LBMExpDLL int lbm_event_dispatch_unblock (lbm_event_queue_t *evq)
 Unblock the given UM event queue object so that a thread waiting in lbm_event_dispatch returns as soon as feasible. More...
 
LBMExpDLL int lbm_event_queue_size (lbm_event_queue_t *evq)
 Determine the number of queued events in the event queue. More...
 
LBMExpDLL int lbm_event_queue_shutdown (lbm_event_queue_t *evq)
 Shutdown the event queue by purging any pending events and not allowing additional events to be added to the queue. More...
 
LBMExpDLL int lbm_event_queue_delete (lbm_event_queue_t *evq)
 Delete a given UM event queue object. More...
 
LBMExpDLL int lbm_unicast_immediate_message (lbm_context_t *ctx, const char *target, const char *topic, const char *data, size_t len, int flags)
 Send a unicast immediate message to the target and optional topic. More...
 
LBMExpDLL int lbm_unicast_immediate_request (lbm_request_t **reqp, lbm_context_t *ctx, const char *target, const char *topic, const char *data, size_t len, lbm_request_cb_proc proc, void *clientd, lbm_event_queue_t *evq, int flags)
 Unicast an immediate request message to the target and topic. More...
 
LBMExpDLL int lbm_queue_immediate_message (lbm_context_t *ctx, const char *qname, const char *topic, const char *data, size_t len, int flags, lbm_src_send_ex_info_t *info)
 DEPRECATED, do not use. More...
 
LBMExpDLL int lbm_multicast_immediate_message (lbm_context_t *ctx, const char *topic, const char *data, size_t len, int flags)
 Multicast an immediate message to the topic. More...
 
LBMExpDLL int lbm_multicast_immediate_request (lbm_request_t **reqp, lbm_context_t *ctx, const char *topic, const char *data, size_t len, lbm_request_cb_proc proc, void *clientd, lbm_event_queue_t *evq, int flags)
 Multicast an immediate request to the target and topic. More...
 
LBMExpDLL int lbm_wildcard_rcv_dump (lbm_wildcard_rcv_t *wrcv, int *size, lbm_config_option_t *opts)
 Retrieves all wildcard receiver attribute options. More...
 
LBMExpDLL int lbm_wildcard_rcv_attr_dump (lbm_wildcard_rcv_attr_t *wattr, int *size, lbm_config_option_t *opts)
 Retrieves all wildcard receiver attribute options. More...
 
LBMExpDLL int lbm_wildcard_rcv_attr_option_size (void)
 Retrieves the number of options that are of type "wildcard receiver". More...
 
LBMExpDLL int lbm_wildcard_rcv_attr_create (lbm_wildcard_rcv_attr_t **attr)
 Create and fill a UM wildcard receiver attribute object with the current default values. Note: Informatica recommends the use of XML Configuration Files, for which lbm_wildcard_rcv_attr_create_from_xml() should be used. More...
 
LBMExpDLL int lbm_wildcard_rcv_attr_create_default (lbm_wildcard_rcv_attr_t **attr)
 Create and fill a UM wildcard receiver attribute object with the initial default values. More...
 
LBMExpDLL int lbm_wildcard_rcv_attr_create_from_xml (lbm_wildcard_rcv_attr_t **attr, const char *context_name, const char *pattern, int pattern_type)
 Create and fill a UM wildcard receiver attribute object with the current default values for the given topic name. More...
 
LBMExpDLL int lbm_wildcard_rcv_attr_set_from_xml (lbm_wildcard_rcv_attr_t *attr, const char *context_name, const char *pattern, int pattern_type)
 Fill a UM wildcard receiver attribute object with the current default values for the given topic name. More...
 
LBMExpDLL int lbm_wildcard_rcv_attr_delete (lbm_wildcard_rcv_attr_t *attr)
 Delete a wildcard receiver attribute object. More...
 
LBMExpDLL int lbm_wildcard_rcv_attr_dup (lbm_wildcard_rcv_attr_t **attr, const lbm_wildcard_rcv_attr_t *original)
 Duplicate a UM wildcard receiver attribute object. More...
 
LBMExpDLL int lbm_wildcard_rcv_attr_setopt (lbm_wildcard_rcv_attr_t *attr, const char *optname, const void *optval, size_t optlen)
 Set the value (in binary format) of a configuration option in the supplied wildcard receiver attribute object. More...
 
LBMExpDLL int lbm_wildcard_rcv_attr_str_setopt (lbm_wildcard_rcv_attr_t *attr, const char *optname, const char *optval)
 Set the value (in string format) of a configuration option in the supplied wildcard receiver attribute object. More...
 
LBMExpDLL int lbm_wildcard_rcv_attr_getopt (lbm_wildcard_rcv_attr_t *attr, const char *optname, void *optval, size_t *optlen)
 Retrieve an option value within the given wildcard receiver attribute. More...
 
LBMExpDLL int lbm_wildcard_rcv_attr_str_getopt (lbm_wildcard_rcv_attr_t *attr, const char *optname, char *optval, size_t *optlen)
 Retrieve a textual option value within the given wildcard receiver attribute. More...
 
LBMExpDLL int lbm_wildcard_rcv_setopt (lbm_wildcard_rcv_t *wrcv, const char *optname, const void *optval, size_t optlen)
 Set the value (in binary format) of a configuration option in the supplied wildcard receiver. More...
 
LBMExpDLL int lbm_wildcard_rcv_str_setopt (lbm_wildcard_rcv_t *wrcv, const char *optname, const char *optval)
 Set the value (in string format) of a configuration option in the supplied wildcard receiver. More...
 
LBMExpDLL int lbm_wildcard_rcv_getopt (lbm_wildcard_rcv_t *wrcv, const char *optname, void *optval, size_t *optlen)
 Retrieve an option value within the given wrcv. More...
 
LBMExpDLL int lbm_wildcard_rcv_str_getopt (lbm_wildcard_rcv_t *wrcv, const char *optname, char *optval, size_t *optlen)
 Retrieve the textual option value within the given wrcv. More...
 
LBMExpDLL int lbm_wildcard_rcv_create (lbm_wildcard_rcv_t **wrcvp, lbm_context_t *ctx, const char *pattern, const lbm_rcv_topic_attr_t *tattr, const lbm_wildcard_rcv_attr_t *wattr, lbm_rcv_cb_proc proc, void *clientd, lbm_event_queue_t *evq)
 Create a UM wildcard receiver that will receive messages sent to any topic matching the given pattern. More...
 
LBMExpDLL int lbm_wildcard_rcv_delete (lbm_wildcard_rcv_t *wrcv)
 Delete a UM wildcard receiver object. More...
 
LBMExpDLL int lbm_wildcard_rcv_delete_ex (lbm_wildcard_rcv_t *wrcv, lbm_event_queue_cancel_cb_info_t *cbinfo)
 Extended delete a UM wildcard receiver object. More...
 
LBMExpDLL lbm_context_tlbm_context_from_wildcard_rcv (lbm_wildcard_rcv_t *wcrcv)
 Retrieve the LBM context object associated with a UM wildcard receiver object. More...
 
LBMExpDLL lbm_event_queue_tlbm_event_queue_from_wildcard_rcv (lbm_wildcard_rcv_t *wcrcv)
 Retrieve the LBM event queue object associated with a UM wildcard receiver object. More...
 
LBMExpDLL int lbm_hf_src_create (lbm_src_t **srcp, lbm_context_t *ctx, lbm_topic_t *topic, lbm_src_cb_proc proc, void *clientd, lbm_event_queue_t *evq)
 Create a UM Hot Failover (HF) source that will send messages to the given topic. See https://communities.informatica.com/infakb/faq/5/Pages/80060.aspx for details and restrictions. More...
 
LBMExpDLL int lbm_hf_src_send (lbm_src_t *src, const char *msg, size_t len, lbm_uint_t sqn, int flags)
 Send a Hot Failover (HF) message to the topic associated with a UM source. See https://communities.informatica.com/infakb/faq/5/Pages/80060.aspx for details and restrictions. More...
 
LBMExpDLL int lbm_hf_src_send_ex (lbm_src_t *src, const char *msg, size_t len, lbm_uint_t sqn, int flags, lbm_src_send_ex_info_t *exinfo)
 Send a Hot Failover (HF) message to the topic associated with a UM source. See https://communities.informatica.com/infakb/faq/5/Pages/80060.aspx for details and restrictions. More...
 
LBMExpDLL int lbm_hf_src_sendv (lbm_src_t *src, const lbm_iovec_t *iov, int num, lbm_uint_t sqn, int flags)
 Send a set of Hot Failover (HF) messages to the topic associated with a UM source. See https://communities.informatica.com/infakb/faq/5/Pages/80060.aspx for details and restrictions. More...
 
LBMExpDLL int lbm_hf_rcv_topic_dump (lbm_hf_rcv_t *hfrcv, int *size, lbm_config_option_t *opts)
 Retrieves all receiver attribute options for an HF receiver. More...
 
LBMExpDLL int lbm_hf_src_sendv_ex (lbm_src_t *src, const lbm_iovec_t *iov, int num, lbm_uint_t sqn, int flags, lbm_src_send_ex_info_t *exinfo)
 Extended send of a set of Hot Failover (HF) messages to the topic associated with a UM source. More...
 
LBMExpDLL int lbm_hf_src_send_rcv_reset (lbm_src_t *src, int flags, lbm_src_send_ex_info_t *exinfo)
 Send a message that will reset order and loss information for hot failover receivers on this topic. More...
 
LBMExpDLL int lbm_hf_rcv_create (lbm_hf_rcv_t **hfrcvp, lbm_context_t *ctx, lbm_topic_t *topic, lbm_rcv_cb_proc proc, void *clientd, lbm_event_queue_t *evq)
 Create and LBM receiver that will receive LBM Hot Failover (HF) messages sent to the given topic. See https://communities.informatica.com/infakb/faq/5/Pages/80060.aspx for details and restrictions. More...
 
LBMExpDLL int lbm_hf_rcv_delete (lbm_hf_rcv_t *hfrcv)
 Delete a UM Hot Failover (HF) receiver object. See https://communities.informatica.com/infakb/faq/5/Pages/80060.aspx for details and restrictions. More...
 
LBMExpDLL int lbm_hf_rcv_delete_ex (lbm_hf_rcv_t *hfrcv, lbm_event_queue_cancel_cb_info_t *cbinfo)
 Extended delete a UM Hot Failover (HF) receiver object. See https://communities.informatica.com/infakb/faq/5/Pages/80060.aspx for details and restrictions. More...
 
LBMExpDLL lbm_hf_rcv_tlbm_hf_rcv_from_rcv (lbm_rcv_t *rcv)
 Return the LBM Hot Failover (HF) receiver object (if any) from a UM receiver object. More...
 
LBMExpDLL lbm_rcv_tlbm_rcv_from_hf_rcv (lbm_hf_rcv_t *hfrcv)
 Return the LBM receiver object associated with a UM Hot Failover (HF) receiver object. More...
 
LBMExpDLL int lbm_hfx_dump (lbm_hfx_t *hfx, int *size, lbm_config_option_t *opts)
 Retrieves all HFX attribute options. More...
 
LBMExpDLL int lbm_hfx_attr_dump (lbm_hfx_attr_t *attr, int *size, lbm_config_option_t *opts)
 Retrieves all HFX attribute options. More...
 
LBMExpDLL int lbm_hfx_attr_option_size (void)
 Retrieves the number of options that are of type "hfx". More...
 
LBMExpDLL int lbm_hfx_attr_create (lbm_hfx_attr_t **attr)
 Create and fill a UM HFX attribute object with the current default values. Note: Informatica recommends the use of XML Configuration Files, for which lbm_hfx_attr_create_from_xml() should be used. More...
 
LBMExpDLL int lbm_hfx_attr_create_from_xml (lbm_hfx_attr_t **attr, const char *topicname)
 Create and fill a UM HFX attribute object with the current default values for the given topic name. More...
 
LBMExpDLL int lbm_hfx_attr_set_from_xml (lbm_hfx_attr_t *attr, const char *topicname)
 Fill a UM HFX attribute object with the current default values for the given topic name. More...
 
LBMExpDLL int lbm_hfx_attr_delete (lbm_hfx_attr_t *attr)
 Delete a UM HFX attribute object. More...
 
LBMExpDLL int lbm_hfx_attr_setopt (lbm_hfx_attr_t *attr, const char *optname, const void *optval, size_t optlen)
 Set the value (in binary format) of a configuration option in the supplied HFX attribute object. More...
 
LBMExpDLL int lbm_hfx_attr_str_setopt (lbm_hfx_attr_t *attr, const char *optname, const char *optval)
 Set the value (in string format) of a configuration option in the supplied HFX attribute object. More...
 
LBMExpDLL int lbm_hfx_attr_getopt (lbm_hfx_attr_t *attr, const char *optname, void *optval, size_t *optlen)
 Retrieve the value of an option for the given LBM HFX attribute. More...
 
LBMExpDLL int lbm_hfx_attr_str_getopt (lbm_hfx_attr_t *attr, const char *optname, char *optval, size_t *optlen)
 Retrieve the textual value of an option for the given LBM HFX attribute. More...
 
LBMExpDLL int lbm_hfx_setopt (lbm_hfx_t *hfx, const char *optname, const void *optval, size_t optlen)
 Set the value (in binary format) of a configuration option in the supplied HFX. More...
 
LBMExpDLL int lbm_hfx_str_setopt (lbm_hfx_t *hfx, const char *optname, const char *optval)
 Set the value (in string format) of a configuration option in the supplied HFX. More...
 
LBMExpDLL int lbm_hfx_getopt (lbm_hfx_t *hfx, const char *optname, void *optval, size_t *optlen)
 Retrieve an option value within the given HFX. More...
 
LBMExpDLL int lbm_hfx_str_getopt (lbm_hfx_t *hfx, const char *optname, char *optval, size_t *optlen)
 Retrieve the textual option value within the given HFX. More...
 
LBMExpDLL int lbm_hfx_create (lbm_hfx_t **hfxp, lbm_hfx_attr_t *cattr, const char *symbol, lbm_rcv_cb_proc proc, lbm_event_queue_t *evq)
 Create and initialize an lbm_hfx_t object. More...
 
LBMExpDLL int lbm_hfx_delete (lbm_hfx_t *hfx)
 Delete a UM HFX object. More...
 
LBMExpDLL int lbm_hfx_delete_ex (lbm_hfx_t *hfx, lbm_event_queue_cancel_cb_info_t *cbinfo)
 Delete an LBM HFX object and receive a callback when the deletion is complete. More...
 
LBMExpDLL int lbm_hfx_rcv_topic_dump (lbm_hfx_rcv_t *hfxrcv, int *size, lbm_config_option_t *opts)
 Retrieves all receiver attribute options for an HFX receiver. More...
 
LBMExpDLL int lbm_hfx_rcv_create (lbm_hfx_rcv_t **hfrcvp, lbm_hfx_t *hfx, lbm_context_t *ctx, lbm_rcv_topic_attr_t *rattr, void *clientd)
 Create a HFX receiver. More...
 
LBMExpDLL lbm_rcv_tlbm_rcv_from_hfx_rcv (lbm_hfx_rcv_t *hfxrcv)
 Retrieve the underlying receiver from an lbm_hfx_rcv_t. More...
 
LBMExpDLL int lbm_hfx_rcv_delete (lbm_hfx_rcv_t *hfrcv)
 Delete a HFX receiver. More...
 
LBMExpDLL int lbm_hfx_rcv_delete_ex (lbm_hfx_rcv_t *hfrcv, lbm_event_queue_cancel_cb_info_t *cbinfo)
 Extended delete a UM HFX receiver object. More...
 
LBMExpDLL void lbm_debug_filename (const char *filename)
 Set the file to receive LBM debug log entries. More...
 
LBMExpDLL void lbm_debug_mask (lbm_uint64_t mask)
 Set the debug mask for LBM debug log entries. More...
 
LBMExpDLL void lbm_debugfile_maxsize (lbm_uint64_t size)
 This function for UM internal use only. More...
 
LBMExpDLL void lbm_debugfile_max_rollover (lbm_uint32_t size)
 This function for UM internal use only. More...
 
LBMExpDLL void lbm_debug_noflush (int on)
 Set the noflush flag for the debug logs. This can dramatically increase performance when a debug mask is set.
 
LBMExpDLL void lbm_log_debug (int on)
 Enable logging of debug messages to the application logging callback set by lbm_log(). More...
 
LBMExpDLL int lbm_debug_dump (const char *filename, int append)
 Dump a running rollback debug log to the given filename. More...
 
LBMExpDLL void lbm_debug_ring_buffer (size_t maxsz)
 Set debug ring buffer size. More...
 
LBMExpDLL void lbm_debug_ring_buffer_walltime (int use)
 Stamp messages with wall time. More...
 
LBMExpDLL void lbm_set_uim_loss_rate (int rate)
 Dynamically set the UIM loss rate. More...
 
LBMExpDLL void lbm_set_lbtrm_loss_rate (int rate)
 Dynamically set the LBT-RM loss rate. More...
 
LBMExpDLL void lbm_set_lbtrm_src_loss_rate (int rate)
 Dynamically set the LBT-RM source loss rate. More...
 
LBMExpDLL void lbm_set_lbtru_loss_rate (int rate)
 Dynamically set the LBT-RU loss rate. More...
 
LBMExpDLL void lbm_set_lbtru_src_loss_rate (int rate)
 Dynamically set the LBT-RU source loss rate. More...
 
LBMExpDLL int lbm_transport_source_parse (const char *source, lbm_transport_source_info_t *info, size_t infosize)
 Parse a UM transport source string into its components. See Source String. More...
 
LBMExpDLL int lbm_transport_source_format (const lbm_transport_source_info_t *info, size_t infosize, char *source, size_t *size)
 Format a UM transport source string from its components. See Source String. More...
 
LBMExpDLL int lbm_apphdr_chain_create (lbm_apphdr_chain_t **chain)
 DEPRECATED. Create a new app header chain that can be used to include metadata with a message. More...
 
LBMExpDLL int lbm_apphdr_chain_delete (lbm_apphdr_chain_t *chain)
 DEPRECATED. Delete an app header chain previously created with lbm_apphdr_chain_create. More...
 
LBMExpDLL int lbm_apphdr_chain_append_elem (lbm_apphdr_chain_t *chain, lbm_apphdr_chain_elem_t *elem)
 DEPRECATED. Appends a user-created app header to an app header chain. More...
 
LBMExpDLL int lbm_apphdr_chain_iter_create (lbm_apphdr_chain_iter_t **chain_iter, lbm_apphdr_chain_t *chain)
 DEPRECATED. Create an iterator (lbm_apphdr_chain_iter_t) to point to the first element in an apphdr chain. More...
 
LBMExpDLL int lbm_apphdr_chain_iter_create_from_msg (lbm_apphdr_chain_iter_t **chain_iter, lbm_msg_t *msg)
 DEPRECATED. Create an iterator (lbm_apphdr_chain_iter_t) to point to the first element in an apphdr chain associated with a UM message. More...
 
LBMExpDLL int lbm_apphdr_chain_iter_delete (lbm_apphdr_chain_iter_t *chain_iter)
 DEPRECATED. Delete an iterator allocated by one of the lbm_apphdr_chain_iter functions. More...
 
LBMExpDLL int lbm_apphdr_chain_iter_first (lbm_apphdr_chain_iter_t **chain_iter)
 DEPRECATED. Initializes an app header chain iterator to the first element in the chain. More...
 
LBMExpDLL int lbm_apphdr_chain_iter_done (lbm_apphdr_chain_iter_t **chain_iter)
 DEPRECATED. Tests an lbm_apphdr_chain_iter_t iterator to see if more elements in the chain remain. More...
 
LBMExpDLL int lbm_apphdr_chain_iter_next (lbm_apphdr_chain_iter_t **chain_iter)
 DEPRECATED. Advances the iterator to the next element in an app header chain, if any. More...
 
LBMExpDLL lbm_apphdr_chain_elem_tlbm_apphdr_chain_iter_current (lbm_apphdr_chain_iter_t **chain_iter)
 DEPRECATED. Returns the current element of an app header chain pointed to by an lbm_apphdr_chain_iter_t iterator. More...
 
LBMExpDLL int lbm_msg_properties_create (lbm_msg_properties_t **properties)
 Creates a new properties object, used for sending messages with properties. Send a message with properties with lbm_src_send_ex_info_t::properties to one of the extended send APIs, like lbm_src_send_ex(). See Message Properties. More...
 
LBMExpDLL int lbm_msg_properties_delete (lbm_msg_properties_t *properties)
 Deletes a properties object. See Message Properties. More...
 
LBMExpDLL int lbm_msg_properties_set (lbm_msg_properties_t *properties, const char *name, const void *value, int type, size_t size)
 Sets the value of the property with the specified name. Each property name may be associated with one and only one value. See Message Properties. More...
 
LBMExpDLL int lbm_msg_properties_clear (lbm_msg_properties_t *properties, const char *name)
 Clear the value associated with the name in the specified properties object See Message Properties. More...
 
LBMExpDLL int lbm_msg_properties_get (lbm_msg_properties_t *properties, const char *name, void *value, int *type, size_t *size)
 Gets the value of the property with the specified name, type, and size. Note that this function performs a linear search through the list of properties to find the desired property. If you are going to be retrieving most or all of a large number of stored properties, it will be more efficient to use lbm_msg_properties_iter_create() to iterate once through the list. See Message Properties. More...
 
LBMExpDLL int lbm_msg_properties_iter_create (lbm_msg_properties_iter_t **iterp)
 Creates a new msg properties iterator. An iterator is used to sequentially access each property in a properties object. Properties objects normally come from lbm_msg_properties_create() or lbm_msg_t::properties via a receiver callback (lbm_rcv_cb_proc). The newly created iterator is not associated with any properties object. Use lbm_msg_properties_iter_first() to begin iterating over a properties object. See Message Properties. More...
 
LBMExpDLL int lbm_msg_properties_iter_delete (lbm_msg_properties_iter_t *iter)
 Deletes an lbm_msg_properties_iterator See Message Properties. More...
 
LBMExpDLL int lbm_msg_properties_iter_first (lbm_msg_properties_iter_t *iter, lbm_msg_properties_t *properties)
 Begin iterating over an lbm_msg_properties_t object, starting at the first element. Calling lbm_msg_properties_iter_first associates an iterator with a properties object, and sets its current position to the first property available. An iterator can be used to iterate over more than one properties object as long as lbm_msg_properties_iter_first is called to associate it with each new properties object. See Message Properties. More...
 
LBMExpDLL int lbm_msg_properties_iter_next (lbm_msg_properties_iter_t *iter)
 Iterate to the next property in an lbm_msg_properties_t object. See Message Properties. More...
 
LBMExpDLL int lbm_src_get_inflight (lbm_src_t *src, int type, int *inflight, lbm_flight_size_set_inflight_cb_proc proc, void *clientd)
 Retrieves the current number of inflight messages of a given type from a given source. More...
 
LBMExpDLL int lbm_src_get_inflight_ex (lbm_src_t *src, int type, lbm_flight_size_inflight_t *inflight, lbm_flight_size_set_inflight_ex_cb_proc proc, void *clientd)
 Retrieves the current inflight message and byte counts of a given type from a given source. More...
 
LBMExpDLL int lbm_ssrc_get_inflight (lbm_ssrc_t *ssrc, int type, int *inflight, lbm_flight_size_set_inflight_cb_proc proc, void *clientd)
 Retrieves the current number of inflight messages of a given type from a given smart source. More...
 
LBMExpDLL int lbm_ssrc_get_inflight_ex (lbm_ssrc_t *ssrc, int type, lbm_flight_size_inflight_t *inflight, lbm_flight_size_set_inflight_ex_cb_proc proc, void *clientd)
 Retrieves the current inflight message and byte counts of a given type from a given smart source. More...
 
LBMExpDLL int lbm_ctx_umq_get_inflight (lbm_context_t *ctx, const char *qname, int *inflight, lbm_flight_size_set_inflight_cb_proc proc, void *clientd)
 DEPRECATED. Retrieves the current number of inflight UMQ messages from the ctx pointed to by lbm_context_t *ctx. More...
 
LBMExpDLL int lbm_ume_src_msg_stable (lbm_src_t *src, lbm_uint32_t sqn)
 Mark a specific sqn as stable at a Store, triggering a source event notification if configured to do so. Also adjusts the current number of inflight messages for the src if necessary. More...
 
LBMExpDLL int lbm_umq_ctx_msg_stable (lbm_context_t *ctx, const char *qname, lbm_umq_msgid_t *msg_id)
 DEPRECATED. Mark a specific msg_id as stable at qname, triggering a source event notification if configured to do so. Also adjusts the current number of inflight messages for the src if necessary. More...
 
LBMExpDLL lbm_ume_rcv_ack_tlbm_msg_extract_ume_ack (lbm_msg_t *msg)
 Retrieves the ack structure from a UMP message. This is used to do explicit ACKs without having to retain the entire received message. More...
 
LBMExpDLL int lbm_ume_ack_delete (lbm_ume_rcv_ack_t *ack)
 Deletes an ACK structure that was allocated via lbm_msg_extract_ume_ack(). More...
 
LBMExpDLL int lbm_ume_ack_send_explicit_ack (lbm_ume_rcv_ack_t *ack, lbm_uint_t sqn)
 Sends an explicit ACK up to the sequence number provided by the supplied ACK structure. This ACK structure is obtained via lbm_msg_extract_ume_ack(), and is deleted via lbm_ume_ack_delete(). More...
 
LBMExpDLL int lbm_ume_ack_mark_not_outstanding (lbm_ume_rcv_ack_t *ack, lbm_uint_t sqn)
 Updates the internal acking state up to the sequence number provided for throttled recovery (max outstanding requests) without acking anything. More...
 
LBMExpDLL int lbm_ctx_umq_queue_topic_list (lbm_context_t *ctx, const char *queue_name, lbm_async_operation_func_t *async_opfunc)
 DEPRECATED. Retrieves a list of currently available topics from a queue (asynchronous operation) More...
 
LBMExpDLL int lbm_umq_msg_selector_create (lbm_umq_msg_selector_t **selector, char *str, lbm_uint16_t len)
 Create an umq message selector (an lbm_umq_msg_selector_t structure). More...
 
LBMExpDLL int lbm_umq_msg_selector_delete (lbm_umq_msg_selector_t *selector)
 Delete the lbm_umq_msg_selector_t object previously created with lbm_umq_msg_selector_create. More...
 
LBMExpDLL int lbm_rcv_umq_queue_msg_list (lbm_rcv_t *rcv, const char *queue_name, lbm_umq_msg_selector_t *selector, lbm_async_operation_func_t *async_opfunc)
 DEPRECATED. Retrieves a list of all currently-queued messages from a queue (asynchronous operation). More...
 
LBMExpDLL int lbm_rcv_umq_queue_msg_retrieve (lbm_rcv_t *rcv, const char *queue_name, lbm_umq_msgid_t *msgids, int num_msgids, lbm_async_operation_func_t *async_opfunc)
 DEPRECATED. Retrieves a set of queued messages from the queue (asynchronous operation). More...
 
LBMExpDLL int lbm_async_operation_status (lbm_async_operation_handle_t handle, int flags)
 Query the current status of an outstanding asynchronous operation. More...
 
LBMExpDLL int lbm_async_operation_cancel (lbm_async_operation_handle_t handle, int flags)
 Cancel an outstanding asynchronous operation. More...
 
LBMExpDLL int lbm_auth_set_credentials (lbm_context_t *ctx, const char *name, size_t name_len, const char *passwd, size_t passwd_len, lbm_cred_callback_fn cbfn, void *clientd, int auth_required)
 DEPRECATED, DOES NOT FUNCTION. More...
 
LBMExpDLL int lbm_authstorage_open_storage_xml (char *filename)
 Create the storage object from XML password file. More...
 
LBMExpDLL void lbm_authstorage_close_storage_xml (void)
 Release the storage object. More...
 
LBMExpDLL int lbm_authstorage_checkpermission (char *username, char *command)
 Check if the user is authorized to execute the specified command. More...
 
LBMExpDLL int lbm_authstorage_addtpnam (const char *username, const char *pass, unsigned char flags)
 Add the new user credential to the password file. More...
 
LBMExpDLL int lbm_authstorage_deltpnam (const char *username)
 Delete the user credential from the password file. More...
 
LBMExpDLL int lbm_authstorage_user_add_role (const char *username, const char *role)
 Add one role entry for the user to the password file. More...
 
LBMExpDLL int lbm_authstorage_user_del_role (const char *username, const char *role)
 Delete the role entry for the user from the password file. More...
 
LBMExpDLL int lbm_authstorage_load_roletable (void)
 Load the role table from the password file. More...
 
LBMExpDLL int lbm_authstorage_unload_roletable (void)
 Unload the role table. More...
 
LBMExpDLL int lbm_authstorage_roletable_add_role_action (const char *rolename, const char *action)
 Add a new authorized action for the specified role. More...
 
LBMExpDLL int lbm_authstorage_print_roletable (void)
 Print the role table saved in the internal data object. More...
 
LBMExpDLL int lbm_set_umm_info (lbm_umm_info_t *info)
 Connect to and retrieve configuration from a UMM daemon. More...
 
LBMExpDLL int lbm_is_ume_capable (void)
 Determine if the LBM library is capable of UME operations. More...
 
LBMExpDLL int lbm_is_umq_capable (void)
 Determine if the LBM library is capable of UMQ operations. More...
 
LBMExpDLL void lbm_seterr (int eno, const char *str)
 UM internal use only. DO NOT USE.
 
LBMExpDLL void lbm_seterrf (int eno, const char *format,...)
 UM internal use only. DO NOT USE.
 
LBMExpDLL const char * lbm_strerror (void)
 UM internal use only. DO NOT USE.
 
LBMExpDLL const char * lbm_strerror_errnum (int errnum)
 UM internal use only. DO NOT USE.
 
LBMExpDLL void lbm_sock_init (void)
 UM internal use only. DO NOT USE.
 
LBMExpDLL lbm_uint64_t lbm_create_random_id (void)
 Create a random id to be used in conjunction with lbm_get_jms_msg_id() for JMS compatibility. More...
 
LBMExpDLL char * lbm_get_jms_msg_id (lbm_uint64_t source_id, lbm_uint64_t seqno_id, char *topic)
 Create JMS message ID. More...
 
LBMExpDLL int lbm_src_buff_acquire (lbm_src_t *const src, void **const bufp, const size_t len, const int flags)
 Acquires a pointer to a buffer of the specified length, to be filled in and sent later. More...
 
LBMExpDLL int lbm_src_buffs_complete (lbm_src_t *const src)
 Sends all buffers on a transport session that had been previously been acquired. More...
 
LBMExpDLL int lbm_src_buffs_complete_and_acquire (lbm_src_t *const src, void **const bufp, const size_t len, const int flags)
 First sends all buffers on a transport session that had been previously acquired, and then acquires a pointer to a buffer of the specified length, to be filled in and sent later. Equivalent to calling lbm_src_buffs_complete followed by lbm_src_buff_acquire; included for convenience. More...
 
LBMExpDLL int lbm_src_buffs_cancel (lbm_src_t *const src)
 Cancels all outstanding (not yet completed) buffers previously acquired using lbm_src_buff_acquire for this source. All such acquired-but-not-completed buffers for this source (only) will no longer be received by any receivers. More...
 
LBMExpDLL int lbm_src_alloc_msg_buff (lbm_src_t *const src, void **const usr_bufp, const size_t len, void **const lbm_hdl, const int flags)
 Allocates a zero-copy send buffer of the specified length, to be filled in and sent later (via the usr_bufp parameter). More...
 
LBMExpDLL int lbm_ssrc_buff_get (lbm_ssrc_t *const ssrc, char **const usr_bufp, const int flags)
 Get a pre-allocated user buffer associated with a UM Smart Source. More...
 
LBMExpDLL int lbm_ssrc_buff_put (lbm_ssrc_t *const ssrc, const char *usr_bufp)
 Return a pre-allocated user buffer associated with a UM Smart Source to the free list. More...
 
LBMExpDLL int lbm_xsp_attr_option_size (void)
 Retrieves the number of configuration options that are of type "xsp". More...
 
LBMExpDLL int lbm_xsp_attr_create (lbm_xsp_attr_t **attr)
 Create and fill a UM XSP attribute object with the current default values. Note: Informatica recommends the use of XML Configuration Files, for which lbm_xsp_attr_create_from_xml() should be used. More...
 
LBMExpDLL int lbm_xsp_attr_delete (lbm_xsp_attr_t *attr)
 Delete a UM XSP attribute object. More...
 
LBMExpDLL int lbm_xsp_attr_setopt (lbm_xsp_attr_t *attr, const char *optname, const void *optval, size_t optlen)
 Set the value (in binary format) of a configuration option in the supplied XSP attribute object. More...
 
LBMExpDLL int lbm_xsp_attr_str_setopt (lbm_xsp_attr_t *attr, const char *optname, const char *optval)
 Set the value (in string format) of a configuration option in the supplied XSP attribute object. More...
 
LBMExpDLL int lbm_xsp_attr_getopt (lbm_xsp_attr_t *attr, const char *optname, void *optval, size_t *optlen)
 Retrieve the value of a configuration option for the given UM XSP attribute. More...
 
LBMExpDLL int lbm_xsp_attr_str_getopt (lbm_xsp_attr_t *attr, const char *optname, char *optval, size_t *optlen)
 Retrieve the textual value of a configuration option for the given UM XSP attribute. More...
 
LBMExpDLL int lbm_xsp_create (lbm_xsp_t **xspp, lbm_context_t *ctx, lbm_context_attr_t *cattr, lbm_xsp_attr_t *attr)
 Create a UM XSP object. More...
 
LBMExpDLL int lbm_xsp_delete (lbm_xsp_t *xsp)
 Delete a UM XSP object. More...
 
LBMExpDLL int lbm_xsp_process_events (lbm_xsp_t *xsp, lbm_ulong_t msec)
 Process internal events in the given XSP object. More...
 
LBMExpDLL int lbm_xsp_unblock (lbm_xsp_t *xsp)
 Unblock a sequential mode XSP. More...
 
LBMExpDLL int lbm_xsp_register_fd (lbm_xsp_t *xsp, lbm_handle_t handle, lbm_fd_cb_proc proc, void *clientd, lbm_event_queue_t *evq, lbm_ulong_t ev)
 Register a file descriptor/socket on the given XSP for events that calls proc when a given event occurs. More...
 
LBMExpDLL int lbm_xsp_cancel_fd (lbm_xsp_t *xsp, lbm_handle_t handle, lbm_ulong_t ev)
 Cancel a previously registered file descriptor/socket event on the given XSP. More...
 
LBMExpDLL void lbm_set_benign_error_flag (void)
 UM internal use only. DO NOT USE.
 
LBMExpDLL void lbm_clr_benign_error_flag (void)
 UM internal use only. DO NOT USE.
 
LBMExpDLL int lbm_get_benign_error_flag (void)
 UM internal use only. DO NOT USE.
 

Detailed Description

Ultra Messaging (UM) Core API. The "lbm.h" header file defines the main APIs to use Ultra Messaging. For many applications, this is the only header file needed. The binary code is contained in the "lbm" library (dynamic on Unix: "liblbm.so", static on Unix: "liblbm.a", dynamic only on Windows: "lbm.dll"). See UM C API for general information on the C API. See Fundamental Concepts for an introduction to Ultra Messaging.

Macro Definition Documentation

#define LBM_CONTEXT_EVENT_UMQ_INSTANCE_LIST_NOTIFICATION   4

Value for "event" parameter of context event callback lbm_context_event_cb_proc indicating a change in the list of queue instances.

The "ed" parameter of the context event callback should be cast to (char *) and contains an informational message as a null-terminated string.

#define LBM_CONTEXT_EVENT_UMQ_REGISTRATION_COMPLETE_EX   1

Value for "event" parameter of context event callback lbm_context_event_cb_proc indicating the context has successfully registered with the queue broker.

The LBM_CONTEXT_EVENT_UMQ_REGISTRATION_SUCCESS_EX and LBM_CONTEXT_EVENT_UMQ_REGISTRATION_COMPLETE_EX events are identical and are sent one right after the other. The presence of two events for the same thing is a historical artifact from pre-6.8 versions of UM, and are retained for compatibility.

The "ed" parameter of the context event callback should be cast to (lbm_context_event_umq_registration_complete_ex_t *).

#define LBM_CONTEXT_EVENT_UMQ_REGISTRATION_ERROR   3

Value for "event" parameter of context event callback lbm_context_event_cb_proc indicating the context has successfully registered with the queue broker.

The "ed" parameter of the context event callback should be cast to (char *) and contains an error message as a null-terminated string.

#define LBM_CONTEXT_EVENT_UMQ_REGISTRATION_SUCCESS_EX   2

Value for "event" parameter of context event callback lbm_context_event_cb_proc indicating the context has successfully registered with the queue broker.

The LBM_CONTEXT_EVENT_UMQ_REGISTRATION_SUCCESS_EX and LBM_CONTEXT_EVENT_UMQ_REGISTRATION_COMPLETE_EX events are identical and are sent one right after the other. The presence of two events for the same thing is a historical artifact from pre-6.8 versions of UM, and are retained for compatibility.

The "ed" parameter of the context event callback should be cast to (lbm_context_event_umq_registration_complete_ex_t *).

#define LBM_CTX_ATTR_OP_DAEMON   2

Value for operational_mode (context) configuration option. DEPRECATED, do not use.

Deprecated:
do not use.
#define LBM_DAEMON_EVENT_CONNECT_ERROR   2

UM daemon event. Connected could not complete successfully (info valid)

Deprecated:
do not use.
#define LBM_DAEMON_EVENT_CONNECT_TIMEOUT   4

UM daemon event. Connection to daemon timed out.

Deprecated:
do not use.
#define LBM_DAEMON_EVENT_CONNECTED   1

UM daemon event. Connected successfully to daemon (info not valid)

Deprecated:
do not use.
#define LBM_DAEMON_EVENT_DISCONNECTED   3

UM daemon event. Connection to daemon aborted (info not valid)

Deprecated:
do not use.
#define LBM_EWOULDBLOCK   2

Value returned by lbm_errnum() indicating send function would have blocked, but send was LBM_SRC_NONBLOCK.

Attention
See Source Wakeup Event for important information regarding event ordering.
#define LBM_MSG_BOS   20

Value for lbm_msg_t::type indicating the beginning of a receive-side transport session, delivered to receiver callback lbm_rcv_cb_proc.

See Receiver BOS and EOS Events.

The lbm_msg_t::data pointer should be ignored.

#define LBM_MSG_DATA   0

Value for lbm_msg_t::type indicating reception of a Data message, delivered to receiver callback lbm_rcv_cb_proc.

The lbm_msg_t::data pointer should be cast to point to the user's intended data type.

#define LBM_MSG_EOS   1

Value for lbm_msg_t::type indicating End of Transport Session, delivered to receiver callback lbm_rcv_cb_proc.

See Receiver BOS and EOS Events. The lbm_msg_t::data pointer should be ignored.

#define LBM_MSG_FLUSH   0x4

Flag passed to a source send call (e.g. lbm_src_send(), lbm_src_send_ex() etc) : Message is to be sent ASAP (not implicitly or explicitly batched).

This also flushes waiting messages that were explicitly or implicitly batched.

#define LBM_MSG_HF_RESET   27

Value for lbm_msg_t::type indicating the source invoked lbm_hf_src_send_rcv_reset() to reset HF sequence numbers, delivered to receiver callback lbm_rcv_cb_proc.

See Hot Failover (HF).

The lbm_msg_t::data pointer should be ignored.

#define LBM_MSG_NO_SOURCE_NOTIFICATION   6

Value for lbm_msg_t::type indicating that no source has yet been found for the requested topic for a time exceeding the configured limit, delivered to receiver callback lbm_rcv_cb_proc.

UM will continue to wait for a source to be discovered. See resolution_no_source_notification_threshold (receiver).

The lbm_msg_t::data pointer should be ignored.

#define LBM_MSG_REQUEST   2

Value for lbm_msg_t::type indicating reception of a Request message, delivered to receiver callback lbm_rcv_cb_proc.

See Request/Response.

The lbm_msg_t::data pointer should be cast to point to the user's intended data type.

#define LBM_MSG_RESPONSE   3

Value for lbm_msg_t::type indicating reception of a Response message, delivered to receiver callback lbm_rcv_cb_proc.

See Request/Response.

The lbm_msg_t::data pointer should be cast to point to the user's intended data type.

#define LBM_MSG_UME_DEREGISTRATION_COMPLETE_EX   13

Value for lbm_msg_t::type indicating successful persistent receiver deregistration from all Stores, delivered to receiver callback lbm_rcv_cb_proc.

The lbm_msg_t::data pointer should be ignored.

#define LBM_MSG_UME_DEREGISTRATION_SUCCESS_EX   12

Value for lbm_msg_t::type indicating successful persistent receiver deregistration from one Store, delivered to receiver callback lbm_rcv_cb_proc.

Note that since this represents a single Store's deregistration, this does not mean that deregistration is complete; see LBM_MSG_UME_DEREGISTRATION_COMPLETE_EX.

The lbm_msg_t::data pointer should be cast to (lbm_msg_ume_deregistration_ex_t *).

#define LBM_MSG_UME_REGISTRATION_CHANGE   9

Value for lbm_msg_t::type indicating a change in the receiver's registration status, delivered to receiver callback lbm_rcv_cb_proc.

The lbm_msg_t::data pointer should be cast to (char *), and contains an informational message describing the change as a null-terminated string.

#define LBM_MSG_UME_REGISTRATION_COMPLETE_EX   11

Value for lbm_msg_t::type indicating successful persistent receiver registration with a quorum of Stores, delivered to receiver callback lbm_rcv_cb_proc.

The application is now considered to be fully registered.

The lbm_msg_t::data pointer should be cast to (lbm_msg_ume_registration_complete_ex_t *).

#define LBM_MSG_UME_REGISTRATION_ERROR   7

Value for lbm_msg_t::type indicating that the persistent Store has rejected the receiver's registration, delivered to receiver callback lbm_rcv_cb_proc.

The lbm_msg_t::data pointer should be cast to (char *), and contains an error message as a null-terminated string.

#define LBM_MSG_UME_REGISTRATION_SUCCESS   8

Value for lbm_msg_t::type. DEPRECATED, do not use.

Deprecated:
do not use. Use LBM_MSG_UME_REGISTRATION_SUCCESS_EX instead.
#define LBM_MSG_UME_REGISTRATION_SUCCESS_EX   10

Value for lbm_msg_t::type indicating that a persistent Store has accepted the receiver's changed registration, delivered to receiver callback lbm_rcv_cb_proc.

Note that since this represents a single Store's acceptance, this does not mean that registration is complete; see LBM_MSG_UME_REGISTRATION_COMPLETE_EX.

The lbm_msg_t::data pointer should be cast to (lbm_msg_ume_registration_ex_t *).

#define LBM_MSG_UMQ_DEREGISTRATION_COMPLETE_EX   19

Value for lbm_msg_t::type indicating successful queuing receiver deregistration, delivered to receiver callback lbm_rcv_cb_proc.

The lbm_msg_t::data pointer should be cast to (lbm_msg_umq_deregistration_complete_ex_t *).

#define LBM_MSG_UMQ_INDEX_ASSIGNED_EX   24

Value for lbm_msg_t::type indicating the start of index, delivered to receiver callback lbm_rcv_cb_proc.

The lbm_msg_t::data pointer should be cast to (lbm_msg_umq_index_assigned_ex_t *).

#define LBM_MSG_UMQ_INDEX_ASSIGNMENT_ELIGIBILITY_ERROR   21

Value for lbm_msg_t::type indicating an error while attempting to start or stop a queuing message assignment, delivered to receiver callback lbm_rcv_cb_proc.

The lbm_msg_t::data pointer should be cast to (char *), and contains an error message as a null-terminated string.

#define LBM_MSG_UMQ_INDEX_ASSIGNMENT_ELIGIBILITY_START_COMPLETE_EX   22

Value for lbm_msg_t::type indicating the start of index assignment eligibility or index assignment, delivered to receiver callback lbm_rcv_cb_proc.

The lbm_msg_t::data pointer should be cast to (lbm_msg_umq_index_assignment_eligibility_start_complete_ex_t *).

#define LBM_MSG_UMQ_INDEX_ASSIGNMENT_ELIGIBILITY_STOP_COMPLETE_EX   23

Value for lbm_msg_t::type indicating the end of index assignment eligibility or index assignment, delivered to receiver callback lbm_rcv_cb_proc.

The lbm_msg_t::data pointer should be cast to (lbm_msg_umq_index_assignment_eligibility_stop_complete_ex_t *).

#define LBM_MSG_UMQ_INDEX_ASSIGNMENT_ERROR   26

Value for lbm_msg_t::type indicating an error assigning an index, delivered to receiver callback lbm_rcv_cb_proc.

The lbm_msg_t::data pointer should be cast to (char *), and contains an error message as a null-terminated string.

#define LBM_MSG_UMQ_INDEX_RELEASED_EX   25

Value for lbm_msg_t::type indicating the end of an index, delivered to receiver callback lbm_rcv_cb_proc.

The lbm_msg_t::data pointer should be cast to (lbm_msg_umq_index_released_ex_t *).

#define LBM_MSG_UMQ_REGISTRATION_COMPLETE_EX   18

Value for lbm_msg_t::type indicating queuing receiver registration, delivered to receiver callback lbm_rcv_cb_proc.

The application is now considered to be fully registered.

The lbm_msg_t::data pointer should be cast to (lbm_msg_umq_registration_complete_ex_t *).

#define LBM_MSG_UMQ_REGISTRATION_ERROR   16

Value for lbm_msg_t::type indicating that the queue has rejected the receiver's registration, delivered to receiver callback lbm_rcv_cb_proc.

The lbm_msg_t::data pointer should be cast to (char *), and contains an error message as a null-terminated string.

#define LBM_MSG_UNRECOVERABLE_LOSS   4

Value for lbm_msg_t::type indicating that a lost message could not be recovered within the configured parameters, delivered to receiver callback lbm_rcv_cb_proc.

The lbm_msg_t::data pointer should be ignored.

#define LBM_MSG_UNRECOVERABLE_LOSS_BURST   5

Value for lbm_msg_t::type indicating that a series of consecutive lost messages exceeded the configured limit delivery_control_maximum_burst_loss (receiver), delivered to receiver callback lbm_rcv_cb_proc.

See Burst Loss.

The lbm_msg_t::data pointer should be ignored.

#define LBM_SRC_BLOCK   0x20

Flag passed to a source send call (e.g. lbm_src_send(), lbm_src_send_ex() etc) : Block the caller indefinitely until the message is sent.

This behavior is the default if neither LBM_SRC_NONBLOCK nor LBM_SRC_BLOCK are supplied.

#define LBM_SRC_EVENT_CONNECT   1

Value for "event" parameter of source event callback lbm_src_cb_proc indicating the first or initial receiver of a subscribing application has joined the source's transport session. The "ed" parameter of source event callback should be ignored.

UM delivers this event if it has mapped a source object to a unicast transport session (TCP, LBT-RU, LBT-IPC, or LBT-RDMA) and then the first receiver joins the transport session. If several sources map to the transport session, UM delivers this event multiple times, once for each source. The initial receiver can be subscribed to any of the sources topics. Subsequent receivers that join the transport session do not trigger additional events. However, additional receiving applications (contexts) may also join the transport session and UM delivers the event for the first or initial receiver of each additional application.

For more information see Source Connect and Disconnect Events.

#define LBM_SRC_EVENT_DAEMON_CONFIRM   4

Value for "event" parameter of source event callback lbm_src_cb_proc.

Deprecated:
do not use.
#define LBM_SRC_EVENT_DISCONNECT   2

Value for "event" parameter of source event callback lbm_src_cb_proc indicating the last or final receiver of a subscribing application has left the source's transport session.

The "ed" parameter of the source event callback should be ignored.

UM delivers this event if it has mapped a source object to a unicast transport session (TCP, LBT-RU, LBT-IPC, or LBT-RDMA) and then the last receiver leaves the transport session. If several sources map to the transport session, UM delivers this event multiple times, once for each source. The final receiver can be subscribed to any of the sources topics. Additional receiving applications (contexts) may also leave the transport session and UM delivers the event for the last or final receiver of each additional application.

For more information see Source Connect and Disconnect Events.

#define LBM_SRC_EVENT_FLIGHT_SIZE_NOTIFICATION   29

Value for "event" parameter of source event callbacks lbm_src_cb_proc, lbm_ssrc_cb_proc, and lbm_context_src_cb_proc indicating that a persistent, queuing, or ULB source has changed its flight size state.

The "ed" parameter of the source event callback should be cast to (lbm_src_event_flight_size_notification_t *).

Warning
The thread used to deliver this event depends on the the specific state transition being notified. When the notification is for state LBM_SRC_EVENT_FLIGHT_SIZE_NOTIFICATION_STATE_OVER, the delivery thread is the application thread calling the source send function. The call is made during the execution of the send function, meaning that the send function will not return until after the source notification callback returns. But when the notification is for state LBM_SRC_EVENT_FLIGHT_SIZE_NOTIFICATION_STATE_UNDER, the delivery thread is the context (or XSP) thread, and is triggered by either reception of stability notifications from the Store or from timer expiration.

This means that it is possible for both event types to be delivered simultaneously due to unpredictable thread scheduling. See Source Flight Notification Event for detailed information regarding event ordering.

#define LBM_SRC_EVENT_FLIGHT_SIZE_NOTIFICATION_STATE_OVER   0x1

Value for "state" field in lbm_src_event_flight_size_notification_t indicating that persisted messages in flight are now above the threshold, and the application should avoid sending additional messages until the in-flight messages drop back under the threshold.

This is delivered as part of the LBM_SRC_EVENT_FLIGHT_SIZE_NOTIFICATION source event.

Attention
See Source Flight Notification Event for important information regarding event ordering.
#define LBM_SRC_EVENT_FLIGHT_SIZE_NOTIFICATION_STATE_UNDER   0x2

Value for "state" field in lbm_src_event_flight_size_notification_t indicating that persisted messages in flight are now below the threshold, and the application may resume sending messages.

This is delivered as part of the LBM_SRC_EVENT_FLIGHT_SIZE_NOTIFICATION source event.

Attention
See Source Flight Notification Event for important information regarding event ordering.
#define LBM_SRC_EVENT_SEQUENCE_NUMBER_INFO   15

Value for "event" parameter of source event callbacks lbm_src_cb_proc and lbm_ssrc_cb_proc indicating the assigned sequence number of a message being sent. This callback is made synchronously with a lbm_src_send_ex() call (or equivalent).

The "ed" parameter of the source event callback should be cast to (lbm_src_event_sequence_number_info_t *).

Note
This event is generated only when using lbm_src_send_ex() (or equivalent) with the LBM_SRC_SEND_EX_FLAG_SEQUENCE_NUMBER_INFO or LBM_SRC_SEND_EX_FLAG_SEQUENCE_NUMBER_INFO_FRAGONLY flag.
#define LBM_SRC_EVENT_TIMESTAMP   34

Value for "event" parameter of source event callback lbm_src_cb_proc indicating a high-resolution timestamp for a sent message.

The "ed" parameter of the source event callback should be cast to (lbm_src_event_timestamp_info_t *).

#define LBM_SRC_EVENT_UME_DELIVERY_CONFIRMATION   8

Value for "event" parameter of source event callback lbm_src_cb_proc.

Deprecated:
do not use. Use LBM_SRC_EVENT_UME_DELIVERY_CONFIRMATION_EX instead.
#define LBM_SRC_EVENT_UME_DELIVERY_CONFIRMATION_EX   14

Value for "event" parameter of source event callbacks lbm_src_cb_proc and lbm_ssrc_cb_proc indicating that a receiver has confirmed delivery of a message.

The "ed" parameter of the source event callback should be cast to (lbm_src_event_ume_ack_ex_info_t *).

#define LBM_SRC_EVENT_UME_DEREGISTRATION_COMPLETE_EX   32

Value for "event" parameter of source event callback lbm_src_cb_proc indicating the source successfully de-registered with all Stores.

The "ed" parameter of the source event callback is not used and should be ignored.

#define LBM_SRC_EVENT_UME_DEREGISTRATION_SUCCESS_EX   31

Value for "event" parameter of source event callbacks lbm_src_cb_proc and lbm_ssrc_cb_proc indicating the source successfully de-registered with a Store. Note that since this represents a single Store's deregistration, this does not mean that deregistration is complete; see LBM_SRC_EVENT_UME_DEREGISTRATION_COMPLETE_EX.

The "ed" parameter of the source event callback should be cast to (lbm_src_event_ume_deregistration_ex_t *).

#define LBM_SRC_EVENT_UME_MESSAGE_NOT_STABLE   33

Value for "event" parameter of source event callbacks lbm_src_cb_proc and lbm_ssrc_cb_proc indicating the source gave up waiting for a quorum of Stores to acknowledge stability of a message.

The application should assume that the message is not stable.

The "ed" parameter of the source event callback should be cast to (lbm_src_event_ume_ack_ex_info_t *).

#define LBM_SRC_EVENT_UME_MESSAGE_RECLAIMED   10

Value for "event" parameter of source event callback lbm_src_cb_proc indicating a message is being reclaimed. This is the older form. See LBM_SRC_EVENT_UME_MESSAGE_RECLAIMED_EX for an expanded form of this event.

The "ed" parameter of the source event callback should be cast to (lbm_src_event_ume_ack_info_t *).

Note
This event is generated only when it is enabled in the source's configuration with use_extended_reclaim_notifications (source) set to 0.
#define LBM_SRC_EVENT_UME_MESSAGE_RECLAIMED_EX   30

Value for "event" parameter of source event callbacks lbm_src_cb_proc and lbm_ssrc_cb_proc indicating a message is being reclaimed. This is the newer, expanded form. See LBM_SRC_EVENT_UME_MESSAGE_RECLAIMED for the older form.

The "ed" parameter of the source event callback should be cast to (lbm_src_event_ume_ack_ex_info_t *).

Note
This event is generated only when it is enabled in the source's configuration with use_extended_reclaim_notifications (source) set to 1.
#define LBM_SRC_EVENT_UME_MESSAGE_STABLE   7

Value for "event" parameter of source event callback lbm_src_cb_proc.

Deprecated:
This event is no longer generated by UM. Use LBM_SRC_EVENT_UME_MESSAGE_STABLE_EX instead.
#define LBM_SRC_EVENT_UME_MESSAGE_STABLE_EX   13

Value for "event" parameter of source event callbacks lbm_src_cb_proc and lbm_ssrc_cb_proc indicating that a message is stable on the Store.

The "ed" parameter of the source event callback should be cast to (lbm_src_event_ume_ack_ex_info_t *).

#define LBM_SRC_EVENT_UME_REGISTRATION_COMPLETE_EX   12

Value for "event" parameter of source event callbacks lbm_src_cb_proc and lbm_ssrc_cb_proc indicating the source successfully registered with a quorum of Stores. The application can now send messages.

The "ed" parameter of the source event callback should be cast to (lbm_src_event_ume_registration_complete_ex_t *).

#define LBM_SRC_EVENT_UME_REGISTRATION_SUCCESS   6

Value for "event" parameter of source event callback lbm_src_cb_proc.

Deprecated:
do not use. Use LBM_SRC_EVENT_UME_REGISTRATION_SUCCESS_EX instead.
#define LBM_SRC_EVENT_UME_REGISTRATION_SUCCESS_EX   11

Value for "event" parameter of source event callbacks lbm_src_cb_proc and lbm_ssrc_cb_proc indicating the source successfully registered with a Store. Note that since this represents a single Store's acceptance, this does not mean that registration is complete; see LBM_SRC_EVENT_UME_REGISTRATION_COMPLETE_EX.

The "ed" parameter of the source event callback should be cast to (lbm_src_event_ume_registration_ex_t *).

#define LBM_SRC_EVENT_UME_STORE_UNRESPONSIVE   9

Value for "event" parameter of source event callback lbm_src_cb_proc indicating a Store has not been active for the Store activity timeout (see ume_store_activity_timeout (source)).

The "ed" parameter of the source event callback should be cast to (char *) and contains the Store identity as a null-terminated string.

#define LBM_SRC_EVENT_UMQ_MESSAGE_ID_INFO   17

Value for "event" parameter of source event callback lbm_src_cb_proc indicating the queuing message ID being assigned to the message being sent.

The "ed" parameter of the source event callback should be cast to (lbm_src_event_umq_message_id_info_t *).

#define LBM_SRC_EVENT_UMQ_MESSAGE_STABLE_EX   19

Value for "event" parameter of source event callback lbm_src_cb_proc indicating a message is stable on the queuing broker.

The "ed" parameter of the source event callback should be cast to (lbm_src_event_umq_stability_ack_info_ex_t *).

#define LBM_SRC_EVENT_UMQ_REGISTRATION_COMPLETE_EX   18

Value for "event" parameter of source event callback lbm_src_cb_proc indicating registration with the queuing broker is complete.

The "ed" parameter of the source event callback should be cast to (lbm_src_event_umq_registration_complete_ex_t *).

#define LBM_SRC_EVENT_UMQ_REGISTRATION_ERROR   16

Value for "event" parameter of source event callback lbm_src_cb_proc indicating failure to register with the queuing broker.

The "ed" parameter of the source event callback should be cast to (char *) and contains an error message as a null-terminated string.

#define LBM_SRC_EVENT_UMQ_ULB_MESSAGE_ASSIGNED_EX   20

Value for "event" parameter of source event callback lbm_src_cb_proc indicating a ULB message is has been assigned to a receiver.

The "ed" parameter of the source event callback should be cast to (lbm_src_event_umq_ulb_message_info_ex_t *).

Note
This event is generated only when it is enabled in the source's configuration with LBM_SRC_TOPIC_ATTR_UMQ_ULB_EVENT_MSG_ASSIGNMENT. See umq_ulb_events (source).
#define LBM_SRC_EVENT_UMQ_ULB_MESSAGE_COMPLETE_EX   23

Value for "event" parameter of source event callback lbm_src_cb_proc indicating that all ULB receiver application sets have confirmed that a ULB message has been received and processed.

The "ed" parameter of the source event callback should be cast to (lbm_src_event_umq_ulb_message_info_ex_t *).

Note
This event is generated only when it is enabled in the source's configuration with LBM_SRC_TOPIC_ATTR_UMQ_ULB_EVENT_MSG_COMPLETE. See umq_ulb_events (source).
#define LBM_SRC_EVENT_UMQ_ULB_MESSAGE_CONSUMED_EX   24

Value for "event" parameter of source event callback lbm_src_cb_proc indicating that a ULB receiver has confirmed that a ULB message has been received and processed.

The "ed" parameter of the source event callback should be cast to (lbm_src_event_umq_ulb_message_info_ex_t *).

Note
This event is generated only when it is enabled in the source's configuration with LBM_SRC_TOPIC_ATTR_UMQ_ULB_EVENT_MSG_CONSUME. See umq_ulb_events (source).
#define LBM_SRC_EVENT_UMQ_ULB_MESSAGE_REASSIGNED_EX   21

Value for "event" parameter of source event callback lbm_src_cb_proc indicating a ULB message is has been re-assigned to a different receiver.

The "ed" parameter of the source event callback should be cast to (lbm_src_event_umq_ulb_message_info_ex_t *).

Note
This event is generated only when it is enabled in the source's configuration with LBM_SRC_TOPIC_ATTR_UMQ_ULB_EVENT_MSG_REASSIGNMENT. See umq_ulb_events (source).
#define LBM_SRC_EVENT_UMQ_ULB_MESSAGE_TIMEOUT_EX   22

Value for "event" parameter of source event callback lbm_src_cb_proc indicating a ULB message has timed out and has exceeded its lifetime. The message is discarded.

The "ed" parameter of the source event callback should be cast to (lbm_src_event_umq_ulb_message_info_ex_t *).

Note
This event is generated only when it is enabled in the source's configuration with LBM_SRC_TOPIC_ATTR_UMQ_ULB_EVENT_MSG_TIMEOUT. See umq_ulb_events (source).
#define LBM_SRC_EVENT_UMQ_ULB_RECEIVER_DEREGISTRATION_EX   26

Value for "event" parameter of source event callback lbm_src_cb_proc indicating that a ULB receiver has de-registered with this source.

The "ed" parameter of the source event callback should be cast to (lbm_src_event_umq_ulb_receiver_info_ex_t *).

Note
This event is generated only when it is enabled in the source's configuration with LBM_SRC_TOPIC_ATTR_UMQ_ULB_EVENT_RCV_DEREGISTRATION. See umq_ulb_events (source).
#define LBM_SRC_EVENT_UMQ_ULB_RECEIVER_READY_EX   27

Value for "event" parameter of source event callback lbm_src_cb_proc indicating that a ULB receiver is ready to receive messages.

The "ed" parameter of the source event callback should be cast to (lbm_src_event_umq_ulb_receiver_info_ex_t *).

Note
This event is generated only when it is enabled in the source's configuration with LBM_SRC_TOPIC_ATTR_UMQ_ULB_EVENT_RCV_READY. See umq_ulb_events (source).
#define LBM_SRC_EVENT_UMQ_ULB_RECEIVER_REGISTRATION_EX   25

Value for "event" parameter of source event callback lbm_src_cb_proc indicating that a ULB receiver has registered with this source.

The "ed" parameter of the source event callback should be cast to (lbm_src_event_umq_ulb_receiver_info_ex_t *).

Note
This event is generated only when it is enabled in the source's configuration with LBM_SRC_TOPIC_ATTR_UMQ_ULB_EVENT_RCV_REGISTRATION. See umq_ulb_events (source).
#define LBM_SRC_EVENT_UMQ_ULB_RECEIVER_TIMEOUT_EX   28

Value for "event" parameter of source event callback lbm_src_cb_proc indicating that a ULB receiver has timed out and exceeded its lifetime.

The "ed" parameter of the source event callback should be cast to (lbm_src_event_umq_ulb_receiver_info_ex_t *).

Note
This event is generated only when it is enabled in the source's configuration with LBM_SRC_TOPIC_ATTR_UMQ_ULB_EVENT_RCV_TIMEOUT. See umq_ulb_events (source).
#define LBM_SRC_EVENT_WAKEUP   3

Value for "event" parameter of source event callback lbm_context_src_cb_proc and lbm_src_cb_proc indicating the application can send more messages.

Attention
See Source Wakeup Event for important information regarding event ordering.

The "ed" parameter of the source event callback should be cast to (lbm_src_event_wakeup_t *).

Typedef Documentation

Structure that represents an element in an app header chain.

See lbm_apphdr_chain_elem_t_stct for field definitions.

typedef int(* lbm_async_operation_function_cb) (lbm_async_operation_info_t *opinfo, void *clientd)

User-supplied application callback for asynchronous operation status and completion.

Parameters
opinfoOperation-specific results.
clientdClient data pointer supplied in in the lbm_async_operation_func_t struct passed in to an asynchronous API call.
Returns
0 for Success, -1 for Failure.
typedef struct lbm_context_attr_t_stct lbm_context_attr_t

Structure used to hold configuration options for contexts.

Do not access this structure directly, use setopt() and getopt() functions.

typedef int(* lbm_context_event_cb_proc) (lbm_context_t *ctx, int event, void *ed, void *clientd)

Application context-level callback for events associated with contexts.

Set by the context_event_function (context) context option using the lbm_context_src_event_func_t structure. If this application callback is set without an event queue, it is called from the context thread and is limited in the API calls that it can make.

Parameters
ctxContext object generating the event.
eventType of event: LBM_CONTEXT_EVENT_UMQ_REGISTRATION_COMPLETE_EX, LBM_CONTEXT_EVENT_UMQ_REGISTRATION_SUCCESS_EX, LBM_CONTEXT_EVENT_UMQ_REGISTRATION_ERROR, LBM_CONTEXT_EVENT_UMQ_INSTANCE_LIST_NOTIFICATION.
edPointer to event data, content dependent on event type.
clientdClient data pointer supplied when setting context_event_function (context) context option.
Returns
0 always

Structure that holds the application function to configure the callback for context-level events.

Set by the context_event_function (context) configuration option.

See lbm_context_event_func_t_stct for field definitions.

Structure that holds information for contexts after registration is complete to all involved queue instances.

A structure used with UMQ receivers and sources to indicate successful context registration to quorum or to all queue instances involved.

See lbm_context_event_umq_registration_complete_ex_t_stct for field definitions.

Structure that holds queue registration information for the UMQ context in an extended form.

A structure used with UMQ receivers and sources to indicate successful context registration with an instance of the queue.

See lbm_context_event_umq_registration_ex_t_stct for field definitions.

Structure that holds the application function to configure a callback for receiving certain immediate mode messages (UIM).

UIMs can be received using normal UM receivers. However, there are two cases where an application would not use a normal receiver:

  • Topicless messages (no topic associated with the message).
  • Messages that have a topic, but for which no matching receiver exists; sort of a "default" receiver of UIMs.

Callbacks for these cases can be registered using the configuration options immediate_message_receiver_function (context) and immediate_message_topic_receiver_function (context) respectively.

See Immediate Messaging for general information on immediate messaging.

See lbm_context_rcv_immediate_msgs_func_t_stct for field definitions.

typedef int(* lbm_context_src_cb_proc) (lbm_context_t *ctx, int event, void *ed, void *clientd)

Application context-level callback for events associated with context sources (immediate mode sources and responses).

Set by the source_event_function (context) option using the lbm_context_src_event_func_t structure. If this application callback is set without an event queue, it is called from the context thread and is limited in the API calls that it can make.

Parameters
ctxContext object generating the event.
eventType of event: LBM_SRC_EVENT_WAKEUP, LBM_SRC_EVENT_FLIGHT_SIZE_NOTIFICATION, LBM_SRC_EVENT_UMQ_MESSAGE_ID_INFO, LBM_SRC_EVENT_UMQ_MESSAGE_STABLE_EX, LBM_SRC_EVENT_UME_MESSAGE_RECLAIMED.
edPointer to event data, content dependent on event type.
clientdClient data pointer supplied when setting source_event_function (context) context option.
Returns
0 always

Structure that holds the application callback to configure context-level source events.

Set by the source_event_function (context) configuration option.

See lbm_context_src_event_func_t_stct for field definitions.

Structure that holds statistics for a context.

This structure holds general context statistics for things like topic resolution and interaction with transports and applications.

Note that when stats are sampled, the fields in the structure are not necessarily from the same instant in time. The structure might be updated concurrently with it being sampled, and while each structure field is atomically read, the field values can be skewed slightly across time.

See lbm_context_stats_t_stct for field definitions.

Cumulative vs Snapshot

Most UM statistics are cumulative. For example, tr_dgrams_sent starts at zero and grows over time as more and more topic resolution datagrams are sent.

But some statistics are snapshots, meaning that they represent the value at a moment in time. These values can go up and down. For example, tr_src_topics indicates the number of sources at the time of the snapshot.

typedef int(* lbm_daemon_event_cb_proc) (lbm_context_t *ctx, int event, const char *info, void *clientd)

Application callback for daemon events. DO NOT USE.

Daemon mode is no longer available; this definition is retained for for backward compatibility only.

Set by lbm_context_create(). Only used when operation_mode is set to daemon.

Note
This application callback is always made from the context thread, and is therefore limited in the UM API calls it can make.
Parameters
ctxContext generating the event.
eventOne of LBM_DAEMON_EVENT_* indicating event type.
infoPointer to LBM-supplied string giving more information.
clientdClient data pointer supplied in lbm_context_create().
Returns
0 always.
typedef int(* lbm_datagram_acceleration_bind_function_t) (void *device, int flags, int port, void *context, void **handle_out)

Application callback function to implement datagram acceleration bind.

Set by the datagram_acceleration_functions (context) configuration option using the lbm_datagram_acceleration_func_t structure.

Parameters
deviceas returned from open
flagscurrently hard coded to 0x06 which is defined as "reuseaddr" (0x02) and "duplicate to kernel" (0x04).
portbind port
contextclient data expected to be return with recvfrom when data is received on given port
handle_outvoid return pointer to bind port. Used as indicated in other calls.
Returns
error code where 0 is defined as success
typedef int(* lbm_datagram_acceleration_close_function_t) (void *device)

Application callback function to implement datagram acceleration close.

Set by the datagram_acceleration_functions (context) configuration option using the lbm_datagram_acceleration_func_t structure.

Parameters
deviceas returned from open
Returns
error code where 0 is defined as success

A structure used to hold functions to configure datagram acceleration implementation callbacks.

Set by the datagram_acceleration_functions (context) configuration option. All function pointers must be supplied.

See lbm_datagram_acceleration_func_t_stct for field definitions.

typedef int(* lbm_datagram_acceleration_getaddr_function_t) (void *device, struct sockaddr_in *sin)

Application callback function to implement datagram acceleration get address.

Set by the datagram_acceleration_functions (context) configuration option using the lbm_datagram_acceleration_func_t structure.

Parameters
deviceas returned from open.
sinreturned IP:Port of the destination.
Returns
error code where 0 is defined as success
typedef int(* lbm_datagram_acceleration_init_function_t) (uint16_t api_version)

Application callback function to implement datagram acceleration initialization.

Set by the datagram_acceleration_functions (context) configuration option using the lbm_datagram_acceleration_func_t structure.

Parameters
APIVersion: currently hard coded to 3.
Returns
error code where 0 is defined as success
typedef int(* lbm_datagram_acceleration_mcast_join_function_t) (void *handle, struct in_addr *mcast_addr)

Application callback function to implement datagram acceleration multicast join.

Set by the datagram_acceleration_functions (context) configuration option using the lbm_datagram_acceleration_func_t structure.

Parameters
handleas returned from bind.
mcast_addrvalid multicast address to join.
Returns
error code where 0 is defined as success
typedef int(* lbm_datagram_acceleration_mcast_leave_function_t) (void *handle, struct in_addr *mcast_addr)

Application callback function to implement datagram acceleration multicast leave.

Set by the datagram_acceleration_functions (context) configuration option using the lbm_datagram_acceleration_func_t structure.

Parameters
handleas returned from bind.
mcast_addrvalid multicast address to leave.
Returns
error code where 0 is defined as success
typedef int(* lbm_datagram_acceleration_open_function_t) (struct in_addr *interface_addr, int flags, void **device_out)

Application callback function to implement datagram acceleration open.

Set by the datagram_acceleration_functions (context) configuration option using the lbm_datagram_acceleration_func_t structure.

Parameters
interface_addrIP address of device hardware as configured.
flagscurrently hard coded to 0x01.
device_outvoid return pointer to opened device. Used as indicated in other calls.
Returns
error code where 0 is defined as success
typedef int(* lbm_datagram_acceleration_recvfrom_function_t) (void *device, int mode, char *buffer, size_t length, struct sockaddr_in *sin_from, struct sockaddr_in *sin_to, lbm_datagram_acceleration_recv_info_t *info)

Application callback function to implement datagram acceleration receive from.

Set by the datagram_acceleration_functions (context) configuration option using the lbm_datagram_acceleration_func_t structure.

Parameters
deviceas returned from open
modecurrently hard coded to 1 which is defined as non-blocking
bufferpointer to data buffer for receive
lengthamount of data received
sin_fromIP:Port of peer
sin_toIP:Port of local
inforeturned information as defined in structure lbm_datagram_acceleration_recv_info_t
Returns
error code where 0 is defined as success and means there is data to be processed. LBM will only process data when function returns 0.
typedef int(* lbm_datagram_acceleration_send_connect_function_t) (void *handle, const struct sockaddr_in *dest_sin, int flags, int ttl, void **send_handle_out)

Application callback function to implement datagram acceleration send connect.

Set by the datagram_acceleration_functions (context) configuration option using the lbm_datagram_acceleration_func_t structure.

Parameters
handleas returned from bind
dest_sinIP:Port to which data is sent.
flagscurrently hard coded to zero.
ttlmulticast time to live as configured.
send_handle_outvoid return pointer to send operation. Used as indicated in other calls.
Returns
error code where 0 is defined as success
typedef int(* lbm_datagram_acceleration_send_disconnect_function_t) (void *send_handle)

Application callback function to implement datagram acceleration send disconnect.

Set by the datagram_acceleration_functions (context) configuration option using the lbm_datagram_acceleration_func_t structure.

Parameters
send_handleas returned from send connect.
Returns
error code where 0 is defined as success
typedef int(* lbm_datagram_acceleration_send_function_t) (void *send_handle, const void *buffer, size_t length, int flags)

Application callback function to implement datagram acceleration send.

Set by the datagram_acceleration_functions (context) configuration option using the lbm_datagram_acceleration_func_t structure.

Parameters
send_handleas returned from send connect.
bufferpointer to data
lengthamount of data
flagscurrently hard coded to 0x04 which is defined as non-blocking.
Returns
error code where 0 is defined as success
typedef int(* lbm_datagram_acceleration_sendto_function_t) (void *device, struct sockaddr_in *sin, const void *buffer, size_t length, int flags)

Application callback function to implement datagram acceleration send to.

Set by the datagram_acceleration_functions (context) configuration option using the lbm_datagram_acceleration_func_t structure.

Parameters
deviceas returned from open.
sinIP:Port of the destination.
bufferpointer to data
lengthamount of data
flagscurrently hard coded to 0x04 which is defined as non-blocking.
Returns
error code where 0 is defined as success
typedef int(* lbm_datagram_acceleration_unbind_function_t) (void *handle)

Application callback function to implement datagram acceleration unbind.

Set by the datagram_acceleration_functions (context) configuration option using the lbm_datagram_acceleration_func_t structure.

Parameters
handleas returned from bind.
Returns
error code where 0 is defined as success

Structure passed to cancel/delete functions so that a cancel callback may be called.

See lbm_event_queue_cancel_cb_info_t_stct for field definitions.

typedef void(* lbm_event_queue_cancel_cb_proc) (int dispatch_thrd, void *clientd)

Application callback for a wide variety of object delete or operation cancellation functions that use an event queue. The application is called after all events associated with the deleted object or cancelled operation are deleted, cancelled, or completed.

Note
This application callback can be made from the context thread, and is therefore limited in the UM API calls it can make.
See also
lbm_event_queue_cancel_cb_info_t
Parameters
dispatch_thrdIndicates from where the callback is being called. This can be useful to the application to avoid deadlock.
  • 1 - Called by dispatch thread (after the lbm_*_delete_ex() returned).
  • 0 - Called directly in-line by the object delete or operation cancellation function.
clientdClient data pointer supplied in the lbm_event_queue_cancel_cb_info_t passed to the lbm_*_delete_ex().
Returns
none.
typedef int(* lbm_event_queue_monitor_proc) (lbm_event_queue_t *evq, int event, size_t evq_size, lbm_ulong_t event_delay_usec, void *clientd)

Application callback for event queue monitor events.

Set by lbm_event_queue_create().

One or more of the following configuration options must be set:

This application callback is made from the event queue dispatch thread for size and delay warnings. It can be called from a context or XSP thread for enqueue notification.

See Event Queue Monitor for more information and example code.

Parameters
evqEvent queue generating the event. See Event Queue Object.
eventOne of: LBM_EVENT_QUEUE_*_WARNING (i.e. LBM_EVENT_QUEUE_SIZE_WARNING, LBM_EVENT_QUEUE_DELAY_WARNING) or LBM_EVENT_QUEUE_ENQUEUE_NOTIFICATION, depending on enabled options. See Event Queue Monitor for more information and example code.
evq_sizeNumber of events currently in the queue.
event_delay_usecNumber of microseconds the oldest event has been in the event queue. (Note, this will be the next event dispatched.)
clientdClient data pointer supplied in lbm_event_queue_create().
Returns
0 for success, -1 for failure.

Structure that holds statistics for an event queue.

This structure holds statistics for messages and other events that enter and exit the event queue. NOTE: Specific count-enable options must sometimes be enabled for these statistics to populate.

Note that when stats are sampled, the fields in the structure are not necessarily from the same instant in time. The structure might be updated concurrently with it being sampled, and while each structure field is atomically read, the field values can be skewed slightly across time.

See lbm_event_queue_stats_t_stct for field definitions.

Cumulative vs Sample

Most UM statistics are cumulative. For example, tr_dgrams_sent starts at zero and grows over time as more and more topic resolution datagrams are sent.

But some statistics are samples, meaning that they represent the value at a moment in time. These values can go up and down. For example, tr_src_topics indicates the number of sources at the time of the sample.

typedef int(* lbm_fd_cb_proc) (lbm_context_t *ctx, lbm_handle_t handle, lbm_ulong_t ev, void *clientd)

Application callback for events associated with an application file descriptor or socket.

Set by lbm_register_fd(). If this application callback is set without an event queue, it is called from the context thread and is limited in the API calls that it can make.

Parameters
ctxContext monitoring the handle.
handleFile descriptor or socket generating the event.
evOne or more of: LBM_FD_EVENT_* (i.e. LBM_FD_EVENT_READ, LBM_FD_EVENT_WRITE, LBM_FD_EVENT_EXCEPT, LBM_FD_EVENT_ACCEPT, LBM_FD_EVENT_CLOSE, LBM_FD_EVENT_CONNECT, LBM_FD_EVENT_ALL) (ORed together) indicating the event type.
clientdClient data pointer supplied in lbm_register_fd().
Returns
0 always.
typedef int(* lbm_flight_size_set_inflight_cb_proc) (int inflight, void *clientd)

Application callback used to override the Store's stability ACKs and force inflight message count to a specific value.

Set by lbm_src_get_inflight() or lbm_ssrc_get_inflight().

Note
Informatica recommends against using this feature. If you think you need to override the inflight message count, contact support.
Parameters
inflightGives the current inflight value.
clientdClient data pointer supplied in the call to lbm_src_get_inflight() or lbm_ssrc_get_inflight().
Returns
The new inflight value.
typedef void(* lbm_flight_size_set_inflight_ex_cb_proc) (lbm_flight_size_inflight_t *inflight, void *clientd)

Application callback used to override the Store's stability ACKs and force inflight message and byte counts to specific values.

Set by lbm_src_get_inflight_ex() or lbm_ssrc_get_inflight_ex().

Note
Informatica recommends against using this feature. If you think you need to override the inflight message and byte counts, contact support.
Parameters
inflightPointer to a structure containing current inflight values for both messages and bytes. Application can override the values in this structure.
clientdClient data pointer supplied in the call to lbm_src_get_inflight_ex() or lbm_ssrc_get_inflight_ex().
typedef int(* lbm_immediate_msg_cb_proc) (lbm_context_t *ctx, lbm_msg_t *msg, void *clientd)

Application callback for topicless immediate-mode received messages.

Set by lbm_context_rcv_immediate_msgs(). If this application callback is set without an event queue, it is called from the context thread and is limited in the API calls that it can make.

See Immediate Messaging for general information on immediate messaging.

Note
For received application messages, be aware that UM does not guarantee any alignment of that data.
Parameters
ctxContext receiving the message.
msgPointer to received message.
clientdClient data pointer supplied in lbm_context_rcv_immediate_msgs().
Returns
0 always.
typedef struct lbm_iovec_t_stct lbm_iovec_t

Structure, struct iovec compatible, that holds information about buffers used for vectored sends.

UM replacement for struct iovec for portability. See lbm_src_sendv(), lbm_src_sendv_ex(), etc.

See lbm_iovec_t_stct for field definitions.

Structure that holds an IPv4 address and a CIDR style netmask.

Used with various configuration options that require an IP address.

See lbm_ipv4_address_mask_t_stct for field definitions.

typedef int(* lbm_log_cb_proc) (int level, const char *message, void *clientd)

Application callback for message logging.

Set by lbm_log(). NOTE: this application callback can be made from the context thread, and is therefore limited in the UM API calls it can make.

Parameters
levelOne of LBM_LOG_* indicating severity level. Values can be (in order of decreasing importance):
messagePointer to error message string.
clientdClient data pointer supplied in lbm_log().
Returns
0 always.

Structure that holds the application function to configure Smart Source memory management.

Set by the mem_mgt_callbacks (source) configuration option.

For more information on Smart Source memory management, see Smart Sources and Memory Management.

See lbm_mem_mgt_callbacks_t_stct for field definitions.

typedef void(* lbm_mem_mgt_free_cb_func) (void *ptr, void *clientd)

Application callback to free memory using application specific function.

Set by the mem_mgt_callbacks (source) configuration option using the lbm_mem_mgt_callbacks_t structure. Note this UM callback is always made from the application thread during Smart Sources API calls. Thread-safety is the responsibility of the application callback. See Smart Sources and Memory Management for restrictions.

Parameters
ptrThe pointer to a memory block previously allocated with malloc or realloc to be deallocated.
clientdClient data pointer supplied by the application to be passed back into the free callback.
Returns
this function does not return any value.
typedef void*(* lbm_mem_mgt_malloc_cb_func) (size_t size, void *clientd)

Application callback to malloc memory using application specific function.

Set by the mem_mgt_callbacks (source) configuration option using the lbm_mem_mgt_callbacks_t structure. Note this UM callback is always made from the application thread during Smart Sources API calls. Thread-safety is the responsibility of the application callback. See Smart Sources and Memory Management for restrictions.

Parameters
sizeThe number of bytes to be allocated.
clientdClient data pointer supplied by the application to be passed back into the allocate callback.
Returns
pointer to the allocated memory guaranteed to align to any type, or NULL if the request fails.
typedef void*(* lbm_mem_mgt_realloc_cb_func) (void *ptr, size_t size, void *clientd)

Application callback to reallocate memory using application specific function.

Set by the mem_mgt_callbacks (source) configuration option using the lbm_mem_mgt_callbacks_t structure. Note this UM callback is always made from the application thread during Smart Sources API calls. Thread-safety is the responsibility of the application callback. See Smart Sources and Memory Management for restrictions.

Parameters
ptrThe pointer to allocated memory. The pointer to a memory block previously allocated with malloc or realloc to be reallocated. If this is NULL, a new block is allocated and a pointer to it is returned by the function.
sizeThe new size for the memory block, in bytes.
clientdClient data pointer supplied by the application to be passed back into the reallocate callback.
Returns
pointer to the newly allocated memory guaranteed to align to any type, or NULL if the request fails.

Structure that holds the application callback for multicast immediate message unrecoverable loss notification.

Set by the mim_unrecoverable_loss_function (context) configuration option.

See lbm_mim_unrecloss_func_t_stct for field definitions.

typedef int(* lbm_mim_unrecloss_function_cb) (const char *source_name, lbm_uint_t seqnum, void *clientd)

Application callback in receiving application for notification of unrecoverable lost messages from a multicast immediate message sender.

Set by lbm_context_attr_setopt() with configuration option mim_unrecoverable_loss_function (context).

Note
This application callback is always made from the context thread and is therefore limited in the UM API calls it can make.
See also
lbm_mim_unrecloss_func_t
Parameters
source_nameName of the source
seqnumSequence Number that is lost
clientdClient data pointer supplied in the lbm_mim_unrecloss_func_t passed to lbm_context_attr_setopt() with the mim_unrecoverable_loss_function (context) configuration option.
Returns
0 always.

Structure that represents UMS Spectrum channel information.

This channel information assigns a channel designator to individual messages. Receivers may use this channel designator to filter messages or direct them to specific callbacks on a per-channel basis.

See lbm_msg_channel_info_t_stct for field definitions.

Structure that holds fragment information for UM messages when appropriate.

To retrieve the UM-message fragment information held in this structure, it is typically necessary to call lbm_msg_retrieve_fragment_info().

See lbm_msg_fragment_info_t_stct for field definitions.

DEPRECATED, do not use.

Deprecated:
do not use.

A struct used for iterating over properties pointed to by an lbm_msg_properties_t. The iterator is used to access the fields of a property.

See lbm_msg_properties_iter_t_stct for field definitions.

See also
lbm_msg_properties_iter_create
lbm_msg_properties_iter_delete
lbm_msg_properties_iter_first
lbm_msg_properties_iter_next
typedef struct lbm_msg_properties_t_stct lbm_msg_properties_t

A struct that holds information used for messages with properties. (opaque)

See lbm_msg_properties_create() and Message Properties.

typedef struct lbm_msg_t_stct lbm_msg_t

Information structure for receive events delivered to receiver callback lbm_rcv_cb_proc. See Message Object.

See lbm_msg_t::type for all possible event types.

See lbm_msg_t_stct for field definitions.

Structure that holds Store deregistration information for the UM receiver after a successful deregistration.

This structure is delivered to receiver callback lbm_rcv_cb_proc with lbm_msg_t::type set to LBM_MSG_UME_DEREGISTRATION_SUCCESS_EX. Cast the lbm_msg_t::data pointer to (lbm_msg_ume_deregistration_ex_t *).

See lbm_msg_ume_deregistration_ex_t_stct for field definitions.

Structure that holds information for receivers after registration is complete to all involved Stores.

This structure is delivered to the application by the receiver callback lbm_rcv_cb_proc with event lbm_msg_t::type LBM_MSG_UME_REGISTRATION_COMPLETE_EX. The lbm_msg_t::data pointer should be cast to (lbm_msg_ume_registration_complete_ex_t *).

See lbm_msg_ume_registration_complete_ex_t_stct for field definitions.

Structure that holds Store registration information for the UM persistent receiver after a successful registration.

This structure is delivered to receiver callback lbm_rcv_cb_proc with lbm_msg_t::type set to LBM_MSG_UME_REGISTRATION_COMPLETE_EX. Cast the lbm_msg_t::data pointer to (lbm_msg_ume_registration_ex_t *).

See lbm_msg_ume_registration_ex_t_stct for field definitions.

DEPRECATED, NOT USED.

Deprecated:
do not use. Use lbm_msg_ume_registration_ex_t instead.

Structure that holds information for queuing receivers after they de-register from a queue.

This structure is delivered to receiver callback lbm_rcv_cb_proc with lbm_msg_t::type set to LBM_MSG_UMQ_DEREGISTRATION_COMPLETE_EX. Cast the lbm_msg_t::data pointer to (lbm_msg_umq_deregistration_complete_ex_t *).

See lbm_msg_umq_deregistration_complete_ex_t_stct for field definitions.

Structure that holds beginning-of-index information for queuing receivers.

This structure is delivered to receiver callback lbm_rcv_cb_proc with lbm_msg_t::type set to LBM_MSG_UMQ_INDEX_ASSIGNED_EX. Cast the lbm_msg_t::data pointer to (lbm_msg_umq_index_assigned_ex_t *).

See lbm_msg_umq_index_assigned_ex_t_stct for field definitions.