----------------------------------------------------------------------

ELOQUENCE B.08.30 - patch PE83-2509160

----------------------------------------------------------------------

This patch adds enhancements or fixes defects of the Eloquence WEBDLG2
as released with Eloquence B.08.30-2211. This patch will be integrated
in the Eloquence B.08.30 release.

Eloquence B.08.30-2211 must be installed before applying this patch.

Severity:
 PE83-2509160: BUG FIX

Superseded patches:
 PE83-2508270: BUG FIX
 PE83-2507250: BUG FIX
 PE83-2507090: BUG FIX
 PE83-2504160: BUG FIX
 PE83-2503140: BUG FIX
 PE83-2502190: BUG FIX
 PE83-2502170: BUG FIX
 PE83-2502130: BUG FIX
 PE83-2502040: BUG FIX
 PE83-2501300: ENHANCEMENT, BUG FIX
 PE83-2412190: BUG FIX
 PE83-2409200: BUG FIX
 PE83-2408070: BUG FIX
 PE83-2407240: BUG FIX
 PE83-2407170: BUG FIX
 PE83-2405230: ENHANCEMENT, BUG FIX
 PE83-2402190: ENHANCEMENT, BUG FIX
 PE83-2401240: BUG FIX
 PE83-2401230: ENHANCEMENT, BUG FIX
 PE83-2312180: BUG FIX
 PE83-2311300: BUG FIX
 PE83-2311270: BUG FIX
 PE83-2311220: ENHANCEMENT, BUG FIX
 PE83-2311100: BUG FIX
 PE83-2310240: ENHANCEMENT, BUG FIX
 PE83-2310180: ENHANCEMENT
 PE83-2310020: ENHANCEMENT, BUG FIX
 PE83-2309200: ENHANCEMENT, BUG FIX
 PE83-2307040: BUG FIX
 PE83-2306190: BUG FIX
 PE83-2306130: BUG FIX
 PE83-2306060: BUG FIX
 PE83-2305240: BUG FIX
 PE83-2305170: ENHANCEMENT, BUG FIX
 PE83-2304060: BUG FIX
 PE83-2303290: ENHANCEMENT
 PE83-2303280: ENHANCEMENT, BUG FIX
 PE83-2303220: BUG FIX
 PE83-2303130: BUG FIX
 PE83-2303070: BUG FIX
 PE83-2303060: BUG FIX
 PE83-2302210: BUG FIX
 PE83-2302200: BUG FIX
 PE83-2302160: BUG FIX
 PE83-2302080: BUG FIX
 PE83-2301270: BUG FIX
 PE83-2301200: ENHANCEMENT, BUG FIX
 PE83-2301190: ENHANCEMENT, BUG FIX
 PE83-2301120: BUG FIX
 PE83-2301020: BUG FIX
 PE83-2212210: ENHANCEMENT, BUG FIX


Patch PE83-2509160
------------------

Platforms: All

* ListBox: Column context menu did not preserve last visible column.

* MenuItem: Propagate sensitive state to checkbox/radiobutton child.

* WEBDLG2 version: 2.0.20 (not changed)

Please note:

* The eloqwebd2.cfg configuration template file has been updated
  with previous patch PE83-2501300. It is included in this patch
  for completeness and installed in the newconfig/config directory.

* The eloqwebd2.app configuration template file has been updated
  with previous patch PE83-2405230. It is included in this patch
  for completeness and installed in the newconfig/config directory.

* The eloqwebd2.uri configuration template file has been updated
  with previous patch PE83-2212210. It is included in this patch
  for completeness and installed in the newconfig/config directory.

Documentation:

* Please refer to the WEBDLG2 documentation located at:
  https://eloquence.marxmeier.com/doc/webdlg2/


Patch PE83-2508270
------------------

Platforms: All

* TabBox: Fixed GroupBox rule wrongly submitted instead of function key
  rule when pressing a function key.

* System: Fixed DLG GET System.dlgport could return a random value, as
  observed on arm64 platforms.

* Fixed a potential problem which could happen when a plugin invokes the
  DlgPlugin.submit() method in an unexpected context, causing the eloqwebd2
  process to abort with a log message like below:

  Assertion failed: d->has_sync == 0
  server panic: Aborting on internal failure, c_plugin.c, line 864

* WEBDLG2 version: 2.0.20 (not changed)


Patch PE83-2507250
------------------

Platforms: All

* eloqwebd2.app: Fixed resolving $(VARIABLENAME) token, did not work
  when a process environment variable name is used.

* WEBDLG2 version: 2.0.20 (not changed)


Patch PE83-2507090
------------------

Platforms: All

* Fixed an internal race condition when executing DLG SET System.notify[]
  potentially causing a receiving session to hang with an 'apiReceived ...
  invalid, current Dialog pending' JavaScript client error or similar.

