1 /*
2 WBEMConfigurationDefaults.java
3
4 (C) Copyright IBM Corp. 2006, 2013
5
6 THIS FILE IS PROVIDED UNDER THE TERMS OF THE ECLIPSE PUBLIC LICENSE
7 ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION OF THIS FILE
8 CONSTITUTES RECIPIENTS ACCEPTANCE OF THE AGREEMENT.
9
10 You can obtain a current copy of the Eclipse Public License from
11 http://www.opensource.org/licenses/eclipse-1.0.php
12
13 @author : Alexander Wolf-Reber, IBM, a.wolf-reber@de.ibm.com
14 *
15 * Change History
16 * Flag Date Prog Description
17 *-------------------------------------------------------------------------------
18 * 1565892 2006-11-15 lupusalex Make SBLIM client JSR48 compliant
19 * 1688273 2007-04-19 lupusalex Full support of HTTP trailers
20 * 1815707 2007-10-30 ebak TLS support
21 * 1827728 2007-11-12 ebak embeddedInstances: attribute EmbeddedObject not set
22 * 1848607 2007-12-11 ebak Strict EmbeddedObject types
23 * 2003590 2008-06-30 blaschke-oss Change licensing from CPL to EPL
24 * 2372030 2008-12-01 blaschke-oss Add property to control synchronized SSL handshaking
25 * 2524131 2009-01-21 raman_arora Upgrade client to JDK 1.5 (Phase 1)
26 * 2846231 2009-09-23 rgummada connection failure on CIMOM w/o user/pw
27 * 2884718 2009-10-23 blaschke-oss Merge JSR48 and SBLIM client properties
28 * 2930341 2010-01-12 blaschke-oss Sync up WBEMClientConstants with JSR48 1.0.0
29 * 2970881 2010-03-15 blaschke-oss Add property to control EmbeddedObject case
30 * 3046073 2010-09-07 blaschke-oss Performance hit due to socket conn. creation with timeout
31 * 3185763 2011-02-25 blaschke-oss Reliable indication support - Phase 1
32 * 3195069 2011-02-28 blaschke-oss Need support to disable SSL Handshake
33 * 3206904 2011-05-03 blaschke-oss Indication listener deadlock causes JVM to run out sockets
34 * 3459036 2011-12-13 blaschke-oss Linked list for RI queue not efficient for many LDs
35 * 3492214 2012-02-23 blaschke-oss Add a SenderIPAddress property indications
36 * 3492224 2012-02-23 blaschke-oss Need two different timeouts for Socket connections
37 * 3521157 2012-05-10 blaschke-oss JSR48 1.0.0: PROP_ENABLE_*_LOGGING is Level, not 0/1
38 * 3536399 2012-08-25 hellerda Add client/listener peer authentication properties
39 * 3572993 2012-10-01 blaschke-oss parseDouble("2.2250738585072012e-308") DoS vulnerability
40 * 3598613 2013-01-11 blaschke-oss different data type in cim instance and cim object path
41 * 2628 2013-03-26 blaschke-oss Limit size of LinkedList of CIMEvents to be dispatched
42 * 2635 2013-05-16 blaschke-oss Slowloris DoS attack for CIM indication listener port
43 * 2654 2013-07-29 blaschke-oss Check jcc idle time with CIMOM keepalive timeout to avoid EOF
44 * 2151 2013-08-20 blaschke-oss gzip compression not supported
45 * 2711 2013-11-13 blaschke-oss LOCALNAMESPACEPATH allows 0 NAMESPACE children
46 */
47
48 package org.metricshub.wbem.sblim.cimclient.internal.util;
49
50 /*-
51 * ╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲
52 * WBEM Java Client
53 * ჻჻჻჻჻჻
54 * Copyright 2023 - 2025 MetricsHub
55 * ჻჻჻჻჻჻
56 * Licensed under the Apache License, Version 2.0 (the "License");
57 * you may not use this file except in compliance with the License.
58 * You may obtain a copy of the License at
59 *
60 * http://www.apache.org/licenses/LICENSE-2.0
61 *
62 * Unless required by applicable law or agreed to in writing, software
63 * distributed under the License is distributed on an "AS IS" BASIS,
64 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
65 * See the License for the specific language governing permissions and
66 * limitations under the License.
67 * ╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱
68 */
69
70 import org.metricshub.wbem.sblim.cimclient.internal.http.WwwAuthInfo;
71
72 /**
73 * Interface WBEMConfigurationDefaults holds the default values for the
74 * configuration properties.
75 *
76 */
77 public interface WBEMConfigurationDefaults {
78 /**
79 * CONFIG_URL
80 */
81 public static final String[] CONFIG_URL = new String[] {
82 "file:sblim-cim-client2.properties",
83 "file:" + System.getProperty("user.home") + "/sblim-cim-client2.properties",
84 "file:/etc/java/sblim-cim-client2.properties"
85 };
86
87 /**
88 * LOG_FILE_LEVEL
89 */
90 public static final String LOG_FILE_LEVEL = "OFF";
91
92 /**
93 * LOG_FILE_LOCATION
94 */
95 public static final String LOG_FILE_LOCATION = "%t/cimclient_log_%g.txt";
96
97 /**
98 * LOG_FILE_SIZE_LIMIT
99 */
100 public static final String LOG_FILE_SIZE_LIMIT = "5242880";
101
102 /**
103 * LOG_FILE_COUNT
104 */
105 public static final String LOG_FILE_COUNT = "3";
106
107 /**
108 * LOG_CONSOLE_LEVEL
109 */
110 public static final String LOG_CONSOLE_LEVEL = "OFF";
111
112 /**
113 * LOG_CONSOLE_TYPE
114 */
115 public static final String LOG_CONSOLE_TYPE = WBEMConstants.MESSAGE;
116
117 /**
118 * TRACE_FILE_LEVEL
119 */
120 public static final String TRACE_FILE_LEVEL = "OFF";
121
122 /**
123 * TRACE_FILE_LOCATION
124 */
125 public static final String TRACE_FILE_LOCATION = "%t/cimclient_trace_%g.txt";
126
127 /**
128 * TRACE_FILE_SIZE_LIMIT
129 */
130 public static final String TRACE_FILE_SIZE_LIMIT = "1000000";
131
132 /**
133 * TRACE_FILE_COUNT
134 */
135 public static final String TRACE_FILE_COUNT = "5";
136
137 /**
138 * HTTP_TIMEOUT
139 */
140 public static final String HTTP_TIMEOUT = "0";
141
142 /**
143 * HTTP_POOL_SIZE
144 */
145 public static final String HTTP_POOL_SIZE = "16";
146
147 /**
148 * HTTP_AUTHENTICATION_MODULE
149 */
150 public static final String HTTP_AUTHENTICATION_MODULE = WwwAuthInfo.class.getName();
151
152 /**
153 * HTTP_USE_MPOST
154 */
155 public static final String HTTP_USE_MPOST = "false";
156
157 /**
158 * HTTP_USE_CHUNKING
159 */
160 public static final String HTTP_USE_CHUNKING = "true";
161
162 /**
163 * HTTP_VERSION
164 */
165 public static final String HTTP_VERSION = "1.1";
166
167 /**
168 * KEYSTORE_TYPE
169 */
170 public static final String KEYSTORE_TYPE = "JKS";
171
172 /**
173 * TRUSTSTORE_TYPE
174 */
175 public static final String TRUSTSTORE_TYPE = "JKS";
176
177 /**
178 * HTTP_CONNECTION_RETRIES
179 */
180 public static final String HTTP_CONNECTION_RETRIES = "0";
181
182 /**
183 * HTTP_ENABLE_CONTENT_LENGTH_RETRY
184 */
185 public static final String HTTP_ENABLE_CONTENT_LENGTH_RETRY = "false";
186
187 /**
188 * HTTP_CONTENT_LENGTH_THRESHOLD
189 */
190 public static final String HTTP_CONTENT_LENGTH_THRESHOLD = "50";
191
192 /**
193 * CIMXML_PARSER
194 */
195 public static final String CIMXML_PARSER = WBEMConstants.SAX;
196
197 /**
198 * CIMXML_TRACING
199 */
200 public static final String CIMXML_TRACING = "false";
201
202 /**
203 * CIMXML_EMBOBJBUILDER
204 */
205 public static final String CIMXML_EMBOBJBUILDER = "AttribOnly";
206
207 /**
208 * CIMXML_PARSER_STRICT_EMBOBJ_TYPES
209 */
210 public static final String CIMXML_PARSER_STRICT_EMBOBJ_TYPES = "true";
211
212 /**
213 * CIMXML_BUILDER_UPPERCASE_EMBOBJ_ENTITIES
214 */
215 public static final String CIMXML_BUILDER_UPPERCASE_EMBOBJ_ENTITIES = "true";
216
217 /**
218 * PERFORM_SSL_HANDSHAKE
219 */
220 public static final String PERFORM_SSL_HANDSHAKE = "true";
221
222 /**
223 * SYNCHRONIZED_SSL_HANDSHAKE
224 */
225 public static final String SYNCHRONIZED_SSL_HANDSHAKE = "false";
226
227 /**
228 * SOCKET_CONNECT_WITH_TIMEOUT
229 */
230 public static final String SOCKET_CONNECT_WITH_TIMEOUT = "true";
231
232 /**
233 * SOCKET_CONNECT_TIMEOUT
234 */
235 public static final String SOCKET_CONNECT_TIMEOUT = "0";
236
237 /**
238 * SOCKET_IDLE_TIMEOUT
239 */
240 public static final String SOCKET_IDLE_TIMEOUT = "0";
241
242 /**
243 * KEY_CREDENTIALS_DEFAULT_ENABLED
244 */
245 public static final String KEY_CREDENTIALS_DEFAULT_ENABLED = "false";
246
247 /**
248 * KEY_DEFAULT_PRINCIPAL
249 */
250 public static final String KEY_DEFAULT_PRINCIPAL = "default";
251
252 /**
253 * KEY_DEFAULT_CREDENTIAL
254 */
255 public static final String KEY_DEFAULT_CREDENTIAL = "default";
256
257 /**
258 * LISTENER_HTTP_TIMEOUT
259 */
260 public static final String LISTENER_HTTP_TIMEOUT = "10000";
261
262 /**
263 * LISTENER_HTTP_HEADER_TIMEOUT
264 */
265 public static final String LISTENER_HTTP_HEADER_TIMEOUT = "30000";
266
267 /**
268 * LISTENER_HTTP_MAX_ALLOWED_TIMEOUTS
269 */
270 public static final String LISTENER_HTTP_MAX_ALLOWED_TIMEOUTS = "0";
271
272 /**
273 * LISTENER_MAX_POOL_SIZE
274 */
275 public static final String LISTENER_MAX_POOL_SIZE = "8";
276
277 /**
278 * LISTENER_MIN_POOL_SIZE
279 */
280 public static final String LISTENER_MIN_POOL_SIZE = "2";
281
282 /**
283 * LISTENER_MAX_QUEUE_SIZE
284 */
285 public static final String LISTENER_MAX_QUEUE_SIZE = "32";
286
287 /**
288 * LISTENER_BACKLOG
289 */
290 public static final String LISTENER_BACKLOG = "2";
291
292 /**
293 * LISTENER_HANDLER_MAX_IDLE
294 */
295 public static final String LISTENER_HANDLER_MAX_IDLE = "30000";
296
297 /**
298 * LISTENER_MAX_QUEUED_EVENTS
299 */
300 public static final String LISTENER_MAX_QUEUED_EVENTS = "0";
301
302 /**
303 * LISTENER_ENABLE_RELIABLE_INDICATIONS
304 */
305 public static final String LISTENER_ENABLE_RELIABLE_INDICATIONS = "false";
306
307 /**
308 * LISTENER_DELIVERY_RETRY_ATTEMPTS
309 */
310 public static final String LISTENER_DELIVERY_RETRY_ATTEMPTS = "3";
311
312 /**
313 * LISTENER_DELIVERY_RETRY_INTERVAL
314 */
315 public static final String LISTENER_DELIVERY_RETRY_INTERVAL = "20";
316
317 /**
318 * LISTENER_RELIABLE_INDICATION_HASHTABLE_CAPACITY
319 */
320 public static final String LISTENER_RELIABLE_INDICATION_HASHTABLE_CAPACITY = "0";
321
322 /**
323 * LISTENER_ADD_SENDER_IP_ADDRESS
324 */
325 public static final String LISTENER_ADD_SENDER_IP_ADDRESS = "false";
326
327 /**
328 * SSL_DEFAULT_PROTOCOL
329 */
330 public static final String SSL_DEF_PROTOCOL = "SSL";
331
332 /**
333 * SSL_CLIENT_PEER_VERIFICATION
334 */
335 public static final String SSL_CLIENT_PEER_VERIFICATION = "false";
336
337 /**
338 * SSL_LISTENER_PEER_VERIFICATION
339 */
340 public static final String SSL_LISTENER_PEER_VERIFICATION = "ignore";
341
342 /**
343 * VERIFY_JAVA_LANG_DOUBLE_STRINGS
344 */
345 public static final String VERIFY_JAVA_LANG_DOUBLE_STRINGS = "true";
346
347 /**
348 * SYNCHRONIZE_NUMERIC_KEY_DATA_TYPES
349 */
350 public static final String SYNCHRONIZE_NUMERIC_KEY_DATA_TYPES = "false";
351
352 /**
353 * ENABLE_GZIP_ENCODING
354 */
355 public static final String ENABLE_GZIP_ENCODING = "false";
356
357 /**
358 * CIMXML_PARSER_ALLOW_EMPTY_LOCALNAMESPACEPATH
359 */
360 public static final String CIMXML_PARSER_ALLOW_EMPTY_LOCALNAMESPACEPATH = "false";
361
362 /**
363 * HTTP_KEEP_ALIVE_STRICT_MODE
364 */
365 public static final String HTTP_KEEP_ALIVE_STRICT_MODE = "false";
366 }