New Features in x3270 3.2
x3270 3.2 is a reorganization of x3270 3.1, with some significant enhancements.
It is intended to be the future development platform for x3270, with x3270
3.1 continued only with bug fixes.
Changes in x3270 3.2.18, 31. December 2001
- Bug Fixes:
- Corrected install rules for manual pages.
- Corrected crashes associated with the Display Current Keymap
pop-up.
- Corrected a problem with selecting NULL characters (they were suppressed
instead of being converted to spaces).
- Restored the missing definitions for Ctrl-U and Ctrl-W in
the base 3270-mode keymap.
- Added better error detection to full-table character set
definitions.
- Changed Shift-6 back to the notsign (¬).
- Fixed a scripting problem with percent "%" characters on the screen.
- Enhancements:
- Included the autoconf configure.in file, so that users can
run a newer or customized autoconf on it.
- Added a color8 resource. When set to true, x3270
will only do a Query Reply report on 8 colors. The default of 16 seems to
confuse some hosts.
- Included test files for file transfer: all.chars and print.chars.
- Tied character sets to particular fonts.
- Added Silicon Graphics to the recognized X servers, using the alt
keymap.
- Added Euro symbol support, using ISO 8859-15 fonts and additional
3270 fonts.
- Removed the obsolete highlightSelect resource.
- Changed visualSelect to apply only to unhighlighted fields.
- Added an onlcr resource to control Newline-to-CR/LF expansion in
NVT line mode.
- Vastly improved the use of non-Latin-1 character sets, and
non-constant-spaced fonts.
- Got rid of the separate menuFontList and FontList resources, replacing
them with a single emulatorFontList resource per display character set.
- Reordered the Hebrew font (3270h) to make it compatible with ISO
Hebrew fonts.
- Tweaked the Greek font (3270gr) and host character set definition to
make it compatible with ISO Greek fonts.
- Added a traceFileSize resource and -tracefilesize option
to limit the size of trace files. Replaced the obsolete
traceCommand resource with a new traceMonitor resource; if
set to false it disables creation of the trace monitor window.
Changes in x3270 3.2.17, 25. June 2001
- Installation Changes:
- Moved the feature disable logic (turning off NVT mode, file transfers,
etc.) to configure --disable options.
- Files shared with other non-X11 3270 applications (the ibm_hosts
file, pr3287 and x3270if) are now installed in under the
autoconf "prefix" directory (which defaults to /usr/local),
rather than under the system's X11 directory. The previous behavior
can be restored with configure --with-all-xinstall.
Conversely, all files can be installed under the autoconf "prefix"
directory with the command make install.byprefix.
[Incompatible change]
- Allowed the location of the configuration directory (where the
ibm_hosts and character set files are) to be set with a new
resource: x3270.confDir.
- Removed the xmkmf step from the build procedure.
- Added consistent DESTDIR support.
- Bug Fixes:
- Verified that x3270 builds with all permutations of disabled
features.
- Fixed a problem with 3270 Modify Field orders that specify no
attributes.
- Fixed a typo in the base keymap definition, which disabled the last
three key mappings.
- Fixed a problem with misinterpreting skipped 3270 field attributes.
- Removed the redundant localhost entry from the default
ibm_hosts file.
Changed the rules for accessing ibm_hosts -- now it is accessed
only when the supplied hostname has no qualifiers.
- Compatibility changes for Cygwin.
- Fixed the behavior of the -xrm option when there is a conflict
with the .x3270pro file. The command-line options were supposed to
be the final definitions; now they are.
- Improved the performance of DFT file transfers.
- Prevented Display Current Keymap from popping up twice.
- Corrected the selection of NULL characters -- they are now treated as
spaces, except at the ends of lines and at the end of the selection area.
- Character Set Improvements:
- Added support for other 8-bit character sets (Latin-5, etc.), using
standard X fonts. Strengthened the rules for the character sets implemented
by the emulator font.
- Added support for Turkish, ISO Hebrew, Russian, Thai and Brazilian
character sets.
- Added support for file-based character sets, in the charset
subdirectory of the configuration directory.
- Added support for specifying an entire character set translation table,
rather than listing the exceptions from ISO 8859-1.
- Added support for file transfer character sets (a definition of how
the host translates EBCDIC to ASCII for file transfers).
- Other Improvements:
- Added support for BackTab in String actions, via the
\T sequence.
- Added support for 3270-mode keymaps (like NVT-mode keymaps). Changed
the base and alt keymaps to have default and 3270-only
components. Changed the interpretation of NVT-mode keymaps so they
augment the default, rather than replacing it.
[Incompatible Change]
- Allow IPv6-style square-bracket-delimited hostnames, and tightened the
rules for port numbers.
- Nearly all error messages and output from scripts is now captured in
pop-ups. The only exceptions are fatal errors which prevent x3270 from
creating its windows.
Changes in x3270 3.2.16, 28. February 2001
- Added a timeout parameter to the scripting Wait action.
- Added Snap(Wait Output).
- Fixed the MAKEFLAGS/MFLAGS problems in the Imakefile template.
- Added a --without-pr3287 option to the configure script, to
avoid building pr3287.
- Added a --with-fontdir=xxx option to the configure
script, to specify a different font installation directory.
- Resolved some build problems on HP/UX.
- Added an Italian character set.
- Corrected the behavior of the start-extend action (usually bound
to Btn3Down) when doing rectangular selections.
- Added KybdSelect and Unselect actions to allow the keyboard
to be used to control selections. KybdSelect is mapped to the Shifted
cursor keys.
- Removed the mapping of the "^ key to "¬" in 3270 mode,
replacing it with an unconditional mapping of Meta-"^" to
"¬".
- Replaced the MoveCursorSelect action with the MouseSelect
action, and corrected the behavior of pen selections in general.
- Corrected the mapping of the mouse cursor location to character cells
when processing selections, select-pen emulation, and cursor movement.
- Stopped locking the keyboard for invalid select-pen operations.
- Changed the default visualSelect color to 6 (yellow).
- Save the emulator font in response to a WM_SAVE_YOURSELF message.
- Fixed a kybd.c build problem on X11R5.
- Added translations ASCII file transfers, so square brackets, pipe
characters and anything from the upper half of the IOS 8859-1 character set
stand a better chance of coming through correctly.
- Corrected a subtle problem in TN3270E option negotiation.
- Improved SSCP-LU support.
- Restored the operation of CUT-mode file transfer. (It had been disabled
early in the 3.2 development cycle.)
Changes in x3270 3.2.15, 26. December 2000
- Improved documentation formatting.
- Fixed a problem with user keymaps being ignored.
- Fixed a problem with disconnecting from hosts when they send illegal
commands in non-TN3270E mode.
- Allow, but ignore, Create Partition structured fields.
Changes in x3270 3.2.14, 15. November 2000
Use GNU autoconf now.
Fixed a crash when -reconnect is used and x3270.menuBar is
False.
Added documentation on how to get square brackets to display properly.
Added recent-connect list and connectFileName resource to control it.
Put accidental command output into a pop-up window.
Updated the man pages and synchronized the HTML versions.
Added NVT-mode keymaps via x3270.keymap.name.nvt.
Fixed a memory corruption problem associated with printer session termination.
Improved the behavior of the -reconnect option, when a host connection fails.
Allow separate app-defaults file to be built again, via configure --enable-app-defaults.
Changes in x3270 3.2.13, 24. September 2000
Integrated pr3287 into the x3270 release.
Rewrote the screen resizing logic. It now functions correctly on window
managers like icewm and under KDE, and would rather leave the screen the
wrong size than exit.
Changed the greenScreen color scheme to be really green.
Fixed the display of red text when the highlightBold option is set.
Fixed the block cursor display when the -mono option is used on a
color display.
Changes in x3270 3.2.12, 7. September 2000
Fixed a problem with exiting whenever the window was resized.
Added a complete interface library for use with expect,
x3270_glue.expect.
Fixed problems with selecting blanks and NULLs on the screen -- real
blanks at the end of a line are now included in the selection, and NULLs
are not.
Allow none to be specified as a trace file name, causing a
pipe to be used instead.
In secure mode, use pipe-based data stream and event tracing, and disallow
screen tracing.
Added a No File button to the data stream and event tracing
dialog.
Added traceFile and screenTraceFile resources, and a
-tracefile
option, to specify file names for tracing.
Corrected the documentation of the script prompt status fields (there
are only 11 of them).
Added CMS logon example scripts, Examples/cms_login.bash and
Examples/cms_logon.sh.
Added a tutorial for creating custom keymaps, html/Keymap.html.
Added support for 3287 printer sessions via new menu options and a
new Printer() action.
Set x3270.disconnectClear to True when x3270.secure
is True.
Fixed several problems when windows do not fit on the screen.
Changes in x3270 3.2.11, 31. July 2000
Expanded the Default() action to better diagnose keymap problems.
Added default support for X11 XK_3270_xxx and APL keysyms.
Fixed a core dump when the emulator font can't be found.
Improved Trace Keyboard/Mouse Events display, to make it more
directly applicable to creating keymaps.
Removed many compiler warnings generated when additional gcc warnings
are enabled.
Changed the trace window kill signal to SIGKILL. SIGTERM didn't always
do the job.
Send the correct codepage in Query Reply when using non-US character
sets.
Send information about a second character set only if we have one.
Request the first LU name only once.
Added a highlightBold resource to display highlighted fields
in bold.
Fixed a core dump from editing the Print Window Bitmap command.
Changes in x3270 3.2.10, 5. July 2000
Added an n: prefix to hostnames to selectively disable TN3270E.
Changed the reported CSCSGID to X'02B90025' (English-U.S.).
Fixed the Attn() action to send TELNET IP, per RFC 2355.
Removed the explicit $(BINDIR) from the Imakefile;
it bothered XFree86 4.0.
Announce which font we're using when we can't find the one the user
asked for.
Fixed the problem of ignoring keyboard input when the window manager
uses a click-to-focus policy and the mouse cursor is outside the x3270
window.
When processing WM_SAVE_YOURSELF ICCM messages, save toggles
before saving the hostname.
Added a new MoveCursorSelect() action, to emulate light pen
selection with the mouse. The default mapping is Ctrl Shift <Btn1Down>.
Added a highlightSelect resource (default True) to control
whether highlighted fields are selectable via the CursorSelect()
and MoveCursorSelect().
Added visualSelect and visualSelectColor resources to
optionally display light pen selectable fields in a different color.
Allow spaces in font names.
Removed XtSpecificationRelease dependencies.
Added AIX "@@for" problem workaround to the build instructions.
Restored the ability to disable most components in parts.h,
and made TN3270E mode a configurable component.
Removed old ARGSUSED lint hints.
Changes in x3270 3.2.9, 26. June 2000
Fixed requesting the wrong LU after switching between TN3270E and TN3270
modes.
Changed the resource file format back to using "x3270" as a consistent
prefix. Changed x3270.fontList to x3270.fontMenuList to avoid
conflicts.
Fixed a typo in the sun_k5 keymap.
Added a new Snap() action for scripts.
Added new Wait(Disconnect) and Wait(Output) actions for
scripts.
Changed Wait() to Wait(InputField), Wait(3270)
to Wait(3270Mode) and Wait(ansi) to Wait(NVTMode).
The old names are still supported for backwards-compatibility.
Fixed a problem with parameter processing in the Transfer()
action.
Improved script tracing.
Added stricter enforcement of user-specified LUs.
Fixed a nit in tracing Query Reply options.
Changes in x3270 3.2.8, 1. June 2000
Fixed a problem with initial host connection negotation, when using a script
(x3270 -script, s3270 or tcl3270) and talking to a non-TN3270E host.
Added lefttack and righttack definitions to the apl keymap.
Added support for IND$FILE file transfers in scripts, via the new Transfer
action.
Added a disconnectClear resource to control clearing the screen after
a host disconnect.
Changes in x3270 3.2.7, 30. May 2000
Fixed a problem with compiling kybd.c on X11R5.
Fixed a problem with the util library on Solaris and AIX.
Fixed several problems with TN3270E SSCP-LU mode: garbled input to
the host, echoed input being overwritten by host output, and keyboard locking
inconsistencies.
Fixed repetition of the contents of the ibm_hosts file in
the Connect menu.
Removed the accidental substitution of the symbolic host name with
the resolved hostname in the Connect menu and the window title.
Removed a spurious error on AIX about not being able to find the rs6000
keymap.
Added the file localdefs.h, to better isolate X11 dependencies
for s3270 and tcl3270.
Changes in x3270 3.2.6, 19. May 2000
Fixed a problem with displaying TN3270E options in the "About" pop-up,
even if TN3270E mode had not been negotiated.
Added Sharp APL characters dieresisjot, dieresiscircle,
commabar
and euro, as well as names for the APL-specific versions of braceleft
and braceright.
Added cut-and-paste of EBCDIC DUP and FM characters.
Changed x3270.man.html to x3270-man.html.
Changes in x3270 3.2.5, 15. May 2000
Fixed a problem with scripts hanging in TN3270E SSCP-LU mode.
Changes in x3270 3.2.4, 8. May 2000
Functionally identical to x3270 3.2A3.
Changes in x3270 3.2A3, 2. May 2000
Added support for the Greek character set and a Greek font, 3270gr.
Fixed problems with font and color scheme checkboxes not being updated
in the menu bar.
Fixed compiler warnings from not using time_t's properly.
Fixed a problem with the status line improperly reporting disconnections
during certain TN3270E mode switches.
Added TN3270E state to the data stream trace data.
Changes in x3270 3.2A2, 27. April 2000
Due to problems with servers that do not support basic TN3270E, added support
for TN3270E options RESPONSES, SYSREQ and BIND-IMAGE.
Removed disconnect logic when an invalid TN3270E message is received.
Fixed a problem with ignoring the ibm_hosts file.
Changes in x3270 3.2A1, 9. December 1999
Added basic TN3270E support.
Changes in x3270 3.2A0, 15. March 1999
Internal Changes
The primary focus of the reorganzation is modularity. For example, through
the new parts.h header file, it is now possible
to build subsets of x3270, excluding one or more of the following features:
-
Tracing
-
ANSI mode
-
Scripting
-
Menu bar
-
Pop-up keypad
-
APL support
-
X display
This can make for a much smaller footprint for limited applications, as
well as new applications based on components of x3270. For example, a new
program, s3270, is now available, which consists of only the 3270
protocol engine and the scripting facility, allowing x3270 scripts to be
run without an X display.
The code is also reorganized to reduce the amount of explicit coupling
between modules. An event registration mechanism is used to propagate state
changes, instead of explicit calls from one module to another.
The code is now written in ANSI C, using function prototypes and const
where appropriate.
Support for X11R4 and K&R C compilers has been dropped.
External Changes
Basic TN3270E is now supported. TN3270E printers are not supported.
On systems that support the forkpty() library call (such as BSD-derived
systems and Linux), x3270 supports local processes.
A local process
is a Unix process such as a shell which is connected to x3270 with a pty.
In this way, x3270 will function as a local terminal emulator like xterm.
All operating modes can now be changed at runtime via menus, including
extended data stream mode, and 3277/3278/3279 emulation.
The "Trace X Events" option has been replaced with a "Trace Keyboard
and Mouse Events" option, which reports only X events which can be mapped
with keymaps. It also reports the keymap that was used to map each action,
making keymap debug much easier.
A menu option allows the current keymap to be displayed.
A new base keymap is defined, containing
the default keyboard mappings.
This keymap can be modified at will,
without interfering with the basic operation of x3270, or the processing
of X events not related to the keyboard or mouse (as was the case with
the previous default translations resource).
Default keymaps are defined for several well-known keyboards. These
keymaps are automatically used when x3270 recognizes the vendor string
for the associated X server.
Several x3270 bugs, which were in the "impossible to fix" category (because
of basic code organization problems) have finally been fixed.