* TabBox: The selectedtab attribute did not work on insensitive tabs.
  DLG GET returned an empty string. DLG SET selected the next sensitive
  tab if present.

* Revised opening menus right-to-left if otherwise the menu would overflow
  the right Dialog edge.

* WEBDLG2 version: 2.0.20


Patch PE83-2504160
------------------

Platforms: All

* eloqwebd2.uri: Fixed a potential problem related to URI Deny access rules,
  causing the eloqwebd2 process to abort during startup with a log message
  like below:

  Assertion failed: type == 2
  server panic: Aborting on internal failure, file config.c, line 3978

* Fixed a potential segmentation fault following a protocol failure during
  application initialization. The DLG session cleanup could not handle an
  incomplete plugin list. This could cause the eloqwebd2 process to abort
  with a log message like below:

  server panic: Aborting on internal failure, file webd.c, line 974

* HTTP protocol: The Server HTTP response header is no longer sent due
  to security considerations.

* ComboBox: Double-clicking a ComboBox list entry now triggers a rule
  submission.

* ComboBox: Fixed matching list entry not selected when the list is updated
  while the ComboBox is focused and the list is open.

* ComboBox: Fixed selected list entry not deselected when the content is
  user-edited.

* ListBox: Fixed a regression introduced with previous patch PE83-2503140
  affecting the column position when moved.

* Revised the visual appearance of focused Dialog objects.

* WEBDLG2 version: 2.0.19 (not changed)


Patch PE83-2503140
------------------

Platforms: All

* Fixed potential 'mainReceived invalidate: DLG ... does not exist'
  JavaScript exception when the eloqwebd2.app Layout configuration
  is set to "inline" or "inline max".

  This JavaScript exception does not affect the functionality of the
  application.

* Fixed potential visual flicker observed when the eloqwebd2.app Layout
  configuration is set to "inline dialog" or "inline max dialog".

* Fixed various visual issues that occurred primarily on newer Safari
  browser versions, but also on mobile browsers based on Chromium engine.

* WEBDLG2 version: 2.0.19 (not changed)


Patch PE83-2502190
------------------

Platforms: All

* Fixed a regression introduced with previous patch PE83-2502170 where
  restarting an application was unexpectedly delayed by five seconds.
  DlgQuitTimeout was applied even if the application has already quit.

* WEBDLG2 version: 2.0.19 (not changed)


Patch PE83-2502170
------------------

Platforms: All

* Fixed DlgQuitStatus / DlgQuitRule not issued when DlgIdleTimeout expires.

* WEBDLG2 version: 2.0.19 (not changed)


Patch PE83-2502130
------------------

Platforms: All

* ComboBox, PopText: The boxwidth calculation could be incorrect if
  the ComboBox / PopText font is different from the Dialog font.

* WEBDLG2 version: 2.0.19 (not changed)


Patch PE83-2502040
------------------

Platforms: All

* ComboBox, EditText: Fixed a regression introduced with previous patch
  PE83-2501300 where ComboBox and EditText objects were no longer focusable
  after the editable attribute was reset and then set again.

* WEBDLG2 version: 2.0.19 (not changed)


Patch PE83-2501300
------------------

Platforms: All

New functionality:

* eloqwebd2.cfg: The HttpProxyHeader configuration item has been added.

  Specifies the HTTP header used to set the user's client address if the
  connection is routed through a reverse proxy.

* eloqsd protocol: The user's client address is now logged in case of a
  protocol status such as a failed authentication.

Fixed problems:

* Fixed a problem where in rare cases DLG objects were no longer focusable
  after a parent object was set insensitive and then set sensitive again.

  The fix in previous patch PE83-2412190 was incomplete.

* GroupBox: Fixed unexpected clipping.

* ListBox: Fixed unexpected autowidth behavior where a column's autowidth
  was calculated only once. Also, in rare cases a column's autowidth was
  incorrectly calculated if multiple autowidth columns are present.

* WEBDLG2 version: 2.0.19


Patch PE83-2412190
------------------

Platforms: All

* Fixed a problem where in rare cases DLG objects were no longer focusable
  after a parent object was set insensitive and then set sensitive again.

* WEBDLG2 version: 2.0.18 (not changed)


Patch PE83-2409200
------------------

Platforms: All

* ListBox: Fixed column context menu not opened on ListBoxHeader.userhide=0
  columns.


Patch PE83-2408070
------------------

Platforms: All

* WindowMenu: Fixed a regression introduced with previous patch PE83-2302160
  where the default title was no longer displayed.

* WEBDLG2 version: 2.0.18 (not changed)


Patch PE83-2407240
------------------

