Commit 17bee0c13ca87b41ae11775696a0d5c64defc610
Committed by
GitHub
Exists in
master
and in
1 other branch
Merge pull request #38 from PerryWerneck/develop
Fixes & updates.
Showing
11 changed files
with
446 additions
and
47 deletions
Show diff stats
... | ... | @@ -0,0 +1,382 @@ |
1 | +------------------------------------------------------------------- | |
2 | +Thu Apr 07 22:24:02 UTC 2022 - perry.werneck@gmail.com | |
3 | + | |
4 | +- Update to version 5.4+git20220330: | |
5 | + * fix-crl-get-engine.patch removed | |
6 | + * Adding SSL build options to the trace info. | |
7 | + * Update README.md | |
8 | + * Test bundle path before using it. If not found use the value from DATADIR. | |
9 | + * Reverting locale. | |
10 | + * Fixing install. | |
11 | + * Fixing use of a separated build dir. | |
12 | + * Refactoring Makefile to allow a separated build dir. | |
13 | + * Adding notes about jhbuild. | |
14 | + * Updating build system. | |
15 | + * Small updates on Makefile. | |
16 | + * Fixing autogen. | |
17 | + * Testing jhbuild. | |
18 | + * Updating configure.ac | |
19 | + * Fixing libcurl detection in macos (#25) | |
20 | + * Adjustments in autogen.sh | |
21 | + * Allowing build from another folder. | |
22 | + * Updating README. | |
23 | + * Restoring detection of MAC datadir. | |
24 | + * Fixing issues detected on linux test after macos changes (#25) | |
25 | + * Fixing MAC build (#25) | |
26 | + * Fixing libtool on mac brew, updating readme (#25) | |
27 | + * Updating Makefile and configure.ac. | |
28 | + * Using MAC library extension. | |
29 | + * Adding all-macos target required for MAC build #25 | |
30 | + * Adding callback for 'select-word' action. | |
31 | + * Fixing configure.ac | |
32 | + * configure: set gettext version | |
33 | + * ASN1_TIME_diff is no longer available on libcrypt. | |
34 | + * Adding convenience method to get the product name set on ./configure. | |
35 | + * Updating build info. | |
36 | + * Reverting latest changes. | |
37 | + * Adding 'editable' property. | |
38 | + * Fixing windows registry tools. | |
39 | + * Fixing translation. | |
40 | + * Updating translation. | |
41 | + * Adding method to write string to windows registry. | |
42 | + * Updating cross-compiler install script. | |
43 | + * Adjusting ssl messsage. | |
44 | + * Adding nick for toggles, removing 'gtk-' from icons. | |
45 | + * Small fixes on log/trace modules. | |
46 | + * Updating requested revision. | |
47 | + * Updating msys build info. | |
48 | + * Adding userdata on default log. | |
49 | + * Adding userdata on log writer. | |
50 | + * Fixing trace file. | |
51 | + * Working on log/trace files. | |
52 | + * Adding 'tracefile' property (still incomplete). | |
53 | + * Fixing windows build. | |
54 | + * Fixing segfault on 'non-session' log write. | |
55 | + * Adding property to set a session based log file. | |
56 | + * Updating windows package. | |
57 | + * Small adjustments in toggle api. | |
58 | + * Fixing windows build. | |
59 | + * Fixing toggle table. | |
60 | + * Fixing 'default host' option. | |
61 | + * Working on 'hang' when the ssl negotiation fails. | |
62 | + * Debugging possible SSL problem. | |
63 | + * Update README.md | |
64 | + * Fixing popup on connection error. | |
65 | + * Small adjustmente on host type. | |
66 | + * Fixing package build. | |
67 | + * Small adjustments on package and sdk. | |
68 | + * Use environment compiler flags if set | |
69 | + * Reformatting sources with astyle. | |
70 | + * Update README.md | |
71 | + * Fixing deepcode alert. | |
72 | + * Fixing LGTM warning. | |
73 | + * spliting filetransfer set methods. | |
74 | + * Updating 'popup-an-errno' dialog. | |
75 | + * Adding utility functions. | |
76 | + * Refactoring file transfer module. | |
77 | + * Adjustments on file-transfer object. | |
78 | + * Adding dummy send/receive methods. | |
79 | + * Setting 'alt-f1' as default for action 'clear' | |
80 | + * Update README.md | |
81 | + * Fixing LGTM warnings. | |
82 | + * Fixing build. | |
83 | + * Updating control files. | |
84 | + * Fixing locale file conflicts. | |
85 | + * Fixing some autoheader warnings. | |
86 | + * Updating readme, fixing arch build. | |
87 | + * Update README.md | |
88 | + * Removing git checkout as required. | |
89 | + * Adding license badge. | |
90 | + * Fixing lgtm.com warning. | |
91 | + * Fixing CRL download. | |
92 | + * Bit field saved_rev_wraparound_mode of type int should have explicitly unsigned integral, explicitly signed integral, or enumeration type. | |
93 | + * Debugging auto-reconnect. | |
94 | + * Logging invalid callback table. | |
95 | + * Allowing customized reconnect method. | |
96 | + * Adding background task counter. | |
97 | + * Fix escaped url. | |
98 | + * Fixes from lgtm.com | |
99 | + * Enabling get peer and name methods required for custom audit plugin. | |
100 | + * Updating translation. | |
101 | + * Removing unused code | |
102 | + * Cleaning up unused code. | |
103 | + * Updating to version 5.4 | |
104 | + * Updating package control files. | |
105 | + * Updating service file | |
106 | + | |
107 | +------------------------------------------------------------------- | |
108 | +Wed Nov 18 21:07:38 UTC 2020 - Perry Werneck <perry.werneck@gmail.com> | |
109 | + | |
110 | +- Fixing CRL download engine | |
111 | + * Added fix-crl-get-engine.patch | |
112 | + | |
113 | +------------------------------------------------------------------- | |
114 | +Sat Oct 31 14:50:08 UTC 2020 - perry.werneck@gmail.com | |
115 | + | |
116 | +- Update to version 5.3+git20201030: | |
117 | + * Fixing SSL connect error messages. | |
118 | + * Updating README.md | |
119 | + * Adding property methods. | |
120 | + * Adding method to get translated cursor position. | |
121 | + * Updating get host and get service methods. | |
122 | + * Allowing extended actions. | |
123 | + * On TN3270-E the model name should be "IBM-3279-4-E" and not "IBM-3279-4" | |
124 | + * Adding new SSL state active when downloading CRL. | |
125 | + * Moving SSL related method to their own include file. | |
126 | + * Removing unused code. | |
127 | + * Adding auto-cleanup macro for windows registry. | |
128 | + * Creating include dir and files based on operating system. | |
129 | + * Fixing charset conversion. | |
130 | + * wait_for_ready should wait for "reconnect" process to complete. | |
131 | + * Fixing popup dialog when connection fails. | |
132 | + * Host connect now respects timeout. | |
133 | + * Fixing keyboard lock status and program messages issues. | |
134 | + * Adding property to enable/disable the CRL download. | |
135 | + * Looking for performance issues in lib3270_wait_for_ready. | |
136 | + * Fixing timers. | |
137 | + * Refactoring timer engine to avoid an abnormal delay when calling wait_for_ready on windows. | |
138 | + * Adding userdata pointer on timer handle. | |
139 | + * Enabling dstrace by testprogram command-line option. | |
140 | + * Refactoring network subsystem for modularity. | |
141 | + * Updating popup handler replacement (required for IPC modules). | |
142 | + * Removing unnecessary callbacks from table. | |
143 | + * Refactoring and centralizing auto-reconnect feature. | |
144 | + * Using standard popup as default for ssl error. | |
145 | + * Adding retry option in the connection failed dialog. | |
146 | + * Refactoring popup engine. | |
147 | + * Removing unused D-Bus references. Updating keytable. | |
148 | + * Setting default keyvalue for PAs. | |
149 | + * Adding PA Key actions on the keytable. | |
150 | + * Clear & Kybdreset were missing in v3270's accelerator dialogs. | |
151 | + * Fixing unexpected hangs on windows version. | |
152 | + | |
153 | +------------------------------------------------------------------- | |
154 | +Thu Jun 04 13:35:16 UTC 2020 - perry.werneck@gmail.com | |
155 | + | |
156 | +- Update to version 5.3: | |
157 | + * Adding openssl info in the version string. | |
158 | + * Updating package release based in rpm release. | |
159 | + * Setting version strings from configure. | |
160 | + * Adding method to get the build timestamp; usefull for version checks. | |
161 | + * Implementing property to get/set the min/max ssl supported protocol version. | |
162 | + * Can't connect to an empty host or service name. | |
163 | + * Build instructions for macOS | |
164 | + * Replacing "<ctrl>" for "<Primary" in keytable definition. | |
165 | + * Adding option to disable automatic download of the CRL. | |
166 | + * Adds support for macosx | |
167 | + * Change name of wait callback type to avoid collision with mac system type | |
168 | + * Include test for presence of malloc.h | |
169 | + * Fix warning with autoconf > 2.68 | |
170 | + * Adding more trace information on "connect" process. | |
171 | + * Fixing null module on log manager. | |
172 | + * Updating smart paste summary. | |
173 | + * Fixing action labels. | |
174 | + * Moving to lib3270 own translations. | |
175 | + * Fixing unlock-delay property. | |
176 | + * Fixing exports. | |
177 | + * Small adjustments in toggles labels and descriptions. | |
178 | + * Adding more translation methods. | |
179 | + * Adding methods to get translated properties. | |
180 | + * Creating lib3270's own translation files. | |
181 | + * Fixing action group error. | |
182 | + * Adding signals for save/print copy actions. | |
183 | + * Removing print/save actions from the protocol library; it's better to implement then on the gui application. | |
184 | + * Fixing reconnect action label & description. | |
185 | + * Adding convenience method for open windows registry. | |
186 | + * Fixing status of "reconnect" action. | |
187 | + * Preventing emit of "save-settings" signal on v3270 when the host URL is set to the same value. | |
188 | + * Fixing action descriptions. | |
189 | + * Using spec-cleaner on lib3270.spec | |
190 | + * Cleaning up unused code. | |
191 | + * Fixing error when the selection format toggle is activated with an active selection. | |
192 | + * Tracing connection state changes. | |
193 | + * Adding method to get "paste-next" state. | |
194 | + * Adding new action group for clipboard content availability. | |
195 | + * Exporting action group notifier for use by libv3270. | |
196 | + * Using only alfanumeric chars to translate toggle names. | |
197 | + * Some actions requires more than one accelerator. | |
198 | + * Improving trace of the http download engine; adding some proxy support. | |
199 | + * Adjusting property names. | |
200 | + * Adding host-type property as an unsigned int value for saving it in the session properties. | |
201 | + * Adding default values for properties. | |
202 | + * Allow to override build date with SOURCE_DATE_EPOCH | |
203 | + * Adding more CG chars in the test pattern. | |
204 | + * Addin APL chars 0xF1 to 0xF9 on test pattern. | |
205 | + * Grouping property descriptors. | |
206 | + * Adding method to get property descriptor by name. | |
207 | + * Refactoring "lunames" property. | |
208 | + * Activating auto-connect when the corresponding toggle is set and the session is offline. | |
209 | + * Adding method to get the toggle descriptor from id. | |
210 | + * Refactoring LU properties. | |
211 | + * Adjustments on charset API. | |
212 | + * Color type should be an unsigned int. | |
213 | + * Fixing action name issue detected on the main application. | |
214 | + * Adding option for default property value. | |
215 | + * Improving the model number property. | |
216 | + * Fixing windows build. | |
217 | + * Fixing typeahead problem. | |
218 | + * Adding method to get the "activatable" state of an action group. | |
219 | + * Fixing "formatted-screen" actions. | |
220 | + * Fixing "locked" signal on disconnect. | |
221 | + * Updating action table. | |
222 | + * Adding events for cursor state. | |
223 | + * Fixing issue with "selection" actions. | |
224 | + * Fixing problem with the select/unselect notifications. | |
225 | + * Adding action types. | |
226 | + * Adding listeners for action group state changes (required for the new UI). | |
227 | + * Cleaning unused methods. | |
228 | + * Fixing segfault on CRL download. | |
229 | + * Use of curl is now default on linux. | |
230 | + * Small message adjustment. | |
231 | + * Fixing CRL download using curl. | |
232 | + * Splitting windows HTTP download method. | |
233 | + * Fixes from comments on OBS Request https://build.opensuse.org/request/show/736258 | |
234 | + * CRL check is now default. | |
235 | + * Adjustments in the SSL negotiation. | |
236 | + * Releasing CRL on URL change. | |
237 | + * Adding callback for URL change. | |
238 | + * Refactoring CRL download method. | |
239 | + * Organizing CRL check engine to avoid duplications. | |
240 | + * Fixing warnings and SSL information dialogs. | |
241 | + * Refactoring CRL check engine. | |
242 | + * Adding action groups (required for GAction implementatin). | |
243 | + * Creating and using standard chained list managers. | |
244 | + * Changint toogle descriptor type name to a more standard one. | |
245 | + * Changing toggle id type name. | |
246 | + * Update README.md | |
247 | + * Fixing icon names. | |
248 | + * Fixing non-ssl builds. | |
249 | + * Adjustments in the action API & property tables. | |
250 | + * Fixing errno use in "has_selection" attribute. | |
251 | + * Adding method to get property description & summary. | |
252 | + * Fixing name conflict with the "autoreconnect" toggle and the "reconnect" action. | |
253 | + * Refactoring actions as properties (easier for language bindings). | |
254 | + * Adding method to set field and jump to next. | |
255 | + * Refactoring action table. | |
256 | + * Adding id in the toggle id description. Required for dynamic attributes. | |
257 | + * Fixing thread issue on custom certificate loading. | |
258 | + * Adding method to build filenames independent of the OS. | |
259 | + * Fixing oversize. | |
260 | + * Updating sf. | |
261 | + * Refactoring output buffer management. | |
262 | + * Adding max witdh & height as read-only properties. | |
263 | + * Adjustments on screen size changes. | |
264 | + * Adjustments in the remap engine. | |
265 | + * Fixing "wait_for_ready" behavior during the "connecting..." state. | |
266 | + * Fixing conflict with action "connect" and ipc method "connect". | |
267 | + * Datadir is now based on product name. | |
268 | + * Adding methods to build data & config file names based in the product name instead of library name. | |
269 | + * Refactoring charset translation sources. | |
270 | + * Refacoring toggle engine. | |
271 | + * Adding lib3270 revision on sdk. | |
272 | + * Refactoring the action table. | |
273 | + * Moving charset method to main library. | |
274 | + * Refactoring action table for use with keyboard preferences dialog. | |
275 | + * Adding product name in the lib3270 "pc" file. | |
276 | + * Fixing event trace description. | |
277 | + * Updating method declarations. | |
278 | + * Adding oversize setting Updating API. | |
279 | + * Adding "wait for string" methods Standardizing API Calls | |
280 | + * Addint method to wait for screen content. | |
281 | + * Updating documentation, adjusting return codes. | |
282 | + * Fixing syslog methods. | |
283 | + * Splitting property set/get methods. | |
284 | + * Adding method to disable the "lock on operator error" feature. | |
285 | + * Disabling unlock delay feature when the ms value is 0. | |
286 | + * Improving keyboard lock status check. | |
287 | + * Adding APIs to get keyboard lock state. | |
288 | + * Decreasing delay in "wait_for_ready" method. | |
289 | + * Fixing bug in the "wait-for-connect" process. | |
290 | + * Fixing "connect" delay. | |
291 | + * Fixing confusing documentation of lib3270_connect. | |
292 | + * Updating API, adding method to get screen format state. | |
293 | + * Adding "length" parameters in the "set" api calls. | |
294 | + * Adding ssl state property. | |
295 | + * Adjustments in the API. | |
296 | + * Refactoring build process. | |
297 | + * Adding build option to disable SSL error notifications. | |
298 | + * Refactoring toggle api calls. | |
299 | + * Adding option to get the entire terminal window as selection. | |
300 | + * Default print and save methods now show a warning popup. | |
301 | + * Emiting notification when SSL validation fails. | |
302 | + * Adding callback to let the application (or user) to decide if the connection will continue on SSL error. | |
303 | + * Adding option to use syslog (when available). | |
304 | + * Moving event source to global to avoid segfault when writing logs before session creation. | |
305 | + * Log messages are now sent to windows event log. | |
306 | + * Language bindings library is now part of the IPC plugin package. | |
307 | + * Small changes in the paste methods. | |
308 | + * Adjustments in selection data. | |
309 | + * Adding documentation and return code on input string method. | |
310 | + * Adding new method to translate the windows error codes. | |
311 | + * Fixing CRL download methods in windows. | |
312 | + * Moving new selection management methods to protocol library. | |
313 | + * Adding method to erase selected inputs. | |
314 | + * Updating clipboard tools. | |
315 | + * Adding method to get a rectangle with the selected region. | |
316 | + * Improving cut&paste methods. | |
317 | + * Updating selection mechanism. | |
318 | + * Static library build is now optional and defaults only for windows. | |
319 | + * Changing "cut" methods to use the same code for "get". | |
320 | + * Refactoring clipboard management. | |
321 | + * Adding library name on pkg-config description file (some language binding need it for dynamic loading). | |
322 | + * Fixing "keep-selected" flag behavior. | |
323 | + * Updating package to follow naming guidelines. | |
324 | + | |
325 | +------------------------------------------------------------------- | |
326 | +Mon Oct 7 15:23:25 UTC 2019 - Ismail Dönmez <idonmez@suse.com> | |
327 | + | |
328 | +- Cleanup spec file | |
329 | +- Disable support for <= SLE12-SP2 | |
330 | + | |
331 | +------------------------------------------------------------------- | |
332 | +Tue Oct 1 07:01:49 UTC 2019 - Jan Engelhardt <jengelh@inai.de> | |
333 | + | |
334 | +- Enable parallel build. Remove pointless %pre scriptlet. | |
335 | +- Adjust RPM groups. Remove leading empty line in descriptions. | |
336 | +- Modernize some macro uses. | |
337 | + | |
338 | +------------------------------------------------------------------- | |
339 | +Tue Sep 10 19:35:42 UTC 2019 - Christophe Giboudeaux <christophe@krop.fr> | |
340 | + | |
341 | +- Use -ffat-lto-objects when building static libraries. | |
342 | + | |
343 | +------------------------------------------------------------------- | |
344 | +Fri May 31 13:04:31 UTC 2019 - perry.werneck@gmail.com | |
345 | + | |
346 | +- Update to version 5.2: | |
347 | + * Updating read me | |
348 | + * Fixing windows build. | |
349 | + * Fixing build on OpenSUSE Factory & Tumbleweed. | |
350 | + * Removing warnings. | |
351 | + * Fixing error on select from keyboard. | |
352 | + * Atualizando documentação. | |
353 | + * Fixing segfault on key pressed on locked terminal. | |
354 | + * Updating doxygen comments. | |
355 | + * Fixing segfault when user press enter on a locked terminal. | |
356 | + * Updating service file. | |
357 | + | |
358 | +------------------------------------------------------------------- | |
359 | +Tue Mar 26 12:24:21 UTC 2019 - Perry Werneck <perry.werneck@gmail.com> | |
360 | + | |
361 | +- Fixing osc source_validator errors. | |
362 | + | |
363 | +------------------------------------------------------------------- | |
364 | +Thu Feb 28 15:02:43 UTC 2019 - Perry Werneck <perry.werneck@gmail.com> | |
365 | + | |
366 | + * Project URL changes to github. | |
367 | + * Fixing deb builds. | |
368 | + * Updating deb package. | |
369 | + * Fixing CRL expiration test. | |
370 | + * Fixing build issues. | |
371 | + * Small adjustment in CRL validation. | |
372 | + * Fixing portability issue. | |
373 | + * Updating locale gen. | |
374 | + * Fixing CRL expiration problem. | |
375 | + * Updating pushtag scripts. | |
376 | + | |
377 | +------------------------------------------------------------------- | |
378 | +Wed Feb 27 23:37:46 UTC 2019 - Perry Werneck <perry.werneck@gmail.com> | |
379 | + | |
380 | + * Refactoring build process. | |
381 | + * Spliting protocol library from pw3270 main project | |
382 | + | ... | ... |
Makefile.in
... | ... | @@ -429,6 +429,10 @@ install-windows-dev: \ |
429 | 429 | win/lib3270.mak \ |
430 | 430 | $(DESTDIR)$(datarootdir)/$(PRODUCT_NAME)/def |
431 | 431 | |
432 | + @$(INSTALL_DATA) \ | |
433 | + CHANGELOG \ | |
434 | + $(DESTDIR)$(datarootdir)/$(PRODUCT_NAME)/$(PACKAGE_NAME).changes | |
435 | + | |
432 | 436 | @rm -f $(DESTDIR)$(libdir)/$(LIBNAME)@DLLEXT@ |
433 | 437 | @$(LN_S) \ |
434 | 438 | $(bindir)/$(LIBNAME)@DLLEXT@ \ | ... | ... |
arch/PKGBUILD
sdk/lib3270-delayed.pc.in
... | ... | @@ -8,8 +8,9 @@ version_minor=@PACKAGE_MINOR_VERSION@ |
8 | 8 | sdk_version=@LIB3270_SDK_VERSION@ |
9 | 9 | library_name=@LIB3270_NAME@ |
10 | 10 | product_name=@PRODUCT_NAME@ |
11 | +default_host=@LIB3270_DEFAULT_HOST@ | |
11 | 12 | product_id=@PRODUCT_ID@ |
12 | -plugin_path=${libdir}/@PRODUCT_ID@/@PACKAGE_MAJOR_VERSION@.@PACKAGE_MINOR_VERSION@/plugins | |
13 | +plugin_path=${libdir}/@PRODUCT_NAME@/@PACKAGE_MAJOR_VERSION@.@PACKAGE_MINOR_VERSION@/plugins | |
13 | 14 | |
14 | 15 | Name: @PACKAGE_NAME@-delayed |
15 | 16 | Description: @PACKAGE_DESCRIPTION@ | ... | ... |
src/core/ft/ft.c
... | ... | @@ -474,7 +474,7 @@ LIB3270_EXPORT int lib3270_ft_start(H3270 *hSession) { |
474 | 474 | // Erase the line and enter the command. |
475 | 475 | flen = kybd_prime(ft->host); |
476 | 476 | if (!flen || flen < strlen(buffer) - 1) { |
477 | - lib3270_write_log(ft->host, "ft", "Unable to send command \"%s\" (flen=%d szBuffer=%ld)",buffer,flen,strlen(buffer)); | |
477 | + lib3270_write_log(ft->host, "ft", "Unable to send command \"%s\" (flen=%d szBuffer=%u)",buffer,flen,(unsigned int) strlen(buffer)); | |
478 | 478 | ft_failed(ft,_( "Unable to send file-transfer request" )); |
479 | 479 | return errno = EINVAL; |
480 | 480 | } | ... | ... |
src/core/linux/connect.c
... | ... | @@ -373,46 +373,6 @@ int net_reconnect(H3270 *hSession, int seconds) { |
373 | 373 | lib3270_write_log(hSession,"connect", "%s: %s",__FUNCTION__,strerror(ETIMEDOUT)); |
374 | 374 | return errno = rc; |
375 | 375 | } |
376 | - | |
377 | - /* | |
378 | - time_t end = time(0)+seconds; | |
379 | - | |
380 | - while(time(0) < end) | |
381 | - { | |
382 | - lib3270_main_iterate(hSession,1); | |
383 | - | |
384 | - switch(hSession->connection.state) | |
385 | - { | |
386 | - case LIB3270_PENDING: | |
387 | - case LIB3270_CONNECTED_INITIAL: | |
388 | - case LIB3270_CONNECTED_ANSI: | |
389 | - case LIB3270_CONNECTED_3270: | |
390 | - case LIB3270_CONNECTED_INITIAL_E: | |
391 | - case LIB3270_CONNECTED_NVT: | |
392 | - case LIB3270_CONNECTED_SSCP: | |
393 | - case LIB3270_CONNECTING: | |
394 | - break; | |
395 | - | |
396 | - case LIB3270_NOT_CONNECTED: | |
397 | - return errno = ENOTCONN; | |
398 | - | |
399 | - case LIB3270_CONNECTED_TN3270E: | |
400 | - if(!hSession->starting) | |
401 | - return 0; | |
402 | - break; | |
403 | - | |
404 | - default: | |
405 | - lib3270_write_log(hSession,"connect", "%s: State changed to unexpected state %d",__FUNCTION__,hSession->connection.state); | |
406 | - return errno = EINVAL; | |
407 | - } | |
408 | - | |
409 | - } | |
410 | - | |
411 | - lib3270_disconnect(hSession); | |
412 | - lib3270_write_log(hSession,"connect", "%s: %s",__FUNCTION__,strerror(ETIMEDOUT)); | |
413 | - | |
414 | - return errno = ETIMEDOUT; | |
415 | - */ | |
416 | 376 | } |
417 | 377 | |
418 | 378 | return 0; | ... | ... |
src/core/wait.c
... | ... | @@ -46,6 +46,7 @@ LIB3270_EXPORT int lib3270_wait_for_update(H3270 GNUC_UNUSED(*hSession), int GNU |
46 | 46 | } |
47 | 47 | |
48 | 48 | LIB3270_EXPORT int lib3270_wait_for_ready(H3270 *hSession, int seconds) { |
49 | + | |
49 | 50 | debug("%s",__FUNCTION__); |
50 | 51 | debug("Session lock state is %d",lib3270_get_lock_status(hSession)); |
51 | 52 | |
... | ... | @@ -87,6 +88,7 @@ LIB3270_EXPORT int lib3270_wait_for_ready(H3270 *hSession, int seconds) { |
87 | 88 | } |
88 | 89 | |
89 | 90 | int lib3270_wait_for_string(H3270 *hSession, const char *key, int seconds) { |
91 | + | |
90 | 92 | FAIL_IF_NOT_ONLINE(hSession); |
91 | 93 | |
92 | 94 | int rc = 0; |
... | ... | @@ -180,6 +182,37 @@ LIB3270_EXPORT int lib3270_wait_for_string_at(H3270 *hSession, unsigned int row, |
180 | 182 | return lib3270_wait_for_string_at_address(hSession,baddr,key,seconds); |
181 | 183 | } |
182 | 184 | |
185 | +LIB3270_EXPORT int lib3270_wait_for_connected(H3270 *hSession, int seconds) { | |
186 | + | |
187 | + int rc = -1; | |
188 | + int timeout = 0; | |
189 | + void * timer = AddTimer(seconds * 1000, hSession, timer_expired, &timeout); | |
190 | + | |
191 | + while(rc == -1) { | |
192 | + if(timeout) { | |
193 | + // Timeout! The timer was destroyed. | |
194 | + return errno = ETIMEDOUT; | |
195 | + } | |
196 | + | |
197 | + if(hSession->connection.state == LIB3270_NOT_CONNECTED) { | |
198 | + rc = ENOTCONN; | |
199 | + break; | |
200 | + } | |
201 | + | |
202 | + if(!hSession->starting && hSession->connection.state >= (int)LIB3270_CONNECTED_INITIAL) { | |
203 | + rc = 0; | |
204 | + break; | |
205 | + } | |
206 | + | |
207 | + lib3270_main_iterate(hSession,1); | |
208 | + | |
209 | + } | |
210 | + RemoveTimer(hSession,timer); | |
211 | + | |
212 | + return errno = rc; | |
213 | +} | |
214 | + | |
215 | + | |
183 | 216 | LIB3270_EXPORT int lib3270_wait_for_cstate(H3270 *hSession, LIB3270_CSTATE cstate, int seconds) { |
184 | 217 | |
185 | 218 | int rc = -1; | ... | ... |
src/include/lib3270.h
... | ... | @@ -1061,6 +1061,20 @@ LIB3270_EXPORT int lib3270_wait_for_ready(H3270 *hSession, int seconds); |
1061 | 1061 | LIB3270_EXPORT int lib3270_wait_for_cstate(H3270 *hSession, LIB3270_CSTATE cstate, int seconds); |
1062 | 1062 | |
1063 | 1063 | /** |
1064 | + * @brief Wait "N" seconds for connected state. | |
1065 | + * | |
1066 | + * @param seconds Number of seconds to wait. | |
1067 | + * | |
1068 | + * @return 0 if ok, errno code if not. | |
1069 | + * | |
1070 | + * @retval ETIMEDOUT Timeout waiting. | |
1071 | + * @retval ENOTCONN Not connected to host. | |
1072 | + * @retval 0 Session is online and in required state. | |
1073 | + * | |
1074 | + */ | |
1075 | +LIB3270_EXPORT int lib3270_wait_for_connected(H3270 *hSession, int seconds); | |
1076 | + | |
1077 | +/** | |
1064 | 1078 | * "beep" to notify user. |
1065 | 1079 | * |
1066 | 1080 | * If available play a sound signal do alert user. | ... | ... |
win/x86_64/_service
... | ... | @@ -4,9 +4,9 @@ |
4 | 4 | <service name="tar_scm"> |
5 | 5 | <param name="changesgenerate">enable</param> |
6 | 6 | <param name="url">https://github.com/PerryWerneck/lib3270.git</param> |
7 | - <param name="revision">develop</param> | |
8 | 7 | <param name="versionformat">@PARENT_TAG@+git%cd</param> |
9 | 8 | <param name="scm">git</param> |
9 | + <param name="revision">develop</param> | |
10 | 10 | </service> |
11 | 11 | |
12 | 12 | <!-- https://github.com/openSUSE/obs-service-extract_file --> | ... | ... |
win/x86_64/mingw64-lib3270.spec
... | ... | @@ -54,13 +54,14 @@ BuildRequires: mingw64-cross-gcc |
54 | 54 | BuildRequires: mingw64-cross-gcc-c++ |
55 | 55 | BuildRequires: mingw64-cross-pkg-config |
56 | 56 | BuildRequires: mingw64-filesystem |
57 | -BuildRequires: mingw64-libopenssl-devel | |
58 | 57 | BuildRequires: mingw64-zlib-devel |
59 | -#BuildRequires: mingw64(lib:iconv) | |
60 | -BuildRequires: mingw64-win_iconv-devel | |
58 | +BuildRequires: mingw64(lib:iconv) | |
61 | 59 | BuildRequires: mingw64(lib:intl) |
62 | 60 | BuildRequires: mingw64-gettext-tools |
63 | 61 | |
62 | +BuildRequires: mingw64(pkg:libcrypto) >= 1.1 | |
63 | +BuildRequires: mingw64(pkg:libssl) >= 1.1 | |
64 | + | |
64 | 65 | %description |
65 | 66 | TN3270 access library, originally designed as part of the %{_product} application. |
66 | 67 | ... | ... |