UM C API  6.16.1
lbm.h
Go to the documentation of this file.
1 
11 /*
12  $Id: //UMprod/REL_6_16_1/29West/lbm/src/lib/lbm/lbm.h#1 $
13 
14  All of the documentation and software included in this and any
15  other Informatica Ultra Messaging Releases
16  Copyright (C) Informatica. All rights reserved.
17 
18  Redistribution and use in source and binary forms, with or without
19  modification, are permitted only as covered by the terms of a
20  valid software license agreement with Informatica.
21 
22  (C) Copyright 2004,2023 Informatica Inc. All Rights Reserved.
23 
24  THE SOFTWARE IS PROVIDED "AS IS" AND INFORMATICA DISCLAIMS ALL WARRANTIES
25  EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION, ANY IMPLIED WARRANTIES OF
26  NON-INFRINGEMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR
27  PURPOSE. INFORMATICA DOES NOT WARRANT THAT USE OF THE SOFTWARE WILL BE
28  UNINTERRUPTED OR ERROR-FREE. INFORMATICA SHALL NOT, UNDER ANY CIRCUMSTANCES, BE
29  LIABLE TO LICENSEE FOR LOST PROFITS, CONSEQUENTIAL, INCIDENTAL, SPECIAL OR
30  INDIRECT DAMAGES ARISING OUT OF OR RELATED TO THIS AGREEMENT OR THE
31  TRANSACTIONS CONTEMPLATED HEREUNDER, EVEN IF INFORMATICA HAS BEEN APPRISED OF
32  THE LIKELIHOOD OF SUCH DAMAGES.
33 */
34 #ifndef LBM_H
35 #define LBM_H
36 
37 #if defined(__cplusplus)
38 extern "C" {
39 #endif /* __cplusplus */
40 
41 #define LBM_VERS_MAJOR 6
42 #define LBM_VERS_MINOR 16
43 #define LBM_VERS_MAINT 1
44 #define LBM_VERS_SFX 0
45 #define LBM_VERS_TAG ""
46 #define LBM_VERS (LBM_VERS_MAJOR*10000+LBM_VERS_MINOR*100+LBM_VERS_MAINT)
47 
48 #if defined(_WIN32)
49 #if !defined(DONT_TYPEDEF_INT_T)
50  /*
51  typedef __int8 int8_t;
52 */
53  typedef signed char int8_t;
54  typedef __int16 int16_t;
55  typedef __int32 int32_t;
56  typedef __int64 int64_t;
57 #endif
58  typedef unsigned __int8 uint8_t;
59  typedef unsigned __int16 uint16_t;
60  typedef unsigned __int32 uint32_t;
61  typedef unsigned __int64 uint64_t;
62  /* C99 printf format macros missing from VC.
63  Only before VS 2019 SMS 02/16/2023
64  */
65 #if (_MSC_VER < 1900)
66  #define PRId8 "d"
67  #define PRId16 "d"
68  #define PRId32 "d"
69  #define PRId64 "I64d"
70  #define PRIu8 "u"
71  #define PRIu16 "u"
72  #define PRIu32 "u"
73  #define PRIu64 "I64u"
74  #define PRIx8 "x"
75  #define PRIx16 "x"
76  #define PRIx32 "x"
77  #define PRIx64 "I64x"
78  /* C99 scanf format macros missing from VC. */
79  #define SCNd8 "d"
80  #define SCNd16 "hd"
81  #define SCNd32 "ld"
82  #define SCNd64 "I64d"
83  #define SCNu8 "u"
84  #define SCNu16 "hu"
85  #define SCNu32 "lu"
86  #define SCNu64 "I64u"
87  #define SCNx64 "I64x"
88 #else
89  #include <inttypes.h>
90 #endif
91  #define PRIuSZ "Iu"
92  #define SCNuSZ "Iu"
93  #define SCNuSZcast(x) (size_t * )(x)
94 
95 #elif defined(__VMS)
96  #include <inttypes.h>
97  /* C99 printf format macros missing from OpenVMS. */
98  #define PRId8 "d"
99  #define PRId16 "d"
100  #define PRId32 "d"
101  #define PRId64 "lld"
102  #define PRIu8 "u"
103  #define PRIu16 "u"
104  #define PRIu32 "u"
105  #define PRIu64 "llu"
106  #define PRIuSZ "zu"
107  #define PRIx8 "x"
108  #define PRIx16 "x"
109  #define PRIx32 "x"
110  #define PRIx64 "llx"
111  #define PRIuSZcast(x) (size_t)(x)
112  /* C99 scanf format macros missing from OpenVMS. */
113  #define SCNd8 "hhd"
114  #define SCNd16 "hd"
115  #define SCNd32 "d"
116  #define SCNd64 "lld"
117  #define SCNu8 "hhu"
118  #define SCNu16 "hu"
119  #define SCNu32 "u"
120  #define SCNu64 "llu"
121  #define SCNx64 "llx"
122  #define SCNuSZ "lu"
123  #define SCNuSZcast(x) (size_t * )(x)
124 #else
125  #include <inttypes.h>
126  #ifndef PRIuSZ
127  #define PRIuSZ "zu"
128  #define PRIuSZcast(x) (size_t)(x)
129  #endif
130  #ifndef SCNuSZ
131  #define SCNuSZ "zu"
132  #define SCNuSZcast(x) (size_t * )(x)
133  #endif
134 #endif
135 
136 /* Directives to show how we treat exporting functions with Windows from the DLL */
137 #if defined(_WIN32)
138 # if defined(_DLL) && defined(LBM_EXPORT_SYMS)
139 # define LBMExpDLL __declspec(dllexport)
140 # elif defined(LBM_STATIC_LIB)
141 # define LBMExpDLL
142 # else
143 # define LBMExpDLL __declspec(dllimport)
144 # endif /* _DLL && LBM_EXPORT_SYMS */
145 #elif defined(__TANDEM)
146 # if defined(LBM_EXPORT_SYMS)
147 # define LBMExpDLL export$
148 # else
149 # define LBMExpDLL import$
150 # endif
151 #else
152 # define LBMExpDLL
153 #endif /* _WIN32 */
154 
155 /* Constants */
157 #define LBM_EINVAL 1
158 
163 #define LBM_EWOULDBLOCK 2
164 
165 #define LBM_ENOMEM 3
166 
167 #define LBM_EOP 4
168 
169 #define LBM_EOS 5
170 
171 #define LBM_ETIMEDOUT 6
172 
173 #define LBM_EDAEMONCONN 7
174 
175 #define LBM_EUMENOREG 8
176 
177 #define LBM_EOPNOTSUPP 9
178 
179 #define LBM_EINPROGRESS 10
180 
181 #define LBM_ENO_QUEUE_REG 11
182 
183 #define LBM_ENO_STORE_REG 12
184 
185 #define LBM_EMSG_SELECTOR 14
186 
187 /* lbm_msg_t types */
193 #define LBM_MSG_DATA 0
194 
199 #define LBM_MSG_EOS 1
200 
207 #define LBM_MSG_REQUEST 2
208 
215 #define LBM_MSG_RESPONSE 3
216 
221 #define LBM_MSG_UNRECOVERABLE_LOSS 4
222 
230 #define LBM_MSG_UNRECOVERABLE_LOSS_BURST 5
231 
239 #define LBM_MSG_NO_SOURCE_NOTIFICATION 6
240 
246 #define LBM_MSG_UME_REGISTRATION_ERROR 7
247 
250 #define LBM_MSG_UME_REGISTRATION_SUCCESS 8
251 
258 #define LBM_MSG_UME_REGISTRATION_CHANGE 9
259 
269 #define LBM_MSG_UME_REGISTRATION_SUCCESS_EX 10
270 
278 #define LBM_MSG_UME_REGISTRATION_COMPLETE_EX 11
279 
289 #define LBM_MSG_UME_DEREGISTRATION_SUCCESS_EX 12
290 
295 #define LBM_MSG_UME_DEREGISTRATION_COMPLETE_EX 13
296 
303 #define LBM_MSG_UMQ_REGISTRATION_ERROR 16
304 
311 #define LBM_MSG_UMQ_REGISTRATION_COMPLETE_EX 18
312 
318 #define LBM_MSG_UMQ_DEREGISTRATION_COMPLETE_EX 19
319 
326 #define LBM_MSG_BOS 20
327 
333 #define LBM_MSG_UMQ_INDEX_ASSIGNMENT_ELIGIBILITY_ERROR 21
334 
340 #define LBM_MSG_UMQ_INDEX_ASSIGNMENT_ELIGIBILITY_START_COMPLETE_EX 22
341 
347 #define LBM_MSG_UMQ_INDEX_ASSIGNMENT_ELIGIBILITY_STOP_COMPLETE_EX 23
348 
353 #define LBM_MSG_UMQ_INDEX_ASSIGNED_EX 24
354 
359 #define LBM_MSG_UMQ_INDEX_RELEASED_EX 25
360 
365 #define LBM_MSG_UMQ_INDEX_ASSIGNMENT_ERROR 26
366 
373 #define LBM_MSG_HF_RESET 27
374 
375 #define LBM_MSG_RESERVED_1 28
376 
377 /* Flags to sending/receiving functions. */
380 #define LBM_MSG_START_BATCH 0x1
381 
383 #define LBM_MSG_END_BATCH 0x2
384 
386 #define LBM_MSG_COMPLETE_BATCH 0x3 /* same as START | END */
387 
391 #define LBM_MSG_FLUSH 0x4
392 
394 #define LBM_SRC_NONBLOCK 0x8
395 
396 #define LBM_SRC_BLOCK_TEMP 0x10
397 
402 #define LBM_SRC_BLOCK 0x20
403 
404 #define LBM_MSG_IOV_GATHER 0x40
405 
410 #define LBM_MSG_BUFF_ALLOC 0x100
411 
413 #define LBM_RCV_NONBLOCK 0x8
414 
415 #define LBM_RCV_BLOCK_TEMP 0x10
416 
417 #define LBM_RCV_BLOCK 0x20
418 
420 #define LBM_MSG_FLAG_START_BATCH 0x1
421 
422 #define LBM_MSG_FLAG_END_BATCH 0x2
423 
424 #define LBM_MSG_FLAG_HF_PASS_THROUGH 0x4
425 
426 #define LBM_MSG_FLAG_UME_RETRANSMIT 0x8
427 
428 #define LBM_MSG_FLAG_RETRANSMIT 0x8
429 
430 #define LBM_MSG_FLAG_IMMEDIATE 0x10
431 
432 #define LBM_MSG_FLAG_HF_DUPLICATE 0x20
433 
434 #define LBM_MSG_FLAG_UMQ_REASSIGNED 0x40
435 
436 #define LBM_MSG_FLAG_UMQ_RESUBMITTED 0x80
437 
438 #define LBM_MSG_FLAG_TOPICLESS 0x100
439 
441 #define LBM_MSG_FLAG_DELIVERY_LATENCY 0x200
442 
444 #define LBM_MSG_FLAG_HF_OPTIONAL 0x400
445 
446 #define LBM_MSG_FLAG_HF_32 0x800
447 
448 #define LBM_MSG_FLAG_HF_64 0x1000
449 
450 #define LBM_MSG_FLAG_OTR 0x2000
451 
452 #define LBM_MSG_FLAG_UME_SRC_REGID 0x4000
453 
454 
455 /* Message channel info flags */
457 #define LBM_MSG_FLAG_NUMBERED_CHANNEL 0x1
458 
459 /* Flags to topic resolution request function. May be ORed together. */
461 #define LBM_TOPIC_RES_REQUEST_GW_REMOTE_INTEREST 0x40
462 
463 #define LBM_TOPIC_RES_REQUEST_CONTEXT_QUERY 0x20
464 
465 #define LBM_TOPIC_RES_REQUEST_CONTEXT_ADVERTISEMENT 0x10
466 
467 #define LBM_TOPIC_RES_REQUEST_RESERVED1 0x08
468 
469 #define LBM_TOPIC_RES_REQUEST_ADVERTISEMENT 0x04
470 
471 #define LBM_TOPIC_RES_REQUEST_QUERY 0x02
472 
473 #define LBM_TOPIC_RES_REQUEST_WILDCARD_QUERY 0x01
474 
475 /* event types for source callbacks */
494 #define LBM_SRC_EVENT_CONNECT 1
495 
512 #define LBM_SRC_EVENT_DISCONNECT 2
513 
522 #define LBM_SRC_EVENT_WAKEUP 3
523 
526 #define LBM_SRC_EVENT_DAEMON_CONFIRM 4
527 
531 #define LBM_SRC_EVENT_UME_REGISTRATION_ERROR 5
532 
536 #define LBM_SRC_EVENT_UME_REGISTRATION_SUCCESS 6
537 
541 #define LBM_SRC_EVENT_UME_MESSAGE_STABLE 7
542 
546 #define LBM_SRC_EVENT_UME_DELIVERY_CONFIRMATION 8
547 
553 #define LBM_SRC_EVENT_UME_STORE_UNRESPONSIVE 9
554 
564 #define LBM_SRC_EVENT_UME_MESSAGE_RECLAIMED 10
565 
574 #define LBM_SRC_EVENT_UME_REGISTRATION_SUCCESS_EX 11
575 
581 #define LBM_SRC_EVENT_UME_REGISTRATION_COMPLETE_EX 12
582 
587 #define LBM_SRC_EVENT_UME_MESSAGE_STABLE_EX 13
588 
594 #define LBM_SRC_EVENT_UME_DELIVERY_CONFIRMATION_EX 14
595 
607 #define LBM_SRC_EVENT_SEQUENCE_NUMBER_INFO 15
608 
614 #define LBM_SRC_EVENT_UMQ_REGISTRATION_ERROR 16
615 
621 #define LBM_SRC_EVENT_UMQ_MESSAGE_ID_INFO 17
622 
628 #define LBM_SRC_EVENT_UMQ_REGISTRATION_COMPLETE_EX 18
629 
634 #define LBM_SRC_EVENT_UMQ_MESSAGE_STABLE_EX 19
635 
645 #define LBM_SRC_EVENT_UMQ_ULB_MESSAGE_ASSIGNED_EX 20
646 
656 #define LBM_SRC_EVENT_UMQ_ULB_MESSAGE_REASSIGNED_EX 21
657 
667 #define LBM_SRC_EVENT_UMQ_ULB_MESSAGE_TIMEOUT_EX 22
668 
678 #define LBM_SRC_EVENT_UMQ_ULB_MESSAGE_COMPLETE_EX 23
679 
689 #define LBM_SRC_EVENT_UMQ_ULB_MESSAGE_CONSUMED_EX 24
690 
700 #define LBM_SRC_EVENT_UMQ_ULB_RECEIVER_REGISTRATION_EX 25
701 
711 #define LBM_SRC_EVENT_UMQ_ULB_RECEIVER_DEREGISTRATION_EX 26
712 
722 #define LBM_SRC_EVENT_UMQ_ULB_RECEIVER_READY_EX 27
723 
733 #define LBM_SRC_EVENT_UMQ_ULB_RECEIVER_TIMEOUT_EX 28
734 
762 #define LBM_SRC_EVENT_FLIGHT_SIZE_NOTIFICATION 29
763 
773 #define LBM_SRC_EVENT_UME_MESSAGE_RECLAIMED_EX 30
774 
783 #define LBM_SRC_EVENT_UME_DEREGISTRATION_SUCCESS_EX 31
784 
790 #define LBM_SRC_EVENT_UME_DEREGISTRATION_COMPLETE_EX 32
791 
799 #define LBM_SRC_EVENT_UME_MESSAGE_NOT_STABLE 33
800 
806 #define LBM_SRC_EVENT_TIMESTAMP 34
807 
808 /* event types for context event callbacks */
822 #define LBM_CONTEXT_EVENT_UMQ_REGISTRATION_COMPLETE_EX 1
823 
836 #define LBM_CONTEXT_EVENT_UMQ_REGISTRATION_SUCCESS_EX 2
837 
843 #define LBM_CONTEXT_EVENT_UMQ_REGISTRATION_ERROR 3
844 
850 #define LBM_CONTEXT_EVENT_UMQ_INSTANCE_LIST_NOTIFICATION 4
851 
852 /* UM Transport Types */
854 #define LBM_TRANSPORT_TYPE_TCP 0x00
855 
856 #define LBM_TRANSPORT_TYPE_LBTRU 0x01
857 
858 #define LBM_TRANSPORT_TYPE_LBTSMX 0x4
859 
860 #define LBM_TRANSPORT_TYPE_LBTRM 0x10
861 
862 #define LBM_TRANSPORT_TYPE_LBTIPC 0x40
863 
864 #define LBM_TRANSPORT_TYPE_LBTRDMA 0x20
865 
866 #define LBM_TRANSPORT_TYPE_BROKER 0x80
867 
868 /* Security protocols */
870 #define LBM_SECURITY_PROTOCOL_NONE 0x1
871 
872 #define LBM_SECURITY_PROTOCOL_TLS 0x2
873 
874 
875 /* TCP compression types. */
876 #define LBM_CTX_ATTR_COMPRESSION_NONE 0
877 #define LBM_CTX_ATTR_COMPRESSION_LZ4 1
878 
879 /* Context attr - Opmode */
881 #define LBM_CTX_ATTR_OP_EMBEDDED 1
882 
884 #define LBM_CTX_ATTR_OP_DAEMON 2
885 
886 #define LBM_CTX_ATTR_OP_SEQUENTIAL 3
887 
888 /* Context attr - fdtype */
889 #define LBM_CTX_ATTR_FDTYPE_POLL 1
890 #define LBM_CTX_ATTR_FDTYPE_SELECT 2
891 #define LBM_CTX_ATTR_FDTYPE_WSAEV 3
892 #define LBM_CTX_ATTR_FDTYPE_WINCPORT 4
893 #define LBM_CTX_ATTR_FDTYPE_WINCPORT_OV 5
894 #define LBM_CTX_ATTR_FDTYPE_EPOLL 6
895 #define LBM_CTX_ATTR_FDTYPE_DEVPOLL 7
896 #define LBM_CTX_ATTR_FDTYPE_KQUEUE 8
897 #define LBM_CTX_ATTR_FDTYPE_WINRIOCPORT 9
898 
899 /* Context attr - monitor transport */
900 #define LBM_CTX_ATTR_MON_TRANSPORT_LBM 1
901 #define LBM_CTX_ATTR_MON_TRANSPORT_LBMSNMP 2
902 
903 /* Context attr - monitor format */
904 #define LBM_CTX_ATTR_MON_FORMAT_CSV 1
905 #define LBM_CTX_ATTR_MON_FORMAT_PB 2
906 
907 /* Context attr - IPC receiver signaling behavior */
908 #define LBM_CTX_ATTR_IPC_RCV_THREAD_PEND 1
909 #define LBM_CTX_ATTR_IPC_RCV_THREAD_BUSY_WAIT 2
910 
911 /* Context attr - File Descriptor Management signaling behavior */
912 #define LBM_CTX_ATTR_FD_MANAGEMENT_BEHAVIOR_PEND 1
913 #define LBM_CTX_ATTR_FD_MANAGEMENT_BEHAVIOR_BUSY_WAIT 2
914 
915 /* Context attr - LBT-RDMA receiver signaling behavior */
916 #define LBM_CTX_ATTR_RDMA_RCV_THREAD_PEND 1
917 #define LBM_CTX_ATTR_RDMA_RCV_THREAD_BUSY_WAIT 2
918 
919 /* Context attr - Receive Thread Pool Behavior */
920 #define LBM_CTX_ATTR_RCV_THRD_POOL_CREATE 1
921 #define LBM_CTX_ATTR_RCV_THRD_POOL_DYNAMIC 2
922 
923 /* Context attr - Network compatibility mode */
924 #define LBM_CTX_ATTR_NET_COMPAT_MODE_DEFAULT 0x00000000
925 #define LBM_CTX_ATTR_NET_COMPAT_MODE_LBM_3_6 0x00030600
926 #define LBM_CTX_ATTR_NET_COMPAT_MODE_LBM_3_6_1 0x00030601
927 #define LBM_CTX_ATTR_NET_COMPAT_MODE_LBM_3_6_2 0x00030602
928 #define LBM_CTX_ATTR_NET_COMPAT_MODE_LBM_3_6_5 0x00030605
929 #define LBM_CTX_ATTR_NET_COMPAT_MODE_LBM_4_0 0x00040000
930 #define LBM_CTX_ATTR_NET_COMPAT_MODE_LBM_4_0_1 0x00040001
931 #define LBM_CTX_ATTR_NET_COMPAT_MODE_LBM_4_1 0x00040100
932 #define LBM_CTX_ATTR_NET_COMPAT_MODE_LBM_4_1_1 0x00040101
933 #define LBM_CTX_ATTR_NET_COMPAT_MODE_LBM_4_1_2 0x00040102
934 #define LBM_CTX_ATTR_NET_COMPAT_MODE_LBM_4_1_3 0x00040103
935 #define LBM_CTX_ATTR_NET_COMPAT_MODE_LBM_4_2_1 0x00040201
936 #define LBM_CTX_ATTR_NET_COMPAT_MODE_LBM_4_2_2 0x00040202
937 #define LBM_CTX_ATTR_NET_COMPAT_MODE_LBM_4_2_3 0x00040203
938 #define LBM_CTX_ATTR_NET_COMPAT_MODE_LBM_4_2_4 0x00040204
939 #define LBM_CTX_ATTR_NET_COMPAT_MODE_LBM_4_2_5 0x00040205
940 #define LBM_CTX_ATTR_NET_COMPAT_MODE_LBM_4_2_6 0x00040206
941 #define LBM_CTX_ATTR_NET_COMPAT_MODE_LBM_4_2_7 0x00040207
942 #define LBM_CTX_ATTR_NET_COMPAT_MODE_LBM_4_2_8 0x00040208
943 #define LBM_CTX_ATTR_NET_COMPAT_MODE_UME_3_0 0x01030000
944 #define LBM_CTX_ATTR_NET_COMPAT_MODE_UME_3_0_1 0x01030001
945 #define LBM_CTX_ATTR_NET_COMPAT_MODE_UME_3_0_2 0x01030002
946 #define LBM_CTX_ATTR_NET_COMPAT_MODE_UME_3_1 0x01030100
947 #define LBM_CTX_ATTR_NET_COMPAT_MODE_UME_3_1_1 0x01030101
948 #define LBM_CTX_ATTR_NET_COMPAT_MODE_UME_3_1_2 0x01030102
949 #define LBM_CTX_ATTR_NET_COMPAT_MODE_UME_3_1_3 0x01030103
950 #define LBM_CTX_ATTR_NET_COMPAT_MODE_UME_3_2_1 0x01030201
951 #define LBM_CTX_ATTR_NET_COMPAT_MODE_UME_3_2_2 0x01030202
952 #define LBM_CTX_ATTR_NET_COMPAT_MODE_UME_3_2_3 0x01030203
953 #define LBM_CTX_ATTR_NET_COMPAT_MODE_UME_3_2_4 0x01030204
954 #define LBM_CTX_ATTR_NET_COMPAT_MODE_UME_3_2_5 0x01030205
955 #define LBM_CTX_ATTR_NET_COMPAT_MODE_UME_3_2_6 0x01030206
956 #define LBM_CTX_ATTR_NET_COMPAT_MODE_UME_3_2_7 0x01030207
957 #define LBM_CTX_ATTR_NET_COMPAT_MODE_UME_3_2_8 0x01030208
958 #define LBM_CTX_ATTR_NET_COMPAT_MODE_UMQ_1_0 0x02010000
959 #define LBM_CTX_ATTR_NET_COMPAT_MODE_UMQ_1_1 0x02010100
960 #define LBM_CTX_ATTR_NET_COMPAT_MODE_UMQ_1_1_1 0x02010101
961 #define LBM_CTX_ATTR_NET_COMPAT_MODE_UMQ_2_0 0x02020000
962 #define LBM_CTX_ATTR_NET_COMPAT_MODE_UMQ_2_0_1 0x02020001
963 #define LBM_CTX_ATTR_NET_COMPAT_MODE_UMQ_2_1_1 0x02020101
964 #define LBM_CTX_ATTR_NET_COMPAT_MODE_UMQ_2_1_3 0x02020103
965 #define LBM_CTX_ATTR_NET_COMPAT_MODE_UMQ_2_1_4 0x02020104
966 #define LBM_CTX_ATTR_NET_COMPAT_MODE_UMQ_2_1_5 0x02020105
967 #define LBM_CTX_ATTR_NET_COMPAT_MODE_UMQ_2_1_6 0x02020106
968 #define LBM_CTX_ATTR_NET_COMPAT_MODE_UMQ_2_1_7 0x02020107
969 #define LBM_CTX_ATTR_NET_COMPAT_MODE_UMQ_2_1_8 0x02020108
970 #define LBM_CTX_ATTR_NET_COMPAT_MODE_UMQ_2_1_9 0x02020109
971 #define LBM_CTX_ATTR_NET_COMPAT_MODE_UMQ_2_1_10 0x0202010a
972 #define LBM_CTX_ATTR_NET_COMPAT_MODE_UM_5_0 0x03050000
973 #define LBM_CTX_ATTR_NET_COMPAT_MODE_UM_5_0_1 0x03050001
974 #define LBM_CTX_ATTR_NET_COMPAT_MODE_UM_5_1 0x03050100
975 #define LBM_CTX_ATTR_NET_COMPAT_MODE_UM_5_1_1 0x03050101
976 #define LBM_CTX_ATTR_NET_COMPAT_MODE_UM_5_1_2 0x03050102
977 #define LBM_CTX_ATTR_NET_COMPAT_MODE_UM_5_2 0x03050200
978 #define LBM_CTX_ATTR_NET_COMPAT_MODE_UM_5_2_1 0x03050201
979 #define LBM_CTX_ATTR_NET_COMPAT_MODE_UM_5_2_2 0x03050202
980 
981 /* Src Topic attr */
982 #define LBM_SRC_TOPIC_ATTR_TRANSPORT_TCP LBM_TRANSPORT_TYPE_TCP
983 #define LBM_SRC_TOPIC_ATTR_TRANSPORT_LBTRM LBM_TRANSPORT_TYPE_LBTRM
984 #define LBM_SRC_TOPIC_ATTR_TRANSPORT_LBTRU LBM_TRANSPORT_TYPE_LBTRU
985 #define LBM_SRC_TOPIC_ATTR_TRANSPORT_LBTIPC LBM_TRANSPORT_TYPE_LBTIPC
986 #define LBM_SRC_TOPIC_ATTR_TRANSPORT_LBTSMX LBM_TRANSPORT_TYPE_LBTSMX
987 #define LBM_SRC_TOPIC_ATTR_TRANSPORT_LBTRDMA LBM_TRANSPORT_TYPE_LBTRDMA
988 #define LBM_SRC_TOPIC_ATTR_TRANSPORT_BROKER LBM_TRANSPORT_TYPE_BROKER
989 #define LBM_SRC_TOPIC_ATTR_TCP_MULTI_RECV_NORMAL 0
990 #define LBM_SRC_TOPIC_ATTR_TCP_MULTI_RECV_BOUNDED_LATENCY 1
991 #define LBM_SRC_TOPIC_ATTR_TCP_MULTI_RECV_SOURCE_PACED 2
992 #define LBM_SRC_TOPIC_ATTR_TCP_MULTI_RECV_SEND_ORDER_SERIAL 0
993 #define LBM_SRC_TOPIC_ATTR_TCP_MULTI_RECV_SEND_ORDER_RANDOM 1
994 #define LBM_SRC_TOPIC_ATTR_SSF_NONE 0
995 #define LBM_SRC_TOPIC_ATTR_SSF_INCLUSION 1
996 #define LBM_SRC_TOPIC_ATTR_SSF_EXCLUSION 2
997 #define LBM_SRC_TOPIC_ATTR_SSF_ULB 3
998 #define LBM_SRC_TOPIC_ATTR_IMPLICIT_BATCH_TYPE_DEFAULT 0
999 #define LBM_SRC_TOPIC_ATTR_IMPLICIT_BATCH_TYPE_ADAPTIVE 1
1000 #define LBM_SRC_TOPIC_ATTR_UME_STORE_BEHAVIOR_RR 0x0
1001 #define LBM_SRC_TOPIC_ATTR_UME_STORE_BEHAVIOR_QC 0x1
1002 #define LBM_SRC_TOPIC_ATTR_UME_QC_SQN_BEHAVIOR_LOWEST 0x0
1003 #define LBM_SRC_TOPIC_ATTR_UME_QC_SQN_BEHAVIOR_MAJORITY 0x1
1004 #define LBM_SRC_TOPIC_ATTR_UME_QC_SQN_BEHAVIOR_HIGHEST 0x2
1005 #define LBM_SRC_TOPIC_ATTR_UME_STABLE_BEHAVIOR_ANY 0x0
1006 #define LBM_SRC_TOPIC_ATTR_UME_STABLE_BEHAVIOR_MAJORITY 0x1
1007 #define LBM_SRC_TOPIC_ATTR_UME_STABLE_BEHAVIOR_QUORUM 0x1
1008 #define LBM_SRC_TOPIC_ATTR_UME_STABLE_BEHAVIOR_ALL 0x2
1009 #define LBM_SRC_TOPIC_ATTR_UME_STABLE_BEHAVIOR_ALL_ACTIVE 0x3
1010 #define LBM_SRC_TOPIC_ATTR_UMQ_STABLE_BEHAVIOR_ANY 0x0
1011 #define LBM_SRC_TOPIC_ATTR_UMQ_STABLE_BEHAVIOR_MAJORITY 0x1
1012 #define LBM_SRC_TOPIC_ATTR_UMQ_STABLE_BEHAVIOR_QUORUM 0x1
1013 #define LBM_SRC_TOPIC_ATTR_UMQ_STABLE_BEHAVIOR_ALL 0x2
1014 #define LBM_SRC_TOPIC_ATTR_UMQ_STABLE_BEHAVIOR_ALL_ACTIVE 0x3
1015 #define LBM_SRC_TOPIC_ATTR_LBTIPC_BEHAVIOR_SOURCE_PACED LBTIPC_BEHAVIOR_SRC_PACED
1016 #define LBM_SRC_TOPIC_ATTR_LBTIPC_BEHAVIOR_RECEIVER_PACED LBTIPC_BEHAVIOR_RCVR_PACED
1017 /* The following ULB event masks should not be changed.
1018  The numeric values are embedded in user configuration files. */
1022 #define LBM_SRC_TOPIC_ATTR_UMQ_ULB_EVENT_MSG_CONSUME 0x1
1023 
1026 #define LBM_SRC_TOPIC_ATTR_UMQ_ULB_EVENT_MSG_TIMEOUT 0x2
1027 
1030 #define LBM_SRC_TOPIC_ATTR_UMQ_ULB_EVENT_MSG_ASSIGNMENT 0x4
1031 
1034 #define LBM_SRC_TOPIC_ATTR_UMQ_ULB_EVENT_MSG_REASSIGNMENT 0x8
1035 
1038 #define LBM_SRC_TOPIC_ATTR_UMQ_ULB_EVENT_MSG_COMPLETE 0x10
1039 
1042 #define LBM_SRC_TOPIC_ATTR_UMQ_ULB_EVENT_RCV_TIMEOUT 0x20
1043 
1046 #define LBM_SRC_TOPIC_ATTR_UMQ_ULB_EVENT_RCV_REGISTRATION 0x40
1047 
1050 #define LBM_SRC_TOPIC_ATTR_UMQ_ULB_EVENT_RCV_DEREGISTRATION 0x80
1051 
1054 #define LBM_SRC_TOPIC_ATTR_UMQ_ULB_EVENT_RCV_READY 0x100
1055 
1057 #define LBM_SRC_TOPIC_ATTR_UMQ_ULB_EVENT_ALL 0x1FF
1058 
1059 #define LBM_SRC_TOPIC_ATTR_UMQ_ULB_ASSIGNMENT_DEFAULT 0x0
1060 #define LBM_SRC_TOPIC_ATTR_UMQ_ULB_ASSIGNMENT_RANDOM 0x1
1061 #define LBM_SRC_TOPIC_ATTR_UMQ_ULB_LF_BEHAVIOR_IGNORED 0x0
1062 #define LBM_SRC_TOPIC_ATTR_UMQ_ULB_LF_BEHAVIOR_PROVISIONED 0x1
1063 #define LBM_SRC_TOPIC_ATTR_UMQ_ULB_LF_BEHAVIOR_DYNAMIC 0x2
1064 #define LBM_SRC_TOPIC_ATTR_UME_STABLE_EVENT_NONE 0x0
1065 #define LBM_SRC_TOPIC_ATTR_UME_STABLE_EVENT_PER_FRAGMENT 0x1
1066 #define LBM_SRC_TOPIC_ATTR_UME_STABLE_EVENT_PER_MESSAGE 0x2
1067 #define LBM_SRC_TOPIC_ATTR_UME_STABLE_EVENT_FRAG_AND_MSG 0x3
1068 #define LBM_SRC_TOPIC_ATTR_UME_CDELV_EVENT_NONE 0x0
1069 #define LBM_SRC_TOPIC_ATTR_UME_CDELV_EVENT_PER_FRAGMENT 0x1
1070 #define LBM_SRC_TOPIC_ATTR_UME_CDELV_EVENT_PER_MESSAGE 0x2
1071 #define LBM_SRC_TOPIC_ATTR_UME_CDELV_EVENT_FRAG_AND_MSG 0x3
1072 #define LBM_SRC_TOPIC_ATTR_SECURITY_PROTOCOL_NONE LBM_SECURITY_PROTOCOL_NONE
1073 #define LBM_SRC_TOPIC_ATTR_SECURITY_PROTOCOL_TLS LBM_SECURITY_PROTOCOL_TLS
1074 
1075 /* Rcv Topic attr */
1076 #define LBM_RCV_TOPIC_ATTR_UME_QC_SQN_BEHAVIOR_LOWEST 0x0
1077 #define LBM_RCV_TOPIC_ATTR_UME_QC_SQN_BEHAVIOR_MAJORITY 0x1
1078 #define LBM_RCV_TOPIC_ATTR_UME_QC_SQN_BEHAVIOR_HIGHEST 0x2
1079 #define LBM_RCV_TOPIC_ATTR_TCP_ACTIVITY_TIMEOUT_SO_KEEPALIVE 0x1
1080 #define LBM_RCV_TOPIC_ATTR_TCP_ACTIVITY_TIMEOUT_TIMER 0x2
1081 #define LBM_RCV_TOPIC_ATTR_CHANNEL_BEHAVIOR_DELIVER_MSGS 0x1
1082 #define LBM_RCV_TOPIC_ATTR_CHANNEL_BEHAVIOR_DISCARD_MSGS 0x2
1083 #define LBM_RCV_TOPIC_ATTR_UMQ_INDEX_ASSIGN_ELIGIBILITY_INELIGIBLE 0x0
1084 #define LBM_RCV_TOPIC_ATTR_UMQ_INDEX_ASSIGN_ELIGIBILITY_ELIGIBLE 0x1
1085 #define LBM_RCV_TOPIC_ATTR_UMQ_QUEUE_PARTICIPATION_NONE 0
1086 #define LBM_RCV_TOPIC_ATTR_UMQ_QUEUE_PARTICIPATION_NORMAL 1
1087 #define LBM_RCV_TOPIC_ATTR_UMQ_QUEUE_PARTICIPATION_OBSERVER 2
1088 #define LBM_RCV_TOPIC_ATTR_UMQ_HOLD_INTERVAL_FOREVER 0xFFFFFFFF
1089 #define LBM_RCV_TOPIC_ATTR_SECURITY_PROTOCOL_NONE LBM_SECURITY_PROTOCOL_NONE
1090 #define LBM_RCV_TOPIC_ATTR_SECURITY_PROTOCOL_TLS LBM_SECURITY_PROTOCOL_TLS
1091 
1092 
1093 /* Limits */
1094 #define LBM_MSG_MAX_SOURCE_LEN 128
1095 #define LBM_MSG_MAX_TOPIC_LEN 256
1096 #define LBM_MSG_MAX_STATE_LEN 32
1097 #define LBM_UME_MAX_STORE_STRLEN 24
1098 #define LBM_UMQ_MAX_QUEUE_STRLEN 256
1099 #define LBM_UMQ_MAX_TOPIC_STRLEN 256
1100 #define LBM_UMQ_MAX_APPSET_STRLEN 256
1101 #define LBM_MAX_CONTEXT_NAME_LEN 128
1102 #define LBM_MAX_EVENT_QUEUE_NAME_LEN 128
1103 #define LBM_MAX_UME_STORES 25
1104 #define LBM_MAX_UME_GROUPS 5
1105 #define LBM_UMQ_ULB_MAX_RECEIVER_STRLEN 32
1106 #define LBM_UMQ_MAX_INDEX_LEN 216
1107 #define LBM_UMQ_USER_NAME_LENGTH_MAX 127
1108 #define LBM_UMQ_PASSWORD_LENGTH_MAX 15
1109 #define LBM_UMM_NUM_SERVERS_MAX 16
1110 #define LBM_UMM_USER_NAME_LENGTH_MAX 100
1111 #define LBM_UMM_APP_NAME_LENGTH_MAX 100
1112 #define LBM_UMM_PASSWORD_LENGTH_MAX 100
1113 #define LBM_UMM_SERVER_LENGTH_MAX 32
1114 #define LBM_HMAC_BLOCK_SZ 20
1115 #define LBM_MAX_GATEWAY_NAME_LEN 128
1116 #define LBM_OTID_BLOCK_SZ 32
1117 #define LBM_CONTEXT_INSTANCE_BLOCK_SZ 8
1118 
1119 #define LBM_FLIGHT_SIZE_BEHAVIOR_NOTIFY 0x0
1120 #define LBM_FLIGHT_SIZE_BEHAVIOR_BLOCK 0x1
1121 
1122 /* Event types for file descriptor/socket management */
1125 #define LBM_FD_EVENT_READ 0x1
1126 
1128 #define LBM_FD_EVENT_WRITE 0x2
1129 
1131 #define LBM_FD_EVENT_EXCEPT 0x4
1132 
1134 #define LBM_FD_EVENT_ACCEPT 0x8
1135 
1137 #define LBM_FD_EVENT_CLOSE 0x10
1138 
1140 #define LBM_FD_EVENT_CONNECT 0x20
1141 
1143 #define LBM_FD_EVENT_ALL 0x3f
1144 
1146 #define LBM_EVENT_QUEUE_BLOCK 0xFFFFFFFF
1147 
1148 #define LBM_EVENT_QUEUE_POLL 0x0
1149 
1150 /* Event Queue monitor event types */
1152 #define LBM_EVENT_QUEUE_SIZE_WARNING 0x1
1153 
1154 #define LBM_EVENT_QUEUE_DELAY_WARNING 0x2
1155 
1156 #define LBM_EVENT_QUEUE_ENQUEUE_NOTIFICATION 0x3
1157 
1158 /* UM Log level values */
1160 #define LBM_LOG_EMERG 1
1161 
1162 #define LBM_LOG_ALERT 2
1163 
1164 #define LBM_LOG_CRIT 3
1165 
1166 #define LBM_LOG_ERR 4
1167 
1168 #define LBM_LOG_WARNING 5
1169 
1170 #define LBM_LOG_NOTICE 6
1171 
1172 #define LBM_LOG_INFO 7
1173 
1174 #define LBM_LOG_DEBUG 8
1175 
1176 /* Daemon log file rollover max size (MB) */
1177 #define LBM_LOG_ROLLOVER_SIZE_MAX 4000
1178 /* Debug log file rollover max size (bytes) */
1179 #define LBM_DEBUG_LOG_ROLLOVER_SIZE_MAX 0xFFFFFFFF
1180 
1181 /* UM daemon event types */
1184 #define LBM_DAEMON_EVENT_CONNECTED 1
1185 
1187 #define LBM_DAEMON_EVENT_CONNECT_ERROR 2
1188 
1190 #define LBM_DAEMON_EVENT_DISCONNECTED 3
1191 
1193 #define LBM_DAEMON_EVENT_CONNECT_TIMEOUT 4
1194 
1195 /* transport statistics types */
1197 #define LBM_TRANSPORT_STAT_TCP LBM_TRANSPORT_TYPE_TCP
1198 
1199 #define LBM_TRANSPORT_STAT_LBTRM LBM_TRANSPORT_TYPE_LBTRM
1200 
1201 #define LBM_TRANSPORT_STAT_DAEMON 0xFF
1202 
1203 #define LBM_TRANSPORT_STAT_LBTRU LBM_TRANSPORT_TYPE_LBTRU
1204 
1205 #define LBM_TRANSPORT_STAT_LBTIPC LBM_TRANSPORT_TYPE_LBTIPC
1206 
1207 #define LBM_TRANSPORT_STAT_LBTSMX LBM_TRANSPORT_TYPE_LBTSMX
1208 
1209 #define LBM_TRANSPORT_STAT_LBTRDMA LBM_TRANSPORT_TYPE_LBTRDMA
1210 
1211 #define LBM_TRANSPORT_STAT_BROKER LBM_TRANSPORT_TYPE_BROKER
1212 
1213 /* SRS interest modes*/
1215 #define LBM_SRS_INTEREST_REMOVE 0
1216 
1217 #define LBM_SRS_INTEREST_ADD 1
1218 
1219 #define LBM_CTX_ATTR_INTEREST_MODE_FLOOD 0
1220 
1221 #define LBM_CTX_ATTR_INTEREST_MODE_FILTER 1
1222 
1223 
1224 /* wildcard receiver pattern types */
1226 #define LBM_WILDCARD_RCV_PATTERN_TYPE_PCRE 1
1227 
1228 #define LBM_WILDCARD_RCV_PATTERN_TYPE_REGEX 2
1229 
1230 #define LBM_WILDCARD_RCV_PATTERN_TYPE_APP_CB 3
1231 
1232 /*LBM symbol types*/
1234 #define LBM_SYMBOL_TYPE_TOPIC 0
1235 
1236 #define LBM_SYMBOL_TYPE_PATTERN LBM_WILDCARD_RCV_PATTERN_TYPE_PCRE
1237 
1238 /* LBM_SRC_EVENT_WAKEUP source type flags */
1241 #define LBM_SRC_EVENT_WAKEUP_FLAG_NORMAL 0x1
1242 
1244 #define LBM_SRC_EVENT_WAKEUP_FLAG_MIM 0x2
1245 
1247 #define LBM_SRC_EVENT_WAKEUP_FLAG_UIM 0x4
1248 
1250 #define LBM_SRC_EVENT_WAKEUP_FLAG_REQUEST 0x8
1251 
1253 #define LBM_SRC_EVENT_WAKEUP_FLAG_RESPONSE 0x10
1254 
1255 /* LBM_SRC_EVENT_UMQ_ULB_MESSAGE_TIMEOUT_EX event flags */
1258 #define LBM_SRC_EVENT_UMQ_ULB_MESSAGE_TIMEOUT_EX_FLAG_TOTAL_LIFETIME_EXPIRED 0x1
1259 
1261 #define LBM_SRC_EVENT_UMQ_ULB_MESSAGE_TIMEOUT_EX_FLAG_EXPLICIT 0x2
1262 
1264 #define LBM_SRC_EVENT_UMQ_ULB_MESSAGE_TIMEOUT_EX_FLAG_DISCARD 0x4
1265 
1267 #define LBM_SRC_EVENT_UMQ_ULB_MESSAGE_TIMEOUT_EX_FLAG_MAX_REASSIGNS 0x8
1268 
1269 /* LBM_SRC_EVENT_UMQ_ULB_MESSAGE_REASSIGNED_EX event flags */
1272 #define LBM_SRC_EVENT_UMQ_ULB_MESSAGE_REASSIGNED_EX_FLAG_EXPLICIT 0x1
1273 
1274 /* LBM_SRC_EVENT_FLIGHT_SIZE_NOTIFICATION type */
1276 #define LBM_SRC_EVENT_FLIGHT_SIZE_NOTIFICATION_TYPE_UME 0x1
1277 
1278 #define LBM_SRC_EVENT_FLIGHT_SIZE_NOTIFICATION_TYPE_ULB 0x2
1279 
1280 #define LBM_SRC_EVENT_FLIGHT_SIZE_NOTIFICATION_TYPE_UMQ 0x3
1281 
1282 /* LBM_SRC_EVENT_FLIGHT_SIZE_NOTIFICATION state */
1293 #define LBM_SRC_EVENT_FLIGHT_SIZE_NOTIFICATION_STATE_OVER 0x1
1294 
1303 #define LBM_SRC_EVENT_FLIGHT_SIZE_NOTIFICATION_STATE_UNDER 0x2
1304 
1305 /* lbm_src_get_inflight types */
1307 #define LBM_FLIGHT_SIZE_TYPE_UME 0x1
1308 
1309 #define LBM_FLIGHT_SIZE_TYPE_ULB 0x2
1310 
1311 #define LBM_FLIGHT_SIZE_TYPE_UMQ 0x3
1312 
1313 /* lbm_src_send_ex info flags */
1317 #define LBM_SRC_SEND_EX_FLAG_UME_CLIENTD 0x1
1318 
1321 #define LBM_SRC_SEND_EX_FLAG_UMQ_CLIENTD 0x1
1322 
1325 #define LBM_SRC_SEND_EX_FLAG_SEQUENCE_NUMBER_INFO 0x2
1326 
1329 #define LBM_SRC_SEND_EX_FLAG_SEQUENCE_NUMBER_INFO_FRAGONLY 0x4
1330 
1333 #define LBM_SRC_SEND_EX_FLAG_APPHDR_CHAIN 0x8
1334 
1336 #define LBM_SRC_SEND_EX_FLAG_UMQ_MESSAGE_ID_INFO 0x10
1337 
1339 #define LBM_SRC_SEND_EX_FLAG_CHANNEL 0x20
1340 
1343 #define LBM_SRC_SEND_EX_FLAG_UMQ_INDEX 0x40
1344 
1347 #define LBM_SRC_SEND_EX_FLAG_UMQ_TOTAL_LIFETIME 0x80
1348 
1350 #define LBM_SRC_SEND_EX_FLAG_HF_OPTIONAL 0x100
1351 
1355 #define LBM_SRC_SEND_EX_FLAG_PROPERTIES 0x200
1356 
1359 #define LBM_SRC_SEND_EX_FLAG_HF_32 0x400
1360 
1363 #define LBM_SRC_SEND_EX_FLAG_HF_64 0x800
1364 
1365 /* lbm_ssrc_send_ex() info flags */
1370 #define LBM_SSRC_SEND_EX_FLAG_UME_CLIENTD 0x1
1371 
1374 #define LBM_SSRC_SEND_EX_FLAG_SEQUENCE_NUMBER_INFO 0x2
1375 
1378 #define LBM_SSRC_SEND_EX_FLAG_SEQUENCE_NUMBER_INFO_FRAGONLY 0x4
1379 
1383 #define LBM_SSRC_SEND_EX_FLAG_CHANNEL 0x20
1384 
1388 #define LBM_SSRC_SEND_EX_FLAG_PROPERTIES 0x200
1389 
1392 #define LBM_SSRC_SEND_EX_FLAG_REBUILD_BUFFER 0x1000
1393 
1396 #define LBM_SSRC_SEND_EX_FLAG_UPDATE_CHANNEL 0x2000
1397 
1400 #define LBM_SSRC_SEND_EX_FLAG_UPDATE_PROPERTY_VALUES 0x4000
1401 
1405 #define LBM_SSRC_SEND_EX_FLAG_USER_SUPPLIED_BUFFER 0x8000
1406 
1407 /* Smart Source defaults */
1409 #define SSRC_DEFAULT_MAX_MSG_LEN 368
1410 
1411 /* Message properties types */
1414 #define LBM_MSG_PROPERTY_NONE 0x0
1415 
1418 #define LBM_MSG_PROPERTY_BOOLEAN 0x1
1419 
1422 #define LBM_MSG_PROPERTY_BYTE 0x2
1423 
1426 #define LBM_MSG_PROPERTY_SHORT 0x3
1427 
1430 #define LBM_MSG_PROPERTY_INT 0x4
1431 
1434 #define LBM_MSG_PROPERTY_LONG 0x5
1435 
1438 #define LBM_MSG_PROPERTY_FLOAT 0x6
1439 
1442 #define LBM_MSG_PROPERTY_DOUBLE 0x7
1443 
1446 #define LBM_MSG_PROPERTY_STRING 0x8
1447 
1450 #define LBM_MSG_PROPERTIES_MAX_NAMELEN 250
1451 
1452 /* appheader chain element types */
1454 #define LBM_CHAIN_ELEM_CHANNEL_NUMBER 0x1
1455 
1456 #define LBM_CHAIN_ELEM_HF_SQN 0x2
1457 
1458 #define LBM_CHAIN_ELEM_GW_INFO 0x3
1459 
1460 #define LBM_CHAIN_ELEM_APPHDR 0x4
1461 
1462 #define LBM_CHAIN_ELEM_USER_DATA 0x5
1463 
1465 #define LBM_CHAIN_ELEM_PROPERTIES_LENGTH 0x6
1466 
1467 /* flags for registration successful extended event for UMP sources */
1470 #define LBM_SRC_EVENT_UME_REGISTRATION_SUCCESS_EX_FLAG_OLD 0x1
1471 
1473 #define LBM_SRC_EVENT_UME_REGISTRATION_SUCCESS_EX_FLAG_NOACKS 0x2
1474 
1476 #define LBM_SRC_EVENT_UME_REGISTRATION_SUCCESS_EX_FLAG_RPP 0x4
1477 
1478 /* flags for registration complete extended event for UMP sources */
1481 #define LBM_SRC_EVENT_UME_REGISTRATION_COMPLETE_EX_FLAG_QUORUM 0x1
1482 
1483 /* flags for message stability extended event for UMP sources */
1486 #define LBM_SRC_EVENT_UME_MESSAGE_STABLE_EX_FLAG_INTRAGROUP_STABLE 0x1
1487 
1489 #define LBM_SRC_EVENT_UME_MESSAGE_STABLE_EX_FLAG_INTERGROUP_STABLE 0x2
1490 
1492 #define LBM_SRC_EVENT_UME_MESSAGE_STABLE_EX_FLAG_STABLE 0x4
1493 
1495 #define LBM_SRC_EVENT_UME_MESSAGE_STABLE_EX_FLAG_STORE 0x8
1496 
1498 #define LBM_SRC_EVENT_UME_MESSAGE_STABLE_EX_FLAG_WHOLE_MESSAGE_STABLE 0x10
1499 
1501 #define LBM_SRC_EVENT_UME_MESSAGE_STABLE_EX_FLAG_USER 0x20
1502 
1505 #define LBM_SRC_EVENT_UME_MESSAGE_NOT_STABLE_FLAG_STORE 0x8
1506 
1508 #define LBM_SRC_EVENT_UME_MESSAGE_NOT_STABLE_FLAG_LOSS 0x40
1509 
1511 #define LBM_SRC_EVENT_UME_MESSAGE_NOT_STABLE_FLAG_TIMEOUT 0x80
1512 
1513 /* flags for delivery confirmation extended event for UMP sources */
1516 #define LBM_SRC_EVENT_UME_DELIVERY_CONFIRMATION_EX_FLAG_UNIQUEACKS 0x1
1517 
1519 #define LBM_SRC_EVENT_UME_DELIVERY_CONFIRMATION_EX_FLAG_UREGID 0x2
1520 
1522 #define LBM_SRC_EVENT_UME_DELIVERY_CONFIRMATION_EX_FLAG_OOD 0x4
1523 
1525 #define LBM_SRC_EVENT_UME_DELIVERY_CONFIRMATION_EX_FLAG_EXACK 0x8
1526 
1528 #define LBM_SRC_EVENT_UME_DELIVERY_CONFIRMATION_EX_FLAG_WHOLE_MESSAGE_CONFIRMED 0x10
1529 
1530 /* flags for message reclaimed extended event for source */
1533 #define LBM_SRC_EVENT_UME_MESSAGE_RECLAIMED_EX_FLAG_FORCED 0x1
1534 
1535 /* flags for registration successful extended event for UMP receivers */
1538 #define LBM_MSG_UME_REGISTRATION_SUCCESS_EX_FLAG_OLD 0x1
1539 
1541 #define LBM_MSG_UME_REGISTRATION_SUCCESS_EX_FLAG_NOCACHE 0x2
1542 
1544 #define LBM_MSG_UME_REGISTRATION_SUCCESS_EX_FLAG_RPP 0x4
1545 
1547 #define LBM_MSG_UME_REGISTRATION_SUCCESS_EX_FLAG_SRC_SID 0x8
1548 
1550 #define LBM_MSG_UME_REGISTRATION_SUCCESS_EX_FLAG_RPP_IS_NON_BLOCKING 0x10
1551 
1553 #define LBM_MSG_UME_REGISTRATION_SUCCESS_EX_FLAG_PROACTIVE_KEEPALIVE 0x20
1554 
1556 #define LBM_MSG_UME_REGISTRATION_SUCCESS_EX_FLAG_RANGED_RXREQ 0x40
1557 
1558 /* flags for recovery sequence number information structure */
1560 #define LBM_UME_RCV_RECOVERY_INFO_EX_FLAG_SRC_SID 0x1
1561 
1562 /* flags for registration complete extended event for UMP receivers */
1565 #define LBM_MSG_UME_REGISTRATION_COMPLETE_EX_FLAG_QUORUM 0x1
1566 
1568 #define LBM_MSG_UME_REGISTRATION_COMPLETE_EX_FLAG_RXREQMAX 0x2
1569 
1571 #define LBM_MSG_UME_REGISTRATION_COMPLETE_EX_FLAG_SRC_SID 0x4
1572 
1575 #define LBM_MSG_UME_DEREGISTRATION_SUCCESS_EX_FLAG_RPP 0x1
1576 
1577 /* flags for registration complete extended event for UMQ contexts */
1580 #define LBM_CONTEXT_EVENT_UMQ_REGISTRATION_COMPLETE_EX_FLAG_QUORUM 0x1
1581 
1582 /* flags for registration complete extended event for UMQ sources */
1585 #define LBM_SRC_EVENT_UMQ_REGISTRATION_COMPLETE_EX_FLAG_QUORUM 0x1
1586 
1589 #define LBM_SRC_EVENT_UMQ_MESSAGE_STABLE_EX_FLAG_INTRAGROUP_STABLE 0x1
1590 
1592 #define LBM_SRC_EVENT_UMQ_MESSAGE_STABLE_EX_FLAG_INTERGROUP_STABLE 0x2
1593 
1595 #define LBM_SRC_EVENT_UMQ_MESSAGE_STABLE_EX_FLAG_STABLE 0x4
1596 
1598 #define LBM_SRC_EVENT_UMQ_MESSAGE_STABLE_EX_FLAG_USER 0x8
1599 
1600 /* flags for registration complete extended event for UMQ receivers */
1603 #define LBM_MSG_UMQ_REGISTRATION_COMPLETE_EX_FLAG_QUORUM 0x1
1604 
1607 #define LBM_MSG_UMQ_REGISTRATION_COMPLETE_EX_FLAG_ULB 0x2
1608 
1609 /* flags for deregistration complete extended event for UMQ receivers */
1612 #define LBM_MSG_UMQ_DEREGISTRATION_COMPLETE_EX_FLAG_ULB 0x1
1613 
1614 /* flags for beginning of index event for UMQ receivers */
1617 #define LBM_MSG_UMQ_INDEX_ASSIGNED_EX_FLAG_ULB 0x1
1618 
1620 #define LBM_MSG_UMQ_INDEX_ASSIGNED_EX_FLAG_REQUESTED 0x2
1621 
1622 /* flags for end of index event for UMQ receivers */
1625 #define LBM_MSG_UMQ_INDEX_RELEASED_EX_FLAG_ULB 0x1
1626 
1627 /* flags for index assignment stop complete extended event for UMQ receivers */
1629 #define LBM_MSG_UMQ_INDEX_ASSIGNMENT_ELIGIBILITY_STOP_COMPLETE_EX_FLAG_ULB 0x1
1630 
1631 /* flags for index assignment start complete extended event for UMQ receivers */
1634 #define LBM_MSG_UMQ_INDEX_ASSIGNMENT_ELIGIBILITY_START_COMPLETE_EX_FLAG_ULB 0x1
1635 
1636 /* flags for lbm_msg_umq_reassign */
1638 #define LBM_MSG_UMQ_REASSIGN_FLAG_DISCARD 0x1
1639 
1640 /* flags for ume receiver liveness */
1644 #define LBM_UME_LIVENESS_RECEIVER_UNRESPONSIVE_FLAG_TMO 0x1
1645 
1650 #define LBM_UME_LIVENESS_RECEIVER_UNRESPONSIVE_FLAG_EOF 0x2
1651 
1652 /* flags for \ref lbm_umm_info_t */
1655 #define LBM_UMM_INFO_FLAGS_USE_SSL 0x1
1656 
1661 #define LBM_NAK_CUTOFF_FLAG_DISABLE_NAKS 0x01
1662 
1663 /* lbm_context_nak_set_cutoff() flags */
1668 #define LBM_NAK_CUTOFF_FLAG_ENABLE_NAKS 0x02
1669 
1670 /*
1671  Possible JMS Message Types.
1672 */
1673 #define LBM_TEXTMESSAGE 0
1674 #define LBM_BYTEMESSAGE 1
1675 #define LBM_MAPMESSAGE 2
1676 #define LBM_MESSAGE 3
1677 #define LBM_OBJECTMESSAGE 4
1678 #define LBM_STREAMMESSAGE 5
1679 
1680 /*
1681  List of JMS provider message properties.
1682 */
1683 
1684 /* int, NON_PERSISTENT = 1, PERSISTENT = 2 */
1685 #define LBM_JMSDeliveryMode "JMSDeliveryMode"
1686 
1687 /* long, Number of milliseconds since 1970. */
1688 #define LBM_JMSExpiration "JMSExpiration"
1689 
1690 /* int */
1691 #define LBM_JMSPriority "JMSPriority"
1692 
1693 /* String */
1694 #define LBM_JMSMessageID "JMSMessageID"
1695 
1696 /* long, Number of milliseconds since 1970. */
1697 #define LBM_JMSTimestamp "JMSTimestamp"
1698 
1699 /* String */
1700 #define LBM_JMSCorrelationID "JMSCorrelationID"
1701 
1702 /* String, topic, queue or destination */
1703 #define LBM_JMSType "JMSType"
1704 
1705 /* boolean */
1706 #define LBM_JMSRedelivered "JMSRedelivered"
1707 
1708 /* int, LBM_TEXTMESSAGE, LBM_BYTEMESSAGE, LBM_MAPMESSAGE, LBM_MESSAGE, LBM_OBJECTMESSAGE, LBM_STREAMMESSAGE */
1709 #define LBM_LBMMessageType "JMS_UM_MessageType"
1710 
1711 /* String, topic, queue or destination */
1712 #define LBM_JMSTopicType "JMSTopicType"
1713 
1714 /* String */
1715 #define LBM_JMSReplyToName "JMSReplyToName"
1716 
1717 /* boolean*/
1718 #define LBM_JMSReplyToWildcard "JMSReplyToWildcard"
1719 
1720 /* String, topic, queue or destination */
1721 #define LBM_JMSReplyToType "JMSReplyToType"
1722 
1723 /* enums */
1724 enum {
1726  LBM_OK = 0,
1729 };
1730 
1731 /* Types */
1733 typedef unsigned int lbm_uint_t;
1735 typedef unsigned long int lbm_ulong_t;
1737 typedef unsigned short int lbm_ushort_t;
1739 typedef unsigned char lbm_uchar_t;
1741 typedef uint8_t lbm_uint8_t;
1743 typedef uint16_t lbm_uint16_t;
1745 typedef uint32_t lbm_uint32_t;
1747 typedef int32_t lbm_int32_t;
1749 typedef uint64_t lbm_uint64_t;
1750 
1751 #if !defined(DONT_TYPEDEF_INT_T)
1752 
1753 typedef int64_t lbm_int64_t;
1754 #else
1755 
1756 typedef __int64 lbm_int64_t;
1757 #endif
1758 
1759 #define LBM_EXTERNAL_STRUCT_FILL_SIZE (512)
1760 
1762 #if defined(_WIN32)
1763 typedef SOCKET lbm_handle_t;
1764 #else
1765 typedef int lbm_handle_t;
1766 #endif /* _WIN32 */
1767 
1769 struct lbm_context_t_stct;
1772 typedef struct lbm_context_t_stct lbm_context_t;
1773 
1781 typedef struct lbm_iovec_t_stct {
1783  char *iov_base;
1785  size_t iov_len;
1786 } lbm_iovec_t;
1787 
1796  lbm_uint_t addr;
1798  int bits;
1800 
1805 typedef struct lbm_timeval_t_stct {
1807  lbm_ulong_t tv_sec;
1809  lbm_ulong_t tv_usec;
1810 } lbm_timeval_t;
1811 
1816 typedef struct lbm_timespec_t_stct {
1818  lbm_ulong_t tv_sec;
1820  lbm_ulong_t tv_nsec;
1821 } lbm_timespec_t;
1822 
1835  int flags;
1837 
1852  int type;
1854  int state;
1856 
1863  lbm_uint_t registration_id;
1865 
1878  int flags;
1880  lbm_uint_t registration_id;
1882  lbm_uint_t sequence_number;
1884  lbm_ushort_t store_index;
1886  char store[LBM_UME_MAX_STORE_STRLEN];
1888 
1901  int flags;
1903  lbm_uint_t sequence_number;
1905 
1914  int flags;
1916  lbm_uint32_t registration_id;
1918  lbm_uint_t sequence_number;
1920  lbm_ushort_t store_index;
1922  char store[LBM_UME_MAX_STORE_STRLEN];
1924 
1939  lbm_uint_t sequence_number;
1941 
1942 
1952 
1966  int flags;
1972  lbm_uint_t sequence_number;
1974  lbm_ushort_t store_index;
1976  char store[LBM_UME_MAX_STORE_STRLEN];
1978  lbm_uint64_t src_session_id;
1980 
1994  int flags;
1996  lbm_uint_t sequence_number;
1998  lbm_uint64_t src_session_id;
2000 
2013  int flags;
2019  lbm_uint_t sequence_number;
2021  lbm_ushort_t store_index;
2023  char store[LBM_UME_MAX_STORE_STRLEN];
2025 
2033  lbm_uint_t sequence_number;
2039 
2056  int flags;
2058  lbm_uint_t sequence_number;
2062  char store[LBM_UME_MAX_STORE_STRLEN];
2066  lbm_ushort_t store_index;
2068 
2069 
2077  lbm_uint64_t bytes;
2079 
2081 struct lbm_src_channel_info_t_stct;
2084 typedef struct lbm_src_channel_info_t_stct lbm_src_channel_info_t;
2085 
2087 #define LBM_UMQ_INDEX_FLAG_NUMERIC 0x1
2088 
2098  int flags;
2102  char index[LBM_UMQ_MAX_INDEX_LEN];
2104  size_t index_len;
2106 
2118  int flags;
2120  lbm_uint_t queue_id;
2122  char queue[LBM_UMQ_MAX_QUEUE_STRLEN];
2124 
2125 
2138  int flags;
2140  lbm_uint_t queue_id;
2142  char queue[LBM_UMQ_MAX_QUEUE_STRLEN];
2146 
2158  int flags;
2160  lbm_uint_t queue_id;
2162  char queue[LBM_UMQ_MAX_QUEUE_STRLEN];
2166 
2178  int flags;
2180  lbm_uint_t queue_id;
2182  char queue[LBM_UMQ_MAX_QUEUE_STRLEN];
2184 
2186 struct lbm_apphdr_chain_t_stct;
2188 typedef struct lbm_apphdr_chain_t_stct lbm_apphdr_chain_t;
2189 
2198  int flags;
2202 
2206  lbm_uint32_t u32;
2208  lbm_uint64_t u64;
2210 
2212 typedef lbm_uint64_t lbm_umq_regid_t;
2213 
2221 typedef struct lbm_umq_msgid_t_stct {
2223  lbm_umq_regid_t regid;
2225  lbm_uint64_t stamp;
2226 } lbm_umq_msgid_t;
2227 
2234  char appset_name[LBM_UMQ_MAX_APPSET_STRLEN];
2236  lbm_uint32_t *ids;
2238  int num_ids;
2242  void *reserved;
2244 
2252  char topic_name[LBM_UMQ_MAX_TOPIC_STRLEN];
2258  void *reserved;
2260 
2263 typedef struct {
2267  int status;
2269  int flags;
2271 
2273 typedef struct {
2279 
2281 struct lbm_msg_t_stct;
2288 typedef struct lbm_msg_t_stct lbm_msg_t;
2289 
2291 struct lbm_event_queue_t_stct;
2294 typedef struct lbm_event_queue_t_stct lbm_event_queue_t;
2295 
2297 #define LBM_UMQ_QUEUE_MSG_STATUS_UNKNOWN 0
2298 
2299 #define LBM_UMQ_QUEUE_MSG_STATUS_UNASSIGNED 1
2300 
2301 #define LBM_UMQ_QUEUE_MSG_STATUS_ASSIGNED 2
2302 
2303 #define LBM_UMQ_QUEUE_MSG_STATUS_REASSIGNING 3
2304 
2305 #define LBM_UMQ_QUEUE_MSG_STATUS_CONSUMED 4
2306 
2308 typedef struct {
2314  void *clientd;
2316  int status;
2318  int flags;
2320 
2322 typedef struct {
2326  lbm_uint64_t num_msgs;
2328 
2330 typedef struct {
2336 
2338 #define LBM_ASYNC_OP_TYPE_CTX_UMQ_QUEUE_TOPIC_LIST 1
2339 
2340 #define LBM_ASYNC_OP_TYPE_RCV_UMQ_QUEUE_MSG_LIST 2
2341 
2342 #define LBM_ASYNC_OP_TYPE_RCV_UMQ_QUEUE_MSG_RETRIEVE 3
2343 
2345 #define LBM_ASYNC_OP_STATUS_IN_PROGRESS 1
2346 
2347 #define LBM_ASYNC_OP_STATUS_COMPLETE 128
2348 
2349 #define LBM_ASYNC_OP_STATUS_ERROR 129
2350 
2351 #define LBM_ASYNC_OP_STATUS_CANCELED 130
2352 
2354 #define LBM_ASYNC_OP_INVALID_HANDLE 0
2355 
2357 #define LBM_ASYNC_OPERATION_CANCEL_FLAG_NONBLOCK 0x1
2358 
2360 #define LBM_ASYNC_OPERATION_STATUS_FLAG_NONBLOCK 0x1
2361 
2364 typedef lbm_uint64_t lbm_async_operation_handle_t;
2365 
2375 typedef struct {
2377  int type;
2379  int status;
2382  int flags;
2384  lbm_async_operation_handle_t handle;
2386  union {
2393  } info;
2395 
2402  lbm_uint64_t info_flags;
2404  lbm_uint32_t capability_flags;
2406  lbm_uint8_t source_type;
2408  lbm_uint32_t domain_id;
2410  lbm_uint32_t version;
2412  lbm_uint8_t source_id[8];
2414 
2417 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);
2418 
2419 #define LBM_RESOLVER_EVENT_ADVERTISEMENT_TYPE 0x01
2420 
2422 #define LBM_RESOLVER_EVENT_ADVERTISEMENT_FLAGS_LJ 0x00000001
2423 
2424 #define LBM_RESOLVER_EVENT_ADVERTISEMENT_FLAGS_UME 0x00000002
2425 
2426 #define LBM_RESOLVER_EVENT_ADVERTISEMENT_FLAGS_UMQ 0x00000004
2427 
2428 #define LBM_RESOLVER_EVENT_ADVERTISEMENT_FLAGS_ULB 0x00000008
2429 
2430 #define LBM_RESOLVER_EVENT_ADVERTISEMENT_FLAGS_EVC 0x00000010 /* Eviction Notice */
2431 
2437  lbm_uint32_t flags;
2439  char topic_string[LBM_MSG_MAX_TOPIC_LEN];
2441  char transport_string[LBM_MSG_MAX_SOURCE_LEN];
2443  lbm_uint32_t topic_index;
2445  lbm_uint32_t source_domain_id;
2447  lbm_uint8_t otid[LBM_OTID_BLOCK_SZ];
2449  lbm_uint32_t source_type;
2451 
2458  void * clientd;
2460 
2472 typedef void *(*lbm_mem_mgt_malloc_cb_func) (size_t size, void *clientd);
2473 
2486 typedef void *(*lbm_mem_mgt_realloc_cb_func) (void *ptr, size_t size, void *clientd);
2487 
2499 typedef void(*lbm_mem_mgt_free_cb_func) (void *ptr, void *clientd);
2500 
2519  void * clientd;
2521 
2522 /* lbm_process_events_info_tinfo flags */
2525 #define LBM_PROC_EVENT_EX_FLAG_USER_TIME 0x0001
2526 
2528 #define LBM_PROC_EVENT_EX_FLAG_NO_MAIN_LOOP_MUTEX 0x0002
2529 
2542  int flags;
2548 
2549 #define LBM_RESOLVER_EVENT_INFO_CAPABILITY_VERSION_FLAG_UME 0x1
2550 #define LBM_RESOLVER_EVENT_INFO_CAPABILITY_VERSION_FLAG_UMQ 0x2
2551 
2552 
2553 #define LBM_RESOLVER_EVENT_INFO_INFO_DOMAIN_ID_PRESENT_FLAG 0x1ULL
2554 #define LBM_RESOLVER_EVENT_INFO_INFO_SOURCE_ID_PRESENT_FLAG 0x2ULL
2555 #define LBM_RESOLVER_EVENT_INFO_INFO_SOURCE_ID_TYPE_PRESENT_FLAG 0x4ULL
2556 #define LBM_RESOLVER_EVENT_INFO_INFO_VERSION_PRESENT_FLAG 0x8ULL
2557 
2558 #define LBMR_RESOLVER_EVENT_INFO_SRC_TYPE_APPLICATION 0
2559 #define LBMR_RESOLVER_EVENT_INFO_SRC_TYPE_TNWGD 1
2560 #define LBMR_RESOLVER_EVENT_INFO_SRC_TYPE_STORE 2
2561 
2562 
2569 typedef int (*lbm_async_operation_function_cb)(lbm_async_operation_info_t *opinfo, void *clientd);
2570 
2573 #define LBM_ASYNC_OP_INFO_FLAG_INLINE 0x1
2574 
2575 #define LBM_ASYNC_OP_INFO_FLAG_FIRST 0x2
2576 
2577 #define LBM_ASYNC_OP_INFO_FLAG_LAST 0x4
2578 
2579 #define LBM_ASYNC_OP_INFO_FLAG_ONLY (LBM_ASYNC_OP_INFO_FLAG_FIRST | LBM_ASYNC_OP_INFO_FLAG_LAST)
2580 
2584 typedef struct {
2590  void *clientd;
2592  int flags;
2594 
2596 struct lbm_msg_properties_t_stct;
2601 typedef struct lbm_msg_properties_t_stct lbm_msg_properties_t;
2602 
2612  int flags;
2641 
2657  int flags;
2669  lbm_int32_t *mprop_int_vals;
2672  lbm_uint32_t channel;
2677 
2688  int flags;
2692  lbm_ushort_t store_index;
2697  char source[LBM_MSG_MAX_SOURCE_LEN];
2699  char store[LBM_UME_MAX_STORE_STRLEN];
2701 
2716  int flags;
2724 
2737  int flags;
2749  char source[LBM_MSG_MAX_SOURCE_LEN];
2751  lbm_uint64_t src_session_id;
2753 
2763  int flags;
2769 
2779  int flags;
2781  lbm_umq_regid_t registration_id;
2783  lbm_uint_t queue_id;
2787  char queue_instance[LBM_UME_MAX_STORE_STRLEN];
2789  char queue[LBM_UMQ_MAX_QUEUE_STRLEN];
2791 
2801  int flags;
2803  lbm_umq_regid_t registration_id;
2805  lbm_uint_t queue_id;
2807  char queue[LBM_UMQ_MAX_QUEUE_STRLEN];
2809 
2821  int flags;
2823  lbm_uint_t queue_id;
2825  char queue[LBM_UMQ_MAX_QUEUE_STRLEN];
2827 
2840  int flags;
2842  lbm_uint_t queue_id;
2844  lbm_uint_t assignment_id;
2846  char queue[LBM_UMQ_MAX_QUEUE_STRLEN];
2848 
2861  int flags;
2869  lbm_uint_t queue_id;
2875  char queue_instance[LBM_UME_MAX_STORE_STRLEN];
2877  char queue[LBM_UMQ_MAX_QUEUE_STRLEN];
2879 
2892  int flags;
2894  lbm_uint_t queue_id;
2896  char queue[LBM_UMQ_MAX_QUEUE_STRLEN];
2898 
2911  int flags;
2913  lbm_umq_regid_t registration_id;
2915  lbm_uint_t assignment_id;
2919  char receiver[LBM_UMQ_ULB_MAX_RECEIVER_STRLEN];
2921 
2937  int flags;
2941  lbm_umq_regid_t registration_id;
2947  lbm_uint_t assignment_id;
2953  char receiver[LBM_UMQ_ULB_MAX_RECEIVER_STRLEN];
2955 
2957 struct sockaddr_in;
2959 struct in_addr;
2960 
2969  void *handle;
2971  void *clientd;
2973  char *buffer;
2975  uint32_t length;
2977  uint64_t timestamp;
2979 
2987 typedef int (*lbm_datagram_acceleration_init_function_t)(uint16_t api_version);
2988 
2998 typedef int (*lbm_datagram_acceleration_open_function_t)(struct in_addr *interface_addr, int flags, void **device_out);
2999 
3007 typedef int (*lbm_datagram_acceleration_close_function_t)(void *device);
3008 
3020 typedef int (*lbm_datagram_acceleration_bind_function_t)(void *device, int flags, int port, void *context, void **handle_out);
3021 
3029 typedef int (*lbm_datagram_acceleration_unbind_function_t)(void *handle);
3030 
3039 typedef int (*lbm_datagram_acceleration_mcast_join_function_t)(void *handle, struct in_addr *mcast_addr);
3040 
3049 typedef int (*lbm_datagram_acceleration_mcast_leave_function_t)(void *handle, struct in_addr *mcast_addr);
3050 
3064 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);
3065 
3077 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);
3078 
3087 
3098 typedef int (*lbm_datagram_acceleration_send_function_t)(void *send_handle, const void *buffer, size_t length, int flags);
3099 
3111 typedef int (*lbm_datagram_acceleration_sendto_function_t)(void *device, struct sockaddr_in *sin, const void *buffer, size_t length, int flags);
3112 
3121 typedef int (*lbm_datagram_acceleration_getaddr_function_t)(void *device, struct sockaddr_in *sin);
3122 
3159 
3170 typedef lbm_ulong_t (*lbm_str_hash_function_cb)(const char *str);
3171 
3184 typedef lbm_ulong_t (*lbm_str_hash_function_cb_ex)(const char *str, size_t strlen, void* clientd);
3185 
3186 
3205 typedef int (*lbm_src_notify_function_cb)(const char *topic_str, const char *src_str, void *clientd);
3206 
3222 typedef int (*lbm_wildcard_rcv_compare_function_cb)(const char *topic_str, void *clientd);
3223 
3239 typedef lbm_uint_t (*lbm_ume_rcv_regid_function_cb)(const char *src_str, lbm_uint_t src_regid, void *clientd);
3240 
3256 
3273 typedef int (*lbm_ume_src_force_reclaim_function_cb)(const char *topic_str, lbm_uint_t seqnum, void *clientd);
3274 
3292 typedef int (*lbm_mim_unrecloss_function_cb)(const char *source_name, lbm_uint_t seqnum, void *clientd);
3293 
3309 
3324 typedef void *(*lbm_rcv_src_notification_create_function_cb)(const char *source_name, void *clientd);
3325 
3341 typedef int (*lbm_rcv_src_notification_delete_function_cb)(const char *source_name, void *clientd, void *source_clientd);
3342 
3353 
3364  void* clientd;
3366 
3378  void *clientd;
3380 
3382 typedef void *(*lbm_rcv_batch_notify_func_start_cb)(void *clientd);
3384 typedef void (*lbm_rcv_batch_notify_func_end_cb)(void *per_batch_clientd, void *clientd);
3392  void *clientd;
3394 
3406  void *clientd;
3408 
3420  void *clientd;
3422 
3434  void *clientd;
3436 
3448  void *clientd;
3450 
3461  void *clientd;
3463 
3475  void *clientd;
3477 
3486  lbm_uint_t ip_address;
3488  lbm_ushort_t tcp_port;
3490  lbm_ushort_t group_index;
3492  lbm_uint_t registration_id;
3494  lbm_uint32_t domain_id;
3496 
3508  lbm_uint_t resolver_ip;
3511  lbm_ushort_t source_port;
3513  lbm_ushort_t destination_port;
3515 
3526  lbm_uint_t service_ip;
3528  lbm_ushort_t service_port;
3532  lbm_ushort_t source_port;
3534 
3545  lbm_uint_t broker_ip;
3547  lbm_ushort_t broker_port;
3551  lbm_ushort_t source_port;
3553 
3563  char name[LBM_MAX_CONTEXT_NAME_LEN+1];
3565  lbm_ushort_t group_index;
3567  lbm_uint_t registration_id;
3569 
3579  lbm_ushort_t index;
3581  lbm_ushort_t group_size;
3583 
3597  void *clientd;
3599 
3609  lbm_uint64_t regid;
3611  lbm_uint64_t session_id;
3614  int flag;
3616 
3631 typedef void *(*lbm_ume_ctx_rcv_ctx_notification_create_function_cb)(const ume_liveness_receiving_context_t *rcv, void *clientd);
3632 
3647 typedef int (*lbm_ume_ctx_rcv_ctx_notification_delete_function_cb)(const ume_liveness_receiving_context_t *rcv, void *clientd, void *source_clientd);
3648 
3662  void *clientd;
3664 
3674  char name[LBM_UMQ_MAX_QUEUE_STRLEN];
3676  lbm_umq_regid_t regid;
3678 
3688  lbm_ulong_t id;
3692 
3711  lbm_ushort_t index;
3713  union {
3715  int d;
3717  lbm_ulong_t lu;
3718  } value;
3720 
3733  lbm_ulong_t id;
3735  union {
3737  int d;
3739  lbm_ulong_t lu;
3740  } value;
3742 
3743 
3772 typedef int (*lbm_context_src_cb_proc)(lbm_context_t *ctx, int event, void *ed, void *clientd);
3773 
3787  void *clientd;
3789 
3804 typedef int (*lbm_context_event_cb_proc)(lbm_context_t *ctx, int event, void *ed, void *clientd);
3805 
3819  void *clientd;
3821 
3828  char serial_response[32];
3830 
3832 struct lbm_buff_t_stct;
3834 typedef struct lbm_buff_t_stct lbm_buff_t;
3835 
3837 struct lbm_wildcard_rcv_t_stct;
3840 typedef struct lbm_wildcard_rcv_t_stct lbm_wildcard_rcv_t;
3841 
3843 struct lbm_hf_rcv_t_stct;
3846 typedef struct lbm_hf_rcv_t_stct lbm_hf_rcv_t;
3847 
3849 struct lbm_hfx_attr_t_stct;
3851 typedef struct lbm_hfx_attr_t_stct lbm_hfx_attr_t;
3852 
3854 struct lbm_hfx_t_stct;
3856 typedef struct lbm_hfx_t_stct lbm_hfx_t;
3857 
3859 struct lbm_hfx_rcv_t_stct;
3861 typedef struct lbm_hfx_rcv_t_stct lbm_hfx_rcv_t;
3862 
3864 struct lbm_topic_t_stct;
3867 typedef struct lbm_topic_t_stct lbm_topic_t;
3868 
3870 struct lbm_src_t_stct;
3873 typedef struct lbm_src_t_stct lbm_src_t;
3874 
3876 struct lbm_ssrc_t_stct;
3882 typedef struct lbm_ssrc_t_stct lbm_ssrc_t;
3883 
3885 struct lbm_rcv_t_stct;
3888 typedef struct lbm_rcv_t_stct lbm_rcv_t;
3889 
3891 struct lbm_request_t_stct;
3897 typedef struct lbm_request_t_stct lbm_request_t;
3898 
3900 struct lbm_response_t_stct;
3903 typedef struct lbm_response_t_stct lbm_response_t;
3904 
3918  lbm_uint_t offset;
3923 
3930  lbm_uint_t sequence_number;
3933  char source[LBM_MSG_MAX_SOURCE_LEN];
3935 
3947  int flags;
3949  lbm_uint32_t channel_number;
3951 
3953 struct lbm_ume_rcv_ack_t_stct;
3956 typedef struct lbm_ume_rcv_ack_t_stct lbm_ume_rcv_ack_t;
3957 
3971  char source[LBM_MSG_MAX_SOURCE_LEN];
3974  char topic_name[LBM_MSG_MAX_TOPIC_LEN];
3976  char copied_state[LBM_MSG_MAX_STATE_LEN];
3979  int type;
3982  int flags;
3989  const char *data;
3992  size_t len;
3999  lbm_uint_t sequence_number;
4001 #if defined(_WIN32)
4002  LONG refcnt;
4003 #else
4004  long refcnt;
4005 #endif /* _WIN32 */
4006 
4007  size_t apphdr_len;
4009  lbm_ulong_t apphdr_code;
4018  lbm_ushort_t hdrlen;
4023  const void *fragment_info;
4026  const char *apphdr_data;
4029  const void *source_clientd;
4031  const void *umeack;
4033  const void *src_cd;
4035  lbm_uint_t osqn;
4039  const void *umq_msgid;
4041  const void *umq_cr;
4043  const void *pdata;
4045  size_t plen;
4053  const void *broker_msg_state;
4056 };
4057 
4076 typedef int (*lbm_immediate_msg_cb_proc)(lbm_context_t *ctx, lbm_msg_t *msg, void *clientd);
4077 
4102  void *clientd;
4104 
4116  int type;
4118  lbm_uint32_t src_ip;
4120  lbm_ushort_t src_port;
4122  lbm_ushort_t dest_port;
4124  lbm_uint32_t mc_group;
4126  lbm_uint32_t transport_id;
4128  lbm_uint32_t session_id;
4130  lbm_uint32_t topic_idx;
4132  lbm_uint32_t transport_idx;
4134 
4136 #define LBM_SRC_COST_FUNCTION_REJECT 0xffffffff
4137 
4149 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);
4150 
4154 {
4158  void *clientd;
4160 
4162 struct lbm_context_attr_t_stct;
4167 typedef struct lbm_context_attr_t_stct lbm_context_attr_t;
4168 
4170 #define LBM_CONFIG_OPTIONS_STR_LEN 128
4171 
4173 {
4181 
4183 struct lbm_src_topic_attr_t_stct;
4186 typedef struct lbm_src_topic_attr_t_stct lbm_src_topic_attr_t;
4187 
4189 struct lbm_rcv_topic_attr_t_stct;
4192 typedef struct lbm_rcv_topic_attr_t_stct lbm_rcv_topic_attr_t;
4193 
4211 typedef int (*lbm_wildcard_rcv_create_function_cb)(const char * topic_str, lbm_rcv_topic_attr_t * attr, void * clientd);
4212 
4224  void *clientd;
4226 
4242 typedef int (*lbm_wildcard_rcv_delete_function_cb)(const char * topic_str, void * clientd);
4243 
4255  void *clientd;
4257 
4259 struct lbm_wildcard_rcv_attr_t_stct;
4262 typedef struct lbm_wildcard_rcv_attr_t_stct lbm_wildcard_rcv_attr_t;
4263 
4282  lbm_ulong_t num_clients;
4286  lbm_ulong_t bytes_buffered;
4288 
4316  lbm_ulong_t msgs_sent;
4319  lbm_ulong_t bytes_sent;
4327  lbm_ulong_t txw_msgs;
4331  lbm_ulong_t txw_bytes;
4335  lbm_ulong_t nak_pckts_rcved;
4344  lbm_ulong_t naks_rcved;
4352  lbm_ulong_t naks_ignored;
4360  lbm_ulong_t naks_shed;
4380  lbm_ulong_t rxs_sent;
4388  lbm_ulong_t rctlr_data_msgs;
4397  lbm_ulong_t rctlr_rx_msgs;
4408  lbm_ulong_t rx_bytes_sent;
4410 
4416  lbm_ulong_t bytes_buffered;
4418 
4434  lbm_ulong_t msgs_sent;
4437  lbm_ulong_t bytes_sent;
4441  lbm_ulong_t nak_pckts_rcved;
4450  lbm_ulong_t naks_rcved;
4458  lbm_ulong_t naks_ignored;
4466  lbm_ulong_t naks_shed;
4486  lbm_ulong_t rxs_sent;
4488  lbm_ulong_t num_clients;
4499  lbm_ulong_t rx_bytes_sent;
4501 
4524  lbm_ulong_t num_clients;
4529  lbm_ulong_t msgs_sent;
4532  lbm_ulong_t bytes_sent;
4534 
4557  lbm_ulong_t num_clients;
4559  lbm_ulong_t msgs_sent;
4562  lbm_ulong_t bytes_sent;
4564 
4571  lbm_ulong_t num_clients;
4576  lbm_ulong_t msgs_sent;
4579  lbm_ulong_t bytes_sent;
4581 
4600  lbm_ulong_t msgs_sent;
4602  lbm_ulong_t bytes_sent;
4604 
4620  int type;
4622  char source[LBM_MSG_MAX_SOURCE_LEN];
4624  union {
4641  } transport;
4643  char _fill[LBM_EXTERNAL_STRUCT_FILL_SIZE];
4645 
4665  lbm_ulong_t bytes_rcved;
4676  lbm_ulong_t lbm_msgs_rcved;
4684  lbm_ulong_t lbm_reqs_rcved;
4686 
4712  lbm_ulong_t msgs_rcved;
4717  lbm_ulong_t bytes_rcved;
4723  lbm_ulong_t nak_pckts_sent;
4738  lbm_ulong_t naks_sent;
4743  lbm_ulong_t lost;
4752  lbm_ulong_t ncfs_ignored;
4760  lbm_ulong_t ncfs_shed;
4770  lbm_ulong_t ncfs_rx_delay;
4778  lbm_ulong_t ncfs_unknown;
4787  lbm_ulong_t nak_stm_min;
4795  lbm_ulong_t nak_stm_mean;
4802  lbm_ulong_t nak_stm_max;
4808  lbm_ulong_t nak_tx_min;
4814  lbm_ulong_t nak_tx_mean;
4822  lbm_ulong_t nak_tx_max;
4829  lbm_ulong_t duplicate_data;
4837  lbm_ulong_t unrecovered_txw;
4849  lbm_ulong_t unrecovered_tmo;
4860  lbm_ulong_t lbm_msgs_rcved;
4868  lbm_ulong_t lbm_reqs_rcved;
4871  lbm_ulong_t dgrams_dropped_size;
4874  lbm_ulong_t dgrams_dropped_type;
4880  lbm_ulong_t dgrams_dropped_hdr;
4892  lbm_ulong_t out_of_order;
4894 
4901  lbm_ulong_t bytes_rcved;
4903 
4929  lbm_ulong_t msgs_rcved;
4934  lbm_ulong_t bytes_rcved;
4940  lbm_ulong_t nak_pckts_sent;
4955  lbm_ulong_t naks_sent;
4957  lbm_ulong_t lost;
4966  lbm_ulong_t ncfs_ignored;
4974  lbm_ulong_t ncfs_shed;
4984  lbm_ulong_t ncfs_rx_delay;
4992  lbm_ulong_t ncfs_unknown;
5001  lbm_ulong_t nak_stm_min;
5009  lbm_ulong_t nak_stm_mean;
5016  lbm_ulong_t nak_stm_max;
5022  lbm_ulong_t nak_tx_min;
5028  lbm_ulong_t nak_tx_mean;
5036  lbm_ulong_t nak_tx_max;
5043  lbm_ulong_t duplicate_data;
5051  lbm_ulong_t unrecovered_txw;
5063  lbm_ulong_t unrecovered_tmo;
5074  lbm_ulong_t lbm_msgs_rcved;
5082  lbm_ulong_t lbm_reqs_rcved;
5085  lbm_ulong_t dgrams_dropped_size;
5088  lbm_ulong_t dgrams_dropped_type;
5094  lbm_ulong_t dgrams_dropped_hdr;
5097  lbm_ulong_t dgrams_dropped_sid;
5102 
5126  lbm_ulong_t msgs_rcved;
5129  lbm_ulong_t bytes_rcved;
5140  lbm_ulong_t lbm_msgs_rcved;
5147  lbm_ulong_t lbm_reqs_rcved;
5149 
5150 
5169  lbm_ulong_t msgs_rcved;
5172  lbm_ulong_t bytes_rcved;
5181  lbm_ulong_t lbm_msgs_rcved;
5189  lbm_ulong_t reserved1;
5191 
5201  lbm_ulong_t msgs_rcved;
5204  lbm_ulong_t bytes_rcved;
5213  lbm_ulong_t lbm_msgs_rcved;
5220  lbm_ulong_t lbm_reqs_rcved;
5222 
5242  lbm_ulong_t msgs_rcved;
5244  lbm_ulong_t bytes_rcved;
5246 
5262  int type;
5264  char source[LBM_MSG_MAX_SOURCE_LEN];
5266  union {
5283  } transport;
5285  char _fill[LBM_EXTERNAL_STRUCT_FILL_SIZE];
5287 
5289 struct lbm_event_queue_attr_t_stct;
5292 typedef struct lbm_event_queue_attr_t_stct lbm_event_queue_attr_t;
5293 
5321  lbm_ulong_t data_msgs;
5325  lbm_ulong_t data_msgs_tot;
5332  lbm_ulong_t data_msgs_svc_min;
5338  lbm_ulong_t data_msgs_svc_mean;
5343  lbm_ulong_t data_msgs_svc_max;
5346  lbm_ulong_t resp_msgs;
5349  lbm_ulong_t resp_msgs_tot;
5356  lbm_ulong_t resp_msgs_svc_min;
5362  lbm_ulong_t resp_msgs_svc_mean;
5367  lbm_ulong_t resp_msgs_svc_max;
5371  lbm_ulong_t topicless_im_msgs;
5398  lbm_ulong_t wrcv_msgs;
5402  lbm_ulong_t wrcv_msgs_tot;
5410  lbm_ulong_t wrcv_msgs_svc_min;
5416  lbm_ulong_t wrcv_msgs_svc_mean;
5422  lbm_ulong_t wrcv_msgs_svc_max;
5425  lbm_ulong_t io_events;
5429  lbm_ulong_t io_events_tot;
5436  lbm_ulong_t io_events_svc_min;
5442  lbm_ulong_t io_events_svc_mean;
5447  lbm_ulong_t io_events_svc_max;
5450  lbm_ulong_t timer_events;
5454  lbm_ulong_t timer_events_tot;
5475  lbm_ulong_t source_events;
5479  lbm_ulong_t source_events_tot;
5500  lbm_ulong_t unblock_events;
5504  lbm_ulong_t unblock_events_tot;
5507  lbm_ulong_t cancel_events;
5511  lbm_ulong_t cancel_events_tot;
5561  lbm_ulong_t events;
5565  lbm_ulong_t events_tot;
5574  lbm_ulong_t age_min;
5581  lbm_ulong_t age_mean;
5588  lbm_ulong_t age_max;
5591  lbm_ulong_t callback_events;
5595  lbm_ulong_t callback_events_tot;
5621 
5650  lbm_ulong_t tr_dgrams_sent;
5654  lbm_ulong_t tr_bytes_sent;
5659  lbm_ulong_t tr_dgrams_rcved;
5663  lbm_ulong_t tr_bytes_rcved;
5685  lbm_ulong_t tr_src_topics;
5696  lbm_ulong_t tr_rcv_topics;
5726  lbm_ulong_t send_blocked;
5730  lbm_ulong_t send_would_block;
5733  lbm_ulong_t resp_blocked;
5738  lbm_ulong_t resp_would_block;
5740  lbm_ulong_t uim_dup_msgs_rcved;
5753  lbm_ulong_t fragments_lost;
5786  lbm_ulong_t rcv_cb_svc_time_min;
5801  lbm_ulong_t rcv_cb_svc_time_max;
5814 
5821  char topic[LBM_MSG_MAX_TOPIC_LEN];
5823  lbm_uint32_t flags;
5825  char source[LBM_MSG_MAX_SOURCE_LEN];
5827  lbm_uint8_t otid[LBM_OTID_BLOCK_SZ];
5829  lbm_uint32_t topic_idx;
5831  lbm_uint64_t timestamp_sec;
5833  lbm_uint64_t timestamp_usec;
5836 #define LBM_RCV_TOPIC_STATS_FLAG_NO_SOURCE 0x0
5837 #define LBM_RCV_TOPIC_STATS_FLAG_SRC_CREATED 0x1
5838 #define LBM_RCV_TOPIC_STATS_FLAG_SRC_DELETED 0x2
5839 
5840 /* for backward compatibility only */
5841 #define LBM_RCV_TOPIC_STATS_FLAG_SRC_VALID LBM_RCV_TOPIC_STATS_FLAG_SRC_CREATED
5842 
5849  char pattern[LBM_MSG_MAX_TOPIC_LEN];
5851  lbm_uint8_t type;
5853 
5865 typedef int (*lbm_timer_cb_proc)(lbm_context_t *ctx, const void *clientd);
5866 
5901 typedef int (*lbm_rcv_cb_proc)(lbm_rcv_t *rcv, lbm_msg_t *msg, void *clientd);
5902 
5917 typedef int (*lbm_fd_cb_proc)(lbm_context_t *ctx, lbm_handle_t handle, lbm_ulong_t ev, void *clientd);
5918 
6015 typedef int (*lbm_src_cb_proc)(lbm_src_t *src, int event, void *ed, void *clientd);
6016 
6083 typedef int (*lbm_ssrc_cb_proc)(lbm_ssrc_t *ssrc, int event, void *ed, void *clientd);
6084 
6104 typedef int (*lbm_request_cb_proc)(lbm_request_t *req, lbm_msg_t *msg, void *clientd);
6105 
6134 typedef int (*lbm_event_queue_monitor_proc)(lbm_event_queue_t *evq, int event, size_t evq_size,
6135  lbm_ulong_t event_delay_usec, void *clientd);
6136 
6155 typedef int (*lbm_log_cb_proc)(int level, const char *message, void *clientd);
6156 
6174 typedef int (*lbm_daemon_event_cb_proc)(lbm_context_t *ctx, int event, const char *info, void *clientd);
6175 
6194 typedef void (*lbm_event_queue_cancel_cb_proc)(int dispatch_thrd, void *clientd);
6195 
6207  void *clientd;
6209 
6222 typedef int (*lbm_flight_size_set_inflight_cb_proc)(int inflight, void *clientd);
6223 
6237 
6238 /* Functions */
6239 
6244 LBMExpDLL const char *lbm_version(void);
6245 
6253 LBMExpDLL int lbm_context_dump(lbm_context_t *ctx, int *size, lbm_config_option_t *opts);
6254 
6262 LBMExpDLL int lbm_context_attr_dump(lbm_context_attr_t *cattr, int *size, lbm_config_option_t *opts);
6263 
6270 LBMExpDLL int lbm_context_attr_option_size(void);
6271 
6283 LBMExpDLL int lbm_context_attr_create(lbm_context_attr_t * * attr);
6284 
6294 LBMExpDLL int lbm_context_attr_create_default(lbm_context_attr_t * * attr);
6295 
6317 LBMExpDLL int lbm_context_attr_create_from_xml(lbm_context_attr_t * * attr, const char * context_name);
6318 
6334 LBMExpDLL int lbm_context_attr_set_from_xml(lbm_context_attr_t * attr, const char * context_name);
6335 
6343 LBMExpDLL int lbm_context_attr_delete(lbm_context_attr_t *attr);
6344 
6355 LBMExpDLL int lbm_context_attr_dup(lbm_context_attr_t * * attr, const lbm_context_attr_t * original);
6356 
6371 LBMExpDLL int lbm_context_attr_setopt(lbm_context_attr_t *attr, const char *optname,
6372  const void *optval, size_t optlen);
6373 
6387 LBMExpDLL int lbm_context_attr_str_setopt(lbm_context_attr_t *attr, const char *optname,
6388  const char *optval);
6389 
6400 LBMExpDLL int lbm_context_attr_getopt(lbm_context_attr_t *attr, const char *optname,
6401  void *optval, size_t *optlen);
6402 
6413 LBMExpDLL int lbm_context_attr_str_getopt(lbm_context_attr_t *attr, const char *optname,
6414  char *optval, size_t *optlen);
6415 
6438 LBMExpDLL int lbm_context_create(lbm_context_t **ctxp, const lbm_context_attr_t *attr,
6439  lbm_daemon_event_cb_proc proc, void *clientd);
6440 
6458 LBMExpDLL int lbm_context_reactor_only_create(lbm_context_t **ctxp, const lbm_context_attr_t *attr);
6459 
6476 LBMExpDLL int lbm_context_delete(lbm_context_t *ctx);
6477 
6491 
6521 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);
6522 
6536 LBMExpDLL int lbm_context_setopt(lbm_context_t *ctx, const char *optname, const void *optval, size_t optlen);
6537 
6550 LBMExpDLL int lbm_context_str_setopt(lbm_context_t *ctx, const char *optname, const char *optval);
6551 
6562 LBMExpDLL int lbm_context_getopt(lbm_context_t *ctx, const char *optname, void *optval, size_t *optlen);
6563 
6574 LBMExpDLL int lbm_context_str_getopt(lbm_context_t *ctx, const char *optname, char *optval, size_t *optlen);
6575 
6591 LBMExpDLL int lbm_context_rcv_immediate_msgs(lbm_context_t *ctx, lbm_immediate_msg_cb_proc proc, void *clientd,
6592  lbm_event_queue_t *evq);
6593 
6610 LBMExpDLL int lbm_context_rcv_immediate_topic_msgs(lbm_context_t *ctx, lbm_immediate_msg_cb_proc proc, void *clientd,
6611  lbm_event_queue_t *evq);
6612 
6625 LBMExpDLL int lbm_context_set_name(lbm_context_t *ctx, const char *name);
6626 
6639 LBMExpDLL int lbm_context_get_name(lbm_context_t *ctx, char *name, size_t *size);
6640 
6650 LBMExpDLL int lbm_license_file(const char *licfile);
6651 
6661 LBMExpDLL int lbm_license_str(const char *licstr);
6662 
6670 LBMExpDLL int lbm_license_ummnm_valid(void);
6671 
6679 LBMExpDLL int lbm_license_vds_valid(void);
6680 
6701 LBMExpDLL int lbm_config(const char *fname);
6702 
6719 LBMExpDLL int lbm_config_xml_file(const char *url, const char *application_name);
6720 
6736 LBMExpDLL int lbm_config_xml_string(const char *xml_data, const char *application_name);
6737 
6745 LBMExpDLL int lbm_log(lbm_log_cb_proc proc, void *clientd);
6746 
6754 LBMExpDLL void lbm_logf(int level, const char * format, ...);
6755 
6761 LBMExpDLL const char *lbm_errmsg(void);
6762 
6767 LBMExpDLL int lbm_errnum(void);
6768 
6769 #if defined(_WIN32) || defined(DOXYGEN)
6770 
6779 LBMExpDLL int lbm_win32_static_thread_attach(void);
6780 
6790 LBMExpDLL int lbm_win32_static_thread_detach(void);
6791 #endif /* _WIN32 */
6792 
6816 LBMExpDLL int lbm_schedule_timer(lbm_context_t *ctx,
6817  lbm_timer_cb_proc proc, void *clientd,
6818  lbm_event_queue_t *evq, lbm_ulong_t delay);
6819 
6839 LBMExpDLL int lbm_schedule_timer_recurring(lbm_context_t *ctx,
6840  lbm_timer_cb_proc proc, void *clientd,
6841  lbm_event_queue_t *evq, lbm_ulong_t delay);
6842 
6864 LBMExpDLL int lbm_cancel_timer(lbm_context_t *ctx, int id, void **clientdp);
6865 
6888 LBMExpDLL int lbm_cancel_timer_ex(lbm_context_t *ctx, int id, void **clientdp,
6890 
6921 LBMExpDLL int lbm_context_process_events(lbm_context_t *ctx, lbm_ulong_t msec);
6922 
6957 LBMExpDLL int lbm_context_process_events_ex(lbm_context_t *ctx, lbm_ulong_t msec, lbm_process_events_info_t *info);
6958 
6972 LBMExpDLL int lbm_context_unblock(lbm_context_t *ctx);
6973 
6997 LBMExpDLL int lbm_context_process_lbtipc_messages(lbm_context_t *ctx, lbm_ulong_t msec, lbm_ulong_t loop_count);
6998 
7008 LBMExpDLL int lbm_context_lbtipc_unblock(lbm_context_t *ctx);
7009 
7032 LBMExpDLL int lbm_register_fd(lbm_context_t *ctx, lbm_handle_t handle, lbm_fd_cb_proc proc,
7033  void *clientd, lbm_event_queue_t *evq, lbm_ulong_t ev);
7034 
7053 LBMExpDLL int lbm_cancel_fd(lbm_context_t *ctx, lbm_handle_t handle, lbm_ulong_t ev);
7054 
7071 LBMExpDLL int lbm_cancel_fd_ex(lbm_context_t *ctx, lbm_handle_t handle, lbm_ulong_t ev,
7073 
7081 LBMExpDLL int lbm_src_topic_dump(lbm_src_t *src, int *size, lbm_config_option_t *opts);
7082 
7094 LBMExpDLL int lbm_ssrc_topic_dump(lbm_ssrc_t *ssrc, int *size, lbm_config_option_t *opts);
7095 
7103 LBMExpDLL int lbm_src_topic_attr_dump(lbm_src_topic_attr_t *sattr, int *size, lbm_config_option_t *opts);
7104 
7111 LBMExpDLL int lbm_src_topic_attr_option_size(void);
7112 
7125 LBMExpDLL int lbm_src_topic_alloc(lbm_topic_t **topicp, lbm_context_t *ctx,
7126  const char *symbol, const lbm_src_topic_attr_t *attr);
7127 
7140 LBMExpDLL int lbm_src_topic_attr_create(lbm_src_topic_attr_t * * attr);
7141 
7152 
7175 LBMExpDLL int lbm_src_topic_attr_create_from_xml(lbm_src_topic_attr_t * * attr, const char * context_name, const char * topicname);
7176 
7193 LBMExpDLL int lbm_src_topic_attr_set_from_xml(lbm_src_topic_attr_t * attr, const char * context_name, const char * topicname);
7194 
7202 LBMExpDLL int lbm_src_topic_attr_delete(lbm_src_topic_attr_t *attr);
7203 
7214 LBMExpDLL int lbm_src_topic_attr_dup(lbm_src_topic_attr_t * * attr, const lbm_src_topic_attr_t * original);
7215 
7230 LBMExpDLL int lbm_src_topic_attr_setopt(lbm_src_topic_attr_t *attr, const char *optname,
7231  const void *optval, size_t optlen);
7232 
7246 LBMExpDLL int lbm_src_topic_attr_str_setopt(lbm_src_topic_attr_t *attr, const char *optname,
7247  const char *optval);
7248 
7258 LBMExpDLL int lbm_src_topic_attr_getopt(lbm_src_topic_attr_t *attr, const char *optname,
7259  void *optval, size_t *optlen);
7260 
7270 LBMExpDLL int lbm_src_topic_attr_str_getopt(lbm_src_topic_attr_t *attr, const char *optname,
7271  char *optval, size_t *optlen);
7272 
7289 LBMExpDLL int lbm_rcv_topic_lookup(lbm_topic_t **topicp, lbm_context_t *ctx,
7290  const char *symbol, const lbm_rcv_topic_attr_t *attr);
7291 
7299 LBMExpDLL int lbm_rcv_topic_dump(lbm_rcv_t *rcv, int *size, lbm_config_option_t *opts);
7300 
7308 LBMExpDLL int lbm_rcv_topic_attr_dump(lbm_rcv_topic_attr_t *rattr, int *size, lbm_config_option_t *opts);
7309 
7316 LBMExpDLL int lbm_rcv_topic_attr_option_size(void);
7317 
7330 LBMExpDLL int lbm_rcv_topic_attr_create(lbm_rcv_topic_attr_t * * attr);
7331 
7342 
7365 LBMExpDLL int lbm_rcv_topic_attr_create_from_xml(lbm_rcv_topic_attr_t * * attr, const char * context_name, const char * topicname);
7366 
7383 LBMExpDLL int lbm_rcv_topic_attr_set_from_xml(lbm_rcv_topic_attr_t * attr, const char * context_name, const char * topicname);
7384 
7392 LBMExpDLL int lbm_rcv_topic_attr_delete(lbm_rcv_topic_attr_t *attr);
7393 
7403 LBMExpDLL int lbm_rcv_topic_attr_dup(lbm_rcv_topic_attr_t * * attr, const lbm_rcv_topic_attr_t * original);
7404 
7419 LBMExpDLL int lbm_rcv_topic_attr_setopt(lbm_rcv_topic_attr_t *attr, const char *optname,
7420  const void *optval, size_t optlen);
7421 
7435 LBMExpDLL int lbm_rcv_topic_attr_str_setopt(lbm_rcv_topic_attr_t *attr, const char *optname,
7436  const char *optval);
7437 
7448 LBMExpDLL int lbm_rcv_topic_attr_getopt(lbm_rcv_topic_attr_t *attr, const char *optname,
7449  void *optval, size_t *optlen);
7450 
7461 LBMExpDLL int lbm_rcv_topic_attr_str_getopt(lbm_rcv_topic_attr_t *attr, const char *optname,
7462  char *optval, size_t *optlen);
7463 
7474 LBMExpDLL int lbm_src_channel_create(lbm_src_channel_info_t **chnp, lbm_src_t *src, lbm_uint32_t channel_num);
7475 
7482 
7499 LBMExpDLL int lbm_src_create(lbm_src_t **srcp, lbm_context_t *ctx, lbm_topic_t *topic, lbm_src_cb_proc proc,
7500  void *clientd, lbm_event_queue_t *evq);
7501 
7523 LBMExpDLL int lbm_ssrc_create(lbm_ssrc_t **ssrcp, lbm_context_t *ctx, lbm_topic_t *topic, lbm_ssrc_cb_proc proc,
7524  void *clientd, lbm_event_queue_t *evq);
7525 
7533 LBMExpDLL int lbm_event_queue_dump(lbm_event_queue_t *evq, int *size, lbm_config_option_t *opts);
7534 
7542 LBMExpDLL int lbm_event_queue_attr_dump(lbm_event_queue_attr_t *eattr, int *size, lbm_config_option_t *opts);
7543 
7550 LBMExpDLL int lbm_event_queue_attr_option_size(void);
7551 
7571 LBMExpDLL int lbm_rcv_create(lbm_rcv_t **rcvp, lbm_context_t *ctx, lbm_topic_t *topic,
7572  lbm_rcv_cb_proc proc, void *clientd, lbm_event_queue_t *evq);
7573 
7595 LBMExpDLL int lbm_rcv_subscribe_channel(lbm_rcv_t *rcv, lbm_uint32_t channel, lbm_rcv_cb_proc proc, void *clientd);
7596 
7605 LBMExpDLL int lbm_rcv_unsubscribe_channel(lbm_rcv_t *rcv, lbm_uint32_t channel);
7606 
7618 LBMExpDLL int lbm_rcv_unsubscribe_channel_ex(lbm_rcv_t *rcv, lbm_uint32_t channel, lbm_event_queue_cancel_cb_info_t *cbinfo);
7619 
7636 LBMExpDLL int lbm_wildcard_rcv_subscribe_channel(lbm_wildcard_rcv_t *wrcv, lbm_uint32_t channel, lbm_rcv_cb_proc proc, void *clientd);
7637 
7646 LBMExpDLL int lbm_wildcard_rcv_unsubscribe_channel(lbm_wildcard_rcv_t *wrcv, lbm_uint32_t channel);
7647 
7659 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);
7660 
7678 LBMExpDLL int lbm_src_delete(lbm_src_t *src);
7679 
7698 LBMExpDLL int lbm_ssrc_delete(lbm_ssrc_t *ssrc);
7699 
7719 LBMExpDLL int lbm_src_delete_ex(lbm_src_t *src, lbm_event_queue_cancel_cb_info_t *cbinfo);
7720 
7734 LBMExpDLL int lbm_ssrc_get_available_data_space(lbm_ssrc_t *ssrc, int *length);
7735 
7741 LBMExpDLL lbm_context_t * lbm_context_from_src(lbm_src_t * src);
7742 
7748 LBMExpDLL lbm_topic_t * lbm_topic_from_src(lbm_src_t * src);
7749 
7756 
7770 LBMExpDLL int lbm_rcv_delete(lbm_rcv_t *rcv);
7771 
7786 LBMExpDLL int lbm_rcv_delete_ex(lbm_rcv_t *rcv, lbm_event_queue_cancel_cb_info_t *cbinfo);
7787 
7793 LBMExpDLL lbm_context_t * lbm_context_from_rcv(lbm_rcv_t * rcv);
7794 
7801 
7815 LBMExpDLL int lbm_src_setopt(lbm_src_t *src, const char *optname, const void *optval, size_t optlen);
7816 
7829 LBMExpDLL int lbm_src_str_setopt(lbm_src_t *src, const char *optname, const char *optval);
7830 
7841 LBMExpDLL int lbm_src_getopt(lbm_src_t *src, const char *optname, void *optval, size_t *optlen);
7842 
7853 LBMExpDLL int lbm_src_str_getopt(lbm_src_t *src, const char *optname, char *optval, size_t *optlen);
7854 
7868 LBMExpDLL int lbm_rcv_setopt(lbm_rcv_t *rcv, const char *optname, const void *optval, size_t optlen);
7869 
7882 LBMExpDLL int lbm_rcv_str_setopt(lbm_rcv_t *rcv, const char *optname, const char *optval);
7883 
7894 LBMExpDLL int lbm_rcv_getopt(lbm_rcv_t *rcv, const char *optname, void *optval, size_t *optlen);
7895 
7906 LBMExpDLL int lbm_rcv_str_getopt(lbm_rcv_t *rcv, const char *optname, char *optval, size_t *optlen);
7907 
7908 /* Send Routines */
7909 
7942 LBMExpDLL int lbm_src_send(lbm_src_t *src, const char *msg, size_t len, int flags);
7943 
7971 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);
7972 
7992 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);
7993 
8005 LBMExpDLL int lbm_src_flush(lbm_src_t *src);
8006 
8019 LBMExpDLL int lbm_flush_all(lbm_context_t *ctx);
8020 
8052 LBMExpDLL int lbm_src_sendv(lbm_src_t *src, const lbm_iovec_t *iov, int num, int flags);
8053 
8084 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);
8085 
8093 LBMExpDLL int lbm_rcv_msg_source_clientd(lbm_rcv_t *rcv, const char *source, void *source_clientd);
8094 
8103 LBMExpDLL int lbm_src_send_lbmmon_stats(lbm_src_t *src, char *msg, size_t len, int lbmmon_type);
8104 
8118 
8135 
8141 LBMExpDLL int lbm_src_reset_transport_stats(lbm_src_t *src);
8142 
8151 LBMExpDLL int lbm_ssrc_reset_transport_stats(lbm_ssrc_t *ssrc);
8152 
8166 LBMExpDLL int lbm_rcv_retrieve_transport_stats(lbm_rcv_t *rcv, const char *source, lbm_rcv_transport_stats_t *stats);
8167 
8174 LBMExpDLL int lbm_rcv_reset_transport_stats(lbm_rcv_t *rcv, const char *source);
8175 
8199 LBMExpDLL int lbm_rcv_retrieve_all_transport_stats(lbm_rcv_t *rcv, int *num, lbm_rcv_transport_stats_t *stats);
8200 
8222 LBMExpDLL int lbm_rcv_retrieve_all_transport_stats_ex(lbm_rcv_t *rcv, int *num, int size, lbm_rcv_transport_stats_t *stats);
8223 
8224 #ifndef LBM_INTERNAL_USE_ONLY
8225 #define lbm_rcv_retrieve_all_transport_stats(r,n,s) \
8226  lbm_rcv_retrieve_all_transport_stats_ex(r,n,sizeof(lbm_rcv_transport_stats_t),s)
8227 #endif
8228 
8234 LBMExpDLL int lbm_rcv_reset_all_transport_stats(lbm_rcv_t *rcv);
8235 
8260 
8282 LBMExpDLL int lbm_context_retrieve_rcv_transport_stats_ex(lbm_context_t *ctx, int *num, int size, lbm_rcv_transport_stats_t *stats);
8283 
8284 #ifndef LBM_INTERNAL_USE_ONLY
8285 #define lbm_context_retrieve_rcv_transport_stats(c,n,s) \
8286  lbm_context_retrieve_rcv_transport_stats_ex(c,n,sizeof(lbm_rcv_transport_stats_t),s)
8287 #endif
8288 
8295 
8320 
8342 LBMExpDLL int lbm_context_retrieve_src_transport_stats_ex(lbm_context_t *ctx, int *num, int size, lbm_src_transport_stats_t *stats);
8343 
8344 #ifndef LBM_INTERNAL_USE_ONLY
8345 #define lbm_context_retrieve_src_transport_stats(c,n,s) \
8346  lbm_context_retrieve_src_transport_stats_ex(c,n,sizeof(lbm_src_transport_stats_t),s)
8347 #endif
8348 
8355 
8374 
8386 
8400 
8406 LBMExpDLL int lbm_context_reset_stats(lbm_context_t *ctx);
8407 
8428 LBMExpDLL int lbm_context_retrieve_im_src_transport_stats(lbm_context_t *ctx, int *num, int size, lbm_src_transport_stats_t *stats);
8429 
8436 
8457 LBMExpDLL int lbm_context_retrieve_im_rcv_transport_stats(lbm_context_t *ctx, int *num, int size, lbm_rcv_transport_stats_t *stats);
8458 
8465 
8483 LBMExpDLL int lbm_context_set_nak_cutoff(lbm_context_t *ctx, int flags);
8484 
8507 LBMExpDLL int lbm_msg_retain(lbm_msg_t *msg);
8508 
8525 LBMExpDLL int lbm_msg_is_fragment(lbm_msg_t *msg);
8526 
8544 
8554 
8561 LBMExpDLL int lbm_msg_retrieve_msgid(lbm_msg_t *msg, lbm_umq_msgid_t *id);
8562 
8569 LBMExpDLL int lbm_msg_retrieve_umq_index(lbm_msg_t *msg, lbm_umq_index_info_t *info);
8570 
8572 LBMExpDLL int lbm_msg_retrieve_delivery_latency(lbm_msg_t *msg, lbm_int64_t *latency_nsecs);
8573 
8595 LBMExpDLL int lbm_msg_delete(lbm_msg_t *msg);
8596 
8615 LBMExpDLL int lbm_msg_ume_send_explicit_ack(lbm_msg_t *msg);
8616 
8622 LBMExpDLL int lbm_msg_ume_can_send_explicit_ack(lbm_msg_t *msg);
8623 
8634 LBMExpDLL int lbm_src_ume_deregister(lbm_src_t *src);
8635 
8648 LBMExpDLL int lbm_ssrc_ume_deregister(lbm_ssrc_t *ssrc);
8649 
8658 LBMExpDLL int lbm_rcv_ume_deregister(lbm_rcv_t *rcv);
8659 
8668 LBMExpDLL int lbm_wrcv_ume_deregister(lbm_wildcard_rcv_t *wrcv);
8669 
8677 LBMExpDLL int lbm_msg_umq_reassign(lbm_msg_t *msg, int flags);
8678 
8686 LBMExpDLL int lbm_rcv_umq_deregister(lbm_rcv_t *rcv, const char *queue_name);
8687 
8698 LBMExpDLL int lbm_rcv_umq_index_stop_assignment(lbm_rcv_t *rcv, const char *queue_name);
8699 
8706 LBMExpDLL int lbm_rcv_umq_index_start_assignment(lbm_rcv_t *rcv, const char *queue_name);
8707 
8720 LBMExpDLL int lbm_rcv_umq_index_reserve(lbm_rcv_t *rcv, const char *queue_name, lbm_umq_index_info_t *index_info);
8721 
8731 LBMExpDLL int lbm_rcv_umq_index_release(lbm_rcv_t *rcv, const char *queue_name, lbm_umq_index_info_t *index_info);
8732 
8743 LBMExpDLL int lbm_wildcard_rcv_umq_index_stop_assignment(lbm_wildcard_rcv_t *wrcv, const char *queue_name);
8744 
8751 LBMExpDLL int lbm_wildcard_rcv_umq_index_start_assignment(lbm_wildcard_rcv_t *wrcv, const char *queue_name);
8752 
8762 LBMExpDLL int lbm_wildcard_rcv_umq_index_release(lbm_wildcard_rcv_t *wrcv, const char *queue_name, lbm_umq_index_info_t *index_info);
8763 
8770 LBMExpDLL int lbm_wildcard_rcv_umq_deregister(lbm_wildcard_rcv_t *wrcv, const char *queue_name);
8771 
8804 LBMExpDLL int lbm_send_response(lbm_response_t *resp, const char *data, size_t len, int flags);
8805 
8822 LBMExpDLL int lbm_response_delete(lbm_response_t *resp);
8823 
8824 
8834 LBMExpDLL int lbm_serialized_response_delete(lbm_serialized_response_t* serialized_response);
8835 
8836 
8847 
8864 
8896 LBMExpDLL int lbm_send_request(lbm_request_t **reqp, lbm_src_t *src, const char *data,
8897  size_t len, lbm_request_cb_proc proc, void *clientd, lbm_event_queue_t *evq,
8898  int send_flags);
8899 
8932 LBMExpDLL int lbm_send_request_ex(lbm_request_t **reqp, lbm_src_t *src, const char *data,
8933  size_t len, lbm_request_cb_proc proc, void *clientd, lbm_event_queue_t *evq,
8934  int send_flags, lbm_src_send_ex_info_t *exinfo);
8935 
8972 LBMExpDLL int lbm_ssrc_send_request_ex(lbm_request_t **reqp, lbm_ssrc_t *ssrc, const char *usr_bufp,
8973  size_t len, lbm_request_cb_proc proc, void *clientd, lbm_event_queue_t *evq,
8974  int send_flags, lbm_ssrc_send_ex_info_t *exinfo);
8975 
8991 LBMExpDLL int lbm_request_delete(lbm_request_t *req);
8992 
9010 
9028  void *clientd, const lbm_event_queue_attr_t *attr);
9029 
9043 LBMExpDLL int lbm_event_queue_attr_create(lbm_event_queue_attr_t * * attr);
9044 
9055 
9079 LBMExpDLL int lbm_event_queue_attr_create_from_xml(lbm_event_queue_attr_t * * attr, const char * event_queue_name);
9080 
9096 LBMExpDLL int lbm_event_queue_attr_set_from_xml(lbm_event_queue_attr_t * attr, const char * event_queue_name);
9097 
9106 
9117 LBMExpDLL int lbm_event_queue_attr_dup(lbm_event_queue_attr_t * * attr, const lbm_event_queue_attr_t * original);
9118 
9133 LBMExpDLL int lbm_event_queue_attr_setopt(lbm_event_queue_attr_t *attr, const char *optname,
9134  const void *optval, size_t optlen);
9135 
9149 LBMExpDLL int lbm_event_queue_attr_str_setopt(lbm_event_queue_attr_t *attr, const char *optname,
9150  const char *optval);
9151 
9161 LBMExpDLL int lbm_event_queue_attr_getopt(lbm_event_queue_attr_t *attr, const char *optname,
9162  void *optval, size_t *optlen);
9163 
9174 LBMExpDLL int lbm_event_queue_attr_str_getopt(lbm_event_queue_attr_t *attr, const char *optname,
9175  char *optval, size_t *optlen);
9176 
9190 LBMExpDLL int lbm_event_queue_setopt(lbm_event_queue_t *evq, const char *optname, const void *optval, size_t optlen);
9191 
9204 LBMExpDLL int lbm_event_queue_str_setopt(lbm_event_queue_t *evq, const char *optname, const char *optval);
9205 
9216 LBMExpDLL int lbm_event_queue_getopt(lbm_event_queue_t *evq, const char *optname, void *optval, size_t *optlen);
9217 
9228 LBMExpDLL int lbm_event_queue_str_getopt(lbm_event_queue_t *evq, const char *optname, char *optval, size_t *optlen);
9229 
9247 LBMExpDLL int lbm_event_dispatch(lbm_event_queue_t *evq, lbm_ulong_t tmo);
9248 
9263 LBMExpDLL int lbm_event_dispatch_unblock(lbm_event_queue_t *evq);
9264 
9278 LBMExpDLL int lbm_event_queue_size(lbm_event_queue_t *evq);
9279 
9291 LBMExpDLL int lbm_event_queue_shutdown(lbm_event_queue_t *evq);
9292 
9312 LBMExpDLL int lbm_event_queue_delete(lbm_event_queue_t *evq);
9313 
9380 LBMExpDLL int lbm_unicast_immediate_message(lbm_context_t *ctx, const char *target, const char *topic,
9381  const char *data, size_t len, int flags);
9382 
9447 LBMExpDLL int lbm_unicast_immediate_request(lbm_request_t **reqp, lbm_context_t *ctx, const char *target,
9448  const char *topic, const char *data, size_t len,
9449  lbm_request_cb_proc proc, void *clientd,
9450  lbm_event_queue_t *evq, int flags);
9451 
9468 LBMExpDLL int lbm_queue_immediate_message(lbm_context_t *ctx, const char *qname, const char *topic, const char *data,
9469  size_t len, int flags, lbm_src_send_ex_info_t *info);
9470 
9505 LBMExpDLL int lbm_multicast_immediate_message(lbm_context_t *ctx, const char *topic,
9506  const char *data, size_t len, int flags);
9507 
9539  const char *topic, const char *data,
9540  size_t len, lbm_request_cb_proc proc,
9541  void *clientd, lbm_event_queue_t *evq,
9542  int flags);
9543 
9551 LBMExpDLL int lbm_wildcard_rcv_dump(lbm_wildcard_rcv_t *wrcv, int *size, lbm_config_option_t *opts);
9552 
9560 LBMExpDLL int lbm_wildcard_rcv_attr_dump(lbm_wildcard_rcv_attr_t *wattr, int *size, lbm_config_option_t *opts);
9561 
9568 LBMExpDLL int lbm_wildcard_rcv_attr_option_size(void);
9569 
9570 
9583 
9594 
9618 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);
9619 
9637 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);
9638 
9647 
9658 LBMExpDLL int lbm_wildcard_rcv_attr_dup(lbm_wildcard_rcv_attr_t * * attr, const lbm_wildcard_rcv_attr_t * original);
9659 
9674 LBMExpDLL int lbm_wildcard_rcv_attr_setopt(lbm_wildcard_rcv_attr_t *attr, const char *optname,
9675  const void *optval, size_t optlen);
9676 
9690 LBMExpDLL int lbm_wildcard_rcv_attr_str_setopt(lbm_wildcard_rcv_attr_t *attr, const char *optname,
9691  const char *optval);
9692 
9702 LBMExpDLL int lbm_wildcard_rcv_attr_getopt(lbm_wildcard_rcv_attr_t *attr, const char *optname,
9703  void *optval, size_t *optlen);
9704 
9715 LBMExpDLL int lbm_wildcard_rcv_attr_str_getopt(lbm_wildcard_rcv_attr_t *attr, const char *optname,
9716  char *optval, size_t *optlen);
9717 
9731 LBMExpDLL int lbm_wildcard_rcv_setopt(lbm_wildcard_rcv_t *wrcv, const char *optname, const void *optval, size_t optlen);
9732 
9745 LBMExpDLL int lbm_wildcard_rcv_str_setopt(lbm_wildcard_rcv_t *wrcv, const char *optname, const char *optval);
9746 
9757 LBMExpDLL int lbm_wildcard_rcv_getopt(lbm_wildcard_rcv_t *wrcv, const char *optname, void *optval, size_t *optlen);
9758 
9769 LBMExpDLL int lbm_wildcard_rcv_str_getopt(lbm_wildcard_rcv_t *wrcv, const char *optname, char *optval, size_t *optlen);
9770 
9797 LBMExpDLL int lbm_wildcard_rcv_create(lbm_wildcard_rcv_t **wrcvp, lbm_context_t *ctx, const char *pattern,
9798  const lbm_rcv_topic_attr_t *tattr, const lbm_wildcard_rcv_attr_t *wattr,
9799  lbm_rcv_cb_proc proc, void *clientd, lbm_event_queue_t *evq);
9800 
9814 LBMExpDLL int lbm_wildcard_rcv_delete(lbm_wildcard_rcv_t *wrcv);
9815 
9832 
9840 
9848 
9868 LBMExpDLL int lbm_hf_src_create(lbm_src_t **srcp, lbm_context_t *ctx, lbm_topic_t *topic, lbm_src_cb_proc proc,
9869  void *clientd, lbm_event_queue_t *evq);
9870 
9902 LBMExpDLL int lbm_hf_src_send(lbm_src_t *src, const char *msg, size_t len, lbm_uint_t sqn, int flags);
9903 
9936 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);
9937 
9973 LBMExpDLL int lbm_hf_src_sendv(lbm_src_t *src, const lbm_iovec_t *iov, int num, lbm_uint_t sqn, int flags);
9974 
9982 LBMExpDLL int lbm_hf_rcv_topic_dump(lbm_hf_rcv_t *hfrcv,
9983  int *size,
9984  lbm_config_option_t *opts);
9985 
10023 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);
10024 
10059 LBMExpDLL int lbm_hf_src_send_rcv_reset(lbm_src_t * src, int flags, lbm_src_send_ex_info_t * exinfo);
10060 
10079 LBMExpDLL int lbm_hf_rcv_create(lbm_hf_rcv_t **hfrcvp, lbm_context_t *ctx, lbm_topic_t *topic, lbm_rcv_cb_proc proc,
10080  void *clientd, lbm_event_queue_t *evq);
10081 
10095 LBMExpDLL int lbm_hf_rcv_delete(lbm_hf_rcv_t *hfrcv);
10096 
10112 
10118 LBMExpDLL lbm_hf_rcv_t *lbm_hf_rcv_from_rcv(lbm_rcv_t *rcv);
10119 
10125 LBMExpDLL lbm_rcv_t *lbm_rcv_from_hf_rcv(lbm_hf_rcv_t *hfrcv);
10126 
10127 
10135 LBMExpDLL int lbm_hfx_dump(lbm_hfx_t *hfx, int *size, lbm_config_option_t *opts);
10136 
10144 LBMExpDLL int lbm_hfx_attr_dump(lbm_hfx_attr_t *attr, int *size, lbm_config_option_t *opts);
10145 
10152 LBMExpDLL int lbm_hfx_attr_option_size(void);
10153 
10166 LBMExpDLL int lbm_hfx_attr_create(lbm_hfx_attr_t **attr);
10167 
10168 
10187 LBMExpDLL int lbm_hfx_attr_create_from_xml(lbm_hfx_attr_t * * attr, const char * topicname);
10188 
10201 LBMExpDLL int lbm_hfx_attr_set_from_xml(lbm_hfx_attr_t * attr, const char * topicname);
10202 
10210 LBMExpDLL int lbm_hfx_attr_delete(lbm_hfx_attr_t *attr);
10211 
10212 
10213 
10228 LBMExpDLL int lbm_hfx_attr_setopt(lbm_hfx_attr_t *attr, const char *optname,
10229  const void *optval, size_t optlen);
10230 
10244 LBMExpDLL int lbm_hfx_attr_str_setopt(lbm_hfx_attr_t *attr, const char *optname,
10245  const char *optval);
10246 
10257 LBMExpDLL int lbm_hfx_attr_getopt(lbm_hfx_attr_t *attr, const char *optname,
10258  void *optval, size_t *optlen);
10259 
10270 LBMExpDLL int lbm_hfx_attr_str_getopt(lbm_hfx_attr_t *attr, const char *optname,
10271  char *optval, size_t *optlen);
10272 
10286 LBMExpDLL int lbm_hfx_setopt(lbm_hfx_t *hfx, const char *optname, const void *optval, size_t optlen);
10287 
10300 LBMExpDLL int lbm_hfx_str_setopt(lbm_hfx_t *hfx, const char *optname, const char *optval);
10301 
10312 LBMExpDLL int lbm_hfx_getopt(lbm_hfx_t *hfx, const char *optname, void *optval, size_t *optlen);
10313 
10324 LBMExpDLL int lbm_hfx_str_getopt(lbm_hfx_t *hfx, const char *optname, char *optval, size_t *optlen);
10325 
10341 LBMExpDLL int lbm_hfx_create(lbm_hfx_t **hfxp,
10342  lbm_hfx_attr_t *cattr,
10343  const char *symbol,
10344  lbm_rcv_cb_proc proc,
10345  lbm_event_queue_t *evq);
10346 
10354 LBMExpDLL int lbm_hfx_delete(lbm_hfx_t *hfx);
10355 
10375 LBMExpDLL int lbm_hfx_delete_ex(lbm_hfx_t *hfx, lbm_event_queue_cancel_cb_info_t *cbinfo);
10376 
10384 LBMExpDLL int lbm_hfx_rcv_topic_dump(lbm_hfx_rcv_t *hfxrcv,
10385  int *size,
10386  lbm_config_option_t *opts);
10387 
10400 LBMExpDLL int lbm_hfx_rcv_create(lbm_hfx_rcv_t **hfrcvp,
10401  lbm_hfx_t *hfx,
10402  lbm_context_t *ctx,
10403  lbm_rcv_topic_attr_t *rattr,
10404  void *clientd);
10405 
10409 LBMExpDLL lbm_rcv_t *lbm_rcv_from_hfx_rcv(lbm_hfx_rcv_t *hfxrcv);
10410 
10418 LBMExpDLL int lbm_hfx_rcv_delete(lbm_hfx_rcv_t *hfrcv);
10419 
10441 
10448 LBMExpDLL void lbm_debug_filename(const char *filename);
10449 
10456 LBMExpDLL void lbm_debug_mask(lbm_uint64_t mask);
10457 
10462 LBMExpDLL void lbm_debugfile_maxsize(lbm_uint64_t size);
10463 
10469 LBMExpDLL void lbm_debugfile_max_rollover(lbm_uint32_t size);
10470 
10474 LBMExpDLL void lbm_debug_noflush(int on);
10475 
10483 LBMExpDLL void lbm_log_debug(int on);
10484 
10490 LBMExpDLL int lbm_debug_dump(const char *filename, int append);
10491 
10496 LBMExpDLL void lbm_debug_ring_buffer(size_t maxsz);
10497 
10502 LBMExpDLL void lbm_debug_ring_buffer_walltime(int use);
10503 
10510 LBMExpDLL void lbm_set_uim_loss_rate(int rate);
10511 
10518 LBMExpDLL void lbm_set_lbtrm_loss_rate(int rate);
10519 
10526 LBMExpDLL void lbm_set_lbtrm_src_loss_rate(int rate);
10527 
10534 LBMExpDLL void lbm_set_lbtru_loss_rate(int rate);
10535 
10542 LBMExpDLL void lbm_set_lbtru_src_loss_rate(int rate);
10543 
10554 LBMExpDLL int lbm_transport_source_parse(const char *source, lbm_transport_source_info_t *info, size_t infosize);
10555 
10567 LBMExpDLL int lbm_transport_source_format(const lbm_transport_source_info_t *info, size_t infosize, char *source, size_t *size);
10568 
10570 struct lbm_apphdr_chain_iter_t_stct;
10572 typedef struct lbm_apphdr_chain_iter_t_stct lbm_apphdr_chain_iter_t;
10573 
10580  lbm_uchar_t type;
10582  lbm_ushort_t subtype;
10584  size_t len;
10586  void *data;
10588 
10598 LBMExpDLL int lbm_apphdr_chain_create(lbm_apphdr_chain_t **chain);
10599 
10608 LBMExpDLL int lbm_apphdr_chain_delete(lbm_apphdr_chain_t *chain);
10609 
10620 
10631 LBMExpDLL int lbm_apphdr_chain_iter_create(lbm_apphdr_chain_iter_t **chain_iter, lbm_apphdr_chain_t *chain);
10632 
10644 
10655 LBMExpDLL int lbm_apphdr_chain_iter_delete(lbm_apphdr_chain_iter_t *chain_iter);
10656 
10666 LBMExpDLL int lbm_apphdr_chain_iter_first(lbm_apphdr_chain_iter_t **chain_iter);
10667 
10677 LBMExpDLL int lbm_apphdr_chain_iter_done(lbm_apphdr_chain_iter_t **chain_iter);
10678 
10688 LBMExpDLL int lbm_apphdr_chain_iter_next(lbm_apphdr_chain_iter_t **chain_iter);
10689 
10700 
10701 
10714  const char *name;
10716  char *data;
10718  size_t size;
10724  int type;
10726 
10740 LBMExpDLL int lbm_msg_properties_create(lbm_msg_properties_t **properties);
10741 
10753 LBMExpDLL int lbm_msg_properties_delete(lbm_msg_properties_t *properties);
10754 
10773 LBMExpDLL int lbm_msg_properties_set(lbm_msg_properties_t *properties, const char *name, const void *value, int type, size_t size);
10774 
10786 LBMExpDLL int lbm_msg_properties_clear(lbm_msg_properties_t *properties, const char *name);
10787 
10812 LBMExpDLL int lbm_msg_properties_get(lbm_msg_properties_t *properties, const char *name, void *value, int *type, size_t *size);
10813 
10830 
10840 
10852 
10867 
10885 LBMExpDLL int lbm_src_get_inflight(lbm_src_t *src, int type, int *inflight, lbm_flight_size_set_inflight_cb_proc proc, void *clientd);
10886 
10904 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);
10905 
10924 LBMExpDLL int lbm_ssrc_get_inflight(lbm_ssrc_t *ssrc, int type, int *inflight, lbm_flight_size_set_inflight_cb_proc proc, void *clientd);
10925 
10944 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);
10945 
10957 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);
10958 
10966 LBMExpDLL int lbm_ume_src_msg_stable(lbm_src_t *src, lbm_uint32_t sqn);
10967 
10978 LBMExpDLL int lbm_umq_ctx_msg_stable(lbm_context_t *ctx, const char *qname, lbm_umq_msgid_t *msg_id);
10979 
10995 
11006 LBMExpDLL int lbm_ume_ack_delete(lbm_ume_rcv_ack_t *ack);
11007 
11019 LBMExpDLL int lbm_ume_ack_send_explicit_ack(lbm_ume_rcv_ack_t *ack, lbm_uint_t sqn);
11020 
11029 LBMExpDLL int lbm_ume_ack_mark_not_outstanding(lbm_ume_rcv_ack_t *ack, lbm_uint_t sqn);
11030 
11047 LBMExpDLL int lbm_ctx_umq_queue_topic_list(lbm_context_t *ctx, const char *queue_name, lbm_async_operation_func_t *async_opfunc);
11048 
11050 struct lbm_umq_msg_selector_t_stct;
11052 typedef struct lbm_umq_msg_selector_t_stct lbm_umq_msg_selector_t;
11053 
11060 LBMExpDLL int lbm_umq_msg_selector_create(lbm_umq_msg_selector_t **selector, char* str, lbm_uint16_t len);
11061 
11065 LBMExpDLL int lbm_umq_msg_selector_delete(lbm_umq_msg_selector_t *selector);
11066 
11083 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);
11084 
11110 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);
11111 
11127 LBMExpDLL int lbm_async_operation_status(lbm_async_operation_handle_t handle, int flags);
11128 
11153 LBMExpDLL int lbm_async_operation_cancel(lbm_async_operation_handle_t handle, int flags);
11154 
11156 typedef int (*lbm_cred_callback_fn)(const char* name, size_t name_len, const char* passwd, size_t passwd_len, void *clientd);
11157 
11172 LBMExpDLL int lbm_auth_set_credentials(lbm_context_t *ctx,
11173  const char* name, size_t name_len,
11174  const char* passwd, size_t passwd_len,
11175  lbm_cred_callback_fn cbfn, void *clientd,
11176  int auth_required);
11177 
11187 LBMExpDLL int lbm_authstorage_open_storage_xml(char *filename);
11188 
11195 LBMExpDLL void lbm_authstorage_close_storage_xml(void);
11196 
11205 LBMExpDLL int lbm_authstorage_checkpermission(char *username, char* command);
11206 
11217 LBMExpDLL int lbm_authstorage_addtpnam(const char* username, const char* pass, unsigned char flags);
11218 
11226 LBMExpDLL int lbm_authstorage_deltpnam(const char* username);
11227 
11236 LBMExpDLL int lbm_authstorage_user_add_role(const char* username, const char* role);
11237 
11246 LBMExpDLL int lbm_authstorage_user_del_role(const char *username, const char* role);
11247 
11254 LBMExpDLL int lbm_authstorage_load_roletable(void);
11255 
11262 LBMExpDLL int lbm_authstorage_unload_roletable(void);
11263 
11272 LBMExpDLL int lbm_authstorage_roletable_add_role_action(const char* rolename, const char* action);
11273 
11281 LBMExpDLL int lbm_authstorage_print_roletable(void);
11282 
11287 typedef struct lbm_umm_info_t_stct {
11289  char username[LBM_UMM_USER_NAME_LENGTH_MAX];
11291  char password[LBM_UMM_PASSWORD_LENGTH_MAX];
11293  char appname[LBM_UMM_APP_NAME_LENGTH_MAX];
11295  char servers[LBM_UMM_NUM_SERVERS_MAX][LBM_UMM_SERVER_LENGTH_MAX];
11298  lbm_uint32_t flags;
11300  char * cert_file;
11303 } lbm_umm_info_t;
11304 
11314 LBMExpDLL int lbm_set_umm_info(lbm_umm_info_t * info);
11315 
11320 LBMExpDLL int lbm_is_ume_capable(void);
11321 
11326 LBMExpDLL int lbm_is_umq_capable(void);
11327 
11328 /* internal error management function(s) */
11330 LBMExpDLL void lbm_seterr(int eno, const char *str);
11332 LBMExpDLL void lbm_seterrf(int eno, const char *format, ...);
11334 LBMExpDLL const char *lbm_strerror(void);
11336 LBMExpDLL const char *lbm_strerror_errnum(int errnum);
11337 
11339 LBMExpDLL void lbm_sock_init(void);
11344 LBMExpDLL lbm_uint64_t lbm_create_random_id(void);
11349 LBMExpDLL char * lbm_get_jms_msg_id(lbm_uint64_t source_id, lbm_uint64_t seqno_id, char *topic);
11350 
11361 LBMExpDLL int lbm_src_buff_acquire(lbm_src_t * const src, void ** const bufp, const size_t len, const int flags);
11362 
11370 LBMExpDLL int lbm_src_buffs_complete(lbm_src_t * const src);
11371 
11385 LBMExpDLL int lbm_src_buffs_complete_and_acquire(lbm_src_t * const src, void ** const bufp, const size_t len, const int flags);
11386 
11396 LBMExpDLL int lbm_src_buffs_cancel(lbm_src_t * const src);
11397 
11424 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);
11425 
11438 LBMExpDLL int lbm_ssrc_buff_get(lbm_ssrc_t * const ssrc, char ** const usr_bufp, const int flags);
11439 
11449 LBMExpDLL int lbm_ssrc_buff_put(lbm_ssrc_t * const ssrc, const char * usr_bufp);
11450 
11452 struct lbm_xsp_t_stct;
11457 typedef struct lbm_xsp_t_stct lbm_xsp_t;
11458 
11460 struct lbm_xsp_attr_t_stct;
11467 typedef struct lbm_xsp_attr_t_stct lbm_xsp_attr_t;
11468 
11475 LBMExpDLL int lbm_xsp_attr_option_size(void);
11476 
11490 LBMExpDLL int lbm_xsp_attr_create(lbm_xsp_attr_t **attr);
11491 
11501 LBMExpDLL int lbm_xsp_attr_delete(lbm_xsp_attr_t *attr);
11502 
11519 LBMExpDLL int lbm_xsp_attr_setopt(lbm_xsp_attr_t *attr, const char *optname, const void *optval, size_t optlen);
11520 
11536 LBMExpDLL int lbm_xsp_attr_str_setopt(lbm_xsp_attr_t *attr, const char *optname, const char *optval);
11537 
11550 LBMExpDLL int lbm_xsp_attr_getopt(lbm_xsp_attr_t *attr, const char *optname, void *optval, size_t *optlen);
11551 
11564 LBMExpDLL int lbm_xsp_attr_str_getopt(lbm_xsp_attr_t *attr, const char *optname, char *optval, size_t *optlen);
11565 
11580 typedef int (*lbm_xsp_zero_transports_cb_proc)(lbm_xsp_t *xsp, void *clientd);
11581 
11594  void *clientd;
11596 
11613 LBMExpDLL int lbm_xsp_create(lbm_xsp_t **xspp, lbm_context_t *ctx, lbm_context_attr_t *cattr, lbm_xsp_attr_t *attr);
11614 
11626 LBMExpDLL int lbm_xsp_delete(lbm_xsp_t *xsp);
11627 
11656 LBMExpDLL int lbm_xsp_process_events(lbm_xsp_t *xsp, lbm_ulong_t msec);
11657 
11668 LBMExpDLL int lbm_xsp_unblock(lbm_xsp_t *xsp);
11669 
11692 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);
11693 
11710 LBMExpDLL int lbm_xsp_cancel_fd(lbm_xsp_t *xsp, lbm_handle_t handle, lbm_ulong_t ev);
11711 
11720  int flags;
11724  char source[LBM_MSG_MAX_SOURCE_LEN];
11726 
11742 typedef lbm_xsp_t *(*lbm_transport_mapping_cb_proc)(lbm_context_t *ctx, lbm_new_transport_info_t *info, void *clientd);
11743 
11757  void *clientd;
11759 
11761 LBMExpDLL void lbm_set_benign_error_flag(void);
11763 LBMExpDLL void lbm_clr_benign_error_flag(void);
11765 LBMExpDLL int lbm_get_benign_error_flag(void);
11766 
11767 #if defined(__cplusplus)
11768 }
11769 #endif /* __cplusplus */
11770 
11771 #endif /* LBM_H */
lbm_ulong_t lbm_msgs_rcved
Number of messages received over an LBT-SMX transport. (Cumulative)
Definition: lbm.h:5181
struct lbm_src_transport_stats_lbtrm_t_stct lbm_src_transport_stats_lbtrm_t
Structure that holds datagram statistics for source LBT-RM transports.
int flags
Bitmap set of flags reserved for future use. Currently set to 0.
Definition: lbm.h:2911
const void * umeack
UM internal only. DO NOT ACCESS DIRECTLY!
Definition: lbm.h:4031
lbm_src_transport_stats_lbtipc_t lbtipc
The statistics for source LBT-IPC transports.
Definition: lbm.h:4634
lbm_transport_mapping_cb_proc mapping_func
Function pointer for application callback.
Definition: lbm.h:11755
LBMExpDLL int lbm_ssrc_ume_deregister(lbm_ssrc_t *ssrc)
Deregister a smart source from the UMP Stores.
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.
lbm_uint_t queue_id
The Queue ID of the queue.
Definition: lbm.h:2805
void * handle
Returned from bind.
Definition: lbm.h:2969
lbm_uint32_t domain_id
The internals of this structure are for UM internal use only.
Definition: lbm.h:2408
lbm_ulong_t unrecovered_txw
Number of LBT-RM datagrams unrecovered (LBM_MSG_UNRECOVERABLE_LOSS delivered to receiver application)...
Definition: lbm.h:4837
lbm_ulong_t source_events
Number of source events currently in the event queue, i.e., a snapshot. Configuration option queue_co...
Definition: lbm.h:5475
int(* lbm_datagram_acceleration_close_function_t)(void *device)
Application callback function to implement datagram acceleration close.
Definition: lbm.h:3007
lbm_ulong_t lbm_reqs_rcved
Number of UM request messages received (message type LBM_MSG_REQUEST). (Cumulative) ...
Definition: lbm.h:4684
void * clientd
Client data to be passed to the callback.
Definition: lbm.h:3434
void * msg_clientd
The clientd pointer passed in for the message.
Definition: lbm.h:2722
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...
struct lbm_msg_fragment_info_t_stct lbm_msg_fragment_info_t
Structure that holds fragment information for UM messages when appropriate.
lbm_ulong_t callback_events_svc_mean
Mean service time for callback events (in microseconds). (Cumulative)
Definition: lbm.h:5612
const void * umq_cr
UM internal only. DO NOT ACCESS DIRECTLY!
Definition: lbm.h:4041
struct lbm_src_transport_stats_tcp_t_stct lbm_src_transport_stats_tcp_t
Structure that holds datagram statistics for source TCP transports.
lbm_ulong_t topicless_im_msgs_tot
Total accumulated number of topic-less Multicast Immediate Messaging (MIM) messages that have been ad...
Definition: lbm.h:5375
int flags
Bitmap indicating extra information about the registration. Zero or more flag bits ORed together: LBM...
Definition: lbm.h:1994
lbm_ulong_t age_min
Minimum age of event queue entry when dequeued (in microseconds). (Cumulative)
Definition: lbm.h:5574
struct lbm_rcv_transport_stats_lbtru_t_stct lbm_rcv_transport_stats_lbtru_t
Structure that holds datagram statistics for receiver LBT-RU transports.
lbm_uint_t offset
The offset (in bytes) of this fragment from the message beginning.
Definition: lbm.h:3918
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.
LBMExpDLL int lbm_config(const char *fname)
Set one or more options from the contents of a disk file.
lbm_uint_t ip_address
The IP address of the UMP Store (network order)
Definition: lbm.h:3486
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...
int num_msgs
The length of the retrieved message array.
Definition: lbm.h:2334
struct lbm_umm_info_t_stct lbm_umm_info_t
Structure for specifying UMM daemon connection options.
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.
int status
The current status of the operation.
Definition: lbm.h:2379
lbm_ulong_t resp_msgs_svc_mean
Mean service time for response messages (in microseconds). This is an exponentially weighted moving a...
Definition: lbm.h:5362
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.).
struct lbm_ume_store_group_entry_t_stct lbm_ume_store_group_entry_t
Structure that holds information to configure a Persistent Store group.
size_t iov_len
Number of bytes in this segment.
Definition: lbm.h:1785
Structure that holds ACK information for a given message in an extended form.
Definition: lbm.h:2049
struct lbm_mim_unrecloss_func_t_stct lbm_mim_unrecloss_func_t
Structure that holds the application callback for multicast immediate message unrecoverable loss noti...
Value returned on error for UM APIs.
Definition: lbm.h:1728
Struct containing extended asynchronous operation status information about a single UMQ message...
Definition: lbm.h:2308
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_cont...
LBMExpDLL void lbm_set_lbtru_loss_rate(int rate)
Dynamically set the LBT-RU loss rate.
Structure that holds index assignment information for queuing receivers when an index stops...
Definition: lbm.h:2116
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...
Structure, struct iovec compatible, that holds information about buffers used for vectored sends...
Definition: lbm.h:1781
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.
Results struct returned via the user-specified asynchronous operation callback from any asynchronous ...
Definition: lbm.h:2375
struct lbm_msg_ume_registration_t_stct lbm_msg_ume_registration_t
DEPRECATED, NOT USED.
LBMExpDLL int lbm_rcv_delete(lbm_rcv_t *rcv)
Delete a UM receiver object.
lbm_uint_t rcv_registration_id
The registration ID for the receiver.
Definition: lbm.h:2035
lbm_ulong_t id
Receiver Type ID.
Definition: lbm.h:3733
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&#39;s application set attributes...
LBMExpDLL void lbm_debug_noflush(int on)
Set the noflush flag for the debug logs. This can dramatically increase performance when a debug mask...
Structure that represents an element in an app header chain.
Definition: lbm.h:10578
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...
LBMExpDLL int lbm_context_reset_im_src_transport_stats(lbm_context_t *ctx)
Reset the IM source stats for a context.
lbm_rcv_umq_queue_msg_list_info_t * rcv_umq_queue_msg_list
Results for message list.
Definition: lbm.h:2390
char * buffer
Buffer pointer supplied and returned with data.
Definition: lbm.h:2973
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...
const lbm_buff_t * buffer
UM internal only. DO NOT ACCESS DIRECTLY!
Definition: lbm.h:4020
lbm_ulong_t context_source_events_svc_mean
Mean service time for context source events (in microseconds). (Cumulative)
Definition: lbm.h:5550
int(* lbm_datagram_acceleration_mcast_join_function_t)(void *handle, struct in_addr *mcast_addr)
Application callback function to implement datagram acceleration multicast join.
Definition: lbm.h:3039
lbm_ulong_t tr_dgrams_rcved
Number of topic resolution datagrams received by this context. Each datagram can contain one or more ...
Definition: lbm.h:5659
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.
lbm_src_transport_stats_lbtsmx_t lbtsmx
The statistics for source LBT-SMX transports.
Definition: lbm.h:4636
unsigned char lbm_uchar_t
For portability.
Definition: lbm.h:1739
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 obje...
lbm_uint32_t version
The internals of this structure are for UM internal use only.
Definition: lbm.h:2410
lbm_msg_t * msg
Actual message, if appropriate and available (NULL otherwise)
Definition: lbm.h:2312
lbm_rcv_transport_stats_lbtrm_t lbtrm
The statistics for receiver LBT-RM transports.
Definition: lbm.h:5270
LBMExpDLL lbm_event_queue_t * lbm_event_queue_from_rcv(lbm_rcv_t *rcv)
Retrieve the UM event queue object associated with a UM receiver object. See Event Queue Object...
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...
lbm_ulong_t tv_sec
Seconds.
Definition: lbm.h:1818
lbm_uint8_t source_type
The internals of this structure are for UM internal use only.
Definition: lbm.h:2406
lbm_uint_t registration_id
The registration ID that should be used with this UMP Store for the source.
Definition: lbm.h:3492
lbm_ulong_t tr_dgrams_send_failed
Number of topic resolution datagram sends that failed. This count should be at or at least near 0...
Definition: lbm.h:5675
lbm_ume_ctx_rcv_ctx_notification_create_function_cb create_func
Function pointer for application callback.
Definition: lbm.h:3658
lbm_ushort_t store_index
the Store index of the Store involved. This field is 0 (zero) if the event applies to multiple Stores...
Definition: lbm.h:2066
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...
Structure that holds information to configure a Resolver Service.
Definition: lbm.h:3524
lbm_event_queue_t * evq
An event queue pointer; not yet supported. Should be set to NULL.
Definition: lbm.h:2588
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...
struct lbm_ipv4_address_mask_t_stct lbm_ipv4_address_mask_t
Structure that holds an IPv4 address and a CIDR style netmask.
LBMExpDLL int lbm_hfx_dump(lbm_hfx_t *hfx, int *size, lbm_config_option_t *opts)
Retrieves all HFX attribute options.
void(* lbm_mem_mgt_free_cb_func)(void *ptr, void *clientd)
Application callback to free memory using application specific function.
Definition: lbm.h:2499
lbm_ulong_t lbm_reqs_rcved
Number of UM request messages received (message type LBM_MSG_REQUEST). (Cumulative) ...
Definition: lbm.h:4868
int flags
Bitmap indicating extra information about the registration. Zero or more flag bits ORed together: LBM...
Definition: lbm.h:2840
lbm_ulong_t msgs_sent
Number of LBT-RDMA datagrams sent. Depending on batching settings, a single LBT-RDMA datagram may con...
Definition: lbm.h:4576
lbm_ushort_t application_set_index
Application set index.
Definition: lbm.h:2240
Structure that holds information for UMP receiver registration ID application callbacks.
Definition: lbm.h:2686
lbm_ushort_t application_set_index
Index of the Application Set the receiver is in.
Definition: lbm.h:3690
int type
Type of transport. See: LBM_TRANSPORT_TYPE_* (i.e. LBM_TRANSPORT_TYPE_TCP, LBM_TRANSPORT_TYPE_LBTRU, LBM_TRANSPORT_TYPE_LBTSMX, LBM_TRANSPORT_TYPE_LBTRM, LBM_TRANSPORT_TYPE_LBTIPC, LBM_TRANSPORT_TYPE_LBTRDMA, LBM_TRANSPORT_TYPE_BROKER).
Definition: lbm.h:4116
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.
DEPRECATED, do not use. LBT-RDMA is no longer supported.
Definition: lbm.h:5196
int flags
Bitmap indicating why the index was assigned to the receiver, etc. Zero or more flag bits ORed togeth...
Definition: lbm.h:2138
Structure that holds information for sources after registration is complete to all involved queue ins...
Definition: lbm.h:2818
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 deregist...
lbm_ushort_t dest_port
Destination port. Applicable only to LBT-RM. Stored in host order.
Definition: lbm.h:4122
LBMExpDLL const char * lbm_version(void)
return the version string compiled into UM.
DEPRECATED, do not use.
Definition: lbm.h:4414
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.
Definition: lbm.h:3077
lbm_ulong_t txw_bytes
Number of bytes currently in the transmission window. See txw_msgs (above) for a description of the t...
Definition: lbm.h:4331
lbm_ulong_t bytes_rcved
Number of BROKER message bytes received. This does not include overhead for the AMQP protocol...
Definition: lbm.h:5244
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.
Structure that holds the application callback function to configure "appcb" type wildcard pattern typ...
Definition: lbm.h:3402
lbm_uint_t queue_id
The Queue ID of the queue.
Definition: lbm.h:2869
Structure that holds the application callback for multicast immediate message unrecoverable loss noti...
Definition: lbm.h:3457
lbm_ulong_t nak_tx_mean
Mean number of times per lost message that a receiver transport transmitted a NAK. (Cumulative)
Definition: lbm.h:4814
LBMExpDLL void lbm_logf(int level, const char *format,...)
Log a message. This is an entry to the UM logging mechanism.
lbm_uint_t queue_instance_index
The index of the instance of the queue acknowledging the message.
Definition: lbm.h:2871
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.
void * msg_clientd
The clientd pointer passed in for the message.
Definition: lbm.h:2951
lbm_ushort_t destination_port
The port configured on the unicast resolver daemon. (network order)
Definition: lbm.h:3513
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.
Definition: lbm.h:3647
LBMExpDLL lbm_event_queue_t * lbm_event_queue_from_src(lbm_src_t *src)
Retrieve the UM event queue object associated with a UM source object. See Event Queue Object...
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.
lbm_ulong_t bytes_buffered
This statistic has been deprecated.
Definition: lbm.h:4416
lbm_umq_regid_t registration_id
Registration ID used for the registration.
Definition: lbm.h:2803
lbm_uint_t first_sequence_number
First sequence number for the message set.
Definition: lbm.h:2718
lbm_uint32_t mc_group
Multicast group. Applicable only to LBT-RM. Stored in network order.
Definition: lbm.h:4124
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.
Structure that holds the application function to configure the callback for registration ID setting...
Definition: lbm.h:3430
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...
char * iov_base
Pointer to a segment of application data.
Definition: lbm.h:1783
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.
Structure passed to cancel/delete functions so that a cancel callback may be called.
Definition: lbm.h:6201
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.
Structure that holds Store registration information for the UM persistent receiver after a successful...
Definition: lbm.h:1962
lbm_ulong_t bytes_rcved
Number of LBT-RM datagram bytes received, i.e., the total of lengths of all LBT-RM packets including ...
Definition: lbm.h:4717
lbm_uint64_t timestamp_usec
Timestamp microseconds of when a transport was joined by the receiver. THIS FIELD IS UNSUPPORTED...
Definition: lbm.h:5833
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.
LBMExpDLL int lbm_wildcard_rcv_unsubscribe_channel(lbm_wildcard_rcv_t *wrcv, lbm_uint32_t channel)
Discontinue an existing channel subscription.
lbm_ulong_t unrecovered_tmo
Number of LBT-RM datagrams unrecovered due to a retransmission not received within the NAK generation...
Definition: lbm.h:4849
size_t index_len
The length of the index in bytes.
Definition: lbm.h:2104
Structure that holds UMQ message total lifetime information.
Definition: lbm.h:2196
Structure that holds statistics for an event queue.
Definition: lbm.h:5318
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 c...
LBMExpDLL int lbm_event_queue_attr_delete(lbm_event_queue_attr_t *attr)
Delete an event queue attribute object.
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.
Definition: lbm.h:11156
LBMExpDLL int lbm_src_topic_dump(lbm_src_t *src, int *size, lbm_config_option_t *opts)
Retrieves all source topic configuration options.
Structure for defining a UMQ application set.
Definition: lbm.h:2232
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.
lbm_ulong_t rcv_cb_svc_time_max
The maximum time in microseconds used to call user receive callbacks of type lbm_rcv_cb_proc for wild...
Definition: lbm.h:5801
LBMExpDLL void lbm_set_uim_loss_rate(int rate)
Dynamically set the UIM loss rate.
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).
int(* lbm_wildcard_rcv_delete_function_cb)(const char *topic_str, void *clientd)
Application callback for wildcard receiver deletion.
Definition: lbm.h:4242
Structure that holds datagram statistics for source LBT-IPC transports.
Definition: lbm.h:4522
LBMExpDLL int lbm_src_channel_delete(lbm_src_channel_info_t *chn)
Release the resources associated with a source channel.
LBMExpDLL int lbm_win32_static_thread_attach(void)
Instructs UM that a new thread will be calling UM functions.
lbm_ulong_t naks_rcved
Number of individual NAKs received by the source transport. (Cumulative)
Definition: lbm.h:4450
lbm_ulong_t bytes_rcved
Number of LBT-RU datagram bytes received, i.e., the total of lengths of all LBT-RU packets including ...
Definition: lbm.h:4934
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.
LBMExpDLL int lbm_authstorage_deltpnam(const char *username)
Delete the user credential from the password file.
lbm_ulong_t callback_events_tot
Total accumulated number of callback events that have been added to the event queue even if subsequen...
Definition: lbm.h:5595
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.
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.
lbm_uint_t broker_ip
The IP address of the broker (network order)
Definition: lbm.h:3545
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...
struct lbm_process_events_info_t_stct lbm_process_events_info_t
Structure that holds information for the extended Process Events calls.
Structure that holds the extended hash function callback information.
Definition: lbm.h:3360
lbm_umq_queue_topic_t * topic
UMQ topic info.
Definition: lbm.h:2265
lbm_ulong_t fragments_lost
Number of data message fragments detected as lost in the context. (Cumulative)
Definition: lbm.h:5753
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.
Definition: lbm.h:10572
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().
Structure that holds seconds and nanoseconds since midnight, Jan 1, 1970 UTC.
Definition: lbm.h:1816
unsigned short int lbm_ushort_t
For portability.
Definition: lbm.h:1737
void * data
Pointer to the app header data.
Definition: lbm.h:10586
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 callba...
LBMExpDLL void lbm_authstorage_close_storage_xml(void)
Release the storage object.
lbm_umq_index_info_t index_info
The index info.
Definition: lbm.h:2144
Structure that holds the application callback to configure context-level source events.
Definition: lbm.h:3781
LBMExpDLL int lbm_authstorage_open_storage_xml(char *filename)
Create the storage object from XML password file.
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...
Structure that holds the application function to configure the callback for context-level events...
Definition: lbm.h:3813
lbm_uint64_t u64
64 bit hot failover sequence number
Definition: lbm.h:2208
lbm_ulong_t naks_ignored
Number of NAKs this source transport ignored and sent an NCF with reason code "ignored". (Cumulative)
Definition: lbm.h:4352
lbm_event_queue_cancel_cb_proc cbproc
The cancel callback function.
Definition: lbm.h:6205
lbm_ulong_t rxs_sent
Number of LBT-RU datagrams retransmitted by this source transport (incremented under the same circums...
Definition: lbm.h:4486
lbm_ulong_t msgs_rcved
Number of LBT-SMX datagrams received. (Cumulative)
Definition: lbm.h:5169
UM internal use only. DO NOT USE.
Definition: lbm.h:3386
lbm_resolver_event_cb_func event_cb_func
Function pointer for application callback.
Definition: lbm.h:2456
struct lbm_umq_msg_selector_t_stct lbm_umq_msg_selector_t
Opaque handle to a message selector.
Definition: lbm.h:11052
lbm_ulong_t wrcv_msgs_svc_min
Minimum service time for wildcard receiver messages (in microseconds). This is the low-water mark (i...
Definition: lbm.h:5410
lbm_ulong_t reserved1
Reserved field. Do not use.
Definition: lbm.h:5189
lbm_ulong_t rctlr_rx_msgs
Number of LBT-RM transport retransmission datagrams currently queued by the retransmit rate limiter...
Definition: lbm.h:4397
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.
Definition: lbm.h:3184
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_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.
lbm_datagram_acceleration_unbind_function_t unbind
Function pointer for datagram acceleration unbind.
Definition: lbm.h:3141
LBMExpDLL int lbm_msg_properties_delete(lbm_msg_properties_t *properties)
Deletes a properties object. See Message Properties.
LBMExpDLL int lbm_cancel_timer(lbm_context_t *ctx, int id, void **clientdp)
Cancel a previously scheduled timer identified by id.
Structure that holds the XSP zero transports function.
Definition: lbm.h:11590
int32_t lbm_int32_t
For portability.
Definition: lbm.h:1747
lbm_uint_t registration_id
The registration ID for the source.
Definition: lbm.h:1863
lbm_context_event_cb_proc func
Function pointer for application callback.
Definition: lbm.h:3815
Structure that holds datagram statistics for receiver TCP transports.
Definition: lbm.h:4662
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...
void * clientd
Client data to be passed to the callback.
Definition: lbm.h:4255
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...
LBMExpDLL int lbm_set_umm_info(lbm_umm_info_t *info)
Connect to and retrieve configuration from a UMM daemon.
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.
lbm_ulong_t rctlr_data_msgs
Number of LBT-RM datagrams currently queued by the data rate limiter. (Snapshot)
Definition: lbm.h:4388
lbm_uint_t queue_id
The Queue ID of the queue de-registering from.
Definition: lbm.h:2894
lbm_ulong_t num_clients
Number of receiver transports that are currently connected to this source transport. (Snapshot)
Definition: lbm.h:4488
lbm_uint64_t regid
Registration ID.
Definition: lbm.h:3609
lbm_ulong_t lbm_msgs_rcved
Number of messages or message fragments received over an LBT-RM transport. (Cumulative) ...
Definition: lbm.h:4860
LBMExpDLL void lbm_debug_mask(lbm_uint64_t mask)
Set the debug mask for LBM debug log entries.
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.
LBMExpDLL int lbm_context_attr_option_size(void)
Retrieves the number of options that are of type "context".
Structure that holds the application function to configure the callback for registration ID setting...
Definition: lbm.h:3416
lbm_umq_queue_topic_status_t * topics
An array of UMQ topic status objects.
Definition: lbm.h:2275
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.
LBMExpDLL int lbm_hfx_attr_option_size(void)
Retrieves the number of options that are of type "hfx".
DEPRECATED, do not use.
Definition: lbm.h:1861
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 message...
size_t plen
UM internal only. DO NOT ACCESS DIRECTLY!
Definition: lbm.h:4045
lbm_uint_t low_sequence_number
Lowest sequence number that the receiver will attempt to recover. May be altered to instruct UMP to r...
Definition: lbm.h:2740
LBMExpDLL int lbm_rcv_ume_deregister(lbm_rcv_t *rcv)
Deregister a receiver from all known UMP Stores.
struct lbm_rcv_transport_stats_broker_t_stct lbm_rcv_transport_stats_broker_t
Structure that holds message statistics for receiver BROKER transports.
struct ume_liveness_receiving_context_t_stct ume_liveness_receiving_context_t
Structure that holds the information about a receiving context.
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.
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 ...
int flags
Bitmap indicating extra channel information. Zero or more flag bits ORed together: LBM_MSG_FLAG_NUMBE...
Definition: lbm.h:3947
lbm_ulong_t nak_tx_min
Minimum number of times per lost message that a receiver transport transmitted a NAK, i.e., the lowest value collected so far. A value greater than 1 indicates a chronically lossy network. (Cumulative)
Definition: lbm.h:5022
uint64_t lbm_uint64_t
For portability.
Definition: lbm.h:1749
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.
lbm_ulong_t io_events_tot
Total accumulated number of I/O events that have been added to the event queue (even if subsequently ...
Definition: lbm.h:5429
struct lbm_resolver_event_advertisement_t_stct lbm_resolver_event_advertisement_t
Advertisement event structure (for UM internal use only).
void * clientd
Client data to be passed to the callback.
Definition: lbm.h:3406
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.
LBMExpDLL lbm_context_t * lbm_context_from_wildcard_rcv(lbm_wildcard_rcv_t *wcrcv)
Retrieve the LBM context object associated with a UM wildcard receiver object.
lbm_hf_sequence_number_t hf_sequence_number
Hot failover sequence number, check message flags for LBM_MSG_FLAG_HF_32 or LBM_MSG_FLAG_HF_64.
Definition: lbm.h:4051
Structure that holds datagram statistics for source TCP transports.
Definition: lbm.h:4280
int flags
Bitmap indicating which context-level sources are now unblocked. Zero or more flag bits ORed together...
Definition: lbm.h:1835
int flags
Bitmap indicating which optional fields are used. Zero or more flag bits ORed together: LBM_UME_RCV_R...
Definition: lbm.h:2737
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.
Definition: lbm.h:2998
LBMExpDLL int lbm_rcv_topic_dump(lbm_rcv_t *rcv, int *size, lbm_config_option_t *opts)
Retrieves all receiver topic configuration options.
lbm_ulong_t naks_sent
Number of individual NAKs sent by the receiver transport. (Cumulative)
Definition: lbm.h:4738
lbm_ume_src_force_reclaim_function_cb func
Function pointer for application callback function.
Definition: lbm.h:3446
lbm_umq_queue_msg_status_t * msgs
An array of queued messages.
Definition: lbm.h:2324
lbm_ulong_t tr_bytes_rcved
Number of topic resolution datagram bytes received. This count is triggered under the same circumstan...
Definition: lbm.h:5663
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 o...
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 c...
LBMExpDLL void lbm_set_lbtrm_loss_rate(int rate)
Dynamically set the LBT-RM loss rate.
lbm_ulong_t umq_msg_total_lifetime
The message&#39;s total lifetime, in milliseconds.
Definition: lbm.h:2200
struct lbm_src_channel_info_t_stct lbm_src_channel_info_t
Opaque structure that holds information used for sending on channels.
Definition: lbm.h:2084
lbm_ulong_t bytes_rcved
Number of LBT-RDMA datagram bytes received, i.e., the total of lengths of all LBT-RDMA packets includ...
Definition: lbm.h:5204
Structure that holds the context application function to configure the callback when new sources are ...
Definition: lbm.h:3374
int flags
Bitmap set of flags reserved for future use. Currently set to 0.
Definition: lbm.h:2688
lbm_uint_t rcv_registration_id
The registration ID for the receiver.
Definition: lbm.h:2017
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...
lbm_uint_t osqn
UM internal only. DO NOT ACCESS DIRECTLY!
Definition: lbm.h:4035
LBMExpDLL int lbm_event_queue_reset_stats(lbm_event_queue_t *evq)
Reset the stats for an event queue.
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 callbac...
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().
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.
int flag
Flag: Bitmap of flag bits ORed together. Bits are: LBM_UME_LIVENESS_RECEIVER_UNRESPONSIVE_FLAG_* (i...
Definition: lbm.h:3614
LBMExpDLL int lbm_rcv_delete_ex(lbm_rcv_t *rcv, lbm_event_queue_cancel_cb_info_t *cbinfo)
Extended delete a UM receiver object.
lbm_ulong_t id
Receiver Type ID.
Definition: lbm.h:3688
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.
Definition: lbm.h:3804
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...
void * clientd
Client data to be passed to the callback.
Definition: lbm.h:3819
Structure that holds flight size notification event data.
Definition: lbm.h:1850
void * clientd
Client data to be passed to the callback.
Definition: lbm.h:3787
struct lbm_str_hash_func_t_stct lbm_str_hash_func_t
Structure that holds the hash function callback information.
LBMExpDLL lbm_apphdr_chain_elem_t * lbm_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...
lbm_uint_t assignment_id
The generated Assignment ID for the receiver with the queue.
Definition: lbm.h:2844
lbm_ulong_t uim_dup_msgs_rcved
Number of duplicate unicast immediate messages (UIMs) received and dropped. (Cumulative) ...
Definition: lbm.h:5740
lbm_ulong_t data_msgs_svc_max
Maximum service time for data messages (in microseconds). This is the high-water mark (i...
Definition: lbm.h:5343
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.
lbm_ulong_t msgs_sent
Number of LBT-RU datagrams sent. Depending on batching settings, a single LBT-RU datagram may contain...
Definition: lbm.h:4434
DEPRECATED, do not use.
Definition: lbm.h:3927
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...
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.
Definition: lbm.h:4211
lbm_msg_properties_t * properties
Message properties structure for this message. See Message Properties.
Definition: lbm.h:4049
Structure that holds the application function to configure a callback for receiving certain immediate...
Definition: lbm.h:4096
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...
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.
lbm_uint32_t domain_id
The domain ID of the Store.
Definition: lbm.h:3494
LBMExpDLL int lbm_ssrc_topic_dump(lbm_ssrc_t *ssrc, int *size, lbm_config_option_t *opts)
Retrieves all smart source topic configuration options.
lbm_ushort_t store_index
the Store index of the Store involved.
Definition: lbm.h:1920
lbm_ctx_umq_queue_topic_list_info_t * ctx_umq_queue_topic_list
Results for topic list.
Definition: lbm.h:2388
int flags
Bitmap indicating extra information about the message. Zero or more flag bits ORed together LBM_MSG_F...
Definition: lbm.h:3982
lbm_uint32_t session_id
Session ID. Applicable to all transport except BROKER. Stored in host order.
Definition: lbm.h:4128
LBMExpDLL int lbm_context_reset_im_rcv_transport_stats(lbm_context_t *ctx)
Reset the IM receiver stats for a context.
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.
lbm_ulong_t num_clients
Number of receiver transports that are currently connected to this source transport. (Snapshot)
Definition: lbm.h:4557
lbm_uint_t src_registration_id
The registration ID for the source.
Definition: lbm.h:1968
LBMExpDLL int lbm_xsp_attr_delete(lbm_xsp_attr_t *attr)
Delete a UM XSP attribute object.
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 recommen...
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.
struct lbm_apphdr_chain_t_stct lbm_apphdr_chain_t
Opaque structure used for sending messages with app header chains.
Definition: lbm.h:2188
Struct containing an array of UMQ messages listed via lbm_rcv_umq_queue_msg_list. ...
Definition: lbm.h:2322
lbm_ulong_t bytes_sent
Number of LBT-RU datagram bytes sent, i.e., the total of lengths of all LBT-RU packets including UM h...
Definition: lbm.h:4437
void * source_clientd
The per-source clientd value for the source set by the lbm_rcv_src_notification_create_function_cb ca...
Definition: lbm.h:2747
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.
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.
LBMExpDLL void lbm_set_lbtru_src_loss_rate(int rate)
Dynamically set the LBT-RU source loss rate.
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.
int type
Type of transport (LBM_TRANSPORT_STAT_TCP, LBM_TRANSPORT_STAT_LBTRM, etc.).
Definition: lbm.h:4620
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.
struct lbm_umq_msg_total_lifetime_info_t_stct lbm_umq_msg_total_lifetime_info_t
Structure that holds UMQ message total lifetime information.
lbm_ushort_t store_index
the Store index of the Store involved
Definition: lbm.h:1974
LBMExpDLL int lbm_context_attr_dup(lbm_context_attr_t **attr, const lbm_context_attr_t *original)
Duplicate a UM context attribute object.
Structure that holds UMQ ACK information for a given message in an extended form. ...
Definition: lbm.h:2857
LBMExpDLL int lbm_is_ume_capable(void)
Determine if the LBM library is capable of UME operations.
lbm_rcv_src_notification_delete_function_cb delete_func
Function pointer for application callback when delivery controller is deleted.
Definition: lbm.h:3595
lbm_ulong_t nak_stm_min
Minimum time (in milliseconds), i.e., the shortest time recorded so far for a lost message to be reco...
Definition: lbm.h:5001
lbm_datagram_acceleration_sendto_function_t sendto
Function pointer for datagram acceleration send to.
Definition: lbm.h:3155
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&#39;s receiver type attributes...
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.
int flags
Bitmap set of flags reserved for future use. Currently set to 0.
Definition: lbm.h:1914
lbm_uint_t total_message_length
The total length (in bytes) of the message this fragment is for.
Definition: lbm.h:3921
void * clientd
Client data to be passed to the callback.
Definition: lbm.h:4158
lbm_uint_t queue_id
The Queue ID of the queue starting index assignment eligibility.
Definition: lbm.h:2180
lbm_transport_source_info_t src_info
The new transport&#39;s source information.
Definition: lbm.h:11722
LBMExpDLL int lbm_authstorage_roletable_add_role_action(const char *rolename, const char *action)
Add a new authorized action for the specified role.
struct lbm_rcv_transport_stats_t_stct lbm_rcv_transport_stats_t
Structure that holds statistics for receiver transports.
void * clientd
Sent to bind.
Definition: lbm.h:2971
lbm_ulong_t msgs_rcved
Number of BROKER messages received. Messages received from a broker always map to an lbm_msg_t unless...
Definition: lbm.h:5242
LBMExpDLL int lbm_license_vds_valid(void)
Determine is the VDS product is licensed.
const void * umq_msgid
UM internal only. DO NOT ACCESS DIRECTLY!
Definition: lbm.h:4039
lbm_int32_t * mprop_int_vals
Message property pointer to an array of 32-bit integers. Set LBM_SSRC_SEND_EX_FLAG_PROPERTIES.
Definition: lbm.h:2669
lbm_timespec_t hr_timestamp
High Resolution Timestamp of the sent message.
Definition: lbm.h:1937
lbm_ulong_t timer_events_svc_max
Maximum service time for timer events (in microseconds). This is the high-water mark (i...
Definition: lbm.h:5472
lbm_uint32_t u32
32 bit hot failover sequence number
Definition: lbm.h:2206
lbm_uint64_t src_session_id
The session ID for the source.
Definition: lbm.h:1978
Structure to hold a hot failover sequence number.
Definition: lbm.h:2204
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.
int flags
Bitmap indicating extra information about the index. Zero or more flag bits ORed together: LBM_UMQ_IN...
Definition: lbm.h:2098
lbm_ulong_t msgs_sent
Number of LBT-IPC datagrams sent. Depending on batching settings, a single LBT-IPC datagram may conta...
Definition: lbm.h:4529
int lbm_handle_t
Portable type across Unix and Windows for network socket (fd).
Definition: lbm.h:1765
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...
lbm_uint64_t num_msgs
The length of the queued messages array.
Definition: lbm.h:2326
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.
Structure that holds ULB queue information to configure an application set.
Definition: lbm.h:3686
struct lbm_wildcard_rcv_attr_t_stct lbm_wildcard_rcv_attr_t
Opaque structure that holds configuration options for wildcard receivers.
Definition: lbm.h:4262
void * clientd
Client Data passed in the cancel callback when called.
Definition: lbm.h:6207
lbm_ulong_t ncfs_ignored
Number of NCFs received from a source transport with reason code "ignored". (Cumulative) ...
Definition: lbm.h:4752
void * clientd
Client data to be passed to the callback.
Definition: lbm.h:11594
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...
void * clientd
Client data to be passed to the callback.
Definition: lbm.h:3475
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...
Definition: lbm.h:3273
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.
lbm_ulong_t num_clients
Number of receiver transports that are currently connected to this source transport. (Snapshot)
Definition: lbm.h:4524
struct lbm_datagram_acceleration_recv_info_t_stct lbm_datagram_acceleration_recv_info_t
Information returned from lbm_datagram_acceleration_recvfrom_function_t function. ...
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. ...
Structure that holds information about a transport session that we&#39;re about to join.
Definition: lbm.h:11718
LBMExpDLL int lbm_xsp_delete(lbm_xsp_t *xsp)
Delete a UM XSP object.
void *(* lbm_rcv_batch_notify_func_start_cb)(void *clientd)
UM internal use only. DO NOT USE.
Definition: lbm.h:3382
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.
lbm_ushort_t tcp_port
The TCP port of the Store (network order)
Definition: lbm.h:3488
struct lbm_context_attr_t_stct lbm_context_attr_t
Structure used to hold configuration options for contexts.
Definition: lbm.h:4167
lbm_ulong_t topicless_im_msgs_svc_min
Minimum service time for topic-less Multicast Immediate Messaging (MIM) messages (in microseconds)...
Definition: lbm.h:5383
lbm_ulong_t io_events_svc_mean
Mean service time for I/O events (in microseconds). This is an exponentially weighted moving average ...
Definition: lbm.h:5442
LBMExpDLL int lbm_xsp_unblock(lbm_xsp_t *xsp)
Unblock a sequential mode XSP.
lbm_ulong_t lbm_reqs_rcved
Number of UM request messages received (message type LBM_MSG_REQUEST). (Cumulative) ...
Definition: lbm.h:5147
int flags
Bitmap indicating extra information about callback behavior.
Definition: lbm.h:2592
lbm_str_hash_function_cb hashfunc
Function pointer for hash function.
Definition: lbm.h:3351
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...
LBMExpDLL int lbm_authstorage_print_roletable(void)
Print the role table saved in the internal data object.
lbm_umq_regid_t regid
The Registration ID of the original source context of the message.
Definition: lbm.h:2223
DEPRECATED, NOT USED.
Definition: lbm.h:1946
int64_t lbm_int64_t
For portability.
Definition: lbm.h:1753
Structure that holds UMQ ULB message information in an extended form.
Definition: lbm.h:2932
LBMExpDLL lbm_context_t * lbm_context_from_src(lbm_src_t *src)
Retrieve the UM context object associated with a UM source object.
struct lbm_timeval_t_stct lbm_timeval_t
Structure that holds seconds and microseconds since midnight, Jan 1, 1970 UTC.
lbm_ulong_t dgrams_dropped_type
Number of datagrams discarded due to bad packet type. The datagram&#39;s type field must match the expect...
Definition: lbm.h:4874
Information structure for receive events delivered to receiver callback lbm_rcv_cb_proc.
Definition: lbm.h:3968
LBMExpDLL int lbm_authstorage_load_roletable(void)
Load the role table from the password file.
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.
lbm_ulong_t nak_stm_max
Maximum time (in milliseconds), i.e., the longest time recorded so far for a lost message to be recov...
Definition: lbm.h:5016
int flags
Bitmap set of flags reserved for future use. Currently set to 0.
Definition: lbm.h:2716
lbm_rcv_transport_stats_lbtru_t lbtru
The statistics for receiver LBT-RU transports.
Definition: lbm.h:5274
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 soo...
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.
Structure that holds information for UMP receiver recovery sequence number info application callbacks...
Definition: lbm.h:2734
LBMExpDLL int lbm_wildcard_rcv_delete(lbm_wildcard_rcv_t *wrcv)
Delete a UM wildcard receiver object.
LBMExpDLL char * lbm_get_jms_msg_id(lbm_uint64_t source_id, lbm_uint64_t seqno_id, char *topic)
Create JMS message ID.
LBMExpDLL int lbm_config_xml_string(const char *xml_data, const char *application_name)
Load UM XML configuration data.
int bits
Number of leading 1&#39;s in the netmask. E.g. the value 28 represents a netmask of 0xFFFFFFF0.
Definition: lbm.h:1798
lbm_ulong_t nak_tx_max
Maximum number of times per lost message that a receiver transport transmitted a NAK, i.e., the highest value collected so far. (Cumulative)
Definition: lbm.h:4822
int flags
Bitmap indicating which extended features to enable. Zero or more flag bits ORed together: LBM_PROC_E...
Definition: lbm.h:2542
struct lbm_event_queue_t_stct lbm_event_queue_t
Opaque structure that designates a UM event queue object. See Event Queue Object. ...
Definition: lbm.h:2294
lbm_ulong_t dgrams_dropped_size
Number of datagrams discarded due to being smaller than the size designated in the datagram&#39;s size fi...
Definition: lbm.h:5085
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.
Definition: lbm.h:3324
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.
LBMExpDLL void lbm_debugfile_maxsize(lbm_uint64_t size)
This function for UM internal use only.
lbm_rcv_transport_stats_lbtipc_t lbtipc
The statistics for receiver LBT-IPC transports.
Definition: lbm.h:5276
int flags
Bit map of flag bits ORed together.
Definition: lbm.h:2937
lbm_uint_t assignment_id
The Assignment ID of the receiver.
Definition: lbm.h:2915
lbm_umq_index_info_t index_info
The index info.
Definition: lbm.h:2164
struct lbm_wildcard_rcv_stats_t_stct lbm_wildcard_rcv_stats_t
Structure that holds statistics for a wildcard receiver.
const char * data
Data contents of the message if of a message type that carries data. Note that UM does not guarantee ...
Definition: lbm.h:3989
lbm_datagram_acceleration_mcast_join_function_t mcast_join
Function pointer for datagram acceleration multicast join.
Definition: lbm.h:3143
struct lbm_context_stats_t_stct lbm_context_stats_t
Structure that holds statistics for a context.
lbm_ulong_t out_of_order
Number of out-of-order LBT-RM transport datagrams received. (Cumulative)
Definition: lbm.h:4892
int flags
Bitmap set of flags reserved for future use. Currently set to 0.
Definition: lbm.h:2269
int d
The integer value of the attribute.
Definition: lbm.h:3737
LBMExpDLL int lbm_msg_retrieve_msgid(lbm_msg_t *msg, lbm_umq_msgid_t *id)
Retrieve UMQ Message ID information from a UM message.
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.
LBMExpDLL int lbm_wildcard_rcv_attr_delete(lbm_wildcard_rcv_attr_t *attr)
Delete a wildcard receiver attribute object.
struct lbm_rcv_transport_stats_lbtipc_t_stct lbm_rcv_transport_stats_lbtipc_t
Structure that holds datagram statistics for receiver LBT-IPC transports.
LBMExpDLL int lbm_wrcv_ume_deregister(lbm_wildcard_rcv_t *wrcv)
Deregister a wildcard receiver from all known UMP Stores.
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.
Definition: lbm.h:6174
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...
Structure that holds information for receivers after registration is complete to all involved Stores...
Definition: lbm.h:1991
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 i...
LBMExpDLL int lbm_src_topic_attr_option_size(void)
Retrieves the number of options that are of type "topic".
struct lbm_src_transport_stats_lbtrdma_t_stct lbm_src_transport_stats_lbtrdma_t
DEPRECATED, do not use. lbt-rdma is no longer supported.
Structure that holds Message ID information for a message sent by a sending UMQ application.
Definition: lbm.h:2761
lbm_ulong_t lbtru_unknown_msgs_rcved
Number of datagrams received that do not belong to a currently-subscribed LBT-RU transport session...
Definition: lbm.h:5723
lbm_uint64_t src_session_id
The session ID for the source.
Definition: lbm.h:1998
LBMExpDLL int lbm_flush_all(lbm_context_t *ctx)
FOR UM INTERNAL USE ONLY, not for use by user applications.
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 ...
lbm_ulong_t lbm_reqs_rcved
Number of UM request messages received (message type LBM_MSG_REQUEST).
Definition: lbm.h:5220
lbm_ushort_t source_port
The source port to be used (network order).
Definition: lbm.h:3532
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.
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.
lbm_src_cost_function_cb cost_cb
Function pointer for application callback.
Definition: lbm.h:4156
lbm_uint_t sequence_number
The sequence number of the last message stored for the source as reported by the Store.
Definition: lbm.h:1918
struct lbm_ssrc_t_stct lbm_ssrc_t
Opaque structure that designates a UM Smart Source.
Definition: lbm.h:3882
void * clientd
Client data to be passed to the callback.
Definition: lbm.h:3597
lbm_uint_t queue_id
The Queue ID of the queue.
Definition: lbm.h:2783
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...
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.
lbm_wildcard_rcv_delete_function_cb deletefunc
Function pointer for application callback.
Definition: lbm.h:4253
int flags
Bitmap set of flag bits ORed together: LBM_MSG_UMQ_INDEX_ASSIGNMENT_ELIGIBILITY_STOP_COMPLETE_EX_FLAG...
Definition: lbm.h:2118
struct lbm_src_transport_stats_lbtru_t_stct lbm_src_transport_stats_lbtru_t
Structure that holds datagram statistics for source LBT-RU transports.
lbm_ulong_t nak_pckts_rcved
Number of NAK packets received by this source transport. UM batches NAKs into NAK packets to save net...
Definition: lbm.h:4441
lbm_ulong_t timer_events_tot
Total accumulated number of timer events that have been added to the event queue (even if subsequentl...
Definition: lbm.h:5454
LBMExpDLL lbm_response_t * lbm_deserialize_response(lbm_context_t *ctx, lbm_serialized_response_t *serialized_response)
De-serialize a UM response object.
lbm_umq_regid_t registration_id
The registration ID of the receiver.
Definition: lbm.h:2941
lbm_src_channel_info_t * channel_info
pointer to information used to send messages on a channel. Set LBM_SRC_SEND_EX_FLAG_CHANNEL in flags...
Definition: lbm.h:2618
int flags
Bitmap indicating extra information about the registration. Zero or more flag bits ORed together: LBM...
Definition: lbm.h:1901
struct lbm_event_queue_stats_t_stct lbm_event_queue_stats_t
Structure that holds statistics for an event queue.
LBMExpDLL int lbm_src_topic_attr_delete(lbm_src_topic_attr_t *attr)
Delete a source topic attribute object.
LBMExpDLL int lbm_hfx_attr_delete(lbm_hfx_attr_t *attr)
Delete a UM HFX attribute object.
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.
lbm_umq_regid_t registration_id
Registration ID used for the registration.
Definition: lbm.h:2781
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.
Structure that holds fragment information for UM messages when appropriate.
Definition: lbm.h:3912
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.
void * clientd
Client data to be passed to the callback.
Definition: lbm.h:3448
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.
lbm_umq_regid_t regid
Registration ID to use with the given UMQ queue.
Definition: lbm.h:3676
int reserved
UM internal only. DO NOT ACCESS DIRECTLY!
Definition: lbm.h:2100
lbm_ulong_t cancel_events
Number of cancel events currently in the event queue, i.e., a snapshot. Configuration option queue_co...
Definition: lbm.h:5507
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.
int(* lbm_datagram_acceleration_mcast_leave_function_t)(void *handle, struct in_addr *mcast_addr)
Application callback function to implement datagram acceleration multicast leave. ...
Definition: lbm.h:3049
lbm_ulong_t lbm_msgs_no_topic_rcved
Number of messages received that were not for a topic of interest to the receiver. (Cumulative)
Definition: lbm.h:5187
int flags
Bitmap indicating which settings are active. Zero or more flag bits ORed together: LBM_SSRC_SEND_EX_F...
Definition: lbm.h:2657
lbm_ushort_t index
Index of the group. Used in the individual Store entries to indicate the Store is in this group...
Definition: lbm.h:3579
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.
Definition: lbm.h:3020
LBMExpDLL lbm_context_t * lbm_context_from_rcv(lbm_rcv_t *rcv)
Retrieve the UM context object associated with a UM receiver object.
lbm_ume_rcv_recovery_info_ex_function_cb func
Function pointer for application callback function.
Definition: lbm.h:3473
lbm_uint32_t flags
Bitmap indicating extra information about the UMM connection. Zero or more flag bits ORed together: L...
Definition: lbm.h:11298
lbm_ulong_t ncfs_rx_delay
Number of NCFs received with reason code "rx_delay". (Cumulative)
Definition: lbm.h:4984
char * cert_file
Path to a pem-encoded certificate file. If non-NULL, SSL is enabled and is used to validate the the U...
Definition: lbm.h:11300
LBMExpDLL void lbm_log_debug(int on)
Enable logging of debug messages to the application logging callback set by lbm_log().
lbm_uint64_t lbm_umq_regid_t
Registration ID used for UMQ contexts for both sources and receivers.
Definition: lbm.h:2212
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.
lbm_ulong_t lbm_msgs_no_topic_rcved
Number of messages received that were not for a topic of interest to the receiver. A high value (relative to, or approaching lbm_msgs_rcved above) indicates more CPU time required to filter out uninteresting topics, in which case, consider reconfiguring sources to filter more aggressively at the transport layer.
Definition: lbm.h:5218
Structure that holds datagram statistics for receiver LBT-RU transports.
Definition: lbm.h:4920
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_inf...
lbm_ulong_t nak_stm_max
Maximum time (in milliseconds), i.e., the longest time recorded so far for a lost message to be recov...
Definition: lbm.h:4802
LBMExpDLL lbm_event_queue_t * lbm_event_queue_from_wildcard_rcv(lbm_wildcard_rcv_t *wcrcv)
Retrieve the LBM event queue object associated with a UM wildcard receiver object.
struct lbm_src_transport_stats_broker_t_stct lbm_src_transport_stats_broker_t
Structure that holds datagram statistics for source BROKER transports.
lbm_str_hash_function_cb_ex hashfunc
Function pointer for application hash function.
Definition: lbm.h:3362
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 recommen...
struct lbm_src_topic_attr_t_stct lbm_src_topic_attr_t
Opaque structure that holds configuration options for source topics.
Definition: lbm.h:4186
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.
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.
const void * broker_msg_state
UM internal only. DO NOT ACCESS DIRECTLY!
Definition: lbm.h:4053
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 o...
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.
struct lbm_wildcard_rcv_t_stct lbm_wildcard_rcv_t
Opaque structure that designates a UM wildcard receiver object. See UM Wildcard Receivers.
Definition: lbm.h:3840
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...
lbm_ulong_t cancel_events_svc_min
Minimum service time for cancel events. Cancel events as seen by the event queue do not actually cons...
Definition: lbm.h:5517
Structure that holds the application function to configure the XSP transport mapping function callbac...
Definition: lbm.h:11753
lbm_ulong_t data_msgs_svc_mean
Mean service time for data messages (in microseconds). This is an exponentially weighted moving avera...
Definition: lbm.h:5338
lbm_ulong_t bytes_buffered
Number of bytes currently in UM&#39;s TCP buffer, i.e., a snapshot. This count is affected by the number ...
Definition: lbm.h:4286
lbm_immediate_msg_cb_proc func
Function pointer for application callback.
Definition: lbm.h:4098
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.
lbm_uint64_t bytes
Current amount of inflight payload bytes.
Definition: lbm.h:2077
LBMExpDLL int lbm_context_reset_src_transport_stats(lbm_context_t *ctx)
Reset the transport stats for all the sources in a given context.
Structure that holds statistics for a receiver topic.
Definition: lbm.h:5819
void * clientd
Client data to be passed to the callback.
Definition: lbm.h:4224
lbm_ulong_t nak_tx_max
Maximum number of times per lost message that a receiver transport transmitted a NAK, i.e., the highest value collected so far. (Cumulative)
Definition: lbm.h:5036
lbm_uint_t last_sequence_number
Last sequence number for the message after being fragmented.
Definition: lbm.h:2867
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.
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...
lbm_ushort_t store_index
the Store index of the Store involved
Definition: lbm.h:2692
struct lbm_timespec_t_stct lbm_timespec_t
Structure that holds seconds and nanoseconds since midnight, Jan 1, 1970 UTC.
int flags
Bitmap indicating extra information about the registration. Zero or more flag bits ORed together: LBM...
Definition: lbm.h:1878
void * source_clientd
The per-source clientd value for the source set by the lbm_rcv_src_notification_create_function_cb ca...
Definition: lbm.h:2695
lbm_uint64_t src_session_id
The session ID for the source.
Definition: lbm.h:2751
lbm_ulong_t naks_sent
Number of individual NAKs sent by the receiver transport. (Cumulative)
Definition: lbm.h:4955
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.
Definition: lbm.h:4149
struct lbm_hfx_t_stct lbm_hfx_t
Opaque structure that designates an HFX object (for hot failover receivers across multiple contexts) ...
Definition: lbm.h:3856
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.
lbm_uint_t rcv_registration_id
The registration ID for the receiver, if applicable. This field is 0 (zero) if this struct is not bei...
Definition: lbm.h:2060
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.
lbm_uint_t start_sequence_number
The sequence number of the fragment that starts the message.
Definition: lbm.h:3915
lbm_uint_t sequence_number
The sequence number that will be the first requested.
Definition: lbm.h:1996
Structure that represents UMS Spectrum channel information.
Definition: lbm.h:3944
void(* lbm_flight_size_set_inflight_ex_cb_proc)(lbm_flight_size_inflight_t *inflight, void *clientd)
Application callback used to override the Store&#39;s stability ACKs and force inflight message and byte ...
Definition: lbm.h:6236
const void * fragment_info
UM internal only. DO NOT ACCESS DIRECTLY! To access information about message fragments, use lbm_msg_retrieve_fragment_info().
Definition: lbm.h:4023
lbm_ulong_t context_source_events_svc_max
Maximum service time for context source events (in microseconds). (Cumulative)
Definition: lbm.h:5558
lbm_umq_msg_total_lifetime_info_t * umq_total_lifetime
pointer to information used to specify a message&#39;s total lifetime. When supplied, this information ov...
Definition: lbm.h:2628
LBMExpDLL void lbm_seterr(int eno, const char *str)
UM internal use only. DO NOT USE.
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.
Definition: lbm.h:6083
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...
lbm_uint_t rcv_registration_id
The registration ID for the receiver.
Definition: lbm.h:1970
lbm_umq_index_info_t * umq_index
pointer to information used to send messages and associate them with a given UMQ index. Set LBM_SRC_SEND_EX_FLAG_UMQ_INDEX in flags.
Definition: lbm.h:2624
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...
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.
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.
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.
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.
struct lbm_resolver_service_entry_t_stct lbm_resolver_service_entry_t
Structure that holds information to configure a Resolver Service.
lbm_ulong_t rx_bytes_sent
Number of LBT-RU transport total bytes retransmitted by this source transport (triggered under the sa...
Definition: lbm.h:4499
lbm_ulong_t ncfs_unknown
Number of NCFs received with reason code "unknown". (Cumulative)
Definition: lbm.h:4992
int flags
Bitmap set of flags reserved for future use. Currently set to 0.
Definition: lbm.h:2763
lbm_uint64_t lbm_async_operation_handle_t
Opaque handle to an asynchronous operation.
Definition: lbm.h:2364
lbm_ulong_t nak_stm_min
Minimum time (in milliseconds), i.e., the shortest time recorded so far for a lost message to be reco...
Definition: lbm.h:4787
void * clientd
UM internal use only. DO NOT USE.
Definition: lbm.h:3392
void * clientd
Client data to be passed to the callback.
Definition: lbm.h:4102
const char * apphdr_data
UM internal only. DO NOT ACCESS DIRECTLY! To access information about application headers...
Definition: lbm.h:4026
struct lbm_topic_t_stct lbm_topic_t
Opaque structure that designates a Topic. See Topic Object.
Definition: lbm.h:3867
lbm_uint_t queue_id
The Queue ID of the queue beginning assignment of this index.
Definition: lbm.h:2140
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 attribut...
lbm_uint32_t * ids
Receiver Type IDs configured for this appset.
Definition: lbm.h:2236
lbm_ulong_t dgrams_dropped_sid
Number of datagrams discarded due to session ID mismatch. These datagrams appeared to be correctly fo...
Definition: lbm.h:5097
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.
DEPRECATED, do not use. lbt-rdma is no longer supported.
Definition: lbm.h:4569
uint8_t lbm_uint8_t
For portability.
Definition: lbm.h:1741
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.
lbm_ulong_t data_msgs_tot
Total accumulated number of data messages that have been added to the event queue (even if subsequent...
Definition: lbm.h:5325
LBMExpDLL int lbm_context_retrieve_stats(lbm_context_t *ctx, lbm_context_stats_t *stats)
Retrieve the stats for a context.
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 reco...
void(* lbm_rcv_batch_notify_func_end_cb)(void *per_batch_clientd, void *clientd)
UM internal use only. DO NOT USE.
Definition: lbm.h:3384
lbm_uint32_t channel_number
Channel number in the range 0-4294967295.
Definition: lbm.h:3949
lbm_ulong_t lbm_msgs_no_topic_rcved
Number of messages received that were not for a topic of interest to the receiver. (Cumulative)
Definition: lbm.h:4866
lbm_ulong_t io_events
Number of I/O events currently in the event queue, i.e., a snapshot. Configuration option queue_count...
Definition: lbm.h:5425
LBMExpDLL int lbm_rcv_topic_attr_option_size(void)
Retrieves the number of options that are of type "source topic".
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).
Definition: lbm.h:2417
lbm_ulong_t(* lbm_str_hash_function_cb)(const char *str)
Application callback for user-supplied topic hash function.
Definition: lbm.h:3170
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.
lbm_datagram_acceleration_recvfrom_function_t recvfrom
Function pointer for datagram acceleration receive from.
Definition: lbm.h:3147
struct lbm_datagram_acceleration_func_t_stct lbm_datagram_acceleration_func_t
A structure used to hold functions to configure datagram acceleration implementation callbacks...
LBMExpDLL int lbm_hfx_attr_dump(lbm_hfx_attr_t *attr, int *size, lbm_config_option_t *opts)
Retrieves all HFX attribute options.
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...
lbm_ulong_t resp_msgs
Number of response messages (from receiver objects) currently in the event queue, i...
Definition: lbm.h:5346
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.
int(* lbm_datagram_acceleration_unbind_function_t)(void *handle)
Application callback function to implement datagram acceleration unbind.
Definition: lbm.h:3029
lbm_src_transport_stats_broker_t broker
The statistics for source BROKER transports.
Definition: lbm.h:4640
lbm_ipv4_address_mask_t iface
Interface to be used.
Definition: lbm.h:3506
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.
lbm_ume_rcv_regid_function_cb func
Function pointer for application callback function.
Definition: lbm.h:3418
lbm_datagram_acceleration_open_function_t open
Function pointer for datagram acceleration open.
Definition: lbm.h:3135
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.
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.
lbm_ulong_t unrecovered_tmo
Number of LBT-RU datagrams unrecovered due to a retransmission not received within the NAK generation...
Definition: lbm.h:5063
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 to...
lbm_ulong_t duplicate_data
Number of duplicate LBT-RM datagrams received. (Cumulative)
Definition: lbm.h:4829
int(* lbm_datagram_acceleration_send_disconnect_function_t)(void *send_handle)
Application callback function to implement datagram acceleration send disconnect. ...
Definition: lbm.h:3086
lbm_uint_t queue_id
The Queue ID of the queue stopping index assignment eligibility.
Definition: lbm.h:2120
Structure that holds parsed transport source strings.
Definition: lbm.h:4114
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 us...
void * reserved
Reserved field; do not touch.
Definition: lbm.h:2242
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.
Definition: lbm.h:3064
LBMExpDLL int lbm_win32_static_thread_detach(void)
Instructs UM that a new thread is done calling UM functions.
int num_appsets
Length of the application sets array.
Definition: lbm.h:2256
size_t len
length of the data pointed to by data
Definition: lbm.h:10584
lbm_ulong_t context_source_events_tot
Total accumulated number of context source events that have been added to the event queue (even if su...
Definition: lbm.h:5532
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 conf...
lbm_msg_properties_t * properties
pointer to a message properties structure. Set LBM_SRC_SEND_EX_FLAG_PROPERTIES in flags...
Definition: lbm.h:2632
LBMExpDLL void lbm_debug_ring_buffer(size_t maxsz)
Set debug ring buffer size.
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...
lbm_ulong_t nak_pckts_sent
Number of NAK packets sent by the receiver transport. (Cumulative)
Definition: lbm.h:4940
int(* lbm_flight_size_set_inflight_cb_proc)(int inflight, void *clientd)
Application callback used to override the Store&#39;s stability ACKs and force inflight message count to ...
Definition: lbm.h:6222
struct lbm_mem_mgt_callbacks_t_stct lbm_mem_mgt_callbacks_t
Structure that holds the application function to configure Smart Source memory management.
struct lbm_xsp_attr_t_stct lbm_xsp_attr_t
Structure used to hold attributes for XSPs.
Definition: lbm.h:11467
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 obje...
lbm_ulong_t lbm_reqs_rcved
Number of UM request messages received (message type LBM_MSG_REQUEST). (Cumulative) ...
Definition: lbm.h:5082
lbm_ipv4_address_mask_t iface
Interface to be used.
Definition: lbm.h:3530
lbm_ulong_t dgrams_dropped_size
Number of datagrams discarded due to being smaller than the size designated in the datagram&#39;s size fi...
Definition: lbm.h:4871
lbm_datagram_acceleration_send_connect_function_t send_connect
Function pointer for datagram acceleration send connect.
Definition: lbm.h:3149
Structure that holds information to configure any of several ULB source&#39;s receiver type attributes...
Definition: lbm.h:3731
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 messa...
LBMExpDLL void lbm_seterrf(int eno, const char *format,...)
UM internal use only. DO NOT USE.
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.
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.
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...
LBMExpDLL int lbm_xsp_attr_option_size(void)
Retrieves the number of configuration options that are of type "xsp".
LBMExpDLL int lbm_async_operation_cancel(lbm_async_operation_handle_t handle, int flags)
Cancel an outstanding asynchronous operation.
LBMExpDLL void lbm_debug_ring_buffer_walltime(int use)
Stamp messages with wall time.
Structure that holds source wakeup event data.
Definition: lbm.h:1832
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...
struct lbm_umq_queue_entry_t_stct lbm_umq_queue_entry_t
Structure that holds queue registration information to configure a queuing broker.
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...
lbm_ulong_t wrcv_msgs_svc_mean
Mean service time for wildcard receiver messages (in microseconds). This is an exponentially weighted...
Definition: lbm.h:5416
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.
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.
Definition: lbm.h:3255
int messages
Current amount of inflight messages.
Definition: lbm.h:2075
lbm_async_operation_func_t * async_opfunc
DEPRECATED, do not use.
Definition: lbm.h:2639
int flags
Zero or more flag bits ORed together indicating extra information about the registration.
Definition: lbm.h:1966
struct lbm_src_event_flight_size_notification_t_stct lbm_src_event_flight_size_notification_t
Structure that holds flight size notification event data.
struct lbm_rcv_transport_stats_lbtrm_t_stct lbm_rcv_transport_stats_lbtrm_t
Structure that holds datagram statistics for receiver LBT-RM transports.
const void * src_cd
UM internal only. DO NOT ACCESS DIRECTLY!
Definition: lbm.h:4033
struct lbm_event_queue_attr_t_stct lbm_event_queue_attr_t
Opaque structure that holds configuration options for event queue objects.
Definition: lbm.h:5292
lbm_umq_queue_application_set_t * appsets
Array of application sets within this topic.
Definition: lbm.h:2254
Structure that holds IP and Port to configure the broker.
Definition: lbm.h:3543
lbm_uint32_t source_type
Type of source.
Definition: lbm.h:2449
LBMExpDLL void lbm_sock_init(void)
UM internal use only. DO NOT USE.
lbm_uint_t assignment_id
The Assignment ID of the receiver.
Definition: lbm.h:2947
lbm_ulong_t callback_events_svc_max
Maximum service time for callback events (in microseconds). (Cumulative)
Definition: lbm.h:5619
int num_ids
Number of receiver type IDs.
Definition: lbm.h:2238
LBMExpDLL int lbm_msg_ume_send_explicit_ack(lbm_msg_t *msg)
Send a consumption acknowledgement to the persistent Store.
LBMExpDLL int lbm_request_delete_ex(lbm_request_t *req, lbm_event_queue_cancel_cb_info_t *cbinfo)
Extended delete a UM request object.
lbm_rcv_transport_stats_lbtsmx_t lbtsmx
The statistics for receiver LBT-SMX transports.
Definition: lbm.h:5280
int(* lbm_datagram_acceleration_getaddr_function_t)(void *device, struct sockaddr_in *sin)
Application callback function to implement datagram acceleration get address.
Definition: lbm.h:3121
int status
Status code for this topic (reserved for future use; will currently always be set to 0)...
Definition: lbm.h:2267
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.
void * clientd
A client object pointer to be passed back in to the specified callback.
Definition: lbm.h:2590
LBMExpDLL lbm_rcv_t * lbm_rcv_from_hf_rcv(lbm_hf_rcv_t *hfrcv)
Return the LBM receiver object associated with a UM Hot Failover (HF) receiver object.
int flags
Bitmap indicating extra information about the deregistration. Zero or more flag bits ORed together: L...
Definition: lbm.h:2892
LBMExpDLL int lbm_serialized_response_delete(lbm_serialized_response_t *serialized_response)
Delete a UM serialized response object.
struct lbm_msg_gateway_info_t_stct lbm_msg_gateway_info_t
DEPRECATED, do not use.
lbm_ulong_t bytes_rcved
Number of LBT-IPC datagram bytes received, i.e., the total of lengths of all LBT-IPC packets includin...
Definition: lbm.h:5129
long refcnt
UM internal only. DO NOT ACCESS DIRECTLY!
Definition: lbm.h:4004
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...
int flags
Bitmap set of flags reserved for future use. Currently set to 0.
Definition: lbm.h:2198
Structure that holds queue topic information and can be used as a handle to a queue topic...
Definition: lbm.h:2250
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.
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.
struct lbm_xsp_zero_transports_func_t_stct lbm_xsp_zero_transports_func_t
Structure that holds the XSP zero transports function.
lbm_ume_ctx_rcv_ctx_notification_delete_function_cb delete_func
Function pointer for application callback.
Definition: lbm.h:3660
LBMExpDLL int lbm_authstorage_addtpnam(const char *username, const char *pass, unsigned char flags)
Add the new user credential to the password file.
Structure that holds information used for sending and receiving messages with UMQ indices...
Definition: lbm.h:2095
lbm_ume_rcv_regid_ex_function_cb func
Function pointer for application callback function.
Definition: lbm.h:3432
lbm_ulong_t lbm_msgs_rcved
Number of messages or message fragments received over a TCP transport. (Cumulative) ...
Definition: lbm.h:4676
lbm_ulong_t lbm_msgs_rcved
Number of messages or message fragments received over an LBT-RU transport. (Cumulative) ...
Definition: lbm.h:5074
LBMExpDLL int lbm_context_reset_stats(lbm_context_t *ctx)
Reset the stats for a context.
lbm_ulong_t msgs_sent
Number of BROKER messages sent. Each LBM message maps to a BROKER transport message. (Cumulative)
Definition: lbm.h:4600
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.
Definition: lbm.h:3631
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.
Definition: lbm.h:3308
lbm_ulong_t fragments_unrecoverably_lost
Number of data message fragments detected as unrecoverably lost in the context. (Cumulative) ...
Definition: lbm.h:5768
const void * source_clientd
The per-source clientd value for the source set by the lbm_rcv_src_notification_create_function_cb ca...
Definition: lbm.h:4029
lbm_ulong_t tr_dgrams_dropped_malformed
Number of topic resolution datagrams discarded due to being malformed or corrupted. (Cumulative)
Definition: lbm.h:5672
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...
Structure that holds Store deregistration information for the UMP source in an extended form...
Definition: lbm.h:1912
int flags
Bitmap indicating extra information about the registration. Zero or more flag bits ORed together: LBM...
Definition: lbm.h:2821
Structure that holds the application function to configure the forced reclamation notification callba...
Definition: lbm.h:3444
Struct containing an array of UMQ messages retrieved via lbm_rcv_umq_queue_msg_retrieve.
Definition: lbm.h:2330
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.
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.
LBMExpDLL int lbm_context_unblock(lbm_context_t *ctx)
Unblock a sequential mode UM context.
lbm_async_operation_function_cb func
A callback function to receive status and completion of an asynchronous operation.
Definition: lbm.h:2586
LBMExpDLL int lbm_request_delete(lbm_request_t *req)
Delete a UM request object.
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.
int flags
Bitmap indicating extra information about the registration. Zero or more flag bits ORed together: LBM...
Definition: lbm.h:2801
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 n...
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.
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.
lbm_ulong_t naks_shed
Number of NAKs this source transport has shed by sending an NCF with reason code "shed". (Cumulative)
Definition: lbm.h:4466
lbm_ulong_t events
Total number of events (including messages) currently in the event queue, i.e., a snapshot...
Definition: lbm.h:5561
Structure that holds queue information for queuing receivers after registration is complete to all in...
Definition: lbm.h:2837
lbm_umq_regid_t registration_id
The registration ID of the receiver.
Definition: lbm.h:2913
lbm_uint32_t transport_idx
Not used.
Definition: lbm.h:4132
lbm_ushort_t source_port
The source port. Use 0 to indicate that the port should come from the range resolver_unicast_port_low...
Definition: lbm.h:3511
lbm_ulong_t msgs_rcved
Number of LBT-RM datagrams received. (Cumulative)
Definition: lbm.h:4712
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) ...
struct lbm_src_cost_func_t_stct lbm_src_cost_func_t
Structure that holds the source_cost_evaluation_function (context) context option.
lbm_uint_t sequence_number
Sequence number of the sent message.
Definition: lbm.h:1939
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 prope...
lbm_mem_mgt_realloc_cb_func realloc_cb_func
Function pointer for application callback for realloc().
Definition: lbm.h:2515
lbm_src_notify_function_cb notifyfunc
Function pointer for application callback function.
Definition: lbm.h:3376
LBMExpDLL int lbm_context_get_name(lbm_context_t *ctx, char *name, size_t *size)
DEPRECATED, DOES NOT FUNCTION!
LBMExpDLL lbm_topic_t * lbm_topic_from_src(lbm_src_t *src)
Retrieve the UM topic object associated with a UM source object.
int flags
Bitmap set of flags reserved for future use. Currently set to 0.
Definition: lbm.h:2318
lbm_ulong_t tr_dgrams_sent
Number of topic resolution datagrams sent from this context. Each datagram can contain one or more ad...
Definition: lbm.h:5650
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 ...
lbm_uint_t sequence_number
The sequence number for the receiver to start at as reported by the Store.
Definition: lbm.h:1972
Structure that holds sequence number information for a message sent by a source.
Definition: lbm.h:2714
struct lbm_serialized_response_t_stct lbm_serialized_response_t
Structure that holds a serialized UM response object.
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...
lbm_ulong_t data_msgs
Number of data messages currently in the event queue, i.e., a snapshot. Configuration option queue_co...
Definition: lbm.h:5321
struct lbm_src_event_wakeup_t_stct lbm_src_event_wakeup_t
Structure that holds source wakeup event data.
struct lbm_rcv_t_stct lbm_rcv_t
Opaque structure that designates a UM receiver. See Receiver Object.
Definition: lbm.h:3888
lbm_timeval_t time_val
Current time of day, in form as returned by gettimeofday(). When flags has LBM_PROC_EVENT_EX_FLAG_USE...
Definition: lbm.h:2546
lbm_uint_t addr
IPv4 address in network byte order, as might be returned from inet_aton().
Definition: lbm.h:1796
LBMExpDLL lbm_serialized_response_t * lbm_serialize_response(lbm_response_t *resp)
Serialize a UM response object.
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...
Definition: lbm.h:5917
LBMExpDLL int lbm_xsp_process_events(lbm_xsp_t *xsp, lbm_ulong_t msec)
Process internal events in the given XSP object.
lbm_uint32_t topic_idx
Topic index. Applicable to all transports except BROKER. Stored in host order.
Definition: lbm.h:4130
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 UM...
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.
LBMExpDLL int lbm_context_lbtipc_unblock(lbm_context_t *ctx)
Unblock a sequential mode LBT-IPC processing loop.
int num_topics
The length, in number of elements, of the topic objects array.
Definition: lbm.h:2277
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().
lbm_ulong_t tr_dgrams_dropped_type
Number of topic resolution datagrams discarded due to incorrect type. The datagram&#39;s type field must ...
Definition: lbm.h:5670
unsigned int lbm_uint_t
For portability.
Definition: lbm.h:1733
lbm_uint_t sequence_number
The original sequence number (relative to the original transport.)
Definition: lbm.h:3930
char * usr_supplied_buffer
Pointer to the user supplied buffer containing the data to send in this message. Set LBM_SSRC_SEND_EX...
Definition: lbm.h:2675
lbm_uint32_t registration_id
The registration ID for the source.
Definition: lbm.h:1916
char ** mprop_int_keys
Message property pointer to an array of NULL terminated key character strings. Set LBM_SSRC_SEND_EX_F...
Definition: lbm.h:2666
Structure that holds information to configure a unicast resolver daemon.
Definition: lbm.h:3504
char * data
Pointer to value for this property. Must be cast to proper data type.
Definition: lbm.h:10716
lbm_ulong_t msgs_sent
Number of LBT-RM datagrams sent. (Cumulative)
Definition: lbm.h:4316
lbm_ulong_t resp_msgs_svc_min
Minimum service time for response messages (in microseconds). This is the low-water mark (i...
Definition: lbm.h:5356
LBMExpDLL int lbm_apphdr_chain_delete(lbm_apphdr_chain_t *chain)
DEPRECATED. Delete an app header chain previously created with lbm_apphdr_chain_create.
struct lbm_hf_rcv_t_stct lbm_hf_rcv_t
Opaque structure that designates a UM Hot Failover receiver object.
Definition: lbm.h:3846
lbm_uint32_t channel
Spectrum channel number. Set LBM_SSRC_SEND_EX_FLAG_CHANNEL in flags.
Definition: lbm.h:2672
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.
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.
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 perfo...
lbm_context_src_cb_proc func
Function pointer for application callback.
Definition: lbm.h:3783
Structure that holds information for the extended Process Events calls.
Definition: lbm.h:2539
lbm_ulong_t tv_nsec
Nanoseconds.
Definition: lbm.h:1820
struct lbm_src_transport_stats_lbtipc_t_stct lbm_src_transport_stats_lbtipc_t
Structure that holds datagram statistics for source LBT-IPC transports.
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.
int flags
Bitmap indicating which of other fields in the structure are used. Zero or more flag bits ORed togeth...
Definition: lbm.h:2612
LBMExpDLL int lbm_ssrc_reset_transport_stats(lbm_ssrc_t *ssrc)
Reset the transport statistics for the transport used by the given smart source.
int(* lbm_wildcard_rcv_compare_function_cb)(const char *topic_str, void *clientd)
Application callback for application-supplied wildcard matching.
Definition: lbm.h:3222
lbm_datagram_acceleration_init_function_t init
Function pointer for datagram acceleration initialization.
Definition: lbm.h:3133
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.
struct lbm_rcv_topic_attr_t_stct lbm_rcv_topic_attr_t
Opaque structure that holds configuration options for receiver topics.
Definition: lbm.h:4192
lbm_event_queue_t * event_queue
The event queue for the cancel callback. See Event Queue Object.
Definition: lbm.h:6203
lbm_ulong_t tv_sec
Seconds.
Definition: lbm.h:1807
LBMExpDLL int lbm_license_ummnm_valid(void)
Determine is the UMM product is licensed.
lbm_timespec_t hr_timestamp
High Resolution Timestamp of the received message.
Definition: lbm.h:4055
lbm_ulong_t naks_rcved
Number of individual NAKs received by the source transport. (Cumulative)
Definition: lbm.h:4344
void * ume_msg_clientd
client data pointer to be passed back in source events for stability and confirmations. Set LBM_SRC_SEND_EX_FLAG_UME_CLIENTD in flags.
Definition: lbm.h:2615
lbm_ulong_t dgrams_dropped_version
Number of datagrams discarded due to version mismatch. The datagram&#39;s version field must match the ex...
Definition: lbm.h:4877
LBMExpDLL int lbm_context_reset_rcv_transport_stats(lbm_context_t *ctx)
Reset the transport stats for all receivers in a given context.
lbm_uint_t queue_id
The Queue ID of the queue ending assignment of this index.
Definition: lbm.h:2160
Structure that holds datagram statistics for source LBT-SMX transports.
Definition: lbm.h:4555
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.
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.
lbm_ulong_t tr_rcv_topics
Total number of topics in the receiver topic resolver cache (also referred to as the topic map)...
Definition: lbm.h:5696
void * clientd
Client data to be passed to the callback.
Definition: lbm.h:2519
lbm_ulong_t source_events_tot
Total accumulated number of source events that have been added to the event queue (even if subsequent...
Definition: lbm.h:5479
lbm_ulong_t lbm_msgs_no_topic_rcved
Number of messages received that were not for a topic of interest to the receiver. (Cumulative)
Definition: lbm.h:4682
lbm_uint_t sequence_number
The sequence number of the message that is being acknowledged.
Definition: lbm.h:2033
Structure that holds a serialized UM response object.
Definition: lbm.h:3826
Structure that holds the information about a receiving context.
Definition: lbm.h:3607
struct lbm_ume_store_entry_t_stct lbm_ume_store_entry_t
Structure that holds information to configure a persistent Store.
lbm_ulong_t callback_events
Number of callback events currently in the event queue, i.e., a snapshot. Configuration option queue_...
Definition: lbm.h:5591
struct lbm_resolver_event_info_t_stct lbm_resolver_event_info_t
Resolver event structure (for UM internal use only).
lbm_ulong_t resp_would_block
Number of incidents where a UM send response call returned EWOULDBLOCK. This is when a send response ...
Definition: lbm.h:5738
lbm_uint_t sequence_number
Topic level sequence number of message. For fragmented messages, this is the sequence number of the f...
Definition: lbm.h:3999
uint32_t length
amount of data returned in buffer
Definition: lbm.h:2975
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 callbac...
lbm_uint8_t type
Pattern type for the wildcard receiver. THIS FIELD IS UNSUPPORTED.
Definition: lbm.h:5851
lbm_ushort_t service_port
The port configured on the resolver service. (network order)
Definition: lbm.h:3528
LBMExpDLL void lbm_set_benign_error_flag(void)
UM internal use only. DO NOT USE.
int d
The integer value of the attribute.
Definition: lbm.h:3715
lbm_uint32_t transport_id
Transport ID. Applicable only to LBT-IPC and LBT-SMX. Stored in host order.
Definition: lbm.h:4126
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.
lbm_ulong_t ncfs_unknown
Number of NCFs received with reason code "unknown". (Cumulative)
Definition: lbm.h:4778
size_t apphdr_len
UM internal only. DO NOT ACCESS DIRECTLY!
Definition: lbm.h:4007
int(* lbm_src_cb_proc)(lbm_src_t *src, int event, void *ed, void *clientd)
Application callback for events associated with a source.
Definition: lbm.h:6015
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.
lbm_uint_t queue_instance_index
The index of the instance of the queue registered with.
Definition: lbm.h:2785
int(* lbm_async_operation_function_cb)(lbm_async_operation_info_t *opinfo, void *clientd)
User-supplied application callback for asynchronous operation status and completion.
Definition: lbm.h:2569
lbm_ulong_t context_source_events
Number of context source events currently in the event queue, i.e., a snapshot. Configuration option ...
Definition: lbm.h:5528
Advertisement event structure (for UM internal use only).
Definition: lbm.h:2434
Config option structure holding the option name and value via string types.
Definition: lbm.h:4172
lbm_ulong_t lbtrm_unknown_msgs_rcved
Number of datagrams received that do not belong to a currently-subscribed LBT-RM transport session...
Definition: lbm.h:5711
Structure that holds index assignment information for queuing receivers to indicate the start of inde...
Definition: lbm.h:2176
void *(* lbm_mem_mgt_malloc_cb_func)(size_t size, void *clientd)
Application callback to malloc memory using application specific function.
Definition: lbm.h:2472
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.
LBMExpDLL int lbm_msg_properties_iter_delete(lbm_msg_properties_iter_t *iter)
Deletes an lbm_msg_properties_iterator See Message Properties.
void * msg_clientd
The clientd pointer passed in for the message.
Definition: lbm.h:2873
void *(* lbm_mem_mgt_realloc_cb_func)(void *ptr, size_t size, void *clientd)
Application callback to reallocate memory using application specific function.
Definition: lbm.h:2486
LBMExpDLL int lbm_rcv_unsubscribe_channel(lbm_rcv_t *rcv, lbm_uint32_t channel)
Discontinue an existing channel subscription.
lbm_uint_t first_sequence_number
First sequence number for the message after being fragmented.
Definition: lbm.h:2865
struct lbm_rcv_transport_stats_tcp_t_stct lbm_rcv_transport_stats_tcp_t
Structure that holds datagram statistics for receiver TCP transports.
lbm_uint32_t capability_flags
The internals of this structure are for UM internal use only.
Definition: lbm.h:2404
lbm_ulong_t timer_events_svc_mean
Mean service time for timer events (in microseconds). This is an exponentially weighted moving averag...
Definition: lbm.h:5467
struct lbm_transport_source_info_t_stct lbm_transport_source_info_t
Structure that holds parsed transport source strings.
lbm_uint32_t topic_idx
Topic index for a transport joined by the receiver. THIS FIELD IS UNSUPPORTED.
Definition: lbm.h:5829
Structure that holds statistics for a wildcard receiver.
Definition: lbm.h:5847
lbm_ulong_t rcv_cb_svc_time_mean
The mean time in microseconds used to call user receive callbacks of type lbm_rcv_cb_proc for wildcar...
Definition: lbm.h:5812
lbm_event_queue_t * evq
Event queue to be used (NULL if not). See Event Queue Object.
Definition: lbm.h:3785
lbm_ulong_t bytes_sent
Number of LBT-RM datagram bytes sent, i.e., the total of lengths of all LBT-RM packets including UM h...
Definition: lbm.h:4319
lbm_ulong_t unblock_events_tot
Total accumulated number of unblock events that have been added to the event queue (even if subsequen...
Definition: lbm.h:5504
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.
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 ins...
lbm_uint_t sequence_number
The sequence number of the message.
Definition: lbm.h:2058
LBMExpDLL int lbm_config_xml_file(const char *url, const char *application_name)
Load a UM XML configuration file.
int status
Status code for this message (retrieval in progress, consumed, etc.)
Definition: lbm.h:2316
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.
lbm_ulong_t lbm_msgs_rcved
Number of messages or message fragments received over an LBT-RDMA transport. A single datagram may co...
Definition: lbm.h:5213
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.
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.
LBMExpDLL lbm_hf_rcv_t * lbm_hf_rcv_from_rcv(lbm_rcv_t *rcv)
Return the LBM Hot Failover (HF) receiver object (if any) from a UM receiver object.
Structure that holds seconds and microseconds since midnight, Jan 1, 1970 UTC.
Definition: lbm.h:1805
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.
lbm_ulong_t msgs_rcved
Number of LBT-RU datagrams received. (Cumulative)
Definition: lbm.h:4929
lbm_ulong_t topicless_im_msgs_svc_max
Maximum service time for topic-less Multicast Immediate Messaging (MIM) messages (in microseconds)...
Definition: lbm.h:5395
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.
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...
lbm_uint_t sequence_number
The sequence number for the receiver to end at as reported by the Store.
Definition: lbm.h:2019
lbm_mem_mgt_free_cb_func free_cb_func
Function pointer for application callback for free().
Definition: lbm.h:2517
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...
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.
lbm_rcv_batch_notify_func_end_cb end_notify
UM internal use only. DO NOT USE.
Definition: lbm.h:3390
lbm_ulong_t dgrams_dropped_other
Number of unrecognizable datagrams discarded due to reasons other than those determined by the above ...
Definition: lbm.h:4885
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.
lbm_uint_t application_set_index
The Application Set Index the receiver is in.
Definition: lbm.h:2949
lbm_ulong_t apphdr_code
UM internal only. DO NOT ACCESS DIRECTLY!
Definition: lbm.h:4009
lbm_ulong_t tr_bytes_sent
Number of topic resolution datagram bytes sent. This count is triggered under the same circumstances ...
Definition: lbm.h:5654
Structure that holds datagram statistics for source LBT-RM transports.
Definition: lbm.h:4309
lbm_ulong_t tr_dgrams_dropped_ver
Number of topic resolution datagrams discarded due to incorrect version. The datagram&#39;s version field...
Definition: lbm.h:5666
Structure that holds the receiver deletion function information to configure the wildcard receiver de...
Definition: lbm.h:4251
lbm_ulong_t tr_rcv_unresolved_topics
Number of unresolved topics in the receiver topic resolver cache (aka topic map). (Snapshot) ...
Definition: lbm.h:5702
Structure that holds datagram statistics for receiver LBT-SMX transports.
Definition: lbm.h:5167
LBMExpDLL int lbm_event_queue_delete(lbm_event_queue_t *evq)
Delete a given UM event queue object.
lbm_ulong_t io_events_svc_max
Maximum service time for I/O events (in microseconds). This is the high-water mark (i...
Definition: lbm.h:5447
lbm_ulong_t io_events_svc_min
Minimum service time for I/O events (in microseconds). This is the low-water mark (i...
Definition: lbm.h:5436
unsigned long int lbm_ulong_t
For portability.
Definition: lbm.h:1735
lbm_uint_t service_ip
The IP address of the resolver service (network order)
Definition: lbm.h:3526
char * cert_file_password
Certificate file password. Required only if certificate file is password-protected.
Definition: lbm.h:11302
Structure that holds Store deregistration information for the UM receiver after a successful deregist...
Definition: lbm.h:2010
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.
lbm_ulong_t lbm_msgs_no_topic_rcved
Number of messages received that were not for a topic of interest to the receiver. (Cumulative) A high value (relative to, or approaching lbm_msgs_rcved above) indicates more CPU time required to filter out uninteresting topics, in which case, consider reconfiguring sources to filter more aggressively at the transport layer.
Definition: lbm.h:5145
lbm_ulong_t bytes_sent
Number of LBT-SMX datagram bytes sent, i.e., the total of lengths of all LBT-SMX packets including UM...
Definition: lbm.h:4562
lbm_ulong_t bytes_rcved
This statistic has been deprecated.
Definition: lbm.h:4901
void * msg_clientd
The clientd pointer passed in for the message.
Definition: lbm.h:2767
lbm_src_transport_stats_tcp_t tcp
The statistics for source TCP transports.
Definition: lbm.h:4626
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...
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 topi...
lbm_uint_t high_sequence_number
Highest sequence number that the receiver has seen from the source. May not be actual highest sent by...
Definition: lbm.h:2744
Struct containing an array of queue topics retrieved via lbm_umq_queue_topic_list.
Definition: lbm.h:2273
Structure that holds statistics for a context.
Definition: lbm.h:5645
lbm_rcv_transport_stats_broker_t broker
The statistics for receiver BROKER transports.
Definition: lbm.h:5282
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.
Definition: lbm.h:3239
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.
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.
LBMExpDLL int lbm_get_benign_error_flag(void)
UM internal use only. DO NOT USE.
LBMExpDLL int lbm_authstorage_user_del_role(const char *username, const char *role)
Delete the role entry for the user from the password file.
lbm_umq_queue_msg_status_t * msgs
An array of the retrieved messages.
Definition: lbm.h:2332
void * clientd
Client data to be passed to the callback.
Definition: lbm.h:3662
lbm_uint32_t flags
Flags for the receiver. THIS FIELD IS UNSUPPORTED.
Definition: lbm.h:5823
int flags
Bitmap set of flags reserved for future use. Currently set to 0.
Definition: lbm.h:2779
lbm_ulong_t nak_pckts_sent
Number of NAK packets sent by the receiver transport. (Cumulative)
Definition: lbm.h:4723
lbm_rcv_src_notification_create_function_cb create_func
Function pointer for application callback when delivery controller is created.
Definition: lbm.h:3593
lbm_uint_t queue_id
The Queue ID of the queue.
Definition: lbm.h:2823
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.
LBMExpDLL int lbm_authstorage_user_add_role(const char *username, const char *role)
Add one role entry for the user to the password file.
lbm_datagram_acceleration_bind_function_t bind
Function pointer for datagram acceleration bind.
Definition: lbm.h:3139
lbm_ulong_t resp_msgs_svc_max
Maximum service time for response messages (in microseconds). This is the high-water mark (i...
Definition: lbm.h:5367
lbm_ulong_t rxs_sent
Number of LBT-RM datagrams retransmitted by this source transport (incremented under the same circums...
Definition: lbm.h:4380
Structure that holds the application callback for receiving context status notifications for source c...
Definition: lbm.h:3656
const char * name
Name given to this property.
Definition: lbm.h:10714
Structure that holds information for the extended smart source send calls.
Definition: lbm.h:2654
lbm_uint_t src_registration_id
The registration ID for the source.
Definition: lbm.h:2690
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.
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.
lbm_ulong_t bytes_sent
Number of BROKER message bytes sent. This does not include overhead for the AMQP protocol. (Cumulative)
Definition: lbm.h:4602
LBMExpDLL int lbm_msg_delete(lbm_msg_t *msg)
Delete a UM message object.
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...
lbm_ushort_t store_index
the Store index of the Store involved
Definition: lbm.h:1884
LBMExpDLL int lbm_ssrc_delete(lbm_ssrc_t *ssrc)
Delete a UM Smart Source object.
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 typ...
struct lbm_rcv_transport_stats_lbtsmx_t_stct lbm_rcv_transport_stats_lbtsmx_t
Structure that holds datagram statistics for receiver LBT-SMX transports.
LBMExpDLL int lbm_event_queue_dump(lbm_event_queue_t *evq, int *size, lbm_config_option_t *opts)
Retrieves all event queue attribute options.
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 attribut...
void * clientd
Client data to be passed to the callback.
Definition: lbm.h:3420
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.
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.
struct lbm_hfx_attr_t_stct lbm_hfx_attr_t
Opaque structure that designates HFX configuration options.
Definition: lbm.h:3851
LBMExpDLL int lbm_wildcard_rcv_attr_option_size(void)
Retrieves the number of options that are of type "wildcard receiver".
lbm_uint_t sequence_number
The sequence number that will be the first sent.
Definition: lbm.h:1903
struct lbm_msg_properties_t_stct lbm_msg_properties_t
A struct that holds information used for messages with properties. (opaque)
Definition: lbm.h:2601
Structure that holds the receiver application functions when configuring callbacks when sources are s...
Definition: lbm.h:3591
lbm_ulong_t lbm_msgs_rcved
Number of messages or message fragments received over an LBT-IPC transport. (Cumulative) ...
Definition: lbm.h:5140
Structure that holds the hash function callback information.
Definition: lbm.h:3349
lbm_uint_t first_sequence_number
First sequence number for the message after being fragmented.
Definition: lbm.h:2943
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...
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.
lbm_umq_msgid_t msg_id
Message ID of the message.
Definition: lbm.h:2939
LBMExpDLL int lbm_rcv_topic_attr_delete(lbm_rcv_topic_attr_t *attr)
Delete a receiver topic attribute object.
lbm_uint64_t timestamp_sec
Timestamp seconds of when a transport was joined by the receiver. THIS FIELD IS UNSUPPORTED.
Definition: lbm.h:5831
lbm_ulong_t naks_rx_delay_ignored
Number of NAKs this source transport has not yet processed because doing so would exceed its retransm...
Definition: lbm.h:4476
lbm_src_transport_stats_lbtrm_t lbtrm
The statistics for source LBT-RM transports.
Definition: lbm.h:4628
int flags
Bitmap indicating why the index was released. Zero or more flag bits ORed together: LBM_MSG_UMQ_INDEX...
Definition: lbm.h:2158
Structure that holds message statistics for receiver BROKER transports.
Definition: lbm.h:5239
Structure for specifying UMM daemon connection options.
Definition: lbm.h:11287
LBMExpDLL int lbm_context_set_nak_cutoff(lbm_context_t *ctx, int flags)
Controls the NAK cutoff feature.
lbm_src_transport_stats_lbtrdma_t lbtrdma
The statistics for source LBT-RDMA transports.
Definition: lbm.h:4638
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...
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 fo...
LBMExpDLL int lbm_hfx_delete(lbm_hfx_t *hfx)
Delete a UM HFX object.
size_t size
Size (in bytes) of the value for this property.
Definition: lbm.h:10718
lbm_ushort_t index
Index of the Application Set.
Definition: lbm.h:3711
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.
Definition: lbm.h:3111
lbm_ulong_t send_would_block
Number of incidents where a UM send call returned EWOULDBLOCK. This is when a send call set to be non...
Definition: lbm.h:5730
lbm_msg_channel_info_t * channel_info
Channel information set when using Spectrum channels.
Definition: lbm.h:4037
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.
uint64_t timestamp
time of arrival
Definition: lbm.h:2977
int(* lbm_log_cb_proc)(int level, const char *message, void *clientd)
Application callback for message logging.
Definition: lbm.h:6155
lbm_ulong_t unblock_events
Number of unblock events currently in the event queue, i.e., a snapshot. Configuration option queue_c...
Definition: lbm.h:5500
A structure used to hold functions to configure datagram acceleration implementation callbacks...
Definition: lbm.h:3131
lbm_apphdr_chain_t * apphdr_chain
pointer to information used to send messages using app header chains. Set LBM_SRC_SEND_EX_FLAG_APPHDR...
Definition: lbm.h:2621
int flags
Zero or more flag bits ORed together indicating extra information about the acknowledgement.
Definition: lbm.h:2056
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 ...
lbm_ulong_t nak_stm_mean
Mean time (in milliseconds) in which loss recovery was accomplished. (Cumulative) ...
Definition: lbm.h:4795
lbm_ulong_t source_events_svc_min
Minimum service time for source events (in microseconds). This is the low-water mark (i...
Definition: lbm.h:5486
lbm_ulong_t bytes_rcved
Number of LBT-SMX datagram bytes received, i.e., the total of lengths of all LBT-SMX packets includin...
Definition: lbm.h:5172
struct lbm_config_option_stct_t lbm_config_option_t
Config option structure holding the option name and value via string types.
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.
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...
lbm_ushort_t store_index
the Store index of the Store involved
Definition: lbm.h:2021
lbm_ulong_t wrcv_msgs
Number of wildcard receiver messages currently in the event queue, i.e., a snapshot. Configuration option queue_count_enabled (event_queue) must be activated. (Snapshot)
Definition: lbm.h:5398
struct lbm_ume_store_name_entry_t_stct lbm_ume_store_name_entry_t
Structure that holds information to configure a persistent Store.
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.
void * clientd
Client data to be passed to the callback.
Definition: lbm.h:3378
struct lbm_ucast_resolver_entry_t_stct lbm_ucast_resolver_entry_t
Structure that holds information to configure a unicast resolver daemon.
lbm_ulong_t tr_src_topics
Number of topics in the source topic resolver cache (also referred to as the topic map)...
Definition: lbm.h:5685
lbm_ulong_t dgrams_dropped_type
Number of datagrams discarded due to bad packet type. The datagram&#39;s type field must match the expect...
Definition: lbm.h:5088
lbm_umq_msgid_t msgid
UMQ message ID of this message.
Definition: lbm.h:2310
Structure that holds the application function to configure Smart Source memory management.
Definition: lbm.h:2511
lbm_uint64_t info_flags
The internals of this structure are for UM internal use only.
Definition: lbm.h:2402
LBMExpDLL int lbm_context_process_events(lbm_context_t *ctx, lbm_ulong_t msec)
Process internal events in the given UM context object.
lbm_ulong_t wrcv_msgs_tot
Total accumulated number of wildcard receiver messages that have been added to the event queue (even ...
Definition: lbm.h:5402
lbm_timeval_t tsp
Timestamp indicating the earliest time that the message was received, in seconds and microseconds sin...
Definition: lbm.h:4016
lbm_ulong_t ncfs_shed
Number of NCFs received with reason code "shed". (Cumulative)
Definition: lbm.h:4760
lbm_ulong_t nak_pckts_rcved
Number of NAK packets received by this source transport. UM batches NAKs into NAK packets to save net...
Definition: lbm.h:4335
Structure that holds information to configure a Persistent Store group.
Definition: lbm.h:3577
struct lbm_rcv_topic_stats_t_stct lbm_rcv_topic_stats_t
Structure that holds statistics for a receiver topic.
lbm_ulong_t nak_tx_min
Minimum number of times per lost message that a receiver transport transmitted a NAK, i.e., the lowest value collected so far. A value greater than 1 indicates a chronically lossy network. (Cumulative)
Definition: lbm.h:4808
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.
Struct containing extended asynchronous operation status information about a single UMQ topic...
Definition: lbm.h:2263
lbm_ulong_t txw_msgs
Number of LBT-RM datagrams currently in the transmission window. (Snapshot)
Definition: lbm.h:4327
struct lbm_request_t_stct lbm_request_t
Opaque structure that designates a UM request object.
Definition: lbm.h:3897
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...
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 occu...
LBMExpDLL const char * lbm_errmsg(void)
Return an ASCII string containing the error message last encountered by this thread.
Structure that holds information for contexts after registration is complete to all involved queue in...
Definition: lbm.h:2798
int flags
Bitmap indicating extra information about the deregistration. Zero or more flag bits ORed together: L...
Definition: lbm.h:2013
void * msg_clientd
The clientd pointer passed in for the message.
Definition: lbm.h:2064
lbm_ulong_t source_events_svc_mean
Mean service time for source events (in microseconds). This is an exponentially weighted moving avera...
Definition: lbm.h:5492
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.
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.
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...
Structure that holds ACK information for a given message.
Definition: lbm.h:2031
Structure that holds information to configure any of several ULB source&#39;s application set attributes...
Definition: lbm.h:3709
LBMExpDLL int lbm_context_delete(lbm_context_t *ctx)
Delete a UM context object.
lbm_hf_sequence_number_t hf_sqn
The hot failover sequence number to send. Only valid for hot failover extended send API...
Definition: lbm.h:2636
int(* lbm_immediate_msg_cb_proc)(lbm_context_t *ctx, lbm_msg_t *msg, void *clientd)
Application callback for topicless immediate-mode received messages.
Definition: lbm.h:4076
struct lbm_src_send_ex_info_t_stct lbm_src_send_ex_info_t
Structure that holds information for the extended send calls.
lbm_ulong_t num_clients
Number of TCP receiver clients currently connected over this transport. (Snapshot) ...
Definition: lbm.h:4282
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.
Structure that holds the receiver creation function to configure the wildcard receiver create callbac...
Definition: lbm.h:4220
int type
The type of asynchronous operation.
Definition: lbm.h:2377
Information returned from lbm_datagram_acceleration_recvfrom_function_t function. ...
Definition: lbm.h:2967
Structure that holds information for source total inflight messages and bytes See lbm_flight_size_inf...
Definition: lbm.h:2073
lbm_ulong_t timer_events_svc_min
Minimum service time for timer events (in microseconds). This is the low-water mark (i...
Definition: lbm.h:5461
lbm_ulong_t msgs_rcved
Number of LBT-IPC datagrams received. (Cumulative)
Definition: lbm.h:5126
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...
lbm_uint_t low_rxreq_max_sequence_number
Lowest sequence number that the receiver will attempt to recover (with retransmit request maximum tak...
Definition: lbm.h:2742
lbm_ulong_t bytes_sent
Number of LBT-RDMA datagram bytes sent, i.e., the total of lengths of all LBT-RDMA packets including ...
Definition: lbm.h:4579
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...
Definition: lbm.h:3772
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 Sourc...
int type
Type of receiver event. See C Receiver Events.
Definition: lbm.h:3979
lbm_uint32_t topic_index
Topic index within transport session.
Definition: lbm.h:2443
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.
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 message...
struct lbm_new_transport_info_t_stct lbm_new_transport_info_t
Structure that holds information about a transport session that we&#39;re about to join.
LBMExpDLL int lbm_msg_retrieve_fragment_info(lbm_msg_t *msg, lbm_msg_fragment_info_t *info)
Retrieves fragment information from a message.
lbm_ulong_t nak_stm_mean
Mean time (in milliseconds) in which loss recovery was accomplished. (Cumulative) ...
Definition: lbm.h:5009
Structure that holds information for queuing receivers after they de-register from a queue...
Definition: lbm.h:2889
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.
lbm_datagram_acceleration_mcast_leave_function_t mcast_leave
Function pointer for datagram acceleration multicast leave.
Definition: lbm.h:3145
LBMExpDLL int lbm_is_umq_capable(void)
Determine if the LBM library is capable of UMQ operations.
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 de...
void * clientd
User client data pointer.
Definition: lbm.h:2314
void * clientd
Client data to be passed to the callback.
Definition: lbm.h:11757
struct lbm_iovec_t_stct lbm_iovec_t
Structure, struct iovec compatible, that holds information about buffers used for vectored sends...
lbm_uint_t registration_id
The registration ID that should be used with this UMP Store for the source.
Definition: lbm.h:3567
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...
LBMExpDLL int lbm_context_dump(lbm_context_t *ctx, int *size, lbm_config_option_t *opts)
Retrieves all context configuration option values.
union lbm_hf_sequence_number_t_stct lbm_hf_sequence_number_t
Structure to hold a hot failover sequence number.
lbm_mem_mgt_malloc_cb_func malloc_cb_func
Function pointer for application callback for malloc().
Definition: lbm.h:2513
lbm_uint_t src_registration_id
The registration ID for the source.
Definition: lbm.h:1948
lbm_ulong_t num_clients
Number of receiver transports that are currently connected to this source transport.
Definition: lbm.h:4571
Structure that holds information for UMQ messages that allows the message to be identified uniquely...
Definition: lbm.h:2221
lbm_umq_msgid_t msg_id
Message ID of the message being acknowledged.
Definition: lbm.h:2863
LBMExpDLL int lbm_src_delete(lbm_src_t *src)
Delete a UM source object.
struct lbm_hfx_rcv_t_stct lbm_hfx_rcv_t
Opaque structure that designates an HFX receiver.
Definition: lbm.h:3861
LBMExpDLL int lbm_src_flush(lbm_src_t *src)
Send messages from both the explicit and implicit batches ASAP.
LBMExpDLL lbm_rcv_t * lbm_rcv_from_hfx_rcv(lbm_hfx_rcv_t *hfxrcv)
Retrieve the underlying receiver from an lbm_hfx_rcv_t.
struct lbm_src_transport_stats_t_stct lbm_src_transport_stats_t
Structure that holds statistics for source transports.
lbm_datagram_acceleration_send_function_t send
Function pointer for datagram acceleration send.
Definition: lbm.h:3153
struct lbm_rcv_transport_stats_lbtrdma_t_stct lbm_rcv_transport_stats_lbtrdma_t
DEPRECATED, do not use. LBT-RDMA is no longer supported.
lbm_mim_unrecloss_function_cb func
Function pointer for application callback function.
Definition: lbm.h:3459
lbm_ushort_t src_port
Source port. Applicable only to LBT-RM, LBT-RU, TCP, and LBT-RDMA. Stored in host order...
Definition: lbm.h:4120
Structure that holds the application function to configure the callback for recovery sequence number ...
Definition: lbm.h:3471
LBMExpDLL int lbm_errnum(void)
Return the error number last encountered by this thread.
lbm_ulong_t source_events_svc_max
Maximum service time for source events (in microseconds). This is the high-water mark (i...
Definition: lbm.h:5497
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.
struct lbm_ume_rcv_ack_t_stct lbm_ume_rcv_ack_t
Opaque structure that designates a UMP ack object.
Definition: lbm.h:3956
struct lbm_src_transport_stats_lbtsmx_t_stct lbm_src_transport_stats_lbtsmx_t
Structure that holds datagram statistics for source LBT-SMX transports.
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...
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 n...
lbm_ulong_t cancel_events_tot
Total accumulated number of cancel events that have been added to the event queue (even if subsequent...
Definition: lbm.h:5511
lbm_async_operation_handle_t handle
An opaque handle to the asynchronous operation.
Definition: lbm.h:2384
lbm_umq_msgid_t msg_id
Message ID for the message sent.
Definition: lbm.h:2765
lbm_ulong_t ncfs_shed
Number of NCFs received with reason code "shed". (Cumulative)
Definition: lbm.h:4974
void * ume_msg_clientd
Client data pointer to be passed back in source events for stability and confirmations. Set LBM_SSRC_SEND_EX_FLAG_UME_CLIENTD in flags.
Definition: lbm.h:2660
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...
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 obj...
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.
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...
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.
lbm_ulong_t events_tot
Total accumulated number of events (including messages) that have been added to the event queue (even...
Definition: lbm.h:5565
lbm_ulong_t lu
The unsigned long int value of the attribute.
Definition: lbm.h:3717
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.
Definition: lbm.h:6104
Resolver event function (for UM internal use only).
Definition: lbm.h:2454
int(* lbm_rcv_cb_proc)(lbm_rcv_t *rcv, lbm_msg_t *msg, void *clientd)
Application callback for receiver events.
Definition: lbm.h:5901
int flags
Bitmap indicating extra information about the ACK. Zero or more flag bits ORed together: LBM_SRC_EVEN...
Definition: lbm.h:2861
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.
struct lbm_str_hash_func_ex_t_stct lbm_str_hash_func_ex_t
Structure that holds the extended hash function callback information.
Structure that holds information to configure a persistent Store.
Definition: lbm.h:3484
Value returned on successful execution of most UM APIs.
Definition: lbm.h:1726
lbm_ushort_t hdrlen
UM internal only. DO NOT ACCESS DIRECTLY!
Definition: lbm.h:4018
uint32_t lbm_uint32_t
For portability.
Definition: lbm.h:1745
lbm_ulong_t timer_events
Number of timer events currently in the event queue, i.e., a snapshot. Configuration option queue_cou...
Definition: lbm.h:5450
lbm_ushort_t group_size
The size of the group.
Definition: lbm.h:3581
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...
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.
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.
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.
lbm_ulong_t lost
Number of LBT-RU datagrams detected as lost. (Cumulative)
Definition: lbm.h:4957
LBMExpDLL int lbm_event_queue_attr_option_size(void)
Retrieves the number of options that are of type "event queue".
LBMExpDLL int lbm_debug_dump(const char *filename, int append)
Dump a running rollback debug log to the given filename.
lbm_ulong_t age_max
Maximum age of event queue entry when dequeued (in microseconds). (Cumulative)
Definition: lbm.h:5588
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...
lbm_xsp_zero_transports_cb_proc zero_transports_func
Function pointer for application callback.
Definition: lbm.h:11592
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.
Definition: lbm.h:3098
lbm_uint_t queue_id
The Queue ID of the queue.
Definition: lbm.h:2842
LBMExpDLL const char * lbm_strerror(void)
UM internal use only. DO NOT USE.
struct lbm_msg_channel_info_t_stct lbm_msg_channel_info_t
Structure that represents UMS Spectrum channel information.
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...
Definition: lbm.h:11742
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.
lbm_response_t * response
Pointer to response object used for sending responses for lbm_msg_t request.
Definition: lbm.h:3995
lbm_ulong_t unrecovered_txw
Number of LBT-RU datagrams unrecovered (LBM_MSG_UNRECOVERABLE_LOSS delivered to receiver application)...
Definition: lbm.h:5051
LBMExpDLL int lbm_authstorage_unload_roletable(void)
Unload the role table.
size_t len
Length of data in bytes.
Definition: lbm.h:3992
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.
struct lbm_buff_t_stct lbm_buff_t
UM internal use only. DO NOT USE.
Definition: lbm.h:3834
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...
LBMExpDLL int lbm_async_operation_status(lbm_async_operation_handle_t handle, int flags)
Query the current status of an outstanding asynchronous operation.
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 in...
lbm_ulong_t naks_rx_delay_ignored
Number of NAKs this source transport has not yet processed because doing so would exceed its retransm...
Definition: lbm.h:4370
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.
Definition: lbm.h:3341
LBMExpDLL void lbm_debugfile_max_rollover(lbm_uint32_t size)
This function for UM internal use only.
lbm_ulong_t resp_blocked
Number of incidents where a UM send response call was blocked. Unusually high counts could indicate p...
Definition: lbm.h:5733
lbm_uint_t src_registration_id
The registration ID for the source.
Definition: lbm.h:2015
lbm_ulong_t topicless_im_msgs
Number of topic-less Multicast Immediate Messaging (MIM) messages currently in the event queue...
Definition: lbm.h:5371
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.
LBMExpDLL int lbm_response_delete(lbm_response_t *resp)
Delete a UM response object.
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.
int(* lbm_datagram_acceleration_init_function_t)(uint16_t api_version)
Application callback function to implement datagram acceleration initialization.
Definition: lbm.h:2987
#define LBM_CONFIG_OPTIONS_STR_LEN
Size allocation of string buffers in lbm_config_option_t.
Definition: lbm.h:4170
lbm_uint_t last_sequence_number
Last sequence number for the message set.
Definition: lbm.h:2720
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.
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 (wil...
lbm_uint32_t flags
Bitmap indicating extra information about the advertisement. Zero or more flag bits ORed together: LB...
Definition: lbm.h:2437
void * reserved
Reserved field; do not touch.
Definition: lbm.h:2258
lbm_uint64_t session_id
Session ID.
Definition: lbm.h:3611
lbm_wildcard_rcv_compare_function_cb compfunc
Function pointer for application pattern matching function.
Definition: lbm.h:3404
Structure that holds datagram statistics for source LBT-RU transports.
Definition: lbm.h:4429
lbm_uint32_t src_ip
Source IP address. Applicable only to LBT-RM, LBT-RU, TCP, and LBT-RDMA. Stored in network order...
Definition: lbm.h:4118
void * msg_clientd
The clientd pointer passed in for the message.
Definition: lbm.h:2037
struct lbm_response_t_stct lbm_response_t
Opaque structure that designates a UM response object.
Definition: lbm.h:3903
struct lbm_src_t_stct lbm_src_t
Opaque structure that designates a UM source. See Source Object.
Definition: lbm.h:3873
LBMExpDLL int lbm_src_reset_transport_stats(lbm_src_t *src)
Reset the transport statistics for the transport used by the given source.
lbm_ulong_t context_source_events_svc_min
Minimum service time for context source events (in microseconds). (Cumulative)
Definition: lbm.h:5542
lbm_event_queue_t * evq
Event queue to be used (NULL if not). See Event Queue Object.
Definition: lbm.h:3817
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 fall...
Definition: lbm.h:11580
Structure that holds statistics for receiver transports.
Definition: lbm.h:5260
lbm_rcv_transport_stats_daemon_t daemon
These statistics have been deprecated.
Definition: lbm.h:5272
int(* lbm_timer_cb_proc)(lbm_context_t *ctx, const void *clientd)
Application callback for timer events.
Definition: lbm.h:5865
lbm_src_transport_stats_daemon_t daemon
These statistics have been deprecated.
Definition: lbm.h:4630
Structure that holds queue registration information for the UMQ context in an extended form...
Definition: lbm.h:2777
int flags
Bitmap of flags ORed together: LBM_MSG_UMQ_INDEX_ASSIGNMENT_ELIGIBILITY_START_COMPLETE_EX_FLAG_* (i...
Definition: lbm.h:2178
lbm_ulong_t lost
Number of LBT-RM datagrams detected as lost. (Cumulative)
Definition: lbm.h:4743
Structure that holds information to configure a persistent Store.
Definition: lbm.h:3560
void * clientd
Client data to be passed to the callback.
Definition: lbm.h:3364
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...
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.
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...
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 c...
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...
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...
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.
lbm_uint_t sequence_number
The sequence number for the source to use as reported by the Store.
Definition: lbm.h:1882
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.
LBMExpDLL int lbm_src_delete_ex(lbm_src_t *src, lbm_event_queue_cancel_cb_info_t *cbinfo)
Extended delete a UM source object.
lbm_ulong_t dgrams_dropped_hdr
Number of datagrams discarded due to bad header type. These datagrams appeared to be intact...
Definition: lbm.h:5094
lbm_ulong_t wrcv_msgs_svc_max
Maximum service time for wildcard receiver messages (in microseconds). This is the high-water mark (i...
Definition: lbm.h:5422
lbm_ulong_t msgs_sent
Number of LBT-SMX datagrams sent. (Cumulative)
Definition: lbm.h:4559
lbm_uint_t resolver_ip
The IP address of the unicast resolver daemon (network order)
Definition: lbm.h:3508
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.
lbm_ipv4_address_mask_t iface
Future: not currently implemented. Interface to be used.
Definition: lbm.h:3549
Structure that holds end-of-index information for queuing receivers.
Definition: lbm.h:2155
struct lbm_src_event_ume_registration_t_stct lbm_src_event_ume_registration_t
DEPRECATED, do not use.
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...
lbm_ulong_t cancel_events_svc_max
Maximum service time for cancel events. Cancel events as seen by the event queue do not actually cons...
Definition: lbm.h:5525
lbm_ulong_t rcv_cb_svc_time_min
The minimum time in microseconds used to call user receive callbacks of type lbm_rcv_cb_proc for wild...
Definition: lbm.h:5786
lbm_rcv_umq_queue_msg_retrieve_info_t * rcv_umq_queue_msg_retrieve
Results for message retrieve.
Definition: lbm.h:2392
lbm_rcv_transport_stats_lbtrdma_t lbtrdma
The statistics for receiver LBT-RDMA transports.
Definition: lbm.h:5278
LBMExpDLL void lbm_debug_filename(const char *filename)
Set the file to receive LBM debug log entries.
Structure that holds statistics for source transports.
Definition: lbm.h:4618
lbm_rcv_transport_stats_tcp_t tcp
The statistics for receiver TCP transports.
Definition: lbm.h:5268
LBMExpDLL int lbm_authstorage_checkpermission(char *username, char *command)
Check if the user is authorized to execute the specified command.
struct lbm_apphdr_chain_elem_t_stct lbm_apphdr_chain_elem_t
Structure that represents an element in an app header chain.
LBMExpDLL int lbm_src_ume_deregister(lbm_src_t *src)
Deregister a source from the UMP Stores.
LBMExpDLL int lbm_src_buffs_complete(lbm_src_t *const src)
Sends all buffers on a transport session that had been previously been acquired.
Structure that holds the High Resolution Timestamp and sequence number associated with the sent messa...
Definition: lbm.h:1935
lbm_ulong_t lu
The unsigned long int value of the attribute.
Definition: lbm.h:3739
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 in...
lbm_ulong_t bytes_rcved
Number of TCP datagram bytes received, i.e., the total of lengths of all TCP packets including UM hea...
Definition: lbm.h:4665
lbm_ulong_t dgrams_dropped_version
Number of datagrams discarded due to version mismatch. The datagram&#39;s version field must match the ex...
Definition: lbm.h:5091
lbm_ulong_t ncfs_ignored
Number of NCFs received from a source transport with reason code "ignored". (Cumulative) ...
Definition: lbm.h:4966
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.
LBMExpDLL int lbm_context_attr_delete(lbm_context_attr_t *attr)
Delete a UM context attribute object.
Structure that holds queue registration information to configure a queuing broker.
Definition: lbm.h:3672
struct lbm_transport_broker_entry_t_stct lbm_transport_broker_entry_t
Structure that holds IP and Port to configure the broker.
Structure that holds an IPv4 address and a CIDR style netmask.
Definition: lbm.h:1794
int type
Type of transport (e.g., LBM_TRANSPORT_STAT_TCP, LBM_TRANSPORT_STAT_LBTRM, etc.). ...
Definition: lbm.h:5262
lbm_ulong_t duplicate_data
Number of duplicate LBT-RU datagrams received. (Cumulative)
Definition: lbm.h:5043
lbm_ulong_t cancel_events_svc_mean
Mean service time for cancel events. Cancel events as seen by the event queue do not actually consume...
Definition: lbm.h:5521
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.
LBMExpDLL const char * lbm_strerror_errnum(int errnum)
UM internal use only. DO NOT USE.
int flags
Bitmap set of flags reserved for future use. Currently set to 0.
Definition: lbm.h:11720
int state
Current state of specified flight size. One of LBM_SRC_EVENT_FLIGHT_SIZE_NOTIFICATION_STATE_*.
Definition: lbm.h:1854
lbm_datagram_acceleration_getaddr_function_t getaddr
Function pointer for datagram acceleration get address.
Definition: lbm.h:3157
int mprop_int_cnt
Message property integer count. Set LBM_SSRC_SEND_EX_FLAG_PROPERTIES.
Definition: lbm.h:2663
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.
lbm_ulong_t nak_tx_mean
Mean number of times per lost message that a receiver transport transmitted a NAK. (Cumulative)
Definition: lbm.h:5028
LBMExpDLL int lbm_event_queue_size(lbm_event_queue_t *evq)
Determine the number of queued events in the event queue.
Structure that holds information for sources after registration is complete to all involved Stores...
Definition: lbm.h:1898
lbm_ulong_t resp_msgs_tot
Total accumulated number of response messages that have been added to the event queue (even if subseq...
Definition: lbm.h:5349
LBMExpDLL int lbm_hfx_rcv_delete(lbm_hfx_rcv_t *hfrcv)
Delete a HFX receiver.
lbm_datagram_acceleration_close_function_t close
Function pointer for datagram acceleration close.
Definition: lbm.h:3137
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.
lbm_ulong_t dgrams_dropped_hdr
Number of datagrams discarded due to bad header type. These datagrams appeared to be intact...
Definition: lbm.h:4880
lbm_src_transport_stats_lbtru_t lbtru
The statistics for source LBT-RU transports.
Definition: lbm.h:4632
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...
Definition: lbm.h:6194
lbm_ulong_t send_blocked
Number of incidents where a UM send call was blocked. Unusually high counts could indicate performanc...
Definition: lbm.h:5726
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.
lbm_ulong_t data_msgs_svc_min
Minimum service time for data messages (in microseconds). This is the low-water mark (i...
Definition: lbm.h:5332
lbm_uint_t registration_id
The registration ID for the source.
Definition: lbm.h:1880
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.
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.
Definition: lbm.h:10712
lbm_ushort_t subtype
Code representing the subtype (if any) of the data in this element.
Definition: lbm.h:10582
Structure that holds datagram statistics for receiver LBT-IPC transports.
Definition: lbm.h:5119
lbm_ulong_t naks_ignored
Number of NAKs this source transport ignored and sent an NCF with reason code "ignored". (Cumulative)
Definition: lbm.h:4458
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.
lbm_ushort_t group_index
The index of the group this UMP Store belongs to.
Definition: lbm.h:3565
struct lbm_umq_queue_application_set_t_stct lbm_umq_queue_application_set_t
Structure for defining a UMQ application set.
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.
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 ...
lbm_uint32_t source_domain_id
Domain ID of originating source.
Definition: lbm.h:2445
lbm_ulong_t age_mean
Mean age of event queue entries when dequeued (in microseconds). (Cumulative)
Definition: lbm.h:5581
lbm_uchar_t type
Code representing the type of data in this element.
Definition: lbm.h:10580
struct lbm_context_t_stct lbm_context_t
Context object (opaque) for UM. See Context Object.
Definition: lbm.h:1772
lbm_uint_t last_sequence_number
Last sequence number for the message after being fragmented.
Definition: lbm.h:2945
Structure that holds information for asynchronous operation callbacks.
Definition: lbm.h:2584
void * clientd
Client data to be passed to the callback.
Definition: lbm.h:3461
DEPRECATED, do not use.
Definition: lbm.h:4899
LBMExpDLL void lbm_set_lbtrm_src_loss_rate(int rate)
Dynamically set the LBT-RM source loss rate.
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.
LBMExpDLL void lbm_clr_benign_error_flag(void)
UM internal use only. DO NOT USE.
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.
Definition: lbm.h:3205
int type
Specifies which flight size&#39;s state changed. One of LBM_SRC_EVENT_FLIGHT_SIZE_NOTIFICATION_TYPE_*.
Definition: lbm.h:1852
Structure that holds beginning-of-index information for queuing receivers.
Definition: lbm.h:2135
lbm_ulong_t naks_shed
Number of NAKs this source transport has shed by sending an NCF with reason code "shed". (Cumulative)
Definition: lbm.h:4360
struct lbm_xsp_t_stct lbm_xsp_t
XSP object (opaque) for UM.
Definition: lbm.h:11457
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 outs...
struct lbm_rcv_batch_notify_func_t_stct lbm_rcv_batch_notify_func_t
UM internal use only. DO NOT USE.
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)...
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 obj...
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.
Definition: lbm.h:6134
Structure that holds the source_cost_evaluation_function (context) context option.
Definition: lbm.h:4153
struct lbm_rcv_transport_stats_daemon_t_stct lbm_rcv_transport_stats_daemon_t
DEPRECATED, do not use.
LBMExpDLL lbm_ume_rcv_ack_t * lbm_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 re...
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.
lbm_uint64_t stamp
The stamp of the message that indicates the individual message from the given source context...
Definition: lbm.h:2225
LBMExpDLL int lbm_context_attr_dump(lbm_context_attr_t *cattr, int *size, lbm_config_option_t *opts)
Retrieves all context configuration options.
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.
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 inde...
LBMExpDLL int lbm_wildcard_rcv_dump(lbm_wildcard_rcv_t *wrcv, int *size, lbm_config_option_t *opts)
Retrieves all wildcard receiver attribute options.
lbm_ulong_t msgs_rcved
Number of LBT-RDMA datagrams received. Depending on batching settings, a single LBT-RDMA datagram may...
Definition: lbm.h:5201
Structure that holds datagram statistics for receiver LBT-RM transports.
Definition: lbm.h:4703
Resolver event structure (for UM internal use only).
Definition: lbm.h:2400
lbm_ushort_t broker_port
The port of the broker. (network order)
Definition: lbm.h:3547
lbm_rcv_batch_notify_func_start_cb start_notify
UM internal use only. DO NOT USE.
Definition: lbm.h:3388
lbm_ulong_t callback_events_svc_min
Minimum service time for callback events (in microseconds). (Cumulative)
Definition: lbm.h:5604
LBMExpDLL int lbm_context_set_name(lbm_context_t *ctx, const char *name)
DEPRECATED, DOES NOT FUNCTION.
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.
lbm_ushort_t source_port
Future: not currently implemented. The source port to be used (network order).
Definition: lbm.h:3551
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.
Structure that holds Store registration information for the UMP source in an extended form...
Definition: lbm.h:1875
lbm_ulong_t ncfs_rx_delay
Number of NCFs received with reason code "rx_delay". (Cumulative)
Definition: lbm.h:4770
lbm_ulong_t topicless_im_msgs_svc_mean
Mean service time for topic-less Multicast Immediate Messaging (MIM) messages (in microseconds)...
Definition: lbm.h:5389
Structure that holds information for the extended send calls.
Definition: lbm.h:2609
void * clientd
Client data to be passed to the callback.
Definition: lbm.h:2458
lbm_ulong_t lbm_msgs_no_topic_rcved
Number of messages received that were not for a topic of interest to the receiver. (Cumulative)
Definition: lbm.h:5080
lbm_event_queue_t * evq
Event queue to be used (NULL if not). See Event Queue Object.
Definition: lbm.h:4100
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.
lbm_ushort_t group_index
The index of the group this UMP Store belongs to.
Definition: lbm.h:3490
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 s...
LBMExpDLL int lbm_event_dispatch(lbm_event_queue_t *evq, lbm_ulong_t tmo)
Dispatch waiting events to appropriate callback functions.
lbm_uint_t rcv_registration_id
The registration ID for the receiver.
Definition: lbm.h:1950
lbm_ulong_t rx_bytes_sent
Number of LBT-RM transport total bytes retransmitted by this source transport (triggered under the sa...
Definition: lbm.h:4408
int type
Data type of value. Choose between LBM_MSG_PROPERTY_BOOLEAN, LBM_MSG_PROPERTY_BYTE, LBM_MSG_PROPERTY_SHORT, LBM_MSG_PROPERTY_INT, LBM_MSG_PROPERTY_LONG, LBM_MSG_PROPERTY_FLOAT, LBM_MSG_PROPERTY_DOUBLE, LBM_MSG_PROPERTY_STRING.
Definition: lbm.h:10724
lbm_ulong_t uim_msgs_no_stream_rcved
Number of unicast immediate messages (UIMs) received without stream information. (Cumulative) ...
Definition: lbm.h:5742
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://communit...
lbm_ulong_t dgrams_dropped_other
Number of unrecognizable datagrams discarded due to reasons other than those determined by the above ...
Definition: lbm.h:5100
struct lbm_src_transport_stats_daemon_t_stct lbm_src_transport_stats_daemon_t
DEPRECATED, do not use.
lbm_ulong_t tv_usec
Microseconds.
Definition: lbm.h:1809
Structure that holds UMQ ULB receiver information in an extended form.
Definition: lbm.h:2909
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...
lbm_datagram_acceleration_send_disconnect_function_t send_disconnect
Function pointer for datagram acceleration send disconnect.
Definition: lbm.h:3151
Structure that holds datagram statistics for source BROKER transports.
Definition: lbm.h:4598
int flags
Bitmap indicating extra information about the async operation. Zero or more flag bits ORed together: ...
Definition: lbm.h:2382
const void * pdata
UM internal only. DO NOT ACCESS DIRECTLY!
Definition: lbm.h:4043
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.
lbm_wildcard_rcv_create_function_cb createfunc
Function pointer for application callback.
Definition: lbm.h:4222
uint16_t lbm_uint16_t
For portability.
Definition: lbm.h:1743
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.
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 ...
Definition: lbm.h:3292
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.
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).
lbm_ulong_t bytes_sent
Number of LBT-IPC datagram bytes sent, i.e., the total of lengths of all LBT-IPC packets including UM...
Definition: lbm.h:4532
lbm_uint_t application_set_index
The Application Set Index the receiver is in.
Definition: lbm.h:2917
struct lbm_resolver_event_func_t_stct lbm_resolver_event_func_t
Resolver event function (for UM internal use only).