Platforms: All

* Fixed network-related error logging. A session could abort with DLG
  status 650 (general dialog failure) but the reason was not logged.

* Fixed a rare error condition where the send() system call could
  return zero. This caused a DLG status 650 without a log message.

* Fixed a JDLG compatibility issue. Although undocumented, JDLG
  allows a Plugin as Application or System child object. This is
  used by existing applications, therefore this functionality is
  now available in WEBDLG2 as well.

* WEBDLG2 version: 2.0.18 (not changed)


Patch PE83-2407170
------------------

Platforms: All

* ComboBox, PopText, Tree: Fixed selected line might not be scrolled
  into view.

* GroupBox: Fixed setting vx/vy might have no effect.

* ListBox: Fixed setting topitem might have no effect.

* Fixed various Dialog window frame element JavaScript exceptions.

* Fixed user-select CSS behavior.

* Fixed resuming/restarting session after failed browser network connection.

* Fixed internal DLG object identifier could overflow.

* WEBDLG2 version: 2.0.18 (not changed)


Patch PE83-2405230
------------------

Platforms: All

New functionality:

* eloqwebd2.app: Enhanced the WindowFeatures.NAME configuration.

  Window coordinates may be specified as a percentage, optionally
  with minimum and maximum values.

  This also applies to the Application.windowfeature[NAME] attribute.

Fixed problems:

* Fixed various access allow/deny configuration issues.

* WEBDLG2 version: 2.0.18 (not changed)


Patch PE83-2402190
------------------

Platforms: All

New functionality:

* Released the Plugin API version 3. This adds support for
  asynchronous DLG GET and solves issues with synchronized
  DLG SET attributes.

Fixed problems:

* Fixed potential race condition which could cause 'App.dlg_DO BUG:
  whenReady pending' JavaScript client error.

  The fix in previous patch PE83-2306060 was incomplete.

* WEBDLG2 version: 2.0.18


Patch PE83-2401240
------------------

Platforms: All

* Fixed a side effect where in rare cases certain attribute values
  were not set if an object was synchronized before being displayed
  for the first time.

  For example, if a ListBox needs to be synchonized before being
  displayed for the first time because the line order needs to be
  calculated, it could happen that the rule and singleclick attribute
  values were not set as expected.

* WEBDLG2 version: 2.0.17 (not changed)


Patch PE83-2401230
------------------

Platforms: All

New functionality:

* The Dialog.notify attribute (without index) may be set to zero
  to remove all notification codes from a Dialog.

  The value must be zero, such as: DLG SET Dialog.notify,0

Fixed problems:

* ListBox: When a global drag originates from a ListBox, the TAB character
  is now used as column separator in the dropped ListBox line content.

* ListBox, Tree: Setting the singleclick attribute was not recognized
  unless the rule attribute was modified at the same time.

* Plugin: Revised the attribute value cache.

* PopText: Fixed current line not updated on DLG SET PopText.line.

* System: Fixed possible duplicate System.notifyall Dialog notification.

* WEBDLG2 version: 2.0.17


Patch PE83-2312180
------------------

Platforms: All

* Fixed global drag&drop did not trigger, as observed with web
  browsers based on Chromium engine.

* Application, System: Fixed DLG GET .id issued DLG status 657.

* Dialog: Fixed regression where Dialog is still visible after
  DLG SET Dialog.do,0.

* WEBDLG2 version: 2.0.16 (not changed)


Patch PE83-2311300
------------------

Platforms: All

* ListBoxHeader: Fixed a problem which could cause the eloqwebd2 process
  to unexpectedly abort with a segmentation fault after DLG GET .line or
  DLG GET .vline on an empty line.

* WEBDLG2 version: 2.0.16 (not changed)


Patch PE83-2311270
------------------

Platforms: All

* Fixed potential 'BUG: onEvent pending click' JavaScript client error.

* Windows: Fixed internal deadlock potentially triggered when closing
  a connection. This could cause the eloqwebd2 process to stop serving
  requests and to hang when stopped.

* WEBDLG2 version: 2.0.16 (not changed)


Patch PE83-2311220
------------------

Platforms: All

New functionality:

* Released the Plugin API version 2. This adds support for synchronized
  DLG SET attributes and for the binary attribute data type.

Fixed problems:

* ComboBox, PopText: Open upwards if otherwise the item list would
  overflow the bottom Dialog edge.

* Menu: Open right-to-left if otherwise the menu would overflow
  the right Dialog edge.

* MenuBar, StatusBar, ToolBar: Fixed various functional and visual
  problems related to insufficient Dialog width.

* eloqwebd2.app: Configured [default] item values could not be reset
  by configuring an empty item value in an [app_id] section.

* WEBDLG2 version: 2.0.16


