Commit 5914276b4b874f7a4541c3c1bb9e94ad72de0819

Authored by Perry Werneck
Committed by GitHub
2 parents 85acf574 6094e039
Exists in develop

Merge pull request #52 from PerryWerneck/develop

Small update and macos os build fix.
.github/workflows/macos.yml 0 → 100644
... ... @@ -0,0 +1,22 @@
  1 +name: MacOS Test
  2 +on:
  3 + push:
  4 + branches:
  5 + - macos
  6 +jobs:
  7 + build:
  8 + name: Build for macos
  9 + runs-on: macos-latest
  10 + steps:
  11 + - name: Checkout
  12 + uses: actions/checkout@v3
  13 + - name: Install Pre reqs
  14 + run: |
  15 + brew update
  16 + brew install xz automake binutils coreutils curl gettext libtool openssl pkgconfig
  17 + find /usr/local/bin -lname '*/Library/Frameworks/Python.framework/*' -delete
  18 + brew upgrade
  19 + - name: build
  20 + run: ./mac/ci-build.sh
  21 +
  22 +
... ...
.github/workflows/publish.yml
1 1 name: Publish
2 2 on:
  3 + push:
  4 + branches:
  5 + - develop
3 6 pull_request:
4 7 branches:
5 8 - master
... ... @@ -21,13 +24,15 @@ jobs:
21 24 with:
22 25 msystem: mingw64
23 26 update: true
24   - install: dos2unix mingw-w64-x86_64-gcc automake autoconf make git pkgconf mingw-w64-x86_64-gettext gettext-devel mingw-w64-x86_64-openssl libtool
  27 + install: zip dos2unix mingw-w64-x86_64-gcc automake autoconf make git pkgconf mingw-w64-x86_64-gettext gettext-devel mingw-w64-x86_64-openssl libtool
25 28 - name: CI-Build
26 29 run: ./win/mingw-build.sh
  30 + - name: Bundle
  31 + run: ./win/bundle.msys --build
27 32 - uses: ncipollo/release-action@v1
28 33 with:
29 34 tag: ${{ steps.gettag.outputs.tag }}
30   - artifacts: "*-lib3270-*.pkg.tar.zst"
  35 + artifacts: "*-lib3270-*.pkg.tar.zst,*-lib3270-*.zip"
31 36 allowUpdates: true
32 37 draft: false
33 38 makeLatest: true
... ... @@ -35,7 +40,7 @@ jobs:
35 40 omitPrereleaseDuringUpdate: true
36 41 replacesArtifacts: true
37 42 msys2-msvc:
38   - name: Publish for MSVC 64
  43 + name: Publish devel for MSVC 64
39 44 runs-on: windows-latest
40 45 defaults:
41 46 run:
... ... @@ -57,7 +62,7 @@ jobs:
57 62 - uses: ncipollo/release-action@v1
58 63 with:
59 64 tag: ${{ steps.gettag.outputs.tag }}
60   - artifacts: "*-lib3270-*.zip"
  65 + artifacts: "*-lib3270-*.devel.zip"
61 66 allowUpdates: true
62 67 draft: false
63 68 makeLatest: true
... ... @@ -79,6 +84,9 @@ jobs:
79 84 run: |
80 85 brew update
81 86 brew install xz automake binutils coreutils curl gettext libtool openssl pkgconfig
  87 + find /usr/local/bin -lname '*/Library/Frameworks/Python.framework/*' -delete
  88 + rm -f /usr/local/bin/go || true
  89 + rm -f /usr/local/bin/gofmt || true
82 90 brew upgrade
83 91 - name: build
84 92 run: ./mac/ci-build.sh
... ...
README.md
... ... @@ -10,11 +10,12 @@ Created originally as part of PW3270 application.
10 10  
11 11 ## Installation
12 12  
13   -### Linux
  13 +### Pre build packages
