UM C API 6.17.1

- Main Page
- Related Pages
- Modules
- Data Structures
- Files

- File List
- Globals

lbm.h
Go to the documentation of this file.
1
11 /*
12 $Id: //UMprod/REL_6_17_1/29West/lbm/src/lib/lbm/lbm.h#3 $
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,2025 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 17
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 Possible JMS Message Types.
1671 */
1672 #define LBM_TEXTMESSAGE 0
1673 #define LBM_BYTEMESSAGE 1
1674 #define LBM_MAPMESSAGE 2
1675 #define LBM_MESSAGE 3
1676 #define LBM_OBJECTMESSAGE 4
1677 #define LBM_STREAMMESSAGE 5
1678
1679 /*
1680 List of JMS provider message properties.
1681 */
1682
1683 /* int, NON_PERSISTENT = 1, PERSISTENT = 2 */
1684 #define LBM_JMSDeliveryMode "JMSDeliveryMode"
1685
1686 /* long, Number of milliseconds since 1970. */
1687 #define LBM_JMSExpiration "JMSExpiration"
1688
1689 /* int */
1690 #define LBM_JMSPriority "JMSPriority"
1691
1692 /* String */
1693 #define LBM_JMSMessageID "JMSMessageID"
1694
1695 /* long, Number of milliseconds since 1970. */
1696 #define LBM_JMSTimestamp "JMSTimestamp"
1697
1698 /* String */
1699 #define LBM_JMSCorrelationID "JMSCorrelationID"
1700
1701 /* String, topic, queue or destination */
1702 #define LBM_JMSType "JMSType"
1703
1704 /* boolean */
1705 #define LBM_JMSRedelivered "JMSRedelivered"
1706
1707 /* int, LBM_TEXTMESSAGE, LBM_BYTEMESSAGE, LBM_MAPMESSAGE, LBM_MESSAGE, LBM_OBJECTMESSAGE, LBM_STREAMMESSAGE */
1708 #define LBM_LBMMessageType "JMS_UM_MessageType"
1709
1710 /* String, topic, queue or destination */
1711 #define LBM_JMSTopicType "JMSTopicType"
1712
1713 /* String */
1714 #define LBM_JMSReplyToName "JMSReplyToName"
1715
1716 /* boolean*/
1717 #define LBM_JMSReplyToWildcard "JMSReplyToWildcard"
1718
1719 /* String, topic, queue or destination */
1720 #define LBM_JMSReplyToType "JMSReplyToType"
1721
1722 /* enums */
1723 enum {
1725 LBM_OK = 0,
1727 LBM_FAILURE = -1
1728 };
1729
1730 /* Types */
1732 typedef unsigned int lbm_uint_t;
1734 typedef unsigned long int lbm_ulong_t;
1736 typedef unsigned short int lbm_ushort_t;
1738 typedef unsigned char lbm_uchar_t;
1740 typedef uint8_t lbm_uint8_t;
1742 typedef uint16_t lbm_uint16_t;
1744 typedef uint32_t lbm_uint32_t;
1746 typedef int32_t lbm_int32_t;
1748 typedef uint64_t lbm_uint64_t;
1749
1750 #if !defined(DONT_TYPEDEF_INT_T)
1751
1752 typedef int64_t lbm_int64_t;
1753 #else
1754
1755 typedef __int64 lbm_int64_t;
1756 #endif
1757
1758 #define LBM_EXTERNAL_STRUCT_FILL_SIZE (512)
1759
1761 #if defined(_WIN32)
1762 typedef SOCKET lbm_handle_t;
1763 #else
1764 typedef int lbm_handle_t;
1765 #endif /* _WIN32 */
1766
1768 struct lbm_context_t_stct;
1771 typedef struct lbm_context_t_stct lbm_context_t;
1772
1780 typedef struct lbm_iovec_t_stct {
1782 char *iov_base;
1784 size_t iov_len;
1785 } lbm_iovec_t;
1786
1793 typedef struct lbm_ipv4_address_mask_t_stct {
1795 lbm_uint_t addr;
1797 int bits;
1798 } lbm_ipv4_address_mask_t;
1799
1804 typedef struct lbm_timeval_t_stct {
1806 lbm_ulong_t tv_sec;
1808 lbm_ulong_t tv_usec;
1809 } lbm_timeval_t;
1810
1815 typedef struct lbm_timespec_t_stct {
1817 lbm_ulong_t tv_sec;
1819 lbm_ulong_t tv_nsec;
1820 } lbm_timespec_t;
1821
1831 typedef struct lbm_src_event_wakeup_t_stct {
1834 int flags;
1835 } lbm_src_event_wakeup_t;
1836
1849 typedef struct lbm_src_event_flight_size_notification_t_stct {
1851 int type;
1853 int state;
1854 } lbm_src_event_flight_size_notification_t;
1855
1860 typedef struct lbm_src_event_ume_registration_t_stct {
1862 lbm_uint_t registration_id;
1863 } lbm_src_event_ume_registration_t;
1864
1874 typedef struct lbm_src_event_ume_registration_ex_t_stct {
1877 int flags;
1879 lbm_uint_t registration_id;
1881 lbm_uint_t sequence_number;
1883 lbm_ushort_t store_index;
1885 char store[LBM_UME_MAX_STORE_STRLEN];
1886 } lbm_src_event_ume_registration_ex_t;
1887
1897 typedef struct lbm_src_event_ume_registration_complete_ex_t_stct {
1900 int flags;
1902 lbm_uint_t sequence_number;
1903 } lbm_src_event_ume_registration_complete_ex_t;
1904
1911 typedef struct lbm_src_event_ume_deregistration_ex_t_stct {
1913 int flags;
1915 lbm_uint32_t registration_id;
1917 lbm_uint_t sequence_number;
1919 lbm_ushort_t store_index;
1921 char store[LBM_UME_MAX_STORE_STRLEN];
1922 } lbm_src_event_ume_deregistration_ex_t;
1923
1934 typedef struct lbm_src_event_timestamp_info_t_stct {
1936 lbm_timespec_t hr_timestamp;
1938 lbm_uint_t sequence_number;
1939 } lbm_src_event_timestamp_info_t;
1940
1941
1945 typedef struct lbm_msg_ume_registration_t_stct {
1947 lbm_uint_t src_registration_id;
1949 lbm_uint_t rcv_registration_id;
1950 } lbm_msg_ume_registration_t;
1951
1961 typedef struct lbm_msg_ume_registration_ex_t_stct {
1965 int flags;
1967 lbm_uint_t src_registration_id;
1969 lbm_uint_t rcv_registration_id;
1971 lbm_uint_t sequence_number;
1973 lbm_ushort_t store_index;
1975 char store[LBM_UME_MAX_STORE_STRLEN];
1977 lbm_uint64_t src_session_id;
1978 } lbm_msg_ume_registration_ex_t;
1979
1990 typedef struct lbm_msg_ume_registration_complete_ex_t_stct {
1993 int flags;
1995 lbm_uint_t sequence_number;
1997 lbm_uint64_t src_session_id;
1998 } lbm_msg_ume_registration_complete_ex_t;
1999
2009 typedef struct lbm_msg_ume_deregistration_ex_t_stct {
2012 int flags;
2014 lbm_uint_t src_registration_id;
2016 lbm_uint_t rcv_registration_id;
2018 lbm_uint_t sequence_number;
2020 lbm_ushort_t store_index;
2022 char store[LBM_UME_MAX_STORE_STRLEN];
2023 } lbm_msg_ume_deregistration_ex_t;
2024
2030 typedef struct lbm_src_event_ume_ack_info_t_stct {
2032 lbm_uint_t sequence_number;
2034 lbm_uint_t rcv_registration_id;
2036 void *msg_clientd;
2037 } lbm_src_event_ume_ack_info_t;
2038
2048 typedef struct lbm_src_event_ume_ack_ex_info_t_stct {
2055 int flags;
2057 lbm_uint_t sequence_number;
2059 lbm_uint_t rcv_registration_id;
2061 char store[LBM_UME_MAX_STORE_STRLEN];
2063 void *msg_clientd;
2065 lbm_ushort_t store_index;
2066 } lbm_src_event_ume_ack_ex_info_t;
2067
2068
2072 typedef struct lbm_flight_size_inflight_t_stct {
2074 int messages;
2076 lbm_uint64_t bytes;
2077 } lbm_flight_size_inflight_t;
2078
2080 struct lbm_src_channel_info_t_stct;
2083 typedef struct lbm_src_channel_info_t_stct lbm_src_channel_info_t;
2084
2086 #define LBM_UMQ_INDEX_FLAG_NUMERIC 0x1
2087
2094 typedef struct lbm_umq_index_info_t_stct {
2097 int flags;
2099 int reserved;
2101 char index[LBM_UMQ_MAX_INDEX_LEN];
2103 size_t index_len;
2104 } lbm_umq_index_info_t;
2105
2115 typedef struct lbm_msg_umq_index_assignment_eligibility_stop_complete_ex_t_stct {
2117 int flags;
2119 lbm_uint_t queue_id;
2121 char queue[LBM_UMQ_MAX_QUEUE_STRLEN];
2122 } lbm_msg_umq_index_assignment_eligibility_stop_complete_ex_t;
2123
2124
2134 typedef struct lbm_msg_umq_index_assigned_ex_t_stct {
2137 int flags;
2139 lbm_uint_t queue_id;
2141 char queue[LBM_UMQ_MAX_QUEUE_STRLEN];
2143 lbm_umq_index_info_t index_info;
2144 } lbm_msg_umq_index_assigned_ex_t;
2145
2154 typedef struct lbm_msg_umq_index_released_ex_t_stct {
2157 int flags;
2159 lbm_uint_t queue_id;
2161 char queue[LBM_UMQ_MAX_QUEUE_STRLEN];
2163 lbm_umq_index_info_t index_info;
2164 } lbm_msg_umq_index_released_ex_t;
2165
2175 typedef struct lbm_msg_umq_index_assignment_eligibility_start_complete_ex_t_stct {
2177 int flags;
2179 lbm_uint_t queue_id;
2181 char queue[LBM_UMQ_MAX_QUEUE_STRLEN];
2182 } lbm_msg_umq_index_assignment_eligibility_start_complete_ex_t;
2183
2185 struct lbm_apphdr_chain_t_stct;
2187 typedef struct lbm_apphdr_chain_t_stct lbm_apphdr_chain_t;
2188
2195 typedef struct lbm_umq_msg_total_lifetime_info_t_stct {
2197 int flags;
2199 lbm_ulong_t umq_msg_total_lifetime;
2200 } lbm_umq_msg_total_lifetime_info_t;
2201
2203 typedef union lbm_hf_sequence_number_t_stct {
2205 lbm_uint32_t u32;
2207 lbm_uint64_t u64;
2208 } lbm_hf_sequence_number_t;
2209
2211 typedef lbm_uint64_t lbm_umq_regid_t;
2212
2220 typedef struct lbm_umq_msgid_t_stct {
2222 lbm_umq_regid_t regid;
2224 lbm_uint64_t stamp;
2225 } lbm_umq_msgid_t;
2226
2231 typedef struct lbm_umq_queue_application_set_t_stct {
2233 char appset_name[LBM_UMQ_MAX_APPSET_STRLEN];
2235 lbm_uint32_t *ids;
2237 int num_ids;
2239 lbm_ushort_t application_set_index;
2241 void *reserved;
2242 } lbm_umq_queue_application_set_t;
2243
2249 typedef struct lbm_umq_queue_topic_t_stct {
2251 char topic_name[LBM_UMQ_MAX_TOPIC_STRLEN];
2253 lbm_umq_queue_application_set_t *appsets;
2255 int num_appsets;
2257 void *reserved;
2258 } lbm_umq_queue_topic_t;
2259
2262 typedef struct {
2264 lbm_umq_queue_topic_t *topic;
2266 int status;
2268 int flags;
2269 } lbm_umq_queue_topic_status_t;
2270
2272 typedef struct {
2274 lbm_umq_queue_topic_status_t *topics;
2276 int num_topics;
2277 } lbm_ctx_umq_queue_topic_list_info_t;
2278
2280 struct lbm_msg_t_stct;
2287 typedef struct lbm_msg_t_stct lbm_msg_t;
2288
2290 struct lbm_event_queue_t_stct;
2293 typedef struct lbm_event_queue_t_stct lbm_event_queue_t;
2294
2296 #define LBM_UMQ_QUEUE_MSG_STATUS_UNKNOWN 0
2297
2298 #define LBM_UMQ_QUEUE_MSG_STATUS_UNASSIGNED 1
2299
2300 #define LBM_UMQ_QUEUE_MSG_STATUS_ASSIGNED 2
2301
2302 #define LBM_UMQ_QUEUE_MSG_STATUS_REASSIGNING 3
2303
2304 #define LBM_UMQ_QUEUE_MSG_STATUS_CONSUMED 4
2305
2307 typedef struct {
2309 lbm_umq_msgid_t msgid;
2311 lbm_msg_t *msg;
2313 void *clientd;
2315 int status;
2317 int flags;
2318 } lbm_umq_queue_msg_status_t;
2319
2321 typedef struct {
2323 lbm_umq_queue_msg_status_t *msgs;
2325 lbm_uint64_t num_msgs;
2326 } lbm_rcv_umq_queue_msg_list_info_t;
2327
2329 typedef struct {
2331 lbm_umq_queue_msg_status_t *msgs;
2333 int num_msgs;
2334 } lbm_rcv_umq_queue_msg_retrieve_info_t;
2335
2337 #define LBM_ASYNC_OP_TYPE_CTX_UMQ_QUEUE_TOPIC_LIST 1
2338
2339 #define LBM_ASYNC_OP_TYPE_RCV_UMQ_QUEUE_MSG_LIST 2
2340
2341 #define LBM_ASYNC_OP_TYPE_RCV_UMQ_QUEUE_MSG_RETRIEVE 3
2342
2344 #define LBM_ASYNC_OP_STATUS_IN_PROGRESS 1
2345
2346 #define LBM_ASYNC_OP_STATUS_COMPLETE 128
2347
2348 #define LBM_ASYNC_OP_STATUS_ERROR 129
2349
2350 #define LBM_ASYNC_OP_STATUS_CANCELED 130
2351
2353 #define LBM_ASYNC_OP_INVALID_HANDLE 0
2354
2356 #define LBM_ASYNC_OPERATION_CANCEL_FLAG_NONBLOCK 0x1
2357
2359 #define LBM_ASYNC_OPERATION_STATUS_FLAG_NONBLOCK 0x1
2360
2363 typedef lbm_uint64_t lbm_async_operation_handle_t;
2364
2374 typedef struct {
2376 int type;
2378 int status;
2381 int flags;
2383 lbm_async_operation_handle_t handle;
2385 union {
2387 lbm_ctx_umq_queue_topic_list_info_t *ctx_umq_queue_topic_list;
2389 lbm_rcv_umq_queue_msg_list_info_t *rcv_umq_queue_msg_list;
2391 lbm_rcv_umq_queue_msg_retrieve_info_t *rcv_umq_queue_msg_retrieve;
2392 } info;
2393 } lbm_async_operation_info_t;
2394
2399 typedef struct lbm_resolver_event_info_t_stct {
2401 lbm_uint64_t info_flags;
2403 lbm_uint32_t capability_flags;
2405 lbm_uint8_t source_type;
2407 lbm_uint32_t domain_id;
2409 lbm_uint32_t version;
2411 lbm_uint8_t source_id[8];
2412 } lbm_resolver_event_info_t;
2413
2416 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);
2417
2418 #define LBM_RESOLVER_EVENT_ADVERTISEMENT_TYPE 0x01
2419
2421 #define LBM_RESOLVER_EVENT_ADVERTISEMENT_FLAGS_LJ 0x00000001
2422
2423 #define LBM_RESOLVER_EVENT_ADVERTISEMENT_FLAGS_UME 0x00000002
2424
2425 #define LBM_RESOLVER_EVENT_ADVERTISEMENT_FLAGS_UMQ 0x00000004
2426
2427 #define LBM_RESOLVER_EVENT_ADVERTISEMENT_FLAGS_ULB 0x00000008
2428
2429 #define LBM_RESOLVER_EVENT_ADVERTISEMENT_FLAGS_EVC 0x00000010 /* Eviction Notice */
2430
2433 typedef struct lbm_resolver_event_advertisement_t_stct {
2436 lbm_uint32_t flags;
2438 char topic_string[LBM_MSG_MAX_TOPIC_LEN];
2440 char transport_string[LBM_MSG_MAX_SOURCE_LEN];
2442 lbm_uint32_t topic_index;
2444 lbm_uint32_t source_domain_id;
2446 lbm_uint8_t otid[LBM_OTID_BLOCK_SZ];
2448 lbm_uint32_t source_type;
2449 } lbm_resolver_event_advertisement_t;
2450
2453 typedef struct lbm_resolver_event_func_t_stct {
2455 lbm_resolver_event_cb_func event_cb_func;
2457 void * clientd;
2458 } lbm_resolver_event_func_t;
2459
2471 typedef void *(*lbm_mem_mgt_malloc_cb_func) (size_t size, void *clientd);
2472
2485 typedef void *(*lbm_mem_mgt_realloc_cb_func) (void *ptr, size_t size, void *clientd);
2486
2498 typedef void(*lbm_mem_mgt_free_cb_func) (void *ptr, void *clientd);
2499
2510 typedef struct lbm_mem_mgt_callbacks_t_stct {
2512 lbm_mem_mgt_malloc_cb_func malloc_cb_func;
2514 lbm_mem_mgt_realloc_cb_func realloc_cb_func;
2516 lbm_mem_mgt_free_cb_func free_cb_func;
2518 void * clientd;
2519 } lbm_mem_mgt_callbacks_t;
2520
2521 /* lbm_process_events_info_tinfo flags */
2524 #define LBM_PROC_EVENT_EX_FLAG_USER_TIME 0x0001
2525
2527 #define LBM_PROC_EVENT_EX_FLAG_NO_MAIN_LOOP_MUTEX 0x0002
2528
2538 typedef struct lbm_process_events_info_t_stct {
2541 int flags;
2545 lbm_timeval_t time_val;
2546 } lbm_process_events_info_t;
2547
2548 #define LBM_RESOLVER_EVENT_INFO_CAPABILITY_VERSION_FLAG_UME 0x1
2549 #define LBM_RESOLVER_EVENT_INFO_CAPABILITY_VERSION_FLAG_UMQ 0x2
2550
2551
2552 #define LBM_RESOLVER_EVENT_INFO_INFO_DOMAIN_ID_PRESENT_FLAG 0x1ULL
2553 #define LBM_RESOLVER_EVENT_INFO_INFO_SOURCE_ID_PRESENT_FLAG 0x2ULL
2554 #define LBM_RESOLVER_EVENT_INFO_INFO_SOURCE_ID_TYPE_PRESENT_FLAG 0x4ULL
2555 #define LBM_RESOLVER_EVENT_INFO_INFO_VERSION_PRESENT_FLAG 0x8ULL
2556
2557 #define LBMR_RESOLVER_EVENT_INFO_SRC_TYPE_APPLICATION 0
2558 #define LBMR_RESOLVER_EVENT_INFO_SRC_TYPE_TNWGD 1
2559 #define LBMR_RESOLVER_EVENT_INFO_SRC_TYPE_STORE 2
2560
2561
2568 typedef int (*lbm_async_operation_function_cb)(lbm_async_operation_info_t *opinfo, void *clientd);
2569
2572 #define LBM_ASYNC_OP_INFO_FLAG_INLINE 0x1
2573
2574 #define LBM_ASYNC_OP_INFO_FLAG_FIRST 0x2
2575
2576 #define LBM_ASYNC_OP_INFO_FLAG_LAST 0x4
2577
2578 #define LBM_ASYNC_OP_INFO_FLAG_ONLY (LBM_ASYNC_OP_INFO_FLAG_FIRST | LBM_ASYNC_OP_INFO_FLAG_LAST)
2579
2583 typedef struct {
2585 lbm_async_operation_function_cb func;
2587 lbm_event_queue_t *evq;
2589 void *clientd;
2591 int flags;
2592 } lbm_async_operation_func_t;
2593
2595 struct lbm_msg_properties_t_stct;
2600 typedef struct lbm_msg_properties_t_stct lbm_msg_properties_t;
2601
2608 typedef struct lbm_src_send_ex_info_t_stct {
2611 int flags;
2614 void *ume_msg_clientd;
2617 lbm_src_channel_info_t *channel_info;
2620 lbm_apphdr_chain_t *apphdr_chain;
2623 lbm_umq_index_info_t *umq_index;
2627 lbm_umq_msg_total_lifetime_info_t *umq_total_lifetime;
2631 lbm_msg_properties_t *properties;
2635 lbm_hf_sequence_number_t hf_sqn;
2638 lbm_async_operation_func_t *async_opfunc;
2639 } lbm_src_send_ex_info_t;
2640
2653 typedef struct lbm_ssrc_send_ex_info_t_stct {
2656 int flags;
2659 void *ume_msg_clientd;
2662 int mprop_int_cnt;
2665 char **mprop_int_keys;
2668 lbm_int32_t *mprop_int_vals;
2671 lbm_uint32_t channel;
2674 char *usr_supplied_buffer;
2675 } lbm_ssrc_send_ex_info_t;
2676
2685 typedef struct lbm_ume_rcv_regid_ex_func_info_t_stct {
2687 int flags;
2689 lbm_uint_t src_registration_id;
2691 lbm_ushort_t store_index;
2694 void *source_clientd;
2696 char source[LBM_MSG_MAX_SOURCE_LEN];
2698 char store[LBM_UME_MAX_STORE_STRLEN];
2699 } lbm_ume_rcv_regid_ex_func_info_t;
2700
2713 typedef struct lbm_src_event_sequence_number_info_t_stct {
2715 int flags;
2717 lbm_uint_t first_sequence_number;
2719 lbm_uint_t last_sequence_number;
2721 void *msg_clientd;
2722 } lbm_src_event_sequence_number_info_t;
2723
2733 typedef struct lbm_ume_rcv_recovery_info_ex_func_info_t_stct {
2736 int flags;
2739 lbm_uint_t low_sequence_number;
2741 lbm_uint_t low_rxreq_max_sequence_number;
2743 lbm_uint_t high_sequence_number;
2746 void *source_clientd;
2748 char source[LBM_MSG_MAX_SOURCE_LEN];
2750 lbm_uint64_t src_session_id;
2751 } lbm_ume_rcv_recovery_info_ex_func_info_t;
2752
2760 typedef struct lbm_src_event_umq_message_id_info_t_stct {
2762 int flags;
2764 lbm_umq_msgid_t msg_id;
2766 void *msg_clientd;
2767 } lbm_src_event_umq_message_id_info_t;
2768
2776 typedef struct lbm_context_event_umq_registration_ex_t_stct {
2778 int flags;
2780 lbm_umq_regid_t registration_id;
2782 lbm_uint_t queue_id;
2784 lbm_uint_t queue_instance_index;
2786 char queue_instance[LBM_UME_MAX_STORE_STRLEN];
2788 char queue[LBM_UMQ_MAX_QUEUE_STRLEN];
2789 } lbm_context_event_umq_registration_ex_t;
2790
2797 typedef struct lbm_context_event_umq_registration_complete_ex_t_stct {
2800 int flags;
2802 lbm_umq_regid_t registration_id;
2804 lbm_uint_t queue_id;
2806 char queue[LBM_UMQ_MAX_QUEUE_STRLEN];
2807 } lbm_context_event_umq_registration_complete_ex_t;
2808
2817 typedef struct lbm_src_event_umq_registration_complete_ex_t_stct {
2820 int flags;
2822 lbm_uint_t queue_id;
2824 char queue[LBM_UMQ_MAX_QUEUE_STRLEN];
2825 } lbm_src_event_umq_registration_complete_ex_t;
2826
2836 typedef struct lbm_msg_umq_registration_complete_ex_t_stct {
2839 int flags;
2841 lbm_uint_t queue_id;
2843 lbm_uint_t assignment_id;
2845 char queue[LBM_UMQ_MAX_QUEUE_STRLEN];
2846 } lbm_msg_umq_registration_complete_ex_t;
2847
2856 typedef struct lbm_src_event_umq_stability_ack_info_ex_t_stct {
2860 int flags;
2862 lbm_umq_msgid_t msg_id;
2864 lbm_uint_t first_sequence_number;
2866 lbm_uint_t last_sequence_number;
2868 lbm_uint_t queue_id;
2870 lbm_uint_t queue_instance_index;
2872 void *msg_clientd;
2874 char queue_instance[LBM_UME_MAX_STORE_STRLEN];
2876 char queue[LBM_UMQ_MAX_QUEUE_STRLEN];
2877 } lbm_src_event_umq_stability_ack_info_ex_t;
2878
2888 typedef struct lbm_msg_umq_deregistration_complete_ex_t_stct {
2891 int flags;
2893 lbm_uint_t queue_id;
2895 char queue[LBM_UMQ_MAX_QUEUE_STRLEN];
2896 } lbm_msg_umq_deregistration_complete_ex_t;
2897
2908 typedef struct lbm_src_event_umq_ulb_receiver_info_ex_t_stct {
2910 int flags;
2912 lbm_umq_regid_t registration_id;
2914 lbm_uint_t assignment_id;
2916 lbm_uint_t application_set_index;
2918 char receiver[LBM_UMQ_ULB_MAX_RECEIVER_STRLEN];
2919 } lbm_src_event_umq_ulb_receiver_info_ex_t;
2920
2931 typedef struct lbm_src_event_umq_ulb_message_info_ex_t_stct {
2936 int flags;
2938 lbm_umq_msgid_t msg_id;
2940 lbm_umq_regid_t registration_id;
2942 lbm_uint_t first_sequence_number;
2944 lbm_uint_t last_sequence_number;
2946 lbm_uint_t assignment_id;
2948 lbm_uint_t application_set_index;
2950 void *msg_clientd;
2952 char receiver[LBM_UMQ_ULB_MAX_RECEIVER_STRLEN];
2953 } lbm_src_event_umq_ulb_message_info_ex_t;
2954
2956 struct sockaddr_in;
2958 struct in_addr;
2959
2966 typedef struct lbm_datagram_acceleration_recv_info_t_stct {
2968 void *handle;
2970 void *clientd;
2972 char *buffer;
2974 uint32_t length;
2976 uint64_t timestamp;
2977 } lbm_datagram_acceleration_recv_info_t;
2978
2986 typedef int (*lbm_datagram_acceleration_init_function_t)(uint16_t api_version);
2987
2997 typedef int (*lbm_datagram_acceleration_open_function_t)(struct in_addr *interface_addr, int flags, void **device_out);
2998
3006 typedef int (*lbm_datagram_acceleration_close_function_t)(void *device);
3007
3019 typedef int (*lbm_datagram_acceleration_bind_function_t)(void *device, int flags, int port, void *context, void **handle_out);
3020
3028 typedef int (*lbm_datagram_acceleration_unbind_function_t)(void *handle);
3029
3038 typedef int (*lbm_datagram_acceleration_mcast_join_function_t)(void *handle, struct in_addr *mcast_addr);
3039
3048 typedef int (*lbm_datagram_acceleration_mcast_leave_function_t)(void *handle, struct in_addr *mcast_addr);
3049
3063 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);
3064
3076 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);
3077
3085 typedef int (*lbm_datagram_acceleration_send_disconnect_function_t)(void *send_handle);
3086
3097 typedef int (*lbm_datagram_acceleration_send_function_t)(void *send_handle, const void *buffer, size_t length, int flags);
3098
3110 typedef int (*lbm_datagram_acceleration_sendto_function_t)(void *device, struct sockaddr_in *sin, const void *buffer, size_t length, int flags);
3111
3120 typedef int (*lbm_datagram_acceleration_getaddr_function_t)(void *device, struct sockaddr_in *sin);
3121
3130 typedef struct lbm_datagram_acceleration_func_t_stct {
3132 lbm_datagram_acceleration_init_function_t init;
3134 lbm_datagram_acceleration_open_function_t open;
3136 lbm_datagram_acceleration_close_function_t close;
3138 lbm_datagram_acceleration_bind_function_t bind;
3140 lbm_datagram_acceleration_unbind_function_t unbind;
3142 lbm_datagram_acceleration_mcast_join_function_t mcast_join;
3144 lbm_datagram_acceleration_mcast_leave_function_t mcast_leave;
3146 lbm_datagram_acceleration_recvfrom_function_t recvfrom;
3148 lbm_datagram_acceleration_send_connect_function_t send_connect;
3150 lbm_datagram_acceleration_send_disconnect_function_t send_disconnect;
3152 lbm_datagram_acceleration_send_function_t send;
3154 lbm_datagram_acceleration_sendto_function_t sendto;
3156 lbm_datagram_acceleration_getaddr_function_t getaddr;
3157 } lbm_datagram_acceleration_func_t;
3158
3169 typedef lbm_ulong_t (*lbm_str_hash_function_cb)(const char *str);
3170
3183 typedef lbm_ulong_t (*lbm_str_hash_function_cb_ex)(const char *str, size_t strlen, void* clientd);
3184
3185
3204 typedef int (*lbm_src_notify_function_cb)(const char *topic_str, const char *src_str, void *clientd);
3205
3221 typedef int (*lbm_wildcard_rcv_compare_function_cb)(const char *topic_str, void *clientd);
3222
3238 typedef lbm_uint_t (*lbm_ume_rcv_regid_function_cb)(const char *src_str, lbm_uint_t src_regid, void *clientd);
3239
3254 typedef lbm_uint_t (*lbm_ume_rcv_regid_ex_function_cb)(lbm_ume_rcv_regid_ex_func_info_t *info, void *clientd);
3255
3272 typedef int (*lbm_ume_src_force_reclaim_function_cb)(const char *topic_str, lbm_uint_t seqnum, void *clientd);
3273
3291 typedef int (*lbm_mim_unrecloss_function_cb)(const char *source_name, lbm_uint_t seqnum, void *clientd);
3292
3307 typedef int (*lbm_ume_rcv_recovery_info_ex_function_cb)(lbm_ume_rcv_recovery_info_ex_func_info_t *info, void *clientd);
3308
3323 typedef void *(*lbm_rcv_src_notification_create_function_cb)(const char *source_name, void *clientd);
3324
3340 typedef int (*lbm_rcv_src_notification_delete_function_cb)(const char *source_name, void *clientd, void *source_clientd);
3341
3348 typedef struct lbm_str_hash_func_t_stct {
3350 lbm_str_hash_function_cb hashfunc;
3351 } lbm_str_hash_func_t;
3352
3359 typedef struct lbm_str_hash_func_ex_t_stct {
3361 lbm_str_hash_function_cb_ex hashfunc;
3363 void* clientd;
3364 } lbm_str_hash_func_ex_t;
3365
3373 typedef struct lbm_src_notify_func_t_stct {
3375 lbm_src_notify_function_cb notifyfunc;
3377 void *clientd;
3378 } lbm_src_notify_func_t;
3379
3381 typedef void *(*lbm_rcv_batch_notify_func_start_cb)(void *clientd);
3383 typedef void (*lbm_rcv_batch_notify_func_end_cb)(void *per_batch_clientd, void *clientd);
3385 typedef struct lbm_rcv_batch_notify_func_t_stct {
3387 lbm_rcv_batch_notify_func_start_cb start_notify;
3389 lbm_rcv_batch_notify_func_end_cb end_notify;
3391 void *clientd;
3392 } lbm_rcv_batch_notify_func_t;
3393
3401 typedef struct lbm_wildcard_rcv_compare_func_t_stct {
3403 lbm_wildcard_rcv_compare_function_cb compfunc;
3405 void *clientd;
3406 } lbm_wildcard_rcv_compare_func_t;
3407
3415 typedef struct lbm_ume_rcv_regid_func_t_stct {
3417 lbm_ume_rcv_regid_function_cb func;
3419 void *clientd;
3420 } lbm_ume_rcv_regid_func_t;
3421
3429 typedef struct lbm_ume_rcv_regid_ex_func_t_stct {
3431 lbm_ume_rcv_regid_ex_function_cb func;
3433 void *clientd;
3434 } lbm_ume_rcv_regid_ex_func_t;
3435
3443 typedef struct lbm_ume_src_force_reclaim_func_t_stct {
3445 lbm_ume_src_force_reclaim_function_cb func;
3447 void *clientd;
3448 } lbm_ume_src_force_reclaim_func_t;
3449
3456 typedef struct lbm_mim_unrecloss_func_t_stct {
3458 lbm_mim_unrecloss_function_cb func;
3460 void *clientd;
3461 } lbm_mim_unrecloss_func_t;
3462
3470 typedef struct lbm_ume_rcv_recovery_info_ex_func_t_stct {
3472 lbm_ume_rcv_recovery_info_ex_function_cb func;
3474 void *clientd;
3475 } lbm_ume_rcv_recovery_info_ex_func_t;
3476
3483 typedef struct lbm_ume_store_entry_t_stct {
3485 lbm_uint_t ip_address;
3487 lbm_ushort_t tcp_port;
3489 lbm_ushort_t group_index;
3491 lbm_uint_t registration_id;
3493 lbm_uint32_t domain_id;
3494 } lbm_ume_store_entry_t;
3495
3503 typedef struct lbm_ucast_resolver_entry_t_stct {
3505 lbm_ipv4_address_mask_t iface;
3507 lbm_uint_t resolver_ip;
3510 lbm_ushort_t source_port;
3512 lbm_ushort_t destination_port;
3513 } lbm_ucast_resolver_entry_t;
3514
3523 typedef struct lbm_resolver_service_entry_t_stct {
3525 lbm_uint_t service_ip;
3527 lbm_ushort_t service_port;
3529 lbm_ipv4_address_mask_t iface;
3531 lbm_ushort_t source_port;
3532 } lbm_resolver_service_entry_t;
3533
3542 typedef struct lbm_transport_broker_entry_t_stct {
3544 lbm_uint_t broker_ip;
3546 lbm_ushort_t broker_port;
3548 lbm_ipv4_address_mask_t iface;
3550 lbm_ushort_t source_port;
3551 } lbm_transport_broker_entry_t;
3552
3559 typedef struct lbm_ume_store_name_entry_t_stct {
3562 char name[LBM_MAX_CONTEXT_NAME_LEN+1];
3564 lbm_ushort_t group_index;
3566 lbm_uint_t registration_id;
3567 } lbm_ume_store_name_entry_t;
3568
3576 typedef struct lbm_ume_store_group_entry_t_stct {
3578 lbm_ushort_t index;
3580 lbm_ushort_t group_size;
3581 } lbm_ume_store_group_entry_t;
3582
3590 typedef struct lbm_rcv_src_notification_func_t_stct {
3592 lbm_rcv_src_notification_create_function_cb create_func;
3594 lbm_rcv_src_notification_delete_function_cb delete_func;
3596 void *clientd;
3597 } lbm_rcv_src_notification_func_t;
3598
3606 typedef struct ume_liveness_receiving_context_t_stct {
3608 lbm_uint64_t regid;
3610 lbm_uint64_t session_id;
3613 int flag;
3614 } ume_liveness_receiving_context_t;
3615
3630 typedef void *(*lbm_ume_ctx_rcv_ctx_notification_create_function_cb)(const ume_liveness_receiving_context_t *rcv, void *clientd);
3631
3646 typedef int (*lbm_ume_ctx_rcv_ctx_notification_delete_function_cb)(const ume_liveness_receiving_context_t *rcv, void *clientd, void *source_clientd);
3647
3655 typedef struct lbm_ume_ctx_rcv_ctx_notification_func_t_stct {
3657 lbm_ume_ctx_rcv_ctx_notification_create_function_cb create_func;
3659 lbm_ume_ctx_rcv_ctx_notification_delete_function_cb delete_func;
3661 void *clientd;
3662 } lbm_ume_ctx_rcv_ctx_notification_func_t;
3663
3671 typedef struct lbm_umq_queue_entry_t_stct {
3673 char name[LBM_UMQ_MAX_QUEUE_STRLEN];
3675 lbm_umq_regid_t regid;
3676 } lbm_umq_queue_entry_t;
3677
3685 typedef struct lbm_umq_ulb_receiver_type_entry_t_stct {
3687 lbm_ulong_t id;
3689 lbm_ushort_t application_set_index;
3690 } lbm_umq_ulb_receiver_type_entry_t;
3691
3708 typedef struct lbm_umq_ulb_application_set_attr_t_stct {
3710 lbm_ushort_t index;
3712 union {
3714 int d;
3716 lbm_ulong_t lu;
3717 } value;
3718 } lbm_umq_ulb_application_set_attr_t;
3719
3730 typedef struct lbm_umq_ulb_receiver_type_attr_t_stct {
3732 lbm_ulong_t id;
3734 union {
3736 int d;
3738 lbm_ulong_t lu;
3739 } value;
3740 } lbm_umq_ulb_receiver_type_attr_t;
3741
3742
3771 typedef int (*lbm_context_src_cb_proc)(lbm_context_t *ctx, int event, void *ed, void *clientd);
3772
3780 typedef struct lbm_context_src_event_func_t_stct {
3782 lbm_context_src_cb_proc func;
3784 lbm_event_queue_t *evq;
3786 void *clientd;
3787 } lbm_context_src_event_func_t;
3788
3803 typedef int (*lbm_context_event_cb_proc)(lbm_context_t *ctx, int event, void *ed, void *clientd);
3804
3812 typedef struct lbm_context_event_func_t_stct {
3814 lbm_context_event_cb_proc func;
3816 lbm_event_queue_t *evq;
3818 void *clientd;
3819 } lbm_context_event_func_t;
3820
3825 typedef struct lbm_serialized_response_t_stct {
3827 char serial_response[32];
3828 } lbm_serialized_response_t;
3829
3831 struct lbm_buff_t_stct;
3833 typedef struct lbm_buff_t_stct lbm_buff_t;
3834
3836 struct lbm_wildcard_rcv_t_stct;
3839 typedef struct lbm_wildcard_rcv_t_stct lbm_wildcard_rcv_t;
3840
3842 struct lbm_hf_rcv_t_stct;
3845 typedef struct lbm_hf_rcv_t_stct lbm_hf_rcv_t;
3846
3848 struct lbm_hfx_attr_t_stct;
3850 typedef struct lbm_hfx_attr_t_stct lbm_hfx_attr_t;
3851
3853 struct lbm_hfx_t_stct;
3855 typedef struct lbm_hfx_t_stct lbm_hfx_t;
3856
3858 struct lbm_hfx_rcv_t_stct;
3860 typedef struct lbm_hfx_rcv_t_stct lbm_hfx_rcv_t;
3861
3863 struct lbm_topic_t_stct;
3866 typedef struct lbm_topic_t_stct lbm_topic_t;
3867
3869 struct lbm_src_t_stct;
3872 typedef struct lbm_src_t_stct lbm_src_t;
3873
3875 struct lbm_ssrc_t_stct;
3881 typedef struct lbm_ssrc_t_stct lbm_ssrc_t;
3882
3884 struct lbm_rcv_t_stct;
3887 typedef struct lbm_rcv_t_stct lbm_rcv_t;
3888
3890 struct lbm_request_t_stct;
3896 typedef struct lbm_request_t_stct lbm_request_t;
3897
3899 struct lbm_response_t_stct;
3902 typedef struct lbm_response_t_stct lbm_response_t;
3903
3911 typedef struct lbm_msg_fragment_info_t_stct {
3914 lbm_uint_t start_sequence_number;
3917 lbm_uint_t offset;
3920 lbm_uint_t total_message_length;
3921 } lbm_msg_fragment_info_t;
3922
3926 typedef struct lbm_msg_gateway_info_t_stct {
3929 lbm_uint_t sequence_number;
3932 char source[LBM_MSG_MAX_SOURCE_LEN];
3933 } lbm_msg_gateway_info_t;
3934
3943 typedef struct lbm_msg_channel_info_t_stct {
3946 int flags;
3948 lbm_uint32_t channel_number;
3949 } lbm_msg_channel_info_t;
3950
3952 struct lbm_ume_rcv_ack_t_stct;
3955 typedef struct lbm_ume_rcv_ack_t_stct lbm_ume_rcv_ack_t;
3956
3967 struct lbm_msg_t_stct {
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;
3995 lbm_response_t *response;
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;
4016 lbm_timeval_t tsp;
4018 lbm_ushort_t hdrlen;
4020 const lbm_buff_t *buffer;
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;
4037 lbm_msg_channel_info_t *channel_info;
4039 const void *umq_msgid;
4041 const void *umq_cr;
4043 const void *pdata;
4045 size_t plen;
4049 lbm_msg_properties_t *properties;
4051 lbm_hf_sequence_number_t hf_sequence_number;
4053 const void *broker_msg_state;
4055 lbm_timespec_t hr_timestamp;
4058 char proxy_source[LBM_MSG_MAX_SOURCE_LEN];
4059 };
4060
4079 typedef int (*lbm_immediate_msg_cb_proc)(lbm_context_t *ctx, lbm_msg_t *msg, void *clientd);
4080
4099 typedef struct lbm_context_rcv_immediate_msgs_func_t_stct {
4101 lbm_immediate_msg_cb_proc func;
4103 lbm_event_queue_t *evq;
4105 void *clientd;
4106 } lbm_context_rcv_immediate_msgs_func_t;
4107
4117 typedef struct lbm_transport_source_info_t_stct {
4119 int type;
4121 lbm_uint32_t src_ip;
4123 lbm_ushort_t src_port;
4125 lbm_ushort_t dest_port;
4127 lbm_uint32_t mc_group;
4129 lbm_uint32_t transport_id;
4131 lbm_uint32_t session_id;
4133 lbm_uint32_t topic_idx;
4135 lbm_uint32_t transport_idx;
4136 } lbm_transport_source_info_t;
4137
4139 #define LBM_SRC_COST_FUNCTION_REJECT 0xffffffff
4140
4152 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);
4153
4156 typedef struct lbm_src_cost_func_t_stct
4157 {
4159 lbm_src_cost_function_cb cost_cb;
4161 void *clientd;
4162 } lbm_src_cost_func_t;
4163
4165 struct lbm_context_attr_t_stct;
4170 typedef struct lbm_context_attr_t_stct lbm_context_attr_t;
4171
4173 #define LBM_CONFIG_OPTIONS_STR_LEN 128
4174
4175 typedef struct lbm_config_option_stct_t
4176 {
4178 char type[LBM_CONFIG_OPTIONS_STR_LEN];
4180 char oname[LBM_CONFIG_OPTIONS_STR_LEN];
4182 char val[LBM_CONFIG_OPTIONS_STR_LEN];
4183 } lbm_config_option_t;
4184
4186 struct lbm_src_topic_attr_t_stct;
4189 typedef struct lbm_src_topic_attr_t_stct lbm_src_topic_attr_t;
4190
4192 struct lbm_rcv_topic_attr_t_stct;
4195 typedef struct lbm_rcv_topic_attr_t_stct lbm_rcv_topic_attr_t;
4196
4214 typedef int (*lbm_wildcard_rcv_create_function_cb)(const char * topic_str, lbm_rcv_topic_attr_t * attr, void * clientd);
4215
4223 typedef struct lbm_wildcard_rcv_create_func_t_stct {
4225 lbm_wildcard_rcv_create_function_cb createfunc;
4227 void *clientd;
4228 } lbm_wildcard_rcv_create_func_t;
4229
4245 typedef int (*lbm_wildcard_rcv_delete_function_cb)(const char * topic_str, void * clientd);
4246
4254 typedef struct lbm_wildcard_rcv_delete_func_t_stct {
4256 lbm_wildcard_rcv_delete_function_cb deletefunc;
4258 void *clientd;
4259 } lbm_wildcard_rcv_delete_func_t;
4260
4262 struct lbm_wildcard_rcv_attr_t_stct;
4265 typedef struct lbm_wildcard_rcv_attr_t_stct lbm_wildcard_rcv_attr_t;
4266
4283 typedef struct lbm_src_transport_stats_tcp_t_stct {
4285 lbm_ulong_t num_clients;
4289 lbm_ulong_t bytes_buffered;
4290 } lbm_src_transport_stats_tcp_t;
4291
4312 typedef struct lbm_src_transport_stats_lbtrm_t_stct {
4319 lbm_ulong_t msgs_sent;
4322 lbm_ulong_t bytes_sent;
4330 lbm_ulong_t txw_msgs;
4334 lbm_ulong_t txw_bytes;
4338 lbm_ulong_t nak_pckts_rcved;
4347 lbm_ulong_t naks_rcved;
4355 lbm_ulong_t naks_ignored;
4363 lbm_ulong_t naks_shed;
4373 lbm_ulong_t naks_rx_delay_ignored;
4383 lbm_ulong_t rxs_sent;
4391 lbm_ulong_t rctlr_data_msgs;
4400 lbm_ulong_t rctlr_rx_msgs;
4411 lbm_ulong_t rx_bytes_sent;
4412 } lbm_src_transport_stats_lbtrm_t;
4413
4417 typedef struct lbm_src_transport_stats_daemon_t_stct {
4419 lbm_ulong_t bytes_buffered;
4420 } lbm_src_transport_stats_daemon_t;
4421
4432 typedef struct lbm_src_transport_stats_lbtru_t_stct {
4437 lbm_ulong_t msgs_sent;
4440 lbm_ulong_t bytes_sent;
4444 lbm_ulong_t nak_pckts_rcved;
4453 lbm_ulong_t naks_rcved;
4461 lbm_ulong_t naks_ignored;
4469 lbm_ulong_t naks_shed;
4479 lbm_ulong_t naks_rx_delay_ignored;
4489 lbm_ulong_t rxs_sent;
4491 lbm_ulong_t num_clients;
4502 lbm_ulong_t rx_bytes_sent;
4503 } lbm_src_transport_stats_lbtru_t;
4504
4525 typedef struct lbm_src_transport_stats_lbtipc_t_stct {
4527 lbm_ulong_t num_clients;
4532 lbm_ulong_t msgs_sent;
4535 lbm_ulong_t bytes_sent;
4536 } lbm_src_transport_stats_lbtipc_t;
4537
4558 typedef struct lbm_src_transport_stats_lbtsmx_t_stct {
4560 lbm_ulong_t num_clients;
4562 lbm_ulong_t msgs_sent;
4565 lbm_ulong_t bytes_sent;
4566 } lbm_src_transport_stats_lbtsmx_t;
4567
4572 typedef struct lbm_src_transport_stats_lbtrdma_t_stct {
4574 lbm_ulong_t num_clients;
4579 lbm_ulong_t msgs_sent;
4582 lbm_ulong_t bytes_sent;
4583 } lbm_src_transport_stats_lbtrdma_t;
4584
4601 typedef struct lbm_src_transport_stats_broker_t_stct {
4603 lbm_ulong_t msgs_sent;
4605 lbm_ulong_t bytes_sent;
4606 } lbm_src_transport_stats_broker_t;
4607
4621 typedef struct lbm_src_transport_stats_t_stct {
4623 int type;
4625 char source[LBM_MSG_MAX_SOURCE_LEN];
4627 union {
4629 lbm_src_transport_stats_tcp_t tcp;
4631 lbm_src_transport_stats_lbtrm_t lbtrm;
4633 lbm_src_transport_stats_daemon_t daemon;
4635 lbm_src_transport_stats_lbtru_t lbtru;
4637 lbm_src_transport_stats_lbtipc_t lbtipc;
4639 lbm_src_transport_stats_lbtsmx_t lbtsmx;
4641 lbm_src_transport_stats_lbtrdma_t lbtrdma;
4643 lbm_src_transport_stats_broker_t broker;
4644 } transport;
4646 char _fill[LBM_EXTERNAL_STRUCT_FILL_SIZE];
4647 } lbm_src_transport_stats_t;
4648
4665 typedef struct lbm_rcv_transport_stats_tcp_t_stct {
4668 lbm_ulong_t bytes_rcved;
4679 lbm_ulong_t lbm_msgs_rcved;
4685 lbm_ulong_t lbm_msgs_no_topic_rcved;
4687 lbm_ulong_t lbm_reqs_rcved;
4688 } lbm_rcv_transport_stats_tcp_t;
4689
4706 typedef struct lbm_rcv_transport_stats_lbtrm_t_stct {
4715 lbm_ulong_t msgs_rcved;
4720 lbm_ulong_t bytes_rcved;
4726 lbm_ulong_t nak_pckts_sent;
4741 lbm_ulong_t naks_sent;
4746 lbm_ulong_t lost;
4755 lbm_ulong_t ncfs_ignored;
4763 lbm_ulong_t ncfs_shed;
4773 lbm_ulong_t ncfs_rx_delay;
4781 lbm_ulong_t ncfs_unknown;
4790 lbm_ulong_t nak_stm_min;
4798 lbm_ulong_t nak_stm_mean;
4805 lbm_ulong_t nak_stm_max;
4811 lbm_ulong_t nak_tx_min;
4817 lbm_ulong_t nak_tx_mean;
4825 lbm_ulong_t nak_tx_max;
4832 lbm_ulong_t duplicate_data;
4840 lbm_ulong_t unrecovered_txw;
4852 lbm_ulong_t unrecovered_tmo;
4863 lbm_ulong_t lbm_msgs_rcved;
4869 lbm_ulong_t lbm_msgs_no_topic_rcved;
4871 lbm_ulong_t lbm_reqs_rcved;
4874 lbm_ulong_t dgrams_dropped_size;
4877 lbm_ulong_t dgrams_dropped_type;
4880 lbm_ulong_t dgrams_dropped_version;
4883 lbm_ulong_t dgrams_dropped_hdr;
4888 lbm_ulong_t dgrams_dropped_other;
4895 lbm_ulong_t out_of_order;
4896 } lbm_rcv_transport_stats_lbtrm_t;
4897
4902 typedef struct lbm_rcv_transport_stats_daemon_t_stct {
4904 lbm_ulong_t bytes_rcved;
4905 } lbm_rcv_transport_stats_daemon_t;
4906
4923 typedef struct lbm_rcv_transport_stats_lbtru_t_stct {
4932 lbm_ulong_t msgs_rcved;
4937 lbm_ulong_t bytes_rcved;
4943 lbm_ulong_t nak_pckts_sent;
4958 lbm_ulong_t naks_sent;
4960 lbm_ulong_t lost;
4969 lbm_ulong_t ncfs_ignored;
4977 lbm_ulong_t ncfs_shed;
4987 lbm_ulong_t ncfs_rx_delay;
4995 lbm_ulong_t ncfs_unknown;
5004 lbm_ulong_t nak_stm_min;
5012 lbm_ulong_t nak_stm_mean;
5019 lbm_ulong_t nak_stm_max;
5025 lbm_ulong_t nak_tx_min;
5031 lbm_ulong_t nak_tx_mean;
5039 lbm_ulong_t nak_tx_max;
5046 lbm_ulong_t duplicate_data;
5054 lbm_ulong_t unrecovered_txw;
5066 lbm_ulong_t unrecovered_tmo;
5077 lbm_ulong_t lbm_msgs_rcved;
5083 lbm_ulong_t lbm_msgs_no_topic_rcved;
5085 lbm_ulong_t lbm_reqs_rcved;
5088 lbm_ulong_t dgrams_dropped_size;
5091 lbm_ulong_t dgrams_dropped_type;
5094 lbm_ulong_t dgrams_dropped_version;
5097 lbm_ulong_t dgrams_dropped_hdr;
5100 lbm_ulong_t dgrams_dropped_sid;
5103 lbm_ulong_t dgrams_dropped_other;
5104 } lbm_rcv_transport_stats_lbtru_t;
5105
5122 typedef struct lbm_rcv_transport_stats_lbtipc_t_stct {
5129 lbm_ulong_t msgs_rcved;
5132 lbm_ulong_t bytes_rcved;
5143 lbm_ulong_t lbm_msgs_rcved;
5148 lbm_ulong_t lbm_msgs_no_topic_rcved;
5150 lbm_ulong_t lbm_reqs_rcved;
5151 } lbm_rcv_transport_stats_lbtipc_t;
5152
5153
5170 typedef struct lbm_rcv_transport_stats_lbtsmx_t_stct {
5172 lbm_ulong_t msgs_rcved;
5175 lbm_ulong_t bytes_rcved;
5184 lbm_ulong_t lbm_msgs_rcved;
5190 lbm_ulong_t lbm_msgs_no_topic_rcved;
5192 lbm_ulong_t reserved1;
5193 } lbm_rcv_transport_stats_lbtsmx_t;
5194
5199 typedef struct lbm_rcv_transport_stats_lbtrdma_t_stct {
5204 lbm_ulong_t msgs_rcved;
5207 lbm_ulong_t bytes_rcved;
5216 lbm_ulong_t lbm_msgs_rcved;
5221 lbm_ulong_t lbm_msgs_no_topic_rcved;
5223 lbm_ulong_t lbm_reqs_rcved;
5224 } lbm_rcv_transport_stats_lbtrdma_t;
5225
5242 typedef struct lbm_rcv_transport_stats_broker_t_stct {
5245 lbm_ulong_t msgs_rcved;
5247 lbm_ulong_t bytes_rcved;
5248 } lbm_rcv_transport_stats_broker_t;
5249
5263 typedef struct lbm_rcv_transport_stats_t_stct {
5265 int type;
5267 char source[LBM_MSG_MAX_SOURCE_LEN];
5269 union {
5271 lbm_rcv_transport_stats_tcp_t tcp;
5273 lbm_rcv_transport_stats_lbtrm_t lbtrm;
5275 lbm_rcv_transport_stats_daemon_t daemon;
5277 lbm_rcv_transport_stats_lbtru_t lbtru;
5279 lbm_rcv_transport_stats_lbtipc_t lbtipc;
5281 lbm_rcv_transport_stats_lbtrdma_t lbtrdma;
5283 lbm_rcv_transport_stats_lbtsmx_t lbtsmx;
5285 lbm_rcv_transport_stats_broker_t broker;
5286 } transport;
5288 char _fill[LBM_EXTERNAL_STRUCT_FILL_SIZE];
5289 } lbm_rcv_transport_stats_t;
5290
5292 struct lbm_event_queue_attr_t_stct;
5295 typedef struct lbm_event_queue_attr_t_stct lbm_event_queue_attr_t;
5296
5321 typedef struct lbm_event_queue_stats_t_stct {
5324 lbm_ulong_t data_msgs;
5328 lbm_ulong_t data_msgs_tot;
5335 lbm_ulong_t data_msgs_svc_min;
5341 lbm_ulong_t data_msgs_svc_mean;
5346 lbm_ulong_t data_msgs_svc_max;
5349 lbm_ulong_t resp_msgs;
5352 lbm_ulong_t resp_msgs_tot;
5359 lbm_ulong_t resp_msgs_svc_min;
5365 lbm_ulong_t resp_msgs_svc_mean;
5370 lbm_ulong_t resp_msgs_svc_max;
5374 lbm_ulong_t topicless_im_msgs;
5378 lbm_ulong_t topicless_im_msgs_tot;
5386 lbm_ulong_t topicless_im_msgs_svc_min;
5392 lbm_ulong_t topicless_im_msgs_svc_mean;
5398 lbm_ulong_t topicless_im_msgs_svc_max;
5401 lbm_ulong_t wrcv_msgs;
5405 lbm_ulong_t wrcv_msgs_tot;
5413 lbm_ulong_t wrcv_msgs_svc_min;
5419 lbm_ulong_t wrcv_msgs_svc_mean;
5425 lbm_ulong_t wrcv_msgs_svc_max;
5428 lbm_ulong_t io_events;
5432 lbm_ulong_t io_events_tot;
5439 lbm_ulong_t io_events_svc_min;
5445 lbm_ulong_t io_events_svc_mean;
5450 lbm_ulong_t io_events_svc_max;
5453 lbm_ulong_t timer_events;
5457 lbm_ulong_t timer_events_tot;
5464 lbm_ulong_t timer_events_svc_min;
5470 lbm_ulong_t timer_events_svc_mean;
5475 lbm_ulong_t timer_events_svc_max;
5478 lbm_ulong_t source_events;
5482 lbm_ulong_t source_events_tot;
5489 lbm_ulong_t source_events_svc_min;
5495 lbm_ulong_t source_events_svc_mean;
5500 lbm_ulong_t source_events_svc_max;
5503 lbm_ulong_t unblock_events;
5507 lbm_ulong_t unblock_events_tot;
5510 lbm_ulong_t cancel_events;
5514 lbm_ulong_t cancel_events_tot;
5520 lbm_ulong_t cancel_events_svc_min;
5524 lbm_ulong_t cancel_events_svc_mean;
5528 lbm_ulong_t cancel_events_svc_max;
5531 lbm_ulong_t context_source_events;
5535 lbm_ulong_t context_source_events_tot;
5545 lbm_ulong_t context_source_events_svc_min;
5553 lbm_ulong_t context_source_events_svc_mean;
5561 lbm_ulong_t context_source_events_svc_max;
5564 lbm_ulong_t events;
5568 lbm_ulong_t events_tot;
5577 lbm_ulong_t age_min;
5584 lbm_ulong_t age_mean;
5591 lbm_ulong_t age_max;
5594 lbm_ulong_t callback_events;
5598 lbm_ulong_t callback_events_tot;
5607 lbm_ulong_t callback_events_svc_min;
5615 lbm_ulong_t callback_events_svc_mean;
5622 lbm_ulong_t callback_events_svc_max;
5623 } lbm_event_queue_stats_t;
5624
5648 typedef struct lbm_context_stats_t_stct {
5653 lbm_ulong_t tr_dgrams_sent;
5657 lbm_ulong_t tr_bytes_sent;
5662 lbm_ulong_t tr_dgrams_rcved;
5666 lbm_ulong_t tr_bytes_rcved;
5669 lbm_ulong_t tr_dgrams_dropped_ver;
5673 lbm_ulong_t tr_dgrams_dropped_type;
5675 lbm_ulong_t tr_dgrams_dropped_malformed;
5678 lbm_ulong_t tr_dgrams_send_failed;
5688 lbm_ulong_t tr_src_topics;
5699 lbm_ulong_t tr_rcv_topics;
5705 lbm_ulong_t tr_rcv_unresolved_topics;
5714 lbm_ulong_t lbtrm_unknown_msgs_rcved;
5726 lbm_ulong_t lbtru_unknown_msgs_rcved;
5729 lbm_ulong_t send_blocked;
5733 lbm_ulong_t send_would_block;
5736 lbm_ulong_t resp_blocked;
5741 lbm_ulong_t resp_would_block;
5743 lbm_ulong_t uim_dup_msgs_rcved;
5745 lbm_ulong_t uim_msgs_no_stream_rcved;
5756 lbm_ulong_t fragments_lost;
5771 lbm_ulong_t fragments_unrecoverably_lost;
5789 lbm_ulong_t rcv_cb_svc_time_min;
5804 lbm_ulong_t rcv_cb_svc_time_max;
5815 lbm_ulong_t rcv_cb_svc_time_mean;
5816 } lbm_context_stats_t;
5817
5822 typedef struct lbm_rcv_topic_stats_t_stct {
5824 char topic[LBM_MSG_MAX_TOPIC_LEN];
5826 lbm_uint32_t flags;
5828 char source[LBM_MSG_MAX_SOURCE_LEN];
5830 lbm_uint8_t otid[LBM_OTID_BLOCK_SZ];
5832 lbm_uint32_t topic_idx;
5834 lbm_uint64_t timestamp_sec;
5836 lbm_uint64_t timestamp_usec;
5837 } lbm_rcv_topic_stats_t;
5839 #define LBM_RCV_TOPIC_STATS_FLAG_NO_SOURCE 0x0
5840 #define LBM_RCV_TOPIC_STATS_FLAG_SRC_CREATED 0x1
5841 #define LBM_RCV_TOPIC_STATS_FLAG_SRC_DELETED 0x2
5842
5843 /* for backward compatibility only */
5844 #define LBM_RCV_TOPIC_STATS_FLAG_SRC_VALID LBM_RCV_TOPIC_STATS_FLAG_SRC_CREATED
5845
5850 typedef struct lbm_wildcard_rcv_stats_t_stct {
5852 char pattern[LBM_MSG_MAX_TOPIC_LEN];
5854 lbm_uint8_t type;
5855 } lbm_wildcard_rcv_stats_t;
5856
5861 typedef struct {
5863 lbm_uint32_t orig_domain_id;
5865 lbm_uint32_t hl_idx;
5867 char proxy_source[LBM_MSG_MAX_SOURCE_LEN];
5870 int flags;
5871 } lbm_src_create_ex_info_t;
5872
5877 typedef struct {
5879 lbm_uint32_t orig_domain_id;
5881 char proxy_source[LBM_MSG_MAX_SOURCE_LEN];
5884 int flags;
5885 } lbm_src_delete_ex_info_t;
5886
5887 #define LBM_SRC_CREATE_EX_INFO_FLAG_UMP_SID 0x00000001
5888
5890 #define LBM_SRC_NOTIFICATION_EX_INFO_FLAG_HOT_LINK 0x00000002
5891
5905 typedef void *(*lbm_rcv_src_notification_create_function_ex_cb)(const char *source_name, void *clientd, lbm_src_create_ex_info_t *info);
5906
5920 typedef int (*lbm_rcv_src_notification_delete_function_ex_cb)(const char *source_name, void *clientd, void *source_clientd, lbm_src_delete_ex_info_t *info);
5921
5922
5930 typedef struct lbm_rcv_src_notification_func_ex_t_stct {
5932 lbm_rcv_src_notification_create_function_ex_cb create_func_ex;
5934 lbm_rcv_src_notification_delete_function_ex_cb delete_func_ex;
5936 void *clientd;
5937 } lbm_rcv_src_notification_func_ex_t;
5938
5950 typedef int (*lbm_timer_cb_proc)(lbm_context_t *ctx, const void *clientd);
5951
5986 typedef int (*lbm_rcv_cb_proc)(lbm_rcv_t *rcv, lbm_msg_t *msg, void *clientd);
5987
6002 typedef int (*lbm_fd_cb_proc)(lbm_context_t *ctx, lbm_handle_t handle, lbm_ulong_t ev, void *clientd);
6003
6100 typedef int (*lbm_src_cb_proc)(lbm_src_t *src, int event, void *ed, void *clientd);
6101
6168 typedef int (*lbm_ssrc_cb_proc)(lbm_ssrc_t *ssrc, int event, void *ed, void *clientd);
6169
6189 typedef int (*lbm_request_cb_proc)(lbm_request_t *req, lbm_msg_t *msg, void *clientd);
6190
6219 typedef int (*lbm_event_queue_monitor_proc)(lbm_event_queue_t *evq, int event, size_t evq_size,
6220 lbm_ulong_t event_delay_usec, void *clientd);
6221
6240 typedef int (*lbm_log_cb_proc)(int level, const char *message, void *clientd);
6241
6259 typedef int (*lbm_daemon_event_cb_proc)(lbm_context_t *ctx, int event, const char *info, void *clientd);
6260
6279 typedef void (*lbm_event_queue_cancel_cb_proc)(int dispatch_thrd, void *clientd);
6280
6286 typedef struct lbm_event_queue_cancel_cb_info_t_stct {
6288 lbm_event_queue_t *event_queue;
6290 lbm_event_queue_cancel_cb_proc cbproc;
6292 void *clientd;
6293 } lbm_event_queue_cancel_cb_info_t;
6294
6307 typedef int (*lbm_flight_size_set_inflight_cb_proc)(int inflight, void *clientd);
6308
6321 typedef void (*lbm_flight_size_set_inflight_ex_cb_proc)(lbm_flight_size_inflight_t *inflight, void *clientd);
6322
6323 /* Functions */
6324
6329 LBMExpDLL const char *lbm_version(void);
6330
6343 LBMExpDLL int lbm_context_dump(lbm_context_t *ctx, int *size, lbm_config_option_t *opts);
6344
6357 LBMExpDLL int lbm_context_attr_dump(lbm_context_attr_t *cattr, int *size, lbm_config_option_t *opts);
6358
6368 LBMExpDLL int lbm_context_attr_option_size(void);
6369
6381 LBMExpDLL int lbm_context_attr_create(lbm_context_attr_t * * attr);
6382
6392 LBMExpDLL int lbm_context_attr_create_default(lbm_context_attr_t * * attr);
6393
6415 LBMExpDLL int lbm_context_attr_create_from_xml(lbm_context_attr_t * * attr, const char * context_name);
6416
6432 LBMExpDLL int lbm_context_attr_set_from_xml(lbm_context_attr_t * attr, const char * context_name);
6433
6441 LBMExpDLL int lbm_context_attr_delete(lbm_context_attr_t *attr);
6442
6453 LBMExpDLL int lbm_context_attr_dup(lbm_context_attr_t * * attr, const lbm_context_attr_t * original);
6454
6469 LBMExpDLL int lbm_context_attr_setopt(lbm_context_attr_t *attr, const char *optname,
6470 const void *optval, size_t optlen);
6471
6485 LBMExpDLL int lbm_context_attr_str_setopt(lbm_context_attr_t *attr, const char *optname,
6486 const char *optval);
6487
6498 LBMExpDLL int lbm_context_attr_getopt(lbm_context_attr_t *attr, const char *optname,
6499 void *optval, size_t *optlen);
6500
6511 LBMExpDLL int lbm_context_attr_str_getopt(lbm_context_attr_t *attr, const char *optname,
6512 char *optval, size_t *optlen);
6513
6536 LBMExpDLL int lbm_context_create(lbm_context_t **ctxp, const lbm_context_attr_t *attr,
6537 lbm_daemon_event_cb_proc proc, void *clientd);
6538
6556 LBMExpDLL int lbm_context_reactor_only_create(lbm_context_t **ctxp, const lbm_context_attr_t *attr);
6557
6574 LBMExpDLL int lbm_context_delete(lbm_context_t *ctx);
6575
6588 LBMExpDLL int lbm_context_delete_ex(lbm_context_t *ctx, lbm_event_queue_cancel_cb_info_t *cbinfo);
6589
6619 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);
6620
6634 LBMExpDLL int lbm_context_setopt(lbm_context_t *ctx, const char *optname, const void *optval, size_t optlen);
6635
6648 LBMExpDLL int lbm_context_str_setopt(lbm_context_t *ctx, const char *optname, const char *optval);
6649
6660 LBMExpDLL int lbm_context_getopt(lbm_context_t *ctx, const char *optname, void *optval, size_t *optlen);
6661
6672 LBMExpDLL int lbm_context_str_getopt(lbm_context_t *ctx, const char *optname, char *optval, size_t *optlen);
6673
6689 LBMExpDLL int lbm_context_rcv_immediate_msgs(lbm_context_t *ctx, lbm_immediate_msg_cb_proc proc, void *clientd,
6690 lbm_event_queue_t *evq);
6691
6708 LBMExpDLL int lbm_context_rcv_immediate_topic_msgs(lbm_context_t *ctx, lbm_immediate_msg_cb_proc proc, void *clientd,
6709 lbm_event_queue_t *evq);
6710
6723 LBMExpDLL int lbm_context_set_name(lbm_context_t *ctx, const char *name);
6724
6737 LBMExpDLL int lbm_context_get_name(lbm_context_t *ctx, char *name, size_t *size);
6738
6748 LBMExpDLL int lbm_license_file(const char *licfile);
6749
6759 LBMExpDLL int lbm_license_str(const char *licstr);
6760
6768 LBMExpDLL int lbm_license_ummnm_valid(void);
6769
6777 LBMExpDLL int lbm_license_vds_valid(void);
6778
6799 LBMExpDLL int lbm_config(const char *fname);
6800
6817 LBMExpDLL int lbm_config_xml_file(const char *url, const char *application_name);
6818
6834 LBMExpDLL int lbm_config_xml_string(const char *xml_data, const char *application_name);
6835
6843 LBMExpDLL int lbm_log(lbm_log_cb_proc proc, void *clientd);
6844
6852 LBMExpDLL void lbm_logf(int level, const char * format, ...);
6853
6859 LBMExpDLL const char *lbm_errmsg(void);
6860
6865 LBMExpDLL int lbm_errnum(void);
6866
6867 #if defined(_WIN32) || defined(DOXYGEN)
6868
6877 LBMExpDLL int lbm_win32_static_thread_attach(void);
6878
6888 LBMExpDLL int lbm_win32_static_thread_detach(void);
6889 #endif /* _WIN32 */
6890
6914 LBMExpDLL int lbm_schedule_timer(lbm_context_t *ctx,
6915 lbm_timer_cb_proc proc, void *clientd,
6916 lbm_event_queue_t *evq, lbm_ulong_t delay);
6917
6937 LBMExpDLL int lbm_schedule_timer_recurring(lbm_context_t *ctx,
6938 lbm_timer_cb_proc proc, void *clientd,
6939 lbm_event_queue_t *evq, lbm_ulong_t delay);
6940
6962 LBMExpDLL int lbm_cancel_timer(lbm_context_t *ctx, int id, void **clientdp);
6963
6986 LBMExpDLL int lbm_cancel_timer_ex(lbm_context_t *ctx, int id, void **clientdp,
6987 lbm_event_queue_cancel_cb_info_t *cbinfo);
6988
7019 LBMExpDLL int lbm_context_process_events(lbm_context_t *ctx, lbm_ulong_t msec);
7020
7055 LBMExpDLL int lbm_context_process_events_ex(lbm_context_t *ctx, lbm_ulong_t msec, lbm_process_events_info_t *info);
7056
7070 LBMExpDLL int lbm_context_unblock(lbm_context_t *ctx);
7071
7095 LBMExpDLL int lbm_context_process_lbtipc_messages(lbm_context_t *ctx, lbm_ulong_t msec, lbm_ulong_t loop_count);
7096
7106 LBMExpDLL int lbm_context_lbtipc_unblock(lbm_context_t *ctx);
7107
7130 LBMExpDLL int lbm_register_fd(lbm_context_t *ctx, lbm_handle_t handle, lbm_fd_cb_proc proc,
7131 void *clientd, lbm_event_queue_t *evq, lbm_ulong_t ev);
7132
7151 LBMExpDLL int lbm_cancel_fd(lbm_context_t *ctx, lbm_handle_t handle, lbm_ulong_t ev);
7152
7169 LBMExpDLL int lbm_cancel_fd_ex(lbm_context_t *ctx, lbm_handle_t handle, lbm_ulong_t ev,
7170 lbm_event_queue_cancel_cb_info_t *cbinfo);
7171
7184 LBMExpDLL int lbm_src_topic_dump(lbm_src_t *src, int *size, lbm_config_option_t *opts);
7185
7202 LBMExpDLL int lbm_ssrc_topic_dump(lbm_ssrc_t *ssrc, int *size, lbm_config_option_t *opts);
7203
7217 LBMExpDLL int lbm_src_topic_attr_dump(lbm_src_topic_attr_t *sattr, int *size, lbm_config_option_t *opts);
7218
7235 LBMExpDLL int lbm_src_topic_attr_option_size(void);
7236
7249 LBMExpDLL int lbm_src_topic_alloc(lbm_topic_t **topicp, lbm_context_t *ctx,
7250 const char *symbol, const lbm_src_topic_attr_t *attr);
7251
7264 LBMExpDLL int lbm_src_topic_attr_create(lbm_src_topic_attr_t * * attr);
7265
7275 LBMExpDLL int lbm_src_topic_attr_create_default(lbm_src_topic_attr_t * * attr);
7276
7299 LBMExpDLL int lbm_src_topic_attr_create_from_xml(lbm_src_topic_attr_t * * attr, const char * context_name, const char * topicname);
7300
7317 LBMExpDLL int lbm_src_topic_attr_set_from_xml(lbm_src_topic_attr_t * attr, const char * context_name, const char * topicname);
7318
7326 LBMExpDLL int lbm_src_topic_attr_delete(lbm_src_topic_attr_t *attr);
7327
7338 LBMExpDLL int lbm_src_topic_attr_dup(lbm_src_topic_attr_t * * attr, const lbm_src_topic_attr_t * original);
7339
7354 LBMExpDLL int lbm_src_topic_attr_setopt(lbm_src_topic_attr_t *attr, const char *optname,
7355 const void *optval, size_t optlen);
7356
7370 LBMExpDLL int lbm_src_topic_attr_str_setopt(lbm_src_topic_attr_t *attr, const char *optname,
7371 const char *optval);
7372
7382 LBMExpDLL int lbm_src_topic_attr_getopt(lbm_src_topic_attr_t *attr, const char *optname,
7383 void *optval, size_t *optlen);
7384
7394 LBMExpDLL int lbm_src_topic_attr_str_getopt(lbm_src_topic_attr_t *attr, const char *optname,
7395 char *optval, size_t *optlen);
7396
7413 LBMExpDLL int lbm_rcv_topic_lookup(lbm_topic_t **topicp, lbm_context_t *ctx,
7414 const char *symbol, const lbm_rcv_topic_attr_t *attr);
7415
7428 LBMExpDLL int lbm_rcv_topic_dump(lbm_rcv_t *rcv, int *size, lbm_config_option_t *opts);
7429
7442 LBMExpDLL int lbm_rcv_topic_attr_dump(lbm_rcv_topic_attr_t *rattr, int *size, lbm_config_option_t *opts);
7443
7454 LBMExpDLL int lbm_rcv_topic_attr_option_size(void);
7455
7468 LBMExpDLL int lbm_rcv_topic_attr_create(lbm_rcv_topic_attr_t * * attr);
7469
7479 LBMExpDLL int lbm_rcv_topic_attr_create_default(lbm_rcv_topic_attr_t * * attr);
7480
7503 LBMExpDLL int lbm_rcv_topic_attr_create_from_xml(lbm_rcv_topic_attr_t * * attr, const char * context_name, const char * topicname);
7504
7521 LBMExpDLL int lbm_rcv_topic_attr_set_from_xml(lbm_rcv_topic_attr_t * attr, const char * context_name, const char * topicname);
7522
7530 LBMExpDLL int lbm_rcv_topic_attr_delete(lbm_rcv_topic_attr_t *attr);
7531
7541 LBMExpDLL int lbm_rcv_topic_attr_dup(lbm_rcv_topic_attr_t * * attr, const lbm_rcv_topic_attr_t * original);
7542
7557 LBMExpDLL int lbm_rcv_topic_attr_setopt(lbm_rcv_topic_attr_t *attr, const char *optname,
7558 const void *optval, size_t optlen);
7559
7573 LBMExpDLL int lbm_rcv_topic_attr_str_setopt(lbm_rcv_topic_attr_t *attr, const char *optname,
7574 const char *optval);
7575
7586 LBMExpDLL int lbm_rcv_topic_attr_getopt(lbm_rcv_topic_attr_t *attr, const char *optname,
7587 void *optval, size_t *optlen);
7588
7599 LBMExpDLL int lbm_rcv_topic_attr_str_getopt(lbm_rcv_topic_attr_t *attr, const char *optname,
7600 char *optval, size_t *optlen);
7601
7612 LBMExpDLL int lbm_src_channel_create(lbm_src_channel_info_t **chnp, lbm_src_t *src, lbm_uint32_t channel_num);
7613
7619 LBMExpDLL int lbm_src_channel_delete(lbm_src_channel_info_t *chn);
7620
7637 LBMExpDLL int lbm_src_create(lbm_src_t **srcp, lbm_context_t *ctx, lbm_topic_t *topic, lbm_src_cb_proc proc,
7638 void *clientd, lbm_event_queue_t *evq);
7639
7661 LBMExpDLL int lbm_ssrc_create(lbm_ssrc_t **ssrcp, lbm_context_t *ctx, lbm_topic_t *topic, lbm_ssrc_cb_proc proc,
7662 void *clientd, lbm_event_queue_t *evq);
7663
7676 LBMExpDLL int lbm_event_queue_dump(lbm_event_queue_t *evq, int *size, lbm_config_option_t *opts);
7677
7690 LBMExpDLL int lbm_event_queue_attr_dump(lbm_event_queue_attr_t *eattr, int *size, lbm_config_option_t *opts);
7691
7701 LBMExpDLL int lbm_event_queue_attr_option_size(void);
7702
7722 LBMExpDLL int lbm_rcv_create(lbm_rcv_t **rcvp, lbm_context_t *ctx, lbm_topic_t *topic,
7723 lbm_rcv_cb_proc proc, void *clientd, lbm_event_queue_t *evq);
7724
7746 LBMExpDLL int lbm_rcv_subscribe_channel(lbm_rcv_t *rcv, lbm_uint32_t channel, lbm_rcv_cb_proc proc, void *clientd);
7747
7756 LBMExpDLL int lbm_rcv_unsubscribe_channel(lbm_rcv_t *rcv, lbm_uint32_t channel);
7757
7769 LBMExpDLL int lbm_rcv_unsubscribe_channel_ex(lbm_rcv_t *rcv, lbm_uint32_t channel, lbm_event_queue_cancel_cb_info_t *cbinfo);
7770
7787 LBMExpDLL int lbm_wildcard_rcv_subscribe_channel(lbm_wildcard_rcv_t *wrcv, lbm_uint32_t channel, lbm_rcv_cb_proc proc, void *clientd);
7788
7797 LBMExpDLL int lbm_wildcard_rcv_unsubscribe_channel(lbm_wildcard_rcv_t *wrcv, lbm_uint32_t channel);
7798
7810 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);
7811
7829 LBMExpDLL int lbm_src_delete(lbm_src_t *src);
7830
7849 LBMExpDLL int lbm_ssrc_delete(lbm_ssrc_t *ssrc);
7850
7870 LBMExpDLL int lbm_src_delete_ex(lbm_src_t *src, lbm_event_queue_cancel_cb_info_t *cbinfo);
7871
7885 LBMExpDLL int lbm_ssrc_get_available_data_space(lbm_ssrc_t *ssrc, int *length);
7886
7892 LBMExpDLL lbm_context_t * lbm_context_from_src(lbm_src_t * src);
7893
7899 LBMExpDLL lbm_topic_t * lbm_topic_from_src(lbm_src_t * src);
7900
7906 LBMExpDLL lbm_event_queue_t * lbm_event_queue_from_src(lbm_src_t * src);
7907
7921 LBMExpDLL int lbm_rcv_delete(lbm_rcv_t *rcv);
7922
7937 LBMExpDLL int lbm_rcv_delete_ex(lbm_rcv_t *rcv, lbm_event_queue_cancel_cb_info_t *cbinfo);
7938
7944 LBMExpDLL lbm_context_t * lbm_context_from_rcv(lbm_rcv_t * rcv);
7945
7951 LBMExpDLL lbm_event_queue_t * lbm_event_queue_from_rcv(lbm_rcv_t * rcv);
7952
7966 LBMExpDLL int lbm_src_setopt(lbm_src_t *src, const char *optname, const void *optval, size_t optlen);
7967
7980 LBMExpDLL int lbm_src_str_setopt(lbm_src_t *src, const char *optname, const char *optval);
7981
7992 LBMExpDLL int lbm_src_getopt(lbm_src_t *src, const char *optname, void *optval, size_t *optlen);
7993
8004 LBMExpDLL int lbm_src_str_getopt(lbm_src_t *src, const char *optname, char *optval, size_t *optlen);
8005
8019 LBMExpDLL int lbm_rcv_setopt(lbm_rcv_t *rcv, const char *optname, const void *optval, size_t optlen);
8020
8033 LBMExpDLL int lbm_rcv_str_setopt(lbm_rcv_t *rcv, const char *optname, const char *optval);
8034
8045 LBMExpDLL int lbm_rcv_getopt(lbm_rcv_t *rcv, const char *optname, void *optval, size_t *optlen);
8046
8057 LBMExpDLL int lbm_rcv_str_getopt(lbm_rcv_t *rcv, const char *optname, char *optval, size_t *optlen);
8058
8059 /* Send Routines */
8060
8093 LBMExpDLL int lbm_src_send(lbm_src_t *src, const char *msg, size_t len, int flags);
8094
8122 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);
8123
8143 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);
8144
8156 LBMExpDLL int lbm_src_flush(lbm_src_t *src);
8157
8170 LBMExpDLL int lbm_flush_all(lbm_context_t *ctx);
8171
8203 LBMExpDLL int lbm_src_sendv(lbm_src_t *src, const lbm_iovec_t *iov, int num, int flags);
8204
8235 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);
8236
8244 LBMExpDLL int lbm_rcv_msg_source_clientd(lbm_rcv_t *rcv, const char *source, void *source_clientd);
8245
8254 LBMExpDLL int lbm_src_send_lbmmon_stats(lbm_src_t *src, char *msg, size_t len, int lbmmon_type);
8255
8268 LBMExpDLL int lbm_src_retrieve_transport_stats(lbm_src_t *src, lbm_src_transport_stats_t *stats);
8269
8285 LBMExpDLL int lbm_ssrc_retrieve_transport_stats(lbm_ssrc_t *ssrc, lbm_src_transport_stats_t *stats);
8286
8292 LBMExpDLL int lbm_src_reset_transport_stats(lbm_src_t *src);
8293
8302 LBMExpDLL int lbm_ssrc_reset_transport_stats(lbm_ssrc_t *ssrc);
8303
8317 LBMExpDLL int lbm_rcv_retrieve_transport_stats(lbm_rcv_t *rcv, const char *source, lbm_rcv_transport_stats_t *stats);
8318
8325 LBMExpDLL int lbm_rcv_reset_transport_stats(lbm_rcv_t *rcv, const char *source);
8326
8350 LBMExpDLL int lbm_rcv_retrieve_all_transport_stats(lbm_rcv_t *rcv, int *num, lbm_rcv_transport_stats_t *stats);
8351
8373 LBMExpDLL int lbm_rcv_retrieve_all_transport_stats_ex(lbm_rcv_t *rcv, int *num, int size, lbm_rcv_transport_stats_t *stats);
8374
8375 #ifndef LBM_INTERNAL_USE_ONLY
8376 #define lbm_rcv_retrieve_all_transport_stats(r,n,s) \
8377 lbm_rcv_retrieve_all_transport_stats_ex(r,n,sizeof(lbm_rcv_transport_stats_t),s)
8378 #endif
8379
8385 LBMExpDLL int lbm_rcv_reset_all_transport_stats(lbm_rcv_t *rcv);
8386
8410 LBMExpDLL int lbm_context_retrieve_rcv_transport_stats(lbm_context_t *ctx, int *num, lbm_rcv_transport_stats_t *stats);
8411
8433 LBMExpDLL int lbm_context_retrieve_rcv_transport_stats_ex(lbm_context_t *ctx, int *num, int size, lbm_rcv_transport_stats_t *stats);
8434
8435 #ifndef LBM_INTERNAL_USE_ONLY
8436 #define lbm_context_retrieve_rcv_transport_stats(c,n,s) \
8437 lbm_context_retrieve_rcv_transport_stats_ex(c,n,sizeof(lbm_rcv_transport_stats_t),s)
8438 #endif
8439
8445 LBMExpDLL int lbm_context_reset_rcv_transport_stats(lbm_context_t *ctx);
8446
8470 LBMExpDLL int lbm_context_retrieve_src_transport_stats(lbm_context_t *ctx, int *num, lbm_src_transport_stats_t *stats);
8471
8493 LBMExpDLL int lbm_context_retrieve_src_transport_stats_ex(lbm_context_t *ctx, int *num, int size, lbm_src_transport_stats_t *stats);
8494
8495 #ifndef LBM_INTERNAL_USE_ONLY
8496 #define lbm_context_retrieve_src_transport_stats(c,n,s) \
8497 lbm_context_retrieve_src_transport_stats_ex(c,n,sizeof(lbm_src_transport_stats_t),s)
8498 #endif
8499
8505 LBMExpDLL int lbm_context_reset_src_transport_stats(lbm_context_t *ctx);
8506
8524 LBMExpDLL int lbm_event_queue_retrieve_stats(lbm_event_queue_t *evq, lbm_event_queue_stats_t *stats);
8525
8536 LBMExpDLL int lbm_event_queue_reset_stats(lbm_event_queue_t *evq);
8537
8550 LBMExpDLL int lbm_context_retrieve_stats(lbm_context_t *ctx, lbm_context_stats_t *stats);
8551
8557 LBMExpDLL int lbm_context_reset_stats(lbm_context_t *ctx);
8558
8579 LBMExpDLL int lbm_context_retrieve_im_src_transport_stats(lbm_context_t *ctx, int *num, int size, lbm_src_transport_stats_t *stats);
8580
8586 LBMExpDLL int lbm_context_reset_im_src_transport_stats(lbm_context_t *ctx);
8587
8608 LBMExpDLL int lbm_context_retrieve_im_rcv_transport_stats(lbm_context_t *ctx, int *num, int size, lbm_rcv_transport_stats_t *stats);
8609
8615 LBMExpDLL int lbm_context_reset_im_rcv_transport_stats(lbm_context_t *ctx);
8616
8634 LBMExpDLL int lbm_context_set_nak_cutoff(lbm_context_t *ctx, int flags);
8635
8658 LBMExpDLL int lbm_msg_retain(lbm_msg_t *msg);
8659
8676 LBMExpDLL int lbm_msg_is_fragment(lbm_msg_t *msg);
8677
8694 LBMExpDLL int lbm_msg_retrieve_fragment_info(lbm_msg_t *msg, lbm_msg_fragment_info_t *info);
8695
8704 LBMExpDLL int lbm_msg_retrieve_gateway_info(lbm_msg_t *msg, lbm_msg_gateway_info_t *info);
8705
8712 LBMExpDLL int lbm_msg_retrieve_msgid(lbm_msg_t *msg, lbm_umq_msgid_t *id);
8713
8720 LBMExpDLL int lbm_msg_retrieve_umq_index(lbm_msg_t *msg, lbm_umq_index_info_t *info);
8721
8723 LBMExpDLL int lbm_msg_retrieve_delivery_latency(lbm_msg_t *msg, lbm_int64_t *latency_nsecs);
8724
8746 LBMExpDLL int lbm_msg_delete(lbm_msg_t *msg);
8747
8766 LBMExpDLL int lbm_msg_ume_send_explicit_ack(lbm_msg_t *msg);
8767
8773 LBMExpDLL int lbm_msg_ume_can_send_explicit_ack(lbm_msg_t *msg);
8774
8785 LBMExpDLL int lbm_src_ume_deregister(lbm_src_t *src);
8786
8799 LBMExpDLL int lbm_ssrc_ume_deregister(lbm_ssrc_t *ssrc);
8800
8809 LBMExpDLL int lbm_rcv_ume_deregister(lbm_rcv_t *rcv);
8810
8819 LBMExpDLL int lbm_wrcv_ume_deregister(lbm_wildcard_rcv_t *wrcv);
8820
8828 LBMExpDLL int lbm_msg_umq_reassign(lbm_msg_t *msg, int flags);
8829
8837 LBMExpDLL int lbm_rcv_umq_deregister(lbm_rcv_t *rcv, const char *queue_name);
8838
8849 LBMExpDLL int lbm_rcv_umq_index_stop_assignment(lbm_rcv_t *rcv, const char *queue_name);
8850
8857 LBMExpDLL int lbm_rcv_umq_index_start_assignment(lbm_rcv_t *rcv, const char *queue_name);
8858
8871 LBMExpDLL int lbm_rcv_umq_index_reserve(lbm_rcv_t *rcv, const char *queue_name, lbm_umq_index_info_t *index_info);
8872
8882 LBMExpDLL int lbm_rcv_umq_index_release(lbm_rcv_t *rcv, const char *queue_name, lbm_umq_index_info_t *index_info);
8883
8894 LBMExpDLL int lbm_wildcard_rcv_umq_index_stop_assignment(lbm_wildcard_rcv_t *wrcv, const char *queue_name);
8895
8902 LBMExpDLL int lbm_wildcard_rcv_umq_index_start_assignment(lbm_wildcard_rcv_t *wrcv, const char *queue_name);
8903
8913 LBMExpDLL int lbm_wildcard_rcv_umq_index_release(lbm_wildcard_rcv_t *wrcv, const char *queue_name, lbm_umq_index_info_t *index_info);
8914
8921 LBMExpDLL int lbm_wildcard_rcv_umq_deregister(lbm_wildcard_rcv_t *wrcv, const char *queue_name);
8922
8955 LBMExpDLL int lbm_send_response(lbm_response_t *resp, const char *data, size_t len, int flags);
8956
8973 LBMExpDLL int lbm_response_delete(lbm_response_t *resp);
8974
8975
8985 LBMExpDLL int lbm_serialized_response_delete(lbm_serialized_response_t* serialized_response);
8986
8987
8997 LBMExpDLL lbm_serialized_response_t* lbm_serialize_response(lbm_response_t *resp);
8998
9014 LBMExpDLL lbm_response_t* lbm_deserialize_response(lbm_context_t *ctx, lbm_serialized_response_t* serialized_response);
9015
9047 LBMExpDLL int lbm_send_request(lbm_request_t **reqp, lbm_src_t *src, const char *data,
9048 size_t len, lbm_request_cb_proc proc, void *clientd, lbm_event_queue_t *evq,
9049 int send_flags);
9050
9083 LBMExpDLL int lbm_send_request_ex(lbm_request_t **reqp, lbm_src_t *src, const char *data,
9084 size_t len, lbm_request_cb_proc proc, void *clientd, lbm_event_queue_t *evq,
9085 int send_flags, lbm_src_send_ex_info_t *exinfo);
9086
9123 LBMExpDLL int lbm_ssrc_send_request_ex(lbm_request_t **reqp, lbm_ssrc_t *ssrc, const char *usr_bufp,
9124 size_t len, lbm_request_cb_proc proc, void *clientd, lbm_event_queue_t *evq,
9125 int send_flags, lbm_ssrc_send_ex_info_t *exinfo);
9126
9142 LBMExpDLL int lbm_request_delete(lbm_request_t *req);
9143
9160 LBMExpDLL int lbm_request_delete_ex(lbm_request_t *req, lbm_event_queue_cancel_cb_info_t *cbinfo);
9161
9178 LBMExpDLL int lbm_event_queue_create(lbm_event_queue_t **evqp, lbm_event_queue_monitor_proc proc,
9179 void *clientd, const lbm_event_queue_attr_t *attr);
9180
9194 LBMExpDLL int lbm_event_queue_attr_create(lbm_event_queue_attr_t * * attr);
9195
9205 LBMExpDLL int lbm_event_queue_attr_create_default(lbm_event_queue_attr_t * * attr);
9206
9230 LBMExpDLL int lbm_event_queue_attr_create_from_xml(lbm_event_queue_attr_t * * attr, const char * event_queue_name);
9231
9247 LBMExpDLL int lbm_event_queue_attr_set_from_xml(lbm_event_queue_attr_t * attr, const char * event_queue_name);
9248
9256 LBMExpDLL int lbm_event_queue_attr_delete(lbm_event_queue_attr_t *attr);
9257
9268 LBMExpDLL int lbm_event_queue_attr_dup(lbm_event_queue_attr_t * * attr, const lbm_event_queue_attr_t * original);
9269
9284 LBMExpDLL int lbm_event_queue_attr_setopt(lbm_event_queue_attr_t *attr, const char *optname,
9285 const void *optval, size_t optlen);
9286
9300 LBMExpDLL int lbm_event_queue_attr_str_setopt(lbm_event_queue_attr_t *attr, const char *optname,
9301 const char *optval);
9302
9312 LBMExpDLL int lbm_event_queue_attr_getopt(lbm_event_queue_attr_t *attr, const char *optname,
9313 void *optval, size_t *optlen);
9314
9325 LBMExpDLL int lbm_event_queue_attr_str_getopt(lbm_event_queue_attr_t *attr, const char *optname,
9326 char *optval, size_t *optlen);
9327
9341 LBMExpDLL int lbm_event_queue_setopt(lbm_event_queue_t *evq, const char *optname, const void *optval, size_t optlen);
9342
9355 LBMExpDLL int lbm_event_queue_str_setopt(lbm_event_queue_t *evq, const char *optname, const char *optval);
9356
9367 LBMExpDLL int lbm_event_queue_getopt(lbm_event_queue_t *evq, const char *optname, void *optval, size_t *optlen);
9368
9379 LBMExpDLL int lbm_event_queue_str_getopt(lbm_event_queue_t *evq, const char *optname, char *optval, size_t *optlen);
9380
9398 LBMExpDLL int lbm_event_dispatch(lbm_event_queue_t *evq, lbm_ulong_t tmo);
9399
9414 LBMExpDLL int lbm_event_dispatch_unblock(lbm_event_queue_t *evq);
9415
9429 LBMExpDLL int lbm_event_queue_size(lbm_event_queue_t *evq);
9430
9442 LBMExpDLL int lbm_event_queue_shutdown(lbm_event_queue_t *evq);
9443
9463 LBMExpDLL int lbm_event_queue_delete(lbm_event_queue_t *evq);
9464
9531 LBMExpDLL int lbm_unicast_immediate_message(lbm_context_t *ctx, const char *target, const char *topic,
9532 const char *data, size_t len, int flags);
9533
9598 LBMExpDLL int lbm_unicast_immediate_request(lbm_request_t **reqp, lbm_context_t *ctx, const char *target,
9599 const char *topic, const char *data, size_t len,
9600 lbm_request_cb_proc proc, void *clientd,
9601 lbm_event_queue_t *evq, int flags);
9602
9619 LBMExpDLL int lbm_queue_immediate_message(lbm_context_t *ctx, const char *qname, const char *topic, const char *data,
9620 size_t len, int flags, lbm_src_send_ex_info_t *info);
9621
9656 LBMExpDLL int lbm_multicast_immediate_message(lbm_context_t *ctx, const char *topic,
9657 const char *data, size_t len, int flags);
9658
9689 LBMExpDLL int lbm_multicast_immediate_request(lbm_request_t **reqp, lbm_context_t *ctx,
9690 const char *topic, const char *data,
9691 size_t len, lbm_request_cb_proc proc,
9692 void *clientd, lbm_event_queue_t *evq,
9693 int flags);
9694
9707 LBMExpDLL int lbm_wildcard_rcv_dump(lbm_wildcard_rcv_t *wrcv, int *size, lbm_config_option_t *opts);
9708
9721 LBMExpDLL int lbm_wildcard_rcv_attr_dump(lbm_wildcard_rcv_attr_t *wattr, int *size, lbm_config_option_t *opts);
9722
9732 LBMExpDLL int lbm_wildcard_rcv_attr_option_size(void);
9733
9734
9746 LBMExpDLL int lbm_wildcard_rcv_attr_create(lbm_wildcard_rcv_attr_t * * attr);
9747
9757 LBMExpDLL int lbm_wildcard_rcv_attr_create_default(lbm_wildcard_rcv_attr_t * * attr);
9758
9782 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);
9783
9801 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);
9802
9810 LBMExpDLL int lbm_wildcard_rcv_attr_delete(lbm_wildcard_rcv_attr_t *attr);
9811
9822 LBMExpDLL int lbm_wildcard_rcv_attr_dup(lbm_wildcard_rcv_attr_t * * attr, const lbm_wildcard_rcv_attr_t * original);
9823
9838 LBMExpDLL int lbm_wildcard_rcv_attr_setopt(lbm_wildcard_rcv_attr_t *attr, const char *optname,
9839 const void *optval, size_t optlen);
9840
9854 LBMExpDLL int lbm_wildcard_rcv_attr_str_setopt(lbm_wildcard_rcv_attr_t *attr, const char *optname,
9855 const char *optval);
9856
9866 LBMExpDLL int lbm_wildcard_rcv_attr_getopt(lbm_wildcard_rcv_attr_t *attr, const char *optname,
9867 void *optval, size_t *optlen);
9868
9879 LBMExpDLL int lbm_wildcard_rcv_attr_str_getopt(lbm_wildcard_rcv_attr_t *attr, const char *optname,
9880 char *optval, size_t *optlen);
9881
9895 LBMExpDLL int lbm_wildcard_rcv_setopt(lbm_wildcard_rcv_t *wrcv, const char *optname, const void *optval, size_t optlen);
9896
9909 LBMExpDLL int lbm_wildcard_rcv_str_setopt(lbm_wildcard_rcv_t *wrcv, const char *optname, const char *optval);
9910
9921 LBMExpDLL int lbm_wildcard_rcv_getopt(lbm_wildcard_rcv_t *wrcv, const char *optname, void *optval, size_t *optlen);
9922
9933 LBMExpDLL int lbm_wildcard_rcv_str_getopt(lbm_wildcard_rcv_t *wrcv, const char *optname, char *optval, size_t *optlen);
9934
9961 LBMExpDLL int lbm_wildcard_rcv_create(lbm_wildcard_rcv_t **wrcvp, lbm_context_t *ctx, const char *pattern,
9962 const lbm_rcv_topic_attr_t *tattr, const lbm_wildcard_rcv_attr_t *wattr,
9963 lbm_rcv_cb_proc proc, void *clientd, lbm_event_queue_t *evq);
9964
9978 LBMExpDLL int lbm_wildcard_rcv_delete(lbm_wildcard_rcv_t *wrcv);
9979
9994 LBMExpDLL int lbm_wildcard_rcv_delete_ex(lbm_wildcard_rcv_t *wrcv,
9995 lbm_event_queue_cancel_cb_info_t *cbinfo);
9996
10003 LBMExpDLL lbm_context_t * lbm_context_from_wildcard_rcv(lbm_wildcard_rcv_t * wcrcv);
10004
10011 LBMExpDLL lbm_event_queue_t * lbm_event_queue_from_wildcard_rcv(lbm_wildcard_rcv_t * wcrcv);
10012
10032 LBMExpDLL int lbm_hf_src_create(lbm_src_t **srcp, lbm_context_t *ctx, lbm_topic_t *topic, lbm_src_cb_proc proc,
10033 void *clientd, lbm_event_queue_t *evq);
10034
10066 LBMExpDLL int lbm_hf_src_send(lbm_src_t *src, const char *msg, size_t len, lbm_uint_t sqn, int flags);
10067
10100 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);
10101
10137 LBMExpDLL int lbm_hf_src_sendv(lbm_src_t *src, const lbm_iovec_t *iov, int num, lbm_uint_t sqn, int flags);
10138
10151 LBMExpDLL int lbm_hf_rcv_topic_dump(lbm_hf_rcv_t *hfrcv,
10152 int *size,
10153 lbm_config_option_t *opts);
10154
10192 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);
10193
10228 LBMExpDLL int lbm_hf_src_send_rcv_reset(lbm_src_t * src, int flags, lbm_src_send_ex_info_t * exinfo);
10229
10248 LBMExpDLL int lbm_hf_rcv_create(lbm_hf_rcv_t **hfrcvp, lbm_context_t *ctx, lbm_topic_t *topic, lbm_rcv_cb_proc proc,
10249 void *clientd, lbm_event_queue_t *evq);
10250
10264 LBMExpDLL int lbm_hf_rcv_delete(lbm_hf_rcv_t *hfrcv);
10265
10280 LBMExpDLL int lbm_hf_rcv_delete_ex(lbm_hf_rcv_t *hfrcv, lbm_event_queue_cancel_cb_info_t *cbinfo);
10281
10287 LBMExpDLL lbm_hf_rcv_t *lbm_hf_rcv_from_rcv(lbm_rcv_t *rcv);
10288
10294 LBMExpDLL lbm_rcv_t *lbm_rcv_from_hf_rcv(lbm_hf_rcv_t *hfrcv);
10295
10296
10309 LBMExpDLL int lbm_hfx_dump(lbm_hfx_t *hfx, int *size, lbm_config_option_t *opts);
10310
10323 LBMExpDLL int lbm_hfx_attr_dump(lbm_hfx_attr_t *attr, int *size, lbm_config_option_t *opts);
10324
10334 LBMExpDLL int lbm_hfx_attr_option_size(void);
10335
10348 LBMExpDLL int lbm_hfx_attr_create(lbm_hfx_attr_t **attr);
10349
10350
10369 LBMExpDLL int lbm_hfx_attr_create_from_xml(lbm_hfx_attr_t * * attr, const char * topicname);
10370
10383 LBMExpDLL int lbm_hfx_attr_set_from_xml(lbm_hfx_attr_t * attr, const char * topicname);
10384
10392 LBMExpDLL int lbm_hfx_attr_delete(lbm_hfx_attr_t *attr);
10393
10394
10395
10410 LBMExpDLL int lbm_hfx_attr_setopt(lbm_hfx_attr_t *attr, const char *optname,
10411 const void *optval, size_t optlen);
10412
10426 LBMExpDLL int lbm_hfx_attr_str_setopt(lbm_hfx_attr_t *attr, const char *optname,
10427 const char *optval);
10428
10439 LBMExpDLL int lbm_hfx_attr_getopt(lbm_hfx_attr_t *attr, const char *optname,
10440 void *optval, size_t *optlen);
10441
10452 LBMExpDLL int lbm_hfx_attr_str_getopt(lbm_hfx_attr_t *attr, const char *optname,
10453 char *optval, size_t *optlen);
10454
10468 LBMExpDLL int lbm_hfx_setopt(lbm_hfx_t *hfx, const char *optname, const void *optval, size_t optlen);
10469
10482 LBMExpDLL int lbm_hfx_str_setopt(lbm_hfx_t *hfx, const char *optname, const char *optval);
10483
10494 LBMExpDLL int lbm_hfx_getopt(lbm_hfx_t *hfx, const char *optname, void *optval, size_t *optlen);
10495
10506 LBMExpDLL int lbm_hfx_str_getopt(lbm_hfx_t *hfx, const char *optname, char *optval, size_t *optlen);
10507
10523 LBMExpDLL int lbm_hfx_create(lbm_hfx_t **hfxp,
10524 lbm_hfx_attr_t *cattr,
10525 const char *symbol,
10526 lbm_rcv_cb_proc proc,
10527 lbm_event_queue_t *evq);
10528
10536 LBMExpDLL int lbm_hfx_delete(lbm_hfx_t *hfx);
10537
10557 LBMExpDLL int lbm_hfx_delete_ex(lbm_hfx_t *hfx, lbm_event_queue_cancel_cb_info_t *cbinfo);
10558
10571 LBMExpDLL int lbm_hfx_rcv_topic_dump(lbm_hfx_rcv_t *hfxrcv,
10572 int *size,
10573 lbm_config_option_t *opts);
10574
10587 LBMExpDLL int lbm_hfx_rcv_create(lbm_hfx_rcv_t **hfrcvp,
10588 lbm_hfx_t *hfx,
10589 lbm_context_t *ctx,
10590 lbm_rcv_topic_attr_t *rattr,
10591 void *clientd);
10592
10596 LBMExpDLL lbm_rcv_t *lbm_rcv_from_hfx_rcv(lbm_hfx_rcv_t *hfxrcv);
10597
10605 LBMExpDLL int lbm_hfx_rcv_delete(lbm_hfx_rcv_t *hfrcv);
10606
10627 LBMExpDLL int lbm_hfx_rcv_delete_ex(lbm_hfx_rcv_t *hfrcv, lbm_event_queue_cancel_cb_info_t *cbinfo);
10628
10635 LBMExpDLL void lbm_debug_filename(const char *filename);
10636
10643 LBMExpDLL void lbm_debug_mask(lbm_uint64_t mask);
10644
10649 LBMExpDLL void lbm_debugfile_maxsize(lbm_uint64_t size);
10650
10656 LBMExpDLL void lbm_debugfile_max_rollover(lbm_uint32_t size);
10657
10661 LBMExpDLL void lbm_debug_noflush(int on);
10662
10670 LBMExpDLL void lbm_log_debug(int on);
10671
10677 LBMExpDLL int lbm_debug_dump(const char *filename, int append);
10678
10683 LBMExpDLL void lbm_debug_ring_buffer(size_t maxsz);
10684
10689 LBMExpDLL void lbm_debug_ring_buffer_walltime(int use);
10690
10697 LBMExpDLL void lbm_set_uim_loss_rate(int rate);
10698
10705 LBMExpDLL void lbm_set_lbtrm_loss_rate(int rate);
10706
10713 LBMExpDLL void lbm_set_lbtrm_src_loss_rate(int rate);
10714
10721 LBMExpDLL void lbm_set_lbtru_loss_rate(int rate);
10722
10729 LBMExpDLL void lbm_set_lbtru_src_loss_rate(int rate);
10730
10741 LBMExpDLL int lbm_transport_source_parse(const char *source, lbm_transport_source_info_t *info, size_t infosize);
10742
10754 LBMExpDLL int lbm_transport_source_format(const lbm_transport_source_info_t *info, size_t infosize, char *source, size_t *size);
10755
10757 struct lbm_apphdr_chain_iter_t_stct;
10759 typedef struct lbm_apphdr_chain_iter_t_stct lbm_apphdr_chain_iter_t;
10760
10765 typedef struct lbm_apphdr_chain_elem_t_stct {
10767 lbm_uchar_t type;
10769 lbm_ushort_t subtype;
10771 size_t len;
10773 void *data;
10774 } lbm_apphdr_chain_elem_t;
10775
10785 LBMExpDLL int lbm_apphdr_chain_create(lbm_apphdr_chain_t **chain);
10786
10795 LBMExpDLL int lbm_apphdr_chain_delete(lbm_apphdr_chain_t *chain);
10796
10806 LBMExpDLL int lbm_apphdr_chain_append_elem(lbm_apphdr_chain_t *chain, lbm_apphdr_chain_elem_t *elem);
10807
10818 LBMExpDLL int lbm_apphdr_chain_iter_create(lbm_apphdr_chain_iter_t **chain_iter, lbm_apphdr_chain_t *chain);
10819
10830 LBMExpDLL int lbm_apphdr_chain_iter_create_from_msg(lbm_apphdr_chain_iter_t **chain_iter, lbm_msg_t *msg);
10831
10842 LBMExpDLL int lbm_apphdr_chain_iter_delete(lbm_apphdr_chain_iter_t *chain_iter);
10843
10853 LBMExpDLL int lbm_apphdr_chain_iter_first(lbm_apphdr_chain_iter_t **chain_iter);
10854
10864 LBMExpDLL int lbm_apphdr_chain_iter_done(lbm_apphdr_chain_iter_t **chain_iter);
10865
10875 LBMExpDLL int lbm_apphdr_chain_iter_next(lbm_apphdr_chain_iter_t **chain_iter);
10876
10886 LBMExpDLL lbm_apphdr_chain_elem_t * lbm_apphdr_chain_iter_current(lbm_apphdr_chain_iter_t **chain_iter);
10887
10888
10899 typedef struct lbm_msg_properties_iter_t_stct {
10901 const char *name;
10903 char *data;
10905 size_t size;
10911 int type;
10912 } lbm_msg_properties_iter_t;
10913
10927 LBMExpDLL int lbm_msg_properties_create(lbm_msg_properties_t **properties);
10928
10940 LBMExpDLL int lbm_msg_properties_delete(lbm_msg_properties_t *properties);
10941
10960 LBMExpDLL int lbm_msg_properties_set(lbm_msg_properties_t *properties, const char *name, const void *value, int type, size_t size);
10961
10973 LBMExpDLL int lbm_msg_properties_clear(lbm_msg_properties_t *properties, const char *name);
10974
10999 LBMExpDLL int lbm_msg_properties_get(lbm_msg_properties_t *properties, const char *name, void *value, int *type, size_t *size);
11000
11016 LBMExpDLL int lbm_msg_properties_iter_create(lbm_msg_properties_iter_t **iterp);
11017
11026 LBMExpDLL int lbm_msg_properties_iter_delete(lbm_msg_properties_iter_t *iter);
11027
11038 LBMExpDLL int lbm_msg_properties_iter_first(lbm_msg_properties_iter_t *iter, lbm_msg_properties_t *properties);
11039
11053 LBMExpDLL int lbm_msg_properties_iter_next(lbm_msg_properties_iter_t *iter);
11054
11072 LBMExpDLL int lbm_src_get_inflight(lbm_src_t *src, int type, int *inflight, lbm_flight_size_set_inflight_cb_proc proc, void *clientd);
11073
11091 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);
11092
11111 LBMExpDLL int lbm_ssrc_get_inflight(lbm_ssrc_t *ssrc, int type, int *inflight, lbm_flight_size_set_inflight_cb_proc proc, void *clientd);
11112
11131 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);
11132
11144 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);
11145
11153 LBMExpDLL int lbm_ume_src_msg_stable(lbm_src_t *src, lbm_uint32_t sqn);
11154
11165 LBMExpDLL int lbm_umq_ctx_msg_stable(lbm_context_t *ctx, const char *qname, lbm_umq_msgid_t *msg_id);
11166
11181 LBMExpDLL lbm_ume_rcv_ack_t *lbm_msg_extract_ume_ack(lbm_msg_t *msg);
11182
11193 LBMExpDLL int lbm_ume_ack_delete(lbm_ume_rcv_ack_t *ack);
11194
11206 LBMExpDLL int lbm_ume_ack_send_explicit_ack(lbm_ume_rcv_ack_t *ack, lbm_uint_t sqn);
11207
11216 LBMExpDLL int lbm_ume_ack_mark_not_outstanding(lbm_ume_rcv_ack_t *ack, lbm_uint_t sqn);
11217
11234 LBMExpDLL int lbm_ctx_umq_queue_topic_list(lbm_context_t *ctx, const char *queue_name, lbm_async_operation_func_t *async_opfunc);
11235
11237 struct lbm_umq_msg_selector_t_stct;
11239 typedef struct lbm_umq_msg_selector_t_stct lbm_umq_msg_selector_t;
11240
11247 LBMExpDLL int lbm_umq_msg_selector_create(lbm_umq_msg_selector_t **selector, char* str, lbm_uint16_t len);
11248
11252 LBMExpDLL int lbm_umq_msg_selector_delete(lbm_umq_msg_selector_t *selector);
11253
11270 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);
11271
11297 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);
11298
11314 LBMExpDLL int lbm_async_operation_status(lbm_async_operation_handle_t handle, int flags);
11315
11340 LBMExpDLL int lbm_async_operation_cancel(lbm_async_operation_handle_t handle, int flags);
11341
11343 typedef int (*lbm_cred_callback_fn)(const char* name, size_t name_len, const char* passwd, size_t passwd_len, void *clientd);
11344
11359 LBMExpDLL int lbm_auth_set_credentials(lbm_context_t *ctx,
11360 const char* name, size_t name_len,
11361 const char* passwd, size_t passwd_len,
11362 lbm_cred_callback_fn cbfn, void *clientd,
11363 int auth_required);
11364
11374 LBMExpDLL int lbm_authstorage_open_storage_xml(char *filename);
11375
11382 LBMExpDLL void lbm_authstorage_close_storage_xml(void);
11383
11392 LBMExpDLL int lbm_authstorage_checkpermission(char *username, char* command);
11393
11404 LBMExpDLL int lbm_authstorage_addtpnam(const char* username, const char* pass, unsigned char flags);
11405
11413 LBMExpDLL int lbm_authstorage_deltpnam(const char* username);
11414
11423 LBMExpDLL int lbm_authstorage_user_add_role(const char* username, const char* role);
11424
11433 LBMExpDLL int lbm_authstorage_user_del_role(const char *username, const char* role);
11434
11441 LBMExpDLL int lbm_authstorage_load_roletable(void);
11442
11449 LBMExpDLL int lbm_authstorage_unload_roletable(void);
11450
11459 LBMExpDLL int lbm_authstorage_roletable_add_role_action(const char* rolename, const char* action);
11460
11468 LBMExpDLL int lbm_authstorage_print_roletable(void);
11469
11474 typedef struct lbm_umm_info_t_stct {
11476 char username[LBM_UMM_USER_NAME_LENGTH_MAX];
11478 char password[LBM_UMM_PASSWORD_LENGTH_MAX];
11480 char appname[LBM_UMM_APP_NAME_LENGTH_MAX];
11482 char servers[LBM_UMM_NUM_SERVERS_MAX][LBM_UMM_SERVER_LENGTH_MAX];
11485 lbm_uint32_t flags;
11487 char * cert_file;
11489 char * cert_file_password;
11490 } lbm_umm_info_t;
11491
11501 LBMExpDLL int lbm_set_umm_info(lbm_umm_info_t * info);
11502
11507 LBMExpDLL int lbm_is_ume_capable(void);
11508
11513 LBMExpDLL int lbm_is_umq_capable(void);
11514
11515 /* internal error management function(s) */
11517 LBMExpDLL void lbm_seterr(int eno, const char *str);
11519 LBMExpDLL void lbm_seterrf(int eno, const char *format, ...);
11521 LBMExpDLL const char *lbm_strerror(void);
11523 LBMExpDLL const char *lbm_strerror_errnum(int errnum);
11524
11526 LBMExpDLL void lbm_sock_init(void);
11531 LBMExpDLL lbm_uint64_t lbm_create_random_id(void);
11536 LBMExpDLL char * lbm_get_jms_msg_id(lbm_uint64_t source_id, lbm_uint64_t seqno_id, char *topic);
11537
11548 LBMExpDLL int lbm_src_buff_acquire(lbm_src_t * const src, void ** const bufp, const size_t len, const int flags);
11549
11557 LBMExpDLL int lbm_src_buffs_complete(lbm_src_t * const src);
11558
11572 LBMExpDLL int lbm_src_buffs_complete_and_acquire(lbm_src_t * const src, void ** const bufp, const size_t len, const int flags);
11573
11583 LBMExpDLL int lbm_src_buffs_cancel(lbm_src_t * const src);
11584
11611 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);
11612
11625 LBMExpDLL int lbm_ssrc_buff_get(lbm_ssrc_t * const ssrc, char ** const usr_bufp, const int flags);
11626
11636 LBMExpDLL int lbm_ssrc_buff_put(lbm_ssrc_t * const ssrc, const char * usr_bufp);
11637
11639 struct lbm_xsp_t_stct;
11644 typedef struct lbm_xsp_t_stct lbm_xsp_t;
11645
11647 struct lbm_xsp_attr_t_stct;
11654 typedef struct lbm_xsp_attr_t_stct lbm_xsp_attr_t;
11655
11668 LBMExpDLL int lbm_xsp_dump(lbm_xsp_t *xsp, int *size, lbm_config_option_t *opts);
11669
11682 LBMExpDLL int lbm_xsp_attr_dump(lbm_xsp_attr_t *attr, int *size, lbm_config_option_t *opts);
11683
11695 LBMExpDLL int lbm_xsp_attr_option_size(void);
11696
11710 LBMExpDLL int lbm_xsp_attr_create(lbm_xsp_attr_t **attr);
11711
11721 LBMExpDLL int lbm_xsp_attr_delete(lbm_xsp_attr_t *attr);
11722
11739 LBMExpDLL int lbm_xsp_attr_setopt(lbm_xsp_attr_t *attr, const char *optname, const void *optval, size_t optlen);
11740
11756 LBMExpDLL int lbm_xsp_attr_str_setopt(lbm_xsp_attr_t *attr, const char *optname, const char *optval);
11757
11770 LBMExpDLL int lbm_xsp_attr_getopt(lbm_xsp_attr_t *attr, const char *optname, void *optval, size_t *optlen);
11771
11784 LBMExpDLL int lbm_xsp_attr_str_getopt(lbm_xsp_attr_t *attr, const char *optname, char *optval, size_t *optlen);
11785
11800 typedef int (*lbm_xsp_zero_transports_cb_proc)(lbm_xsp_t *xsp, void *clientd);
11801
11810 typedef struct lbm_xsp_zero_transports_func_t_stct {
11812 lbm_xsp_zero_transports_cb_proc zero_transports_func;
11814 void *clientd;
11815 } lbm_xsp_zero_transports_func_t;
11816
11833 LBMExpDLL int lbm_xsp_create(lbm_xsp_t **xspp, lbm_context_t *ctx, lbm_context_attr_t *cattr, lbm_xsp_attr_t *attr);
11834
11846 LBMExpDLL int lbm_xsp_delete(lbm_xsp_t *xsp);
11847
11876 LBMExpDLL int lbm_xsp_process_events(lbm_xsp_t *xsp, lbm_ulong_t msec);
11877
11888 LBMExpDLL int lbm_xsp_unblock(lbm_xsp_t *xsp);
11889
11912 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);
11913
11930 LBMExpDLL int lbm_xsp_cancel_fd(lbm_xsp_t *xsp, lbm_handle_t handle, lbm_ulong_t ev);
11931
11938 typedef struct lbm_new_transport_info_t_stct {
11940 int flags;
11942 lbm_transport_source_info_t src_info;
11944 char source[LBM_MSG_MAX_SOURCE_LEN];
11945 } lbm_new_transport_info_t;
11946
11962 typedef lbm_xsp_t *(*lbm_transport_mapping_cb_proc)(lbm_context_t *ctx, lbm_new_transport_info_t *info, void *clientd);
11963
11973 typedef struct lbm_transport_mapping_func_t_stct {
11975 lbm_transport_mapping_cb_proc mapping_func;
11977 void *clientd;
11978 } lbm_transport_mapping_func_t;
11979
11981 LBMExpDLL void lbm_set_benign_error_flag(void);
11983 LBMExpDLL void lbm_clr_benign_error_flag(void);
11985 LBMExpDLL int lbm_get_benign_error_flag(void);
11986
11987 #if defined(__cplusplus)
11988 }
11989 #endif /* __cplusplus */
11990
11991 #endif /* LBM_H */
lbm_rcv_transport_stats_lbtsmx_t_stct::lbm_msgs_rcved
lbm_ulong_t lbm_msgs_rcved
Number of messages received over an LBT-SMX transport. (Cumulative)
Definition: lbm.h:5184
lbm_src_transport_stats_lbtrm_t
struct lbm_src_transport_stats_lbtrm_t_stct lbm_src_transport_stats_lbtrm_t
Structure that holds datagram statistics for source LBT-RM transports.
lbm_src_event_umq_ulb_receiver_info_ex_t_stct::flags
int flags
Bitmap set of flags reserved for future use. Currently set to 0.
Definition: lbm.h:2910
lbm_msg_t_stct::umeack
const void * umeack
UM internal only. DO NOT ACCESS DIRECTLY!
Definition: lbm.h:4031
lbm_src_transport_stats_t_stct::lbtipc
lbm_src_transport_stats_lbtipc_t lbtipc
The statistics for source LBT-IPC transports.
Definition: lbm.h:4637
lbm_transport_mapping_func_t_stct::mapping_func
lbm_transport_mapping_cb_proc mapping_func
Function pointer for application callback.
Definition: lbm.h:11975
lbm_ssrc_ume_deregister
LBMExpDLL int lbm_ssrc_ume_deregister(lbm_ssrc_t *ssrc)
Deregister a smart source from the UMP Stores.
lbm_wildcard_rcv_attr_create_default
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_context_event_umq_registration_complete_ex_t_stct::queue_id
lbm_uint_t queue_id
The Queue ID of the queue.
Definition: lbm.h:2804
lbm_datagram_acceleration_recv_info_t_stct::handle
void * handle
Returned from bind.
Definition: lbm.h:2968
lbm_resolver_event_info_t_stct::domain_id
lbm_uint32_t domain_id
The internals of this structure are for UM internal use only.
Definition: lbm.h:2407
lbm_rcv_transport_stats_lbtrm_t_stct::unrecovered_txw
lbm_ulong_t unrecovered_txw
Number of LBT-RM datagrams unrecovered (LBM_MSG_UNRECOVERABLE_LOSS delivered to receiver application)...
Definition: lbm.h:4840
lbm_event_queue_stats_t_stct::source_events
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:5478
lbm_datagram_acceleration_close_function_t
int(* lbm_datagram_acceleration_close_function_t)(void *device)
Application callback function to implement datagram acceleration close.
Definition: lbm.h:3006
lbm_rcv_transport_stats_tcp_t_stct::lbm_reqs_rcved
lbm_ulong_t lbm_reqs_rcved
Number of UM request messages received (message type LBM_MSG_REQUEST). (Cumulative) ...
Definition: lbm.h:4687
lbm_ume_rcv_regid_ex_func_t_stct::clientd
void * clientd
Client data to be passed to the callback.
Definition: lbm.h:3433
lbm_src_event_sequence_number_info_t_stct::msg_clientd
void * msg_clientd
The clientd pointer passed in for the message.
Definition: lbm.h:2721
lbm_hf_src_sendv_ex
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...
lbm_msg_fragment_info_t
struct lbm_msg_fragment_info_t_stct lbm_msg_fragment_info_t
Structure that holds fragment information for UM messages when appropriate.
lbm_event_queue_stats_t_stct::callback_events_svc_mean
lbm_ulong_t callback_events_svc_mean
Mean service time for callback events (in microseconds). (Cumulative)
Definition: lbm.h:5615
lbm_msg_t_stct::umq_cr
const void * umq_cr
UM internal only. DO NOT ACCESS DIRECTLY!
Definition: lbm.h:4041
lbm_src_transport_stats_tcp_t
struct lbm_src_transport_stats_tcp_t_stct lbm_src_transport_stats_tcp_t
Structure that holds datagram statistics for source TCP transports.
lbm_event_queue_stats_t_stct::topicless_im_msgs_tot
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:5378
lbm_msg_ume_registration_complete_ex_t_stct::flags
int flags
Bitmap indicating extra information about the registration. Zero or more flag bits ORed together: LBM...
Definition: lbm.h:1993
lbm_event_queue_stats_t_stct::age_min
lbm_ulong_t age_min
Minimum age of event queue entry when dequeued (in microseconds). (Cumulative)
Definition: lbm.h:5577
lbm_rcv_transport_stats_lbtru_t
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_msg_fragment_info_t_stct::offset
lbm_uint_t offset
The offset (in bytes) of this fragment from the message beginning.
Definition: lbm.h:3917
lbm_ssrc_buff_put
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.
lbm_config
LBMExpDLL int lbm_config(const char *fname)
Set one or more options from the contents of a disk file.
lbm_ume_store_entry_t_stct::ip_address
lbm_uint_t ip_address
The IP address of the UMP Store (network order)
Definition: lbm.h:3485
lbm_src_topic_attr_set_from_xml
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...
lbm_rcv_umq_queue_msg_retrieve_info_t::num_msgs
int num_msgs
The length of the retrieved message array.
Definition: lbm.h:2333
lbm_umm_info_t
struct lbm_umm_info_t_stct lbm_umm_info_t
Structure for specifying UMM daemon connection options.
lbm_transport_source_format
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.
lbm_async_operation_info_t::status
int status
The current status of the operation.
Definition: lbm.h:2378
lbm_event_queue_stats_t_stct::resp_msgs_svc_mean
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:5365
lbm_log
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.).
lbm_ume_store_group_entry_t
struct lbm_ume_store_group_entry_t_stct lbm_ume_store_group_entry_t
Structure that holds information to configure a Persistent Store group.
lbm_iovec_t_stct::iov_len
size_t iov_len
Number of bytes in this segment.
Definition: lbm.h:1784
lbm_src_event_ume_ack_ex_info_t_stct
Structure that holds ACK information for a given message in an extended form.
Definition: lbm.h:2048
lbm_mim_unrecloss_func_t
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...
LBM_FAILURE
Value returned on error for UM APIs.
Definition: lbm.h:1727
lbm_umq_queue_msg_status_t
Struct containing extended asynchronous operation status information about a single UMQ message...
Definition: lbm.h:2307
lbm_ctx_umq_get_inflight
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...
lbm_set_lbtru_loss_rate
LBMExpDLL void lbm_set_lbtru_loss_rate(int rate)
Dynamically set the LBT-RU loss rate.
lbm_msg_umq_index_assignment_eligibility_stop_complete_ex_t_stct
Structure that holds index assignment information for queuing receivers when an index stops...
Definition: lbm.h:2115
lbm_context_rcv_immediate_msgs_func_t
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...
lbm_iovec_t_stct
Structure, struct iovec compatible, that holds information about buffers used for vectored sends...
Definition: lbm.h:1780
lbm_transport_source_parse
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.
lbm_async_operation_info_t
Results struct returned via the user-specified asynchronous operation callback from any asynchronous ...
Definition: lbm.h:2374
lbm_msg_ume_registration_t
struct lbm_msg_ume_registration_t_stct lbm_msg_ume_registration_t
DEPRECATED, NOT USED.
lbm_rcv_delete
LBMExpDLL int lbm_rcv_delete(lbm_rcv_t *rcv)
Delete a UM receiver object.
lbm_src_event_ume_ack_info_t_stct::rcv_registration_id
lbm_uint_t rcv_registration_id
The registration ID for the receiver.
Definition: lbm.h:2034
lbm_umq_ulb_receiver_type_attr_t_stct::id
lbm_ulong_t id
Receiver Type ID.
Definition: lbm.h:3732
lbm_umq_ulb_application_set_attr_t
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...
lbm_debug_noflush
LBMExpDLL void lbm_debug_noflush(int on)
Set the noflush flag for the debug logs. This can dramatically increase performance when a debug mask...
lbm_apphdr_chain_elem_t_stct
Structure that represents an element in an app header chain.
Definition: lbm.h:10765
lbm_hf_rcv_create
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...
lbm_context_reset_im_src_transport_stats
LBMExpDLL int lbm_context_reset_im_src_transport_stats(lbm_context_t *ctx)
Reset the IM source stats for a context.
lbm_async_operation_info_t::rcv_umq_queue_msg_list
lbm_rcv_umq_queue_msg_list_info_t * rcv_umq_queue_msg_list
Results for message list.
Definition: lbm.h:2389
lbm_datagram_acceleration_recv_info_t_stct::buffer
char * buffer
Buffer pointer supplied and returned with data.
Definition: lbm.h:2972
lbm_ume_rcv_recovery_info_ex_func_info_t
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...
lbm_msg_t_stct::buffer
const lbm_buff_t * buffer
UM internal only. DO NOT ACCESS DIRECTLY!
Definition: lbm.h:4020
lbm_event_queue_stats_t_stct::context_source_events_svc_mean
lbm_ulong_t context_source_events_svc_mean
Mean service time for context source events (in microseconds). (Cumulative)
Definition: lbm.h:5553
lbm_datagram_acceleration_mcast_join_function_t
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:3038
lbm_context_stats_t_stct::tr_dgrams_rcved
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:5662
lbm_context_process_lbtipc_messages
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_t_stct::lbtsmx
lbm_src_transport_stats_lbtsmx_t lbtsmx
The statistics for source LBT-SMX transports.
Definition: lbm.h:4639
lbm_uchar_t
unsigned char lbm_uchar_t
For portability.
Definition: lbm.h:1738
lbm_event_queue_attr_str_setopt
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_resolver_event_info_t_stct::version
lbm_uint32_t version
The internals of this structure are for UM internal use only.
Definition: lbm.h:2409
lbm_umq_queue_msg_status_t::msg
lbm_msg_t * msg
Actual message, if appropriate and available (NULL otherwise)
Definition: lbm.h:2311
lbm_rcv_transport_stats_t_stct::lbtrm
lbm_rcv_transport_stats_lbtrm_t lbtrm
The statistics for receiver LBT-RM transports.
Definition: lbm.h:5273
lbm_event_queue_from_rcv
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...
lbm_hfx_attr_create_from_xml
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_rcv_src_notification_func_ex_t_stct::clientd
void * clientd
Client data to be passed to the callback.
Definition: lbm.h:5936
lbm_timespec_t_stct::tv_sec
lbm_ulong_t tv_sec
Seconds.
Definition: lbm.h:1817
lbm_resolver_event_info_t_stct::source_type
lbm_uint8_t source_type
The internals of this structure are for UM internal use only.
Definition: lbm.h:2405
lbm_ume_store_entry_t_stct::registration_id
lbm_uint_t registration_id
The registration ID that should be used with this UMP Store for the source.
Definition: lbm.h:3491
lbm_context_stats_t_stct::tr_dgrams_send_failed
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:5678
lbm_ume_ctx_rcv_ctx_notification_func_t_stct::create_func
lbm_ume_ctx_rcv_ctx_notification_create_function_cb create_func
Function pointer for application callback.
Definition: lbm.h:3657
lbm_src_event_ume_ack_ex_info_t_stct::store_index
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:2065
lbm_umq_queue_topic_t
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...
lbm_resolver_service_entry_t_stct
Structure that holds information to configure a Resolver Service.
Definition: lbm.h:3523
lbm_async_operation_func_t::evq
lbm_event_queue_t * evq
An event queue pointer; not yet supported. Should be set to NULL.
Definition: lbm.h:2587
lbm_src_event_ume_registration_complete_ex_t
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...
lbm_ipv4_address_mask_t
struct lbm_ipv4_address_mask_t_stct lbm_ipv4_address_mask_t
Structure that holds an IPv4 address and a CIDR style netmask.
lbm_hfx_dump
LBMExpDLL int lbm_hfx_dump(lbm_hfx_t *hfx, int *size, lbm_config_option_t *opts)
Retrieves all HFX configuration option values.
lbm_mem_mgt_free_cb_func
void(* lbm_mem_mgt_free_cb_func)(void *ptr, void *clientd)
Application callback to free memory using application specific function.
Definition: lbm.h:2498
lbm_rcv_transport_stats_lbtrm_t_stct::lbm_reqs_rcved
lbm_ulong_t lbm_reqs_rcved
Number of UM request messages received (message type LBM_MSG_REQUEST). (Cumulative) ...
Definition: lbm.h:4871
lbm_msg_umq_registration_complete_ex_t_stct::flags
int flags
Bitmap indicating extra information about the registration. Zero or more flag bits ORed together: LBM...
Definition: lbm.h:2839
lbm_src_transport_stats_lbtrdma_t_stct::msgs_sent
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:4579
lbm_umq_queue_application_set_t_stct::application_set_index
lbm_ushort_t application_set_index
Application set index.
Definition: lbm.h:2239
lbm_ume_rcv_regid_ex_func_info_t_stct
Structure that holds information for UMP receiver registration ID application callbacks.
Definition: lbm.h:2685
lbm_umq_ulb_receiver_type_entry_t_stct::application_set_index
lbm_ushort_t application_set_index
Index of the Application Set the receiver is in.
Definition: lbm.h:3689
lbm_transport_source_info_t_stct::type
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:4119
lbm_wildcard_rcv_attr_dup
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.
lbm_rcv_transport_stats_lbtrdma_t_stct
DEPRECATED, do not use. LBT-RDMA is no longer supported.
Definition: lbm.h:5199
lbm_msg_umq_index_assigned_ex_t_stct::flags
int flags
Bitmap indicating why the index was assigned to the receiver, etc. Zero or more flag bits ORed togeth...
Definition: lbm.h:2137
lbm_src_event_umq_registration_complete_ex_t_stct
Structure that holds information for sources after registration is complete to all involved queue ins...
Definition: lbm.h:2817
lbm_msg_ume_deregistration_ex_t
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_transport_source_info_t_stct::dest_port
lbm_ushort_t dest_port
Destination port. Applicable only to LBT-RM. Stored in host order.
Definition: lbm.h:4125
lbm_version
LBMExpDLL const char * lbm_version(void)
return the version string compiled into UM.
lbm_src_transport_stats_daemon_t_stct
DEPRECATED, do not use.
Definition: lbm.h:4417
lbm_datagram_acceleration_send_connect_function_t
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:3076
lbm_src_transport_stats_lbtrm_t_stct::txw_bytes
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:4334
lbm_rcv_transport_stats_broker_t_stct::bytes_rcved
lbm_ulong_t bytes_rcved
Number of BROKER message bytes received. This does not include overhead for the AMQP protocol...
Definition: lbm.h:5247
lbm_msg_properties_iter_next
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.
lbm_wildcard_rcv_compare_func_t_stct
Structure that holds the application callback function to configure "appcb" type wildcard pattern typ...
Definition: lbm.h:3401
lbm_src_event_umq_stability_ack_info_ex_t_stct::queue_id
lbm_uint_t queue_id
The Queue ID of the queue.
Definition: lbm.h:2868
lbm_mim_unrecloss_func_t_stct
Structure that holds the application callback for multicast immediate message unrecoverable loss noti...
Definition: lbm.h:3456
lbm_rcv_transport_stats_lbtrm_t_stct::nak_tx_mean
lbm_ulong_t nak_tx_mean
Mean number of times per lost message that a receiver transport transmitted a NAK. (Cumulative)
Definition: lbm.h:4817
lbm_logf
LBMExpDLL void lbm_logf(int level, const char *format,...)
Log a message. This is an entry to the UM logging mechanism.
lbm_src_event_umq_stability_ack_info_ex_t_stct::queue_instance_index
lbm_uint_t queue_instance_index
The index of the instance of the queue acknowledging the message.
Definition: lbm.h:2870
lbm_msg_retrieve_umq_index
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.
lbm_src_event_umq_ulb_message_info_ex_t_stct::msg_clientd
void * msg_clientd
The clientd pointer passed in for the message.
Definition: lbm.h:2950
lbm_ucast_resolver_entry_t_stct::destination_port
lbm_ushort_t destination_port
The port configured on the unicast resolver daemon. (network order)
Definition: lbm.h:3512
lbm_ume_ctx_rcv_ctx_notification_delete_function_cb
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:3646
lbm_event_queue_from_src
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...
lbm_wildcard_rcv_str_getopt
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_src_transport_stats_daemon_t_stct::bytes_buffered
lbm_ulong_t bytes_buffered
This statistic has been deprecated.
Definition: lbm.h:4419
lbm_context_event_umq_registration_complete_ex_t_stct::registration_id
lbm_umq_regid_t registration_id
Registration ID used for the registration.
Definition: lbm.h:2802
lbm_src_event_sequence_number_info_t_stct::first_sequence_number
lbm_uint_t first_sequence_number
First sequence number for the message set.
Definition: lbm.h:2717
lbm_transport_source_info_t_stct::mc_group
lbm_uint32_t mc_group
Multicast group. Applicable only to LBT-RM. Stored in network order.
Definition: lbm.h:4127
lbm_cancel_timer_ex
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.
lbm_ume_rcv_regid_ex_func_t_stct
Structure that holds the application function to configure the callback for registration ID setting...
Definition: lbm.h:3429
lbm_wildcard_rcv_attr_set_from_xml
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...
lbm_iovec_t_stct::iov_base
char * iov_base
Pointer to a segment of application data.
Definition: lbm.h:1782
lbm_ume_rcv_regid_ex_func_info_t
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.
lbm_event_queue_cancel_cb_info_t_stct
Structure passed to cancel/delete functions so that a cancel callback may be called.
Definition: lbm.h:6286
lbm_ssrc_send_ex_info_t
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.
lbm_msg_ume_registration_ex_t_stct
Structure that holds Store registration information for the UM persistent receiver after a successful...
Definition: lbm.h:1961
lbm_rcv_transport_stats_lbtrm_t_stct::bytes_rcved
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:4720
lbm_rcv_topic_stats_t_stct::timestamp_usec
lbm_uint64_t timestamp_usec
Timestamp microseconds of when a transport was joined by the receiver. THIS FIELD IS UNSUPPORTED...
Definition: lbm.h:5836
lbm_create_random_id
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.
lbm_wildcard_rcv_unsubscribe_channel
LBMExpDLL int lbm_wildcard_rcv_unsubscribe_channel(lbm_wildcard_rcv_t *wrcv, lbm_uint32_t channel)
Discontinue an existing channel subscription.
lbm_rcv_transport_stats_lbtrm_t_stct::unrecovered_tmo
lbm_ulong_t unrecovered_tmo
Number of LBT-RM datagrams unrecovered due to a retransmission not received within the NAK generation...
Definition: lbm.h:4852
lbm_umq_index_info_t_stct::index_len
size_t index_len
The length of the index in bytes.
Definition: lbm.h:2103
lbm_umq_msg_total_lifetime_info_t_stct
Structure that holds UMQ message total lifetime information.
Definition: lbm.h:2195
lbm_event_queue_stats_t_stct
Structure that holds statistics for an event queue.
Definition: lbm.h:5321
lbm_ume_ctx_rcv_ctx_notification_func_t
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...
lbm_event_queue_attr_delete
LBMExpDLL int lbm_event_queue_attr_delete(lbm_event_queue_attr_t *attr)
Delete an event queue attribute object.
lbm_cred_callback_fn
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:11343
lbm_src_topic_dump
LBMExpDLL int lbm_src_topic_dump(lbm_src_t *src, int *size, lbm_config_option_t *opts)
Retrieves all source configuration options.
lbm_umq_queue_application_set_t_stct
Structure for defining a UMQ application set.
Definition: lbm.h:2231
lbm_context_getopt
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_context_stats_t_stct::rcv_cb_svc_time_max
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:5804
lbm_set_uim_loss_rate
LBMExpDLL void lbm_set_uim_loss_rate(int rate)
Dynamically set the UIM loss rate.
lbm_rcv_umq_queue_msg_retrieve
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).
lbm_wildcard_rcv_delete_function_cb
int(* lbm_wildcard_rcv_delete_function_cb)(const char *topic_str, void *clientd)
Application callback for wildcard receiver deletion.
Definition: lbm.h:4245
lbm_src_transport_stats_lbtipc_t_stct
Structure that holds datagram statistics for source LBT-IPC transports.
Definition: lbm.h:4525
lbm_src_channel_delete
LBMExpDLL int lbm_src_channel_delete(lbm_src_channel_info_t *chn)
Release the resources associated with a source channel.
lbm_win32_static_thread_attach
LBMExpDLL int lbm_win32_static_thread_attach(void)
Instructs UM that a new thread will be calling UM functions.
lbm_src_transport_stats_lbtru_t_stct::naks_rcved
lbm_ulong_t naks_rcved
Number of individual NAKs received by the source transport. (Cumulative)
Definition: lbm.h:4453
lbm_rcv_transport_stats_lbtru_t_stct::bytes_rcved
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:4937
lbm_msg_ume_can_send_explicit_ack
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.
lbm_authstorage_deltpnam
LBMExpDLL int lbm_authstorage_deltpnam(const char *username)
Delete the user credential from the password file.
lbm_event_queue_stats_t_stct::callback_events_tot
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:5598
lbm_src_send_lbmmon_stats
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.
lbm_context_retrieve_src_transport_stats_ex
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_transport_broker_entry_t_stct::broker_ip
lbm_uint_t broker_ip
The IP address of the broker (network order)
Definition: lbm.h:3544
lbm_umq_msgid_t
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...
lbm_process_events_info_t
struct lbm_process_events_info_t_stct lbm_process_events_info_t
Structure that holds information for the extended Process Events calls.
lbm_str_hash_func_ex_t_stct
Structure that holds the extended hash function callback information.
Definition: lbm.h:3359
lbm_umq_queue_topic_status_t::topic
lbm_umq_queue_topic_t * topic
UMQ topic info.
Definition: lbm.h:2264
lbm_context_stats_t_stct::fragments_lost
lbm_ulong_t fragments_lost
Number of data message fragments detected as lost in the context. (Cumulative)
Definition: lbm.h:5756
lbm_apphdr_chain_iter_t
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:10759
lbm_ume_ack_send_explicit_ack
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().
lbm_timespec_t_stct
Structure that holds seconds and nanoseconds since midnight, Jan 1, 1970 UTC.
Definition: lbm.h:1815
lbm_ushort_t
unsigned short int lbm_ushort_t
For portability.
Definition: lbm.h:1736
lbm_apphdr_chain_elem_t_stct::data
void * data
Pointer to the app header data.
Definition: lbm.h:10773
lbm_ume_src_force_reclaim_func_t
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...
lbm_authstorage_close_storage_xml
LBMExpDLL void lbm_authstorage_close_storage_xml(void)
Release the storage object.
lbm_msg_umq_index_assigned_ex_t_stct::index_info
lbm_umq_index_info_t index_info
The index info.
Definition: lbm.h:2143
lbm_context_src_event_func_t_stct
Structure that holds the application callback to configure context-level source events.
Definition: lbm.h:3780
lbm_authstorage_open_storage_xml
LBMExpDLL int lbm_authstorage_open_storage_xml(char *filename)
Create the storage object from XML password file.
lbm_rcv_umq_index_release
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...
lbm_context_event_func_t_stct
Structure that holds the application function to configure the callback for context-level events...
Definition: lbm.h:3812
lbm_hf_sequence_number_t_stct::u64
lbm_uint64_t u64
64 bit hot failover sequence number
Definition: lbm.h:2207
lbm_src_transport_stats_lbtrm_t_stct::naks_ignored
lbm_ulong_t naks_ignored
Number of NAKs this source transport ignored and sent an NCF with reason code "ignored". (Cumulative)
Definition: lbm.h:4355
lbm_event_queue_cancel_cb_info_t_stct::cbproc
lbm_event_queue_cancel_cb_proc cbproc
The cancel callback function.
Definition: lbm.h:6290
lbm_src_transport_stats_lbtru_t_stct::rxs_sent
lbm_ulong_t rxs_sent
Number of LBT-RU datagrams retransmitted by this source transport (incremented under the same circums...
Definition: lbm.h:4489
lbm_rcv_transport_stats_lbtsmx_t_stct::msgs_rcved
lbm_ulong_t msgs_rcved
Number of LBT-SMX datagrams received. (Cumulative)
Definition: lbm.h:5172
lbm_rcv_batch_notify_func_t_stct
UM internal use only. DO NOT USE.
Definition: lbm.h:3385
lbm_resolver_event_func_t_stct::event_cb_func
lbm_resolver_event_cb_func event_cb_func
Function pointer for application callback.
Definition: lbm.h:2455
lbm_umq_msg_selector_t
struct lbm_umq_msg_selector_t_stct lbm_umq_msg_selector_t
Opaque handle to a message selector.
Definition: lbm.h:11239
lbm_event_queue_stats_t_stct::wrcv_msgs_svc_min
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:5413
lbm_rcv_transport_stats_lbtsmx_t_stct::reserved1
lbm_ulong_t reserved1
Reserved field. Do not use.
Definition: lbm.h:5192
lbm_src_transport_stats_lbtrm_t_stct::rctlr_rx_msgs
lbm_ulong_t rctlr_rx_msgs
Number of LBT-RM transport retransmission datagrams currently queued by the retransmit rate limiter...
Definition: lbm.h:4400
lbm_str_hash_function_cb_ex
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:3183
lbm_msg_retrieve_delivery_latency
LBMExpDLL int lbm_msg_retrieve_delivery_latency(lbm_msg_t *msg, lbm_int64_t *latency_nsecs)
UM internal use only. DO NOT USE.
lbm_event_queue_attr_str_getopt
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_func_t_stct::unbind
lbm_datagram_acceleration_unbind_function_t unbind
Function pointer for datagram acceleration unbind.
Definition: lbm.h:3140
lbm_msg_properties_delete
LBMExpDLL int lbm_msg_properties_delete(lbm_msg_properties_t *properties)
Deletes a properties object. See Message Properties.
lbm_cancel_timer
LBMExpDLL int lbm_cancel_timer(lbm_context_t *ctx, int id, void **clientdp)
Cancel a previously scheduled timer identified by id.
lbm_xsp_zero_transports_func_t_stct
Structure that holds the XSP zero transports function.
Definition: lbm.h:11810
lbm_int32_t
int32_t lbm_int32_t
For portability.
Definition: lbm.h:1746
lbm_src_event_ume_registration_t_stct::registration_id
lbm_uint_t registration_id
The registration ID for the source.
Definition: lbm.h:1862
lbm_context_event_func_t_stct::func
lbm_context_event_cb_proc func
Function pointer for application callback.
Definition: lbm.h:3814
lbm_rcv_transport_stats_tcp_t_stct
Structure that holds datagram statistics for receiver TCP transports.
Definition: lbm.h:4665
lbm_rcv_retrieve_transport_stats
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...
lbm_wildcard_rcv_delete_func_t_stct::clientd
void * clientd
Client data to be passed to the callback.
Definition: lbm.h:4258
lbm_wildcard_rcv_attr_create_from_xml
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...
lbm_set_umm_info
LBMExpDLL int lbm_set_umm_info(lbm_umm_info_t *info)
Connect to and retrieve configuration from a UMM daemon.
lbm_wildcard_rcv_getopt
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_src_transport_stats_lbtrm_t_stct::rctlr_data_msgs
lbm_ulong_t rctlr_data_msgs
Number of LBT-RM datagrams currently queued by the data rate limiter. (Snapshot)
Definition: lbm.h:4391
lbm_msg_umq_deregistration_complete_ex_t_stct::queue_id
lbm_uint_t queue_id
The Queue ID of the queue de-registering from.
Definition: lbm.h:2893
lbm_src_transport_stats_lbtru_t_stct::num_clients
lbm_ulong_t num_clients
Number of receiver transports that are currently connected to this source transport. (Snapshot)
Definition: lbm.h:4491
ume_liveness_receiving_context_t_stct::regid
lbm_uint64_t regid
Registration ID.
Definition: lbm.h:3608
lbm_rcv_transport_stats_lbtrm_t_stct::lbm_msgs_rcved
lbm_ulong_t lbm_msgs_rcved
Number of messages or message fragments received over an LBT-RM transport. (Cumulative) ...
Definition: lbm.h:4863
lbm_debug_mask
LBMExpDLL void lbm_debug_mask(lbm_uint64_t mask)
Set the debug mask for LBM debug log entries.
lbm_unicast_immediate_request
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.
lbm_context_attr_option_size
LBMExpDLL int lbm_context_attr_option_size(void)
Retrieves the number of options that are of type "context".
lbm_ume_rcv_regid_func_t_stct
Structure that holds the application function to configure the callback for registration ID setting...
Definition: lbm.h:3415
lbm_ctx_umq_queue_topic_list_info_t::topics
lbm_umq_queue_topic_status_t * topics
An array of UMQ topic status objects.
Definition: lbm.h:2274
lbm_rcv_create
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.
lbm_hfx_attr_option_size
LBMExpDLL int lbm_hfx_attr_option_size(void)
Retrieves the number of options that are of type "hfx".
lbm_src_event_ume_registration_t_stct
DEPRECATED, do not use.
Definition: lbm.h:1860
lbm_rcv_unsubscribe_channel_ex
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...
lbm_msg_t_stct::plen
size_t plen
UM internal only. DO NOT ACCESS DIRECTLY!
Definition: lbm.h:4045
lbm_ume_rcv_recovery_info_ex_func_info_t_stct::low_sequence_number
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:2739
lbm_rcv_ume_deregister
LBMExpDLL int lbm_rcv_ume_deregister(lbm_rcv_t *rcv)
Deregister a receiver from all known UMP Stores.
lbm_rcv_transport_stats_broker_t
struct lbm_rcv_transport_stats_broker_t_stct lbm_rcv_transport_stats_broker_t
Structure that holds message statistics for receiver BROKER transports.
ume_liveness_receiving_context_t
struct ume_liveness_receiving_context_t_stct ume_liveness_receiving_context_t
Structure that holds the information about a receiving context.
lbm_context_retrieve_im_src_transport_stats
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.
lbm_msg_properties_iter_create
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 ...
lbm_msg_channel_info_t_stct::flags
int flags
Bitmap indicating extra channel information. Zero or more flag bits ORed together: LBM_MSG_FLAG_NUMBE...
Definition: lbm.h:3946
lbm_rcv_transport_stats_lbtru_t_stct::nak_tx_min
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:5025
lbm_uint64_t
uint64_t lbm_uint64_t
For portability.
Definition: lbm.h:1748
lbm_xsp_create
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_event_queue_stats_t_stct::io_events_tot
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:5432
lbm_resolver_event_advertisement_t
struct lbm_resolver_event_advertisement_t_stct lbm_resolver_event_advertisement_t
Advertisement event structure (for UM internal use only).
lbm_wildcard_rcv_compare_func_t_stct::clientd
void * clientd
Client data to be passed to the callback.
Definition: lbm.h:3405
lbm_context_retrieve_src_transport_stats
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.
lbm_context_from_wildcard_rcv
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_msg_t_stct::hf_sequence_number
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
lbm_src_transport_stats_tcp_t_stct
Structure that holds datagram statistics for source TCP transports.
Definition: lbm.h:4283
lbm_src_event_wakeup_t_stct::flags
int flags
Bitmap indicating which context-level sources are now unblocked. Zero or more flag bits ORed together...
Definition: lbm.h:1834
lbm_ume_rcv_recovery_info_ex_func_info_t_stct::flags
int flags
Bitmap indicating which optional fields are used. Zero or more flag bits ORed together: LBM_UME_RCV_R...
Definition: lbm.h:2736
lbm_datagram_acceleration_open_function_t
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:2997
lbm_rcv_topic_dump
LBMExpDLL int lbm_rcv_topic_dump(lbm_rcv_t *rcv, int *size, lbm_config_option_t *opts)
Retrieves all receiver configuration options.
lbm_rcv_transport_stats_lbtrm_t_stct::naks_sent
lbm_ulong_t naks_sent
Number of individual NAKs sent by the receiver transport. (Cumulative)
Definition: lbm.h:4741
lbm_ume_src_force_reclaim_func_t_stct::func
lbm_ume_src_force_reclaim_function_cb func
Function pointer for application callback function.
Definition: lbm.h:3445
lbm_rcv_umq_queue_msg_list_info_t::msgs
lbm_umq_queue_msg_status_t * msgs
An array of queued messages.
Definition: lbm.h:2323
lbm_context_stats_t_stct::tr_bytes_rcved
lbm_ulong_t tr_bytes_rcved
Number of topic resolution datagram bytes received. This count is triggered under the same circumstan...
Definition: lbm.h:5666
lbm_rcv_topic_attr_str_setopt
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...
lbm_apphdr_chain_iter_create_from_msg
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...
lbm_set_lbtrm_loss_rate
LBMExpDLL void lbm_set_lbtrm_loss_rate(int rate)
Dynamically set the LBT-RM loss rate.
lbm_umq_msg_total_lifetime_info_t_stct::umq_msg_total_lifetime
lbm_ulong_t umq_msg_total_lifetime
The message&#39;s total lifetime, in milliseconds.
Definition: lbm.h:2199
lbm_src_channel_info_t
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:2083
lbm_rcv_transport_stats_lbtrdma_t_stct::bytes_rcved
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:5207
lbm_src_notify_func_t_stct
Structure that holds the context application function to configure the callback when new sources are ...
Definition: lbm.h:3373
lbm_ume_rcv_regid_ex_func_info_t_stct::flags
int flags
Bitmap set of flags reserved for future use. Currently set to 0.
Definition: lbm.h:2687
lbm_msg_ume_deregistration_ex_t_stct::rcv_registration_id
lbm_uint_t rcv_registration_id
The registration ID for the receiver.
Definition: lbm.h:2016
lbm_src_get_inflight_ex
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_msg_t_stct::osqn
lbm_uint_t osqn
UM internal only. DO NOT ACCESS DIRECTLY!
Definition: lbm.h:4035
lbm_event_queue_reset_stats
LBMExpDLL int lbm_event_queue_reset_stats(lbm_event_queue_t *evq)
Reset the stats for an event queue.
lbm_transport_mapping_func_t
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...
lbm_ssrc_get_available_data_space
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().
lbm_apphdr_chain_append_elem
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.
ume_liveness_receiving_context_t_stct::flag
int flag
Flag: Bitmap of flag bits ORed together. Bits are: LBM_UME_LIVENESS_RECEIVER_UNRESPONSIVE_FLAG_* (i...
Definition: lbm.h:3613
lbm_rcv_delete_ex
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_umq_ulb_receiver_type_entry_t_stct::id
lbm_ulong_t id
Receiver Type ID.
Definition: lbm.h:3687
lbm_context_event_cb_proc
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:3803
lbm_context_attr_str_setopt
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...
lbm_context_event_func_t_stct::clientd
void * clientd
Client data to be passed to the callback.
Definition: lbm.h:3818
lbm_src_event_flight_size_notification_t_stct
Structure that holds flight size notification event data.
Definition: lbm.h:1849
lbm_context_src_event_func_t_stct::clientd
void * clientd
Client data to be passed to the callback.
Definition: lbm.h:3786
lbm_str_hash_func_t
struct lbm_str_hash_func_t_stct lbm_str_hash_func_t
Structure that holds the hash function callback information.
lbm_apphdr_chain_iter_current
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_msg_umq_registration_complete_ex_t_stct::assignment_id
lbm_uint_t assignment_id
The generated Assignment ID for the receiver with the queue.
Definition: lbm.h:2843
lbm_context_stats_t_stct::uim_dup_msgs_rcved
lbm_ulong_t uim_dup_msgs_rcved
Number of duplicate unicast immediate messages (UIMs) received and dropped. (Cumulative) ...
Definition: lbm.h:5743
lbm_event_queue_stats_t_stct::data_msgs_svc_max
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:5346
lbm_rcv_src_notification_func_ex_t_stct::delete_func_ex
lbm_rcv_src_notification_delete_function_ex_cb delete_func_ex
Function pointer for application callback when delivery controller is deleted.
Definition: lbm.h:5934
lbm_event_queue_str_getopt
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_src_transport_stats_lbtru_t_stct::msgs_sent
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:4437
lbm_msg_gateway_info_t_stct
DEPRECATED, do not use.
Definition: lbm.h:3926
lbm_context_delete_ex
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...
lbm_wildcard_rcv_create_function_cb
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:4214
lbm_msg_t_stct::properties
lbm_msg_properties_t * properties
Message properties structure for this message. See Message Properties.
Definition: lbm.h:4049
lbm_context_rcv_immediate_msgs_func_t_stct
Structure that holds the application function to configure a callback for receiving certain immediate...
Definition: lbm.h:4099
lbm_ssrc_get_inflight_ex
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...
lbm_rcv_getopt
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_ume_store_entry_t_stct::domain_id
lbm_uint32_t domain_id
The domain ID of the Store.
Definition: lbm.h:3493
lbm_ssrc_topic_dump
LBMExpDLL int lbm_ssrc_topic_dump(lbm_ssrc_t *ssrc, int *size, lbm_config_option_t *opts)
Retrieves all smart source configuration options.
lbm_src_event_ume_deregistration_ex_t_stct::store_index
lbm_ushort_t store_index
the Store index of the Store involved.
Definition: lbm.h:1919
lbm_async_operation_info_t::ctx_umq_queue_topic_list
lbm_ctx_umq_queue_topic_list_info_t * ctx_umq_queue_topic_list
Results for topic list.
Definition: lbm.h:2387
lbm_msg_t_stct::flags
int flags
Bitmap indicating extra information about the message. Zero or more flag bits ORed together LBM_MSG_F...
Definition: lbm.h:3982
lbm_transport_source_info_t_stct::session_id
lbm_uint32_t session_id
Session ID. Applicable to all transport except BROKER. Stored in host order.
Definition: lbm.h:4131
lbm_context_reset_im_rcv_transport_stats
LBMExpDLL int lbm_context_reset_im_rcv_transport_stats(lbm_context_t *ctx)
Reset the IM receiver stats for a context.
lbm_src_event_ume_ack_info_t
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_src_transport_stats_lbtsmx_t_stct::num_clients
lbm_ulong_t num_clients
Number of receiver transports that are currently connected to this source transport. (Snapshot)
Definition: lbm.h:4560
lbm_msg_ume_registration_ex_t_stct::src_registration_id
lbm_uint_t src_registration_id
The registration ID for the source.
Definition: lbm.h:1967
lbm_xsp_attr_delete
LBMExpDLL int lbm_xsp_attr_delete(lbm_xsp_attr_t *attr)
Delete a UM XSP attribute object.
lbm_rcv_src_notification_func_ex_t_stct
Structure (extended form) that holds the receiver application functions when configuring callbacks wh...
Definition: lbm.h:5930
lbm_hfx_attr_create
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...
lbm_hf_rcv_topic_dump
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 object.
lbm_apphdr_chain_t
struct lbm_apphdr_chain_t_stct lbm_apphdr_chain_t
Opaque structure used for sending messages with app header chains.
Definition: lbm.h:2187
lbm_rcv_umq_queue_msg_list_info_t
Struct containing an array of UMQ messages listed via lbm_rcv_umq_queue_msg_list. ...
Definition: lbm.h:2321
lbm_src_transport_stats_lbtru_t_stct::bytes_sent
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:4440
lbm_ume_rcv_recovery_info_ex_func_info_t_stct::source_clientd
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:2746
lbm_rcv_topic_attr_getopt
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.
lbm_src_sendv_ex
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.
lbm_set_lbtru_src_loss_rate
LBMExpDLL void lbm_set_lbtru_src_loss_rate(int rate)
Dynamically set the LBT-RU source loss rate.
lbm_rcv_src_notification_func_ex_t_stct::create_func_ex
lbm_rcv_src_notification_create_function_ex_cb create_func_ex
Function pointer for application callback when delivery controller is created.
Definition: lbm.h:5932
lbm_hfx_str_setopt
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.
lbm_src_transport_stats_t_stct::type
int type
Type of transport (LBM_TRANSPORT_STAT_TCP, LBM_TRANSPORT_STAT_LBTRM, etc.).
Definition: lbm.h:4623
lbm_msg_properties_iter_t
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.
lbm_umq_msg_total_lifetime_info_t
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_msg_ume_registration_ex_t_stct::store_index
lbm_ushort_t store_index
the Store index of the Store involved
Definition: lbm.h:1973
lbm_context_attr_dup
LBMExpDLL int lbm_context_attr_dup(lbm_context_attr_t **attr, const lbm_context_attr_t *original)
Duplicate a UM context attribute object.
lbm_src_event_umq_stability_ack_info_ex_t_stct
Structure that holds UMQ ACK information for a given message in an extended form. ...
Definition: lbm.h:2856
lbm_is_ume_capable
LBMExpDLL int lbm_is_ume_capable(void)
Determine if the LBM library is capable of UME operations.
lbm_rcv_src_notification_func_t_stct::delete_func
lbm_rcv_src_notification_delete_function_cb delete_func
Function pointer for application callback when delivery controller is deleted.
Definition: lbm.h:3594
lbm_rcv_transport_stats_lbtru_t_stct::nak_stm_min
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:5004
lbm_datagram_acceleration_func_t_stct::sendto
lbm_datagram_acceleration_sendto_function_t sendto
Function pointer for datagram acceleration send to.
Definition: lbm.h:3154
lbm_umq_ulb_receiver_type_attr_t
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...
lbm_rcv_retrieve_all_transport_stats
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.
lbm_src_event_ume_deregistration_ex_t_stct::flags
int flags
Bitmap set of flags reserved for future use. Currently set to 0.
Definition: lbm.h:1913
lbm_msg_fragment_info_t_stct::total_message_length
lbm_uint_t total_message_length
The total length (in bytes) of the message this fragment is for.
Definition: lbm.h:3920
lbm_src_cost_func_t_stct::clientd
void * clientd
Client data to be passed to the callback.
Definition: lbm.h:4161
lbm_msg_umq_index_assignment_eligibility_start_complete_ex_t_stct::queue_id
lbm_uint_t queue_id
The Queue ID of the queue starting index assignment eligibility.
Definition: lbm.h:2179
lbm_new_transport_info_t_stct::src_info
lbm_transport_source_info_t src_info
The new transport&#39;s source information.
Definition: lbm.h:11942
lbm_authstorage_roletable_add_role_action
LBMExpDLL int lbm_authstorage_roletable_add_role_action(const char *rolename, const char *action)
Add a new authorized action for the specified role.
lbm_rcv_transport_stats_t
struct lbm_rcv_transport_stats_t_stct lbm_rcv_transport_stats_t
Structure that holds statistics for receiver transports.
lbm_datagram_acceleration_recv_info_t_stct::clientd
void * clientd
Sent to bind.
Definition: lbm.h:2970
lbm_rcv_transport_stats_broker_t_stct::msgs_rcved
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:5245
lbm_license_vds_valid
LBMExpDLL int lbm_license_vds_valid(void)
Determine is the VDS product is licensed.
lbm_msg_t_stct::umq_msgid
const void * umq_msgid
UM internal only. DO NOT ACCESS DIRECTLY!
Definition: lbm.h:4039
lbm_ssrc_send_ex_info_t_stct::mprop_int_vals
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:2668
lbm_src_event_timestamp_info_t_stct::hr_timestamp
lbm_timespec_t hr_timestamp
High Resolution Timestamp of the sent message.
Definition: lbm.h:1936
lbm_event_queue_stats_t_stct::timer_events_svc_max
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:5475
lbm_hf_sequence_number_t_stct::u32
lbm_uint32_t u32
32 bit hot failover sequence number
Definition: lbm.h:2205
lbm_msg_ume_registration_ex_t_stct::src_session_id
lbm_uint64_t src_session_id
The session ID for the source.
Definition: lbm.h:1977
lbm_hf_sequence_number_t_stct
Structure to hold a hot failover sequence number.
Definition: lbm.h:2203
lbm_event_queue_setopt
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.
lbm_umq_index_info_t_stct::flags
int flags
Bitmap indicating extra information about the index. Zero or more flag bits ORed together: LBM_UMQ_IN...
Definition: lbm.h:2097
lbm_src_transport_stats_lbtipc_t_stct::msgs_sent
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:4532
lbm_handle_t
int lbm_handle_t
Portable type across Unix and Windows for network socket (fd).
Definition: lbm.h:1764
lbm_ssrc_get_inflight
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_rcv_umq_queue_msg_list_info_t::num_msgs
lbm_uint64_t num_msgs
The length of the queued messages array.
Definition: lbm.h:2325
lbm_hfx_rcv_topic_dump
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.
lbm_umq_ulb_receiver_type_entry_t_stct
Structure that holds ULB queue information to configure an application set.
Definition: lbm.h:3685
lbm_wildcard_rcv_attr_t
struct lbm_wildcard_rcv_attr_t_stct lbm_wildcard_rcv_attr_t
Opaque structure that holds configuration options for wildcard receivers.
Definition: lbm.h:4265
lbm_event_queue_cancel_cb_info_t_stct::clientd
void * clientd
Client Data passed in the cancel callback when called.
Definition: lbm.h:6292
lbm_rcv_transport_stats_lbtrm_t_stct::ncfs_ignored
lbm_ulong_t ncfs_ignored
Number of NCFs received from a source transport with reason code "ignored". (Cumulative) ...
Definition: lbm.h:4755
lbm_xsp_zero_transports_func_t_stct::clientd
void * clientd
Client data to be passed to the callback.
Definition: lbm.h:11814
lbm_msg_retain
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...
lbm_ume_rcv_recovery_info_ex_func_t_stct::clientd
void * clientd
Client data to be passed to the callback.
Definition: lbm.h:3474
lbm_ume_src_force_reclaim_function_cb
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:3272
lbm_src_event_sequence_number_info_t
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_src_transport_stats_lbtipc_t_stct::num_clients
lbm_ulong_t num_clients
Number of receiver transports that are currently connected to this source transport. (Snapshot)
Definition: lbm.h:4527
lbm_datagram_acceleration_recv_info_t
struct lbm_datagram_acceleration_recv_info_t_stct lbm_datagram_acceleration_recv_info_t
Information returned from lbm_datagram_acceleration_recvfrom_function_t function. ...
lbm_src_event_umq_stability_ack_info_ex_t
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. ...
lbm_new_transport_info_t_stct
Structure that holds information about a transport session that we&#39;re about to join.
Definition: lbm.h:11938
lbm_xsp_delete
LBMExpDLL int lbm_xsp_delete(lbm_xsp_t *xsp)
Delete a UM XSP object.
lbm_rcv_batch_notify_func_start_cb
void *(* lbm_rcv_batch_notify_func_start_cb)(void *clientd)
UM internal use only. DO NOT USE.
Definition: lbm.h:3381
lbm_register_fd
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_ume_store_entry_t_stct::tcp_port
lbm_ushort_t tcp_port
The TCP port of the Store (network order)
Definition: lbm.h:3487
lbm_context_attr_t
struct lbm_context_attr_t_stct lbm_context_attr_t
Structure used to hold configuration options for contexts.
Definition: lbm.h:4170
lbm_event_queue_stats_t_stct::topicless_im_msgs_svc_min
lbm_ulong_t topicless_im_msgs_svc_min
Minimum service time for topic-less Multicast Immediate Messaging (MIM) messages (in microseconds)...
Definition: lbm.h:5386
lbm_rcv_src_notification_func_ex_t
struct lbm_rcv_src_notification_func_ex_t_stct lbm_rcv_src_notification_func_ex_t
Structure (extended form) that holds the receiver application functions when configuring callbacks wh...
lbm_event_queue_stats_t_stct::io_events_svc_mean
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:5445
lbm_xsp_unblock
LBMExpDLL int lbm_xsp_unblock(lbm_xsp_t *xsp)
Unblock a sequential mode XSP.
lbm_rcv_transport_stats_lbtipc_t_stct::lbm_reqs_rcved
lbm_ulong_t lbm_reqs_rcved
Number of UM request messages received (message type LBM_MSG_REQUEST). (Cumulative) ...
Definition: lbm.h:5150
lbm_async_operation_func_t::flags
int flags
Bitmap indicating extra information about callback behavior.
Definition: lbm.h:2591
lbm_str_hash_func_t_stct::hashfunc
lbm_str_hash_function_cb hashfunc
Function pointer for hash function.
Definition: lbm.h:3350
lbm_rcv_reset_transport_stats
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...
lbm_authstorage_print_roletable
LBMExpDLL int lbm_authstorage_print_roletable(void)
Print the role table saved in the internal data object.
lbm_umq_msgid_t_stct::regid
lbm_umq_regid_t regid
The Registration ID of the original source context of the message.
Definition: lbm.h:2222
lbm_msg_ume_registration_t_stct
DEPRECATED, NOT USED.
Definition: lbm.h:1945
lbm_int64_t
int64_t lbm_int64_t
For portability.
Definition: lbm.h:1752
lbm_src_event_umq_ulb_message_info_ex_t_stct
Structure that holds UMQ ULB message information in an extended form.
Definition: lbm.h:2931
lbm_context_from_src
LBMExpDLL lbm_context_t * lbm_context_from_src(lbm_src_t *src)
Retrieve the UM context object associated with a UM source object.
lbm_timeval_t
struct lbm_timeval_t_stct lbm_timeval_t
Structure that holds seconds and microseconds since midnight, Jan 1, 1970 UTC.
lbm_rcv_transport_stats_lbtrm_t_stct::dgrams_dropped_type
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:4877
lbm_msg_t_stct
Information structure for receive events delivered to receiver callback lbm_rcv_cb_proc.
Definition: lbm.h:3967
lbm_authstorage_load_roletable
LBMExpDLL int lbm_authstorage_load_roletable(void)
Load the role table from the password file.
lbm_context_src_event_func_t
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_rcv_transport_stats_lbtru_t_stct::nak_stm_max
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:5019
lbm_src_event_sequence_number_info_t_stct::flags
int flags
Bitmap set of flags reserved for future use. Currently set to 0.
Definition: lbm.h:2715
lbm_rcv_transport_stats_t_stct::lbtru
lbm_rcv_transport_stats_lbtru_t lbtru
The statistics for receiver LBT-RU transports.
Definition: lbm.h:5277
lbm_event_dispatch_unblock
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...
lbm_wildcard_rcv_attr_dump
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 from an attribute object.
lbm_ume_rcv_recovery_info_ex_func_info_t_stct
Structure that holds information for UMP receiver recovery sequence number info application callbacks...
Definition: lbm.h:2733
lbm_wildcard_rcv_delete
LBMExpDLL int lbm_wildcard_rcv_delete(lbm_wildcard_rcv_t *wrcv)
Delete a UM wildcard receiver object.
lbm_get_jms_msg_id
LBMExpDLL char * lbm_get_jms_msg_id(lbm_uint64_t source_id, lbm_uint64_t seqno_id, char *topic)
Create JMS message ID.
lbm_config_xml_string
LBMExpDLL int lbm_config_xml_string(const char *xml_data, const char *application_name)
Load UM XML configuration data.
lbm_ipv4_address_mask_t_stct::bits
int bits
Number of leading 1&#39;s in the netmask. E.g. the value 28 represents a netmask of 0xFFFFFFF0.
Definition: lbm.h:1797
lbm_rcv_transport_stats_lbtrm_t_stct::nak_tx_max
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:4825
lbm_process_events_info_t_stct::flags
int flags
Bitmap indicating which extended features to enable. Zero or more flag bits ORed together: LBM_PROC_E...
Definition: lbm.h:2541
lbm_event_queue_t
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:2293
lbm_rcv_transport_stats_lbtru_t_stct::dgrams_dropped_size
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:5088
lbm_rcv_src_notification_create_function_cb
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:3323
lbm_src_topic_attr_create_default
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.
lbm_debugfile_maxsize
LBMExpDLL void lbm_debugfile_maxsize(lbm_uint64_t size)
This function for UM internal use only.
lbm_rcv_transport_stats_t_stct::lbtipc
lbm_rcv_transport_stats_lbtipc_t lbtipc
The statistics for receiver LBT-IPC transports.
Definition: lbm.h:5279
lbm_src_event_umq_ulb_message_info_ex_t_stct::flags
int flags
Bit map of flag bits ORed together.
Definition: lbm.h:2936
lbm_src_event_umq_ulb_receiver_info_ex_t_stct::assignment_id
lbm_uint_t assignment_id
The Assignment ID of the receiver.
Definition: lbm.h:2914
lbm_msg_umq_index_released_ex_t_stct::index_info
lbm_umq_index_info_t index_info
The index info.
Definition: lbm.h:2163
lbm_wildcard_rcv_stats_t
struct lbm_wildcard_rcv_stats_t_stct lbm_wildcard_rcv_stats_t
Structure that holds statistics for a wildcard receiver.
lbm_msg_t_stct::data
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_func_t_stct::mcast_join
lbm_datagram_acceleration_mcast_join_function_t mcast_join
Function pointer for datagram acceleration multicast join.
Definition: lbm.h:3142
lbm_context_stats_t
struct lbm_context_stats_t_stct lbm_context_stats_t
Structure that holds statistics for a context.
lbm_rcv_transport_stats_lbtrm_t_stct::out_of_order
lbm_ulong_t out_of_order
Number of out-of-order LBT-RM transport datagrams received. (Cumulative)
Definition: lbm.h:4895
lbm_umq_queue_topic_status_t::flags
int flags
Bitmap set of flags reserved for future use. Currently set to 0.
Definition: lbm.h:2268
lbm_umq_ulb_receiver_type_attr_t_stct::d
int d
The integer value of the attribute.
Definition: lbm.h:3736
lbm_msg_retrieve_msgid
LBMExpDLL int lbm_msg_retrieve_msgid(lbm_msg_t *msg, lbm_umq_msgid_t *id)
Retrieve UMQ Message ID information from a UM message.
lbm_umq_msg_selector_delete
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.
lbm_wildcard_rcv_attr_delete
LBMExpDLL int lbm_wildcard_rcv_attr_delete(lbm_wildcard_rcv_attr_t *attr)
Delete a wildcard receiver attribute object.
lbm_rcv_transport_stats_lbtipc_t
struct lbm_rcv_transport_stats_lbtipc_t_stct lbm_rcv_transport_stats_lbtipc_t
Structure that holds datagram statistics for receiver LBT-IPC transports.
lbm_wrcv_ume_deregister
LBMExpDLL int lbm_wrcv_ume_deregister(lbm_wildcard_rcv_t *wrcv)
Deregister a wildcard receiver from all known UMP Stores.
lbm_daemon_event_cb_proc
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:6259
lbm_wildcard_rcv_umq_index_release
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...
lbm_msg_ume_registration_complete_ex_t_stct
Structure that holds information for receivers after registration is complete to all involved Stores...
Definition: lbm.h:1990
lbm_license_file
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...
lbm_src_topic_attr_option_size
LBMExpDLL int lbm_src_topic_attr_option_size(void)
Retrieves the number of options that are of type "source" or "smart source".
lbm_src_transport_stats_lbtrdma_t
struct lbm_src_transport_stats_lbtrdma_t_stct lbm_src_transport_stats_lbtrdma_t
DEPRECATED, do not use. lbt-rdma is no longer supported.
lbm_src_event_umq_message_id_info_t_stct
Structure that holds Message ID information for a message sent by a sending UMQ application.
Definition: lbm.h:2760
lbm_context_stats_t_stct::lbtru_unknown_msgs_rcved
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:5726
lbm_msg_ume_registration_complete_ex_t_stct::src_session_id
lbm_uint64_t src_session_id
The session ID for the source.
Definition: lbm.h:1997
lbm_flush_all
LBMExpDLL int lbm_flush_all(lbm_context_t *ctx)
FOR UM INTERNAL USE ONLY, not for use by user applications.
lbm_license_str
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_rcv_transport_stats_lbtrdma_t_stct::lbm_reqs_rcved
lbm_ulong_t lbm_reqs_rcved
Number of UM request messages received (message type LBM_MSG_REQUEST).
Definition: lbm.h:5223
lbm_resolver_service_entry_t_stct::source_port
lbm_ushort_t source_port
The source port to be used (network order).
Definition: lbm.h:3531
lbm_src_event_ume_ack_ex_info_t
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.
lbm_context_attr_str_getopt
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_create_ex_info_t
Provides information about a joined transport session when the lbm_rcv_src_notification_create_functi...
Definition: lbm.h:5861
lbm_src_cost_func_t_stct::cost_cb
lbm_src_cost_function_cb cost_cb
Function pointer for application callback.
Definition: lbm.h:4159
lbm_src_event_ume_deregistration_ex_t_stct::sequence_number
lbm_uint_t sequence_number
The sequence number of the last message stored for the source as reported by the Store.
Definition: lbm.h:1917
lbm_ssrc_t
struct lbm_ssrc_t_stct lbm_ssrc_t
Opaque structure that designates a UM Smart Source.
Definition: lbm.h:3881
lbm_rcv_src_notification_func_t_stct::clientd
void * clientd
Client data to be passed to the callback.
Definition: lbm.h:3596
lbm_context_event_umq_registration_ex_t_stct::queue_id
lbm_uint_t queue_id
The Queue ID of the queue.
Definition: lbm.h:2782
lbm_rcv_umq_index_start_assignment
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...
lbm_event_queue_attr_getopt
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_func_t_stct::deletefunc
lbm_wildcard_rcv_delete_function_cb deletefunc
Function pointer for application callback.
Definition: lbm.h:4256
lbm_msg_umq_index_assignment_eligibility_stop_complete_ex_t_stct::flags
int flags
Bitmap set of flag bits ORed together: LBM_MSG_UMQ_INDEX_ASSIGNMENT_ELIGIBILITY_STOP_COMPLETE_EX_FLAG...
Definition: lbm.h:2117
lbm_src_transport_stats_lbtru_t
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_src_transport_stats_lbtru_t_stct::nak_pckts_rcved
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:4444
lbm_event_queue_stats_t_stct::timer_events_tot
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:5457
lbm_deserialize_response
LBMExpDLL lbm_response_t * lbm_deserialize_response(lbm_context_t *ctx, lbm_serialized_response_t *serialized_response)
De-serialize a UM response object.
lbm_src_event_umq_ulb_message_info_ex_t_stct::registration_id
lbm_umq_regid_t registration_id
The registration ID of the receiver.
Definition: lbm.h:2940
lbm_src_send_ex_info_t_stct::channel_info
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:2617
lbm_src_event_ume_registration_complete_ex_t_stct::flags
int flags
Bitmap indicating extra information about the registration. Zero or more flag bits ORed together: LBM...
Definition: lbm.h:1900
lbm_event_queue_stats_t
struct lbm_event_queue_stats_t_stct lbm_event_queue_stats_t
Structure that holds statistics for an event queue.
lbm_src_topic_attr_delete
LBMExpDLL int lbm_src_topic_attr_delete(lbm_src_topic_attr_t *attr)
Delete a source topic attribute object.
lbm_hfx_attr_delete
LBMExpDLL int lbm_hfx_attr_delete(lbm_hfx_attr_t *attr)
Delete a UM HFX attribute object.
lbm_src_event_umq_ulb_message_info_ex_t
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_context_event_umq_registration_ex_t_stct::registration_id
lbm_umq_regid_t registration_id
Registration ID used for the registration.
Definition: lbm.h:2780
lbm_src_get_inflight
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.
lbm_msg_fragment_info_t_stct
Structure that holds fragment information for UM messages when appropriate.
Definition: lbm.h:3911
lbm_wildcard_rcv_attr_getopt
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.
lbm_xsp_attr_dump
LBMExpDLL int lbm_xsp_attr_dump(lbm_xsp_attr_t *attr, int *size, lbm_config_option_t *opts)
Retrieves all xsp configuration options from an attribute object.
lbm_src_create_ex_info_t::flags
int flags
Bitmap indicating characteristics of the transport session. Zero or more flag bits ORed together: LBM...
Definition: lbm.h:5870
lbm_ume_src_force_reclaim_func_t_stct::clientd
void * clientd
Client data to be passed to the callback.
Definition: lbm.h:3447
lbm_wildcard_rcv_subscribe_channel
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_queue_entry_t_stct::regid
lbm_umq_regid_t regid
Registration ID to use with the given UMQ queue.
Definition: lbm.h:3675
lbm_umq_index_info_t_stct::reserved
int reserved
UM internal only. DO NOT ACCESS DIRECTLY!
Definition: lbm.h:2099
lbm_event_queue_stats_t_stct::cancel_events
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:5510
lbm_context_create
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.
lbm_datagram_acceleration_mcast_leave_function_t
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:3048
lbm_rcv_transport_stats_lbtsmx_t_stct::lbm_msgs_no_topic_rcved
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:5190
lbm_ssrc_send_ex_info_t_stct::flags
int flags
Bitmap indicating which settings are active. Zero or more flag bits ORed together: LBM_SSRC_SEND_EX_F...
Definition: lbm.h:2656
lbm_ume_store_group_entry_t_stct::index
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:3578
lbm_datagram_acceleration_bind_function_t
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:3019
lbm_context_from_rcv
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_func_t_stct::func
lbm_ume_rcv_recovery_info_ex_function_cb func
Function pointer for application callback function.
Definition: lbm.h:3472
lbm_umm_info_t_stct::flags
lbm_uint32_t flags
Bitmap indicating extra information about the UMM connection. Zero or more flag bits ORed together: L...
Definition: lbm.h:11485
lbm_rcv_transport_stats_lbtru_t_stct::ncfs_rx_delay
lbm_ulong_t ncfs_rx_delay
Number of NCFs received with reason code "rx_delay". (Cumulative)
Definition: lbm.h:4987
lbm_umm_info_t_stct::cert_file
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:11487
lbm_log_debug
LBMExpDLL void lbm_log_debug(int on)
Enable logging of debug messages to the application logging callback set by lbm_log().
lbm_umq_regid_t
lbm_uint64_t lbm_umq_regid_t
Registration ID used for UMQ contexts for both sources and receivers.
Definition: lbm.h:2211
lbm_auth_set_credentials
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_rcv_transport_stats_lbtrdma_t_stct::lbm_msgs_no_topic_rcved
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:5221
lbm_rcv_transport_stats_lbtru_t_stct
Structure that holds datagram statistics for receiver LBT-RU transports.
Definition: lbm.h:4923
lbm_flight_size_inflight_t
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_rcv_transport_stats_lbtrm_t_stct::nak_stm_max
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:4805
lbm_event_queue_from_wildcard_rcv
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.
lbm_src_transport_stats_broker_t
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_func_ex_t_stct::hashfunc
lbm_str_hash_function_cb_ex hashfunc
Function pointer for application hash function.
Definition: lbm.h:3361
lbm_xsp_attr_create
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...
lbm_src_topic_attr_t
struct lbm_src_topic_attr_t_stct lbm_src_topic_attr_t
Opaque structure that holds configuration options for source topics.
Definition: lbm.h:4189
lbm_send_request_ex
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.
lbm_rcv_subscribe_channel
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.
lbm_msg_t_stct::broker_msg_state
const void * broker_msg_state
UM internal only. DO NOT ACCESS DIRECTLY!
Definition: lbm.h:4053
lbm_rcv_topic_attr_setopt
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...
lbm_schedule_timer
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.
lbm_wildcard_rcv_t
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:3839
lbm_src_event_ume_deregistration_ex_t
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_event_queue_stats_t_stct::cancel_events_svc_min
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:5520
lbm_transport_mapping_func_t_stct
Structure that holds the application function to configure the XSP transport mapping function callbac...
Definition: lbm.h:11973
lbm_event_queue_stats_t_stct::data_msgs_svc_mean
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:5341
lbm_src_transport_stats_tcp_t_stct::bytes_buffered
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:4289
lbm_context_rcv_immediate_msgs_func_t_stct::func
lbm_immediate_msg_cb_proc func
Function pointer for application callback.
Definition: lbm.h:4101
lbm_msg_properties_iter_first
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_flight_size_inflight_t_stct::bytes
lbm_uint64_t bytes
Current amount of inflight payload bytes.
Definition: lbm.h:2076
lbm_context_reset_src_transport_stats
LBMExpDLL int lbm_context_reset_src_transport_stats(lbm_context_t *ctx)
Reset the transport stats for all the sources in a given context.
lbm_rcv_topic_stats_t_stct
Structure that holds statistics for a receiver topic.
Definition: lbm.h:5822
lbm_wildcard_rcv_create_func_t_stct::clientd
void * clientd
Client data to be passed to the callback.
Definition: lbm.h:4227
lbm_rcv_transport_stats_lbtru_t_stct::nak_tx_max
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:5039
lbm_src_event_umq_stability_ack_info_ex_t_stct::last_sequence_number
lbm_uint_t last_sequence_number
Last sequence number for the message after being fragmented.
Definition: lbm.h:2866
lbm_xsp_attr_getopt
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.
lbm_ume_rcv_regid_ex_func_t
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_ume_rcv_regid_ex_func_info_t_stct::store_index
lbm_ushort_t store_index
the Store index of the Store involved
Definition: lbm.h:2691
lbm_timespec_t
struct lbm_timespec_t_stct lbm_timespec_t
Structure that holds seconds and nanoseconds since midnight, Jan 1, 1970 UTC.
lbm_src_event_ume_registration_ex_t_stct::flags
int flags
Bitmap indicating extra information about the registration. Zero or more flag bits ORed together: LBM...
Definition: lbm.h:1877
lbm_ume_rcv_regid_ex_func_info_t_stct::source_clientd
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:2694
lbm_ume_rcv_recovery_info_ex_func_info_t_stct::src_session_id
lbm_uint64_t src_session_id
The session ID for the source.
Definition: lbm.h:2750
lbm_rcv_transport_stats_lbtru_t_stct::naks_sent
lbm_ulong_t naks_sent
Number of individual NAKs sent by the receiver transport. (Cumulative)
Definition: lbm.h:4958
lbm_src_cost_function_cb
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:4152
lbm_hfx_t
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:3855
lbm_src_retrieve_transport_stats
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_src_event_ume_ack_ex_info_t_stct::rcv_registration_id
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:2059
lbm_apphdr_chain_iter_first
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_msg_fragment_info_t_stct::start_sequence_number
lbm_uint_t start_sequence_number
The sequence number of the fragment that starts the message.
Definition: lbm.h:3914
lbm_msg_ume_registration_complete_ex_t_stct::sequence_number
lbm_uint_t sequence_number
The sequence number that will be the first requested.
Definition: lbm.h:1995
lbm_msg_channel_info_t_stct
Structure that represents UMS Spectrum channel information.
Definition: lbm.h:3943
lbm_flight_size_set_inflight_ex_cb_proc
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:6321
lbm_msg_t_stct::fragment_info
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_event_queue_stats_t_stct::context_source_events_svc_max
lbm_ulong_t context_source_events_svc_max
Maximum service time for context source events (in microseconds). (Cumulative)
Definition: lbm.h:5561
lbm_src_send_ex_info_t_stct::umq_total_lifetime
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:2627
lbm_seterr
LBMExpDLL void lbm_seterr(int eno, const char *str)
UM internal use only. DO NOT USE.
lbm_ssrc_cb_proc
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:6168
lbm_context_attr_set_from_xml
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_msg_ume_registration_ex_t_stct::rcv_registration_id
lbm_uint_t rcv_registration_id
The registration ID for the receiver.
Definition: lbm.h:1969
lbm_src_send_ex_info_t_stct::umq_index
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:2623
lbm_hfx_attr_str_setopt
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...
lbm_src_create
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.
lbm_event_queue_create
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.
lbm_schedule_timer_recurring
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.
lbm_hfx_delete_ex
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.
lbm_resolver_service_entry_t
struct lbm_resolver_service_entry_t_stct lbm_resolver_service_entry_t
Structure that holds information to configure a Resolver Service.
lbm_src_transport_stats_lbtru_t_stct::rx_bytes_sent
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:4502
lbm_rcv_transport_stats_lbtru_t_stct::ncfs_unknown
lbm_ulong_t ncfs_unknown
Number of NCFs received with reason code "unknown". (Cumulative)
Definition: lbm.h:4995
lbm_src_event_umq_message_id_info_t_stct::flags
int flags
Bitmap set of flags reserved for future use. Currently set to 0.
Definition: lbm.h:2762
lbm_async_operation_handle_t
lbm_uint64_t lbm_async_operation_handle_t
Opaque handle to an asynchronous operation.
Definition: lbm.h:2363
lbm_rcv_transport_stats_lbtrm_t_stct::nak_stm_min
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:4790
lbm_rcv_batch_notify_func_t_stct::clientd
void * clientd
UM internal use only. DO NOT USE.
Definition: lbm.h:3391
lbm_context_rcv_immediate_msgs_func_t_stct::clientd
void * clientd
Client data to be passed to the callback.
Definition: lbm.h:4105
lbm_msg_t_stct::apphdr_data
const char * apphdr_data
UM internal only. DO NOT ACCESS DIRECTLY! To access information about application headers...
Definition: lbm.h:4026
lbm_topic_t
struct lbm_topic_t_stct lbm_topic_t
Opaque structure that designates a Topic. See Topic Object.
Definition: lbm.h:3866
lbm_msg_umq_index_assigned_ex_t_stct::queue_id
lbm_uint_t queue_id
The Queue ID of the queue beginning assignment of this index.
Definition: lbm.h:2139
lbm_wildcard_rcv_attr_setopt
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_umq_queue_application_set_t_stct::ids
lbm_uint32_t * ids
Receiver Type IDs configured for this appset.
Definition: lbm.h:2235
lbm_rcv_transport_stats_lbtru_t_stct::dgrams_dropped_sid
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:5100
lbm_hfx_str_getopt
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.
lbm_src_transport_stats_lbtrdma_t_stct
DEPRECATED, do not use. lbt-rdma is no longer supported.
Definition: lbm.h:4572
lbm_uint8_t
uint8_t lbm_uint8_t
For portability.
Definition: lbm.h:1740
lbm_msg_retrieve_gateway_info
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_event_queue_stats_t_stct::data_msgs_tot
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:5328
lbm_context_retrieve_stats
LBMExpDLL int lbm_context_retrieve_stats(lbm_context_t *ctx, lbm_context_stats_t *stats)
Retrieve the stats for a context.
lbm_context_attr_create
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...
lbm_rcv_batch_notify_func_end_cb
void(* lbm_rcv_batch_notify_func_end_cb)(void *per_batch_clientd, void *clientd)
UM internal use only. DO NOT USE.
Definition: lbm.h:3383
lbm_msg_channel_info_t_stct::channel_number
lbm_uint32_t channel_number
Channel number in the range 0-4294967295.
Definition: lbm.h:3948
lbm_rcv_transport_stats_lbtrm_t_stct::lbm_msgs_no_topic_rcved
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:4869
lbm_event_queue_stats_t_stct::io_events
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:5428
lbm_rcv_topic_attr_option_size
LBMExpDLL int lbm_rcv_topic_attr_option_size(void)
Retrieves the number of options that are of type "receiver".
lbm_resolver_event_cb_func
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:2416
lbm_str_hash_function_cb
lbm_ulong_t(* lbm_str_hash_function_cb)(const char *str)
Application callback for user-supplied topic hash function.
Definition: lbm.h:3169
lbm_cancel_fd
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_func_t_stct::recvfrom
lbm_datagram_acceleration_recvfrom_function_t recvfrom
Function pointer for datagram acceleration receive from.
Definition: lbm.h:3146
lbm_datagram_acceleration_func_t
struct lbm_datagram_acceleration_func_t_stct lbm_datagram_acceleration_func_t
A structure used to hold functions to configure datagram acceleration implementation callbacks...
lbm_hfx_attr_dump
LBMExpDLL int lbm_hfx_attr_dump(lbm_hfx_attr_t *attr, int *size, lbm_config_option_t *opts)
Retrieves all HFX configuration option values from an attribute object.
lbm_src_event_ume_registration_ex_t
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_event_queue_stats_t_stct::resp_msgs
lbm_ulong_t resp_msgs
Number of response messages (from receiver objects) currently in the event queue, i...
Definition: lbm.h:5349
lbm_hfx_attr_str_getopt
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.
lbm_datagram_acceleration_unbind_function_t
int(* lbm_datagram_acceleration_unbind_function_t)(void *handle)
Application callback function to implement datagram acceleration unbind.
Definition: lbm.h:3028
lbm_src_transport_stats_t_stct::broker
lbm_src_transport_stats_broker_t broker
The statistics for source BROKER transports.
Definition: lbm.h:4643
lbm_ucast_resolver_entry_t_stct::iface
lbm_ipv4_address_mask_t iface
Interface to be used.
Definition: lbm.h:3505
lbm_event_queue_attr_create
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_func_t_stct::func
lbm_ume_rcv_regid_function_cb func
Function pointer for application callback function.
Definition: lbm.h:3417
lbm_datagram_acceleration_func_t_stct::open
lbm_datagram_acceleration_open_function_t open
Function pointer for datagram acceleration open.
Definition: lbm.h:3134
lbm_rcv_topic_attr_create_default
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.
lbm_context_str_setopt
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_rcv_transport_stats_lbtru_t_stct::unrecovered_tmo
lbm_ulong_t unrecovered_tmo
Number of LBT-RU datagrams unrecovered due to a retransmission not received within the NAK generation...
Definition: lbm.h:5066
lbm_rcv_topic_attr_create_from_xml
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_rcv_transport_stats_lbtrm_t_stct::duplicate_data
lbm_ulong_t duplicate_data
Number of duplicate LBT-RM datagrams received. (Cumulative)
Definition: lbm.h:4832
lbm_datagram_acceleration_send_disconnect_function_t
int(* lbm_datagram_acceleration_send_disconnect_function_t)(void *send_handle)
Application callback function to implement datagram acceleration send disconnect. ...
Definition: lbm.h:3085
lbm_msg_umq_index_assignment_eligibility_stop_complete_ex_t_stct::queue_id
lbm_uint_t queue_id
The Queue ID of the queue stopping index assignment eligibility.
Definition: lbm.h:2119
lbm_transport_source_info_t_stct
Structure that holds parsed transport source strings.
Definition: lbm.h:4117
lbm_src_alloc_msg_buff
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...
lbm_umq_queue_application_set_t_stct::reserved
void * reserved
Reserved field; do not touch.
Definition: lbm.h:2241
lbm_datagram_acceleration_recvfrom_function_t
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:3063
lbm_win32_static_thread_detach
LBMExpDLL int lbm_win32_static_thread_detach(void)
Instructs UM that a new thread is done calling UM functions.
lbm_umq_queue_topic_t_stct::num_appsets
int num_appsets
Length of the application sets array.
Definition: lbm.h:2255
lbm_apphdr_chain_elem_t_stct::len
size_t len
length of the data pointed to by data
Definition: lbm.h:10771
lbm_event_queue_stats_t_stct::context_source_events_tot
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:5535
lbm_umq_ctx_msg_stable
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_src_send_ex_info_t_stct::properties
lbm_msg_properties_t * properties
pointer to a message properties structure. Set LBM_SRC_SEND_EX_FLAG_PROPERTIES in flags...
Definition: lbm.h:2631
lbm_debug_ring_buffer
LBMExpDLL void lbm_debug_ring_buffer(size_t maxsz)
Set debug ring buffer size.
lbm_apphdr_chain_create
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_rcv_transport_stats_lbtru_t_stct::nak_pckts_sent
lbm_ulong_t nak_pckts_sent
Number of NAK packets sent by the receiver transport. (Cumulative)
Definition: lbm.h:4943
lbm_flight_size_set_inflight_cb_proc
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:6307
lbm_mem_mgt_callbacks_t
struct lbm_mem_mgt_callbacks_t_stct lbm_mem_mgt_callbacks_t
Structure that holds the application function to configure Smart Source memory management.
lbm_xsp_attr_t
struct lbm_xsp_attr_t_stct lbm_xsp_attr_t
Structure used to hold attributes for XSPs.
Definition: lbm.h:11654
lbm_event_queue_attr_setopt
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_rcv_transport_stats_lbtru_t_stct::lbm_reqs_rcved
lbm_ulong_t lbm_reqs_rcved
Number of UM request messages received (message type LBM_MSG_REQUEST). (Cumulative) ...
Definition: lbm.h:5085
lbm_resolver_service_entry_t_stct::iface
lbm_ipv4_address_mask_t iface
Interface to be used.
Definition: lbm.h:3529
lbm_rcv_transport_stats_lbtrm_t_stct::dgrams_dropped_size
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:4874
lbm_datagram_acceleration_func_t_stct::send_connect
lbm_datagram_acceleration_send_connect_function_t send_connect
Function pointer for datagram acceleration send connect.
Definition: lbm.h:3148
lbm_umq_ulb_receiver_type_attr_t_stct
Structure that holds information to configure any of several ULB source&#39;s receiver type attributes...
Definition: lbm.h:3730
lbm_src_event_timestamp_info_t
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...
lbm_seterrf
LBMExpDLL void lbm_seterrf(int eno, const char *format,...)
UM internal use only. DO NOT USE.
lbm_rcv_setopt
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.
lbm_context_str_getopt
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.
lbm_rcv_umq_index_stop_assignment
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...
lbm_xsp_attr_option_size
LBMExpDLL int lbm_xsp_attr_option_size(void)
Retrieves the number of configuration options that are of type "xsp".
lbm_async_operation_cancel
LBMExpDLL int lbm_async_operation_cancel(lbm_async_operation_handle_t handle, int flags)
Cancel an outstanding asynchronous operation.
lbm_debug_ring_buffer_walltime
LBMExpDLL void lbm_debug_ring_buffer_walltime(int use)
Stamp messages with wall time.
lbm_src_event_wakeup_t_stct
Structure that holds source wakeup event data.
Definition: lbm.h:1831
lbm_msg_ume_registration_complete_ex_t
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...
lbm_umq_queue_entry_t
struct lbm_umq_queue_entry_t_stct lbm_umq_queue_entry_t
Structure that holds queue registration information to configure a queuing broker.
lbm_xsp_attr_str_setopt
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_event_queue_stats_t_stct::wrcv_msgs_svc_mean
lbm_ulong_t wrcv_msgs_svc_mean
Mean service time for wildcard receiver messages (in microseconds). This is an exponentially weighted...
Definition: lbm.h:5419
lbm_xsp_dump
LBMExpDLL int lbm_xsp_dump(lbm_xsp_t *xsp, int *size, lbm_config_option_t *opts)
Retrieves all configuration option values that are of type "xsp".
lbm_msg_umq_index_assigned_ex_t
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_ume_rcv_regid_ex_function_cb
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:3254
lbm_flight_size_inflight_t_stct::messages
int messages
Current amount of inflight messages.
Definition: lbm.h:2074
lbm_src_send_ex_info_t_stct::async_opfunc
lbm_async_operation_func_t * async_opfunc
DEPRECATED, do not use.
Definition: lbm.h:2638
lbm_msg_ume_registration_ex_t_stct::flags
int flags
Zero or more flag bits ORed together indicating extra information about the registration.
Definition: lbm.h:1965
lbm_src_event_flight_size_notification_t
struct lbm_src_event_flight_size_notification_t_stct lbm_src_event_flight_size_notification_t
Structure that holds flight size notification event data.
lbm_rcv_transport_stats_lbtrm_t
struct lbm_rcv_transport_stats_lbtrm_t_stct lbm_rcv_transport_stats_lbtrm_t
Structure that holds datagram statistics for receiver LBT-RM transports.
lbm_msg_t_stct::src_cd
const void * src_cd
UM internal only. DO NOT ACCESS DIRECTLY!
Definition: lbm.h:4033
lbm_event_queue_attr_t
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:5295
lbm_umq_queue_topic_t_stct::appsets
lbm_umq_queue_application_set_t * appsets
Array of application sets within this topic.
Definition: lbm.h:2253
lbm_transport_broker_entry_t_stct
Structure that holds IP and Port to configure the broker.
Definition: lbm.h:3542
lbm_resolver_event_advertisement_t_stct::source_type
lbm_uint32_t source_type
Type of source.
Definition: lbm.h:2448
lbm_sock_init
LBMExpDLL void lbm_sock_init(void)
UM internal use only. DO NOT USE.
lbm_src_event_umq_ulb_message_info_ex_t_stct::assignment_id
lbm_uint_t assignment_id
The Assignment ID of the receiver.
Definition: lbm.h:2946
lbm_event_queue_stats_t_stct::callback_events_svc_max
lbm_ulong_t callback_events_svc_max
Maximum service time for callback events (in microseconds). (Cumulative)
Definition: lbm.h:5622
lbm_umq_queue_application_set_t_stct::num_ids
int num_ids
Number of receiver type IDs.
Definition: lbm.h:2237
lbm_msg_ume_send_explicit_ack
LBMExpDLL int lbm_msg_ume_send_explicit_ack(lbm_msg_t *msg)
Send a consumption acknowledgement to the persistent Store.
lbm_request_delete_ex
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_t_stct::lbtsmx
lbm_rcv_transport_stats_lbtsmx_t lbtsmx
The statistics for receiver LBT-SMX transports.
Definition: lbm.h:5283
lbm_src_delete_ex_info_t
Provides information about a transport session being exited when the lbm_rcv_src_notification_delete_...
Definition: lbm.h:5877
lbm_datagram_acceleration_getaddr_function_t
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:3120
lbm_umq_queue_topic_status_t::status
int status
Status code for this topic (reserved for future use; will currently always be set to 0)...
Definition: lbm.h:2266
lbm_context_process_events_ex
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.
lbm_async_operation_func_t::clientd
void * clientd
A client object pointer to be passed back in to the specified callback.
Definition: lbm.h:2589
lbm_rcv_from_hf_rcv
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.
lbm_msg_umq_deregistration_complete_ex_t_stct::flags
int flags
Bitmap indicating extra information about the deregistration. Zero or more flag bits ORed together: L...
Definition: lbm.h:2891
lbm_serialized_response_delete
LBMExpDLL int lbm_serialized_response_delete(lbm_serialized_response_t *serialized_response)
Delete a UM serialized response object.
lbm_msg_gateway_info_t
struct lbm_msg_gateway_info_t_stct lbm_msg_gateway_info_t
DEPRECATED, do not use.
lbm_rcv_transport_stats_lbtipc_t_stct::bytes_rcved
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:5132
lbm_msg_t_stct::refcnt
long refcnt
UM internal only. DO NOT ACCESS DIRECTLY!
Definition: lbm.h:4004
lbm_msg_is_fragment
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...
lbm_umq_msg_total_lifetime_info_t_stct::flags
int flags
Bitmap set of flags reserved for future use. Currently set to 0.
Definition: lbm.h:2197
lbm_umq_queue_topic_t_stct
Structure that holds queue topic information and can be used as a handle to a queue topic...
Definition: lbm.h:2249
lbm_cancel_fd_ex
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.
lbm_event_queue_getopt
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.
lbm_xsp_zero_transports_func_t
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_func_t_stct::delete_func
lbm_ume_ctx_rcv_ctx_notification_delete_function_cb delete_func
Function pointer for application callback.
Definition: lbm.h:3659
lbm_authstorage_addtpnam
LBMExpDLL int lbm_authstorage_addtpnam(const char *username, const char *pass, unsigned char flags)
Add the new user credential to the password file.
lbm_umq_index_info_t_stct
Structure that holds information used for sending and receiving messages with UMQ indices...
Definition: lbm.h:2094
lbm_ume_rcv_regid_ex_func_t_stct::func
lbm_ume_rcv_regid_ex_function_cb func
Function pointer for application callback function.
Definition: lbm.h:3431
lbm_rcv_transport_stats_tcp_t_stct::lbm_msgs_rcved
lbm_ulong_t lbm_msgs_rcved
Number of messages or message fragments received over a TCP transport. (Cumulative) ...
Definition: lbm.h:4679
lbm_rcv_transport_stats_lbtru_t_stct::lbm_msgs_rcved
lbm_ulong_t lbm_msgs_rcved
Number of messages or message fragments received over an LBT-RU transport. (Cumulative) ...
Definition: lbm.h:5077
lbm_context_reset_stats
LBMExpDLL int lbm_context_reset_stats(lbm_context_t *ctx)
Reset the stats for a context.
lbm_src_transport_stats_broker_t_stct::msgs_sent
lbm_ulong_t msgs_sent
Number of BROKER messages sent. Each LBM message maps to a BROKER transport message. (Cumulative)
Definition: lbm.h:4603
lbm_ume_ctx_rcv_ctx_notification_create_function_cb
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:3630
lbm_ume_rcv_recovery_info_ex_function_cb
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:3307
lbm_context_stats_t_stct::fragments_unrecoverably_lost
lbm_ulong_t fragments_unrecoverably_lost
Number of data message fragments detected as unrecoverably lost in the context. (Cumulative) ...
Definition: lbm.h:5771
lbm_msg_t_stct::source_clientd
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_context_stats_t_stct::tr_dgrams_dropped_malformed
lbm_ulong_t tr_dgrams_dropped_malformed
Number of topic resolution datagrams discarded due to being malformed or corrupted. (Cumulative)
Definition: lbm.h:5675
lbm_hfx_attr_set_from_xml
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...
lbm_src_event_ume_deregistration_ex_t_stct
Structure that holds Store deregistration information for the UMP source in an extended form...
Definition: lbm.h:1911
lbm_src_event_umq_registration_complete_ex_t_stct::flags
int flags
Bitmap indicating extra information about the registration. Zero or more flag bits ORed together: LBM...
Definition: lbm.h:2820
lbm_ume_src_force_reclaim_func_t_stct
Structure that holds the application function to configure the forced reclamation notification callba...
Definition: lbm.h:3443
lbm_rcv_umq_queue_msg_retrieve_info_t
Struct containing an array of UMQ messages retrieved via lbm_rcv_umq_queue_msg_retrieve.
Definition: lbm.h:2329
lbm_src_setopt
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.
lbm_apphdr_chain_iter_next
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.
lbm_context_unblock
LBMExpDLL int lbm_context_unblock(lbm_context_t *ctx)
Unblock a sequential mode UM context.
lbm_async_operation_func_t::func
lbm_async_operation_function_cb func
A callback function to receive status and completion of an asynchronous operation.
Definition: lbm.h:2585
lbm_request_delete
LBMExpDLL int lbm_request_delete(lbm_request_t *req)
Delete a UM request object.
lbm_src_sendv
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.
lbm_context_event_umq_registration_complete_ex_t_stct::flags
int flags
Bitmap indicating extra information about the registration. Zero or more flag bits ORed together: LBM...
Definition: lbm.h:2800
lbm_context_rcv_immediate_topic_msgs
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...
lbm_rcv_umq_index_reserve
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.
lbm_src_event_umq_ulb_receiver_info_ex_t
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_src_transport_stats_lbtru_t_stct::naks_shed
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:4469
lbm_event_queue_stats_t_stct::events
lbm_ulong_t events
Total number of events (including messages) currently in the event queue, i.e., a snapshot...
Definition: lbm.h:5564
lbm_msg_umq_registration_complete_ex_t_stct
Structure that holds queue information for queuing receivers after registration is complete to all in...
Definition: lbm.h:2836
lbm_src_event_umq_ulb_receiver_info_ex_t_stct::registration_id
lbm_umq_regid_t registration_id
The registration ID of the receiver.
Definition: lbm.h:2912
lbm_transport_source_info_t_stct::transport_idx
lbm_uint32_t transport_idx
Not used.
Definition: lbm.h:4135
lbm_ucast_resolver_entry_t_stct::source_port
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:3510
lbm_rcv_transport_stats_lbtrm_t_stct::msgs_rcved
lbm_ulong_t msgs_rcved
Number of LBT-RM datagrams received. (Cumulative)
Definition: lbm.h:4715
lbm_ctx_umq_queue_topic_list
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) ...
lbm_src_cost_func_t
struct lbm_src_cost_func_t_stct lbm_src_cost_func_t
Structure that holds the source_cost_evaluation_function (context) context option.
lbm_src_event_timestamp_info_t_stct::sequence_number
lbm_uint_t sequence_number
Sequence number of the sent message.
Definition: lbm.h:1938
lbm_msg_properties_create
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_callbacks_t_stct::realloc_cb_func
lbm_mem_mgt_realloc_cb_func realloc_cb_func
Function pointer for application callback for realloc().
Definition: lbm.h:2514
lbm_src_notify_func_t_stct::notifyfunc
lbm_src_notify_function_cb notifyfunc
Function pointer for application callback function.
Definition: lbm.h:3375
lbm_context_get_name
LBMExpDLL int lbm_context_get_name(lbm_context_t *ctx, char *name, size_t *size)
DEPRECATED, DOES NOT FUNCTION!
lbm_topic_from_src
LBMExpDLL lbm_topic_t * lbm_topic_from_src(lbm_src_t *src)
Retrieve the UM topic object associated with a UM source object.
lbm_umq_queue_msg_status_t::flags
int flags
Bitmap set of flags reserved for future use. Currently set to 0.
Definition: lbm.h:2317
lbm_context_stats_t_stct::tr_dgrams_sent
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:5653
lbm_ume_rcv_recovery_info_ex_func_t
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_msg_ume_registration_ex_t_stct::sequence_number
lbm_uint_t sequence_number
The sequence number for the receiver to start at as reported by the Store.
Definition: lbm.h:1971
lbm_src_event_sequence_number_info_t_stct
Structure that holds sequence number information for a message sent by a source.
Definition: lbm.h:2713
lbm_serialized_response_t
struct lbm_serialized_response_t_stct lbm_serialized_response_t
Structure that holds a serialized UM response object.
lbm_wildcard_rcv_setopt
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_event_queue_stats_t_stct::data_msgs
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:5324
lbm_src_event_wakeup_t
struct lbm_src_event_wakeup_t_stct lbm_src_event_wakeup_t
Structure that holds source wakeup event data.
lbm_rcv_t
struct lbm_rcv_t_stct lbm_rcv_t
Opaque structure that designates a UM receiver. See Receiver Object.
Definition: lbm.h:3887
lbm_process_events_info_t_stct::time_val
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:2545
lbm_ipv4_address_mask_t_stct::addr
lbm_uint_t addr
IPv4 address in network byte order, as might be returned from inet_aton().
Definition: lbm.h:1795
lbm_serialize_response
LBMExpDLL lbm_serialized_response_t * lbm_serialize_response(lbm_response_t *resp)
Serialize a UM response object.
lbm_fd_cb_proc
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:6002
lbm_xsp_process_events
LBMExpDLL int lbm_xsp_process_events(lbm_xsp_t *xsp, lbm_ulong_t msec)
Process internal events in the given XSP object.
lbm_transport_source_info_t_stct::topic_idx
lbm_uint32_t topic_idx
Topic index. Applicable to all transports except BROKER. Stored in host order.
Definition: lbm.h:4133
lbm_wildcard_rcv_umq_index_start_assignment
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...
lbm_send_response
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.
lbm_context_lbtipc_unblock
LBMExpDLL int lbm_context_lbtipc_unblock(lbm_context_t *ctx)
Unblock a sequential mode LBT-IPC processing loop.
lbm_ctx_umq_queue_topic_list_info_t::num_topics
int num_topics
The length, in number of elements, of the topic objects array.
Definition: lbm.h:2276
lbm_ume_ack_delete
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_context_stats_t_stct::tr_dgrams_dropped_type
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:5673
lbm_uint_t
unsigned int lbm_uint_t
For portability.
Definition: lbm.h:1732
lbm_msg_gateway_info_t_stct::sequence_number
lbm_uint_t sequence_number
The original sequence number (relative to the original transport.)
Definition: lbm.h:3929
lbm_ssrc_send_ex_info_t_stct::usr_supplied_buffer
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:2674
lbm_src_event_ume_deregistration_ex_t_stct::registration_id
lbm_uint32_t registration_id
The registration ID for the source.
Definition: lbm.h:1915
lbm_ssrc_send_ex_info_t_stct::mprop_int_keys
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:2665
lbm_ucast_resolver_entry_t_stct
Structure that holds information to configure a unicast resolver daemon.
Definition: lbm.h:3503
lbm_msg_properties_iter_t_stct::data
char * data
Pointer to value for this property. Must be cast to proper data type.
Definition: lbm.h:10903
lbm_src_transport_stats_lbtrm_t_stct::msgs_sent
lbm_ulong_t msgs_sent
Number of LBT-RM datagrams sent. (Cumulative)
Definition: lbm.h:4319
lbm_event_queue_stats_t_stct::resp_msgs_svc_min
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:5359
lbm_apphdr_chain_delete
LBMExpDLL int lbm_apphdr_chain_delete(lbm_apphdr_chain_t *chain)
DEPRECATED. Delete an app header chain previously created with lbm_apphdr_chain_create.
lbm_hf_rcv_t
struct lbm_hf_rcv_t_stct lbm_hf_rcv_t
Opaque structure that designates a UM Hot Failover receiver object.
Definition: lbm.h:3845
lbm_ssrc_send_ex_info_t_stct::channel
lbm_uint32_t channel
Spectrum channel number. Set LBM_SSRC_SEND_EX_FLAG_CHANNEL in flags.
Definition: lbm.h:2671
lbm_context_retrieve_rcv_transport_stats_ex
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.
lbm_context_attr_create_default
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.
lbm_msg_properties_get
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_event_func_t_stct::func
lbm_context_src_cb_proc func
Function pointer for application callback.
Definition: lbm.h:3782
lbm_process_events_info_t_stct
Structure that holds information for the extended Process Events calls.
Definition: lbm.h:2538
lbm_timespec_t_stct::tv_nsec
lbm_ulong_t tv_nsec
Nanoseconds.
Definition: lbm.h:1819
lbm_src_transport_stats_lbtipc_t
struct lbm_src_transport_stats_lbtipc_t_stct lbm_src_transport_stats_lbtipc_t
Structure that holds datagram statistics for source LBT-IPC transports.
lbm_context_setopt
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.
lbm_src_send_ex_info_t_stct::flags
int flags
Bitmap indicating which of other fields in the structure are used. Zero or more flag bits ORed togeth...
Definition: lbm.h:2611
lbm_ssrc_reset_transport_stats
LBMExpDLL int lbm_ssrc_reset_transport_stats(lbm_ssrc_t *ssrc)
Reset the transport statistics for the transport used by the given smart source.
lbm_wildcard_rcv_compare_function_cb
int(* lbm_wildcard_rcv_compare_function_cb)(const char *topic_str, void *clientd)
Application callback for application-supplied wildcard matching.
Definition: lbm.h:3221
lbm_datagram_acceleration_func_t_stct::init
lbm_datagram_acceleration_init_function_t init
Function pointer for datagram acceleration initialization.
Definition: lbm.h:3132
lbm_src_topic_attr_create
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.
lbm_rcv_topic_attr_t
struct lbm_rcv_topic_attr_t_stct lbm_rcv_topic_attr_t
Opaque structure that holds configuration options for receiver topics.
Definition: lbm.h:4195
lbm_event_queue_cancel_cb_info_t_stct::event_queue
lbm_event_queue_t * event_queue
The event queue for the cancel callback. See Event Queue Object.
Definition: lbm.h:6288
lbm_timeval_t_stct::tv_sec
lbm_ulong_t tv_sec
Seconds.
Definition: lbm.h:1806
lbm_license_ummnm_valid
LBMExpDLL int lbm_license_ummnm_valid(void)
Determine is the UMM product is licensed.
lbm_msg_t_stct::hr_timestamp
lbm_timespec_t hr_timestamp
High Resolution Timestamp of the received message.
Definition: lbm.h:4055
lbm_src_transport_stats_lbtrm_t_stct::naks_rcved
lbm_ulong_t naks_rcved
Number of individual NAKs received by the source transport. (Cumulative)
Definition: lbm.h:4347
lbm_src_send_ex_info_t_stct::ume_msg_clientd
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:2614
lbm_src_delete_ex_info_t::flags
int flags
Bitmap indicating characteristics of the transport session. Zero or more flag bits ORed together: LBM...
Definition: lbm.h:5884
lbm_rcv_transport_stats_lbtrm_t_stct::dgrams_dropped_version
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:4880
lbm_context_reset_rcv_transport_stats
LBMExpDLL int lbm_context_reset_rcv_transport_stats(lbm_context_t *ctx)
Reset the transport stats for all receivers in a given context.
lbm_msg_umq_index_released_ex_t_stct::queue_id
lbm_uint_t queue_id
The Queue ID of the queue ending assignment of this index.
Definition: lbm.h:2159
lbm_src_transport_stats_lbtsmx_t_stct
Structure that holds datagram statistics for source LBT-SMX transports.
Definition: lbm.h:4558
lbm_event_queue_retrieve_stats
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.
lbm_xsp_cancel_fd
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_context_stats_t_stct::tr_rcv_topics
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:5699
lbm_mem_mgt_callbacks_t_stct::clientd
void * clientd
Client data to be passed to the callback.
Definition: lbm.h:2518
lbm_event_queue_stats_t_stct::source_events_tot
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:5482
lbm_rcv_transport_stats_tcp_t_stct::lbm_msgs_no_topic_rcved
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:4685
lbm_src_event_ume_ack_info_t_stct::sequence_number
lbm_uint_t sequence_number
The sequence number of the message that is being acknowledged.
Definition: lbm.h:2032
lbm_serialized_response_t_stct
Structure that holds a serialized UM response object.
Definition: lbm.h:3825
ume_liveness_receiving_context_t_stct
Structure that holds the information about a receiving context.
Definition: lbm.h:3606
lbm_ume_store_entry_t
struct lbm_ume_store_entry_t_stct lbm_ume_store_entry_t
Structure that holds information to configure a persistent Store.
lbm_event_queue_stats_t_stct::callback_events
lbm_ulong_t callback_events
Number of callback events currently in the event queue, i.e., a snapshot. Configuration option queue_...
Definition: lbm.h:5594
lbm_resolver_event_info_t
struct lbm_resolver_event_info_t_stct lbm_resolver_event_info_t
Resolver event structure (for UM internal use only).
lbm_context_stats_t_stct::resp_would_block
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:5741
lbm_msg_t_stct::sequence_number
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
lbm_datagram_acceleration_recv_info_t_stct::length
uint32_t length
amount of data returned in buffer
Definition: lbm.h:2974
lbm_wildcard_rcv_create_func_t
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_wildcard_rcv_stats_t_stct::type
lbm_uint8_t type
Pattern type for the wildcard receiver. THIS FIELD IS UNSUPPORTED.
Definition: lbm.h:5854
lbm_resolver_service_entry_t_stct::service_port
lbm_ushort_t service_port
The port configured on the resolver service. (network order)
Definition: lbm.h:3527
lbm_set_benign_error_flag
LBMExpDLL void lbm_set_benign_error_flag(void)
UM internal use only. DO NOT USE.
lbm_umq_ulb_application_set_attr_t_stct::d
int d
The integer value of the attribute.
Definition: lbm.h:3714
lbm_transport_source_info_t_stct::transport_id
lbm_uint32_t transport_id
Transport ID. Applicable only to LBT-IPC and LBT-SMX. Stored in host order.
Definition: lbm.h:4129
lbm_rcv_topic_attr_create
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_rcv_transport_stats_lbtrm_t_stct::ncfs_unknown
lbm_ulong_t ncfs_unknown
Number of NCFs received with reason code "unknown". (Cumulative)
Definition: lbm.h:4781
lbm_msg_t_stct::apphdr_len
size_t apphdr_len
UM internal only. DO NOT ACCESS DIRECTLY!
Definition: lbm.h:4007
lbm_src_cb_proc
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:6100
lbm_ssrc_create
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_context_event_umq_registration_ex_t_stct::queue_instance_index
lbm_uint_t queue_instance_index
The index of the instance of the queue registered with.
Definition: lbm.h:2784
lbm_async_operation_function_cb
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:2568
lbm_event_queue_stats_t_stct::context_source_events
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:5531
lbm_resolver_event_advertisement_t_stct
Advertisement event structure (for UM internal use only).
Definition: lbm.h:2433
lbm_config_option_stct_t
Config option structure holding the option name and value via string types.
Definition: lbm.h:4175
lbm_context_stats_t_stct::lbtrm_unknown_msgs_rcved
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:5714
lbm_msg_umq_index_assignment_eligibility_start_complete_ex_t_stct
Structure that holds index assignment information for queuing receivers to indicate the start of inde...
Definition: lbm.h:2175
lbm_mem_mgt_malloc_cb_func
void *(* lbm_mem_mgt_malloc_cb_func)(size_t size, void *clientd)
Application callback to malloc memory using application specific function.
Definition: lbm.h:2471
lbm_context_retrieve_im_rcv_transport_stats
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.
lbm_msg_properties_iter_delete
LBMExpDLL int lbm_msg_properties_iter_delete(lbm_msg_properties_iter_t *iter)
Deletes an lbm_msg_properties_iterator See Message Properties.
lbm_src_event_umq_stability_ack_info_ex_t_stct::msg_clientd
void * msg_clientd
The clientd pointer passed in for the message.
Definition: lbm.h:2872
lbm_mem_mgt_realloc_cb_func
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:2485
lbm_rcv_unsubscribe_channel
LBMExpDLL int lbm_rcv_unsubscribe_channel(lbm_rcv_t *rcv, lbm_uint32_t channel)
Discontinue an existing channel subscription.
lbm_src_event_umq_stability_ack_info_ex_t_stct::first_sequence_number
lbm_uint_t first_sequence_number
First sequence number for the message after being fragmented.
Definition: lbm.h:2864
lbm_rcv_transport_stats_tcp_t
struct lbm_rcv_transport_stats_tcp_t_stct lbm_rcv_transport_stats_tcp_t
Structure that holds datagram statistics for receiver TCP transports.
lbm_resolver_event_info_t_stct::capability_flags
lbm_uint32_t capability_flags
The internals of this structure are for UM internal use only.
Definition: lbm.h:2403
lbm_event_queue_stats_t_stct::timer_events_svc_mean
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:5470
lbm_transport_source_info_t
struct lbm_transport_source_info_t_stct lbm_transport_source_info_t
Structure that holds parsed transport source strings.
lbm_rcv_topic_stats_t_stct::topic_idx
lbm_uint32_t topic_idx
Topic index for a transport joined by the receiver. THIS FIELD IS UNSUPPORTED.
Definition: lbm.h:5832
lbm_wildcard_rcv_stats_t_stct
Structure that holds statistics for a wildcard receiver.
Definition: lbm.h:5850
lbm_context_stats_t_stct::rcv_cb_svc_time_mean
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:5815
lbm_context_src_event_func_t_stct::evq
lbm_event_queue_t * evq
Event queue to be used (NULL if not). See Event Queue Object.
Definition: lbm.h:3784
lbm_src_transport_stats_lbtrm_t_stct::bytes_sent
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:4322
lbm_event_queue_stats_t_stct::unblock_events_tot
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:5507
lbm_context_reactor_only_create
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.
lbm_src_event_umq_registration_complete_ex_t
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_src_event_ume_ack_ex_info_t_stct::sequence_number
lbm_uint_t sequence_number
The sequence number of the message.
Definition: lbm.h:2057
lbm_config_xml_file
LBMExpDLL int lbm_config_xml_file(const char *url, const char *application_name)
Load a UM XML configuration file.
lbm_umq_queue_msg_status_t::status
int status
Status code for this message (retrieval in progress, consumed, etc.)
Definition: lbm.h:2315
lbm_src_topic_alloc
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_rcv_transport_stats_lbtrdma_t_stct::lbm_msgs_rcved
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:5216
lbm_src_channel_create
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.
lbm_src_topic_attr_dup
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.
lbm_hf_rcv_from_rcv
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.
lbm_timeval_t_stct
Structure that holds seconds and microseconds since midnight, Jan 1, 1970 UTC.
Definition: lbm.h:1804
lbm_unicast_immediate_message
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_rcv_transport_stats_lbtru_t_stct::msgs_rcved
lbm_ulong_t msgs_rcved
Number of LBT-RU datagrams received. (Cumulative)
Definition: lbm.h:4932
lbm_event_queue_stats_t_stct::topicless_im_msgs_svc_max
lbm_ulong_t topicless_im_msgs_svc_max
Maximum service time for topic-less Multicast Immediate Messaging (MIM) messages (in microseconds)...
Definition: lbm.h:5398
lbm_hf_rcv_delete
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.
lbm_context_event_func_t
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_msg_ume_deregistration_ex_t_stct::sequence_number
lbm_uint_t sequence_number
The sequence number for the receiver to end at as reported by the Store.
Definition: lbm.h:2018
lbm_mem_mgt_callbacks_t_stct::free_cb_func
lbm_mem_mgt_free_cb_func free_cb_func
Function pointer for application callback for free().
Definition: lbm.h:2516
lbm_apphdr_chain_iter_done
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...
lbm_src_buff_acquire
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_t_stct::end_notify
lbm_rcv_batch_notify_func_end_cb end_notify
UM internal use only. DO NOT USE.
Definition: lbm.h:3389
lbm_rcv_transport_stats_lbtrm_t_stct::dgrams_dropped_other
lbm_ulong_t dgrams_dropped_other
Number of unrecognizable datagrams discarded due to reasons other than those determined by the above ...
Definition: lbm.h:4888
lbm_hfx_rcv_delete_ex
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_src_event_umq_ulb_message_info_ex_t_stct::application_set_index
lbm_uint_t application_set_index
The Application Set Index the receiver is in.
Definition: lbm.h:2948
lbm_msg_t_stct::apphdr_code
lbm_ulong_t apphdr_code
UM internal only. DO NOT ACCESS DIRECTLY!
Definition: lbm.h:4009
lbm_context_stats_t_stct::tr_bytes_sent
lbm_ulong_t tr_bytes_sent
Number of topic resolution datagram bytes sent. This count is triggered under the same circumstances ...
Definition: lbm.h:5657
lbm_src_transport_stats_lbtrm_t_stct
Structure that holds datagram statistics for source LBT-RM transports.
Definition: lbm.h:4312
lbm_context_stats_t_stct::tr_dgrams_dropped_ver
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:5669
lbm_wildcard_rcv_delete_func_t_stct
Structure that holds the receiver deletion function information to configure the wildcard receiver de...
Definition: lbm.h:4254
lbm_context_stats_t_stct::tr_rcv_unresolved_topics
lbm_ulong_t tr_rcv_unresolved_topics
Number of unresolved topics in the receiver topic resolver cache (aka topic map). (Snapshot) ...
Definition: lbm.h:5705
lbm_rcv_transport_stats_lbtsmx_t_stct
Structure that holds datagram statistics for receiver LBT-SMX transports.
Definition: lbm.h:5170
lbm_event_queue_delete
LBMExpDLL int lbm_event_queue_delete(lbm_event_queue_t *evq)
Delete a given UM event queue object.
lbm_event_queue_stats_t_stct::io_events_svc_max
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:5450
lbm_event_queue_stats_t_stct::io_events_svc_min
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:5439
lbm_ulong_t
unsigned long int lbm_ulong_t
For portability.
Definition: lbm.h:1734
lbm_resolver_service_entry_t_stct::service_ip
lbm_uint_t service_ip
The IP address of the resolver service (network order)
Definition: lbm.h:3525
lbm_umm_info_t_stct::cert_file_password
char * cert_file_password
Certificate file password. Required only if certificate file is password-protected.
Definition: lbm.h:11489
lbm_msg_ume_deregistration_ex_t_stct
Structure that holds Store deregistration information for the UM receiver after a successful deregist...
Definition: lbm.h:2009
lbm_wildcard_rcv_delete_ex
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_rcv_transport_stats_lbtipc_t_stct::lbm_msgs_no_topic_rcved
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:5148
lbm_src_transport_stats_lbtsmx_t_stct::bytes_sent
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:4565
lbm_rcv_transport_stats_daemon_t_stct::bytes_rcved
lbm_ulong_t bytes_rcved
This statistic has been deprecated.
Definition: lbm.h:4904
lbm_src_event_umq_message_id_info_t_stct::msg_clientd
void * msg_clientd
The clientd pointer passed in for the message.
Definition: lbm.h:2766
lbm_src_transport_stats_t_stct::tcp
lbm_src_transport_stats_tcp_t tcp
The statistics for source TCP transports.
Definition: lbm.h:4629
lbm_wildcard_rcv_umq_index_stop_assignment
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...
lbm_src_delete_ex_info_t::orig_domain_id
lbm_uint32_t orig_domain_id
ID number of the Topic Resolution Domain of the originating source.
Definition: lbm.h:5879
lbm_src_topic_attr_create_from_xml
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_ume_rcv_recovery_info_ex_func_info_t_stct::high_sequence_number
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:2743
lbm_ctx_umq_queue_topic_list_info_t
Struct containing an array of queue topics retrieved via lbm_umq_queue_topic_list.
Definition: lbm.h:2272
lbm_context_stats_t_stct
Structure that holds statistics for a context.
Definition: lbm.h:5648
lbm_rcv_transport_stats_t_stct::broker
lbm_rcv_transport_stats_broker_t broker
The statistics for receiver BROKER transports.
Definition: lbm.h:5285
lbm_ume_rcv_regid_function_cb
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:3238
lbm_hf_src_sendv
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.
lbm_hfx_setopt
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.
lbm_get_benign_error_flag
LBMExpDLL int lbm_get_benign_error_flag(void)
UM internal use only. DO NOT USE.
lbm_authstorage_user_del_role
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_rcv_umq_queue_msg_retrieve_info_t::msgs
lbm_umq_queue_msg_status_t * msgs
An array of the retrieved messages.
Definition: lbm.h:2331
lbm_ume_ctx_rcv_ctx_notification_func_t_stct::clientd
void * clientd
Client data to be passed to the callback.
Definition: lbm.h:3661
lbm_rcv_topic_stats_t_stct::flags
lbm_uint32_t flags
Flags for the receiver. THIS FIELD IS UNSUPPORTED.
Definition: lbm.h:5826
lbm_context_event_umq_registration_ex_t_stct::flags
int flags
Bitmap set of flags reserved for future use. Currently set to 0.
Definition: lbm.h:2778
lbm_rcv_transport_stats_lbtrm_t_stct::nak_pckts_sent
lbm_ulong_t nak_pckts_sent
Number of NAK packets sent by the receiver transport. (Cumulative)
Definition: lbm.h:4726
lbm_rcv_src_notification_func_t_stct::create_func
lbm_rcv_src_notification_create_function_cb create_func
Function pointer for application callback when delivery controller is created.
Definition: lbm.h:3592
lbm_src_event_umq_registration_complete_ex_t_stct::queue_id
lbm_uint_t queue_id
The Queue ID of the queue.
Definition: lbm.h:2822
lbm_hfx_create
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.
lbm_authstorage_user_add_role
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_func_t_stct::bind
lbm_datagram_acceleration_bind_function_t bind
Function pointer for datagram acceleration bind.
Definition: lbm.h:3138
lbm_event_queue_stats_t_stct::resp_msgs_svc_max
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:5370
lbm_src_transport_stats_lbtrm_t_stct::rxs_sent
lbm_ulong_t rxs_sent
Number of LBT-RM datagrams retransmitted by this source transport (incremented under the same circums...
Definition: lbm.h:4383
lbm_ume_ctx_rcv_ctx_notification_func_t_stct
Structure that holds the application callback for receiving context status notifications for source c...
Definition: lbm.h:3655
lbm_msg_properties_iter_t_stct::name
const char * name
Name given to this property.
Definition: lbm.h:10901
lbm_ssrc_send_ex_info_t_stct
Structure that holds information for the extended smart source send calls.
Definition: lbm.h:2653
lbm_ume_rcv_regid_ex_func_info_t_stct::src_registration_id
lbm_uint_t src_registration_id
The registration ID for the source.
Definition: lbm.h:2689
lbm_event_queue_attr_dup
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.
lbm_hf_src_send
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_src_transport_stats_broker_t_stct::bytes_sent
lbm_ulong_t bytes_sent
Number of BROKER message bytes sent. This does not include overhead for the AMQP protocol. (Cumulative)
Definition: lbm.h:4605
lbm_msg_delete
LBMExpDLL int lbm_msg_delete(lbm_msg_t *msg)
Delete a UM message object.
lbm_hf_src_send_rcv_reset
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_src_event_ume_registration_ex_t_stct::store_index
lbm_ushort_t store_index
the Store index of the Store involved
Definition: lbm.h:1883
lbm_ssrc_delete
LBMExpDLL int lbm_ssrc_delete(lbm_ssrc_t *ssrc)
Delete a UM Smart Source object.
lbm_wildcard_rcv_compare_func_t
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...
lbm_rcv_transport_stats_lbtsmx_t
struct lbm_rcv_transport_stats_lbtsmx_t_stct lbm_rcv_transport_stats_lbtsmx_t
Structure that holds datagram statistics for receiver LBT-SMX transports.
lbm_event_queue_dump
LBMExpDLL int lbm_event_queue_dump(lbm_event_queue_t *evq, int *size, lbm_config_option_t *opts)
Retrieves all event queue attribute options.
lbm_wildcard_rcv_attr_str_setopt
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...
lbm_ume_rcv_regid_func_t_stct::clientd
void * clientd
Client data to be passed to the callback.
Definition: lbm.h:3419
lbm_src_topic_attr_dump
LBMExpDLL int lbm_src_topic_attr_dump(lbm_src_topic_attr_t *sattr, int *size, lbm_config_option_t *opts)
Retrieves all source configuration options from an attribute object.
lbm_event_queue_attr_dump
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 from an attribute object.
lbm_hfx_attr_t
struct lbm_hfx_attr_t_stct lbm_hfx_attr_t
Opaque structure that designates HFX configuration options.
Definition: lbm.h:3850
lbm_wildcard_rcv_attr_option_size
LBMExpDLL int lbm_wildcard_rcv_attr_option_size(void)
Retrieves the number of options that are of type "wildcard receiver".
lbm_src_event_ume_registration_complete_ex_t_stct::sequence_number
lbm_uint_t sequence_number
The sequence number that will be the first sent.
Definition: lbm.h:1902
lbm_msg_properties_t
struct lbm_msg_properties_t_stct lbm_msg_properties_t
A struct that holds information used for messages with properties. (opaque)
Definition: lbm.h:2600
lbm_rcv_src_notification_func_t_stct
Structure that holds the receiver application functions when configuring callbacks when sources are s...
Definition: lbm.h:3590
lbm_rcv_transport_stats_lbtipc_t_stct::lbm_msgs_rcved
lbm_ulong_t lbm_msgs_rcved
Number of messages or message fragments received over an LBT-IPC transport. (Cumulative) ...
Definition: lbm.h:5143
lbm_str_hash_func_t_stct
Structure that holds the hash function callback information.
Definition: lbm.h:3348
lbm_src_event_umq_ulb_message_info_ex_t_stct::first_sequence_number
lbm_uint_t first_sequence_number
First sequence number for the message after being fragmented.
Definition: lbm.h:2942
lbm_wildcard_rcv_create
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...
lbm_src_send
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_src_event_umq_ulb_message_info_ex_t_stct::msg_id
lbm_umq_msgid_t msg_id
Message ID of the message.
Definition: lbm.h:2938
lbm_rcv_topic_attr_delete
LBMExpDLL int lbm_rcv_topic_attr_delete(lbm_rcv_topic_attr_t *attr)
Delete a receiver topic attribute object.
lbm_rcv_topic_stats_t_stct::timestamp_sec
lbm_uint64_t timestamp_sec
Timestamp seconds of when a transport was joined by the receiver. THIS FIELD IS UNSUPPORTED.
Definition: lbm.h:5834
lbm_src_transport_stats_lbtru_t_stct::naks_rx_delay_ignored
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:4479
lbm_src_transport_stats_t_stct::lbtrm
lbm_src_transport_stats_lbtrm_t lbtrm
The statistics for source LBT-RM transports.
Definition: lbm.h:4631
lbm_msg_umq_index_released_ex_t_stct::flags
int flags
Bitmap indicating why the index was released. Zero or more flag bits ORed together: LBM_MSG_UMQ_INDEX...
Definition: lbm.h:2157
lbm_rcv_transport_stats_broker_t_stct
Structure that holds message statistics for receiver BROKER transports.
Definition: lbm.h:5242
lbm_umm_info_t_stct
Structure for specifying UMM daemon connection options.
Definition: lbm.h:11474
lbm_context_set_nak_cutoff
LBMExpDLL int lbm_context_set_nak_cutoff(lbm_context_t *ctx, int flags)
Controls the LBT-RM NAK cutoff feature.
lbm_src_transport_stats_t_stct::lbtrdma
lbm_src_transport_stats_lbtrdma_t lbtrdma
The statistics for source LBT-RDMA transports.
Definition: lbm.h:4641
lbm_umq_index_info_t
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...
lbm_src_buffs_cancel
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...
lbm_hfx_delete
LBMExpDLL int lbm_hfx_delete(lbm_hfx_t *hfx)
Delete a UM HFX object.
lbm_msg_properties_iter_t_stct::size
size_t size
Size (in bytes) of the value for this property.
Definition: lbm.h:10905
lbm_umq_ulb_application_set_attr_t_stct::index
lbm_ushort_t index
Index of the Application Set.
Definition: lbm.h:3710
lbm_datagram_acceleration_sendto_function_t
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:3110
lbm_context_stats_t_stct::send_would_block
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:5733
lbm_msg_t_stct::channel_info
lbm_msg_channel_info_t * channel_info
Channel information set when using Spectrum channels.
Definition: lbm.h:4037
lbm_src_send_ex
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.
lbm_datagram_acceleration_recv_info_t_stct::timestamp
uint64_t timestamp
time of arrival
Definition: lbm.h:2976
lbm_log_cb_proc
int(* lbm_log_cb_proc)(int level, const char *message, void *clientd)
Application callback for message logging.
Definition: lbm.h:6240
lbm_event_queue_stats_t_stct::unblock_events
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:5503
lbm_datagram_acceleration_func_t_stct
A structure used to hold functions to configure datagram acceleration implementation callbacks...
Definition: lbm.h:3130
lbm_src_send_ex_info_t_stct::apphdr_chain
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:2620
lbm_src_event_ume_ack_ex_info_t_stct::flags
int flags
Zero or more flag bits ORed together indicating extra information about the acknowledgement.
Definition: lbm.h:2055
lbm_ume_src_msg_stable
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_rcv_transport_stats_lbtrm_t_stct::nak_stm_mean
lbm_ulong_t nak_stm_mean
Mean time (in milliseconds) in which loss recovery was accomplished. (Cumulative) ...
Definition: lbm.h:4798
lbm_event_queue_stats_t_stct::source_events_svc_min
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:5489
lbm_rcv_transport_stats_lbtsmx_t_stct::bytes_rcved
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:5175
lbm_config_option_t
struct lbm_config_option_stct_t lbm_config_option_t
Config option structure holding the option name and value via string types.
lbm_src_event_umq_message_id_info_t
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.
lbm_msg_properties_set
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_msg_ume_deregistration_ex_t_stct::store_index
lbm_ushort_t store_index
the Store index of the Store involved
Definition: lbm.h:2020
lbm_event_queue_stats_t_stct::wrcv_msgs
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:5401
lbm_ume_store_name_entry_t
struct lbm_ume_store_name_entry_t_stct lbm_ume_store_name_entry_t
Structure that holds information to configure a persistent Store.
lbm_multicast_immediate_request
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.
lbm_src_notify_func_t_stct::clientd
void * clientd
Client data to be passed to the callback.
Definition: lbm.h:3377
lbm_ucast_resolver_entry_t
struct lbm_ucast_resolver_entry_t_stct lbm_ucast_resolver_entry_t
Structure that holds information to configure a unicast resolver daemon.
lbm_context_stats_t_stct::tr_src_topics
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:5688
lbm_rcv_transport_stats_lbtru_t_stct::dgrams_dropped_type
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:5091
lbm_umq_queue_msg_status_t::msgid
lbm_umq_msgid_t msgid
UMQ message ID of this message.
Definition: lbm.h:2309
lbm_mem_mgt_callbacks_t_stct
Structure that holds the application function to configure Smart Source memory management.
Definition: lbm.h:2510
lbm_resolver_event_info_t_stct::info_flags
lbm_uint64_t info_flags
The internals of this structure are for UM internal use only.
Definition: lbm.h:2401
lbm_context_process_events
LBMExpDLL int lbm_context_process_events(lbm_context_t *ctx, lbm_ulong_t msec)
Process internal events in the given UM context object.
lbm_event_queue_stats_t_stct::wrcv_msgs_tot
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:5405
lbm_msg_t_stct::tsp
lbm_timeval_t tsp
Timestamp indicating the earliest time that the message was received, in seconds and microseconds sin...
Definition: lbm.h:4016
lbm_rcv_transport_stats_lbtrm_t_stct::ncfs_shed
lbm_ulong_t ncfs_shed
Number of NCFs received with reason code "shed". (Cumulative)
Definition: lbm.h:4763
lbm_src_transport_stats_lbtrm_t_stct::nak_pckts_rcved
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:4338
lbm_ume_store_group_entry_t_stct
Structure that holds information to configure a Persistent Store group.
Definition: lbm.h:3576
lbm_rcv_topic_stats_t
struct lbm_rcv_topic_stats_t_stct lbm_rcv_topic_stats_t
Structure that holds statistics for a receiver topic.
lbm_rcv_transport_stats_lbtrm_t_stct::nak_tx_min
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:4811
lbm_msg_umq_index_released_ex_t
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.
lbm_umq_queue_topic_status_t
Struct containing extended asynchronous operation status information about a single UMQ topic...
Definition: lbm.h:2262
lbm_src_transport_stats_lbtrm_t_stct::txw_msgs
lbm_ulong_t txw_msgs
Number of LBT-RM datagrams currently in the transmission window. (Snapshot)
Definition: lbm.h:4330
lbm_request_t
struct lbm_request_t_stct lbm_request_t
Opaque structure that designates a UM request object.
Definition: lbm.h:3896
lbm_context_event_umq_registration_ex_t
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...
lbm_xsp_register_fd
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...
lbm_errmsg
LBMExpDLL const char * lbm_errmsg(void)
Return an ASCII string containing the error message last encountered by this thread.
lbm_context_event_umq_registration_complete_ex_t_stct
Structure that holds information for contexts after registration is complete to all involved queue in...
Definition: lbm.h:2797
lbm_msg_ume_deregistration_ex_t_stct::flags
int flags
Bitmap indicating extra information about the deregistration. Zero or more flag bits ORed together: L...
Definition: lbm.h:2012
lbm_src_event_ume_ack_ex_info_t_stct::msg_clientd
void * msg_clientd
The clientd pointer passed in for the message.
Definition: lbm.h:2063
lbm_event_queue_stats_t_stct::source_events_svc_mean
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:5495
lbm_apphdr_chain_iter_delete
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.
lbm_src_getopt
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.
lbm_rcv_topic_attr_set_from_xml
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...
lbm_src_event_ume_ack_info_t_stct
Structure that holds ACK information for a given message.
Definition: lbm.h:2030
lbm_umq_ulb_application_set_attr_t_stct
Structure that holds information to configure any of several ULB source&#39;s application set attributes...
Definition: lbm.h:3708
lbm_context_delete
LBMExpDLL int lbm_context_delete(lbm_context_t *ctx)
Delete a UM context object.
lbm_src_send_ex_info_t_stct::hf_sqn
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:2635
lbm_immediate_msg_cb_proc
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:4079
lbm_src_send_ex_info_t
struct lbm_src_send_ex_info_t_stct lbm_src_send_ex_info_t
Structure that holds information for the extended send calls.
lbm_src_transport_stats_tcp_t_stct::num_clients
lbm_ulong_t num_clients
Number of TCP receiver clients currently connected over this transport. (Snapshot) ...
Definition: lbm.h:4285
lbm_wildcard_rcv_attr_create
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.
lbm_src_create_ex_info_t::orig_domain_id
lbm_uint32_t orig_domain_id
ID number of the Topic Resolution Domain of the originating source.
Definition: lbm.h:5863
lbm_wildcard_rcv_create_func_t_stct
Structure that holds the receiver creation function to configure the wildcard receiver create callbac...
Definition: lbm.h:4223
lbm_async_operation_info_t::type
int type
The type of asynchronous operation.
Definition: lbm.h:2376
lbm_datagram_acceleration_recv_info_t_stct
Information returned from lbm_datagram_acceleration_recvfrom_function_t function. ...
Definition: lbm.h:2966
lbm_flight_size_inflight_t_stct
Structure that holds information for source total inflight messages and bytes See lbm_flight_size_inf...
Definition: lbm.h:2072
lbm_event_queue_stats_t_stct::timer_events_svc_min
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:5464
lbm_rcv_transport_stats_lbtipc_t_stct::msgs_rcved
lbm_ulong_t msgs_rcved
Number of LBT-IPC datagrams received. (Cumulative)
Definition: lbm.h:5129
lbm_event_queue_attr_create_from_xml
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_ume_rcv_recovery_info_ex_func_info_t_stct::low_rxreq_max_sequence_number
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:2741
lbm_src_transport_stats_lbtrdma_t_stct::bytes_sent
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:4582
lbm_context_src_cb_proc
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:3771
lbm_ssrc_send_ex
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...
lbm_msg_t_stct::type
int type
Type of receiver event. See C Receiver Events.
Definition: lbm.h:3979
lbm_resolver_event_advertisement_t_stct::topic_index
lbm_uint32_t topic_index
Topic index within transport session.
Definition: lbm.h:2442
lbm_event_queue_cancel_cb_info_t
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.
lbm_wildcard_rcv_unsubscribe_channel_ex
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...
lbm_new_transport_info_t
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.
lbm_msg_retrieve_fragment_info
LBMExpDLL int lbm_msg_retrieve_fragment_info(lbm_msg_t *msg, lbm_msg_fragment_info_t *info)
Retrieves fragment information from a message.
lbm_rcv_transport_stats_lbtru_t_stct::nak_stm_mean
lbm_ulong_t nak_stm_mean
Mean time (in milliseconds) in which loss recovery was accomplished. (Cumulative) ...
Definition: lbm.h:5012
lbm_msg_umq_deregistration_complete_ex_t_stct
Structure that holds information for queuing receivers after they de-register from a queue...
Definition: lbm.h:2888
lbm_hfx_getopt
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_func_t_stct::mcast_leave
lbm_datagram_acceleration_mcast_leave_function_t mcast_leave
Function pointer for datagram acceleration multicast leave.
Definition: lbm.h:3144
lbm_is_umq_capable
LBMExpDLL int lbm_is_umq_capable(void)
Determine if the LBM library is capable of UMQ operations.
lbm_wildcard_rcv_delete_func_t
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...
lbm_umq_queue_msg_status_t::clientd
void * clientd
User client data pointer.
Definition: lbm.h:2313
lbm_transport_mapping_func_t_stct::clientd
void * clientd
Client data to be passed to the callback.
Definition: lbm.h:11977
lbm_iovec_t
struct lbm_iovec_t_stct lbm_iovec_t
Structure, struct iovec compatible, that holds information about buffers used for vectored sends...
lbm_ume_store_name_entry_t_stct::registration_id
lbm_uint_t registration_id
The registration ID that should be used with this UMP Store for the source.
Definition: lbm.h:3566
lbm_msg_umq_deregistration_complete_ex_t
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...
lbm_context_dump
LBMExpDLL int lbm_context_dump(lbm_context_t *ctx, int *size, lbm_config_option_t *opts)
Retrieves all context configuration option values.
lbm_hf_sequence_number_t
union lbm_hf_sequence_number_t_stct lbm_hf_sequence_number_t
Structure to hold a hot failover sequence number.
lbm_mem_mgt_callbacks_t_stct::malloc_cb_func
lbm_mem_mgt_malloc_cb_func malloc_cb_func
Function pointer for application callback for malloc().
Definition: lbm.h:2512
lbm_msg_ume_registration_t_stct::src_registration_id
lbm_uint_t src_registration_id
The registration ID for the source.
Definition: lbm.h:1947
lbm_src_transport_stats_lbtrdma_t_stct::num_clients
lbm_ulong_t num_clients
Number of receiver transports that are currently connected to this source transport.
Definition: lbm.h:4574
lbm_umq_msgid_t_stct
Structure that holds information for UMQ messages that allows the message to be identified uniquely...
Definition: lbm.h:2220
lbm_src_event_umq_stability_ack_info_ex_t_stct::msg_id
lbm_umq_msgid_t msg_id
Message ID of the message being acknowledged.
Definition: lbm.h:2862
lbm_src_delete
LBMExpDLL int lbm_src_delete(lbm_src_t *src)
Delete a UM source object.
lbm_hfx_rcv_t
struct lbm_hfx_rcv_t_stct lbm_hfx_rcv_t
Opaque structure that designates an HFX receiver.
Definition: lbm.h:3860
lbm_src_flush
LBMExpDLL int lbm_src_flush(lbm_src_t *src)
Send messages from both the explicit and implicit batches ASAP.
lbm_rcv_from_hfx_rcv
LBMExpDLL lbm_rcv_t * lbm_rcv_from_hfx_rcv(lbm_hfx_rcv_t *hfxrcv)
Retrieve the underlying receiver from an lbm_hfx_rcv_t.
lbm_src_transport_stats_t
struct lbm_src_transport_stats_t_stct lbm_src_transport_stats_t
Structure that holds statistics for source transports.
lbm_datagram_acceleration_func_t_stct::send
lbm_datagram_acceleration_send_function_t send
Function pointer for datagram acceleration send.
Definition: lbm.h:3152
lbm_rcv_transport_stats_lbtrdma_t
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_func_t_stct::func
lbm_mim_unrecloss_function_cb func
Function pointer for application callback function.
Definition: lbm.h:3458
lbm_transport_source_info_t_stct::src_port
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:4123
lbm_ume_rcv_recovery_info_ex_func_t_stct
Structure that holds the application function to configure the callback for recovery sequence number ...
Definition: lbm.h:3470
lbm_errnum
LBMExpDLL int lbm_errnum(void)
Return the error number last encountered by this thread.
lbm_event_queue_stats_t_stct::source_events_svc_max
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:5500
lbm_context_rcv_immediate_msgs
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.
lbm_ume_rcv_ack_t
struct lbm_ume_rcv_ack_t_stct lbm_ume_rcv_ack_t
Opaque structure that designates a UMP ack object.
Definition: lbm.h:3955
lbm_src_transport_stats_lbtsmx_t
struct lbm_src_transport_stats_lbtsmx_t_stct lbm_src_transport_stats_lbtsmx_t
Structure that holds datagram statistics for source LBT-SMX transports.
lbm_msg_properties_clear
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...
lbm_context_attr_create_from_xml
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_event_queue_stats_t_stct::cancel_events_tot
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:5514
lbm_async_operation_info_t::handle
lbm_async_operation_handle_t handle
An opaque handle to the asynchronous operation.
Definition: lbm.h:2383
lbm_src_event_umq_message_id_info_t_stct::msg_id
lbm_umq_msgid_t msg_id
Message ID for the message sent.
Definition: lbm.h:2764
lbm_rcv_transport_stats_lbtru_t_stct::ncfs_shed
lbm_ulong_t ncfs_shed
Number of NCFs received with reason code "shed". (Cumulative)
Definition: lbm.h:4977
lbm_ssrc_send_ex_info_t_stct::ume_msg_clientd
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:2659
lbm_rcv_msg_source_clientd
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...
lbm_src_topic_attr_setopt
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...
lbm_event_queue_str_setopt
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.
lbm_context_attr_setopt
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...
lbm_ssrc_send_request_ex
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_event_queue_stats_t_stct::events_tot
lbm_ulong_t events_tot
Total accumulated number of events (including messages) that have been added to the event queue (even...
Definition: lbm.h:5568
lbm_umq_ulb_application_set_attr_t_stct::lu
lbm_ulong_t lu
The unsigned long int value of the attribute.
Definition: lbm.h:3716
lbm_request_cb_proc
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:6189
lbm_resolver_event_func_t_stct
Resolver event function (for UM internal use only).
Definition: lbm.h:2453
lbm_rcv_cb_proc
int(* lbm_rcv_cb_proc)(lbm_rcv_t *rcv, lbm_msg_t *msg, void *clientd)
Application callback for receiver events.
Definition: lbm.h:5986
lbm_src_event_umq_stability_ack_info_ex_t_stct::flags
int flags
Bitmap indicating extra information about the ACK. Zero or more flag bits ORed together: LBM_SRC_EVEN...
Definition: lbm.h:2860
lbm_multicast_immediate_message
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.
lbm_src_create_ex_info_t::hl_idx
lbm_uint32_t hl_idx
Hot Link index of DRO (if any) providing this transport session.
Definition: lbm.h:5865
lbm_str_hash_func_ex_t
struct lbm_str_hash_func_ex_t_stct lbm_str_hash_func_ex_t
Structure that holds the extended hash function callback information.
lbm_ume_store_entry_t_stct
Structure that holds information to configure a persistent Store.
Definition: lbm.h:3483
LBM_OK
Value returned on successful execution of most UM APIs.
Definition: lbm.h:1725
lbm_msg_t_stct::hdrlen
lbm_ushort_t hdrlen
UM internal only. DO NOT ACCESS DIRECTLY!
Definition: lbm.h:4018
lbm_uint32_t
uint32_t lbm_uint32_t
For portability.
Definition: lbm.h:1744
lbm_event_queue_stats_t_stct::timer_events
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:5453
lbm_ume_store_group_entry_t_stct::group_size
lbm_ushort_t group_size
The size of the group.
Definition: lbm.h:3580
lbm_wildcard_rcv_str_setopt
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...
lbm_rcv_umq_deregister
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.
lbm_hf_src_send_ex
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.
lbm_rcv_retrieve_all_transport_stats_ex
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_rcv_transport_stats_lbtru_t_stct::lost
lbm_ulong_t lost
Number of LBT-RU datagrams detected as lost. (Cumulative)
Definition: lbm.h:4960
lbm_event_queue_attr_option_size
LBMExpDLL int lbm_event_queue_attr_option_size(void)
Retrieves the number of options that are of type "event queue".
lbm_debug_dump
LBMExpDLL int lbm_debug_dump(const char *filename, int append)
Dump a running rollback debug log to the given filename.
lbm_event_queue_stats_t_stct::age_max
lbm_ulong_t age_max
Maximum age of event queue entry when dequeued (in microseconds). (Cumulative)
Definition: lbm.h:5591
lbm_xsp_attr_setopt
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_func_t_stct::zero_transports_func
lbm_xsp_zero_transports_cb_proc zero_transports_func
Function pointer for application callback.
Definition: lbm.h:11812
lbm_datagram_acceleration_send_function_t
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:3097
lbm_msg_umq_registration_complete_ex_t_stct::queue_id
lbm_uint_t queue_id
The Queue ID of the queue.
Definition: lbm.h:2841
lbm_strerror
LBMExpDLL const char * lbm_strerror(void)
UM internal use only. DO NOT USE.
lbm_msg_channel_info_t
struct lbm_msg_channel_info_t_stct lbm_msg_channel_info_t
Structure that represents UMS Spectrum channel information.
lbm_transport_mapping_cb_proc
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:11962
lbm_hf_rcv_delete_ex
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_msg_t_stct::response
lbm_response_t * response
Pointer to response object used for sending responses for lbm_msg_t request.
Definition: lbm.h:3995
lbm_rcv_transport_stats_lbtru_t_stct::unrecovered_txw
lbm_ulong_t unrecovered_txw
Number of LBT-RU datagrams unrecovered (LBM_MSG_UNRECOVERABLE_LOSS delivered to receiver application)...
Definition: lbm.h:5054
lbm_authstorage_unload_roletable
LBMExpDLL int lbm_authstorage_unload_roletable(void)
Unload the role table.
lbm_msg_t_stct::len
size_t len
Length of data in bytes.
Definition: lbm.h:3992
lbm_xsp_attr_str_getopt
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.
lbm_buff_t
struct lbm_buff_t_stct lbm_buff_t
UM internal use only. DO NOT USE.
Definition: lbm.h:3833
lbm_event_queue_shutdown
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...
lbm_async_operation_status
LBMExpDLL int lbm_async_operation_status(lbm_async_operation_handle_t handle, int flags)
Query the current status of an outstanding asynchronous operation.
lbm_context_event_umq_registration_complete_ex_t
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_rcv_src_notification_create_function_ex_cb
void *(* lbm_rcv_src_notification_create_function_ex_cb)(const char *source_name, void *clientd, lbm_src_create_ex_info_t *info)
Application extended callback for notification of creation of sources for a topic.
Definition: lbm.h:5905
lbm_src_transport_stats_lbtrm_t_stct::naks_rx_delay_ignored
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:4373
lbm_rcv_src_notification_delete_function_cb
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:3340
lbm_debugfile_max_rollover
LBMExpDLL void lbm_debugfile_max_rollover(lbm_uint32_t size)
This function for UM internal use only.
lbm_context_stats_t_stct::resp_blocked
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:5736
lbm_msg_ume_deregistration_ex_t_stct::src_registration_id
lbm_uint_t src_registration_id
The registration ID for the source.
Definition: lbm.h:2014
lbm_event_queue_stats_t_stct::topicless_im_msgs
lbm_ulong_t topicless_im_msgs
Number of topic-less Multicast Immediate Messaging (MIM) messages currently in the event queue...
Definition: lbm.h:5374
lbm_wildcard_rcv_umq_deregister
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.
lbm_response_delete
LBMExpDLL int lbm_response_delete(lbm_response_t *resp)
Delete a UM response object.
lbm_context_retrieve_rcv_transport_stats
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.
lbm_datagram_acceleration_init_function_t
int(* lbm_datagram_acceleration_init_function_t)(uint16_t api_version)
Application callback function to implement datagram acceleration initialization.
Definition: lbm.h:2986
LBM_CONFIG_OPTIONS_STR_LEN
#define LBM_CONFIG_OPTIONS_STR_LEN
Size allocation of string buffers in lbm_config_option_t.
Definition: lbm.h:4173
lbm_src_event_sequence_number_info_t_stct::last_sequence_number
lbm_uint_t last_sequence_number
Last sequence number for the message set.
Definition: lbm.h:2719
lbm_ssrc_buff_get
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.
lbm_context_topic_resolution_request
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_resolver_event_advertisement_t_stct::flags
lbm_uint32_t flags
Bitmap indicating extra information about the advertisement. Zero or more flag bits ORed together: LB...
Definition: lbm.h:2436
lbm_umq_queue_topic_t_stct::reserved
void * reserved
Reserved field; do not touch.
Definition: lbm.h:2257
ume_liveness_receiving_context_t_stct::session_id
lbm_uint64_t session_id
Session ID.
Definition: lbm.h:3610
lbm_wildcard_rcv_compare_func_t_stct::compfunc
lbm_wildcard_rcv_compare_function_cb compfunc
Function pointer for application pattern matching function.
Definition: lbm.h:3403
lbm_src_transport_stats_lbtru_t_stct
Structure that holds datagram statistics for source LBT-RU transports.
Definition: lbm.h:4432
lbm_transport_source_info_t_stct::src_ip
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:4121
lbm_src_event_ume_ack_info_t_stct::msg_clientd
void * msg_clientd
The clientd pointer passed in for the message.
Definition: lbm.h:2036
lbm_response_t
struct lbm_response_t_stct lbm_response_t
Opaque structure that designates a UM response object.
Definition: lbm.h:3902
lbm_src_t
struct lbm_src_t_stct lbm_src_t
Opaque structure that designates a UM source. See Source Object.
Definition: lbm.h:3872
lbm_src_reset_transport_stats
LBMExpDLL int lbm_src_reset_transport_stats(lbm_src_t *src)
Reset the transport statistics for the transport used by the given source.
lbm_event_queue_stats_t_stct::context_source_events_svc_min
lbm_ulong_t context_source_events_svc_min
Minimum service time for context source events (in microseconds). (Cumulative)
Definition: lbm.h:5545
lbm_context_event_func_t_stct::evq
lbm_event_queue_t * evq
Event queue to be used (NULL if not). See Event Queue Object.
Definition: lbm.h:3816
lbm_rcv_src_notification_delete_function_ex_cb
int(* lbm_rcv_src_notification_delete_function_ex_cb)(const char *source_name, void *clientd, void *source_clientd, lbm_src_delete_ex_info_t *info)
Application extended callback for notification of deletion of sources for a topic.
Definition: lbm.h:5920
lbm_xsp_zero_transports_cb_proc
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:11800
lbm_rcv_transport_stats_t_stct
Structure that holds statistics for receiver transports.
Definition: lbm.h:5263
lbm_rcv_transport_stats_t_stct::daemon
lbm_rcv_transport_stats_daemon_t daemon
These statistics have been deprecated.
Definition: lbm.h:5275
lbm_timer_cb_proc
int(* lbm_timer_cb_proc)(lbm_context_t *ctx, const void *clientd)
Application callback for timer events.
Definition: lbm.h:5950
lbm_src_transport_stats_t_stct::daemon
lbm_src_transport_stats_daemon_t daemon
These statistics have been deprecated.
Definition: lbm.h:4633
lbm_context_event_umq_registration_ex_t_stct
Structure that holds queue registration information for the UMQ context in an extended form...
Definition: lbm.h:2776
lbm_msg_umq_index_assignment_eligibility_start_complete_ex_t_stct::flags
int flags
Bitmap of flags ORed together: LBM_MSG_UMQ_INDEX_ASSIGNMENT_ELIGIBILITY_START_COMPLETE_EX_FLAG_* (i...
Definition: lbm.h:2177
lbm_rcv_transport_stats_lbtrm_t_stct::lost
lbm_ulong_t lost
Number of LBT-RM datagrams detected as lost. (Cumulative)
Definition: lbm.h:4746
lbm_ume_store_name_entry_t_stct
Structure that holds information to configure a persistent Store.
Definition: lbm.h:3559
lbm_str_hash_func_ex_t_stct::clientd
void * clientd
Client data to be passed to the callback.
Definition: lbm.h:3363
lbm_ume_rcv_regid_func_t
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...
lbm_wildcard_rcv_attr_str_getopt
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.
lbm_event_queue_attr_set_from_xml
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...
lbm_apphdr_chain_iter_create
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...
lbm_src_buffs_complete_and_acquire
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...
lbm_msg_umq_index_assignment_eligibility_stop_complete_ex_t
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...
lbm_rcv_str_setopt
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_src_event_ume_registration_ex_t_stct::sequence_number
lbm_uint_t sequence_number
The sequence number for the source to use as reported by the Store.
Definition: lbm.h:1881
lbm_rcv_reset_all_transport_stats
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.
lbm_src_delete_ex
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_rcv_transport_stats_lbtru_t_stct::dgrams_dropped_hdr
lbm_ulong_t dgrams_dropped_hdr
Number of datagrams discarded due to bad header type. These datagrams appeared to be intact...
Definition: lbm.h:5097
lbm_event_queue_stats_t_stct::wrcv_msgs_svc_max
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:5425
lbm_src_transport_stats_lbtsmx_t_stct::msgs_sent
lbm_ulong_t msgs_sent
Number of LBT-SMX datagrams sent. (Cumulative)
Definition: lbm.h:4562
lbm_ucast_resolver_entry_t_stct::resolver_ip
lbm_uint_t resolver_ip
The IP address of the unicast resolver daemon (network order)
Definition: lbm.h:3507
lbm_src_topic_attr_getopt
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_transport_broker_entry_t_stct::iface
lbm_ipv4_address_mask_t iface
Future: not currently implemented. Interface to be used.
Definition: lbm.h:3548
lbm_msg_umq_index_released_ex_t_stct
Structure that holds end-of-index information for queuing receivers.
Definition: lbm.h:2154
lbm_src_event_ume_registration_t
struct lbm_src_event_ume_registration_t_stct lbm_src_event_ume_registration_t
DEPRECATED, do not use.
lbm_msg_ume_registration_ex_t
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_event_queue_stats_t_stct::cancel_events_svc_max
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:5528
lbm_context_stats_t_stct::rcv_cb_svc_time_min
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:5789
lbm_async_operation_info_t::rcv_umq_queue_msg_retrieve
lbm_rcv_umq_queue_msg_retrieve_info_t * rcv_umq_queue_msg_retrieve
Results for message retrieve.
Definition: lbm.h:2391
lbm_rcv_transport_stats_t_stct::lbtrdma
lbm_rcv_transport_stats_lbtrdma_t lbtrdma
The statistics for receiver LBT-RDMA transports.
Definition: lbm.h:5281
lbm_debug_filename
LBMExpDLL void lbm_debug_filename(const char *filename)
Set the file to receive LBM debug log entries.
lbm_src_transport_stats_t_stct
Structure that holds statistics for source transports.
Definition: lbm.h:4621
lbm_rcv_transport_stats_t_stct::tcp
lbm_rcv_transport_stats_tcp_t tcp
The statistics for receiver TCP transports.
Definition: lbm.h:5271
lbm_authstorage_checkpermission
LBMExpDLL int lbm_authstorage_checkpermission(char *username, char *command)
Check if the user is authorized to execute the specified command.
lbm_apphdr_chain_elem_t
struct lbm_apphdr_chain_elem_t_stct lbm_apphdr_chain_elem_t
Structure that represents an element in an app header chain.
lbm_src_ume_deregister
LBMExpDLL int lbm_src_ume_deregister(lbm_src_t *src)
Deregister a source from the UMP Stores.
lbm_src_buffs_complete
LBMExpDLL int lbm_src_buffs_complete(lbm_src_t *const src)
Sends all buffers on a transport session that had been previously been acquired.
lbm_src_event_timestamp_info_t_stct
Structure that holds the High Resolution Timestamp and sequence number associated with the sent messa...
Definition: lbm.h:1934
lbm_umq_ulb_receiver_type_attr_t_stct::lu
lbm_ulong_t lu
The unsigned long int value of the attribute.
Definition: lbm.h:3738
lbm_msg_umq_registration_complete_ex_t
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_rcv_transport_stats_tcp_t_stct::bytes_rcved
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:4668
lbm_rcv_transport_stats_lbtru_t_stct::dgrams_dropped_version
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:5094
lbm_rcv_transport_stats_lbtru_t_stct::ncfs_ignored
lbm_ulong_t ncfs_ignored
Number of NCFs received from a source transport with reason code "ignored". (Cumulative) ...
Definition: lbm.h:4969
lbm_hfx_attr_getopt
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.
lbm_context_attr_delete
LBMExpDLL int lbm_context_attr_delete(lbm_context_attr_t *attr)
Delete a UM context attribute object.
lbm_umq_queue_entry_t_stct
Structure that holds queue registration information to configure a queuing broker.
Definition: lbm.h:3671
lbm_transport_broker_entry_t
struct lbm_transport_broker_entry_t_stct lbm_transport_broker_entry_t
Structure that holds IP and Port to configure the broker.
lbm_ipv4_address_mask_t_stct
Structure that holds an IPv4 address and a CIDR style netmask.
Definition: lbm.h:1793
lbm_rcv_transport_stats_t_stct::type
int type
Type of transport (e.g., LBM_TRANSPORT_STAT_TCP, LBM_TRANSPORT_STAT_LBTRM, etc.). ...
Definition: lbm.h:5265
lbm_rcv_transport_stats_lbtru_t_stct::duplicate_data
lbm_ulong_t duplicate_data
Number of duplicate LBT-RU datagrams received. (Cumulative)
Definition: lbm.h:5046
lbm_event_queue_stats_t_stct::cancel_events_svc_mean
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:5524
lbm_hfx_rcv_create
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.
lbm_strerror_errnum
LBMExpDLL const char * lbm_strerror_errnum(int errnum)
UM internal use only. DO NOT USE.
lbm_new_transport_info_t_stct::flags
int flags
Bitmap set of flags reserved for future use. Currently set to 0.
Definition: lbm.h:11940
lbm_src_event_flight_size_notification_t_stct::state
int state
Current state of specified flight size. One of LBM_SRC_EVENT_FLIGHT_SIZE_NOTIFICATION_STATE_*.
Definition: lbm.h:1853
lbm_datagram_acceleration_func_t_stct::getaddr
lbm_datagram_acceleration_getaddr_function_t getaddr
Function pointer for datagram acceleration get address.
Definition: lbm.h:3156
lbm_ssrc_send_ex_info_t_stct::mprop_int_cnt
int mprop_int_cnt
Message property integer count. Set LBM_SSRC_SEND_EX_FLAG_PROPERTIES.
Definition: lbm.h:2662
lbm_src_topic_attr_str_getopt
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_rcv_transport_stats_lbtru_t_stct::nak_tx_mean
lbm_ulong_t nak_tx_mean
Mean number of times per lost message that a receiver transport transmitted a NAK. (Cumulative)
Definition: lbm.h:5031
lbm_event_queue_size
LBMExpDLL int lbm_event_queue_size(lbm_event_queue_t *evq)
Determine the number of queued events in the event queue.
lbm_src_event_ume_registration_complete_ex_t_stct
Structure that holds information for sources after registration is complete to all involved Stores...
Definition: lbm.h:1897
lbm_event_queue_stats_t_stct::resp_msgs_tot
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:5352
lbm_hfx_rcv_delete
LBMExpDLL int lbm_hfx_rcv_delete(lbm_hfx_rcv_t *hfrcv)
Delete a HFX receiver.
lbm_datagram_acceleration_func_t_stct::close
lbm_datagram_acceleration_close_function_t close
Function pointer for datagram acceleration close.
Definition: lbm.h:3136
lbm_umq_ulb_receiver_type_entry_t
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_rcv_transport_stats_lbtrm_t_stct::dgrams_dropped_hdr
lbm_ulong_t dgrams_dropped_hdr
Number of datagrams discarded due to bad header type. These datagrams appeared to be intact...
Definition: lbm.h:4883
lbm_src_transport_stats_t_stct::lbtru
lbm_src_transport_stats_lbtru_t lbtru
The statistics for source LBT-RU transports.
Definition: lbm.h:4635
lbm_event_queue_cancel_cb_proc
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:6279
lbm_context_stats_t_stct::send_blocked
lbm_ulong_t send_blocked
Number of incidents where a UM send call was blocked. Unusually high counts could indicate performanc...
Definition: lbm.h:5729
lbm_ssrc_retrieve_transport_stats
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_event_queue_stats_t_stct::data_msgs_svc_min
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:5335
lbm_src_event_ume_registration_ex_t_stct::registration_id
lbm_uint_t registration_id
The registration ID for the source.
Definition: lbm.h:1879
lbm_rcv_topic_attr_str_getopt
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.
lbm_msg_properties_iter_t_stct
A struct used for iterating over properties pointed to by an lbm_msg_properties_t. The iterator is used to access the fields of a property.
Definition: lbm.h:10899
lbm_apphdr_chain_elem_t_stct::subtype
lbm_ushort_t subtype
Code representing the subtype (if any) of the data in this element.
Definition: lbm.h:10769
lbm_rcv_transport_stats_lbtipc_t_stct
Structure that holds datagram statistics for receiver LBT-IPC transports.
Definition: lbm.h:5122
lbm_src_transport_stats_lbtru_t_stct::naks_ignored
lbm_ulong_t naks_ignored
Number of NAKs this source transport ignored and sent an NCF with reason code "ignored". (Cumulative)
Definition: lbm.h:4461
lbm_queue_immediate_message
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_ume_store_name_entry_t_stct::group_index
lbm_ushort_t group_index
The index of the group this UMP Store belongs to.
Definition: lbm.h:3564
lbm_umq_queue_application_set_t
struct lbm_umq_queue_application_set_t_stct lbm_umq_queue_application_set_t
Structure for defining a UMQ application set.
lbm_rcv_str_getopt
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.
lbm_src_notify_func_t
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_resolver_event_advertisement_t_stct::source_domain_id
lbm_uint32_t source_domain_id
Domain ID of originating source.
Definition: lbm.h:2444
lbm_event_queue_stats_t_stct::age_mean
lbm_ulong_t age_mean
Mean age of event queue entries when dequeued (in microseconds). (Cumulative)
Definition: lbm.h:5584
lbm_apphdr_chain_elem_t_stct::type
lbm_uchar_t type
Code representing the type of data in this element.
Definition: lbm.h:10767
lbm_context_t
struct lbm_context_t_stct lbm_context_t
Context object (opaque) for UM. See Context Object.
Definition: lbm.h:1771
lbm_src_event_umq_ulb_message_info_ex_t_stct::last_sequence_number
lbm_uint_t last_sequence_number
Last sequence number for the message after being fragmented.
Definition: lbm.h:2944
lbm_async_operation_func_t
Structure that holds information for asynchronous operation callbacks.
Definition: lbm.h:2583
lbm_mim_unrecloss_func_t_stct::clientd
void * clientd
Client data to be passed to the callback.
Definition: lbm.h:3460
lbm_rcv_transport_stats_daemon_t_stct
DEPRECATED, do not use.
Definition: lbm.h:4902
lbm_set_lbtrm_src_loss_rate
LBMExpDLL void lbm_set_lbtrm_src_loss_rate(int rate)
Dynamically set the LBT-RM source loss rate.
lbm_context_attr_getopt
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.
lbm_clr_benign_error_flag
LBMExpDLL void lbm_clr_benign_error_flag(void)
UM internal use only. DO NOT USE.
lbm_src_notify_function_cb
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:3204
lbm_src_event_flight_size_notification_t_stct::type
int type
Specifies which flight size&#39;s state changed. One of LBM_SRC_EVENT_FLIGHT_SIZE_NOTIFICATION_TYPE_*.
Definition: lbm.h:1851
lbm_msg_umq_index_assigned_ex_t_stct
Structure that holds beginning-of-index information for queuing receivers.
Definition: lbm.h:2134
lbm_src_transport_stats_lbtrm_t_stct::naks_shed
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:4363
lbm_xsp_t
struct lbm_xsp_t_stct lbm_xsp_t
XSP object (opaque) for UM.
Definition: lbm.h:11644
lbm_ume_ack_mark_not_outstanding
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...
lbm_rcv_batch_notify_func_t
struct lbm_rcv_batch_notify_func_t_stct lbm_rcv_batch_notify_func_t
UM internal use only. DO NOT USE.
lbm_rcv_umq_queue_msg_list
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)...
lbm_src_topic_attr_str_setopt
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...
lbm_event_queue_monitor_proc
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:6219
lbm_src_cost_func_t_stct
Structure that holds the source_cost_evaluation_function (context) context option.
Definition: lbm.h:4156
lbm_rcv_transport_stats_daemon_t
struct lbm_rcv_transport_stats_daemon_t_stct lbm_rcv_transport_stats_daemon_t
DEPRECATED, do not use.
lbm_msg_extract_ume_ack
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...
lbm_rcv_topic_lookup
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_umq_msgid_t_stct::stamp
lbm_uint64_t stamp
The stamp of the message that indicates the individual message from the given source context...
Definition: lbm.h:2224
lbm_context_attr_dump
LBMExpDLL int lbm_context_attr_dump(lbm_context_attr_t *cattr, int *size, lbm_config_option_t *opts)
Retrieves all context configuration options from an attribute object.
lbm_send_request
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.
lbm_msg_umq_index_assignment_eligibility_start_complete_ex_t
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...
lbm_wildcard_rcv_dump
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_rcv_transport_stats_lbtrdma_t_stct::msgs_rcved
lbm_ulong_t msgs_rcved
Number of LBT-RDMA datagrams received. Depending on batching settings, a single LBT-RDMA datagram may...
Definition: lbm.h:5204
lbm_rcv_transport_stats_lbtrm_t_stct
Structure that holds datagram statistics for receiver LBT-RM transports.
Definition: lbm.h:4706
lbm_resolver_event_info_t_stct
Resolver event structure (for UM internal use only).
Definition: lbm.h:2399
lbm_transport_broker_entry_t_stct::broker_port
lbm_ushort_t broker_port
The port of the broker. (network order)
Definition: lbm.h:3546
lbm_rcv_batch_notify_func_t_stct::start_notify
lbm_rcv_batch_notify_func_start_cb start_notify
UM internal use only. DO NOT USE.
Definition: lbm.h:3387
lbm_event_queue_stats_t_stct::callback_events_svc_min
lbm_ulong_t callback_events_svc_min
Minimum service time for callback events (in microseconds). (Cumulative)
Definition: lbm.h:5607
lbm_context_set_name
LBMExpDLL int lbm_context_set_name(lbm_context_t *ctx, const char *name)
DEPRECATED, DOES NOT FUNCTION.
lbm_msg_umq_reassign
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_transport_broker_entry_t_stct::source_port
lbm_ushort_t source_port
Future: not currently implemented. The source port to be used (network order).
Definition: lbm.h:3550
lbm_rcv_topic_attr_dump
LBMExpDLL int lbm_rcv_topic_attr_dump(lbm_rcv_topic_attr_t *rattr, int *size, lbm_config_option_t *opts)
Retrieves all receiver configuration options from an attribute object.
lbm_src_event_ume_registration_ex_t_stct
Structure that holds Store registration information for the UMP source in an extended form...
Definition: lbm.h:1874
lbm_rcv_transport_stats_lbtrm_t_stct::ncfs_rx_delay
lbm_ulong_t ncfs_rx_delay
Number of NCFs received with reason code "rx_delay". (Cumulative)
Definition: lbm.h:4773
lbm_event_queue_stats_t_stct::topicless_im_msgs_svc_mean
lbm_ulong_t topicless_im_msgs_svc_mean
Mean service time for topic-less Multicast Immediate Messaging (MIM) messages (in microseconds)...
Definition: lbm.h:5392
lbm_src_send_ex_info_t_stct
Structure that holds information for the extended send calls.
Definition: lbm.h:2608
lbm_resolver_event_func_t_stct::clientd
void * clientd
Client data to be passed to the callback.
Definition: lbm.h:2457
lbm_rcv_transport_stats_lbtru_t_stct::lbm_msgs_no_topic_rcved
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:5083
lbm_context_rcv_immediate_msgs_func_t_stct::evq
lbm_event_queue_t * evq
Event queue to be used (NULL if not). See Event Queue Object.
Definition: lbm.h:4103
lbm_src_str_getopt
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_ume_store_entry_t_stct::group_index
lbm_ushort_t group_index
The index of the group this UMP Store belongs to.
Definition: lbm.h:3489
lbm_rcv_src_notification_func_t
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...
lbm_event_dispatch
LBMExpDLL int lbm_event_dispatch(lbm_event_queue_t *evq, lbm_ulong_t tmo)
Dispatch waiting events to appropriate callback functions.
lbm_msg_ume_registration_t_stct::rcv_registration_id
lbm_uint_t rcv_registration_id
The registration ID for the receiver.
Definition: lbm.h:1949
lbm_src_transport_stats_lbtrm_t_stct::rx_bytes_sent
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:4411
lbm_msg_properties_iter_t_stct::type
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:10911
lbm_context_stats_t_stct::uim_msgs_no_stream_rcved
lbm_ulong_t uim_msgs_no_stream_rcved
Number of unicast immediate messages (UIMs) received without stream information. (Cumulative) ...
Definition: lbm.h:5745
lbm_hf_src_create
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_rcv_transport_stats_lbtru_t_stct::dgrams_dropped_other
lbm_ulong_t dgrams_dropped_other
Number of unrecognizable datagrams discarded due to reasons other than those determined by the above ...
Definition: lbm.h:5103
lbm_src_transport_stats_daemon_t
struct lbm_src_transport_stats_daemon_t_stct lbm_src_transport_stats_daemon_t
DEPRECATED, do not use.
lbm_timeval_t_stct::tv_usec
lbm_ulong_t tv_usec
Microseconds.
Definition: lbm.h:1808
lbm_src_event_umq_ulb_receiver_info_ex_t_stct
Structure that holds UMQ ULB receiver information in an extended form.
Definition: lbm.h:2908
lbm_hfx_attr_setopt
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_func_t_stct::send_disconnect
lbm_datagram_acceleration_send_disconnect_function_t send_disconnect
Function pointer for datagram acceleration send disconnect.
Definition: lbm.h:3150
lbm_src_transport_stats_broker_t_stct
Structure that holds datagram statistics for source BROKER transports.
Definition: lbm.h:4601
lbm_async_operation_info_t::flags
int flags
Bitmap indicating extra information about the async operation. Zero or more flag bits ORed together: ...
Definition: lbm.h:2381
lbm_msg_t_stct::pdata
const void * pdata
UM internal only. DO NOT ACCESS DIRECTLY!
Definition: lbm.h:4043
lbm_src_str_setopt
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_func_t_stct::createfunc
lbm_wildcard_rcv_create_function_cb createfunc
Function pointer for application callback.
Definition: lbm.h:4225
lbm_uint16_t
uint16_t lbm_uint16_t
For portability.
Definition: lbm.h:1742
lbm_rcv_topic_attr_dup
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.
lbm_mim_unrecloss_function_cb
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:3291
lbm_event_queue_attr_create_default
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.
lbm_umq_msg_selector_create
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_src_transport_stats_lbtipc_t_stct::bytes_sent
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:4535
lbm_src_event_umq_ulb_receiver_info_ex_t_stct::application_set_index
lbm_uint_t application_set_index
The Application Set Index the receiver is in.
Definition: lbm.h:2916
lbm_resolver_event_func_t
struct lbm_resolver_event_func_t_stct lbm_resolver_event_func_t
Resolver event function (for UM internal use only).