Patch PE83-2311100
------------------

Platforms: All

* Windows: Fixed a regression introduced with previous patch PE83-2310020
  which could cause unexpected connection problems.

* WEBDLG2 version: 2.0.15 (not changed)


Patch PE83-2310240
------------------

Platforms: All

New functionality:

* New attribute: Application.quitstatus : integer, get/set
  Allows to programmatically set or query the DlgQuitStatus
  application configuration.

* New attribute: Application.quitrule : integer, get/set
  Allows to programmatically set or query the DlgQuitRule
  application configuration.

* New attribute: Application.quittimeout : integer, get/set
  Allows to programmatically set or query the DlgQuitTimeout
  application configuration.

* Released the final Plugin API version 1.

Fixed problems:

* Fixed unexpected Dialog window size when title length exceeds the
  available space.

* Fixed various Plugin API issues introduced with previous withdrawn
  patch PE83-2310180.

* WEBDLG2 version: 2.0.15


Patch PE83-2310180
------------------

* Intermediate patch, do not use.


Patch PE83-2310020
------------------

Platforms: All

New functionality:

* New attribute: Application.windowfeature[NAME] : string, get/set
  Allows to programmatically set or query the WindowFeatures.NAME
  application configuration.

Fixed problems:

* Fixed a problem where the eloqwebd2 listener could block when the web
  browser opens a speculative pre-connection. As a result, new HTTP or
  HTTPS requests could hang until a browser pre-connection times out.

* Fixed a problem where the eloqwebd2 listener could refuse to accept
  new connections, indicating that the maximum number of clients or
  sessions are already active. This was caused by a potential overflow
  of the clients/sessions counters.

* Fixed the JavaScript client error message issued when a new browser
  tab or window could not be opened.

* WEBDLG2 version: 2.0.14


Patch PE83-2309200
------------------

Platforms: All

New functionality:

* eloqwebd2.app: The SaveLogin configuration item has been added.

  Specifies either whether configured Login/Password credentials are cached,
  or whether the Save Login option of the interactive login dialog is checked.

Fixed problems:

* Splitter: Fixed wrong pane size when the orientation is modified while
  the Splitter is already displayed.

* HtmlView: Fixed <body> attributes of HTML content unexpectedly ignored.
  If HTML content is set including a <body> element, the <body> attributes
  are now copied to the HtmlView <body> element.

* WEBDLG2 version: 2.0.13 (not changed)


Patch PE83-2307040
------------------

Platforms: All

* ComboBox: Fixed DLG GET ComboBox.items (aka. ComboBox.list) causing
  an abort of the eloqwebd2 process with a log message like below:

  Assertion failed: content_l_p != NULL
  server panic: Aborting on internal failure, file c_listbox.c, line 3683

* WEBDLG2 version: 2.0.13 (not changed)


Patch PE83-2306190
------------------

Platforms: All

* EditText: Fixed a regression introduced with previous patch PE83-2306130.
  DLG GET EditText.line[] unexpectedly issued DLG status 660 on valid empty
  lines.

* WEBDLG2 version: 2.0.13 (not changed)


Patch PE83-2306130
------------------

Platforms: All

* EditText: Fixed wrong DLG GET behavior of line[] and vheight attributes.

  DLG GET EditText.line[] did not issue DLG status 660 if the specified
  line does not exist. The returned DLG GET EditText.vheight value could
  be off-by-one if the last line is empty.

* WEBDLG2 version: 2.0.13 (not changed)


Patch PE83-2306060
------------------

Platforms: All

* Fixed potential race condition which could cause 'App.dlg_DO BUG:
  whenReady pending' JavaScript client error.

  The fix in previous patch PE83-2305240 was incomplete.

* WEBDLG2 version: 2.0.13 (not changed)


Patch PE83-2305240
------------------

Platforms: All

* Fixed potential race condition which could cause 'App.dlg_DO BUG:
  whenReady pending' JavaScript client error.

* WEBDLG2 version: 2.0.13 (not changed)


Patch PE83-2305170
------------------

Platforms: All

* New attribute: Application.sid : integer, get
  Returns the identifier of the invoking WEBDLG2 session.

* ListBox, PopText: Fixed internal inconsistency after a ListBox or
  PopText is cleared and new lines/items are added. A subsequent
  DLG GET .content could then cause an abort of the eloqwebd2 process
  with a log message like below:

  Assertion failed: bp - val->v.s.p == *content_l_p + nl_cnt
  server panic: Aborting on internal failure, file c_listbox.c, line 3710

* MenuBar: Fixed unexpected height when Dialog is user-resized, as
  observed with Firefox browser.

* Fixed 'this.currDlg is null' JavaScript client error, internally caused
  by wrong Dialog.timerrule submission while the Dialog is inactive.