14 14  
15   -You can download installation package for supported distributions in Open Build Service.
  15 +You can download installation package for supported linux distributions in [Open Build Service](https://software.opensuse.org/download.html?project=home%3APerryWerneck%3Apw3270&package=lib3270)
16 16  
17   -[<img src="https://raw.githubusercontent.com/PerryWerneck/pw3270/master/branding/obs-badge-en.svg" alt="Download from open build service" height="80px">](https://software.opensuse.org/download.html?project=home%3APerryWerneck%3Apw3270&package=lib3270)
  17 +[<img src="https://raw.githubusercontent.com/PerryWerneck/pw3270/develop/branding/obs-badge-en.svg" alt="Download from open build service" height="80px">](https://software.opensuse.org/download.html?project=home%3APerryWerneck%3Apw3270&package=pw3270)
  18 +[<img src="https://raw.githubusercontent.com/PerryWerneck/PerryWerneck/3aa96b8275d4310896c3a0b5b3965ed650fb7c2b/badges/github-msys-macos.svg" alt="Download from githut" height="80px">](https://github.com/PerryWerneck/lib3270/releases)
18 19  
19 20 ## Building for Linux
20 21  
... ... @@ -85,8 +86,32 @@ You can download installation package for supported distributions in Open Build
85 86 make clean
86 87 make all
87 88 ```
  89 +### Windows native with MSYS2 (Using bundle script)
88 90  
89   -### Windows native with MSYS2
  91 +1. Install and update MSYS2
  92 +
  93 + * Download and install [msys2](https://www.msys2.org/)
  94 + * Update msys:
  95 +
  96 + ```shell
  97 + pacman -Syu
  98 + ```
  99 + Afther this close and reopen mingw shell.
  100 +
  101 +2. Get lib3270 sources from git using the mingw shell
  102 +
  103 + ```shell
  104 + git clone https://github.com/PerryWerneck/lib3270.git ./lib3270
  105 + ```
  106 +
  107 +3. Run bundle script
  108 +
  109 + ```shell
  110 + cd lib3270
  111 + ./win/bundle.msys --pre-reqs --build
  112 + ```
  113 +
  114 +### Windows native with MSYS2 (Manual)
90 115  
91 116 1. Install and update MSYS2
92 117  
... ... @@ -150,7 +175,7 @@ Install
150 175  
151 176 ```shell
152 177 export PKG_CONFIG_PATH="$(brew --prefix curl)/lib/pkgconfig:$(brew --prefix openssl)/lib/pkgconfig"
153   - ./autogen.sh --prefix="$(brew --cellar)/lib3270/5.4"
  178 + ./autogen.sh --prefix="$(brew --cellar)/lib3270/5.4" --with-libiconv-prefix=$(brew --prefix gettext)
154 179 make all && make install
155 180 brew link lib3270
156 181 ```
... ...
lib3270.cbp
... ... @@ -86,6 +86,9 @@
86 86 <Unit filename="src/core/cursor.c">
87 87 <Option compilerVar="CC" />
88 88 </Unit>
  89 + <Unit filename="src/core/field.c">
  90 + <Option compilerVar="CC" />
  91 + </Unit>
89 92 <Unit filename="src/core/ft/ft.c">
90 93 <Option compilerVar="CC" />
91 94 </Unit>
... ...
locale/lib3270.pot
... ... @@ -1,2137 +0,0 @@
1   -# SOME DESCRIPTIVE TITLE.
2   -# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
3   -# This file is distributed under the same license as the PACKAGE package.
4   -# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
5   -#
6   -#, fuzzy
7   -msgid ""
8   -msgstr ""
9   -"Project-Id-Version: PACKAGE VERSION\n"
10   -"Report-Msgid-Bugs-To: \n"
11   -"POT-Creation-Date: 2023-04-21 08:38-0300\n"
12   -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
13   -"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
14   -"Language-Team: LANGUAGE <LL@li.org>\n"
15   -"Language: \n"
16   -"MIME-Version: 1.0\n"
17   -"Content-Type: text/plain; charset=CHARSET\n"
18   -"Content-Transfer-Encoding: 8bit\n"
19   -
20   -#: src/core/ctlr.c:178
21   -#, c-format
22   -msgid "%dx%d is negative or zero"
23   -msgstr ""
24   -
25   -#: src/core/ctlr.c:190
26   -#, c-format
27   -msgid "%dx%d screen size is bigger than the maximum size"
28   -msgstr ""
29   -
30   -#: src/network_modules/tools.c:175 src/network_modules/tools.c:191
31   -#, c-format
32   -msgid "%s"
33   -msgstr ""
34   -
35   -#: src/core/keyboard/kybd.c:1763
36   -#, c-format
37   -msgid "%s: Bell not supported"
38   -msgstr ""
39   -
40   -#: src/core/keyboard/kybd.c:1908
41   -#, c-format
42   -msgid "%s: Missing hex digits after \\x"
43   -msgstr ""
44   -
45   -#: src/core/keyboard/kybd.c:1861
46   -#, c-format
47   -msgid "%s: Unknown character after \\p"
48   -msgstr ""
49   -
50   -#: src/core/keyboard/kybd.c:1889
51   -#, c-format
52   -msgid "%s: Unknown character after \\pa"
53   -msgstr ""
54   -
55   -#: src/core/keyboard/kybd.c:1872
56   -#, c-format
57   -msgid "%s: Unknown character after \\pf"
58   -msgstr ""
59   -
60   -#: src/core/keyboard/kybd.c:1814
61   -#, c-format
62   -msgid "%s: Vertical tab not supported"
63   -msgstr ""
64   -
65   -#: src/core/telnet.c:1785
66   -msgid "3270 Mode"
67   -msgstr ""
68   -
69   -#: src/core/actions/table.c:678
70   -msgid "3270-style backspace"
71   -msgstr ""
72   -
73   -#: src/network_modules/openssl/messages.c:314
74   -msgid ""
75   -"A CA certificate is invalid. Either it is not a CA or its extensions are not "
76   -"consistent with the supplied purpose."
77   -msgstr ""
78   -
79   -#: src/core/actions/table.c:692
80   -msgid "ATTN key, per RFC 2355. Sends IP, regardless"
81   -msgstr ""
82   -
83   -#: src/core/ft/ft.c:100
84   -msgid "Abort sent; awaiting response"
85   -msgstr ""
86   -
87   -#: src/core/ft/ft.c:612
88   -msgid "Aborting..."
89   -msgstr ""
90   -
91   -#: src/core/ft/ft.c:98
92   -msgid "Ack received, data flowing"
93   -msgstr ""
94   -
95   -#: src/core/paste.c:373
96   -msgid "Action failed"
97   -msgstr ""
98   -
99   -#: src/core/toggles/table.c:256
100   -msgid "Alert sound"
101   -msgstr ""
102   -
103   -#: src/network_modules/openssl/start.c:264
104   -msgid "An EOF was observed that violates the protocol"
105   -msgstr ""
106   -
107   -#: src/core/ft/ftmessages.c:67
108   -msgid "An error exists in the PC's file name."
109   -msgstr ""
110   -
111   -#: src/core/ft/ftmessages.c:46
112   -msgid ""
113   -"An error occurred in the file transfer, which may be an error in the data "
114   -"being transferred, or an unidentified system error."
115   -msgstr ""
116   -
117   -#: src/network_modules/openssl/messages.c:238
118   -msgid "An error occurred trying to allocate memory. This should never happen."
119   -msgstr ""
120   -
121   -#: src/core/ft/ftmessages.c:102
122   -msgid "An invalid SEND or RECEIVE parameter was sent to the host."
123   -msgstr ""
124   -
125   -#: src/core/actions/table.c:691
126   -msgid "Attn"
127   -msgstr ""
128   -
129   -#: src/network_modules/openssl/messages.c:390
130   -msgid "Authority and issuer serial number mismatch"
131   -msgstr ""
132   -
133   -#: src/network_modules/openssl/messages.c:379
134   -msgid "Authority and subject key identifier mismatch"
135   -msgstr ""
136   -
137   -#: src/core/toggles/table.c:275
138   -msgid "Auto Resize"
139   -msgstr ""
140   -
141   -#: src/core/toggles/table.c:318 src/core/toggles/table.c:319
142   -msgid "Auto-Reconnect"
143   -msgstr ""
144   -
145   -#: src/core/toggles/table.c:236
146   -msgid "Automatically connect to host on startup"
147   -msgstr ""
148   -
149   -#: src/core/toggles/table.c:115
150   -msgid ""
151   -"Automatically convert trailing blanks in a field to NULLs in order to insert "
152   -"a character, and will automatically convert leading NULLs to blanks so that "
153   -"input data is not squeezed to the left"
154   -msgstr ""
155   -
156   -#: src/core/toggles/table.c:320
157   -msgid "Automatically reconnect to the host if it ever disconnects"
158   -msgstr ""
159   -
160   -#: src/core/ft/ft.c:99
161   -msgid "Awaiting chance to send an abort"
162   -msgstr ""
163   -
164   -#: src/core/actions/table.c:677
165   -msgid "Back space"
166   -msgstr ""
167   -
168   -#: src/core/actions/table.c:504
169   -msgid "Backspaces the cursor until it hits the front of a word"
170   -msgstr ""
171   -
172   -#: src/core/windows/connect.c:123
173   -msgid "Bad winsock version"
174   -msgstr ""
175   -
176   -#: src/core/toggles/table.c:257
177   -msgid "Beep on errors"
178   -msgstr ""
179   -
180   -#: src/core/toggles/table.c:113 src/core/toggles/table.c:114
181   -msgid "Blank Fill"
182   -msgstr ""
183   -
184   -#: src/core/toggles/table.c:62 src/core/toggles/table.c:63
185   -msgid "Blinking Cursor"
186   -msgstr ""
187   -
188   -#: src/core/toggles/table.c:205 src/core/toggles/table.c:206
189   -msgid "Bold"
190   -msgstr ""
191   -
192   -#: src/core/actions/table.c:705 src/core/actions/table.c:706
193   -msgid "Break"
194   -msgstr ""
195   -
196   -#: src/network_modules/tools.c:113
197   -msgid "Broken pipe"
198   -msgstr ""
199   -
200   -#: src/core/ft/ftmessages.c:215
201   -msgid "CMS disk is full: file transfer canceled"
202   -msgstr ""
203   -
204   -#: src/core/ft/ftmessages.c:208
205   -msgid "CMS disk is not accessed: file transfer canceled"
206   -msgstr ""
207   -
208   -#: src/core/ft/ftmessages.c:201
209   -msgid "CMS disk is read-only: file transfer canceled"
210   -msgstr ""
211   -
212   -#: src/core/ft/ftmessages.c:194
213   -msgid "CMS file not found: file transfer canceled"
214   -msgstr ""
215   -
216   -#: src/network_modules/openssl/messages.c:134
217   -msgid "CRL signature failure"
218   -msgstr ""
219   -
220   -#: src/core/toggles/init.c:83 src/core/linux/connect.c:334
221   -#: src/core/windows/connect.c:372 src/core/macos/connect.c:334
222   -#, c-format
223   -msgid "Can't %s network keep-alive"
224   -msgstr ""
225   -
226   -#: src/core/windows/ldap.c:149
227   -msgid "Can't bind to LDAP server"
228   -msgstr ""
229   -
230   -#: src/core/linux/connect.c:215 src/core/linux/connect.c:269
231   -#: src/core/windows/connect.c:232 src/core/windows/connect.c:276
232   -#: src/core/macos/connect.c:215 src/core/macos/connect.c:269
233   -#, c-format
234   -msgid "Can't connect to %s:%s"
235   -msgstr ""
236   -
237   -#: src/core/windows/http.c:110
238   -msgid "Can't connect to HTTP server."
239   -msgstr ""
240   -
241   -#: src/core/linux/connect.c:165 src/core/windows/connect.c:197
242   -#: src/core/macos/connect.c:165
243   -msgid "Can't connect to host"
244   -msgstr ""
245   -
246   -#: src/core/windows/http.c:121
247   -msgid "Can't create HTTP request."
248   -msgstr ""
249   -
250   -#: src/network_modules/openssl/start.c:71
251   -msgid "Can't decode CRL data"
252   -msgstr ""
253   -
254   -#: src/core/linux/ldap.c:167 src/core/windows/ldap.c:204
255   -#: src/core/macos/ldap.c:167
256   -msgid "Can't decode certificate revocation list"
257   -msgstr ""
258   -
259   -#: src/core/connect.c:169
260   -msgid "Can't determine the TLS/SSL state"
261   -msgstr ""
262   -
263   -#: src/core/ft/ft.c:391
264   -msgid "Can't get file size"
265   -msgstr ""
266   -
267   -#: src/core/windows/ldap.c:133
268   -msgid "Can't initialize LDAP"
269   -msgstr ""
270   -
271   -#: src/core/linux/curl.c:171 src/core/macos/curl.c:171
272   -msgid "Can't initialize curl operation"
273   -msgstr ""
274   -
275   -#: src/network_modules/openssl/context.c:236
276   -msgid "Can't initialize the TLS/SSL context."
277   -msgstr ""
278   -
279   -#: src/core/session.c:176
280   -msgid "Can't load"
281   -msgstr ""
282   -
283   -#: src/network_modules/openssl/context.c:338
284   -#, c-format
285   -msgid "Can't load \"%s\": %s"
286   -msgstr ""
287   -
288   -#: src/network_modules/openssl/context.c:291
289   -#, c-format
290   -msgid "Can't open \"%s\" (The Windows error code was %ld)"
291   -msgstr ""
292   -
293   -#: src/network_modules/openssl/context.c:304
294   -#, c-format
295   -msgid "Can't open \"%s\": %s"
296   -msgstr ""
297   -
298   -#: src/core/windows/http.c:99
299   -msgid "Can't open HTTP session"
300   -msgstr ""
301   -
302   -#: src/core/session.c:164
303   -msgid "Can't print"
304   -msgstr ""
305   -
306   -#: src/network_modules/openssl/context.c:322
307   -#, c-format
308   -msgid "Can't read \"%s\": %s"
309   -msgstr ""
310   -
311   -#: src/core/windows/http.c:173
312   -msgid "Can't read HTTP response size."
313   -msgstr ""
314   -
315   -#: src/core/session.c:170
316   -msgid "Can't save"
317   -msgstr ""
318   -
319   -#: src/core/windows/http.c:134
320   -msgid "Can't send HTTP request."
321   -msgstr ""
322   -
323   -#: src/core/windows/ldap.c:141
324   -msgid "Can't set LDAP protocol version"
325   -msgstr ""
326   -
327   -#: src/network_modules/tools.c:190
328   -msgid "Can't set socket to blocking mode."
329   -msgstr ""
330   -
331   -#: src/network_modules/tools.c:190
332   -msgid "Can't set socket to non blocking mode"
333   -msgstr ""
334   -
335   -#: src/core/ft/ft.c:192
336   -msgid "Can't start file transfer."
337   -msgstr ""
338   -
339   -#: src/core/windows/connect.c:124
340   -msgid "Can't use this system winsock"
341   -msgstr ""
342   -
343   -#: src/core/ft/ft.c:151
344   -msgid "Cancelled by user"
345   -msgstr ""
346   -
347   -#: src/core/telnet.c:928
348   -msgid "Cannot connect to specified LU"
349   -msgstr ""
350   -
351   -#: src/network_modules/openssl/start.c:213
352   -msgid "Cant create a new SSL structure for current connection."
353   -msgstr ""
354   -
355   -#: src/network_modules/openssl/context.c:332
356   -msgid "Cant load custom certificate file."
357   -msgstr ""
358   -
359   -#: src/network_modules/openssl/context.c:286
360   -msgid "Cant open custom certificate directory."
361   -msgstr ""
362   -
363   -#: src/network_modules/openssl/context.c:316
364   -msgid "Cant read custom certificate file."
365   -msgstr ""
366   -
367   -#: src/network_modules/openssl/start.c:230
368   -msgid ""
369   -"Cant set the file descriptor for the input/output facility for the TLS/SSL "
370   -"(encrypted) side of ssl."
371   -msgstr ""
372   -
373   -#: src/network_modules/openssl/messages.c:156
374   -msgid "Certificate has expired"
375   -msgstr ""
376   -
377   -#: src/network_modules/openssl/messages.c:145
378   -msgid "Certificate is not yet valid"
379   -msgstr ""
380   -
381   -#: src/network_modules/openssl/messages.c:346
382   -msgid "Certificate not trusted"
383   -msgstr ""
384   -
385   -#: src/network_modules/openssl/messages.c:357
386   -msgid "Certificate rejected"
387   -msgstr ""
388   -
389   -#: src/network_modules/openssl/messages.c:302
390   -msgid "Certificate revoked"
391   -msgstr ""
392   -
393   -#: src/network_modules/openssl/messages.c:123
394   -msgid "Certificate signature failure"
395   -msgstr ""
396   -
397   -#: src/core/toggles/table.c:277
398   -msgid "Change screen size on alternative screen"
399   -msgstr ""
400   -
401   -#: src/core/telnet.c:1790
402   -msgid "Charset"
403   -msgstr ""
404   -
405   -#: src/core/actions/table.c:765
406   -msgid "Charset table"
407   -msgstr ""
408   -
409   -#: src/core/actions/table.c:588
410   -msgid "Clear"
411   -msgstr ""
412   -
413   -#: src/core/actions/table.c:589
414   -msgid "Clear AID key"
415   -msgstr ""
416   -
417   -#: src/core/ft/ftmessages.c:73
418   -msgid "Command incomplete: file transfer canceled"
419   -msgstr ""
420   -
421   -#: src/core/telnet.c:1784
422   -msgid "Connect"
423   -msgstr ""
424   -
425   -#: src/core/toggles/table.c:235
426   -msgid "Connect on startup"
427   -msgstr ""
428   -
429   -#: src/core/telnet.c:1764
430   -msgid "Connected initial"
431   -msgstr ""
432   -
433   -#: src/core/telnet.c:1782
434   -msgid "Connecting"
435   -msgstr ""
436   -
437   -#: src/network_modules/tools.c:160 src/core/linux/connect.c:230
438   -#: src/core/linux/connect.c:321 src/core/linux/connect.c:338
439   -#: src/core/windows/connect.c:358 src/core/windows/connect.c:376
440   -#: src/core/macos/connect.c:230 src/core/macos/connect.c:321
441   -#: src/core/macos/connect.c:338
442   -msgid "Connection error"
443   -msgstr ""
444   -
445   -#: src/network_modules/openssl/start.c:246
446   -msgid "Connection failed"
447   -msgstr ""
448   -
449   -#: src/network_modules/tools.c:122
450   -msgid "Connection reset by peer"
451   -msgstr ""
452   -
453   -#: src/core/properties/signed.c:55
454   -msgid "Connection state"
455   -msgstr ""
456   -
457   -#: src/network_modules/openssl/messages.c:80
458   -#: src/network_modules/openssl/messages.c:253
459   -#: src/network_modules/openssl/messages.c:268
460   -msgid "Continue"
461   -msgstr ""
462   -
463   -#: src/core/toggles/table.c:165 src/core/toggles/table.c:166
464   -msgid "Cross hair cursor"
465   -msgstr ""
466   -
467   -#: src/core/properties/unsigned.c:117
468   -msgid "Current screen height in rows"
469   -msgstr ""
470   -
471   -#: src/core/properties/unsigned.c:110
472   -msgid "Current screen width in columns"
473   -msgstr ""
474   -
475   -#: src/core/properties/signed.c:63
476   -msgid "Cursor address"
477   -msgstr ""
478   -
479   -#: src/core/actions/table.c:158
480   -msgid "Cursor down 1 position"
481   -msgstr ""
482   -
483   -#: src/core/actions/table.c:172
484   -msgid "Cursor left 1 position"
485   -msgstr ""
486   -
487   -#: src/core/actions/table.c:186
488   -msgid "Cursor right 1 position"
489   -msgstr ""
490   -
491   -#: src/core/actions/table.c:200
492   -msgid "Cursor to first field on next line or any lines after that"
493   -msgstr ""
494   -
495   -#: src/core/actions/table.c:228
496   -msgid "Cursor to next unprotected word"
497   -msgstr ""
498   -
499   -#: src/core/actions/table.c:214
500   -msgid "Cursor to previous word"
501   -msgstr ""
502   -
503   -#: src/core/actions/table.c:144
504   -msgid "Cursor up 1 position"
505   -msgstr ""
506   -
507   -#: src/core/actions/table.c:650
508   -msgid "DUP key"
509   -msgstr ""
510   -
511   -#: src/core/ft/ft_cut.c:163 src/core/ft/ft_cut.c:171
512   -msgid "Data conversion error"
513   -msgstr ""
514   -
515   -#: src/core/properties/string.c:159
516   -msgid "Default host URL"
517   -msgstr ""
518   -
519   -#: src/core/actions/table.c:635 src/core/actions/table.c:636
520   -msgid "Delete"
521   -msgstr ""
522   -
523   -#: src/core/actions/table.c:517 src/core/actions/table.c:518
524   -msgid "Delete field"
525   -msgstr ""
526   -
527   -#: src/core/actions/table.c:503
528   -msgid "Delete word"
529   -msgstr ""
530   -
531   -#: src/core/properties/string.c:173
532   -msgid "Description of the current security state"
533   -msgstr ""
534   -
535   -#: src/core/telnet.c:1175
536   -msgid "Device type rejected"
537   -msgstr ""
538   -
539   -#: src/core/actions/table.c:127
540   -msgid "Disconnect from host"
541   -msgstr ""
542   -
543   -#: src/core/ft/ft.c:244 src/network_modules/openssl/main.c:100
544   -#: src/network_modules/openssl/main.c:148
545   -msgid "Disconnected from host."
546   -msgstr ""
547   -
548   -#: src/core/properties/string.c:120
549   -msgid "Display charset"
550   -msgstr ""
551   -
552   -#: src/core/toggles/table.c:84
553   -msgid "Display the cursor location in the OIA (the status line)"
554   -msgstr ""
555   -
556   -#: src/core/actions/table.c:157
557   -msgid "Down"
558   -msgstr ""
559   -
560   -#: src/core/actions/table.c:649
561   -msgid "Dup"
562   -msgstr ""
563   -
564   -#: src/core/telnet.c:728
565   -msgid "EOR received when not in 3270 mode, ignored."
566   -msgstr ""
567   -
568   -#: src/core/windows/http.c:157
569   -msgid "Empty response from HTTP server."
570   -msgstr ""
571   -
572   -#: src/core/toggles/table.c:298
573   -msgid "Enable network in/out trace"
574   -msgstr ""
575   -
576   -#: src/core/toggles/table.c:287
577   -msgid "Enable network keep-alive with SO_KEEPALIVE"
578   -msgstr ""
579   -
580   -#: src/core/toggles/table.c:309
581   -msgid "Enable security negotiation trace"
582   -msgstr ""
583   -
584   -#: src/core/toggles/table.c:286
585   -msgid "Enable use of network keep alive"
586   -msgstr ""
587   -
588   -#: src/core/actions/table.c:605
589   -msgid "Enter"
590   -msgstr ""
591   -
592   -#: src/core/actions/table.c:574 src/core/actions/table.c:575
593   -msgid "Erase"
594   -msgstr ""
595   -
596   -#: src/core/actions/table.c:546
597   -msgid "Erase EOF"
598   -msgstr ""
599   -
600   -#: src/core/actions/table.c:560
601   -msgid "Erase EOL"
602   -msgstr ""
603   -
604   -#: src/core/actions/table.c:547
605   -msgid "Erase End Of Field"
606   -msgstr ""
607   -
608   -#: src/core/actions/table.c:561
609   -msgid "Erase End Of Line"
610   -msgstr ""
611   -
612   -#: src/core/actions/table.c:533
613   -msgid "Erase all unprotected fields"
614   -msgstr ""
615   -
616   -#: src/core/actions/table.c:532
617   -msgid "Erase input"
618   -msgstr ""
619   -
620   -#: src/network_modules/tools.c:100
621   -msgid "Erro sending data to host"
622   -msgstr ""
623   -
624   -#: src/core/ft/ft_dft.c:413 src/core/ft/ft_cut.c:408
625   -#, c-format
626   -msgid "Error \"%s\" reading from local file (rc=%d)"
627   -msgstr ""
628   -
629   -#: src/core/ft/ft_dft.c:306 src/core/ft/ft_cut.c:504
630   -#, c-format
631   -msgid "Error \"%s\" writing to local file (rc=%d)"
632   -msgstr ""
633   -
634   -#: src/core/ft/ftmessages.c:45
635   -msgid "Error in file transfer: file transfer canceled"
636   -msgstr ""
637   -
638   -#: src/core/ft/ftmessages.c:87
639   -msgid "Error reading file from host: file transfer canceled"
640   -msgstr ""
641   -
642   -#: src/network_modules/openssl/main.c:170
643   -msgid "Error reading from host"
644   -msgstr ""
645   -
646   -#: src/core/windows/http.c:145
647   -msgid "Error receiving HTTP response."
648   -msgstr ""
649   -
650   -#: src/network_modules/tools.c:66 src/network_modules/tools.c:82
651   -msgid "Error receiving data from host"
652   -msgstr ""
653   -
654   -#: src/core/ft/ftmessages.c:145
655   -msgid "Error while reading or writing to host disk: file transfer canceled"
656   -msgstr ""
657   -
658   -#: src/core/ft/ftmessages.c:80
659   -msgid "Error writing file to host: file transfer canceled"
660   -msgstr ""
661   -
662   -#: src/network_modules/openssl/main.c:123
663   -msgid "Error writing to host."
664   -msgstr ""
665   -
666   -#: src/core/telnet.c:1789
667   -msgid "Exiting"
668   -msgstr ""
669   -
670   -#: src/core/actions/table.c:663
671   -msgid "FM key"
672   -msgstr ""
673   -
674   -#: src/core/actions/table.c:664
675   -msgid "Field Mark"
676   -msgstr ""
677   -
678   -#: src/core/actions/table.c:443
679   -msgid "Field end"
680   -msgstr ""
681   -
682   -#: src/core/ft/ftmessages.c:52
683   -msgid "File transfer complete"
684   -msgstr ""
685   -
686   -#: src/core/ft/ftmessages.c:59
687   -msgid "File transfer complete with records segmented"
688   -msgstr ""
689   -
690   -#: src/core/ft/ft.c:247
691   -msgid "File transfer is already active in this session."
692   -msgstr ""
693   -
694   -#: src/core/actions/table.c:457
695   -msgid "First field"
696   -msgstr ""
697   -
698   -#: src/network_modules/openssl/messages.c:215
699   -msgid "Format error in CRL's lastUpdate field"
700   -msgstr ""
701   -
702   -#: src/network_modules/openssl/messages.c:226
703   -msgid "Format error in CRL's nextUpdate field"
704   -msgstr ""
705   -
706   -#: src/network_modules/openssl/messages.c:204
707   -msgid "Format error in certificate's notAfter field"
708   -msgstr ""
709   -
710   -#: src/network_modules/openssl/messages.c:193
711   -msgid "Format error in certificate's notBefore field"
712   -msgstr ""
713   -
714   -#: src/core/properties/boolean.c:177
715   -msgid "Formatted screen"
716   -msgstr ""
717   -
718   -#: src/core/toggles/table.c:175 src/core/toggles/table.c:176
719   -msgid "Full Screen"
720   -msgstr ""
721   -
722   -#: src/core/telnet.c:1783
723   -msgid "Half connect"
724   -msgstr ""
725   -
726   -#: src/core/properties/boolean.c:156
727   -msgid "Has selected area"
728   -msgstr ""
729   -
730   -#: src/core/properties/string.c:113
731   -msgid "Host charset"
732   -msgstr ""
733   -
734   -#: src/core/ft/ft.c:620
735   -msgid "Host disconnected, transfer cancelled"
736   -msgstr ""
737   -
738   -#: src/core/telnet.c:1233
739   -msgid "Host illegally added function(s)"
740   -msgstr ""
741   -
742   -#: src/core/ft/ftmessages.c:222
743   -msgid "Host program error code xxxxxxxxxx: file transfer canceled"
744   -msgstr ""
745   -
746   -#: src/core/telnet.c:1163
747   -msgid "Host rejected device type or request type"
748   -msgstr ""
749   -
750   -#: src/core/telnet.c:1173
751   -msgid "Host rejected resource(s)"
752   -msgstr ""
753   -
754   -#: src/core/properties/string.c:90
755   -msgid "Host type name"
756   -msgstr ""
757   -
758   -#: src/core/properties/unsigned.c:90
759   -msgid "Host type number"
760   -msgstr ""
761   -
762   -#: src/core/options.c:48
763   -msgid "IBM AS/400"
764   -msgstr ""
765   -
766   -#: src/core/options.c:42
767   -msgid "IBM S/390"
768   -msgstr ""
769   -
770   -#: src/core/properties/signed.c:77
771   -msgid "ID of the session security state"
772   -msgstr ""
773   -
774   -#: src/core/toggles/table.c:197
775   -msgid ""
776   -"If set the characters pasted over protected areas will be skipped to avoid "
777   -"locks"
778   -msgstr ""
779   -
780   -#: src/core/toggles/table.c:217
781   -msgid "If set the selection will not be removed on screen changes"
782   -msgstr ""
783   -
784   -#: src/core/toggles/table.c:177
785   -msgid "If set, asks to place the toplevel window in the fullscreen state"
786   -msgstr ""
787   -
788   -#: src/core/toggles/table.c:147
789   -msgid ""
790   -"If set, puts restrictions on how pasted text is placed on the screen. The "
791   -"position of the cursor at the time the paste operation is begun is used as a "
792   -"left margin. No pasted text will fill any area of the screen to the left of "
793   -"that position. This option is useful for pasting into certain IBM editors "
794   -"that use the left side of the screen for control information"
795   -msgstr ""
796   -
797   -#: src/core/toggles/table.c:105
798   -msgid ""
799   -"If set, the NVT terminal emulator automatically assumes a NEWLINE character "
800   -"when it reaches the end of a line."
801   -msgstr ""
802   -
803   -#: src/core/toggles/table.c:64
804   -msgid "If set, the cursor blinks"
805   -msgstr ""
806   -
807   -#: src/core/toggles/table.c:53
808   -msgid "If set, the terminal operates in uppercase-only mode"
809   -msgstr ""
810   -
811   -#: src/core/toggles/table.c:157
812   -msgid ""
813   -"If set, the terminal will always select rectangular areas of the screen. "
814   -"Otherwise, it selects continuous regions of the screen"
815   -msgstr ""
816   -
817   -#: src/core/toggles/table.c:167
818   -msgid ""
819   -"If set, the terminal will display a crosshair over the cursor: lines "
820   -"extending the full width and height of the screen, centered over the cursor "
821   -"position. This makes locating the cursor on the screen much easier"
822   -msgstr ""
823   -
824   -#: src/core/toggles/table.c:74
825   -msgid ""
826   -"If set, the time taken by the host to process an AID is displayed on the "
827   -"status line"
828   -msgstr ""
829   -
830   -#: src/core/ft/ft_cut.c:484
831   -msgid "Illegal frame length"
832   -msgstr ""
833   -
834   -#: src/core/ft/ftmessages.c:138
835   -msgid "Incorrect option specified: file transfer canceled"
836   -msgstr ""
837   -
838   -#: src/core/ft/ftmessages.c:101
839   -msgid "Incorrect request code: file transfer canceled"
840   -msgstr ""
841   -
842   -#: src/core/toggles/table.c:185
843   -msgid "Insert"
844   -msgstr ""
845   -
846   -#: src/network_modules/openssl/messages.c:313
847   -msgid "Invalid CA certificate"
848   -msgstr ""
849   -
850   -#: src/core/ft/ftmessages.c:166
851   -msgid "Invalid option xxxxxxxx with APPEND: file transfer canceled"
852   -msgstr ""
853   -
854   -#: src/core/ft/ftmessages.c:180
855   -msgid "Invalid option xxxxxxxx with PDS: file transfer canceled"
856   -msgstr ""
857   -
858   -#: src/core/ft/ftmessages.c:159
859   -msgid "Invalid option xxxxxxxx with RECEIVE: file transfer canceled"
860   -msgstr ""
861   -
862   -#: src/core/ft/ftmessages.c:173
863   -msgid "Invalid option xxxxxxxx without SPACE: file transfer canceled"
864   -msgstr ""
865   -
866   -#: src/core/ft/ftmessages.c:152
867   -msgid "Invalid option xxxxxxxx: file transfer canceled"
868   -msgstr ""
869   -
870   -#: src/core/ctlr.c:176 src/core/ctlr.c:188 src/core/ctlr.c:201
871   -#: src/core/ctlr.c:213
872   -msgid "Invalid oversize"
873   -msgstr ""
874   -
875   -#: src/core/properties/boolean.c:77
876   -msgid "Is connection secure"
877   -msgstr ""
878   -
879   -#: src/core/properties/boolean.c:170
880   -msgid "Is starting (no first screen)?"
881   -msgstr ""
882   -
883   -#: src/core/properties/boolean.c:70
884   -msgid "Is terminal connected"
885   -msgstr ""
886   -
887   -#: src/core/properties/boolean.c:149
888   -msgid "Is terminal in the INITIAL_E state?"
889   -msgstr ""
890   -
891   -#: src/core/properties/boolean.c:63
892   -msgid "Is terminal ready"
893   -msgstr ""
894   -
895   -#: src/core/toggles/table.c:215 src/core/toggles/table.c:216
896   -msgid "Keep selected"
897   -msgstr ""
898   -
899   -#: src/network_modules/openssl/messages.c:401
900   -msgid "Key usage does not include certificate signing"
901   -msgstr ""
902   -
903   -#: src/core/paste.c:375
904   -msgid "Keyboard is locked"
905   -msgstr ""
906   -
907   -#: src/core/properties/unsigned.c:169
908   -msgid "Keyboard lock status"
909   -msgstr ""
910   -
911   -#: src/core/windows/ldap.c:179
912   -msgid "LDAP Search did not produce any attributes."
913   -msgstr ""
914   -
915   -#: src/core/linux/ldap.c:147 src/core/macos/ldap.c:147
916   -msgid "LDAP search did not produce any attributes."
917   -msgstr ""
918   -
919   -#: src/core/linux/ldap.c:157 src/core/macos/ldap.c:157
920   -msgid "LDAP search did not produce any values."
921   -msgstr ""
922   -
923   -#: src/core/windows/ldap.c:186
924   -msgid "LDAPSearch did not produce any values."
925   -msgstr ""
926   -
927   -#: src/core/properties/signed.c:70
928   -msgid "Latest program message"
929   -msgstr ""
930   -
931   -#: src/core/actions/table.c:171
932   -msgid "Left"
933   -msgstr ""
934   -
935   -#: src/core/telnet.c:1786
936   -msgid "Line mode"
937   -msgstr ""
938   -
939   -#: src/core/properties/boolean.c:184
940   -msgid "Lock keyboard on operator error"
941   -msgstr ""
942   -
943   -#: src/core/toggles/table.c:145
944   -msgid "Margined paste"
945   -msgstr ""
946   -
947   -#: src/core/properties/unsigned.c:131
948   -msgid "Maximum screen height in rows"
949   -msgstr ""
950   -
951   -#: src/core/properties/unsigned.c:124
952   -msgid "Maximum screen width in columns"
953   -msgstr ""
954   -
955   -#: src/core/properties/string.c:82
956   -msgid "Model name"
957   -msgstr ""
958   -
959   -#: src/core/toggles/table.c:51
960   -msgid "Monocase"
961   -msgstr ""
962   -
963   -#: src/core/actions/table.c:329
964   -msgid "Move cursor down and select"
965   -msgstr ""
966   -
967   -#: src/core/actions/table.c:343
968   -msgid "Move cursor left and select"
969   -msgstr ""
970   -
971   -#: src/core/actions/table.c:357
972   -msgid "Move cursor rigth and select"
973   -msgstr ""
974   -
975   -#: src/core/actions/table.c:315
976   -msgid "Move cursor up and select"
977   -msgstr ""
978   -
979   -#: src/core/actions/table.c:385
980   -msgid "Move selection down"
981   -msgstr ""
982   -
983   -#: src/core/actions/table.c:399
984   -msgid "Move selection left"
985   -msgstr ""
986   -
987   -#: src/core/actions/table.c:413
988   -msgid "Move selection right"
989   -msgstr ""
990   -
991   -#: src/core/actions/table.c:371
992   -msgid "Move selection up"
993   -msgstr ""
994   -
995   -#: src/core/actions/table.c:444
996   -msgid ""
997   -"Move the cursor to the first blank after the last non blank in the field"
998   -msgstr ""
999   -
1000   -#: src/core/actions/table.c:458
1001   -msgid "Move to first unprotected field on screen"
1002   -msgstr ""
1003   -
1004   -#: src/core/actions/table.c:472
1005   -msgid "Move to the next unprotected field on screen"
1006   -msgstr ""
1007   -
1008   -#: src/core/actions/table.c:486
1009   -msgid "Move to the previous unprotected field on screen"
1010   -msgstr ""
1011   -
1012   -#: src/core/telnet.c:304 src/core/linux/event_dispatcher.c:130
1013   -#: src/core/linux/connect.c:200 src/core/windows/event_dispatcher.c:135
1014   -#: src/core/windows/connect.c:223 src/core/macos/event_dispatcher.c:130
1015   -#: src/core/macos/connect.c:200
1016   -msgid "Network error"
1017   -msgstr ""
1018   -
1019   -#: src/core/toggles/table.c:285
1020   -msgid "Network keep alive"
1021   -msgstr ""
1022   -
1023   -#: src/core/actions/table.c:199
1024   -msgid "New line"
1025   -msgstr ""
1026   -
1027   -#: src/core/actions/table.c:471
1028   -msgid "Next field"
1029   -msgstr ""
1030   -
1031   -#: src/core/actions/table.c:227
1032   -msgid "Next word"
1033   -msgstr ""
1034   -
1035   -#: src/network_modules/openssl/start.c:53
1036   -msgid "No LDAP support"
1037   -msgstr ""
1038   -
1039   -#: src/network_modules/default/main.c:149
1040   -msgid "No TLS/SSL support on this session"
1041   -msgstr ""
1042   -
1043   -#: src/core/linux/download.c:55 src/core/windows/download.c:62
1044   -#: src/core/macos/download.c:55
1045   -msgid "No handler for URL scheme."
1046   -msgstr ""
1047   -
1048   -#: src/network_modules/openssl/messages.c:292
1049   -msgid ""
1050   -"No signatures could be verified because the chain contains only one "
1051   -"certificate and it is not self signed."
1052   -msgstr ""
1053   -
1054   -#: src/core/ft/ft.c:97
1055   -msgid "No transfer in progress"
1056   -msgstr ""
1057   -
1058   -#: src/core/properties/boolean.c:198
1059   -msgid "Non zero if the download of CRL is enabled"
1060   -msgstr ""
1061   -
1062   -#: src/core/properties/boolean.c:93
1063   -msgid "Non zero if the host is AS400."
1064   -msgstr ""
1065   -
1066   -#: src/core/properties/boolean.c:85
1067   -msgid "Non zero if the host is TSO."
1068   -msgstr ""
1069   -
1070   -#: src/core/windows/connect.c:307
1071   -msgid "Not connected to host"
1072   -msgstr ""
1073   -
1074   -#: src/core/ft/ft.c:626
1075   -msgid "Not in 3270 mode, transfer cancelled"
1076   -msgstr ""
1077   -
1078   -#: src/core/ft/ftmessages.c:187
1079   -msgid "Only one of TRACKS, CYLINDERS, AVBLOCK allowed: file transfer canceled"
1080   -msgstr ""
1081   -
1082   -#: src/core/options.c:54
1083   -msgid "Other (TSO)"
1084   -msgstr ""
1085   -
1086   -#: src/core/options.c:60
1087   -msgid "Other (VM/CMS)"
1088   -msgstr ""
1089   -
1090   -#: src/network_modules/openssl/messages.c:237
1091   -msgid "Out of memory"
1092   -msgstr ""
1093   -
1094   -#: src/core/actions/table.c:782 src/core/actions/table.c:796
1095   -#: src/core/actions/table.c:810
1096   -msgid "PA1"
1097   -msgstr ""
1098   -
1099   -#: src/core/actions/table.c:241
1100   -msgid "Paste from file"
1101   -msgstr ""
1102   -
1103   -#: src/core/actions/table.c:242
1104   -msgid "Paste from text file"
1105   -msgstr ""
1106   -
1107   -#: src/core/actions/table.c:719 src/core/actions/table.c:720
1108   -msgid "Paste next"
1109   -msgstr ""
1110   -
1111   -#: src/core/toggles/table.c:146
1112   -msgid "Paste with left margin"
1113   -msgstr ""
1114   -
1115   -#: src/network_modules/openssl/messages.c:324
1116   -msgid "Path length constraint exceeded"
1117   -msgstr ""
1118   -
1119   -#: src/core/telnet.c:1763
1120   -msgid "Pending"
1121   -msgstr ""
1122   -
1123   -#: src/core/ft/ftmessages.c:66
1124   -msgid "Personal computer filespec incorrect: file transfer canceled"
1125   -msgstr ""
1126   -
1127   -#: src/core/properties/string.c:152
1128   -msgid "Preferred protocol for CRL download"
1129   -msgstr ""
1130   -
1131   -#: src/core/actions/table.c:485
1132   -msgid "Previous field"
1133   -msgstr ""
1134   -
1135   -#: src/core/actions/table.c:213
1136   -msgid "Previous word"
1137   -msgstr ""
1138   -
1139   -#: src/core/telnet.c:1788
1140   -msgid "Printer"
1141   -msgstr ""
1142   -
1143   -#: src/core/actions/table.c:783
1144   -msgid "Program Action 1"
1145   -msgstr ""
1146   -
1147   -#: src/core/actions/table.c:797
1148   -msgid "Program Action 2"
1149   -msgstr ""
1150   -
1151   -#: src/core/actions/table.c:811
1152   -msgid "Program Action 3"
1153   -msgstr ""
1154   -
1155   -#: src/core/rpq.c:229
1156   -#, c-format
1157   -msgid "RPQ %s term omitted due to insufficient space"
1158   -msgstr ""
1159   -
1160   -#: src/core/rpq.c:338
1161   -#, c-format
1162   -msgid "RPQ %s term override ignored"
1163   -msgstr ""
1164   -
1165   -#: src/core/rpq.c:642 src/core/rpq.c:712
1166   -#, c-format
1167   -msgid "RPQ ADDRESS term has unrecognized family %u"
1168   -msgstr ""
1169   -
1170   -#: src/core/rpq.c:650 src/core/rpq.c:679 src/core/rpq.c:719
1171   -msgid "RPQ ADDRESS term incomplete due to space limit"
1172   -msgstr ""
1173   -
1174   -#: src/core/rpq.c:222
1175   -msgid "RPQ Error"
1176   -msgstr ""
1177   -
1178   -#: src/core/rpq.c:403 src/core/rpq.c:412
1179   -msgid "RPQ TIMEZONE term is invalid - use +/-hhmm"
1180   -msgstr ""
1181   -
1182   -#: src/core/rpq.c:520
1183   -msgid "RPQ USER term has non-hex character"
1184   -msgstr ""
1185   -
1186   -#: src/core/rpq.c:545
1187   -msgid "RPQ USER term has odd number of hex digits"
1188   -msgstr ""
1189   -
1190   -#: src/core/rpq.c:526
1191   -#, c-format
1192   -msgid "RPQ USER term truncated after %d bytes"
1193   -msgstr ""
1194   -
1195   -#: src/core/rpq.c:570
1196   -#, c-format
1197   -msgid "RPQ USER term truncated after %d characters"
1198   -msgstr ""
1199   -
1200   -#: src/core/rpq.c:350
1201   -#, c-format
1202   -msgid "RPQ term \"%s\" is unrecognized"
1203   -msgstr ""
1204   -
1205   -#: src/core/rpq.c:224
1206   -#, c-format
1207   -msgid "RPQ term %d is unknown"
1208   -msgstr ""
1209   -
1210   -#: src/core/rpq.c:465
1211   -msgid "RPQ timezone exceeds 12 hour UTC offset"
1212   -msgstr ""
1213   -
1214   -#: src/core/rpq.c:434 src/core/rpq.c:444
1215   -msgid "RPQ: Unable to determine workstation UTC time"
1216   -msgstr ""
1217   -
1218   -#: src/core/rpq.c:424
1219   -msgid "RPQ: Unable to determine workstation local time"
1220   -msgstr ""
1221   -
1222   -#: src/core/rpq.c:655
1223   -#, c-format
1224   -msgid "RPQ: can't resolve '%s': %s"
1225   -msgstr ""
1226   -
1227   -#: src/core/rpq.c:668
1228   -msgid "RPQ: gethostbyname error"
1229   -msgstr ""
1230   -
1231   -#: src/core/actions/table.c:113
1232   -msgid "Reconnect to the same host"
1233   -msgstr ""
1234   -
1235   -#: src/core/telnet.c:1787
1236   -msgid "Remodel"
1237   -msgstr ""
1238   -
1239   -#: src/core/actions/table.c:272 src/core/actions/table.c:273
1240   -msgid "Remove selection"
1241   -msgstr ""
1242   -
1243   -#: src/core/ft/ft.c:192
1244   -msgid "Request failed"
1245   -msgstr ""
1246   -
1247   -#: src/core/ft/ftmessages.c:94
1248   -msgid "Required host storage unavailable: file transfer canceled"
1249   -msgstr ""
1250   -
1251   -#: src/core/actions/table.c:286 src/core/actions/table.c:287
1252   -msgid "Reselect"
1253   -msgstr ""
1254   -
1255   -#: src/core/actions/table.c:620
1256   -msgid "Reset"
1257   -msgstr ""
1258   -
1259   -#: src/core/actions/table.c:621
1260   -msgid "Reset keyboard lock"
1261   -msgstr ""
1262   -
1263   -#: src/core/toggles/table.c:276
1264   -msgid "Resize on alternate screen"
1265   -msgstr ""
1266   -
1267   -#: src/core/telnet.c:1762 src/core/telnet.c:1781
1268   -msgid "Resolving"
1269   -msgstr ""
1270   -
1271   -#: src/core/actions/table.c:185
1272   -msgid "Right"
1273   -msgstr ""
1274   -
1275   -#: src/core/ft/ftmessages.c:188
1276   -msgid ""
1277   -"SPACE can be specified in units of TRACKS, CYLINDERS, or AVBLOCK, and only "
1278   -"one option can be used."
1279   -msgstr ""
1280   -
1281   -#: src/network_modules/openssl/start.c:229
1282   -msgid "SSL negotiation failed"
1283   -msgstr ""
1284   -
1285   -#: src/core/properties/unsigned.c:138
1286   -msgid "Screen buffer length in bytes"
1287   -msgstr ""
1288   -
1289   -#: src/core/properties/string.c:181
1290   -msgid "Screen oversize if larger than the chosen model"
1291   -msgstr ""
1292   -
1293   -#: src/network_modules/openssl/messages.c:52
1294   -msgid "Secure connection was successful."
1295   -msgstr ""
1296   -
1297   -#: src/core/actions/table.c:328
1298   -msgid "Select Down"
1299   -msgstr ""
1300   -
1301   -#: src/core/actions/table.c:429
1302   -msgid "Select Field"
1303   -msgstr ""
1304   -
1305   -#: src/core/actions/table.c:342
1306   -msgid "Select Left"
1307   -msgstr ""
1308   -
1309   -#: src/core/actions/table.c:314
1310   -msgid "Select UP"
1311   -msgstr ""
1312   -
1313   -#: src/core/actions/table.c:258 src/core/actions/table.c:259
1314   -msgid "Select all"
1315   -msgstr ""
1316   -
1317   -#: src/core/toggles/table.c:155 src/core/toggles/table.c:156
1318   -msgid "Select by rectangles"
1319   -msgstr ""
1320   -
1321   -#: src/core/actions/table.c:428
1322   -msgid "Select field"
1323   -msgstr ""
1324   -
1325   -#: src/core/actions/table.c:356
1326   -msgid "Select right"
1327   -msgstr ""
1328   -
1329   -#: src/core/actions/table.c:300 src/core/actions/table.c:301
1330   -msgid "Select word"
1331   -msgstr ""
1332   -
1333   -#: src/core/linux/event_dispatcher.c:131
1334   -#: src/core/windows/event_dispatcher.c:136
1335   -#: src/core/macos/event_dispatcher.c:131
1336   -msgid "Select() failed when processing for events."
1337   -msgstr ""
1338   -
1339   -#: src/core/actions/table.c:384
1340   -msgid "Selection down"
1341   -msgstr ""
1342   -
1343   -#: src/core/actions/table.c:398
1344   -msgid "Selection left"
1345   -msgstr ""
1346   -
1347   -#: src/core/actions/table.c:412
1348   -msgid "Selection right"
1349   -msgstr ""
1350   -
1351   -#: src/core/actions/table.c:370
1352   -msgid "Selection up"
1353   -msgstr ""
1354   -
1355   -#: src/network_modules/openssl/messages.c:252
1356   -msgid "Self signed certificate"
1357   -msgstr ""
1358   -
1359   -#: src/network_modules/openssl/messages.c:269
1360   -msgid "Self signed certificate in certificate chain"
1361   -msgstr ""
1362   -
1363   -#: src/core/actions/table.c:606
1364   -msgid "Send an \"Enter\" action"
1365   -msgstr ""
1366   -
1367   -#: src/core/toggles/table.c:186
1368   -msgid "Set insert mode"
1369   -msgstr ""
1370   -
1371   -#: src/core/toggles/table.c:265
1372   -msgid "Show Field"
1373   -msgstr ""
1374   -
1375   -#: src/core/toggles/table.c:266
1376   -msgid "Show Field attributes"
1377   -msgstr ""
1378   -
1379   -#: src/core/toggles/table.c:226
1380   -msgid "Show Underline"
1381   -msgstr ""
1382   -
1383   -#: src/core/actions/table.c:766
1384   -msgid "Show charset table"
1385   -msgstr ""
1386   -
1387   -#: src/core/actions/table.c:752
1388   -msgid "Show test pattern"
1389   -msgstr ""
1390   -
1391   -#: src/core/toggles/table.c:72 src/core/toggles/table.c:73
1392   -msgid "Show timer when processing"
1393   -msgstr ""
1394   -
1395   -#: src/core/toggles/table.c:195 src/core/toggles/table.c:196
1396   -msgid "Smart paste"
1397   -msgstr ""
1398   -
1399   -#: src/network_modules/tools.c:173 src/network_modules/tools.c:189
1400   -msgid "Socket error"
1401   -msgstr ""
1402   -
1403   -#: src/core/toggles/table.c:255
1404   -msgid "Sound"
1405   -msgstr ""
1406   -
1407   -#: src/core/properties/boolean.c:128
1408   -msgid "State is 3270, TN3270e or SSCP"
1409   -msgstr ""
1410   -
1411   -#: src/core/properties/boolean.c:163
1412   -msgid "Still have text to paste"
1413   -msgstr ""
1414   -
1415   -#: src/network_modules/openssl/messages.c:368
1416   -msgid "Subject issuer mismatch"
1417   -msgstr ""
1418   -
1419   -#: src/core/actions/table.c:733
1420   -msgid "Sys Req"
1421   -msgstr ""
1422   -
1423   -#: src/core/actions/table.c:734
1424   -msgid "Sys Request"
1425   -msgstr ""
1426   -
1427   -#: src/core/telnet.c:995
1428   -msgid "TLS negotiation failure"
1429   -msgstr ""
1430   -
1431   -#: src/core/telnet.c:1766
1432   -msgid "TN3270 3270"
1433   -msgstr ""
1434   -
1435   -#: src/core/telnet.c:1765
1436   -msgid "TN3270 NVT"
1437   -msgstr ""
1438   -
1439   -#: src/core/telnet.c:1767
1440   -msgid "TN3270E"
1441   -msgstr ""
1442   -
1443   -#: src/core/telnet.c:1770
1444   -msgid "TN3270E 3270"
1445   -msgstr ""
1446   -
1447   -#: src/core/telnet.c:1768
1448   -msgid "TN3270E NVT"
1449   -msgstr ""
1450   -
1451   -#: src/core/telnet.c:1769
1452   -msgid "TN3270E SSCP-LU"
1453   -msgstr ""
1454   -
1455   -#: src/core/properties/unsigned.c:99
1456   -msgid "Terminal model"
1457   -msgstr ""
1458   -
1459   -#: src/core/properties/string.c:104
1460   -msgid "Terminal name"
1461   -msgstr ""
1462   -
1463   -#: src/core/properties/string.c:97
1464   -msgid "Terminal type"
1465   -msgstr ""
1466   -
1467   -#: src/core/actions/table.c:751
1468   -msgid "Test pattern"
1469   -msgstr ""
1470   -
1471   -#: src/core/ft/ftmessages.c:216
1472   -msgid ""
1473   -"The CMS disk is full, or the maximum number of files on the minidisk (3400) "
1474   -"has been reached, or the maximum number of data blocks per file (16060) has "
1475   -"been reached."
1476   -msgstr ""
1477   -
1478   -#: src/network_modules/openssl/messages.c:182
1479   -msgid "The CRL has expired."
1480   -msgstr ""
1481   -
1482   -#: src/network_modules/openssl/messages.c:167
1483   -msgid "The CRL is not yet valid."
1484   -msgstr ""
1485   -
1486   -#: src/network_modules/openssl/messages.c:216
1487   -msgid "The CRL lastUpdate field contains an invalid time."
1488   -msgstr ""
1489   -
1490   -#: src/network_modules/openssl/messages.c:227
1491   -msgid "The CRL nextUpdate field contains an invalid time."
1492   -msgstr ""
1493   -
1494   -#: src/network_modules/openssl/messages.c:102
1495   -msgid ""
1496   -"The CRL signature could not be decrypted: this means that the actual "
1497   -"signature value could not be determined rather than it not matching the "
1498   -"expected value. Unused."
1499   -msgstr ""
1500   -
1501   -#: src/network_modules/openssl/messages.c:183
1502   -msgid "The Certificate revocation list (CRL) has expired."
1503   -msgstr ""
1504   -
1505   -#: src/network_modules/openssl/messages.c:168
1506   -msgid "The Certificate revocation list (CRL) is not yet valid."
1507   -msgstr ""
1508   -
1509   -#: src/network_modules/openssl/messages.c:79
1510   -msgid ""
1511   -"The Certificate revocation list (CRL) of a certificate could not be found."
1512   -msgstr ""
1513   -
1514   -#: src/network_modules/openssl/main.c:124
1515   -#: src/network_modules/openssl/main.c:171
1516   -#, c-format
1517   -msgid "The SSL error message was %s"
1518   -msgstr ""
1519   -
1520   -#: src/core/linux/connect.c:191 src/core/macos/connect.c:191
1521   -#, c-format
1522   -msgid "The System error was '%s' (rc=%d)"
1523   -msgstr ""
1524   -
1525   -#: src/core/linux/ldap.c:82 src/core/linux/ldap.c:91
1526   -#: src/core/windows/ldap.c:101 src/core/windows/ldap.c:110
1527   -#: src/core/macos/ldap.c:82 src/core/macos/ldap.c:91
1528   -msgid "The URL argument should be in the format ldap://[HOST]/[DN]?attribute"
1529   -msgstr ""
1530   -
1531   -#: src/network_modules/openssl/messages.c:325
1532   -msgid "The basicConstraints pathlength parameter has been exceeded."
1533   -msgstr ""
1534   -
1535   -#: src/network_modules/openssl/messages.c:270
1536   -msgid ""
1537   -"The certificate chain could be built up using the untrusted certificates but "
1538   -"the root could not be found locally."
1539   -msgstr ""
1540   -
1541   -#: src/network_modules/openssl/messages.c:303
1542   -msgid "The certificate has been revoked."
1543   -msgstr ""
1544   -
1545   -#: src/network_modules/openssl/messages.c:157
1546   -msgid ""
1547   -"The certificate has expired: that is the notAfter date is before the current "
1548   -"time."
1549   -msgstr ""
1550   -
1551   -#: src/network_modules/openssl/messages.c:146
1552   -msgid ""
1553   -"The certificate is not yet valid: the notBefore date is after the current "
1554   -"time."
1555   -msgstr ""
1556   -
1557   -#: src/network_modules/openssl/messages.c:205
1558   -msgid "The certificate notAfter field contains an invalid time."
1559   -msgstr ""
1560   -
1561   -#: src/network_modules/openssl/messages.c:194
1562   -msgid "The certificate notBefore field contains an invalid time."
1563   -msgstr ""
1564   -
1565   -#: src/network_modules/openssl/messages.c:91
1566   -msgid ""
1567   -"The certificate signature could not be decrypted. This means that the actual "
1568   -"signature value could not be determined rather than it not matching the "
1569   -"expected value, this is only meaningful for RSA keys."
1570   -msgstr ""
1571   -
1572   -#: src/core/properties/unsigned.c:81
1573   -msgid "The color type"
1574   -msgstr ""
1575   -
1576   -#: src/network_modules/state.c:77
1577   -msgid "The connection is insecure"
1578   -msgstr ""
1579   -
1580   -#: src/network_modules/openssl/messages.c:53
1581   -msgid "The connection is secure and the host identity was confirmed."
1582   -msgstr ""
1583   -
1584   -#: src/network_modules/openssl/messages.c:391
1585   -msgid ""
1586   -"The current candidate issuer certificate was rejected because its issuer "
1587   -"name and serial number was present and did not match the authority key "
1588   -"identifier of the current certificate. Only displayed when the -"
1589   -"issuer_checks option is set."
1590   -msgstr ""
1591   -
1592   -#: src/network_modules/openssl/messages.c:402
1593   -msgid ""
1594   -"The current candidate issuer certificate was rejected because its keyUsage "
1595   -"extension does not permit certificate signing."
1596   -msgstr ""
1597   -
1598   -#: src/network_modules/openssl/messages.c:380
1599   -msgid ""
1600   -"The current candidate issuer certificate was rejected because its subject "
1601   -"key identifier was present and did not match the authority key identifier "
1602   -"current certificate. Only displayed when the -issuer_checks option is set."
1603   -msgstr ""
1604   -
1605   -#: src/network_modules/openssl/messages.c:369
1606   -msgid ""
1607   -"The current candidate issuer certificate was rejected because its subject "
1608   -"name did not match the issuer name of the current certificate. Only "
1609   -"displayed when the -issuer_checks option is set."
1610   -msgstr ""
1611   -
1612   -#: src/core/properties/unsigned.c:162
1613   -msgid "The delay between the host unlocking the keyboard and the actual unlock"
1614   -msgstr ""
1615   -
1616   -#: src/core/ft/ftmessages.c:60
1617   -msgid ""
1618   -"The file transfer operation has been completed, and any record greater than "
1619   -"the logical record length (LRECL) of the file being appended has been "
1620   -"divided and becomes multiple records."
1621   -msgstr ""
1622   -
1623   -#: src/core/ft/ftmessages.c:53
1624   -msgid "The file transfer operation has been successfully completed."
1625   -msgstr ""
1626   -
1627   -#: src/core/ctlr.c:215
1628   -#, c-format
1629   -msgid "The height %d is less than model %d rows (%d)"
1630   -msgstr ""
1631   -
1632   -#: src/core/ft/ftmessages.c:81 src/core/ft/ftmessages.c:88
1633   -msgid ""
1634   -"The host program has detected an error in the file data during a RECEIVE "
1635   -"operation."
1636   -msgstr ""
1637   -
1638   -#: src/network_modules/openssl/messages.c:281
1639   -msgid ""
1640   -"The issuer certificate could not be found: this occurs if the issuer "
1641   -"certificate of an untrusted certificate cannot be found."
1642   -msgstr ""
1643   -
1644   -#: src/network_modules/openssl/messages.c:64
1645   -msgid ""
1646   -"The issuer certificate of a looked up certificate could not be found. This "
1647   -"normally means the list of trusted certificates is not complete."
1648   -msgstr ""
1649   -
1650   -#: src/core/properties/string.c:189
1651   -msgid "The log file name"
1652   -msgstr ""
1653   -
1654   -#: src/core/properties/unsigned.c:100
1655   -msgid "The model number"
1656   -msgstr ""
1657   -
1658   -#: src/core/properties/string.c:62
1659   -msgid "The name of the LU associated with the session"
1660   -msgstr ""
1661   -
1662   -#: src/core/connect.c:170
1663   -msgid ""
1664   -"The network module didn't set the TLS/SSL state message, this is not "
1665   -"supposed to happen and can be a coding error"
1666   -msgstr ""
1667   -
1668   -#: src/core/ctlr.c:214
1669   -msgid "The oversize height is too small."
1670   -msgstr ""
1671   -
1672   -#: src/core/ctlr.c:177
1673   -msgid "The oversize values are invalid."
1674   -msgstr ""
1675   -
1676   -#: src/core/ctlr.c:189
1677   -msgid "The oversize values are too big."
1678   -msgstr ""
1679   -
1680   -#: src/core/ctlr.c:202
1681   -msgid "The oversize width is too small."
1682   -msgstr ""
1683   -
1684   -#: src/network_modules/openssl/messages.c:254
1685   -msgid ""
1686   -"The passed certificate is self signed and the same certificate cannot be "
1687   -"found in the list of trusted certificates."
1688   -msgstr ""
1689   -
1690   -#: src/network_modules/openssl/messages.c:113
1691   -msgid ""
1692   -"The public key in the certificate SubjectPublicKeyInfo could not be read."
1693   -msgstr ""
1694   -
1695   -#: src/core/ft/ft.c:251
1696   -msgid "The remote file name is invalid."
1697   -msgstr ""
1698   -
1699   -#: src/network_modules/openssl/messages.c:358
1700   -msgid "The root CA is marked to reject the specified purpose."
1701   -msgstr ""
1702   -
1703   -#: src/network_modules/openssl/messages.c:347
1704   -msgid "The root CA is not marked as trusted for the specified purpose."
1705   -msgstr ""
1706   -
1707   -#: src/network_modules/openssl/main.c:102
1708   -#: src/network_modules/openssl/main.c:150
1709   -msgid "The secure connection has been closed cleanly."
1710   -msgstr ""
1711   -
1712   -#: src/core/properties/string.c:166
1713   -msgid "The security state"
1714   -msgstr ""
1715   -
1716   -#: src/network_modules/default/main.c:148
1717   -msgid "The session is not secure"
1718   -msgstr ""
1719   -
1720   -#: src/network_modules/openssl/messages.c:124
1721   -#: src/network_modules/openssl/messages.c:135
1722   -msgid "The signature of the certificate is invalid."
1723   -msgstr ""
1724   -
1725   -#: src/network_modules/openssl/messages.c:336
1726   -msgid "The supplied certificate cannot be used for the specified purpose."
1727   -msgstr ""
1728   -
1729   -#: src/network_modules/tools.c:114 src/network_modules/tools.c:123
1730   -#, c-format
1731   -msgid "The system error code was %d"
1732   -msgstr ""
1733   -
1734   -#: src/network_modules/tools.c:83 src/network_modules/tools.c:135
1735   -#, c-format
1736   -msgid "The system error code was %d (%s)"
1737   -msgstr ""
1738   -
1739   -#: src/core/windows/connect.c:239
1740   -#, c-format
1741   -msgid "The system error was \"%s\""
1742   -msgstr ""
1743   -
1744   -#: src/core/linux/connect.c:222 src/core/linux/connect.c:282
1745   -#: src/core/windows/connect.c:298 src/core/windows/connect.c:306
1746   -#: src/core/windows/connect.c:314 src/core/windows/connect.c:324
1747   -#: src/core/macos/connect.c:222 src/core/macos/connect.c:282
1748   -#, c-format
1749   -msgid "The system error was \"%s\" (rc=%d)"
1750   -msgstr ""
1751   -
1752   -#: src/core/windows/connect.c:225 src/core/windows/connect.c:360
1753   -#: src/core/windows/connect.c:378
1754   -#, c-format
1755   -msgid "The system error was %s"
1756   -msgstr ""
1757   -
1758   -#: src/core/util.c:266
1759   -#, c-format
1760   -msgid "The system error was '%s' (rc=%d)"
1761   -msgstr ""
1762   -
1763   -#: src/core/properties/string.c:197
1764   -msgid "The trace file name"
1765   -msgstr ""
1766   -
1767   -#: src/core/ctlr.c:203
1768   -#, c-format
1769   -msgid "The width %d is less than model %d columns (%d)"
1770   -msgstr ""
1771   -
1772   -#: src/network_modules/tools.c:67 src/network_modules/tools.c:101
1773   -#, c-format
1774   -msgid "The windows error code was %u"
1775   -msgstr ""
1776   -
1777   -#: src/core/ft/ftmessages.c:146
1778   -msgid "There is not enough space available for data on the host."
1779   -msgstr ""
1780   -
1781   -#: src/core/ft/ftmessages.c:223
1782   -msgid "This is a host program error."
1783   -msgstr ""
1784   -
1785   -#: src/core/properties/unsigned.c:146
1786   -msgid "Time for auto-reconnect"
1787   -msgstr ""
1788   -
1789   -#: src/core/windows/connect.c:299
1790   -msgid "Timeout conneting to host"
1791   -msgstr ""
1792   -
1793   -#: src/core/toggles/table.c:93 src/core/toggles/table.c:94
1794   -msgid "Trace Data Stream"
1795   -msgstr ""
1796   -
1797   -#: src/core/toggles/table.c:135
1798   -msgid "Trace Events"
1799   -msgstr ""
1800   -
1801   -#: src/core/toggles/table.c:296
1802   -msgid "Trace Network"
1803   -msgstr ""
1804   -
1805   -#: src/core/toggles/table.c:308
1806   -msgid "Trace SSL negotiation"
1807   -msgstr ""
1808   -
1809   -#: src/core/toggles/table.c:124
1810   -msgid "Trace Screen"
1811   -msgstr ""
1812   -
1813   -#: src/core/toggles/table.c:307
1814   -msgid "Trace Security"
1815   -msgstr ""
1816   -
1817   -#: src/core/toggles/table.c:136
1818   -msgid "Trace interface and application events"
1819   -msgstr ""
1820   -
1821   -#: src/core/toggles/table.c:297
1822   -msgid "Trace network data flow"
1823   -msgstr ""
1824   -
1825   -#: src/core/toggles/table.c:125
1826   -msgid "Trace screen contents"
1827   -msgstr ""
1828   -
1829   -#: src/core/toggles/table.c:82
1830   -msgid "Track Cursor"
1831   -msgstr ""
1832   -
1833   -#: src/core/toggles/table.c:83
1834   -msgid "Track Cursor location"
1835   -msgstr ""
1836   -
1837   -#: src/core/ft/ft_cut.c:360
1838   -msgid "Transfer cancelled by host"
1839   -msgstr ""
1840   -
1841   -#: src/core/ft/ft_dft.c:213 src/core/ft/ft_dft.c:344 src/core/ft/ft_cut.c:387
1842   -#: src/core/ft/ft_cut.c:475
1843   -msgid "Transfer cancelled by user"
1844   -msgstr ""
1845   -
1846   -#: src/core/ft/ft.c:526
1847   -msgid "Transfer complete"
1848   -msgstr ""
1849   -
1850   -#: src/core/ft/ft.c:530
1851   -msgid "Transfer failed"
1852   -msgstr ""
1853   -
1854   -#: src/core/ft/ft_cut.c:447
1855   -msgid "Transmission error"
1856   -msgstr ""
1857   -
1858   -#: src/core/linux/connect.c:166 src/core/windows/connect.c:198
1859   -#: src/core/macos/connect.c:166
1860   -msgid "Try again"
1861   -msgstr ""
1862   -
1863   -#: src/core/properties/string.c:74
1864   -msgid "URL of the current host"
1865   -msgstr ""
1866   -
1867   -#: src/core/ft/ft_dft.c:161
1868   -msgid "Uknown DFT Open type from host"
1869   -msgstr ""
1870   -
1871   -#: src/network_modules/openssl/messages.c:112
1872   -msgid "Unable to decode issuer public key"
1873   -msgstr ""
1874   -
1875   -#: src/network_modules/openssl/messages.c:101
1876   -msgid "Unable to decrypt CRL's signature"
1877   -msgstr ""
1878   -
1879   -#: src/network_modules/openssl/messages.c:90
1880   -msgid "Unable to decrypt certificate's signature"
1881   -msgstr ""
1882   -
1883   -#: src/network_modules/openssl/messages.c:78
1884   -msgid "Unable to get certificate CRL."
1885   -msgstr ""
1886   -
1887   -#: src/core/linux/connect.c:201 src/core/windows/connect.c:224
1888   -#: src/core/macos/connect.c:201
1889   -msgid "Unable to get connection state."
1890   -msgstr ""
1891   -
1892   -#: src/network_modules/openssl/messages.c:63
1893   -msgid "Unable to get issuer certificate"
1894   -msgstr ""
1895   -
1896   -#: src/network_modules/openssl/messages.c:280
1897   -msgid "Unable to get local issuer certificate"
1898   -msgstr ""
1899   -
1900   -#: src/core/session.c:176
1901   -msgid "Unable to load from file"
1902   -msgstr ""
1903   -
1904   -#: src/network_modules/openssl/start.c:247
1905   -msgid "Unable to negotiate a secure connection with the host"
1906   -msgstr ""
1907   -
1908   -#: src/core/paste.c:374
1909   -msgid "Unable to paste text"
1910   -msgstr ""
1911   -
1912   -#: src/core/session.c:164
1913   -msgid "Unable to print"
1914   -msgstr ""
1915   -
1916   -#: src/core/session.c:170
1917   -msgid "Unable to save"
1918   -msgstr ""
1919   -
1920   -#: src/core/ft/ft.c:478
1921   -msgid "Unable to send file-transfer request"
1922   -msgstr ""
1923   -
1924   -#: src/network_modules/openssl/messages.c:291
1925   -msgid "Unable to verify the first certificate"
1926   -msgstr ""
1927   -
1928   -#: src/core/telnet.c:1761
1929   -msgid "Unconnected"
1930   -msgstr ""
1931   -
1932   -#: src/core/toggles/table.c:225
1933   -msgid "Underline"
1934   -msgstr ""
1935   -
1936   -#: src/network_modules/openssl/start.c:268
1937   -msgid "Unexpected I/O error"
1938   -msgstr ""
1939   -
1940   -#: src/core/paste.c:375
1941   -msgid "Unexpected error"
1942   -msgstr ""
1943   -
1944   -#: src/network_modules/tools.c:134
1945   -msgid "Unexpected error writing to network socket"
1946   -msgstr ""
1947   -
1948   -#: src/core/keyboard/kybd.c:269
1949   -#, c-format
1950   -msgid "Unexpected type %d in typeahead queue"
1951   -msgstr ""
1952   -
1953   -#: src/core/telnet.c:1774 src/core/telnet.c:1794
1954   -msgid "Unknown"
1955   -msgstr ""
1956   -
1957   -#: src/core/ctlr.c:626
1958   -#, c-format
1959   -msgid "Unknown 3270 Data Stream command: 0x%X"
1960   -msgstr ""
1961   -
1962   -#: src/core/ft/ft_cut.c:368
1963   -msgid "Unknown FT control code from host"
1964   -msgstr ""
1965   -
1966   -#: src/core/keyboard/kybd.c:1547
1967   -#, c-format
1968   -msgid "Unknown PA key %d"
1969   -msgstr ""
1970   -
1971   -#: src/core/keyboard/kybd.c:1560
1972   -#, c-format
1973   -msgid "Unknown PF key %d"
1974   -msgstr ""
1975   -
1976   -#: src/core/ft/ft_cut.c:297
1977   -msgid "Unknown frame type from host"
1978   -msgstr ""
1979   -
1980   -#: src/core/properties/unsigned.c:161
1981   -msgid "Unlock delay"
1982   -msgstr ""
1983   -
1984   -#: src/core/rpq.c:223
1985   -msgid "Unsupported RPQ term"
1986   -msgstr ""
1987   -
1988   -#: src/network_modules/openssl/messages.c:335
1989   -msgid "Unsupported certificate purpose"
1990   -msgstr ""
1991   -
1992   -#: src/core/actions/table.c:143
1993   -msgid "Up"
1994   -msgstr ""
1995   -
1996   -#: src/core/toggles/table.c:52
1997   -msgid "Uppercase only"
1998   -msgstr ""
1999   -
2000   -#: src/core/toggles/table.c:245 src/core/toggles/table.c:246
2001   -msgid "Use +/- for field navigation"
2002   -msgstr ""
2003   -
2004   -#: src/core/toggles/table.c:247
2005   -msgid "Use the keys +/- from keypad to select editable fields"
2006   -msgstr ""
2007   -
2008   -#: src/core/windows/connect.c:111
2009   -msgid "WSAStartup failed"
2010   -msgstr ""
2011   -
2012   -#: src/core/ft/ft.c:487
2013   -msgid "Waiting for GET response"
2014   -msgstr ""
2015   -
2016   -#: src/core/ft/ft.c:489
2017   -msgid "Waiting for PUT response"
2018   -msgstr ""
2019   -
2020   -#: src/core/telnet.c:727
2021   -msgid "Warning"
2022   -msgstr ""
2023   -
2024   -#: src/core/windows/util.c:124 src/core/windows/util.c:167
2025   -#, c-format
2026   -msgid "Windows error %d"
2027   -msgstr ""
2028   -
2029   -#: src/core/toggles/table.c:103 src/core/toggles/table.c:104
2030   -msgid "Wrap around"
2031   -msgstr ""
2032   -
2033   -#: src/core/ft/ftmessages.c:74
2034   -msgid ""
2035   -"You did not enter the required parameters after a SEND or RECEIVE command."
2036   -msgstr ""
2037   -
2038   -#: src/core/ft/ftmessages.c:195
2039   -msgid "You did not specify an existing CMS file for RECEIVE."
2040   -msgstr ""
2041   -
2042   -#: src/core/ft/ftmessages.c:95
2043   -msgid ""
2044   -"You need 30 KB of main storage (not disk space) on the host for the file "
2045   -"transfer, in addition to the host requirement."
2046   -msgstr ""
2047   -
2048   -#: src/core/ft/ftmessages.c:174
2049   -msgid ""
2050   -"You selected an option that can only be used if SPACE is also specified."
2051   -msgstr ""
2052   -
2053   -#: src/core/ft/ftmessages.c:153
2054   -msgid ""
2055   -"You selected an option that is either not recognized, is specified as a "
2056   -"positional keyword, or has an associated value that is incorrect."
2057   -msgstr ""
2058   -
2059   -#: src/core/ft/ftmessages.c:181
2060   -msgid ""
2061   -"You selected an option that is invalid with a host-partitioned data set."
2062   -msgstr ""
2063   -
2064   -#: src/core/ft/ftmessages.c:167
2065   -msgid ""
2066   -"You selected an option that is not valid with APPEND, but otherwise may be "
2067   -"used."
2068   -msgstr ""
2069   -
2070   -#: src/core/ft/ftmessages.c:160
2071   -msgid ""
2072   -"You selected an option that is not valid with RECEIVE, but can be used with "
2073   -"SEND."
2074   -msgstr ""
2075   -
2076   -#: src/core/ft/ftmessages.c:202
2077   -msgid ""
2078   -"You specified a CMS file mode for the SEND key that does not allow write "
2079   -"access."
2080   -msgstr ""
2081   -
2082   -#: src/core/ft/ftmessages.c:209
2083   -msgid "You specified a CMS file mode that is not in the CMS search order."
2084   -msgstr ""
2085   -
2086   -#: src/core/ft/ftmessages.c:139
2087   -msgid "You specified an option that is invalid."
2088   -msgstr ""
2089   -
2090   -#: src/core/actions/table.c:126
2091   -msgid "_Disconnect"
2092   -msgstr ""
2093   -
2094   -#: src/core/actions/table.c:112
2095   -msgid "_Reconnect"
2096   -msgstr ""
2097   -
2098   -#: src/core/linux/connect.c:233 src/core/linux/connect.c:302
2099   -#: src/core/windows/connect.c:340 src/core/macos/connect.c:233
2100   -#: src/core/macos/connect.c:302
2101   -msgid "_Retry"
2102   -msgstr ""
2103   -
2104   -#: src/core/toggles/init.c:83 src/core/linux/connect.c:334
2105   -#: src/core/windows/connect.c:372 src/core/macos/connect.c:334
2106   -msgid "disable"
2107   -msgstr ""
2108   -
2109   -#: src/core/toggles/init.c:83 src/core/linux/connect.c:334
2110   -#: src/core/windows/connect.c:372 src/core/macos/connect.c:334
2111   -msgid "enable"
2112   -msgstr ""
2113   -
2114   -#: src/network_modules/tools.c:174
2115   -msgid "fcntl() error when getting socket state."
2116   -msgstr ""
2117   -
2118   -#: src/network_modules/tools.c:161
2119   -msgid "ioctlsocket(FIONBIO) failed."
2120   -msgstr ""
2121   -
2122   -#: src/core/properties/string.c:134
2123   -msgid "lib3270 revision"
2124   -msgstr ""
2125   -
2126   -#: src/core/properties/string.c:127
2127   -msgid "lib3270 version"
2128   -msgstr ""
2129   -
2130   -#: src/core/properties/boolean.c:191
2131   -msgid "numeric lock"
2132   -msgstr ""
2133   -
2134   -#: src/core/linux/connect.c:322 src/core/windows/connect.c:359
2135   -#: src/core/macos/connect.c:322
2136   -msgid "setsockopt(SO_OOBINLINE) has failed"
2137   -msgstr ""
locale/pt_BR.po
... ... @@ -5,7 +5,7 @@ msgid &quot;&quot;
5 5 msgstr ""
6 6 "Project-Id-Version: pw3270 5.0\n"
7 7 "Report-Msgid-Bugs-To: \n"
8   -"POT-Creation-Date: 2023-03-28 21:15-0300\n"
  8 +"POT-Creation-Date: 2023-06-16 13:05-0300\n"
9 9 "PO-Revision-Date: 2023-04-21 08:40-0300\n"
10 10 "Last-Translator: Perry Werneck <perry.werneck@gmail.com>\n"
11 11 "Language-Team: Brazilian Portuguese <perry.werneck@gmail.com>\n"
... ... @@ -19,12 +19,12 @@ msgstr &quot;&quot;
19 19 "Plural-Forms: nplurals=2; plural=(n > 1)\n"
20 20 "X-Generator: Gtranslator 40.0\n"
21 21  
22   -#: src/core/ctlr.c:178
  22 +#: src/core/ctlr.c:173
23 23 #, c-format
24 24 msgid "%dx%d is negative or zero"
25 25 msgstr "%dx%d é negativa ou zero"
26 26  
27   -#: src/core/ctlr.c:190
  27 +#: src/core/ctlr.c:183
28 28 #, c-format
29 29 msgid "%dx%d screen size is bigger than the maximum size"
30 30 msgstr "Tela %dx%d é maior que o tamanho máximo"
... ... @@ -227,7 +227,8 @@ msgstr &quot;Arquivo CMS não encontrado, transferência cancelada&quot;
227 227 msgid "CRL signature failure"
228 228 msgstr "Erro na assinatura CRL"
229 229  
230   -#: src/core/toggles/init.c:83 src/core/windows/connect.c:372
  230 +#: src/core/toggles/init.c:83 src/core/linux/connect.c:334
  231 +#: src/core/windows/connect.c:372 src/core/macos/connect.c:334
231 232 #, c-format
232 233 msgid "Can't %s network keep-alive"
233 234 msgstr "Não foi possível %s opção \"keep-alive\""
... ... @@ -236,7 +237,9 @@ msgstr &quot;Não foi possível %s opção \&quot;keep-alive\&quot;&quot;
236 237 msgid "Can't bind to LDAP server"
237 238 msgstr "Não foi possível conectar ao servidor LDAP"
238 239  
  240 +#: src/core/linux/connect.c:215 src/core/linux/connect.c:269
239 241 #: src/core/windows/connect.c:232 src/core/windows/connect.c:276
  242 +#: src/core/macos/connect.c:215 src/core/macos/connect.c:269
240 243 #, c-format
241 244 msgid "Can't connect to %s:%s"
242 245 msgstr "Não foi possível conectar a %s:%s"
... ... @@ -245,7 +248,8 @@ msgstr &quot;Não foi possível conectar a %s:%s&quot;
245 248 msgid "Can't connect to HTTP server."
246 249 msgstr "Não foi possível conectar ao servidor HTTP"
247 250  
248   -#: src/core/windows/connect.c:197
  251 +#: src/core/linux/connect.c:165 src/core/windows/connect.c:197
  252 +#: src/core/macos/connect.c:165
249 253 msgid "Can't connect to host"
250 254 msgstr "Não foi possível conectar no host"
251 255  
... ... @@ -257,7 +261,8 @@ msgstr &quot;Não foi possível criar requisição HTTP&quot;
257 261 msgid "Can't decode CRL data"
258 262 msgstr "Não foi possível decodificar dados do CRL"
259 263  
260   -#: src/core/windows/ldap.c:204
  264 +#: src/core/linux/ldap.c:167 src/core/windows/ldap.c:204
  265 +#: src/core/macos/ldap.c:167
261 266 msgid "Can't decode certificate revocation list"
262 267 msgstr "Não foi possível decodificar a lista de certificados revogados"
263 268  
... ... @@ -273,7 +278,11 @@ msgstr &quot;Não foi possível obter o tamanho do arquivo&quot;
273 278 msgid "Can't initialize LDAP"
274 279 msgstr "Erro ao inicializar LDAP"
275 280  
276   -#: src/network_modules/openssl/context.c:240
  281 +#: src/core/linux/curl.c:171 src/core/macos/curl.c:171
  282 +msgid "Can't initialize curl operation"
  283 +msgstr "Erro ao inicializar operação CURL"
  284 +
  285 +#: src/network_modules/openssl/context.c:236
277 286 msgid "Can't initialize the TLS/SSL context."
278 287 msgstr "Erro ao inicializar contexto TLS/SSL"
279 288  
... ... @@ -281,17 +290,17 @@ msgstr &quot;Erro ao inicializar contexto TLS/SSL&quot;
281 290 msgid "Can't load"
282 291 msgstr "Não foi possível carregar"
283 292  
284   -#: src/network_modules/openssl/context.c:342
  293 +#: src/network_modules/openssl/context.c:338
285 294 #, c-format
286 295 msgid "Can't load \"%s\": %s"
287 296 msgstr "Não foi possível carregar \"%s\": %s"
288 297  
289   -#: src/network_modules/openssl/context.c:295
  298 +#: src/network_modules/openssl/context.c:291
290 299 #, c-format
291 300 msgid "Can't open \"%s\" (The Windows error code was %ld)"
292 301 msgstr "Não foi possível abrir \"%s\" (O código de erro windows foi %ld)"
293 302  
294   -#: src/network_modules/openssl/context.c:308
  303 +#: src/network_modules/openssl/context.c:304
295 304 #, c-format
296 305 msgid "Can't open \"%s\": %s"
297 306 msgstr "Não foi possível abrir %s: %s"
... ... @@ -304,7 +313,7 @@ msgstr &quot;Não foi possível abrir sessão HTTP&quot;
304 313 msgid "Can't print"
305 314 msgstr "Não é possível imprimir"
306 315  
307   -#: src/network_modules/openssl/context.c:326
  316 +#: src/network_modules/openssl/context.c:322
308 317 #, c-format
309 318 msgid "Can't read \"%s\": %s"
310 319 msgstr "Não foi possível ler \"%s\": %s"
... ... @@ -355,15 +364,15 @@ msgstr &quot;&quot;
355 364 "Não foi possível criar uma nova estrutura de controle SSL para a conexão "
356 365 "atual."
357 366  
358   -#: src/network_modules/openssl/context.c:336
  367 +#: src/network_modules/openssl/context.c:332
359 368 msgid "Cant load custom certificate file."
360 369 msgstr "Não foi possível ler arquivo de certificado personalizado"
361 370  
362   -#: src/network_modules/openssl/context.c:290
  371 +#: src/network_modules/openssl/context.c:286
363 372 msgid "Cant open custom certificate directory."
364 373 msgstr "Não foi possível abrir o diretório de certificados personalizados"
365 374  
366   -#: src/network_modules/openssl/context.c:320
  375 +#: src/network_modules/openssl/context.c:316
367 376 msgid "Cant read custom certificate file."
368 377 msgstr "Não foi possível ler certificado personalizado"
369 378  
... ... @@ -431,16 +440,54 @@ msgstr &quot;Conectar&quot;
431 440 msgid "Connect on startup"
432 441 msgstr "Conectar ao iniciar"
433 442  
  443 +#: src/core/properties/signed.c:46
  444 +msgid "Connected in NVT ANSI mode"
  445 +msgstr ""
  446 +
  447 +#: src/core/properties/signed.c:51
  448 +msgid "Connected in TN3270E mode, 3270 mode"
  449 +msgstr ""
  450 +
  451 +#: src/core/properties/signed.c:49
  452 +msgid "Connected in TN3270E mode, NVT mode"
  453 +msgstr ""
  454 +
  455 +#: src/core/properties/signed.c:50
  456 +msgid "Connected in TN3270E mode, SSCP-LU mode"
  457 +msgstr ""
  458 +
  459 +#: src/core/properties/signed.c:48
  460 +#, fuzzy
  461 +msgid "Connected in TN3270E mode, no negotiated"
  462 +msgstr "Não está no modo 3270, transferência cancelada"
  463 +
  464 +#: src/core/properties/signed.c:47
  465 +msgid "Connected in old-style 3270 mode"
  466 +msgstr ""
  467 +
434 468 #: src/core/telnet.c:1764
435 469 msgid "Connected initial"
436 470 msgstr "Connected initial"
437 471  
  472 +#: src/core/properties/signed.c:45
  473 +#, fuzzy
  474 +msgid "Connected, no mode yet"
  475 +msgstr "Connected initial"
  476 +
438 477 #: src/core/telnet.c:1782
439 478 msgid "Connecting"
440 479 msgstr "Conectando"
441 480  
  481 +#: src/core/properties/signed.c:43
  482 +#, fuzzy
  483 +msgid "Connecting to host"
  484 +msgstr "Não foi possível conectar no host"
  485 +
  486 +#: src/network_modules/tools.c:160 src/core/linux/connect.c:230
  487 +#: src/core/linux/connect.c:321 src/core/linux/connect.c:338
442 488 #: src/core/windows/connect.c:358 src/core/windows/connect.c:376
443   -#: src/network_modules/tools.c:160
  489 +#: src/core/macos/connect.c:230 src/core/macos/connect.c:321
  490 +#: src/core/macos/connect.c:338
444 491 msgid "Connection error"
445 492 msgstr "Erro de conexão"
446 493  
... ... @@ -448,11 +495,25 @@ msgstr &quot;Erro de conexão&quot;
448 495 msgid "Connection failed"
449 496 msgstr "Conexão falhou"
450 497  
  498 +#: src/core/properties/signed.c:44
  499 +#, fuzzy
  500 +msgid "Connection pending"
  501 +msgstr "Conexão falhou"
  502 +
451 503 #: src/network_modules/tools.c:122
452 504 msgid "Connection reset by peer"
453 505 msgstr "Conexão foi cancelada pelo servidor"
454 506  
455   -#: src/core/properties/signed.c:55
  507 +#: src/core/properties/signed.c:96
  508 +#, fuzzy
  509 +msgid "Connection secure with CA check"
  510 +msgstr "A conexão é segura ?"
  511 +
  512 +#: src/core/properties/signed.c:97
  513 +msgid "Connection secure, no CA, self-signed or expired CRL"
  514 +msgstr ""
  515 +
  516 +#: src/core/properties/signed.c:121
456 517 msgid "Connection state"
457 518 msgstr "Estado da conexão"
458 519  
... ... @@ -466,15 +527,15 @@ msgstr &quot;Continuar&quot;
466 527 msgid "Cross hair cursor"
467 528 msgstr "Cursor mira"
468 529  
469   -#: src/core/properties/unsigned.c:117
  530 +#: src/core/properties/unsigned.c:113
470 531 msgid "Current screen height in rows"
471 532 msgstr "Altura atual da tela em linhas"
472 533  
473   -#: src/core/properties/unsigned.c:110
  534 +#: src/core/properties/unsigned.c:106
474 535 msgid "Current screen width in columns"
475 536 msgstr "Largura atua da tela em colunas"
476 537  
477   -#: src/core/properties/signed.c:63
  538 +#: src/core/properties/signed.c:130
478 539 msgid "Cursor address"
479 540 msgstr "Endereço do cursor"
480 541  
... ... @@ -516,7 +577,7 @@ msgstr &quot;Tecla \&quot;DUP\&quot;&quot;
516 577 msgid "Data conversion error"
517 578 msgstr "Erro na conversão de dados"
518 579  
519   -#: src/core/properties/string.c:159
  580 +#: src/core/properties/string.c:143
520 581 msgid "Default host URL"
521 582 msgstr "URL parão para acesso ao host"
522 583  
... ... @@ -532,7 +593,7 @@ msgstr &quot;Apagar campo&quot;
532 593 msgid "Delete word"
533 594 msgstr "Apaga palavra"
534 595  
535   -#: src/core/properties/string.c:173
  596 +#: src/core/properties/string.c:157
536 597 msgid "Description of the current security state"
537 598 msgstr "Descrição do estado de segurança atual"
538 599  
... ... @@ -544,12 +605,17 @@ msgstr &quot;Tipo de dispositivo rejeitado&quot;
544 605 msgid "Disconnect from host"
545 606 msgstr "Desconecta do servidor"
546 607  
  608 +#: src/core/properties/signed.c:42
  609 +#, fuzzy
  610 +msgid "Disconnected"
  611 +msgstr "Desconectado"
  612 +
547 613 #: src/core/ft/ft.c:244 src/network_modules/openssl/main.c:100
548 614 #: src/network_modules/openssl/main.c:148
549 615 msgid "Disconnected from host."
550 616 msgstr "Desconectado do servidor."
551 617  
552   -#: src/core/properties/string.c:120
  618 +#: src/core/properties/string.c:114
553 619 msgid "Display charset"
554 620 msgstr "Tabela de caracteres para a tela"
555 621  
... ... @@ -715,7 +781,7 @@ msgstr &quot;Erro de formato no campo \&quot;notAfter\&quot; do certificado&quot;
715 781 msgid "Format error in certificate's notBefore field"
716 782 msgstr "Erro de formato no campo \"notBefore\" do certificado"
717 783  
718   -#: src/core/properties/boolean.c:177
  784 +#: src/core/properties/boolean.c:175
719 785 msgid "Formatted screen"
720 786 msgstr "Tela formatada"
721 787  
... ... @@ -727,11 +793,11 @@ msgstr &quot;Tela cheia&quot;
727 793 msgid "Half connect"
728 794 msgstr "Half connect"
729 795  
730   -#: src/core/properties/boolean.c:156
  796 +#: src/core/properties/boolean.c:154
731 797 msgid "Has selected area"
732 798 msgstr "Tem área selecionada"
733 799  
734   -#: src/core/properties/string.c:113
  800 +#: src/core/properties/string.c:107
735 801 msgid "Host charset"
736 802 msgstr "Página de código do host"
737 803  
... ... @@ -755,11 +821,11 @@ msgstr &quot;Servidor rejeitou o tipo de dispositivo ou requisição&quot;
755 821 msgid "Host rejected resource(s)"
756 822 msgstr "Servidor rejeitou recurso(s)"
757 823  
758   -#: src/core/properties/string.c:90
  824 +#: src/core/properties/string.c:84
759 825 msgid "Host type name"
760 826 msgstr "Nome do tipo de host"
761 827  
762   -#: src/core/properties/unsigned.c:90
  828 +#: src/core/properties/unsigned.c:86
763 829 msgid "Host type number"
764 830 msgstr "Numero do tipo de host"
765 831  
... ... @@ -771,7 +837,7 @@ msgstr &quot;IBM AS/400&quot;
771 837 msgid "IBM S/390"
772 838 msgstr "IBM S/390"
773 839  
774   -#: src/core/properties/signed.c:77
  840 +#: src/core/properties/signed.c:146
775 841 msgid "ID of the session security state"
776 842 msgstr "Identificação do estado de segurança da sessão"
777 843  
... ... @@ -887,28 +953,28 @@ msgstr &quot;Opção xxxxxxxx inválida sem SPACE: Transferência cancelada&quot;
887 953 msgid "Invalid option xxxxxxxx: file transfer canceled"
888 954 msgstr "Opção xxxxxxxx inválida: Transferência cancelada"
889 955  
890   -#: src/core/ctlr.c:176 src/core/ctlr.c:188 src/core/ctlr.c:201
891   -#: src/core/ctlr.c:213
  956 +#: src/core/ctlr.c:171 src/core/ctlr.c:181 src/core/ctlr.c:192
  957 +#: src/core/ctlr.c:203
892 958 msgid "Invalid oversize"
893 959 msgstr "Valor inválido para 'oversize'"
894 960  
895   -#: src/core/properties/boolean.c:77
  961 +#: src/core/properties/boolean.c:75
896 962 msgid "Is connection secure"
897 963 msgstr "A conexão é segura ?"
898 964  
899   -#: src/core/properties/boolean.c:170
  965 +#: src/core/properties/boolean.c:168
900 966 msgid "Is starting (no first screen)?"
901 967 msgstr "Está iniciando (não recebeu a primeira tela)?"
902 968  
903   -#: src/core/properties/boolean.c:70
  969 +#: src/core/properties/boolean.c:68
904 970 msgid "Is terminal connected"
905 971 msgstr "O terminal está conectado"
906 972  
907   -#: src/core/properties/boolean.c:149
  973 +#: src/core/properties/boolean.c:147
908 974 msgid "Is terminal in the INITIAL_E state?"
909 975 msgstr "O terminal está no estad INITIAL_E?"
910 976  
911   -#: src/core/properties/boolean.c:63
  977 +#: src/core/properties/boolean.c:61
912 978 msgid "Is terminal ready"
913 979 msgstr "O terminal está pronto"
914 980  
... ... @@ -924,7 +990,7 @@ msgstr &quot;Uso da chave não permite assinatura de certificados&quot;
924 990 msgid "Keyboard is locked"
925 991 msgstr "Teclado está bloqueado"
926 992  
927   -#: src/core/properties/unsigned.c:169
  993 +#: src/core/properties/unsigned.c:165
928 994 msgid "Keyboard lock status"
929 995 msgstr "Estado de bloqueio do teclado"
930 996  
... ... @@ -932,11 +998,21 @@ msgstr &quot;Estado de bloqueio do teclado&quot;
932 998 msgid "LDAP Search did not produce any attributes."
933 999 msgstr "Pesquisa LDAP não produziu atributos."
934 1000  
  1001 +#: src/core/linux/ldap.c:147 src/core/macos/ldap.c:147
  1002 +#, fuzzy
  1003 +msgid "LDAP search did not produce any attributes."
  1004 +msgstr "Pesquisa LDAP não produziu atributos."
  1005 +
  1006 +#: src/core/linux/ldap.c:157 src/core/macos/ldap.c:157
  1007 +#, fuzzy
  1008 +msgid "LDAP search did not produce any values."
  1009 +msgstr "Pesquisa LDAP não produziu valores."
  1010 +
935 1011 #: src/core/windows/ldap.c:186
936 1012 msgid "LDAPSearch did not produce any values."
937 1013 msgstr "Pesquisa LDAP não produziu valores."
938 1014  
939   -#: src/core/properties/signed.c:70
  1015 +#: src/core/properties/signed.c:138
940 1016 msgid "Latest program message"
941 1017 msgstr "Última mensagem de programa"
942 1018  
... ... @@ -948,7 +1024,7 @@ msgstr &quot;Esquerda&quot;
948 1024 msgid "Line mode"
949 1025 msgstr "Line mode"
950 1026  
951   -#: src/core/properties/boolean.c:184
  1027 +#: src/core/properties/boolean.c:182
952 1028 msgid "Lock keyboard on operator error"
953 1029 msgstr "Bloqueia teclado em caso de erro do operador"
954 1030  
... ... @@ -956,15 +1032,15 @@ msgstr &quot;Bloqueia teclado em caso de erro do operador&quot;
956 1032 msgid "Margined paste"
957 1033 msgstr "Colar com margem"
958 1034  
959   -#: src/core/properties/unsigned.c:131
  1035 +#: src/core/properties/unsigned.c:127
960 1036 msgid "Maximum screen height in rows"
961 1037 msgstr "Altura máxima da tela em linhas"
962 1038  
963   -#: src/core/properties/unsigned.c:124
  1039 +#: src/core/properties/unsigned.c:120
964 1040 msgid "Maximum screen width in columns"
965 1041 msgstr "Largura maxima da tela em colunas"
966 1042  
967   -#: src/core/properties/string.c:82
  1043 +#: src/core/properties/string.c:76
968 1044 msgid "Model name"
969 1045 msgstr "Nome do modelo"
970 1046  
... ... @@ -1021,8 +1097,15 @@ msgstr &quot;Move para o próximo campo desprotegido&quot;
1021 1097 msgid "Move to the previous unprotected field on screen"
1022 1098 msgstr "Move para o campo desprotegido anterior"
1023 1099  
1024   -#: src/core/telnet.c:304 src/core/windows/connect.c:223
1025   -#: src/core/windows/event_dispatcher.c:135
  1100 +#: src/core/properties/signed.c:98
  1101 +#, fuzzy
  1102 +msgid "Negotiating SSL"
  1103 +msgstr "Negociação SSL"
  1104 +
  1105 +#: src/core/telnet.c:304 src/core/linux/connect.c:200
  1106 +#: src/core/linux/event_dispatcher.c:130 src/core/windows/connect.c:223
  1107 +#: src/core/windows/event_dispatcher.c:135 src/core/macos/connect.c:200
  1108 +#: src/core/macos/event_dispatcher.c:130
1026 1109 msgid "Network error"
1027 1110 msgstr "Erro de rede"
1028 1111  
... ... @@ -1050,10 +1133,16 @@ msgstr &quot;Sem suporte LDAP&quot;
1050 1133 msgid "No TLS/SSL support on this session"
1051 1134 msgstr "Sem suporte TLS/SSL nessa sessão"
1052 1135  
1053   -#: src/core/windows/download.c:62
  1136 +#: src/core/linux/download.c:55 src/core/windows/download.c:62
  1137 +#: src/core/macos/download.c:55
1054 1138 msgid "No handler for URL scheme."
1055 1139 msgstr "Nenhum manipulador para o esquema de URL"
1056 1140  
  1141 +#: src/core/properties/signed.c:95
  1142 +#, fuzzy
  1143 +msgid "No secure connection"
  1144 +msgstr "Conexão _Segura."
  1145 +
1057 1146 #: src/network_modules/openssl/messages.c:292
1058 1147 msgid ""
1059 1148 "No signatures could be verified because the chain contains only one "
... ... @@ -1066,15 +1155,15 @@ msgstr &quot;&quot;
1066 1155 msgid "No transfer in progress"
1067 1156 msgstr "Nenhuma transferência em andamento"
1068 1157  
1069   -#: src/core/properties/boolean.c:198
  1158 +#: src/core/properties/boolean.c:196
1070 1159 msgid "Non zero if the download of CRL is enabled"
1071 1160 msgstr "Diferente de zero se o host se o download do CRL está habilitado"
1072 1161  
1073   -#: src/core/properties/boolean.c:93
  1162 +#: src/core/properties/boolean.c:91
1074 1163 msgid "Non zero if the host is AS400."
1075 1164 msgstr "Diferente de zero se o host é AS400"
1076 1165  
1077   -#: src/core/properties/boolean.c:85
  1166 +#: src/core/properties/boolean.c:83
1078 1167 msgid "Non zero if the host is TSO."
1079 1168 msgstr "Diferente de zero se o host é TSO"
1080 1169  
... ... @@ -1137,7 +1226,7 @@ msgstr &quot;Pendente&quot;
1137 1226 msgid "Personal computer filespec incorrect: file transfer canceled"
1138 1227 msgstr "Especificação de arquivo PC incorreta: Transferência cancelada"
1139 1228  
1140   -#: src/core/properties/string.c:152
  1229 +#: src/core/properties/string.c:136
1141 1230 msgid "Preferred protocol for CRL download"
1142 1231 msgstr "Protocolo preferido para download da CRL"
1143 1232  
... ... @@ -1165,6 +1254,14 @@ msgstr &quot;Program Action 2&quot;
1165 1254 msgid "Program Action 3"
1166 1255 msgstr "Program Action 3"
1167 1256  
  1257 +#: src/core/properties/string.c:128
  1258 +msgid "Protocol library revision"
  1259 +msgstr ""
  1260 +
  1261 +#: src/core/properties/string.c:121
  1262 +msgid "Protocol library version"
  1263 +msgstr ""
  1264 +
1168 1265 #: src/core/rpq.c:229
1169 1266 #, c-format
1170 1267 msgid "RPQ %s term omitted due to insufficient space"
... ... @@ -1297,11 +1394,11 @@ msgstr &quot;&quot;
1297 1394 msgid "SSL negotiation failed"
1298 1395 msgstr "Negociação SSL falhou"
1299 1396  
1300   -#: src/core/properties/unsigned.c:138
  1397 +#: src/core/properties/unsigned.c:134
1301 1398 msgid "Screen buffer length in bytes"
1302 1399 msgstr "Tamanho do buffer de tela em bytes"
1303 1400  
1304   -#: src/core/properties/string.c:181
  1401 +#: src/core/properties/string.c:165
1305 1402 msgid "Screen oversize if larger than the chosen model"
1306 1403 msgstr "\"oversize\" maior que o modelo escolhido"
1307 1404  
... ... @@ -1345,7 +1442,9 @@ msgstr &quot;Seleciona a direita&quot;
1345 1442 msgid "Select word"
1346 1443 msgstr "Seleciona palavra"
1347 1444  
  1445 +#: src/core/linux/event_dispatcher.c:131
1348 1446 #: src/core/windows/event_dispatcher.c:136
  1447 +#: src/core/macos/event_dispatcher.c:131
1349 1448 msgid "Select() failed when processing for events."
1350 1449 msgstr "Select() falhou ao processar eventos."
1351 1450  
... ... @@ -1417,11 +1516,11 @@ msgstr &quot;Erro no socket&quot;
1417 1516 msgid "Sound"
1418 1517 msgstr "Som"
1419 1518  
1420   -#: src/core/properties/boolean.c:128
  1519 +#: src/core/properties/boolean.c:126
1421 1520 msgid "State is 3270, TN3270e or SSCP"
1422 1521 msgstr "Estado do terminal é 3270, TN3270e or SSCP"
1423 1522  
1424   -#: src/core/properties/boolean.c:163
  1523 +#: src/core/properties/boolean.c:161
1425 1524 msgid "Still have text to paste"
1426 1525 msgstr "Ainda existe texto para colar"
1427 1526  
... ... @@ -1465,15 +1564,15 @@ msgstr &quot;TN3270E NVT&quot;
1465 1564 msgid "TN3270E SSCP-LU"
1466 1565 msgstr "TN3270E SSCP-LU"
1467 1566  
1468   -#: src/core/properties/unsigned.c:99
  1567 +#: src/core/properties/unsigned.c:95
1469 1568 msgid "Terminal model"
1470 1569 msgstr "Modelo do terminal"
1471 1570  
1472   -#: src/core/properties/string.c:104
  1571 +#: src/core/properties/string.c:98
1473 1572 msgid "Terminal name"
1474 1573 msgstr "Nome do terminal"
1475 1574  
1476   -#: src/core/properties/string.c:97
  1575 +#: src/core/properties/string.c:91
1477 1576 msgid "Terminal type"
1478 1577 msgstr "Tipo do terminal"
1479 1578  
... ... @@ -1538,7 +1637,14 @@ msgstr &quot;&quot;
1538 1637 msgid "The SSL error message was %s"
1539 1638 msgstr "A mensagem de erro SSL foi \"%s\""
1540 1639  
  1640 +#: src/core/linux/connect.c:191 src/core/macos/connect.c:191
  1641 +#, fuzzy, c-format
  1642 +msgid "The System error was '%s' (rc=%d)"
  1643 +msgstr "O erro do sistema foi \"%s\" (rc=%d)"
  1644 +
  1645 +#: src/core/linux/ldap.c:82 src/core/linux/ldap.c:91
1541 1646 #: src/core/windows/ldap.c:101 src/core/windows/ldap.c:110
  1647 +#: src/core/macos/ldap.c:82 src/core/macos/ldap.c:91
1542 1648 msgid "The URL argument should be in the format ldap://[HOST]/[DN]?attribute"
1543 1649 msgstr "A URL deve ser no formato ldap://[HOST]/[DN]?attribute"
1544 1650  
... ... @@ -1592,7 +1698,7 @@ msgstr &quot;&quot;
1592 1698 "signature value could not be determined rather than it not matching the "
1593 1699 "expected value, this is only meaningful for RSA keys."
1594 1700  
1595   -#: src/core/properties/unsigned.c:81
  1701 +#: src/core/properties/unsigned.c:77
1596 1702 msgid "The color type"
1597 1703 msgstr "O tipo de cor"
1598 1704  
... ... @@ -1644,7 +1750,7 @@ msgstr &quot;&quot;
1644 1750 "name did not match the issuer name of the current certificate. Only "
1645 1751 "displayed when the -issuer_checks option is set."
1646 1752  
1647   -#: src/core/properties/unsigned.c:162
  1753 +#: src/core/properties/unsigned.c:158
1648 1754 msgid "The delay between the host unlocking the keyboard and the actual unlock"
1649 1755 msgstr ""
1650 1756 "Intervalo de tempo entre o desbloqueio de teclado pelo host e o desbloqueio "
... ... @@ -1663,7 +1769,7 @@ msgstr &quot;&quot;
1663 1769 msgid "The file transfer operation has been successfully completed."
1664 1770 msgstr "A transferência de arquivos terminou com sucesso."
1665 1771  
1666   -#: src/core/ctlr.c:215
  1772 +#: src/core/ctlr.c:205
1667 1773 #, c-format
1668 1774 msgid "The height %d is less than model %d rows (%d)"
1669 1775 msgstr "A altura %d é menor que o número de linhas do modelo %d (%d)"
... ... @@ -1690,15 +1796,15 @@ msgstr &quot;&quot;
1690 1796 "The issuer certificate of a looked up certificate could not be found. This "
1691 1797 "normally means the list of trusted certificates is not complete."
1692 1798  
1693   -#: src/core/properties/string.c:189
  1799 +#: src/core/properties/string.c:173
1694 1800 msgid "The log file name"
1695 1801 msgstr "Define o nome do arquivo de log"
1696 1802  
1697   -#: src/core/properties/unsigned.c:100
  1803 +#: src/core/properties/unsigned.c:96
1698 1804 msgid "The model number"
1699 1805 msgstr "Nº do modelo"
1700 1806  
1701   -#: src/core/properties/string.c:62
  1807 +#: src/core/properties/string.c:56
1702 1808 msgid "The name of the LU associated with the session"
1703 1809 msgstr "O nome da LU associada à sessão"
1704 1810  
... ... @@ -1710,19 +1816,19 @@ msgstr &quot;&quot;
1710 1816 "O módulo de rede não definiu uma mensagem para o estado TLS/SSL, isso não "
1711 1817 "deveria acontecer e pode ser um erro de codificação"
1712 1818  
1713   -#: src/core/ctlr.c:214
  1819 +#: src/core/ctlr.c:204
1714 1820 msgid "The oversize height is too small."
1715 1821 msgstr "A altura definida para 'oversize' é muito pequena."
1716 1822  
1717   -#: src/core/ctlr.c:177
  1823 +#: src/core/ctlr.c:172
1718 1824 msgid "The oversize values are invalid."
1719 1825 msgstr "Os valores para 'oversize' não são válidos."
1720 1826  
1721   -#: src/core/ctlr.c:189
  1827 +#: src/core/ctlr.c:182
1722 1828 msgid "The oversize values are too big."
1723 1829 msgstr "Os valores do 'oversize' são muito grandes."
1724 1830  
1725   -#: src/core/ctlr.c:202
  1831 +#: src/core/ctlr.c:193
1726 1832 msgid "The oversize width is too small."
1727 1833 msgstr "A largura do 'oversize' é muito pequena."
1728 1834  
... ... @@ -1760,7 +1866,7 @@ msgstr &quot;&quot;
1760 1866 msgid "The secure connection has been closed cleanly."
1761 1867 msgstr "A conexão segura foi fechada corretamente"
1762 1868  
1763   -#: src/core/properties/string.c:166
  1869 +#: src/core/properties/string.c:150
1764 1870 msgid "The security state"
1765 1871 msgstr "O estado da segurança"
1766 1872  
... ... @@ -1794,8 +1900,10 @@ msgstr &quot;O erro do sistema operacional foi \&quot;%d\&quot; (%s)&quot;
1794 1900 msgid "The system error was \"%s\""
1795 1901 msgstr "O erro do sistema operacional foi \"%s\""
1796 1902  
  1903 +#: src/core/linux/connect.c:222 src/core/linux/connect.c:282
1797 1904 #: src/core/windows/connect.c:298 src/core/windows/connect.c:306
1798 1905 #: src/core/windows/connect.c:314 src/core/windows/connect.c:324
  1906 +#: src/core/macos/connect.c:222 src/core/macos/connect.c:282
1799 1907 #, c-format
1800 1908 msgid "The system error was \"%s\" (rc=%d)"
1801 1909 msgstr "O erro do sistema operacional foi \"%s\" (rc=%d)"
... ... @@ -1806,16 +1914,16 @@ msgstr &quot;O erro do sistema operacional foi \&quot;%s\&quot; (rc=%d)&quot;
1806 1914 msgid "The system error was %s"
1807 1915 msgstr "O erro do sistema operacional foi \"%s\""
1808 1916  
1809   -#: src/core/util.c:266
  1917 +#: src/core/util.c:270
1810 1918 #, c-format
1811 1919 msgid "The system error was '%s' (rc=%d)"
1812 1920 msgstr "O erro do sistema foi \"%s\" (rc=%d)"
1813 1921  
1814   -#: src/core/properties/string.c:197
  1922 +#: src/core/properties/string.c:181
1815 1923 msgid "The trace file name"
1816 1924 msgstr "O nome do arquivo de trace"
1817 1925  
1818   -#: src/core/ctlr.c:203
  1926 +#: src/core/ctlr.c:194
1819 1927 #, c-format
1820 1928 msgid "The width %d is less than model %d columns (%d)"
1821 1929 msgstr "A largura %d é menor que a do modelo %d (%d)"
... ... @@ -1833,7 +1941,7 @@ msgstr &quot;Não existe espaço suficiente no host para os dados.&quot;
1833 1941 msgid "This is a host program error."
1834 1942 msgstr "Este é um erro no programa do host."
1835 1943  
1836   -#: src/core/properties/unsigned.c:146
  1944 +#: src/core/properties/unsigned.c:142
1837 1945 msgid "Time for auto-reconnect"
1838 1946 msgstr "Tempo para reconexão automática"
1839 1947  
... ... @@ -1906,11 +2014,12 @@ msgstr &quot;Transferência falhou&quot;
1906 2014 msgid "Transmission error"
1907 2015 msgstr "Erro de transmissão"
1908 2016  
1909   -#: src/core/windows/connect.c:198
  2017 +#: src/core/linux/connect.c:166 src/core/windows/connect.c:198
  2018 +#: src/core/macos/connect.c:166
1910 2019 msgid "Try again"
1911 2020 msgstr "Tentar novamente"
1912 2021  
1913   -#: src/core/properties/string.c:74
  2022 +#: src/core/properties/string.c:68
1914 2023 msgid "URL of the current host"
1915 2024 msgstr "URL do host atual"
1916 2025  
... ... @@ -1935,7 +2044,8 @@ msgstr &quot;Incapaz de decifrar a assinatura do certificado&quot;
1935 2044 msgid "Unable to get certificate CRL."
1936 2045 msgstr "Incapaz de obter o CRL de um certificado."
1937 2046  
1938   -#: src/core/windows/connect.c:224
  2047 +#: src/core/linux/connect.c:201 src/core/windows/connect.c:224
  2048 +#: src/core/macos/connect.c:201
1939 2049 msgid "Unable to get connection state."
1940 2050 msgstr "Não foi possível obter o estado da conexão."
1941 2051  
... ... @@ -1979,6 +2089,10 @@ msgstr &quot;Não foi possível verificar o primeiro certificado&quot;
1979 2089 msgid "Unconnected"
1980 2090 msgstr "Não conectado"
1981 2091  
  2092 +#: src/core/properties/signed.c:100
  2093 +msgid "Undefined"
  2094 +msgstr "Indefinido"
  2095 +
1982 2096 #: src/core/toggles/table.c:225
1983 2097 msgid "Underline"
1984 2098 msgstr "Sublinhados"
... ... @@ -2001,10 +2115,12 @@ msgid &quot;Unexpected type %d in typeahead queue&quot;
2001 2115 msgstr "Tipo inesperado %d na fila de teclado"
2002 2116  
2003 2117 #: src/core/telnet.c:1774 src/core/telnet.c:1794
  2118 +#: src/core/properties/signed.c:59 src/core/properties/signed.c:88
  2119 +#: src/core/properties/signed.c:108
2004 2120 msgid "Unknown"
2005 2121 msgstr "Desconhecido"
2006 2122  
2007   -#: src/core/ctlr.c:626
  2123 +#: src/core/ctlr.c:402
2008 2124 #, c-format
2009 2125 msgid "Unknown 3270 Data Stream command: 0x%X"
2010 2126 msgstr "Unknown 3270 Data Stream command: 0x%X"
... ... @@ -2027,7 +2143,7 @@ msgstr &quot;PF %d desconhecida&quot;
2027 2143 msgid "Unknown frame type from host"
2028 2144 msgstr "Servidor enviou tipo de frame desconhecido"
2029 2145  
2030   -#: src/core/properties/unsigned.c:161
  2146 +#: src/core/properties/unsigned.c:157
2031 2147 msgid "Unlock delay"
2032 2148 msgstr "Atraso no desbloqueio"
2033 2149  
... ... @@ -2055,6 +2171,10 @@ msgstr &quot;Usar teclas +/- para navegar por campos&quot;
2055 2171 msgid "Use the keys +/- from keypad to select editable fields"
2056 2172 msgstr "Use the keys +/- from keypad to select editable fields"
2057 2173  
  2174 +#: src/core/properties/signed.c:99
  2175 +msgid "Verifying SSL (Getting CRL)"
  2176 +msgstr ""
  2177 +
2058 2178 #: src/core/windows/connect.c:111
2059 2179 msgid "WSAStartup failed"
2060 2180 msgstr "WSAStartup falhou"
... ... @@ -2080,6 +2200,58 @@ msgstr &quot;Erro windows foi %d&quot;
2080 2200 msgid "Wrap around"
2081 2201 msgstr "Wrap around"
2082 2202  
  2203 +#: src/core/properties/signed.c:71 src/core/properties/signed.c:77
  2204 +#: src/core/properties/signed.c:78
  2205 +msgid "X"
  2206 +msgstr "X"
  2207 +
  2208 +#: src/core/properties/signed.c:72
  2209 +msgid "X -f"
  2210 +msgstr "X -f"
  2211 +
  2212 +#: src/core/properties/signed.c:69
  2213 +#, fuzzy
  2214 +msgid "X Connected"
  2215 +msgstr "X Desconectado"
  2216 +
  2217 +#: src/core/properties/signed.c:80
  2218 +#, fuzzy
  2219 +msgid "X Connecting"
  2220 +msgstr "Conectando"
  2221 +
  2222 +#: src/core/properties/signed.c:76
  2223 +msgid "X Inhibit"
  2224 +msgstr "X Inibido"
  2225 +
  2226 +#: src/core/properties/signed.c:70
  2227 +msgid "X Not Connected"
  2228 +msgstr "X Desconectado"
  2229 +
  2230 +#: src/core/properties/signed.c:74
  2231 +msgid "X Numeric"
  2232 +msgstr "X Numérico"
  2233 +
  2234 +#: src/core/properties/signed.c:75
  2235 +msgid "X Overflow"
  2236 +msgstr "X Estouro"
  2237 +
  2238 +#: src/core/properties/signed.c:73
  2239 +msgid "X Protected"
  2240 +msgstr "X Protegido"
  2241 +
  2242 +#: src/core/properties/signed.c:79
  2243 +#, fuzzy
  2244 +msgid "X Resolving"
  2245 +msgstr "Resolvendo"
  2246 +
  2247 +#: src/core/properties/signed.c:67
  2248 +msgid "X System"
  2249 +msgstr "X Sistema"
  2250 +
  2251 +#: src/core/properties/signed.c:68
  2252 +msgid "X Wait"
  2253 +msgstr "X Aguarde"
  2254 +
2083 2255 #: src/core/ft/ftmessages.c:74
2084 2256 msgid ""
2085 2257 "You did not enter the required parameters after a SEND or RECEIVE command."
... ... @@ -2163,15 +2335,19 @@ msgstr &quot;_Desconectar&quot;
2163 2335 msgid "_Reconnect"
2164 2336 msgstr "_Reconectar"
2165 2337  
2166   -#: src/core/windows/connect.c:340
  2338 +#: src/core/linux/connect.c:233 src/core/linux/connect.c:302
  2339 +#: src/core/windows/connect.c:340 src/core/macos/connect.c:233
  2340 +#: src/core/macos/connect.c:302
2167 2341 msgid "_Retry"
2168 2342 msgstr "_Repetir"
2169 2343  
2170   -#: src/core/toggles/init.c:83 src/core/windows/connect.c:372
  2344 +#: src/core/toggles/init.c:83 src/core/linux/connect.c:334
  2345 +#: src/core/windows/connect.c:372 src/core/macos/connect.c:334
2171 2346 msgid "disable"
2172 2347 msgstr "desabilitar"
2173 2348  
2174   -#: src/core/toggles/init.c:83 src/core/windows/connect.c:372
  2349 +#: src/core/toggles/init.c:83 src/core/linux/connect.c:334
  2350 +#: src/core/windows/connect.c:372 src/core/macos/connect.c:334
2175 2351 msgid "enable"
2176 2352 msgstr "habilitar"
2177 2353  
... ... @@ -2183,19 +2359,12 @@ msgstr &quot;erro fcntl() ao obter estado do socket.&quot;
2183 2359 msgid "ioctlsocket(FIONBIO) failed."
2184 2360 msgstr "ioctlsocket(FIONBIO) falhou."
2185 2361  
2186   -#: src/core/properties/string.c:134
2187   -msgid "lib3270 revision"
2188   -msgstr "Revisão da lib3270"
2189   -
2190   -#: src/core/properties/string.c:127
2191   -msgid "lib3270 version"
2192   -msgstr "Versão da lib3270"
2193   -
2194   -#: src/core/properties/boolean.c:191
  2362 +#: src/core/properties/boolean.c:189
2195 2363 msgid "numeric lock"
2196 2364 msgstr "numeric lock"
2197 2365  
2198   -#: src/core/windows/connect.c:359
  2366 +#: src/core/linux/connect.c:322 src/core/windows/connect.c:359
  2367 +#: src/core/macos/connect.c:322
2199 2368 msgid "setsockopt(SO_OOBINLINE) has failed"
2200 2369 msgstr "setsockopt(SO_OOBINLINE) falhou"
2201 2370  
... ... @@ -2488,9 +2657,6 @@ msgstr &quot;setsockopt(SO_OOBINLINE) falhou&quot;
2488 2657 #~ msgid "Can't get screen contents"
2489 2658 #~ msgstr "Não foi possível obter o conteúdo da tela"
2490 2659  
2491   -#~ msgid "Can't initialize curl operation"
2492   -#~ msgstr "Erro ao inicializar operação CURL"
2493   -
2494 2660 #~ msgid "Can't load %s"
2495 2661 #~ msgstr "Não foi possível carregar %s"
2496 2662  
... ... @@ -3518,9 +3684,6 @@ msgstr &quot;setsockopt(SO_OOBINLINE) falhou&quot;
3518 3684 #~ msgid "SSL init failed!"
3519 3685 #~ msgstr "Inicialização SSL falhou"
3520 3686  
3521   -#~ msgid "SSL negotiation"
3522   -#~ msgstr "Negociação SSL"
3523   -
3524 3687 #~ msgid "SSL negotiation has failed"
3525 3688 #~ msgstr "Negociação de segurança falhou"
3526 3689  
... ... @@ -4014,9 +4177,6 @@ msgstr &quot;setsockopt(SO_OOBINLINE) falhou&quot;
4014 4177 #~ msgid "Unable to paste formatted data"
4015 4178 #~ msgstr "Incapaz de colar texto formatado"
4016 4179  
4017   -#~ msgid "Undefined"
4018   -#~ msgstr "Indefinido"
4019   -
4020 4180 #~ msgid "Unexpected SSL error"
4021 4181 #~ msgstr "Erro SSL inesperado"
4022 4182  
... ... @@ -4120,33 +4280,6 @@ msgstr &quot;setsockopt(SO_OOBINLINE) falhou&quot;
4120 4280 #~ msgid "Windows error was \"%s\" (%u)"
4121 4281 #~ msgstr "Erro windows foi \"%s\" (%u)"
4122 4282  
4123   -#~ msgid "X"
4124   -#~ msgstr "X"
4125   -
4126   -#~ msgid "X -f"
4127   -#~ msgstr "X -f"
4128   -
4129   -#~ msgid "X Inhibit"
4130   -#~ msgstr "X Inibido"
4131   -
4132   -#~ msgid "X Not Connected"
4133   -#~ msgstr "X Desconectado"
4134   -
4135   -#~ msgid "X Numeric"
4136   -#~ msgstr "X Numérico"
4137   -
4138   -#~ msgid "X Overflow"
4139   -#~ msgstr "X Estouro"
4140   -
4141   -#~ msgid "X Protected"
4142   -#~ msgstr "X Protegido"
4143   -
4144   -#~ msgid "X System"
4145   -#~ msgstr "X Sistema"
4146   -
4147   -#~ msgid "X Wait"
4148   -#~ msgstr "X Aguarde"
4149   -
4150 4283 #~ msgid "XML file"
4151 4284 #~ msgstr "Arquivo XML"
4152 4285  
... ... @@ -4234,9 +4367,6 @@ msgstr &quot;setsockopt(SO_OOBINLINE) falhou&quot;
4234 4367 #~ msgid "_Save"
4235 4368 #~ msgstr "_Salvar"
4236 4369  
4237   -#~ msgid "_Secure connection."
4238   -#~ msgstr "Conexão _Segura."
4239   -
4240 4370 #~ msgid "_Send"
4241 4371 #~ msgstr "_Enviar"
4242 4372  
... ... @@ -4267,15 +4397,18 @@ msgstr &quot;setsockopt(SO_OOBINLINE) falhou&quot;
4267 4397 #~ msgid "bracket"
4268 4398 #~ msgstr "bracket"
4269 4399  
4270   -#~ msgid "disconnected"
4271   -#~ msgstr "Desconectado"
4272   -
4273 4400 #~ msgid "fcntl(%s)"
4274 4401 #~ msgstr "fcntl(%s)"
4275 4402  
4276 4403 #~ msgid "ioctl(%s)"
4277 4404 #~ msgstr "ioctl(%s)"
4278 4405  
  4406 +#~ msgid "lib3270 revision"
  4407 +#~ msgstr "Revisão da lib3270"
  4408 +
  4409 +#~ msgid "lib3270 version"
  4410 +#~ msgstr "Versão da lib3270"
  4411 +
4279 4412 #~ msgid "setsockopt(%s)"
4280 4413 #~ msgstr "setsockopt(%s)"
4281 4414  
... ...
mac/ci-build.sh
... ... @@ -8,7 +8,10 @@ VERSION=$(grep AC_INIT configure.ac | cut -d[ -f3 | cut -d] -f1)
8 8 echo "${PKG_CONFIG_PATH}"
9 9 pkg-config --list-all
10 10  
11   -./autogen.sh --prefix="/${PROJECT_NAME}/${VERSION}"
  11 +./autogen.sh \
  12 + --prefix="/${PROJECT_NAME}/${VERSION}" \
  13 + --with-libiconv-prefix=$(brew --prefix gettext)
  14 +
12 15 if [ "$?" != "0" ]; then
13 16 exit -1
14 17 fi
... ...
src/core/ctlr.c
... ... @@ -46,7 +46,6 @@
46 46 #include <stdlib.h>
47 47 #include "3270ds.h"
48 48 #include "screen.h"
49   -//#include "resources.h"
50 49  
51 50 #include "ctlrc.h"
52 51 #include "ftc.h"
... ... @@ -65,15 +64,13 @@
65 64 #include "widec.h"
66 65 #include "screenc.h"
67 66  
68   -// Boolean dbcs = False;
69 67  
70   -/* Statics */
  68 +// Statics
71 69 static void update_formatted(H3270 *session);
72 70 static void set_formatted(H3270 *hSession, int state);
73 71 static void ctlr_blanks(H3270 *session);
74 72 static void ctlr_half_connect(H3270 *session, int ignored, void *dunno);
75 73 static void ctlr_connect(H3270 *session, int ignored, void *dunno);
76   -//static void ticking_stop(H3270 *session);
77 74 static void ctlr_add_ic(H3270 *session, int baddr, unsigned char ic);
78 75  
79 76 /**
... ... @@ -92,8 +89,6 @@ static const unsigned char code_table[64] = {
92 89 };
93 90  
94 91 #define IsBlank(c) ((c == EBC_null) || (c == EBC_space))
95   -
96   -
97 92 #define ALL_CHANGED(h) if(lib3270_in_ansi(h)) (h)->cbk.changed(h,0,(h)->view.rows*(h)->view.cols);
98 93 #define REGION_CHANGED(h, f, l) if(lib3270_in_ansi(h)) (h)->cbk.changed(h,f,l)
99 94 #define ONE_CHANGED(h,n) if(lib3270_in_ansi(h)) (h)->cbk.changed(h,n,n+1);
... ... @@ -179,8 +174,6 @@ void ctlr_set_rows_cols(H3270 *session, int mn, int ovc, int ovr) {
179 174 ovc, ovr
180 175 );
181 176  
182   - // popup_an_error(session,"Invalid %s %dx%d:\nNegative or zero",ResOversize, ovc, ovr);
183   -
184 177 } else if (ovc * ovr >= 0x4000) {
185 178 lib3270_popup_dialog(
186 179 session,
... ... @@ -191,8 +184,6 @@ void ctlr_set_rows_cols(H3270 *session, int mn, int ovc, int ovr) {
191 184 ovc, ovr
192 185 );
193 186  
194   -// popup_an_error(session,"Invalid %s %dx%d:\nToo big",ResOversize, ovc, ovr);
195   -
196 187 } else if (ovc < session->max.cols) {
197 188  
198 189 lib3270_popup_dialog(
... ... @@ -204,7 +195,6 @@ void ctlr_set_rows_cols(H3270 *session, int mn, int ovc, int ovr) {
204 195 ovc, session->model_num, session->max.cols
205 196 );
206 197  
207   -// popup_an_error(session,"Invalid %s cols (%d):\nLess than model %d cols (%d)",ResOversize, ovc, session->model_num, session->maxCOLS);
208 198 } else if (ovr < session->max.rows) {
209 199  
210 200 lib3270_popup_dialog(
... ... @@ -216,10 +206,10 @@ void ctlr_set_rows_cols(H3270 *session, int mn, int ovc, int ovr) {
216 206 ovr, session->model_num, session->max.rows
217 207 );
218 208  
219   -// popup_an_error(session,"Invalid %s rows (%d):\nLess than model %d rows (%d)",ResOversize, ovr, session->model_num, session->maxROWS);
220   -
221 209 } else {
  210 +
222 211 update_model_info(session,mn,session->oversize.cols = ovc,session->oversize.rows = ovr);
  212 +
223 213 }
224 214 }
225 215  
... ... @@ -271,8 +261,6 @@ static void ctlr_half_connect(H3270 *hSession, int GNUC_UNUSED(ignored), void GN
271 261 ///
272 262 static void ctlr_connect(H3270 *hSession, int GNUC_UNUSED(ignored), void GNUC_UNUSED(*dunno)) {
273 263 hSession->cbk.set_timer(hSession,0);
274   -// ticking_stop(hSession);
275   -// status_untiming(hSession);
276 264  
277 265 if (hSession->ever_3270)
278 266 hSession->ea_buf[-1].fa = FA_PRINTABLE | FA_MODIFY;
... ... @@ -293,218 +281,6 @@ static void ctlr_connect(H3270 *hSession, int GNUC_UNUSED(ignored), void GNUC_UN
293 281 hSession->crm_nattr = 0;
294 282 }
295 283  
296   -LIB3270_EXPORT int lib3270_is_formatted(const H3270 *hSession) {
297   - if(check_online_session(hSession))
298   - return 0;
299   -
300   - return hSession->formatted ? 1 : 0;
301   -}
302   -
303   -/**
304   - * @brief Get field address.
305   - *
306   - * @return Negative on error(sets errno) or field address.
307   - *
308   - */
309   -LIB3270_EXPORT int lib3270_get_field_start(H3270 *hSession, int baddr) {
310   - int sbaddr;
311   -
312   - if(check_online_session(hSession))
313   - return - errno;
314   -
315   - if (!hSession->formatted)
316   - return - (errno = ENOTSUP);
317   -
318   - if(baddr < 0)
319   - baddr = hSession->cursor_addr;
320   -
321   - sbaddr = baddr;
322   - do {
323   - if(hSession->ea_buf[baddr].fa)
324   - return baddr;
325   - DEC_BA(baddr);
326   - } while (baddr != sbaddr);
327   -
328   - return -1;
329   -
330   -}
331   -
332   -LIB3270_EXPORT int lib3270_get_field_len(H3270 *hSession, int baddr) {
333   - int saddr;
334   - int addr;
335   - int width = 0;
336   -
337   - if(check_online_session(hSession))
338   - return - errno;
339   -
340   - if (!hSession->formatted)
341   - return - (errno = ENOTSUP);
342   -
343   - if(baddr < 0)
344   - baddr = hSession->cursor_addr;
345   -
346   - addr = lib3270_field_addr(hSession,baddr);
347   - if(addr < 0)
348   - return addr;
349   -
350   - saddr = addr;
351   - INC_BA(addr);
352   - do {
353   - if(hSession->ea_buf[addr].fa)
354   - return width;
355   - INC_BA(addr);
356   - width++;
357   - } while (addr != saddr);
358   -
359   - return -(errno = ENODATA);
360   -}
361   -
362   -LIB3270_EXPORT int lib3270_field_addr(const H3270 *hSession, int baddr) {
363   - int sbaddr;
364   -
365   - if(!lib3270_is_connected(hSession))
366   - return -(errno = ENOTCONN);
367   -
368   - if(!hSession->formatted)
369   - return -(errno = ENOTSUP);
370   -
371   - if(baddr < 0)
372   - baddr = lib3270_get_cursor_address(hSession);
373   -
374   - if(baddr > lib3270_get_length(hSession))
375   - return -(errno = EOVERFLOW);
376   -
377   - sbaddr = baddr;
378   - do {
379   - if(hSession->ea_buf[baddr].fa)
380   - return baddr;
381   - DEC_BA(baddr);
382   - } while (baddr != sbaddr);
383   -
384   - return -(errno = ENODATA);
385   -}
386   -
387   -LIB3270_EXPORT LIB3270_FIELD_ATTRIBUTE lib3270_get_field_attribute(H3270 *hSession, int baddr) {
388   - int sbaddr;
389   -
390   - FAIL_IF_NOT_ONLINE(hSession);
391   -
392   - if(!hSession->formatted) {
393   - errno = ENOTCONN;
394   - return LIB3270_FIELD_ATTRIBUTE_INVALID;
395   - }
396   -
397   - if(baddr < 0)
398   - baddr = lib3270_get_cursor_address(hSession);
399   -
400   - sbaddr = baddr;
401   - do {
402   - if(hSession->ea_buf[baddr].fa)
403   - return (LIB3270_FIELD_ATTRIBUTE) hSession->ea_buf[baddr].fa;
404   -
405   - DEC_BA(baddr);
406   - } while (baddr != sbaddr);
407   -
408   - errno = EINVAL;
409   - return LIB3270_FIELD_ATTRIBUTE_INVALID;
410   -
411   -}
412   -
413   -/**
414   - * @brief Get the length of the field at given buffer address.
415   - *
416   - * @param hSession Session handle.
417   - * @param addr Buffer address of the field.
418   - *
419   - * @return field length or negative if invalid or not connected (sets errno).
420   - *
421   - */
422   -int lib3270_field_length(H3270 *hSession, int baddr) {
423   - int saddr;
424   - int addr;
425   - int width = 0;
426   -
427   - addr = lib3270_field_addr(hSession,baddr);
428   - if(addr < 0)
429   - return addr;
430   -
431   - saddr = addr;
432   - INC_BA(addr);
433   - do {
434   - if(hSession->ea_buf[addr].fa)
435   - return width;
436   - INC_BA(addr);
437   - width++;
438   - } while (addr != saddr);
439   -
440   - return -(errno = EINVAL);
441   -
442   -}
443   -
444   -/**
445   - * @brief Find the field attribute for the given buffer address.
446   - *
447   - * @return Field attribute.
448   - *
449   - */
450   -unsigned char get_field_attribute(H3270 *hSession, int baddr) {
451   - baddr = lib3270_field_addr(hSession,baddr);
452   - if(baddr < 0)
453   - return 0;
454   - return hSession->ea_buf[baddr].fa;
455   -}
456   -
457   -/**
458   - * @brief Find the next unprotected field.
459   - *
460   - * @param hSession Session handle.
461   - * @param baddr0 Search start addr (-1 to use current cursor position).
462   - *
463   - * @return address following the unprotected attribute byte, or 0 if no nonzero-width unprotected field can be found, negative if failed.
464   - *
465   - */
466   -LIB3270_EXPORT int lib3270_get_next_unprotected(H3270 *hSession, int baddr0) {
467   - register int baddr, nbaddr;
468   -
469   - FAIL_IF_NOT_ONLINE(hSession);
470   -
471   - if(!hSession->formatted)
472   - return -(errno = ENOTSUP);
473   -
474   - if(baddr0 < 0)
475   - baddr0 = hSession->cursor_addr;
476   -
477   - nbaddr = baddr0;
478   - do {
479   - baddr = nbaddr;
480   - INC_BA(nbaddr);
481   - if(hSession->ea_buf[baddr].fa &&!FA_IS_PROTECTED(hSession->ea_buf[baddr].fa) &&!hSession->ea_buf[nbaddr].fa)
482   - return nbaddr;
483   - } while (nbaddr != baddr0);
484   -
485   - return 0;
486   -}
487   -
488   -LIB3270_EXPORT int lib3270_get_is_protected_at(const H3270 *h, unsigned int row, unsigned int col) {
489   - return lib3270_get_is_protected(h, lib3270_translate_to_address(h,row,col));
490   -}
491   -
492   -LIB3270_EXPORT int lib3270_get_is_protected(const H3270 *hSession, int baddr) {
493   - FAIL_IF_NOT_ONLINE(hSession);
494   -
495   - if(baddr < 0)
496   - baddr = hSession->cursor_addr;
497   -
498   - int faddr = lib3270_field_addr(hSession,baddr);
499   -
500   - return FA_IS_PROTECTED(hSession->ea_buf[faddr].fa) ? 1 : 0;
501   -}
502   -
503   -LIB3270_EXPORT int lib3270_is_protected(H3270 *h, unsigned int baddr) {
504   - return lib3270_get_is_protected(h, baddr);
505   -}
506   -
507   -
508 284 /**
509 285 * @brief Perform an erase command, which may include changing the (virtual) screen size.
510 286 *
... ... @@ -1777,9 +1553,6 @@ enum pds ctlr_write(H3270 *hSession, unsigned char buf[], int buflen, Boolean er
1777 1553  
1778 1554 ps_process(hSession);
1779 1555  
1780   - /* Let a script go. */
1781   -// sms_host_output();
1782   -
1783 1556 /* Tell 'em what happened. */
1784 1557 return rv;
1785 1558 }
... ... @@ -1800,7 +1573,6 @@ void ctlr_write_sscp_lu(H3270 *hSession, unsigned char buf[], int buflen) {
1800 1573 unsigned char *cp = buf;
1801 1574 int s_row;
1802 1575 unsigned char c;
1803   -// int baddr;
1804 1576  
1805 1577 /*
1806 1578 * The 3174 Functionl Description says that anything but NL, NULL, FM,
... ... @@ -1846,7 +1618,6 @@ void ctlr_write_sscp_lu(H3270 *hSession, unsigned char buf[], int buflen) {
1846 1618 break;
1847 1619  
1848 1620 case ORDER_SBA:
1849   -// baddr = DECODE_BADDR(*(cp+1), *(cp+2));
1850 1621 trace_ds(hSession," SetBufferAddress%s [ignored]\n", rcba(hSession,DECODE_BADDR(*(cp+1), *(cp+2))));
1851 1622 cp += 2;
1852 1623 i += 2;
... ...
src/core/field.c 0 → 100644
... ... @@ -0,0 +1,235 @@
  1 +/* SPDX-License-Identifier: LGPL-3.0-or-later */
  2 +
  3 +/*
  4 + * Copyright (C) 2023 Perry Werneck <perry.werneck@gmail.com>
  5 + *
  6 + * This program is free software: you can redistribute it and/or modify
  7 + * it under the terms of the GNU Lesser General Public License as published
  8 + * by the Free Software Foundation, either version 3 of the License, or
  9 + * (at your option) any later version.
  10 + *
  11 + * This program is distributed in the hope that it will be useful,
  12 + * but WITHOUT ANY WARRANTY; without even the implied warranty of
  13 + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  14 + * GNU General Public License for more details.
  15 + *
  16 + * You should have received a copy of the GNU Lesser General Public License
  17 + * along with this program. If not, see <https://www.gnu.org/licenses/>.
  18 + */
  19 +
  20 + #include <config.h>
  21 + #include <internals.h>
  22 + #include <lib3270.h>
  23 + #include "3270ds.h"
  24 +
  25 +/**
  26 + * @brief Get field address.
  27 + *
  28 + * @return Negative on error(sets errno) or field address.
  29 + *
  30 + */
  31 + LIB3270_EXPORT int lib3270_get_field_start(H3270 *hSession, int baddr) {
  32 + int sbaddr;
  33 +
  34 + if(check_online_session(hSession))
  35 + return - errno;
  36 +
  37 + if (!hSession->formatted)
  38 + return - (errno = ENOTSUP);
  39 +
  40 + if(baddr < 0)
  41 + baddr = hSession->cursor_addr;
  42 +
  43 + sbaddr = baddr;
  44 + do {
  45 + if(hSession->ea_buf[baddr].fa)
  46 + return baddr;
  47 + DEC_BA(baddr);
  48 + } while (baddr != sbaddr);
  49 +
  50 + return -1;
  51 +
  52 + }
  53 +
  54 + LIB3270_EXPORT int lib3270_is_formatted(const H3270 *hSession) {
  55 + if(check_online_session(hSession))
  56 + return 0;
  57 + return hSession->formatted ? 1 : 0;
  58 + }
  59 +
  60 + LIB3270_EXPORT int lib3270_get_field_len(H3270 *hSession, int baddr) {
  61 + int saddr;
  62 + int addr;
  63 + int width = 0;
  64 +
  65 + if(check_online_session(hSession))
  66 + return - errno;
  67 +
  68 + if (!hSession->formatted)
  69 + return - (errno = ENOTSUP);
  70 +
  71 + if(baddr < 0)
  72 + baddr = hSession->cursor_addr;
  73 +
  74 + addr = lib3270_field_addr(hSession,baddr);
  75 + if(addr < 0)
  76 + return addr;
  77 +
  78 + saddr = addr;
  79 + INC_BA(addr);
  80 + do {
  81 + if(hSession->ea_buf[addr].fa)
  82 + return width;
  83 + INC_BA(addr);
  84 + width++;
  85 + } while (addr != saddr);
  86 +
  87 + return -(errno = ENODATA);
  88 + }
  89 +
  90 + LIB3270_EXPORT int lib3270_field_addr(const H3270 *hSession, int baddr) {
  91 +
  92 + int sbaddr;
  93 +
  94 + if(!lib3270_is_connected(hSession))
  95 + return -(errno = ENOTCONN);
  96 +
  97 + if(!hSession->formatted)
  98 + return -(errno = ENOTSUP);
  99 +
  100 + if(baddr < 0)
  101 + baddr = lib3270_get_cursor_address(hSession);
  102 +
  103 + if( (unsigned int) baddr > lib3270_get_length(hSession))
  104 + return -(errno = EOVERFLOW);
  105 +
  106 + sbaddr = baddr;
  107 + do {
  108 + if(hSession->ea_buf[baddr].fa)
  109 + return baddr;
  110 + DEC_BA(baddr);
  111 + } while (baddr != sbaddr);
  112 +
  113 + return -(errno = ENODATA);
  114 + }
  115 +
  116 + LIB3270_EXPORT LIB3270_FIELD_ATTRIBUTE lib3270_get_field_attribute(H3270 *hSession, int baddr) {
  117 + int sbaddr;
  118 +
  119 + FAIL_IF_NOT_ONLINE(hSession);
  120 +
  121 + if(!hSession->formatted) {
  122 + errno = ENOTCONN;
  123 + return LIB3270_FIELD_ATTRIBUTE_INVALID;
  124 + }
  125 +
  126 + if(baddr < 0)
  127 + baddr = lib3270_get_cursor_address(hSession);
  128 +
  129 + sbaddr = baddr;
  130 + do {
  131 + if(hSession->ea_buf[baddr].fa)
  132 + return (LIB3270_FIELD_ATTRIBUTE) hSession->ea_buf[baddr].fa;
  133 +
  134 + DEC_BA(baddr);
  135 + } while (baddr != sbaddr);
  136 +
  137 + errno = EINVAL;
  138 + return LIB3270_FIELD_ATTRIBUTE_INVALID;
  139 +
  140 + }
  141 +
  142 +/**
  143 + * @brief Get the length of the field at given buffer address.
  144 + *
  145 + * @param hSession Session handle.
  146 + * @param addr Buffer address of the field.
  147 + *
  148 + * @return field length or negative if invalid or not connected (sets errno).
  149 + *
  150 + */
  151 + int lib3270_field_length(H3270 *hSession, int baddr) {
  152 + int saddr;
  153 + int addr;
  154 + int width = 0;
  155 +
  156 + addr = lib3270_field_addr(hSession,baddr);
  157 + if(addr < 0)
  158 + return addr;
  159 +
  160 + saddr = addr;
  161 + INC_BA(addr);
  162 + do {
  163 + if(hSession->ea_buf[addr].fa)
  164 + return width;
  165 + INC_BA(addr);
  166 + width++;
  167 + } while (addr != saddr);
  168 +
  169 + return -(errno = EINVAL);
  170 +
  171 + }
  172 +
  173 +/**
  174 + * @brief Find the field attribute for the given buffer address.
  175 + *
  176 + * @return Field attribute.
  177 + *
  178 + */
  179 + unsigned char get_field_attribute(H3270 *hSession, int baddr) {
  180 + baddr = lib3270_field_addr(hSession,baddr);
  181 + if(baddr < 0)
  182 + return 0;
  183 + return hSession->ea_buf[baddr].fa;
  184 + }
  185 +
  186 +/**
  187 + * @brief Find the next unprotected field.
  188 + *
  189 + * @param hSession Session handle.
  190 + * @param baddr0 Search start addr (-1 to use current cursor position).
  191 + *
  192 + * @return address following the unprotected attribute byte, or 0 if no nonzero-width unprotected field can be found, negative if failed.
  193 + *
  194 + */
  195 + LIB3270_EXPORT int lib3270_get_next_unprotected(H3270 *hSession, int baddr0) {
  196 + register int baddr, nbaddr;
  197 +
  198 + FAIL_IF_NOT_ONLINE(hSession);
  199 +
  200 + if(!hSession->formatted)
  201 + return -(errno = ENOTSUP);
  202 +
  203 + if(baddr0 < 0)
  204 + baddr0 = hSession->cursor_addr;
  205 +
  206 + nbaddr = baddr0;
  207 + do {
  208 + baddr = nbaddr;
  209 + INC_BA(nbaddr);
  210 + if(hSession->ea_buf[baddr].fa &&!FA_IS_PROTECTED(hSession->ea_buf[baddr].fa) &&!hSession->ea_buf[nbaddr].fa)
  211 + return nbaddr;
  212 + } while (nbaddr != baddr0);
  213 +
  214 + return 0;
  215 + }
  216 +
  217 + LIB3270_EXPORT int lib3270_get_is_protected_at(const H3270 *h, unsigned int row, unsigned int col) {
  218 + return lib3270_get_is_protected(h, lib3270_translate_to_address(h,row,col));
  219 + }
  220 +
  221 + LIB3270_EXPORT int lib3270_get_is_protected(const H3270 *hSession, int baddr) {
  222 +
  223 + FAIL_IF_NOT_ONLINE(hSession);
  224 +
  225 + if(baddr < 0)
  226 + baddr = hSession->cursor_addr;
  227 +
  228 + int faddr = lib3270_field_addr(hSession,baddr);
  229 +
  230 + return FA_IS_PROTECTED(hSession->ea_buf[faddr].fa) ? 1 : 0;
  231 + }
  232 +
  233 + LIB3270_EXPORT int lib3270_is_protected(H3270 *h, unsigned int baddr) {
  234 + return lib3270_get_is_protected(h, baddr);
  235 + }
... ...
src/core/macos/util.c
... ... @@ -64,6 +64,30 @@ static char * build_filename(const char *root, const char *str, va_list args) {
64 64 return (char *) lib3270_realloc(filename,strlen(filename)+1);
65 65 }
66 66  
  67 +LIB3270_EXPORT char * lib3270_get_installation_path() {
  68 +
  69 + char lpFilename[PATH_MAX+1];
  70 +
  71 + memset(lpFilename,0,sizeof(lpFilename));
  72 + uint32_t szPath = PATH_MAX;
  73 + _NSGetExecutablePath(lpFilename, &szPath);
  74 + lpFilename[szPath] = 0;
  75 +
  76 + char *ptr = strrchr(lpFilename,'/');
  77 + if(ptr) {
  78 + ptr[0] = 0;
  79 +
  80 + ptr = strrchr(lpFilename,'/');
  81 + if(ptr && !(strcasecmp(ptr,"/bin") && strcasecmp(ptr,"/lib"))) {
  82 + *ptr = 0;
  83 + }
  84 +
  85 + strncat(lpFilename,"/",PATH_MAX);
  86 + }
  87 +
  88 + return strdup(lpFilename);
  89 +}
  90 +
67 91 char * lib3270_build_data_filename(const char *str, ...) {
68 92  
69 93 va_list args;
... ... @@ -102,27 +126,67 @@ char * lib3270_build_data_filename(const char *str, ...) {
102 126  
103 127 }
104 128  
105   - /*
106 129 //
107   - // Try EXE Path
  130 + // Try installation path
108 131 //
109 132 {
110   - uint32_t size = szPath;
111   - _NSGetExecutablePath(path, &size);
112   - path[size] = 0;
  133 + char *ptr;
  134 + lib3270_autoptr(char) instpath = lib3270_get_installation_path();
113 135  
  136 + if( *(instpath+strlen(instpath)-1) == '/') {
  137 + instpath[strlen(instpath)-1] = 0;
  138 + }
114 139  
115   - }
116   - */
  140 + char relative[PATH_MAX+1];
  141 + memset(relative,0,PATH_MAX);
117 142  
118   - //
119   - // Not found, use the system datadir
120   - //
121   - va_start (args, str);
122   - filename = build_filename(LIB3270_STRINGIZE_VALUE_OF(DATADIR), str, args);
123   - va_end (args);
  143 + {
  144 + va_list args;
  145 + va_start (args, str);
  146 +
  147 + while(str) {
  148 +
  149 + if(str[0] == '/') {
  150 + strncat(relative,str,PATH_MAX);
  151 + } else {
  152 + strncat(relative,"/",PATH_MAX);
  153 + strncat(relative,str,PATH_MAX);
  154 + }
  155 +
  156 + str = va_arg(args, const char *);
  157 + }
  158 +
  159 + va_end (args);
  160 + }
  161 +
  162 + char filename[PATH_MAX+1];
  163 + memset(filename,0,PATH_MAX+1);
  164 +
  165 + // Check instdir
  166 + strncpy(filename,instpath,PATH_MAX);
  167 + strncat(filename,"/share",PATH_MAX);
  168 + strncat(filename,relative,PATH_MAX);
  169 +
  170 + if(access(filename,0) == 0) {
  171 + return strdup(filename);
  172 + }
  173 +
  174 + strncpy(filename,instpath,PATH_MAX);
  175 + strncat(filename,"/share/",PATH_MAX);
  176 + strncat(filename,LIB3270_STRINGIZE_VALUE_OF(PRODUCT_NAME),PATH_MAX);
  177 + strncat(filename,relative,PATH_MAX);
  178 +
  179 + if(access(filename,0) == 0) {
  180 + return strdup(filename);
  181 + }
  182 +
  183 + // Default behavior.
  184 + strncpy(filename,instpath,PATH_MAX);
  185 + strncat(filename,relative,PATH_MAX);
  186 +
  187 + return strdup(filename);
  188 + }
124 189  
125   - return filename;
126 190 }
127 191  
128 192 char * lib3270_build_config_filename(const char *str, ...) {
... ...
src/core/properties/boolean.c
  1 +/* SPDX-License-Identifier: LGPL-3.0-or-later */
  2 +
1 3 /*
2   - * "Software pw3270, desenvolvido com base nos códigos fontes do WC3270 e X3270
3   - * (Paul Mattes Paul.Mattes@usa.net), de emulação de terminal 3270 para acesso a
4   - * aplicativos mainframe. Registro no INPI sob o nome G3270. Registro no INPI sob o nome G3270.
5   - *
6   - * Copyright (C) <2008> <Banco do Brasil S.A.>
7   - *
8   - * Este programa é software livre. Você pode redistribuí-lo e/ou modificá-lo sob
9   - * os termos da GPL v.2 - Licença Pública Geral GNU, conforme publicado pela
10   - * Free Software Foundation.
11   - *
12   - * Este programa é distribuído na expectativa de ser útil, mas SEM QUALQUER
13   - * GARANTIA; sem mesmo a garantia implícita de COMERCIALIZAÇÃO ou de ADEQUAÇÃO
14   - * A QUALQUER PROPÓSITO EM PARTICULAR. Consulte a Licença Pública Geral GNU para
15   - * obter mais detalhes.
  4 + * Copyright (C) 2008 Banco do Brasil S.A.
16 5 *
17   - * Você deve ter recebido uma cópia da Licença Pública Geral GNU junto com este
18   - * programa; se não, escreva para a Free Software Foundation, Inc., 51 Franklin
19   - * St, Fifth Floor, Boston, MA 02110-1301 USA
  6 + * This program is free software: you can redistribute it and/or modify
  7 + * it under the terms of the GNU Lesser General Public License as published
  8 + * by the Free Software Foundation, either version 3 of the License, or
  9 + * (at your option) any later version.
20 10 *
21   - * Este programa está nomeado como - e possui - linhas de código.
  11 + * This program is distributed in the hope that it will be useful,
  12 + * but WITHOUT ANY WARRANTY; without even the implied warranty of
  13 + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  14 + * GNU General Public License for more details.
22 15 *
  16 + * You should have received a copy of the GNU Lesser General Public License
  17 + * along with this program. If not, see <https://www.gnu.org/licenses/>.
  18 + */
  19 +
  20 +/*
23 21 * Contatos:
24 22 *
25 23 * perry.werneck@gmail.com (Alexandre Perry de Souza Werneck)
... ...
src/core/properties/signed.c
  1 +/* SPDX-License-Identifier: LGPL-3.0-or-later */
  2 +
1 3 /*
2   - * "Software pw3270, desenvolvido com base nos códigos fontes do WC3270 e X3270
3   - * (Paul Mattes Paul.Mattes@usa.net), de emulação de terminal 3270 para acesso a
4   - * aplicativos mainframe. Registro no INPI sob o nome G3270. Registro no INPI sob o nome G3270.
5   - *
6   - * Copyright (C) <2008> <Banco do Brasil S.A.>
7   - *
8   - * Este programa é software livre. Você pode redistribuí-lo e/ou modificá-lo sob
9   - * os termos da GPL v.2 - Licença Pública Geral GNU, conforme publicado pela
10   - * Free Software Foundation.
  4 + * Copyright (C) 2008 Banco do Brasil S.A.
11 5 *
12   - * Este programa é distribuído na expectativa de ser útil, mas SEM QUALQUER
13   - * GARANTIA; sem mesmo a garantia implícita de COMERCIALIZAÇÃO ou de ADEQUAÇÃO
14   - * A QUALQUER PROPÓSITO EM PARTICULAR. Consulte a Licença Pública Geral GNU para
15   - * obter mais detalhes.
  6 + * This program is free software: you can redistribute it and/or modify
  7 + * it under the terms of the GNU Lesser General Public License as published
  8 + * by the Free Software Foundation, either version 3 of the License, or
  9 + * (at your option) any later version.
16 10 *
17   - * Você deve ter recebido uma cópia da Licença Pública Geral GNU junto com este
18   - * programa; se não, escreva para a Free Software Foundation, Inc., 51 Franklin
19   - * St, Fifth Floor, Boston, MA 02110-1301 USA
20   - *
21   - * Este programa está nomeado como - e possui - linhas de código.
  11 + * This program is distributed in the hope that it will be useful,
  12 + * but WITHOUT ANY WARRANTY; without even the implied warranty of
  13 + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  14 + * GNU General Public License for more details.
22 15 *
  16 + * You should have received a copy of the GNU Lesser General Public License
  17 + * along with this program. If not, see <https://www.gnu.org/licenses/>.
  18 + */
  19 +
  20 +/*
23 21 * Contatos:
24 22 *
25 23 * perry.werneck@gmail.com (Alexandre Perry de Souza Werneck)
... ... @@ -27,6 +25,10 @@
27 25 *
28 26 */
29 27  
  28 +/**
  29 + * @brief Signed int properties.
  30 + */
  31 +
30 32 #include <config.h>
31 33 #include <internals.h>
32 34 #include <string.h>
... ... @@ -34,18 +36,90 @@
34 36 #include <lib3270/properties.h>
35 37 #include <lib3270/keyboard.h>
36 38  
37   -static int lib3270_get_connection_state_as_int(const H3270 *hSession) {
38   - return (int) lib3270_get_connection_state(hSession);
  39 +LIB3270_EXPORT const char * lib3270_get_connection_state_as_string(const H3270 *hSession) {
  40 +
  41 + static const char * values[] = {
  42 + N_("Disconnected"),
  43 + N_("Connecting to host"),
  44 + N_("Connection pending"),
  45 + N_("Connected, no mode yet"),
  46 + N_("Connected in NVT ANSI mode"),
  47 + N_("Connected in old-style 3270 mode"),
  48 + N_("Connected in TN3270E mode, no negotiated"),
  49 + N_("Connected in TN3270E mode, NVT mode"),
  50 + N_("Connected in TN3270E mode, SSCP-LU mode"),
  51 + N_("Connected in TN3270E mode, 3270 mode")
  52 + };
  53 +
  54 + size_t value = (size_t) lib3270_get_connection_state(hSession);
  55 + if(value < (sizeof(value)/sizeof(values[0]))) {
  56 + return dgettext(GETTEXT_PACKAGE,values[value]);
  57 + }
  58 +
  59 + return _( "Unknown" );
  60 +
39 61 }
40 62  
41   -static int lib3270_get_program_message_as_int(const H3270 *hSession) {
42   - return (int) lib3270_get_program_message(hSession);
  63 +LIB3270_EXPORT const char * lib3270_get_program_message_as_string(const H3270 *hSession) {
  64 +
  65 + static const char * values[] = {
  66 + "",
  67 + N_( "X System" ),
  68 + N_( "X Wait" ),
  69 + N_( "X Connected" ),
  70 + N_( "X Not Connected" ),
  71 + N_( "X" ),
  72 + N_( "X -f" ),
  73 + N_( "X Protected" ),
  74 + N_( "X Numeric" ),
  75 + N_( "X Overflow" ),
  76 + N_( "X Inhibit" ),
  77 + N_( "X" ),
  78 + N_( "X" ),
  79 + N_( "X Resolving" ),
  80 + N_( "X Connecting" )
  81 + };
  82 +
  83 + size_t value = (size_t) lib3270_get_program_message(hSession);
  84 + if(value < (sizeof(value)/sizeof(values[0]))) {
  85 + return dgettext(GETTEXT_PACKAGE,values[value]);
  86 + }
  87 +
  88 + return _( "Unknown" );
  89 +
  90 +}
  91 +
  92 +LIB3270_EXPORT const char * lib3270_get_ssl_state_as_string(const H3270 * hSession) {
  93 +
  94 + static const char * values[] = {
  95 + N_("No secure connection"),
  96 + N_("Connection secure with CA check"),
  97 + N_("Connection secure, no CA, self-signed or expired CRL"),
  98 + N_("Negotiating SSL"),
  99 + N_("Verifying SSL (Getting CRL)"),
  100 + N_("Undefined")
  101 + };
  102 +
  103 + size_t value = (size_t) lib3270_get_ssl_state(hSession);
  104 + if(value < (sizeof(value)/sizeof(values[0]))) {
  105 + return dgettext(GETTEXT_PACKAGE,values[value]);
  106 + }
  107 +
  108 + return _( "Unknown" );
  109 +}
  110 +
  111 +static int lib3270_get_connection_state_as_int(const H3270 *hSession) {
  112 + return (int) lib3270_get_connection_state(hSession);
43 113 }
44 114  
45 115 static int lib3270_get_ssl_state_as_int(const H3270 * hSession) {
46 116 return (int) lib3270_get_ssl_state(hSession);
47 117 }
48 118  
  119 +static int lib3270_get_program_message_as_int(const H3270 *hSession) {
  120 + return (int) lib3270_get_program_message(hSession);
  121 +}
  122 +
49 123 const LIB3270_INT_PROPERTY * lib3270_get_int_properties_list(void) {
50 124  
51 125 static const LIB3270_INT_PROPERTY properties[] = {
... ... @@ -54,7 +128,8 @@ const LIB3270_INT_PROPERTY * lib3270_get_int_properties_list(void) {
54 128 .name = "cstate", // Property name.
55 129 .description = N_( "Connection state" ), // Property description.
56 130 .get = lib3270_get_connection_state_as_int, // Get value.
57   - .set = NULL // Set value.
  131 + .set = NULL, // Set value.
  132 + .describe = lib3270_get_connection_state_as_string
58 133 },
59 134  
60 135 {
... ... @@ -62,28 +137,32 @@ const LIB3270_INT_PROPERTY * lib3270_get_int_properties_list(void) {
62 137 .group = LIB3270_ACTION_GROUP_ONLINE, // Property group.
63 138 .description = N_( "Cursor address" ), // Property description.
64 139 .get = lib3270_get_cursor_address, // Get value.
65   - .set = lib3270_set_cursor_address // Set value.
  140 + .set = lib3270_set_cursor_address, // Set value.
  141 + .describe = NULL
66 142 },
67 143  
68 144 {
69   - .name = "program_message", // Property name.
70   - .description = N_( "Latest program message" ), // Property description.
71   - .get = lib3270_get_program_message_as_int, // Get value.
72   - .set = NULL // Set value.
  145 + .name = "program_message", // Property name.
  146 + .description = N_( "Latest program message" ), // Property description.
  147 + .get = lib3270_get_program_message_as_int, // Get value.
  148 + .set = NULL, // Set value.
  149 + .describe = lib3270_get_program_message_as_string
73 150 },
74 151  
75 152 {
76 153 .name = "ssl_state", // Property name.
77 154 .description = N_( "ID of the session security state" ), // Property description.
78 155 .get = lib3270_get_ssl_state_as_int, // Get value.
79   - .set = NULL // Set value.
  156 + .set = NULL, // Set value.
  157 + .describe = lib3270_get_ssl_state_as_string
80 158 },
81 159  
82 160 {
83 161 .name = NULL,
84 162 .description = NULL,
85 163 .get = NULL,
86   - .set = NULL
  164 + .set = NULL, // Set value.
  165 + .describe = NULL
87 166 }
88 167 };
89 168  
... ...
src/core/properties/string.c
  1 +/* SPDX-License-Identifier: LGPL-3.0-or-later */
  2 +
1 3 /*
2   - * "Software pw3270, desenvolvido com base nos códigos fontes do WC3270 e X3270
3   - * (Paul Mattes Paul.Mattes@usa.net), de emulação de terminal 3270 para acesso a
4   - * aplicativos mainframe. Registro no INPI sob o nome G3270. Registro no INPI sob o nome G3270.
5   - *
6   - * Copyright (C) <2008> <Banco do Brasil S.A.>
7   - *
8   - * Este programa é software livre. Você pode redistribuí-lo e/ou modificá-lo sob
9   - * os termos da GPL v.2 - Licença Pública Geral GNU, conforme publicado pela
10   - * Free Software Foundation.
  4 + * Copyright (C) 2008 Banco do Brasil S.A.
11 5 *
12   - * Este programa é distribuído na expectativa de ser útil, mas SEM QUALQUER
13   - * GARANTIA; sem mesmo a garantia implícita de COMERCIALIZAÇÃO ou de ADEQUAÇÃO
14   - * A QUALQUER PROPÓSITO EM PARTICULAR. Consulte a Licença Pública Geral GNU para
15   - * obter mais detalhes.
  6 + * This program is free software: you can redistribute it and/or modify
  7 + * it under the terms of the GNU Lesser General Public License as published
  8 + * by the Free Software Foundation, either version 3 of the License, or
  9 + * (at your option) any later version.
16 10 *
17   - * Você deve ter recebido uma cópia da Licença Pública Geral GNU junto com este
18   - * programa; se não, escreva para a Free Software Foundation, Inc., 51 Franklin
19   - * St, Fifth Floor, Boston, MA 02110-1301 USA
20   - *
21   - * Este programa está nomeado como - e possui - linhas de código.
  11 + * This program is distributed in the hope that it will be useful,
  12 + * but WITHOUT ANY WARRANTY; without even the implied warranty of
  13 + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  14 + * GNU General Public License for more details.
22 15 *
  16 + * You should have received a copy of the GNU Lesser General Public License
  17 + * along with this program. If not, see <https://www.gnu.org/licenses/>.
  18 + */
  19 +
  20 +/*
23 21 * Contatos:
24 22 *
25 23 * perry.werneck@gmail.com (Alexandre Perry de Souza Werneck)
... ... @@ -38,6 +36,14 @@
38 36 #include <lib3270/ssl.h>
39 37 #include <lib3270/trace.h>
40 38  
  39 +LIB3270_EXPORT const char * lib3270_get_termtype(const H3270 *hSession) {
  40 + return hSession->termtype;
  41 +}
  42 +
  43 +LIB3270_EXPORT const char * lib3270_get_termname(const H3270 *hSession) {
  44 + return hSession->termname;
  45 +}
  46 +
41 47 static const char * get_version(const H3270 GNUC_UNUSED(*hSession)) {
42 48 return lib3270_get_version();
43 49 }
... ... @@ -46,15 +52,9 @@ static const char * get_revision(const H3270 GNUC_UNUSED(*hSession)) {
46 52 return lib3270_get_revision();
47 53 }
48 54  
49   -static const char * lib3270_get_termtype(const H3270 *hSession) {
50   - return hSession->termtype;
51   -}
52   -
53   -static const char * lib3270_get_termname(const H3270 *hSession) {
54   - return hSession->termname;
55   -}
56 55  
57 56 LIB3270_EXPORT const LIB3270_STRING_PROPERTY * lib3270_get_string_properties_list(void) {
  57 +
58 58 static const LIB3270_STRING_PROPERTY properties[] = {
59 59  
60 60 {
... ... @@ -124,27 +124,17 @@ LIB3270_EXPORT const LIB3270_STRING_PROPERTY * lib3270_get_string_properties_lis
124 124  
125 125 {
126 126 .name = "version", // Property name.
127   - .description = N_( "lib3270 version" ), // Property description.
  127 + .description = N_( "Protocol library version" ), // Property description.
128 128 .get = get_version, // Get value.
129 129 .set = NULL // Set value.
130 130 },
131 131  
132 132 {
133   - .name = "revision", // Property name.
134   - .description = N_( "lib3270 revision" ), // Property description.
135   - .get = get_revision, // Get value.
136   - .set = NULL // Set value.
137   - },
138   -
139   - /*
140   - {
141   - .name = "crl_url", // Property name.
142   - .group = LIB3270_ACTION_GROUP_OFFLINE, // Property group.
143   - .description = N_( "URL for the certificate revocation list" ), // Property description.
144   - .get = lib3270_crl_get_url, // Get value.
145   - .set = lib3270_crl_set_url, // Set value.
  133 + .name = "revision", // Property name.
  134 + .description = N_( "Protocol library revision" ), // Property description.
  135 + .get = get_revision, // Get value.
  136 + .set = NULL // Set value.
146 137 },
147   - */
148 138  
149 139 {
150 140 .name = "crl_preferred_protocol", // Property name.
... ...
src/core/properties/unsigned.c
  1 +/* SPDX-License-Identifier: LGPL-3.0-or-later */
  2 +
1 3 /*
2   - * "Software pw3270, desenvolvido com base nos códigos fontes do WC3270 e X3270
3   - * (Paul Mattes Paul.Mattes@usa.net), de emulação de terminal 3270 para acesso a
4   - * aplicativos mainframe. Registro no INPI sob o nome G3270. Registro no INPI sob o nome G3270.
5   - *
6   - * Copyright (C) <2008> <Banco do Brasil S.A.>
7   - *
8   - * Este programa é software livre. Você pode redistribuí-lo e/ou modificá-lo sob
9   - * os termos da GPL v.2 - Licença Pública Geral GNU, conforme publicado pela
10   - * Free Software Foundation.
11   - *
12   - * Este programa é distribuído na expectativa de ser útil, mas SEM QUALQUER
13   - * GARANTIA; sem mesmo a garantia implícita de COMERCIALIZAÇÃO ou de ADEQUAÇÃO
14   - * A QUALQUER PROPÓSITO EM PARTICULAR. Consulte a Licença Pública Geral GNU para
15   - * obter mais detalhes.
  4 + * Copyright (C) 2008 Banco do Brasil S.A.
16 5 *
17   - * Você deve ter recebido uma cópia da Licença Pública Geral GNU junto com este
18   - * programa; se não, escreva para a Free Software Foundation, Inc., 51 Franklin
19   - * St, Fifth Floor, Boston, MA 02110-1301 USA
  6 + * This program is free software: you can redistribute it and/or modify
  7 + * it under the terms of the GNU Lesser General Public License as published
  8 + * by the Free Software Foundation, either version 3 of the License, or
  9 + * (at your option) any later version.
20 10 *
21   - * Este programa está nomeado como - e possui - linhas de código.
  11 + * This program is distributed in the hope that it will be useful,
  12 + * but WITHOUT ANY WARRANTY; without even the implied warranty of
  13 + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  14 + * GNU General Public License for more details.
22 15 *
  16 + * You should have received a copy of the GNU Lesser General Public License
  17 + * along with this program. If not, see <https://www.gnu.org/licenses/>.
  18 + */
  19 +
  20 +/*
23 21 * Contatos:
24 22 *
25 23 * perry.werneck@gmail.com (Alexandre Perry de Souza Werneck)
... ... @@ -34,10 +32,6 @@
34 32 #include <lib3270/properties.h>
35 33 #include <lib3270/keyboard.h>
36 34  
37   -unsigned int lib3270_get_kybdlock_as_int(const H3270 *hSession) {
38   - return (unsigned int) lib3270_get_keyboard_lock_state(hSession);
39   -}
40   -
41 35 const LIB3270_UINT_PROPERTY * lib3270_unsigned_property_get_by_name(const char *name) {
42 36 size_t ix;
43 37 const LIB3270_UINT_PROPERTY * list = lib3270_get_unsigned_properties_list();
... ... @@ -70,6 +64,10 @@ LIB3270_EXPORT int lib3270_set_auto_reconnect(H3270 *hSession, unsigned int time
70 64 return 0;
71 65 }
72 66  
  67 +static unsigned int lib3270_get_kybdlock_as_int(const H3270 *hSession) {
  68 + return (unsigned int) lib3270_get_keyboard_lock_state(hSession);
  69 +}
  70 +
73 71 const LIB3270_UINT_PROPERTY * lib3270_get_unsigned_properties_list(void) {
74 72  
75 73 static const LIB3270_UINT_PROPERTY properties[] = {
... ...
src/core/util.c
... ... @@ -239,6 +239,10 @@ LIB3270_EXPORT const char * lib3270_get_revision(void) {
239 239 return RPQ_REVISION;
240 240 }
241 241  
  242 +LIB3270_EXPORT int lib3270_check_revision(const char GNUC_UNUSED(*revision)) {
  243 + return 0;
  244 +}
  245 +
242 246 LIB3270_EXPORT const char * lib3270_get_product_name(void) {
243 247 return LIB3270_STRINGIZE_VALUE_OF(PRODUCT_NAME);
244 248 }
... ...
src/include/lib3270.h
... ... @@ -94,6 +94,9 @@
94 94 #define LIB3270_STRINGIZE(x) #x
95 95 #define LIB3270_STRINGIZE_VALUE_OF(x) LIB3270_STRINGIZE(x)
96 96  
  97 +typedef struct _h3270 H3270;
  98 +typedef struct _h3270ft H3270FT;
  99 +
97 100 /**
98 101 * @brief BIND definitions.
99 102 */
... ... @@ -368,7 +371,8 @@ typedef enum _lib3270_action_group {
368 371 const char * label; \
369 372 const char * icon; \
370 373 const char * summary; \
371   - const char * description;
  374 + const char * description; \
  375 + const char * (*describe)(const H3270 *);
372 376  
373 377 typedef struct _lib3270_property {
374 378 LIB3270_PROPERTY_HEAD
... ... @@ -393,9 +397,6 @@ typedef enum _lib3270_state {
393 397 LIB3270_STATE_USER // Always the last one
394 398 } LIB3270_STATE;
395 399  
396   -typedef struct _h3270 H3270;
397   -typedef struct _h3270ft H3270FT;
398   -
399 400 /**
400 401 * Get current screen size.
401 402 *
... ... @@ -1490,6 +1491,17 @@ LIB3270_EXPORT const char * lib3270_get_version(void);
1490 1491 */
1491 1492 LIB3270_EXPORT const char * lib3270_get_revision(void);
1492 1493  
  1494 +/**
  1495 + * @brief Test if the revision is valid.
  1496 + *
  1497 + * @param revision Revision number to check.
  1498 + *
  1499 + * @return 0 if the supplied revision is valid to the current library.
  1500 + *
  1501 + */
  1502 +LIB3270_EXPORT int lib3270_check_revision(const char *revision);
  1503 +
  1504 +
1493 1505 LIB3270_EXPORT char * lib3270_vsprintf(const char *fmt, va_list args);
1494 1506 LIB3270_EXPORT char * lib3270_strdup_printf(const char *fmt, ...);
1495 1507  
... ...
src/include/lib3270/properties.h
  1 +/* SPDX-License-Identifier: LGPL-3.0-or-later */
  2 +
1 3 /*
2   - * "Software PW3270, desenvolvido com base nos códigos fontes do WC3270 e X3270
3   - * (Paul Mattes Paul.Mattes@usa.net), de emulação de terminal 3270 para acesso a
4   - * aplicativos mainframe. Registro no INPI sob o nome G3270.
5   - *
6   - * Copyright (C) <2008> <Banco do Brasil S.A.>
7   - *
8   - * Este programa é software livre. Você pode redistribuí-lo e/ou modificá-lo sob
9   - * os termos da GPL v.2 - Licença Pública Geral GNU, conforme publicado pela
10   - * Free Software Foundation.
11   - *
12   - * Este programa é distribuído na expectativa de ser útil, mas SEM QUALQUER
13   - * GARANTIA; sem mesmo a garantia implícita de COMERCIALIZAÇÃO ou de ADEQUAÇÃO
14   - * A QUALQUER PROPÓSITO EM PARTICULAR. Consulte a Licença Pública Geral GNU para
15   - * obter mais detalhes.
  4 + * Copyright (C) 2008 Banco do Brasil S.A.
16 5 *
17   - * Você deve ter recebido uma cópia da Licença Pública Geral GNU junto com este
18   - * programa; se não, escreva para a Free Software Foundation, Inc., 51 Franklin
19   - * St, Fifth Floor, Boston, MA 02110-1301 USA
  6 + * This program is free software: you can redistribute it and/or modify
  7 + * it under the terms of the GNU Lesser General Public License as published
  8 + * by the Free Software Foundation, either version 3 of the License, or
  9 + * (at your option) any later version.
20 10 *
21   - * Este programa está nomeado como -.h e possui - linhas de código.
  11 + * This program is distributed in the hope that it will be useful,
  12 + * but WITHOUT ANY WARRANTY; without even the implied warranty of
  13 + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  14 + * GNU General Public License for more details.
22 15 *
  16 + * You should have received a copy of the GNU Lesser General Public License
  17 + * along with this program. If not, see <https://www.gnu.org/licenses/>.
  18 + */
  19 +
  20 +/*
23 21 * Contatos:
24 22 *
25 23 * perry.werneck@gmail.com (Alexandre Perry de Souza Werneck)
26   - * erico.mendonca@gmail.com (Erico Mascarenhas de Mendonça)
  24 + * erico.mendonca@gmail.com (Erico Mascarenhas Mendonça)
27 25 *
28 26 */
29 27  
... ... @@ -304,6 +302,12 @@ LIB3270_EXPORT int lib3270_set_auto_reconnect(H3270 *hSession, unsigned int time
304 302 */
305 303 LIB3270_EXPORT unsigned int lib3270_get_auto_reconnect(const H3270 *hSession);
306 304  
  305 +LIB3270_EXPORT const char * lib3270_get_connection_state_as_string(const H3270 *hSession);
  306 +LIB3270_EXPORT const char * lib3270_get_program_message_as_string(const H3270 *hSession);
  307 +LIB3270_EXPORT const char * lib3270_get_ssl_state_as_string(const H3270 * hSession);
  308 +LIB3270_EXPORT const char * lib3270_get_termtype(const H3270 *hSession);
  309 +LIB3270_EXPORT const char * lib3270_get_termname(const H3270 *hSession);
  310 +
307 311 #ifdef __cplusplus
308 312 }
309 313 #endif
... ...
src/network_modules/openssl/start.c
  1 +/* SPDX-License-Identifier: LGPL-3.0-or-later */
  2 +
1 3 /*
2   - * "Software PW3270, desenvolvido com base nos códigos fontes do WC3270 e X3270
3   - * (Paul Mattes Paul.Mattes@usa.net), de emulação de terminal 3270 para acesso a
4   - * aplicativos mainframe. Registro no INPI sob o nome G3270.
5   - *
6   - * Copyright (C) <2008> <Banco do Brasil S.A.>
7   - *
8   - * Este programa é software livre. Você pode redistribuí-lo e/ou modificá-lo sob
9   - * os termos da GPL v.2 - Licença Pública Geral ', conforme publicado pela
10   - * Free Software Foundation.
11   - *
12   - * Este programa é distribuído na expectativa de ser útil, mas SEM QUALQUER
13   - * GARANTIA; sem mesmo a garantia implícita de COMERCIALIZAÇÃO ou de ADEQUAÇÃO
14   - * A QUALQUER PROPÓSITO EM PARTICULAR. Consulte a Licença Pública Geral GNU para
15   - * obter mais detalhes.
16   - *
17   - * Você deve ter recebido uma cópia da Licença Pública Geral GNU junto com este
18   - * programa; se não, escreva para a Free Software Foundation, Inc., 51 Franklin
19   - * St, Fifth Floor, Boston, MA 02110-1301 USA
20   - *
21   - * Este programa está nomeado como openssl.c e possui - linhas de código.
  4 + * Copyright (C) 2008 Banco do Brasil S.A.
22 5 *
23   - * Contatos:
  6 + * This program is free software: you can redistribute it and/or modify
  7 + * it under the terms of the GNU Lesser General Public License as published
  8 + * by the Free Software Foundation, either version 3 of the License, or
  9 + * (at your option) any later version.
24 10 *
25   - * perry.werneck@gmail.com (Alexandre Perry de Souza Werneck)
26   - * erico.mendonca@gmail.com (Erico Mascarenhas de Mendonça)
  11 + * This program is distributed in the hope that it will be useful,
  12 + * but WITHOUT ANY WARRANTY; without even the implied warranty of
  13 + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  14 + * GNU General Public License for more details.
27 15 *
  16 + * You should have received a copy of the GNU Lesser General Public License
  17 + * along with this program. If not, see <https://www.gnu.org/licenses/>.
28 18 */
29 19  
30 20 /**
... ... @@ -199,8 +189,17 @@ int x509_store_ctx_error_callback(int ok, X509_STORE_CTX GNUC_UNUSED(*ctx)) {
199 189 int openssl_network_start_tls(H3270 *hSession) {
200 190  
201 191 SSL_CTX * ctx_context = (SSL_CTX *) lib3270_openssl_get_context(hSession);
202   - if(!ctx_context)
  192 + if(!ctx_context) {
  193 +
  194 + if(!hSession->ssl.message) {
  195 + static const LIB3270_SSL_MESSAGE message = {
  196 + .type = LIB3270_NOTIFY_SECURE,
  197 + .summary = N_( "Cant get SSL context for current connection." )
  198 + };
  199 + hSession->ssl.message = &message;
  200 + }
203 201 return -1;
  202 + }
204 203  
205 204 LIB3270_NET_CONTEXT * context = hSession->network.context;
206 205  
... ... @@ -212,7 +211,6 @@ int openssl_network_start_tls(H3270 *hSession) {
212 211 .type = LIB3270_NOTIFY_SECURE,
213 212 .summary = N_( "Cant create a new SSL structure for current connection." )
214 213 };
215   -
216 214 hSession->ssl.message = &message;
217 215 return -1;
218 216 }
... ... @@ -241,6 +239,7 @@ int openssl_network_start_tls(H3270 *hSession) {
241 239 trace_ssl(hSession, "SSL_connect exits with rc=%d\n",rv);
242 240  
243 241 if (rv != 1) {
  242 +
244 243 LIB3270_SSL_MESSAGE message = {
245 244 .type = LIB3270_NOTIFY_ERROR,
246 245 .title = N_( "Connection failed" ),
... ... @@ -313,7 +312,6 @@ int openssl_network_start_tls(H3270 *hSession) {
313 312  
314 313 // CRL download is enabled and verification has failed; look for CRL file.
315 314  
316   -
317 315 trace_ssl(hSession,"CRL Validation has failed, requesting CRL download\n");
318 316 set_ssl_state(hSession,LIB3270_SSL_VERIFYING);
319 317  
... ...
src/testprogram/testprogram.c
... ... @@ -158,6 +158,7 @@ int main(int argc, char *argv[]) {
158 158 printf("Datafile: \"%s\"\n",datafile);
159 159 }
160 160  
  161 + /*
161 162 {
162 163 lib3270_autoptr(char) datafile = lib3270_build_config_filename("test","file.conf",NULL);
163 164 printf("Configfile: \"%s\"\n",datafile);
... ... @@ -167,7 +168,9 @@ int main(int argc, char *argv[]) {
167 168 lib3270_autoptr(char) datafile = lib3270_build_filename("Makefile",NULL);
168 169 printf("Custom file: \"%s\"\n",datafile);
169 170 }
  171 + */
170 172  
  173 + exit(0);
171 174  
172 175 //lib3270_set_toggle(h,LIB3270_TOGGLE_DS_TRACE,1);
173 176 lib3270_set_toggle(h,LIB3270_TOGGLE_SSL_TRACE,1);
... ...
win/bundle.common 0 → 100644
... ... @@ -0,0 +1,359 @@
  1 +#!/bin/bash
  2 +#
  3 +# SPDX-License-Identifier: LGPL-3.0-or-later
  4 +#
  5 +# Copyright (C) 2023 Perry Werneck <perry.werneck@gmail.com>
  6 +#
  7 +# This program is free software: you can redistribute it and/or modify
  8 +# it under the terms of the GNU Lesser General Public License as published
  9 +# by the Free Software Foundation, either version 3 of the License, or
  10 +# (at your option) any later version.
  11 +#
  12 +# This program is distributed in the hope that it will be useful,
  13 +# but WITHOUT ANY WARRANTY; without even the implied warranty of
  14 +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  15 +# GNU General Public License for more details.
  16 +#
  17 +# You should have received a copy of the GNU Lesser General Public License
  18 +# along with this program. If not, see <https://www.gnu.org/licenses/>.
  19 +#
  20 +
  21 +# Check command-line arguments
  22 +argument() {
  23 +
  24 + local cmdline
  25 + for cmdline in ${BASH_ARGV[*]}
  26 + do
  27 + if [ "$(echo ${cmdline} | sed "s@^--@@g" | sed "s@^-@@g" | cut -d= -f1)" == "${1}" ]; then
  28 + local value
  29 + value="$(echo ${cmdline} | cut -d= -f2)"
  30 + if [ -z "${value}" ]; then
  31 + echo "1"
  32 + else
  33 + echo "${value}"
  34 + fi
  35 + return 0
  36 + fi
  37 + done
  38 + echo ""
  39 + return 2
  40 +}
  41 +
  42 +argument "help" > /dev/null
  43 +if [ "$?" == "0" ]; then
  44 + echo "Use ${0} options"
  45 + echo ""
  46 + echo " --help Help options (this screen)"
  47 + echo " --zip Build zipfile"
  48 +
  49 + if [ -e "${srcdir}/win/${PACKAGE_NAME}.nsi" ]; then
  50 + echo " --nsi Build nsi installer"
  51 + fi
  52 + echo " --upload Upload bundle to github"
  53 +fi
  54 +
  55 +# Setup default paths
  56 +srcdir="$(dirname $(dirname $(readlink -f "${0}")))"
  57 +cd ${srcdir}
  58 +if [ "$?" != "0" ]; then
  59 + echo "Cant cd to ${srcdir}"
  60 + exit -1
  61 +fi
  62 +
  63 +if [ -z ${MINGW_PREFIX} ]; then
  64 + if [ -d "/usr/x86_64-w64-mingw32/sys-root/mingw" ]; then
  65 + MINGW_PREFIX="/usr/x86_64-w64-mingw32/sys-root/mingw"
  66 + PKG_CONFIG="/usr/bin/x86_64-w64-mingw32-pkg-config"
  67 + else
  68 + echo "Cant determine mingw prefix"
  69 + exit -1
  70 + fi
  71 +fi
  72 +
  73 +if [ -z ${PKG_CONFIG} ]; then
  74 + PKG_CONFIG=${MINGW_PREFX}/bin/pkg-config
  75 +fi
  76 +
  77 +PACKAGE_NAME=$(grep AC_INIT configure.ac | cut -d[ -f2 | cut -d] -f1)
  78 +if [ -z ${PACKAGE_NAME} ]; then
  79 + echo "Cant determine package name"
  80 + exit -1
  81 +fi
  82 +
  83 +PACKAGE_VERSION=$(grep AC_INIT configure.ac | cut -d[ -f3 | cut -d] -f1)
  84 +if [ -z ${PACKAGE_VERSION} ]; then
  85 + echo "Cant determine package name"
  86 + exit -1
  87 +fi
  88 +
  89 +mkdir -p .bin/bundle
  90 +if [ "$?" != "0" ]; then
  91 + echo "Cant mkdir base buildroot"
  92 + exit -1
  93 +fi
  94 +
  95 +buildroot=$(readlink -f .bin/bundle)
  96 +if [ -z ${buildroot} ]; then
  97 + echo "Cant detect buildroot ${buildroot}"
  98 + exit -1
  99 +fi
  100 +
  101 +mkdir -p "${buildroot}"
  102 +if [ "$?" != "0" ]; then
  103 + echo "Cant mkdir ${buildroot}"
  104 + exit -1
  105 +fi
  106 +
  107 +rm -fr "${buildroot}/*"
  108 +if [ "$?" != "0" ]; then
  109 + echo "Cant clean ${buildroot}"
  110 + exit -1
  111 +fi
  112 +
  113 +bindir="${buildroot}${MINGW_PREFIX}/bin"
  114 +sysdir="${buildroot}/windows/system32"
  115 +
  116 +if [ -z "${WIN_ROOT}" ]; then
  117 + WIN_ROOT="/c/Windows"
  118 +fi
  119 +
  120 +export LANG=C
  121 +
  122 +prepare() {
  123 +
  124 + argument "help" > /dev/null
  125 + if [ "$?" == "0" ]; then
  126 + exit 0
  127 + fi
  128 +
  129 + rm -fr "${buildroot}"
  130 + mkdir -p "${buildroot}"
  131 +}
  132 +
  133 +install_bin() {
  134 +
  135 + mkdir -p "${bindir}"
  136 +
  137 + AGAIN=1
  138 + until [ $AGAIN = 0 ]; do
  139 +
  140 + SOURCES=$(mktemp)
  141 + REQUIRES=$(mktemp)
  142 +
  143 + find "${buildroot}" -iname "*.dll" > ${SOURCES}
  144 + find "${buildroot}" -iname "*.exe" >> ${SOURCES}
  145 +
  146 + while read FILENAME
  147 + do
  148 + echo ${FILENAME}
  149 + objdump -p ${FILENAME} | grep "DLL Name:" | cut -d: -f2 | tr "[:upper:]" "[:lower:]" >> ${REQUIRES}
  150 + done < ${SOURCES}
  151 +
  152 + libs_to_exclude="
  153 + advapi32.dll
  154 + cfgmgr32.dll
  155 + comctl32.dll
  156 + comdlg32.dll
  157 + crypt32.dll
  158 + d3d8.dll
  159 + d3d9.dll
  160 + ddraw.dll
  161 + dnsapi.dll
  162 + dsound.dll
  163 + dwmapi.dll
  164 + gdi32.dll
  165 + gdiplus.dll
  166 + glu32.dll
  167 + glut32.dll
  168 + imm32.dll
  169 + iphlpapi.dll
  170 + kernel32.dll
  171 + ksuser.dll
  172 + mpr.dll
  173 + mscms.dll
  174 + mscoree.dll
  175 + msimg32.dll
  176 + msvcr71.dll
  177 + msvcr80.dll
  178 + msvcr90.dll
  179 + msvcrt.dll
  180 + mswsock.dll
  181 + netapi32.dll
  182 + odbc32.dll
  183 + ole32.dll
  184 + oleacc.dll
  185 + oleaut32.dll
  186 + opengl32.dll
  187 + psapi.dll
  188 + rpcrt4.dll
  189 + secur32.dll
  190 + setupapi.dll
  191 + shell32.dll
  192 + shlwapi.dll
  193 + user32.dll
  194 + usp10.dll
  195 + version.dll
  196 + wininet.dll
  197 + winmm.dll
  198 + wldap32.dll
  199 + ws2_32.dll
  200 + wsock32.dll
  201 + winspool.drv
  202 + ntdll.dll
  203 + winhttp.dll
  204 + hid.dll
  205 + bcrypt.dll
  206 + "
  207 +
  208 + # Remove system DLLs from list
  209 + for i in $libs_to_exclude; do
  210 + sed -i -e "/${i}/d" ${REQUIRES}
  211 + done
  212 +
  213 + AGAIN=0
  214 + while read FILENAME
  215 + do
  216 +
  217 + echo ${FILENAME}
  218 +
  219 + if [ ! -e "${bindir}/${FILENAME}" ]; then
  220 +
  221 + if [ -e ${MINGW_PREFIX}/bin/${FILENAME} ]; then
  222 +
  223 + AGAIN=1
  224 + cp -v "${MINGW_PREFIX}/bin/${FILENAME}" "${bindir}/${FILENAME}"
  225 + if [ "$?" != "0" ]; then
  226 + exit -1
  227 + fi
  228 +
  229 + elif [ -e ${MINGW_PREFIX}/lib/${FILENAME} ]; then
  230 +
  231 + AGAIN=1
  232 + cp -v "${MINGW_PREFIX}/lib/${FILENAME}" "${bindir}/${FILENAME}"
  233 + if [ "$?" != "0" ]; then
  234 + exit -1
  235 + fi
  236 +
  237 + elif [ -e "${WIN_ROOT}/System32/${FILENAME}" ]; then
  238 +
  239 + echo "Ignoring ${WIN_ROOT}/System32/${FILENAME}"
  240 +
  241 + else
  242 +
  243 + echo "Can't find ${MINGW_PREFIX}/bin/${FILENAME} or ${WIN_ROOT}/System32/${FILENAME}"
  244 + find "${MINGW_PREFIX}" -iname "${FILENAME}"
  245 + exit -1
  246 +
  247 + fi
  248 +
  249 + fi
  250 +
  251 + done < ${REQUIRES}
  252 +
  253 + rm -f ${SOURCES}
  254 + rm -f ${REQUIRES}
  255 +
  256 + done
  257 +
  258 + # libhllapi should be available in windows path
  259 + if [ -e "${bindir}/libhllapi.dll" ]; then
  260 + mkdir -p "${sysdir}"
  261 + mv "${bindir}/libhllapi.dll" "${sysdir}"
  262 + if [ "$?" != "0" ]; then
  263 + exit -1
  264 + fi
  265 + fi
  266 +
  267 +}
  268 +
  269 +install_locale() {
  270 +
  271 + mkdir -p ${buildroot}${MINGW_PREFIX}/share/locale/pt_BR/LC_MESSAGES
  272 +
  273 + locales="
  274 + gettext-runtime.mo
  275 + gettext-tools.mo
  276 + glib20.mo
  277 + gtk30.mo
  278 + gtk30-properties.mo
  279 + "
  280 +
  281 + FILENAMES=$(mktemp)
  282 + for i in ${locales}
  283 + do
  284 + find "${MINGW_PREFIX}/share/locale" -name ${i} >> ${FILENAMES}
  285 + done
  286 +
  287 + while read FILENAME
  288 + do
  289 + mkdir -p $(dirname "${buildroot}${FILENAME}")
  290 + cp -v "${FILENAME}" "${buildroot}${FILENAME}"
  291 + if [ "$?" != "0" ]; then
  292 + exit -1
  293 + fi
  294 + done < ${FILENAMES}
  295 + rm -f ${FILENAMES}
  296 +}
  297 +
  298 +
  299 +make_zip() {
  300 +
  301 + cd ${buildroot}${MINGW_PREFIX}
  302 + if [ "$?" != "0" ]; then
  303 + exit -1
  304 + fi
  305 +
  306 + rm -f ${srcdir}/${MINGW_PACKAGE_PREFIX}-${PACKAGE_NAME}-${PACKAGE_VERSION}.bundle.zip
  307 +
  308 + zip -9 -r ${srcdir}/${MINGW_PACKAGE_PREFIX}-${PACKAGE_NAME}-${PACKAGE_VERSION}.bundle.zip .
  309 + if [ "$?" != "0" ]; then
  310 + exit -1
  311 + fi
  312 +
  313 + cd ${srcdir}
  314 + if [ "$?" != "0" ]; then
  315 + exit -1
  316 + fi
  317 +
  318 + if [ -z $(which gh 2> /dev/null) ]; then
  319 + return 0
  320 + fi
  321 +
  322 + argument "upload" > /dev/null
  323 + if [ "$?" == "0" ]; then
  324 + gh release upload --clobber "${PACKAGE_VERSION}" ${srcdir}/${MINGW_PACKAGE_PREFIX}-${PACKAGE_NAME}-${PACKAGE_VERSION}.bundle.zip
  325 + fi
  326 +
  327 +}
  328 +
  329 +install_license() {
  330 + mkdir -p "${buildroot}${MINGW_PREFIX}/usr/share/${PACKAGE_NAME}"
  331 + cp "${srcdir}/LICENSE" "${buildroot}${MINGW_PREFIX}/usr/share/${PACKAGE_NAME}"
  332 + if [ "$?" != "0" ]; then
  333 + echo "Cant copy LICENSE"
  334 + exit -1
  335 + fi
  336 +}
  337 +
  338 +install_runtime() {
  339 + install_bin
  340 + install_locale
  341 +}
  342 +
  343 +build_package() {
  344 +
  345 + # Build
  346 + make -C "${srcdir}" all
  347 + if [ "$?" != "0" ]; then
  348 + echo "Build failed"
  349 + exit -1
  350 + fi
  351 +
  352 + make -C "${srcdir}" "DESTDIR=${buildroot}" install
  353 + if [ "$?" != "0" ]; then
  354 + echo "Install failed"
  355 + exit -1
  356 + fi
  357 +
  358 +}
  359 +
... ...
win/bundle.cross 0 → 100755
... ... @@ -0,0 +1,60 @@
  1 +#!/bin/bash
  2 +#
  3 +# SPDX-License-Identifier: LGPL-3.0-or-later
  4 +#
  5 +# Copyright (C) 2023 Perry Werneck <perry.werneck@gmail.com>
  6 +#
  7 +# This program is free software: you can redistribute it and/or modify
  8 +# it under the terms of the GNU Lesser General Public License as published
  9 +# by the Free Software Foundation, either version 3 of the License, or
  10 +# (at your option) any later version.
  11 +#
  12 +# This program is distributed in the hope that it will be useful,
  13 +# but WITHOUT ANY WARRANTY; without even the implied warranty of
  14 +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  15 +# GNU General Public License for more details.
  16 +#
  17 +# You should have received a copy of the GNU Lesser General Public License
  18 +# along with this program. If not, see <https://www.gnu.org/licenses/>.
  19 +#
  20 +
  21 +MINGW_PREFIX="/usr/x86_64-w64-mingw32/sys-root/mingw"
  22 +PKG_CONFIG="/usr/bin/x86_64-w64-mingw32-pkg-config"
  23 +MINGW_PACKAGE_PREFIX="mingw64"
  24 +
  25 +# Load bundle functions
  26 +. "$(dirname $(readlink -f "${0}"))/bundle.common"
  27 +
  28 +argument "help" > /dev/null
  29 +if [ "$?" == "0" ]; then
  30 + echo " --install-requires Install required packages"
  31 + echo " --build Build application from source"
  32 +fi
  33 +
  34 +prepare
  35 +
  36 +argument "build" > /dev/null
  37 +if [ "$?" == "0" ]; then
  38 +
  39 + NOCONFIGURE=1 ./autogen.sh
  40 + if [ "$?" != "0" ]; then
  41 + echo "Configure failed"
  42 + exit -1
  43 + fi
  44 +
  45 + ${MINGW_PACKAGE_PREFIX}-configure
  46 + if [ "$?" != "0" ]; then
  47 + echo "Configure failed"
  48 + exit -1
  49 + fi
  50 +
  51 + build_package
  52 +
  53 +fi
  54 +
  55 +install_bin
  56 +install_license
  57 +make_zip
  58 +
  59 +echo "Bundle build complete"
  60 +
... ...
win/bundle.msys 0 → 100755
... ... @@ -0,0 +1,70 @@
  1 +#!/bin/bash
  2 +#
  3 +# SPDX-License-Identifier: LGPL-3.0-or-later
  4 +#
  5 +# Copyright (C) 2023 Perry Werneck <perry.werneck@gmail.com>
  6 +#
  7 +# This program is free software: you can redistribute it and/or modify
  8 +# it under the terms of the GNU Lesser General Public License as published
  9 +# by the Free Software Foundation, either version 3 of the License, or
  10 +# (at your option) any later version.
  11 +#
  12 +# This program is distributed in the hope that it will be useful,
  13 +# but WITHOUT ANY WARRANTY; without even the implied warranty of
  14 +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  15 +# GNU General Public License for more details.
  16 +#
  17 +# You should have received a copy of the GNU Lesser General Public License
  18 +# along with this program. If not, see <https://www.gnu.org/licenses/>.
  19 +#
  20 +
  21 +# Load bundle functions
  22 +. "$(dirname $(readlink -f "${0}"))/bundle.common"
  23 +
  24 +prepare
  25 +
  26 +argument "pre-reqs" > /dev/null
  27 +if [ "$?" == "0" ]; then
  28 + pacman \
  29 + -S --needed \
  30 + zip \
  31 + autoconf \
  32 + automake \
  33 + make \
  34 + libtool \
  35 + pkgconf \
  36 + gzip \
  37 + dos2unix \
  38 + ${MINGW_PACKAGE_PREFIX}-gcc \
  39 + ${MINGW_PACKAGE_PREFIX}-gettext \
  40 + ${MINGW_PACKAGE_PREFIX}-openssl
  41 +
  42 + if [ "$?" != "0" ]; then
  43 + echo "pacman failed"
  44 + exit -1
  45 + fi
  46 +fi
  47 +
  48 +argument "build" > /dev/null
  49 +if [ "$?" == "0" ]; then
  50 +
  51 + NOCONFIGURE=1 ./autogen.sh
  52 + if [ "$?" != "0" ]; then
  53 + echo "Configure failed"
  54 + exit -1
  55 + fi
  56 +
  57 + ./configure
  58 + if [ "$?" != "0" ]; then
  59 + echo "Configure failed"
  60 + exit -1
  61 + fi
  62 +
  63 +fi
  64 +
  65 +build_package
  66 +install_bin
  67 +install_license
  68 +make_zip
  69 +
  70 +
... ...
win/lib3270.def
... ... @@ -21,333 +21,339 @@ EXPORTS
21 21 lib3270_calloc @20
22 22 lib3270_can_paste_next @21
23 23 lib3270_charsettable @22
24   - lib3270_chomp @23
25   - lib3270_chug @24
26   - lib3270_clear @25
27   - lib3270_clear_operator_error @26
28   - lib3270_cmp_string_at @27
29   - lib3270_cmp_string_at_address @28
30   - lib3270_connect_url @29
31   - lib3270_connection_state_get_name @30
32   - lib3270_crl_get_preferred_protocol @31
33   - lib3270_crl_set_preferred_protocol @32
34   - lib3270_cursor_down @33
35   - lib3270_cursor_left @34
36   - lib3270_cursor_right @35
37   - lib3270_cursor_up @36
38   - lib3270_cut_selected @37
39   - lib3270_data_recv @38
40   - lib3270_delete @39
41   - lib3270_deletefield @40
42   - lib3270_deleteword @41
43   - lib3270_disconnect @42
44   - lib3270_drag_selection @43
45   - lib3270_dup @44
46   - lib3270_ebc2asc @45
47   - lib3270_emulate_input @46
48   - lib3270_enter @47
49   - lib3270_erase @48
50   - lib3270_erase_selected @49
51   - lib3270_eraseeof @50
52   - lib3270_eraseeol @51
53   - lib3270_eraseinput @52
54   - lib3270_field_addr @53
55   - lib3270_field_length @54
56   - lib3270_fieldend @55
57   - lib3270_fieldmark @56
58   - lib3270_firstfield @57
59   - lib3270_free @58
60   - lib3270_ft_cancel @59
61   - lib3270_ft_destroy @60
62   - lib3270_ft_get_user_data @61
63   - lib3270_ft_new @62
64   - lib3270_ft_set_blksize @63
65   - lib3270_ft_set_lrecl @64
66   - lib3270_ft_set_options @65
67   - lib3270_ft_set_primspace @66
68   - lib3270_ft_set_secspace @67
69   - lib3270_ft_set_user_data @68
70   - lib3270_ft_start @69
71   - lib3270_get_action @70
72   - lib3270_get_actions @71
73   - lib3270_get_associated_luname @72
74   - lib3270_get_attribute_at_address @73
75   - lib3270_get_auto_reconnect @74
76   - lib3270_get_boolean_properties_list @75
77   - lib3270_get_color_type @76
78   - lib3270_get_connection_state @77
79   - lib3270_get_contents @78
80   - lib3270_get_cursor_address @79
81   - lib3270_get_cursor_position @80
82   - lib3270_get_default_charset @81
83   - lib3270_get_default_host @82
84   - lib3270_get_default_session_handle @83
85   - lib3270_get_display_charset @84
86   - lib3270_get_element @85
87   - lib3270_get_field_attribute @86
88   - lib3270_get_field_bounds @87
89   - lib3270_get_field_end @88
90   - lib3270_get_field_len @89
91   - lib3270_get_field_start @90
92   - lib3270_get_field_string_at @91
93   - lib3270_get_ft_callbacks @92
94   - lib3270_get_ft_state @93
95   - lib3270_get_has_copy @94
96   - lib3270_get_has_selection @95
97   - lib3270_get_height @96
98   - lib3270_get_host @97
99   - lib3270_get_host_charset @98
100   - lib3270_get_host_type @99
101   - lib3270_get_host_type_name @100
102   - lib3270_get_installation_path @101
103   - lib3270_get_int_properties_list @102
104   - lib3270_get_int_property @103
105   - lib3270_get_is_protected @104
106   - lib3270_get_is_protected_at @105
107   - lib3270_get_keyboard_lock_state @106
108   - lib3270_get_length @107
109   - lib3270_get_lock_on_operator_error @108
110   - lib3270_get_lock_status @109
111   - lib3270_get_log_filename @110
112   - lib3270_get_lunames @111
113   - lib3270_get_max_height @112
114   - lib3270_get_max_width @113
115   - lib3270_get_model @114
116   - lib3270_get_model_name @115
117   - lib3270_get_model_number @116
118   - lib3270_get_next_unprotected @117
119   - lib3270_get_numeric_lock @118
120   - lib3270_get_oia_box_solid @119
121   - lib3270_get_option_list @120
122   - lib3270_get_oversize @121
123   - lib3270_get_pointer @122
124   - lib3270_get_product_name @123
125   - lib3270_get_program_message @124
126   - lib3270_get_region @125
127   - lib3270_get_revision @126
128   - lib3270_get_screen_size @127
129   - lib3270_get_selected @128
130   - lib3270_get_selected_text @129
131   - lib3270_get_selection @130
132   - lib3270_get_selection_bounds @131
133   - lib3270_get_selection_flags @132
134   - lib3270_get_selection_rectangle @133
135   - lib3270_get_session_callbacks @134
136   - lib3270_get_session_id @135
137   - lib3270_get_ssl_crl_text @136
138   - lib3270_get_ssl_peer_certificate_text @137
139   - lib3270_get_ssl_state @138
140   - lib3270_get_ssl_state_description @139
141   - lib3270_get_ssl_state_icon_name @140
142   - lib3270_get_ssl_state_message @141
143   - lib3270_get_string_at @142
144   - lib3270_get_string_at_address @143
145   - lib3270_get_string_properties_list @144
146   - lib3270_get_task_count @145
147   - lib3270_get_toggle @146
148   - lib3270_get_toggle_description @147
149   - lib3270_get_toggle_id @148
150   - lib3270_get_toggle_label @149
151   - lib3270_get_toggle_list @150
152   - lib3270_get_toggle_name @151
153   - lib3270_get_toggle_summary @152
154   - lib3270_get_toggles @153
155   - lib3270_get_trace_filename @154
156   - lib3270_get_trace_handler @155
157   - lib3270_get_translation_domain @156
158   - lib3270_get_typeahead @157
159   - lib3270_get_undera @158
160   - lib3270_get_unlock_delay @159
161   - lib3270_get_unsigned_properties_list @160
162   - lib3270_get_url @161
163   - lib3270_get_user_data @162
164   - lib3270_get_version @163
165   - lib3270_get_version_info @164
166   - lib3270_get_width @165
167   - lib3270_get_word_bounds @166
168   - lib3270_getpeername @167
169   - lib3270_getsockname @168
170   - lib3270_half_connected @169
171   - lib3270_has_active_script @170
172   - lib3270_has_selection @171
173   - lib3270_host_get_name @172
174   - lib3270_iconv_free @173
175   - lib3270_iconv_from_host @174
176   - lib3270_iconv_new @175
177   - lib3270_iconv_to_host @176
178   - lib3270_in_3270 @177
179   - lib3270_in_ansi @178
180   - lib3270_in_e @179
181   - lib3270_in_neither @180
182   - lib3270_in_sscp @181
183   - lib3270_in_tn3270e @182
184   - lib3270_input_string @183
185   - lib3270_is_as400 @184
186   - lib3270_is_connected @185
187   - lib3270_is_disconnected @186
188   - lib3270_is_formatted @187
189   - lib3270_is_protected @188
190   - lib3270_is_ready @189
191   - lib3270_is_secure @190
192   - lib3270_is_selected @191
193   - lib3270_is_tso @192
194   - lib3270_is_unlocked @193
195   - lib3270_kybdreset @194
196   - lib3270_load @195
197   - lib3270_main_iterate @196
198   - lib3270_malloc @197
199   - lib3270_move_cursor @198
200   - lib3270_move_selected_area @199
201   - lib3270_move_selection @200
202   - lib3270_newline @201
203   - lib3270_nextfield @202
204   - lib3270_nextword @203
205   - lib3270_pakey @204
206   - lib3270_parse_host_type @205
207   - lib3270_paste_next @206
208   - lib3270_paste_text @207
209   - lib3270_pconnected @208
210   - lib3270_pfkey @209
211   - lib3270_popup @210
212   - lib3270_popup_an_errno @211
213   - lib3270_popup_clone_printf @212
214   - lib3270_popup_dialog @213
215   - lib3270_popup_va @214
216   - lib3270_previousfield @215
217   - lib3270_previousword @216
218   - lib3270_print @217
219   - lib3270_print_all @218
220   - lib3270_print_copy @219
221   - lib3270_print_selected @220
222   - lib3270_property_get_by_name @221
223   - lib3270_property_get_description @222
224   - lib3270_property_get_label @223
225   - lib3270_property_get_name @224
226   - lib3270_property_get_summary @225
227   - lib3270_property_get_tooltip @226
228   - lib3270_realloc @227
229   - lib3270_receive @228
230   - lib3270_reconnect @229
231   - lib3270_register_action_group_listener @230
232   - lib3270_register_fd_handlers @231
233   - lib3270_register_io_controller @232
234   - lib3270_register_schange @233
235   - lib3270_register_timer_handlers @234
236   - lib3270_register_toggle_listener @235
237   - lib3270_remap_char @236
238   - lib3270_remove_poll @237
239   - lib3270_remove_poll_fd @238
240   - lib3270_reselect @239
241   - lib3270_reset_callbacks @240
242   - lib3270_reset_charset @241
243   - lib3270_reset_ft_callbacks @242
244   - lib3270_ring_bell @243
245   - lib3270_run_task @244
246   - lib3270_save @245
247   - lib3270_save_all @246
248   - lib3270_save_copy @247
249   - lib3270_save_selected @248
250   - lib3270_select_all @249
251   - lib3270_select_field @250
252   - lib3270_select_field_at @251
253   - lib3270_select_region @252
254   - lib3270_select_to @253
255   - lib3270_select_word @254
256   - lib3270_select_word_at @255
257   - lib3270_selection_get_length @256
258   - lib3270_selection_new @257
259   - lib3270_send @258
260   - lib3270_service_get_name @259
261   - lib3270_session_free @260
262   - lib3270_session_new @261
263   - lib3270_set_as400 @262
264   - lib3270_set_auto_reconnect @263
265   - lib3270_set_boolean_property @264
266   - lib3270_set_color_type @265
267   - lib3270_set_connected_initial @266
268   - lib3270_set_cursor_address @267
269   - lib3270_set_cursor_position @268
270   - lib3270_set_dft_buffersize @269
271   - lib3270_set_disconnected @270
272   - lib3270_set_field @271
273   - lib3270_set_has_copy @272
274   - lib3270_set_host_charset @273
275   - lib3270_set_host_type @274
276   - lib3270_set_host_type_by_name @275
277   - lib3270_set_int_property @276
278   - lib3270_set_lock_on_operator_error @277
279   - lib3270_set_log_filename @278
280   - lib3270_set_log_handler @279
281   - lib3270_set_lunames @280
282   - lib3270_set_model @281
283   - lib3270_set_model_name @282
284   - lib3270_set_model_number @283
285   - lib3270_set_numeric_lock @284
286   - lib3270_set_oversize @285
287   - lib3270_set_poll_state @286
288   - lib3270_set_popup_handler @287
289   - lib3270_set_session_id @288
290   - lib3270_set_string @289
291   - lib3270_set_string_at @290
292   - lib3270_set_string_at_address @291
293   - lib3270_set_string_property @292
294   - lib3270_set_syslog @293
295   - lib3270_set_toggle @294
296   - lib3270_set_trace_filename @295
297   - lib3270_set_trace_handler @296
298   - lib3270_set_tso @297
299   - lib3270_set_uint_property @298
300   - lib3270_set_unlock_delay @299
301   - lib3270_set_url @300
302   - lib3270_set_user_data @301
303   - lib3270_setup_session @302
304   - lib3270_ssl_get_crl_download @303
305   - lib3270_ssl_set_crl_download @304
306   - lib3270_state_get_name @305
307   - lib3270_strdup @306
308   - lib3270_strdup_printf @307
309   - lib3270_strip @308
310   - lib3270_sysreq @309
311   - lib3270_testpattern @310
312   - lib3270_toggle @311
313   - lib3270_toggle_get_by_name @312
314   - lib3270_toggle_get_description @313
315   - lib3270_toggle_get_from_id @314
316   - lib3270_toggle_get_label @315
317   - lib3270_toggle_get_name @316
318   - lib3270_toggle_get_summary @317
319   - lib3270_trace_data @318
320   - lib3270_trace_event @319
321   - lib3270_translate_char @320
322   - lib3270_translate_ft_message @321
323   - lib3270_translate_to_address @322
324   - lib3270_unregister_action_group_listener @323
325   - lib3270_unregister_schange @324
326   - lib3270_unregister_toggle_listener @325
327   - lib3270_unselect @326
328   - lib3270_unsigned_property_get_by_name @327
329   - lib3270_update_poll_fd @328
330   - lib3270_vsprintf @329
331   - lib3270_wait @330
332   - lib3270_wait_for_connected @331
333   - lib3270_wait_for_cstate @332
334   - lib3270_wait_for_keyboard_unlock @333
335   - lib3270_wait_for_ready @334
336   - lib3270_wait_for_string @335
337   - lib3270_wait_for_string_at @336
338   - lib3270_wait_for_string_at_address @337
339   - lib3270_wait_for_update @338
340   - lib3270_win32_create_regkey @339
341   - lib3270_win32_get_dword @340
342   - lib3270_win32_local_charset @341
343   - lib3270_win32_set_string @342
344   - lib3270_win32_strerror @343
345   - lib3270_win32_translate_error_code @344
346   - lib3270_write_dstrace @345
347   - lib3270_write_event_trace @346
348   - lib3270_write_log @347
349   - lib3270_write_nettrace @348
350   - lib3270_write_rc @349
351   - lib3270_write_screen_trace @350
352   - lib3270_write_trace @351
353   - lib3270_write_va_log @352
  24 + lib3270_check_revision @23
  25 + lib3270_chomp @24
  26 + lib3270_chug @25
  27 + lib3270_clear @26
  28 + lib3270_clear_operator_error @27
  29 + lib3270_cmp_string_at @28
  30 + lib3270_cmp_string_at_address @29
  31 + lib3270_connect_url @30
  32 + lib3270_connection_state_get_name @31
  33 + lib3270_crl_get_preferred_protocol @32
  34 + lib3270_crl_set_preferred_protocol @33
  35 + lib3270_cursor_down @34
  36 + lib3270_cursor_left @35
  37 + lib3270_cursor_right @36
  38 + lib3270_cursor_up @37
  39 + lib3270_cut_selected @38
  40 + lib3270_data_recv @39
  41 + lib3270_delete @40
  42 + lib3270_deletefield @41
  43 + lib3270_deleteword @42
  44 + lib3270_disconnect @43
  45 + lib3270_drag_selection @44
  46 + lib3270_dup @45
  47 + lib3270_ebc2asc @46
  48 + lib3270_emulate_input @47
  49 + lib3270_enter @48
  50 + lib3270_erase @49
  51 + lib3270_erase_selected @50
  52 + lib3270_eraseeof @51
  53 + lib3270_eraseeol @52
  54 + lib3270_eraseinput @53
  55 + lib3270_field_addr @54
  56 + lib3270_field_length @55
  57 + lib3270_fieldend @56
  58 + lib3270_fieldmark @57
  59 + lib3270_firstfield @58
  60 + lib3270_free @59
  61 + lib3270_ft_cancel @60
  62 + lib3270_ft_destroy @61
  63 + lib3270_ft_get_user_data @62
  64 + lib3270_ft_new @63
  65 + lib3270_ft_set_blksize @64
  66 + lib3270_ft_set_lrecl @65
  67 + lib3270_ft_set_options @66
  68 + lib3270_ft_set_primspace @67
  69 + lib3270_ft_set_secspace @68
  70 + lib3270_ft_set_user_data @69
  71 + lib3270_ft_start @70
  72 + lib3270_get_action @71
  73 + lib3270_get_actions @72
  74 + lib3270_get_associated_luname @73
  75 + lib3270_get_attribute_at_address @74
  76 + lib3270_get_auto_reconnect @75
  77 + lib3270_get_boolean_properties_list @76
  78 + lib3270_get_color_type @77
  79 + lib3270_get_connection_state @78
  80 + lib3270_get_connection_state_as_string @79
  81 + lib3270_get_contents @80
  82 + lib3270_get_cursor_address @81
  83 + lib3270_get_cursor_position @82
  84 + lib3270_get_default_charset @83
  85 + lib3270_get_default_host @84
  86 + lib3270_get_default_session_handle @85
  87 + lib3270_get_display_charset @86
  88 + lib3270_get_element @87
  89 + lib3270_get_field_attribute @88
  90 + lib3270_get_field_bounds @89
  91 + lib3270_get_field_end @90
  92 + lib3270_get_field_len @91
  93 + lib3270_get_field_start @92
  94 + lib3270_get_field_string_at @93
  95 + lib3270_get_ft_callbacks @94
  96 + lib3270_get_ft_state @95
  97 + lib3270_get_has_copy @96
  98 + lib3270_get_has_selection @97
  99 + lib3270_get_height @98
  100 + lib3270_get_host @99
  101 + lib3270_get_host_charset @100
  102 + lib3270_get_host_type @101
  103 + lib3270_get_host_type_name @102
  104 + lib3270_get_installation_path @103
  105 + lib3270_get_int_properties_list @104
  106 + lib3270_get_int_property @105
  107 + lib3270_get_is_protected @106
  108 + lib3270_get_is_protected_at @107
  109 + lib3270_get_keyboard_lock_state @108
  110 + lib3270_get_length @109
  111 + lib3270_get_lock_on_operator_error @110
  112 + lib3270_get_lock_status @111
  113 + lib3270_get_log_filename @112
  114 + lib3270_get_lunames @113
  115 + lib3270_get_max_height @114
  116 + lib3270_get_max_width @115
  117 + lib3270_get_model @116
  118 + lib3270_get_model_name @117
  119 + lib3270_get_model_number @118
  120 + lib3270_get_next_unprotected @119
  121 + lib3270_get_numeric_lock @120
  122 + lib3270_get_oia_box_solid @121
  123 + lib3270_get_option_list @122
  124 + lib3270_get_oversize @123
  125 + lib3270_get_pointer @124
  126 + lib3270_get_product_name @125
  127 + lib3270_get_program_message @126
  128 + lib3270_get_program_message_as_string @127
  129 + lib3270_get_region @128
  130 + lib3270_get_revision @129
  131 + lib3270_get_screen_size @130
  132 + lib3270_get_selected @131
  133 + lib3270_get_selected_text @132
  134 + lib3270_get_selection @133
  135 + lib3270_get_selection_bounds @134
  136 + lib3270_get_selection_flags @135
  137 + lib3270_get_selection_rectangle @136
  138 + lib3270_get_session_callbacks @137
  139 + lib3270_get_session_id @138
  140 + lib3270_get_ssl_crl_text @139
  141 + lib3270_get_ssl_peer_certificate_text @140
  142 + lib3270_get_ssl_state @141
  143 + lib3270_get_ssl_state_as_string @142
  144 + lib3270_get_ssl_state_description @143
  145 + lib3270_get_ssl_state_icon_name @144
  146 + lib3270_get_ssl_state_message @145
  147 + lib3270_get_string_at @146
  148 + lib3270_get_string_at_address @147
  149 + lib3270_get_string_properties_list @148
  150 + lib3270_get_task_count @149
  151 + lib3270_get_termname @150
  152 + lib3270_get_termtype @151
  153 + lib3270_get_toggle @152
  154 + lib3270_get_toggle_description @153
  155 + lib3270_get_toggle_id @154
  156 + lib3270_get_toggle_label @155
  157 + lib3270_get_toggle_list @156
  158 + lib3270_get_toggle_name @157
  159 + lib3270_get_toggle_summary @158
  160 + lib3270_get_toggles @159
  161 + lib3270_get_trace_filename @160
  162 + lib3270_get_trace_handler @161
  163 + lib3270_get_translation_domain @162
  164 + lib3270_get_typeahead @163
  165 + lib3270_get_undera @164
  166 + lib3270_get_unlock_delay @165
  167 + lib3270_get_unsigned_properties_list @166
  168 + lib3270_get_url @167
  169 + lib3270_get_user_data @168
  170 + lib3270_get_version @169
  171 + lib3270_get_version_info @170
  172 + lib3270_get_width @171
  173 + lib3270_get_word_bounds @172
  174 + lib3270_getpeername @173
  175 + lib3270_getsockname @174
  176 + lib3270_half_connected @175
  177 + lib3270_has_active_script @176
  178 + lib3270_has_selection @177
  179 + lib3270_host_get_name @178
  180 + lib3270_iconv_free @179
  181 + lib3270_iconv_from_host @180
  182 + lib3270_iconv_new @181
  183 + lib3270_iconv_to_host @182
  184 + lib3270_in_3270 @183
  185 + lib3270_in_ansi @184
  186 + lib3270_in_e @185
  187 + lib3270_in_neither @186
  188 + lib3270_in_sscp @187
  189 + lib3270_in_tn3270e @188
  190 + lib3270_input_string @189
  191 + lib3270_is_as400 @190
  192 + lib3270_is_connected @191
  193 + lib3270_is_disconnected @192
  194 + lib3270_is_formatted @193
  195 + lib3270_is_protected @194
  196 + lib3270_is_ready @195
  197 + lib3270_is_secure @196
  198 + lib3270_is_selected @197
  199 + lib3270_is_tso @198
  200 + lib3270_is_unlocked @199
  201 + lib3270_kybdreset @200
  202 + lib3270_load @201
  203 + lib3270_main_iterate @202
  204 + lib3270_malloc @203
  205 + lib3270_move_cursor @204
  206 + lib3270_move_selected_area @205
  207 + lib3270_move_selection @206
  208 + lib3270_newline @207
  209 + lib3270_nextfield @208
  210 + lib3270_nextword @209
  211 + lib3270_pakey @210
  212 + lib3270_parse_host_type @211
  213 + lib3270_paste_next @212
  214 + lib3270_paste_text @213
  215 + lib3270_pconnected @214
  216 + lib3270_pfkey @215
  217 + lib3270_popup @216
  218 + lib3270_popup_an_errno @217
  219 + lib3270_popup_clone_printf @218
  220 + lib3270_popup_dialog @219
  221 + lib3270_popup_va @220
  222 + lib3270_previousfield @221
  223 + lib3270_previousword @222
  224 + lib3270_print @223
  225 + lib3270_print_all @224
  226 + lib3270_print_copy @225
  227 + lib3270_print_selected @226
  228 + lib3270_property_get_by_name @227
  229 + lib3270_property_get_description @228
  230 + lib3270_property_get_label @229
  231 + lib3270_property_get_name @230
  232 + lib3270_property_get_summary @231
  233 + lib3270_property_get_tooltip @232
  234 + lib3270_realloc @233
  235 + lib3270_receive @234
  236 + lib3270_reconnect @235
  237 + lib3270_register_action_group_listener @236
  238 + lib3270_register_fd_handlers @237
  239 + lib3270_register_io_controller @238
  240 + lib3270_register_schange @239
  241 + lib3270_register_timer_handlers @240
  242 + lib3270_register_toggle_listener @241
  243 + lib3270_remap_char @242
  244 + lib3270_remove_poll @243
  245 + lib3270_remove_poll_fd @244
  246 + lib3270_reselect @245
  247 + lib3270_reset_callbacks @246
  248 + lib3270_reset_charset @247
  249 + lib3270_reset_ft_callbacks @248
  250 + lib3270_ring_bell @249
  251 + lib3270_run_task @250
  252 + lib3270_save @251
  253 + lib3270_save_all @252
  254 + lib3270_save_copy @253
  255 + lib3270_save_selected @254
  256 + lib3270_select_all @255
  257 + lib3270_select_field @256
  258 + lib3270_select_field_at @257
  259 + lib3270_select_region @258
  260 + lib3270_select_to @259
  261 + lib3270_select_word @260
  262 + lib3270_select_word_at @261
  263 + lib3270_selection_get_length @262
  264 + lib3270_selection_new @263
  265 + lib3270_send @264
  266 + lib3270_service_get_name @265
  267 + lib3270_session_free @266
  268 + lib3270_session_new @267
  269 + lib3270_set_as400 @268
  270 + lib3270_set_auto_reconnect @269
  271 + lib3270_set_boolean_property @270
  272 + lib3270_set_color_type @271
  273 + lib3270_set_connected_initial @272
  274 + lib3270_set_cursor_address @273
  275 + lib3270_set_cursor_position @274
  276 + lib3270_set_dft_buffersize @275
  277 + lib3270_set_disconnected @276
  278 + lib3270_set_field @277
  279 + lib3270_set_has_copy @278
  280 + lib3270_set_host_charset @279
  281 + lib3270_set_host_type @280
  282 + lib3270_set_host_type_by_name @281
  283 + lib3270_set_int_property @282
  284 + lib3270_set_lock_on_operator_error @283
  285 + lib3270_set_log_filename @284
  286 + lib3270_set_log_handler @285
  287 + lib3270_set_lunames @286
  288 + lib3270_set_model @287
  289 + lib3270_set_model_name @288
  290 + lib3270_set_model_number @289
  291 + lib3270_set_numeric_lock @290
  292 + lib3270_set_oversize @291
  293 + lib3270_set_poll_state @292
  294 + lib3270_set_popup_handler @293
  295 + lib3270_set_session_id @294
  296 + lib3270_set_string @295
  297 + lib3270_set_string_at @296
  298 + lib3270_set_string_at_address @297
  299 + lib3270_set_string_property @298
  300 + lib3270_set_syslog @299
  301 + lib3270_set_toggle @300
  302 + lib3270_set_trace_filename @301
  303 + lib3270_set_trace_handler @302
  304 + lib3270_set_tso @303
  305 + lib3270_set_uint_property @304
  306 + lib3270_set_unlock_delay @305
  307 + lib3270_set_url @306
  308 + lib3270_set_user_data @307
  309 + lib3270_setup_session @308
  310 + lib3270_ssl_get_crl_download @309
  311 + lib3270_ssl_set_crl_download @310
  312 + lib3270_state_get_name @311
  313 + lib3270_strdup @312
  314 + lib3270_strdup_printf @313
  315 + lib3270_strip @314
  316 + lib3270_sysreq @315
  317 + lib3270_testpattern @316
  318 + lib3270_toggle @317
  319 + lib3270_toggle_get_by_name @318
  320 + lib3270_toggle_get_description @319
  321 + lib3270_toggle_get_from_id @320
  322 + lib3270_toggle_get_label @321
  323 + lib3270_toggle_get_name @322
  324 + lib3270_toggle_get_summary @323
  325 + lib3270_trace_data @324
  326 + lib3270_trace_event @325
  327 + lib3270_translate_char @326
  328 + lib3270_translate_ft_message @327
  329 + lib3270_translate_to_address @328
  330 + lib3270_unregister_action_group_listener @329
  331 + lib3270_unregister_schange @330
  332 + lib3270_unregister_toggle_listener @331
  333 + lib3270_unselect @332
  334 + lib3270_unsigned_property_get_by_name @333
  335 + lib3270_update_poll_fd @334
  336 + lib3270_vsprintf @335
  337 + lib3270_wait @336
  338 + lib3270_wait_for_connected @337
  339 + lib3270_wait_for_cstate @338
  340 + lib3270_wait_for_keyboard_unlock @339
  341 + lib3270_wait_for_ready @340
  342 + lib3270_wait_for_string @341
  343 + lib3270_wait_for_string_at @342
  344 + lib3270_wait_for_string_at_address @343
  345 + lib3270_wait_for_update @344
  346 + lib3270_win32_create_regkey @345
  347 + lib3270_win32_get_dword @346
  348 + lib3270_win32_local_charset @347
  349 + lib3270_win32_set_string @348
  350 + lib3270_win32_strerror @349
  351 + lib3270_win32_translate_error_code @350
  352 + lib3270_write_dstrace @351
  353 + lib3270_write_event_trace @352
  354 + lib3270_write_log @353
  355 + lib3270_write_nettrace @354
  356 + lib3270_write_rc @355
  357 + lib3270_write_screen_trace @356
  358 + lib3270_write_trace @357
  359 + lib3270_write_va_log @358
... ...
win/msvc-build.sh
... ... @@ -16,7 +16,28 @@ die ( ) {
16 16 exit -1
17 17 }
18 18  
19   -cd $(dirname $(dirname $(readlink -f ${0})))
  19 +srcdir="$(dirname $(dirname $(readlink -f "${0}")))"
  20 +cd ${srcdir}
  21 +if [ "$?" != "0" ]; then
  22 + echo "Cant cd to ${srcdir}"
  23 + exit -1
  24 +fi
  25 +
  26 +if [ -z ${PKG_CONFIG} ]; then
  27 + PKG_CONFIG=${MINGW_PREFX}/bin/pkg-config
  28 +fi
  29 +
  30 +PACKAGE_NAME=$(grep AC_INIT configure.ac | cut -d[ -f2 | cut -d] -f1)
  31 +if [ -z ${PACKAGE_NAME} ]; then
  32 + echo "Cant determine package name"
  33 + exit -1
  34 +fi
  35 +
  36 +PACKAGE_VERSION=$(grep AC_INIT configure.ac | cut -d[ -f3 | cut -d] -f1)
  37 +if [ -z ${PACKAGE_VERSION} ]; then
  38 + echo "Cant determine package name"
  39 + exit -1
  40 +fi
20 41  
21 42 #
22 43 # Build LIB3270
... ... @@ -26,15 +47,14 @@ echo &quot;Building lib3270&quot;
26 47 ./configure > $LOGFILE 2>&1 || die "Configure failure"
27 48 make clean > $LOGFILE 2>&1 || die "Make clean failure"
28 49 make all > $LOGFILE 2>&1 || die "Make failure"
29   -make DESTDIR=.bin/package install > $LOGFILE 2>&1 || die "Install failure"
  50 +make DESTDIR=.bin/package.msvc install > $LOGFILE 2>&1 || die "Install failure"
30 51  
31   -cd .bin/package${MINGW_PREFIX}
  52 +cd .bin/package.msvc
32 53 zip \
33 54 -9 -r \
34 55 -x'*.a' \
35 56 -x'*.pc' \
36   - ../../../${MINGW_PACKAGE_PREFIX}-lib3270-${MSYSTEM_CARCH}.zip * \
  57 + ${srcdir}/${MINGW_PACKAGE_PREFIX}-${PACKAGE_NAME}-${PACKAGE_VERSION}.devel.zip * \
37 58 > $LOGFILE 2>&1 || die "Zip failure"
38   -
39   -
40 59  
  60 +
41 61 \ No newline at end of file
... ...