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 @@ | @@ -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,6 +429,10 @@ install-windows-dev: \ | ||
429 | win/lib3270.mak \ | 429 | win/lib3270.mak \ |
430 | $(DESTDIR)$(datarootdir)/$(PRODUCT_NAME)/def | 430 | $(DESTDIR)$(datarootdir)/$(PRODUCT_NAME)/def |
431 | 431 | ||
432 | + @$(INSTALL_DATA) \ | ||
433 | + CHANGELOG \ | ||
434 | + $(DESTDIR)$(datarootdir)/$(PRODUCT_NAME)/$(PACKAGE_NAME).changes | ||
435 | + | ||
432 | @rm -f $(DESTDIR)$(libdir)/$(LIBNAME)@DLLEXT@ | 436 | @rm -f $(DESTDIR)$(libdir)/$(LIBNAME)@DLLEXT@ |
433 | @$(LN_S) \ | 437 | @$(LN_S) \ |
434 | $(bindir)/$(LIBNAME)@DLLEXT@ \ | 438 | $(bindir)/$(LIBNAME)@DLLEXT@ \ |
arch/PKGBUILD
@@ -8,7 +8,7 @@ pkgdesc="TN3270 Access library" | @@ -8,7 +8,7 @@ pkgdesc="TN3270 Access library" | ||
8 | url="https://github.com/PerryWerneck/lib3270" | 8 | url="https://github.com/PerryWerneck/lib3270" |
9 | arch=(i686 x86_64) | 9 | arch=(i686 x86_64) |
10 | license=(GPL) | 10 | license=(GPL) |
11 | -depends=() | 11 | +depends=(openssl) |
12 | makedepends=(autoconf automake make openssl libtool gzip) | 12 | makedepends=(autoconf automake make openssl libtool gzip) |
13 | checkdepends=() | 13 | checkdepends=() |
14 | 14 |
sdk/lib3270-delayed.pc.in
@@ -8,8 +8,9 @@ version_minor=@PACKAGE_MINOR_VERSION@ | @@ -8,8 +8,9 @@ version_minor=@PACKAGE_MINOR_VERSION@ | ||
8 | sdk_version=@LIB3270_SDK_VERSION@ | 8 | sdk_version=@LIB3270_SDK_VERSION@ |
9 | library_name=@LIB3270_NAME@ | 9 | library_name=@LIB3270_NAME@ |
10 | product_name=@PRODUCT_NAME@ | 10 | product_name=@PRODUCT_NAME@ |
11 | +default_host=@LIB3270_DEFAULT_HOST@ | ||
11 | product_id=@PRODUCT_ID@ | 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 | Name: @PACKAGE_NAME@-delayed | 15 | Name: @PACKAGE_NAME@-delayed |
15 | Description: @PACKAGE_DESCRIPTION@ | 16 | Description: @PACKAGE_DESCRIPTION@ |
src/core/ft/ft.c
@@ -474,7 +474,7 @@ LIB3270_EXPORT int lib3270_ft_start(H3270 *hSession) { | @@ -474,7 +474,7 @@ LIB3270_EXPORT int lib3270_ft_start(H3270 *hSession) { | ||
474 | // Erase the line and enter the command. | 474 | // Erase the line and enter the command. |
475 | flen = kybd_prime(ft->host); | 475 | flen = kybd_prime(ft->host); |
476 | if (!flen || flen < strlen(buffer) - 1) { | 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 | ft_failed(ft,_( "Unable to send file-transfer request" )); | 478 | ft_failed(ft,_( "Unable to send file-transfer request" )); |
479 | return errno = EINVAL; | 479 | return errno = EINVAL; |
480 | } | 480 | } |
src/core/linux/connect.c
@@ -373,46 +373,6 @@ int net_reconnect(H3270 *hSession, int seconds) { | @@ -373,46 +373,6 @@ int net_reconnect(H3270 *hSession, int seconds) { | ||
373 | lib3270_write_log(hSession,"connect", "%s: %s",__FUNCTION__,strerror(ETIMEDOUT)); | 373 | lib3270_write_log(hSession,"connect", "%s: %s",__FUNCTION__,strerror(ETIMEDOUT)); |
374 | return errno = rc; | 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 | return 0; | 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,6 +46,7 @@ LIB3270_EXPORT int lib3270_wait_for_update(H3270 GNUC_UNUSED(*hSession), int GNU | ||
46 | } | 46 | } |
47 | 47 | ||
48 | LIB3270_EXPORT int lib3270_wait_for_ready(H3270 *hSession, int seconds) { | 48 | LIB3270_EXPORT int lib3270_wait_for_ready(H3270 *hSession, int seconds) { |
49 | + | ||
49 | debug("%s",__FUNCTION__); | 50 | debug("%s",__FUNCTION__); |
50 | debug("Session lock state is %d",lib3270_get_lock_status(hSession)); | 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,6 +88,7 @@ LIB3270_EXPORT int lib3270_wait_for_ready(H3270 *hSession, int seconds) { | ||
87 | } | 88 | } |
88 | 89 | ||
89 | int lib3270_wait_for_string(H3270 *hSession, const char *key, int seconds) { | 90 | int lib3270_wait_for_string(H3270 *hSession, const char *key, int seconds) { |
91 | + | ||
90 | FAIL_IF_NOT_ONLINE(hSession); | 92 | FAIL_IF_NOT_ONLINE(hSession); |
91 | 93 | ||
92 | int rc = 0; | 94 | int rc = 0; |
@@ -180,6 +182,37 @@ LIB3270_EXPORT int lib3270_wait_for_string_at(H3270 *hSession, unsigned int row, | @@ -180,6 +182,37 @@ LIB3270_EXPORT int lib3270_wait_for_string_at(H3270 *hSession, unsigned int row, | ||
180 | return lib3270_wait_for_string_at_address(hSession,baddr,key,seconds); | 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 | LIB3270_EXPORT int lib3270_wait_for_cstate(H3270 *hSession, LIB3270_CSTATE cstate, int seconds) { | 216 | LIB3270_EXPORT int lib3270_wait_for_cstate(H3270 *hSession, LIB3270_CSTATE cstate, int seconds) { |
184 | 217 | ||
185 | int rc = -1; | 218 | int rc = -1; |
src/include/lib3270.h
@@ -1061,6 +1061,20 @@ LIB3270_EXPORT int lib3270_wait_for_ready(H3270 *hSession, int seconds); | @@ -1061,6 +1061,20 @@ LIB3270_EXPORT int lib3270_wait_for_ready(H3270 *hSession, int seconds); | ||
1061 | LIB3270_EXPORT int lib3270_wait_for_cstate(H3270 *hSession, LIB3270_CSTATE cstate, int seconds); | 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 | * "beep" to notify user. | 1078 | * "beep" to notify user. |
1065 | * | 1079 | * |
1066 | * If available play a sound signal do alert user. | 1080 | * If available play a sound signal do alert user. |
win/x86_64/_service
@@ -4,9 +4,9 @@ | @@ -4,9 +4,9 @@ | ||
4 | <service name="tar_scm"> | 4 | <service name="tar_scm"> |
5 | <param name="changesgenerate">enable</param> | 5 | <param name="changesgenerate">enable</param> |
6 | <param name="url">https://github.com/PerryWerneck/lib3270.git</param> | 6 | <param name="url">https://github.com/PerryWerneck/lib3270.git</param> |
7 | - <param name="revision">develop</param> | ||
8 | <param name="versionformat">@PARENT_TAG@+git%cd</param> | 7 | <param name="versionformat">@PARENT_TAG@+git%cd</param> |
9 | <param name="scm">git</param> | 8 | <param name="scm">git</param> |
9 | + <param name="revision">develop</param> | ||
10 | </service> | 10 | </service> |
11 | 11 | ||
12 | <!-- https://github.com/openSUSE/obs-service-extract_file --> | 12 | <!-- https://github.com/openSUSE/obs-service-extract_file --> |
win/x86_64/mingw64-lib3270.spec
@@ -54,13 +54,14 @@ BuildRequires: mingw64-cross-gcc | @@ -54,13 +54,14 @@ BuildRequires: mingw64-cross-gcc | ||
54 | BuildRequires: mingw64-cross-gcc-c++ | 54 | BuildRequires: mingw64-cross-gcc-c++ |
55 | BuildRequires: mingw64-cross-pkg-config | 55 | BuildRequires: mingw64-cross-pkg-config |
56 | BuildRequires: mingw64-filesystem | 56 | BuildRequires: mingw64-filesystem |
57 | -BuildRequires: mingw64-libopenssl-devel | ||
58 | BuildRequires: mingw64-zlib-devel | 57 | BuildRequires: mingw64-zlib-devel |
59 | -#BuildRequires: mingw64(lib:iconv) | ||
60 | -BuildRequires: mingw64-win_iconv-devel | 58 | +BuildRequires: mingw64(lib:iconv) |
61 | BuildRequires: mingw64(lib:intl) | 59 | BuildRequires: mingw64(lib:intl) |
62 | BuildRequires: mingw64-gettext-tools | 60 | BuildRequires: mingw64-gettext-tools |
63 | 61 | ||
62 | +BuildRequires: mingw64(pkg:libcrypto) >= 1.1 | ||
63 | +BuildRequires: mingw64(pkg:libssl) >= 1.1 | ||
64 | + | ||
64 | %description | 65 | %description |
65 | TN3270 access library, originally designed as part of the %{_product} application. | 66 | TN3270 access library, originally designed as part of the %{_product} application. |
66 | 67 |