* Fixed various problems related to CloseTimeout and/or DlgQuitStatus and/or
  DlgQuitRule. If the application is not waiting in DLG DO or POPUP BOX at
  the moment when the page is unloading, DlgQuitStatus or DlgQuitRule would
  not be issued afterwards. Also, CloseTimeout was unexpectedly reset to
  DlgIdleTimeout if the application continues to issue DLG requests.

* Fixed unexpected failure while creating HTTPS listen socket if both
  TLSCertChainFile and TLSCertKeyFile are configured, as observed with
  OpenSSL version 3.0.5. A message like below was logged:

  tls_ctx_set_private_key:1270: SSL_CTX_use_PrivateKey_file error:0A080009
  Unable to create HTTPS listen socket: TLS is not configured

* WEBDLG2 version: 2.0.13


Patch PE83-2304060
------------------

Platforms: All

* Fixed internal ListBox inconsistency caused by failed ListBoxHeader
  creation. For example, after a ListBoxHeader cannot be created due
  to DLG status 655 (duplicate object name), the internal number of
  columns could become inconsistent.

  This could cause a subsequent abort of the eloqwebd2 process with
  a log message like below:

  Assertion failed: mi == d->n_col
  server panic: Aborting on internal failure, file c_listbox.c, line 752

* WEBDLG2 version: 2.0.12 (not changed)


Patch PE83-2303290
------------------

Platforms: All

New functionality:

* eloqwebd2.app: The DlgQuitStatus configuration has been added, allowing
  an application to gracefully quit before it terminates due to inactivity
  or after the web browser window or tab has been closed.

* WEBDLG2 version: 2.0.12 (not changed)


Patch PE83-2303280
------------------

Platforms: All

New functionality:

* eloqwebd2.app: Setting the WarnLeavingPage configuration to 2 always
  enables the user warning before leaving the page while an application
  is active, regardless whether or not the current Dialog has the close
  symbol, and during application development and debugging.

Fixed problems:

* Fix unexpected DLG protocol failure when invoking DLG SET Dialog.do,1
  on a Dialog where Dialog.do is already active, causing the related
  session to abort.

* WEBDLG2 version: 2.0.12


Patch PE83-2303220
------------------

Platforms: All

* Fixed 'apiReceived ... invalid, not idle' JavaScript client error,
  causing the user interface to stop responding until the document
  is reloaded.

  This was caused by invoking DLG SET Dialog.do,1 and then invoking
  DLG DRAW on a different existing Dialog.

* Fixed new direct Dialog child object added to wrong parent object
  when the Dialog is already visible. For example, a new HtmlView
  object, added as direct Dialog child, could become unexpectedly
  added to the MenuBar.

* Menu: Fixed passing on background color to MenuItems and sub-Menus.
  The background color is now passed on only if a Menu is a direct
  MenuBar child object. This ensures consistent separator colors
  across sub-Menus.

* MenuItem: Fixed visual appearance of disabled items. The visual
  difference of normal vs. disabled items was too subtle.

* System: Fixed Application start atoms unexpectedly set on new
  session started via System.start.

* WEBDLG2 version: 2.0.11


Patch PE83-2303130
------------------

Platforms: All

* ListBoxHeader: Fixed DLG GET .line referring to vactiveline unexpectedly
  returned DLG status 660.

* WEBDLG2 version: 2.0.10 (not changed)


Patch PE83-2303070
------------------

Platforms: All

* Fixed DLG listener not accepting non-localhost connections.

* Windows: Fixed unexpected issues when shutting down the 64-bit
  eloqwebd64 process after using DLG listener.

  Possible eloqwebd64 log messages:
  N0: net_shutdown_listen: getsockname failed [10038] ...
  N0: net_shutdown_listen: unable to close socket [10038] ...

  Possible eloqwebd64 panic:
  Assertion failed: *wait_ob_p != NULL
  server panic: Aborting on internal failure, file srv.c, line 2225

* WEBDLG2 version: 2.0.10 (not changed)


Patch PE83-2303060
------------------

Platforms: All

* Fixed DLG synchronization and Dialog.do race conditions.

  These could cause DLG protocol failures under certain conditions
  which in turn caused the related sessions to abort unexpectedly.

* TabBox: Fixed a regression introduced with previous patch PE83-2302160
  where the selectedtab was no longer reported to the program when modified
  by the user.

* WEBDLG2 version: 2.0.10


Patch PE83-2302210
------------------

Platforms: All

* Fixed a race condition where keystrokes stored in the type-ahead buffer
  could unexpectedly trigger a rule submission on DLG SET Dialog.do,1.

  eloqwebd2 log message:
  BUG: invalid response call 6, expected: 10

  User error message:
  Unexpected protocol failure, application closed.

* WEBDLG2 version: 2.0.9


Patch PE83-2302200
------------------

Platforms: All

* ListBox, ListBoxHeader: Fixed a regression introduced with previous patch
  PE83-2302160 which could cause the eloqwebd2 process to unexpectedly abort
  with a segmentation fault after DLG SET referring to vactiveline.

* WEBDLG2 version: 2.0.8 (not changed)


Patch PE83-2302160
------------------

Platforms: All

* ListBox: Fixed 'TypeError: t is null' JavaScript client error, causing
  the user interface to stop responding until the document is reloaded.

  This could happen when a ListBox is cleared while line-specific toolhelp[]
  tool tips are set.

* ListBox: HTML-decorated column headers were not displayed in the column
  context menu.

* ListBox: Fixed unexpected behavior when setting delln or ins or line or
  rowdata referring to previously set vactiveline.

* ListBoxHeader: Fixed unexpected behavior when setting line referring to
  previously set ListBox vactiveline.

* ListBox, MenuItem, TabBox, Tree, POPUP BOX: Fixed visual appearance,
  vertical alignment of images in HTML content could be inconsistent.

* TabBox: Fixed race condition where focus could be incorrectly set on user
  tab switch, causing selectedtab unexpectedly being set to previous tab.

* TabBox: Fixed wrong ruleoverride=1 behavior.

* Tree: Fixed wrong ruleoverride=1 behavior.

* WEBDLG2 version: 2.0.8


Patch PE83-2302080
------------------

Platforms: All

* Dialog: Fixed setting title and/or logoicon while the Dialog is visible
  had no visual effect.

* WEBDLG2 version: 2.0.7 (not changed)


Patch PE83-2301270
------------------

Platforms: All

* ListBox: Fixed 'ListBox.setAttr content: lineOrder ...' JavaScript
  client error, causing the user interface to stop responding until
  the document is reloaded.

  A client-side inconsistency could occur when ListBox.sortsequence
  as well as the number of lines are modified.

* WEBDLG2 version: 2.0.7


Patch PE83-2301200
------------------

Platforms: All

New functionality:

* eloqwebd2.app: The WindowFeatures.NAME configuration has been added.

  It allows to configure how new web browser windows/tabs are opened.
  For example, help URLs and/or webprint PDFs may be configured to open
  in separate browser windows.

* eloqwebd2.app: The WarnLeavingPage configuration has been added, allowing
  to enable/disable to warn the user before leaving the page.

  In addition, the warning is now disabled during application development
  and debugging, i.e., when a DLG listener is used to start an application.

Fixed problems:

* Fixed a potential use-after-free problem when connections are closed.
  This could cause an unexpected abort of the eloqwebd2 process, for
  example with a message like below:

  S0: Assertion failed: BUG: unknown callback
  S0: server panic: Aborting on internal failure, file worker.c, line 145

* WEBDLG2 version: 2.0.6


Patch PE83-2301190
------------------

Platforms: All

New functionality:

* To prevent unintentional program termination, the user is now warned
  before leaving the page (e.g. when trying to close the web browser
  window or tab).

  The warning is issued if the user tries to leave the page while the
  program is not interactive, i.e., currently outside DLG DO, or when
  the current Dialog's rule attribute value is zero (i.e., the current
  Dialog does not display the close symbol in its title bar).

Fixed problems:

* Fixed 'apiReceived op 25: invalid, focus pending' JavaScript client
  error, causing the user interface to stop responding until the
  document is reloaded.

  This was caused by invoking DLG SET Dialog.do,1 and then invoking
  DLG DRAW on a new Dialog.

* Revised HTTP status 403/404 verbose debug logging, related file
  system error is now logged when the H3 log flag is configured.

* WEBDLG2 version: 2.0.5


Patch PE83-2301120
------------------

Platforms: All

* TabBox: Fixed a problem where selectedtab contents were not displayed
  as expected. This could happen if a TabBox has not been sensitive and
  then TabBox.sensitive=1 is set and TabBox.selectedtab is modified.

* WEBDLG2 version: 2.0.4


Patch PE83-2301020
------------------

Platforms: All

* Dialog: Fixed 'webdReceived: invalid mode ...' API thread JavaScript error,
  caused by setting the Dialog.xauto attribute to 0 or -1 while Dialog.yauto
  is set to 1, or vice-versa.

* eloqwebd2.uri: Fixed configured Index file name was not applied to
  subdirectories.

* eloqwebd2.uri: Fixed potential eloqwebd2 start failure while booting the
  system if a configured Path refers to a file or directory where the related
  file system is not mounted yet.

  The Path configuration is now checked when accessed for the first time,
  instead of being checked on eloqwebd2 startup.

* WEBDLG2 version: 2.0.3 (not changed)


Patch PE83-2212210
------------------

Platforms: All

New functionality:

* eloqwebd2.uri: The Index configuration item has been added.

  Specifies an index file name to be used when the request URI matches
  a directory in the file system.

  Please note: This patch updates the eloqwebd2.uri configuration template
  file, installed in the newconfig/config directory.

Fixed problems:

* Fixed 'setFocus: from ... not registered' JavaScript client error,
  causing the user interface to stop responding until the document
  is reloaded.

  This was caused by invoking DLG SET Dialog.do,1 and then opening a
  new Dialog. The new Dialog then failed to access the previous Dialog's
  focus object.

* Fixed 'apiReceived op 24: invalid, not idle' JavaScript client error,
  causing the user interface to stop responding until the document
  is reloaded.

  This was caused by a client-server race condition.

* Fixed 'BUG: elementsChanged no current Dialog' JavaScript client error.

  This was caused by pressing the context menu mouse button while
  the Dialog is not interactive.

* MenuBar: Fixed setting visible=0 and sensitive=0 had no effect.

* TabBox: Fixed tab not implicitly selected when focus is set to
  a contained object.

* TabBox: Fixed sensitive=0 tabs were not displayed.

* TabBox: Fixed setting selectedtab had no effect if the related GroupBox
  object id is modified afterwards.

* TabBox: Fixed setting selectedtab could have unexpected effects when
  tabs are deleted afterwards.

* Application development and debugging: When a DLG listener is connected,
  the eloqwebd2 user agent was not marked as authenticated.

  As a consequence, the eloqwebd2 internal web server returned a 403
  (Forbidden) status for an URI configured with GroupList = @auth.

* eloqwebd2.uri: Fixed ContentType:application/octet-stream HTTP response
  header unexpectedly returned when configured Path refers to a file.

* eloqwebd2.mime: Specifying media type parameters, for example "charset",
  was not possible. Parameters were unexpectedly truncated.

  For example: text/markdown; charset=UTF-8
  Truncated to: text/markdown;

* WEBDLG2 version: 2.0.3


Installation:
-------------

Please download the patch archive that corresponds with the installed
release. The patch files follow the conventions below:

   PE83-2509160-hpux-ia64.tar.gz
        ^       ^    ^
        |       |    Architecture / OS specific build
        |       Operating system
        Patch ID


HP-UX IA64:

In order to install this patch, you need to unpack it with gzip and tar.
Gzip is included with HP-UX. Installation requires root privileges.

cd /opt/eloquence/8.3
gzip -dc /path/to/PE83-2509160-hpux-ia64.tar.gz | tar xf -

Files:

   bin/eloqwebd2
   newconfig/config/eloqwebd2.app
   newconfig/config/eloqwebd2.uri
   share/webdlg2/htdocs/eq-webdlg.js
   share/webdlg2/htdocs/eq-webdlg.src.js
   share/webdlg2/htdocs/eq-webdlg.src.map
   share/webdlg2/htdocs/eq-webdlg-ui.js
   share/webdlg2/htdocs/eq-webdlg-ui.src.js
   share/webdlg2/htdocs/eq-webdlg-ui.src.map
   share/webdlg2/htdocs/eq-webdlg-api.js
   share/webdlg2/htdocs/eq-webdlg-api.src.js
   share/webdlg2/htdocs/eq-webdlg-api.src.map
   share/webdlg2/htdocs/eq-webdlg.css
   share/webdlg2/htdocs/eq-webdlg.src.css
   share/webdlg2/htdocs/eq-webdlg-status.js
   share/webdlg2/htdocs/eq-webdlg-status.src.js
   share/webdlg2/htdocs/eq-webdlg-status.src.map
   share/webdlg2/htdocs/eq-webdlg-status.css
   share/webdlg2/htdocs/eq-webdlg-status.src.css
   share/doc/PE83-2509160-README


HP-UX PA-RISC:

In order to install this patch, you need to unpack it with gzip and tar.
Gzip is included with HP-UX. Installation requires root privileges.

cd /opt/eloquence/8.3
gzip -dc /path/to/PE83-2509160-hpux-pa20.tar.gz | tar xf -

Files:

   bin/eloqwebd2
   newconfig/config/eloqwebd2.cfg
   newconfig/config/eloqwebd2.app
   newconfig/config/eloqwebd2.uri
   share/webdlg2/htdocs/eq-webdlg.js
   share/webdlg2/htdocs/eq-webdlg.src.js
   share/webdlg2/htdocs/eq-webdlg.src.map
   share/webdlg2/htdocs/eq-webdlg-ui.js
   share/webdlg2/htdocs/eq-webdlg-ui.src.js
   share/webdlg2/htdocs/eq-webdlg-ui.src.map
   share/webdlg2/htdocs/eq-webdlg-api.js
   share/webdlg2/htdocs/eq-webdlg-api.src.js
   share/webdlg2/htdocs/eq-webdlg-api.src.map
   share/webdlg2/htdocs/eq-webdlg.css
   share/webdlg2/htdocs/eq-webdlg.src.css
   share/webdlg2/htdocs/eq-webdlg-status.js
   share/webdlg2/htdocs/eq-webdlg-status.src.js
   share/webdlg2/htdocs/eq-webdlg-status.src.map
   share/webdlg2/htdocs/eq-webdlg-status.css
   share/webdlg2/htdocs/eq-webdlg-status.src.css
   share/doc/PE83-2509160-README


Linux:

In order to install this patch, you need to unpack it with tar.
Installation requires root privileges.

cd /opt/eloquence/8.3
tar xzf /path/to/PE83-2509160-linux-86_64.tar.gz

Files:

   bin/eloqwebd2
   newconfig/config/eloqwebd2.cfg
   newconfig/config/eloqwebd2.app
   newconfig/config/eloqwebd2.uri
   share/webdlg2/htdocs/eq-webdlg.js
   share/webdlg2/htdocs/eq-webdlg.src.js
   share/webdlg2/htdocs/eq-webdlg.src.map
   share/webdlg2/htdocs/eq-webdlg-ui.js
   share/webdlg2/htdocs/eq-webdlg-ui.src.js
   share/webdlg2/htdocs/eq-webdlg-ui.src.map
   share/webdlg2/htdocs/eq-webdlg-api.js
   share/webdlg2/htdocs/eq-webdlg-api.src.js
   share/webdlg2/htdocs/eq-webdlg-api.src.map
   share/webdlg2/htdocs/eq-webdlg.css
   share/webdlg2/htdocs/eq-webdlg.src.css
   share/webdlg2/htdocs/eq-webdlg-status.js
   share/webdlg2/htdocs/eq-webdlg-status.src.js
   share/webdlg2/htdocs/eq-webdlg-status.src.map
   share/webdlg2/htdocs/eq-webdlg-status.css
   share/webdlg2/htdocs/eq-webdlg-status.src.css
   share/doc/PE83-2509160-README


Windows:

Two options are available for patch installation. The patch is
available as self extracting archive for automatic installation
and as a zip archive for manual installation. Both patches are
equivalent. Installation requires administrative capabilities.

For automatic installation of this patch, please download the patch
file PE83-2509160-win32.exe. Before installation, please consider
stopping the WEBDLG2 server, then execute the patch installation
program. Installation does not require a reboot unless the patched
files were active.

For a manual installation of the patch, please download the patch
file PE83-2509160-win32.zip and unpack its contents. Then perform
the following steps:

* Please make sure the eloqwebd service is stopped before installing
  the patch (in the Service Control Manager or with net stop eloqwebd).

* Please copy the eloqwebd32.exe file into the Eloquence bin directory.
  (Default location: C:\Program Files\Eloquence\8.3\bin)

* Please copy the eloqwebd64.exe file into the Eloquence bin64 directory.
  (Default location: C:\Program Files\Eloquence\8.3\bin64)

* Please copy the eloqwebd2.cfg and eloqwebd2.app and eloqwebd2.uri files
  into the Eloquence newconfig\config directory.
  (Default location: C:\Program Files\Eloquence\8.3\newconfig\config)

* Please copy the eq-webdlg* files into the Eloquence share\webdlg2\htdocs
  directory (create the directory if it does not exist).
  (Default location: C:\Program Files\Eloquence\8.3\share\webdlg2\htdocs)

* Please copy the PE83-2509160-README.txt file into the Eloquence
  share\doc directory.
  (Default location: C:\Program Files\Eloquence\8.3\share\doc)

Files:

   eloqwebd32.exe (32 bit WEBDLG2 server)
   eloqwebd64.exe (64 bit WEBDLG2 server)
   eloqwebd2.cfg
   eloqwebd2.app
   eloqwebd2.uri
   eq-webdlg.js
   eq-webdlg.src.js
   eq-webdlg.src.map
   eq-webdlg-ui.js
   eq-webdlg-ui.src.js
   eq-webdlg-ui.src.map
   eq-webdlg-api.js
   eq-webdlg-api.src.js
   eq-webdlg-api.src.map
   eq-webdlg.css
   eq-webdlg.src.css
   eq-webdlg-status.js
   eq-webdlg-status.src.js
   eq-webdlg-status.src.map
   eq-webdlg-status.css
   eq-webdlg-status.src.css
   PE83-2509160-README.txt
