Progress OpenEdge 11.6.0.0 Readme

Ports: All
Date: October, 2015
--------------------------------
Copyright (c) 1984-2015 Progress Software Corporation.  All rights reserved.


Read these On-line Release Notes
================================

It is important to read these on-line release notes.  They are the exclusive
release notes for this release.

The on-line release notes are on the distribution medium as one text file, readme.txt.

The readme.txt file includes a list of known issues followed by a list of the issues
fixed in this release.

In addition, the distribution medium includes the following HTML report files which
list the issues addressed in this release -  organized by version, issue
number (CR ID), or product component.

  * PROGRESS_OE_<release#>_VERSION.htm (Lists fixed issues by Version)
  * PROGRESS_OE_<release#>_ISSUE.htm (Lists fixed issues by Issue Number)
  * PROGRESS_OE_<release#>_COMPONENT.htm (Lists fixed issues by Component)

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

PRODUCT NOTES for 11.6.0.0

a. ADE Tools and Runtime

PSC00333643 : IHttpRequest AcceptContentType property removed
================================================================================
The AcceptContentType property has been removed from the IHttpRequest interface
and all implementing classes.

To retrieve the content types that the request will accept, call the
GetHeader('Accept') method on the request, and extract the value via the Value
property on the HttpHeader object returned.

The RequestBuilder API is unchanged: Accept() , AcceptJson(), and other
variants may still be called.


PSC00200793 : Initial value rules for logical fields in the GUI Dictionary
================================================================================
By default, when you create a logical field through the GUI Data Dictionary, it
sets the Initial Value as the first value in the Format. For example, if the
Format is "male/female", the Initial value defaults to male. The exception to
the first item rule is when the format is "yes/no" or "true/false". For those
cases, the tool uses the OpenEdge default value for a logical field, "no" and
"false", respectively.


PSC00172720 : Mandatory fields are not marked as NOT NULL during protoodbc
================================================================================
When running a pro-to-odbc migration against a DB2 data source, fields marked
as "mandatory" in the OpenEdge database were being created in generated SQL
script and the foreign data source without the NOT NULL syntax.  This leads to
a situation where these fields are null capable in the foreign database.  

To make DB2 consistent with the MS SQL Server and Oracle DataServers, the
OpenEdge DataServer for ODBC will now set the NOT NULL constraint on SQL
columns derived from mandatory fields for DB2 data sources.


PSC00155578 : Generic comment deletion code removed from triggers
================================================================================
Deletion triggers have been updated to not generically remove comments,
security allocation and multi-media records due to performance impact. A new
ERWin trigger template db/af/erw/afercustrg.i has been provided that customers
can use to re-generate their own triggers without the generic deletion code.
Customers can also update their triggers with specific code to do the deletion
in such a specific way that should not have any performance impact.


PSC00240314 : Migrating Progress Dynamics to Release 11.0+
================================================================================
Before attempting any migration, convert the physical database to Release
11.0+, using the proutil conv1011. Progress Software Corporation recommends
making a backup at this time.

Before migrating to Release 11.0+, Progress Dynamics currently using Version
2.1B must upgraded to Version 2.1B02. The following steps are the only
supported path to migrate a Version 2.1B Repository to OpenEdge 10.2B:
- Ensure the Repository is upgraded to Version 2.1B02 (db version: 020030). The
migration does not work properly on earlier versions of the Repository.
- Create a new shortcut for the Dynamics Configuration Utility (DCU), based on
the existing shortcut from the install.
- Modify the -icfparam parameter in the target. Change
'DCUSETUPTYPE=ProgressSetup' to 'DCUSETUPTYPE=Migrate21Setup'.    
- Run the Dynamic Configuration Utility (DCU) from this shortcut to upgrade the
Repository from Version 2.1B02 to Release 11.0+.


To migrate from Release 10.0B05 to Release 11.0+, follow these steps:
- Ensure the Repository is upgraded to Release 10.0B05 (db version: 100005).
The migration does not work properly on earlier versions of the Repository.
- Create a new shortcut for the Dynamics Configuration Utility (DCU), based on
the existing shortcut from the install.
- Modify the -icfparam parameter in the target. Change
DCUSETUPTYPE=ProgressSetup to DCUSETUPTYPE=Migrate100Setup.  
- Running the DCU from this shortcut upgrades the Repository from Release
10.0B05 to Release 11.0+.


To migrate from Release 10.1A02 to Release 11.0+, follow these steps:
- Ensure the Repository is upgraded to Release 10.1A02 (db version: 101002).
The migration does not work properly on earlier versions of the Repository.
- Create a new shortcut for the Dynamics Configuration Utility (DCU), based on
the existing shortcut from the install.
- Modify the -icfparam parameter in the target. Change
DCUSETUPTYPE=ProgressSetup to DCUSETUPTYPE=Migrate101ASetup.  
- Running the DCU from this shortcut upgrades the Repository from Release
10.1A02 to Release 11.0+.


To migrate from Release 10.1B03 to Release 11.0+, follow these steps:
- Ensure the Repository is upgraded to Release 10.1B03 (db version: 101101).
The migration does not work properly on earlier versions of the Repository.
- Create a new shortcut for the Dynamics Configuration Utility (DCU), based on
the existing shortcut from the install.
- Modify the -icfparam parameter in the target. Change
DCUSETUPTYPE=ProgressSetup to DCUSETUPTYPE=Migrate101BSetup.  
- Running the DCU from this shortcut upgrades the Repository from Release
10.1B03 to Release 11.0+.

To migrate from Release 10.1C to Release 11.0+, follow these steps:
- Ensure the Repository is upgraded to Release 10.1C (db version: 101201). The
migration does not work properly on earlier versions of the Repository. The
migration will also work for service packs 1 and 2.
- Create a new shortcut for the Dynamics Configuration Utility (DCU), based on
the existing shortcut from the install.
- Modify the -icfparam parameter in the target. Change
DCUSETUPTYPE=ProgressSetup to DCUSETUPTYPE=Migrate101CSetup.  
- Running the DCU from this shortcut upgrades the Repository from Release 10.1C
to Release 11.0+.

To migrate from Release 10.2A to Release 11.0+, follow these steps:
- There were no updates made to the Repository between 10.2A and 11.0, and so
no migration is necessary.

To migrate from Release 10.2B to Release 11.0+, follow these steps:
- There were no updates made to the Repository between 10.2B and 11.0, and so
no migration is necessary.


PSC00178641 : DCU enforces MinVersion with migrations
================================================================================
If a setup XML file has migration setup types (defined by having a
migration_source_branch session property with a non-blank value), then a check
is performed to ensure that the DB version sequence matches that of the
MinimumVersion in the Database node of the setup_type. If these 2 versions
don't match an error is raised and a message shown.

This message is a new message and has a code of 'MSG_cannot_migrate', and
appears in the shipped setup101B.xml. If customers have created their own
setup.xml files, they need to add this message to all the setup types contained
in those XML files.


PSC00174297 : Dynamics translated application: performance problems on login
================================================================================
Support has been added for a session property called "cached_translations_only"
which is set via the session definition (in the XML file and/or repository). In
the absence of such a property in the session, the default is YES (the
historical value). If cached_translations_only is false, then translations are
not retrieved at startup, but rather on demand when an object is translated.


PSC00162290 : Static Object Deployment Tool - Option to generate source listing
================================================================================
The Deploy Static Objects tool has the ability to produce a listing file of all
the files that are packaged into a deployment produced by the tool.

The listing file is specified in the UI before the deployment starts building.
If no listing file is specified, then the listing will not be produced. A
default value is provided by the tool, and is for a file called 'listing.log'
in the session's temporary directory.

The listing file consists of the following fields, tab-delimited:
File name
Relative path
Deployment type
Design-only flag

This functionality can be used to determine which files are required for
compilation on 64-bit platforms. A Dynamics client is only supported on
Windows, which is a 32-bit platform, and customers may connect to an AppServer
running on a 64-bit platform; in such a case the code would need to be compiled
against the 64-bit platform, and the listing file will give the ability to
determine which files are required.


PSC00140234 : Notes on using the Deploy Static Objects tool
================================================================================
When deploying static objects using the Deploy Static Objects tool, please note
the following:

1) You must specify the following extra directories in the Deploy Static
Objects tool, in order for a standard Progress Dynamics WebClient install to
work:
    adeicon
    ry/img
    adm2/image    

adeicon.pl can be used instead of the adeicon directory, but you must manually
copy this file into the target directory. These image directories are not
required for a server install (AppServer of Web).

2) You must manually copy the adm2/dyntreew.wrx file into the target directory,
for WebClient installs.

3) You must manually copy adecomm.pl into the target directory for a WebClient
install.


PSC00314904 : The adm2/dyntreeview.w SmartObject only works in 32-bit installs
================================================================================
The adm2/dyntreeview SmartObject is implemented using a 32-bit OCX control. An
error message about the OCX not being registered or moved will be thrown if you
attempt to run or drop this SmartObject on a container in a 64-bit install.


PSC00240288 : The DynamicsVersion session property must be manually updated
================================================================================
If you are working in an OpenEdge release later than 10.2B, the DynamicsVersion
session property may be set to the wrong release number. This property is not
automatically updated.

To workaround this issue, modify
$DLC/src/dynamics/db/icf/dfd/update_dynamics_version_property.p so that the
value of the DYNAMICS-VERSION preprocessor is set to the relevant OpenEdge
release number (11.2, for example). Compile this file and copy to $DLC/gui,
which is important because the DCU does not run against source code.


PSC00224776 : ADM2 default data management ignores orphaned/unlinked SDOs on
Viewers
================================================================================
A SmartDataObject (SDO) placed on a Viewer without being linked to a data
source or to a field is not included in the container's first request to the
AppServer and will thus not get any data. This was not the case in old releases
of OpenEdge (before v10).  

You can uncheck the Appserver Aware option in the Procedure Settings of the
container to get the old behavior. This makes the SDOs revert to the old
request behavior with one AppServer request per SDO. Note that this can add a
substantial overhead to the data retrieval from the  AppServer.

Alternatively, you can move the SDO to the SmartContainer and use the pass-thru
link mechanisms to make it accessible to the Viewer, or override
initializeObject in the Viewer and call openQuery in the SDO. This approach may
require one extra AppServer request specifically for the SDO.


PSC00219897 : Dynamic SDO with join require calculated fields to be defined in
table order
================================================================================
In a Dynamic SDO based on a join, calculated fields will behave incorrectly
under these circumstances:
- Both tables in the join have calculated fields defined in the Repository's
entity definitions.
- Both tables also have one or more of these SDO Entity calculated fields
included in the SDO.
- The calculated fields from the right-hand table of the join appear before
those of the left-hand table in the list of fields in the SDO.

Symptoms include incorrect formatting and incorrect initial values being
provided, as well as calls to the SDO data logic procedure failing with errors
relating to temp-table schema mismatches.


PSC00207823 : dynlaunch.i fails in thin client with DATETIME, DATETIME-TZ, RAW
or ROWID param
================================================================================
Calling a PLIP using dynlaunch.i fails in a thin-client environment if the
procedure call includes DATETIME, DATETIME-TZ, RAW or ROWID parameters.

The client will report this error:
Mismatched number of parameters passed to routine <name>. (3234)

The AppServer agent will report these errors:
BUFFER-FIELD was not found in buffer ttSeqType. (7351)
Lead attributes in a chained-attribute expression (a:b:c) must be type HANDLE
or a user-defined type and valid (not UNKNOWN). (10068)

The workaround is to implement calls with these data types to run as external
procedure calls on the AppServer.  

e.g. RUN xxx on gshAstraAppServer (INPUT ...)

Alternatively, you might add CASE statements for the 4 data types in
obtainInitialValueField in adm2/caller.p. (This has not been tested, but is
assumed to be the problem.)


PSC00195316 : **Widget ID <n> not unique (<widget-name>) error for recursive
Dyn TreeViews
================================================================================
The "Runtime Widget-ID Assignment" tool assigns default gap values for the
imported SmartObjects.
These default values should work without problems in most cases. But, for
Dynamic TreeViews with structure nodes, the default gap value of 2000 for
"TreeNode" might not be large enough.
Since the nodes are created at runtime according to the database data, it is
impossible to know how many tree node levels are going to be created in the
Dynamic TreeView. If this happens and the default gap value of 2000 is not
enough, that default value should be increased as specified in the "Application
Development Environment (ADE) Addenda" Web paper in the "Widget IDs for ADM2
and Progress Dynamics" section.


PSC00194792 : Toolbar never creates a Band more than once per toolbar instance
================================================================================
The toolbar creates only a single instance of each Band for a toolbar instance.
However, the Repository allows multiple instances of the same Band on a
toolbar. Before Release 10.1C, the toolbar created the multiple instances of
the same Band, but the second instance had no menu items. In Release 10.1C, the
second instance of a Band is ignored completely.


PSC00180829 : DynLookup limit on number of joins may vary on DataServers
================================================================================
In Release 10.1C, the DynLookup supports a join with up to 18 tables instead of
10. But, this limit might not apply when using a DataServer, because there also
is a limit decided by the size of the ROWIDs in the tables. The ROWIDs of the
tables are added to an indexed RowIdent field and the ABL has a limit on the
size of an index.

Starting with Release 10.1B, as long as -tmpbsize 4 (default) or larger is
used, temp-tables use large index keys and can store up to 1970 characters.
This means that, in theory, you can store and index up to 16 ROWIDs returned
from MSSQL server ( 16 * ( 116 + 1 ) - 1 = 1871 characters for rowids +
separators). The different DataServers will return ROWIDs with different
lengths, so the limit will vary.

If this limit is an issue, then you can edit the af/app/afgettemp.p procedure
and remove the following index definition.
 
----
hTT:ADD-NEW-INDEX("idxRowIdent":U,FALSE,FALSE).
hTT:ADD-INDEX-FIELD("idxRowIdent":U,"RowIdent":U,"asc":U).
----

The index is used in certain reposition operations on the client. Removing it
has an affect on performance, but this might be unnoticeable or acceptable
since the operation is done on the temp-table on the client.


PSC00170305 : UndoChange action added to all tableio toolbars
================================================================================
Beginning with version 10.1B all shipped toolbars and tableio bands contain a
new UndoChange action. This action replaces the old Reset action as the default
in these toolbars.  

This constitutes a behavior change (label and accelerator) for existing
applications that use the shipped toolbars or bands, since the caption is
changed to "Undo" instead of "Reset" and the accelerator is changed to "CTRL-Z"
from "ALT-R".

The new UndoChange action defines some of the translatable text needed for the
context sensitive text in the admmsgs.i include, message number 97.    

Customers that use the shipped toolbars or bands and want to remove the new
action and get the old one back need to customize the class or toolbar.
Customers that already have specific toolbars might need changes either to be
able to use the new action or to remove it.
 
To remove (hide) the new UndoChange action and get Reset back in shipped
toolbar or band:
-------------------------------------------------------------------
The Reset action is already present in the toolbar, so in order to make the
Reset into default, the UndoChange needs to be added to the comma-separated
HiddenActions property.   

Existing customer toolbars
--------------------------
Existing customer toolbars may or may not get the new UndoChange action. If the
toolbar or menu is defined with the "Tableio" category or one of the tableio
bands, then the action is added automatically. But, many toolbars add tableio
actions specifically in initAction() or initMenu() overrides in order to
control the order and add rules. The "UndoChange" will need to be added to
these.    

customized initAction
---------------------
Since the getTableioUndoNew may need to load the actions if it is called from a
visual object before the toolbar is initialized, the toolbar initAction has
been changed to setIsActionsLoaded(true). Overrides of initAction that do not
call super must add the same call, using dynamic-function or the {set~ include.


PSC00167044 : The Export to Excel functionality removes leading zeros from
character strings
================================================================================
The Export to Excel functionality removes leading zeros from character strings.


PSC00162037 : IndexInformation property only contains information for primary
table(s)
================================================================================
The IndexInformation property has been changed to only contain index
information for the table(s) that are uniquely represented in one row in the
SDO query. The default table(s) are the EnabledTables or the first table for
read-only SDOs.

The getIndexInfoTables function determines which tables' info is added to the
property. This is not implemented as a property, but can be overridden if
different behavior is needed. If you want the old behavior all data objects,
then add a custom version that returns the value from getTables (all tables in
the query).


PSC00161048 : Changes to how decimal values are managed in dynamic combos
================================================================================
There were several problems in previous releases developing decimal dynamic
combos with default flag values that contain a numeric decimal point and
deploying with different numeric formats.

Default flag values were always stored in the format used during development.
This prevented deployment to numeric formats other than the one used for
development.  Either errors displayed and no data displayed in the combo or
incorrect data was stored in the repository for the <None> or <All> option.

With 2.1B01, 10.0B03 and 10.1A this has changed to store default flag values
with American numeric format.  They should be entered in the SmartDataField
maintenance tool using the session's format but the tool will replace the
numeric decimal point with a period in the stored value.  At runtime, any
stored periods in the data are replaced with the current session's numeric
decimal point.

A fix program runs as part of the DCU Upgrade to convert existing default flag
values for decimal dynamic combos to American format.  The DCU must run in the
format that was used to develop dynamic combos.

The fix program writes a message to the log file for each default flag value it
attempts to convert.  It writes a message when a value is converted
successfully or writes a message if the conversion fails.  Review the DCU log
file after the upgrade and manually correct any failures.  Any failures that
are not corrected may not behave properly at runtime as the runtime has changed
to attempt to convert stored American formats to the format of the running
session.

There are several Dynamics objects in the repository that store blank default
flag value instance attributes and give messages in the log file.  These are
for the cbSCMTool dynamic combo on the following viewer objects:

gsmsxgenviewv
gsmsxotviewv
gsmsxpmviewv

The messages for these objects are expected and you can ignore them.

Any dynamic combo instance attributes stored in static viewer code in your
application must be converted manually to American numeric format.


PSC00159054 : assignNewValue w/ invalid values behaves different in new lookup
API
================================================================================
The old and new lookup APIs behave differently when passing invalid value
parameters to assignNewValue if the lookup key field is different from the
lookup displayed field.

With the old API (pre-2.1B/10.0B02 behavior and 2.1B/10.0B02 behavior with
keep_old_api set to TRUE), passing an invalid key field value or an invalid
displayed field value to assignNewValue displays blank in the lookup field when
assignNewValue is invoked. If changes to the record are saved, blank is stored
in the record's key field.  

With the new API (2.1B/10.0B02 default behavior), passing an invalid key field
parameter displays blank in the lookup field when assignNewValue is invoked. If
changes to the record are saved, the previous value displays in the lookup
field and the value is not changed in the record's key field. Passing an
invalid displayed field parameter displays the invalid value in the lookup
field when assignNewValue is invoked. If changes to the record are saved, the
previous value displays in the lookup


PSC00158854 : Widgets on static SmartDataBrowser are not enabled on dynamic
containers
================================================================================
When a static SmartDataBrowser contains other objects on its frame, those
objects are not enabled when the static SmartDataBrowser is run on a dynamic
container.  When that static SmartDataBrowser is run on a static container,
those objects are enabled.


PSC00158601 : BaseQuery must have NO-LOCK after WHERE
================================================================================
A child SDO loses parent filter criteria if its BaseQuery has the NO-LOCK
option before the WHERE criteria.

When two SmartDataObjects are linked in a parent/child relationship, with or
without a SmartBusinessObject, the child SDO might lose its filtering by the
parent SDO. In previous versions, this happened if the child SDO was generated
by the Object Generator with Follow joins turned on. This generated a BaseQuery
with NO-LOCKs before the join criteria and caused the ADM to add the
foreignfield criteria to the query incorrectly.

As a workaround, opening and saving the SDO in the AppBuilder alters the
BaseQuery to put the NO-LOCKs after the join criteria as expected by the ADM.


PSC00158372 : DynCombo support for a DataObject as data source does not include
static SDO
================================================================================
The option to define an SDO DataSource for a DynCombo is not supported for
static SDOs.


PSC00158340 : Sharing data object, browse and viewer out of sync showing data
================================================================================
The support for SharedData does not actively refresh viewers or browse
viewports when data is changed by another DataObject. To refresh a browse, you
must currently scroll the record out of the viewport. To refresh a viewer, you
must currently navigate to another record and back. Note that a viewer on a
hidden page does not refresh itself if it is on the same record as when it was
hidden. So, in this case, it does not help to navigate to another record and
back in the browser.


PSC00157892 : SDO Cache does not include Auditing & Comments tick-information
================================================================================
The data caching and data sharing support does not always cache auditing and
comment information. This information is retrieved only for certain instances
and would only be cached if the actual object that did the initial server
retrieval was set up to include this information. Data objects that retrieve
their data from the cache may thus be unable to show the correct tick-mark in
the toolbar if the initial server request did not include this information.


PSC00157071 : stripLookupfields is not used in the new lookup API
================================================================================
In previous versions, the stripLookupFields procedure was called on each
display to figure out if the SmartDataFields could be resolved by the viewer's
DataSource. The new lookup API does not use this procedure.


PSC00156968 : Setting of BaseQuery in initializeObject requires synchronization
of QueryWhere
================================================================================
If any other query manipulation has been done before changes to the BaseQuery
are made, you need to synchronize QueryWhere and possibly the QueryString. If
the BaseQuery is set in an initializeObject override before SUPER, you might
also need to synchronize QueryWhere in an SDO without any custom query
manipulation. The only cases where BaseQuery can be set without synchronizing
the QueryWhere are on the client (AsDivision = 'client') and in dynamic SDOs on
the server (AsDivision = 'server'). Static SDOs calls setOpenQuery, which calls
setQueryWhere, from the main block (query.i) when connected to the database.
Dynamic objects that are connected to the database will call prepareQuery from
createObjects.

Background:
The BaseQuery is the design-time, fixed part of the query. It is part of the
object definition. The design philosophy is that runtime query manipulation can
be done without violating the integrity of this part of the expression.
Consequently, the BaseQuery should not be changed after any query manipulation
has been done.
However, it is quite common for applications to need to set this when an SDO
instance is launched. (For example, to filter data on department or company key
based on the userid.)
Various examples and documentation have shown and stated that this can be done
in an initializeObject override before the call to SUPER. In particular, older
documentation examples showed this being done with setOpenQuery, which also
synchronizes the physical query by calling QueryWhere. This was a problem on a
client since setQueryWhere used to always prepare the physical query.
setQueryWhere has since become more lightweight, but setOpenQuery still calls
the server and should still be avoided in an AppServer session.


PSC00156174 : Translation tool does not include SmartDataBrowser search field
================================================================================
The optional search field of a SmartDataBrowser doesn't show up in the
translation window to allow you to add a translation.        


PSC00156171 : The SmartDataBrowser sort profile is not used with SBO
data-sources
================================================================================
The sort profile saved for a SmartDataBrowser with a SmartBusinessObject as its
data-source is not used upon restart.


PSC00155989 : Changes in how Dynamics Window dimension profiles store
WINDOW-MAXIMIZED
================================================================================
Progress Dynamics windows now store the WINDOW-MAXIMIZED state together with
the previously stored dimensions in the user profile. The state is stored as a
5th entry in the profile value. In previous versions, this state just overwrote
the old profile. If you close a maximized window and no dimensions have been
saved previously, the window still stores "WINDOW-MAXIMIZED" as the only entry.


With the new behavior, a window can store the WINDOW-MAXIMIZED state without
loosing the stored dimensions for the previously saved WINDOW-NORMAL state. The
next time you launch the window, it displays maximized. But, when the
WINDOW-NORMAL state is applied, the window resumes its previously stored size.


PSC00154960 : Dynamic Lookup maintenance window does not destroy its
maintenenance SDO
================================================================================
The Dynamic Lookup maintenance window does not destroy its SDO and associated
Data Logic Procedure

Whenever you open the maintenance window of the dynamic lookup from the dynamic
lookup browse, the system launches a new instance of the maintenance window's
SDO and its associated DLP. However, these objects are not destroyed upon
closing the maintenance window.


PSC00154765 : Error messages for child SDO not returned when CLOB involved
================================================================================
A detailed error message may not be returned to the client while adding a
record to a SmartDataObject under the following circumstances:

- the SDO is running on AppServer
- the SDO contains large object fields
- AutoCommit is false (commit is used to commit multiple updates at once)

The client does receive an "update cancelled" message but should have a
detailed error.  The detailed error is written to the AppServer log file.  

This situation is more likely to occur with an SDO that is part of a
SmartBusinessObject.


PSC00154671 : SmartFrame objects stored with .w in object name may need two
translations
================================================================================
For SmartFrames or SmartWindows that are launched from a static container, the
object name for Title and Page Label translations is resolved from the
procedure:FILE-NAME without path and extension. Therefore, SmartFrame objects
that have the .w extension in their Repository object names might need two
translations, one without the extension for usage in static containers and one
with the extension for dynamic containers.


PSC00151672 : CallerProcedure, CallerObject, and CallerWindow are not set in
createObjects
================================================================================
The Session Manager's launch in Progress Dynamics sets properties like
CallerProcedure, CallerObject, and CallerWindow in the launched container.
These properties are set before the container is initialized and can thus be
used in an initializeObject override. However, they are not intended for use
during the construction (the execution of the main block) of the container.
The createObjects call is typically done as part of the construction. However,
in previous releases, static non-window containers, like SmartFames and
SmartDataViewers, did call createObjects from initializeObject allowing these
properties to be used also in createObjects.
Now, createObjects is called during the construction of almost all containers.
If a createObject override uses these properties, it is unlikely to work. Any
logic referring to these properties in createObjects should be moved to an
initializeObject override instead. Moving this logic to initializeObject should
not cause any change in behaviour.


PSC00150794 : Read only SDO tables can be specified to remain NO-LOCKed  during
transaction
================================================================================
The NoLockReadOnlyTables property can hold a comma-separated list of read-only
(non-updatable) tables that should remain NO-LOCKed during the transaction. A
value of 'ALL' means that all read-only tables should remain NO-LOCKed. Note
that read-only tables defined by this property also are excluded from the
optimistic lock check of changes.


PSC00144084 : Error 4054  (.. does not fit..) if ToolbarDrawDirection is
"vertical"
================================================================================
The Dynamics layout manager does not handle toolbars where the
ToolbarDrawDirection is set to 'vertical'.


PSC00140279 : Static browsers/browsers in static windows don't get Repository
column labels
================================================================================
Browsers running in static windows linked to a static SDO on an AppServer will
not get the column-label from the Repository's EntityField. Instead, the
browser gets the column-label from the database schema. This problem also
applies to any static browser.    


PSC00140138 : A single toolbar cannot switch navigation between SDOs and SBOs
================================================================================
In a paged container where a SDO is the Data-source of a SBO, you cannot use a
single toolbar to navigate both the SDO and the SBO.


PSC00140135 : Loss of data when changing page while browse is in add
================================================================================
When adding a new record in a browser that is part of a tabbed user interface,
the entered data can be lost or appended to the next record in the browser
under the following conditions:

- The browser is the update source for an SDO.
- The user did not enter all of the required fields in the browser row.
- The user selects a different page before saving the new record.


PSC00133069 : ADM2 does not support the READ-ONLY attribute on browse columns
================================================================================
The ADM2 does not support setting the READ-ONLY attribute directly on browse
columns as a way to disable fields.  

Field enabling is controlled by the EnabledFields property, that is, you make
columns read-only by removing them from the enabled fields list.

This is not considered to be a bug. Dynamic browser columns are all read-only
at start up, so it would be very difficult to implement a solution to detect if
the READ-ONLY attribute has been set in initializeObject.


PSC00130471 : New records can be duplicated when reading new batch if added
while batching
================================================================================
If new records are created that sort higher than the last record in the current
batch, the new record is duplicated when a batch includes the new record.

To prevent this, either ensure that the user is at the last batch when adding
the new records that will get key values that sort higher than the currently
last record or avoid batching when such records can be created.


PSC00130387 : RowObjUpd.ChangedFields is obsolete
================================================================================
Prior to Version 10.0A, the RowObjUpd.ChangedFields field was used to figure
out which fields to save in an SDO. This is now obsolete and no longer used.
The SDO now figures out which fields to save to the database tables based on a
comparison of the before-image and the changed record. The ChangedFields field
is not used in any logic, except for a call to bufferCollectChanges, which
updates this field. Since it does not capture all changes, this update is not
reliable and the method will be deprecated in the future.


PSC00129126 : Avoid changing Foreign Keys in Web Objects with joined queries
================================================================================
When you use the Detail Wizard to create a Web object that contains a join, do
not make the foreign key field updateable. If you change the value of the
foreign key in a record, the next stateless request might not be able to find
that record.

When this happens, you get an error that the query could not reposition to that
record.

If your application needs the ability to update the value of the foreign key in
a joined query, you must make sure that the list of ROWIDs in the
"CurrentRowids" attribute contains ROWIDs of the newly joined table, instead of
the originally-joined table.


PSC00128303 : Static data objects do not get initial value from Repository
================================================================================
Static SDO proxies (<sdo>_cl) do not get the INITIAL-VALUE from the
Repository's EntityField DefaultValue at run time. The temp-table's
INITIAL-VALUE attribute is a read-only attribute that is compiled into the SDO
temp-table definition from the SDO include.


PSC00124754 : Print Preview and Export to Excel do not work when the data
source is an SBO
================================================================================
Print Preview and Export to Excel options available on various browse      
toolbars are not supported for visual objects whose data sources are          
SmartBusinessObjects. These options will do nothing when chosen.


PSC00121785 : Record level transaction hooks must be implemented in the Data
Logic Procedure
================================================================================
You must implement a static SmartDataObject's record level transaction hooks
(create*, write*, and delete*) in the Data Logic Procedure. They will only fire
from the SDO if the SDO does not have a Data Logic Procedure.


PSC00156243 : Help cannot be mapped to static container run from the AppBuilder
================================================================================
It is not possible to map help for a static container that has been run from
the AppBuilder.  The container must be run from the Dynamic Launcher to map
help for it.


PSC00173682 : Progress Dynamics can't find the help file during AppServer
sessions
================================================================================
When the help file is set in the "security control" window, Progress Dynamics
can't find the help file using the help-menu-item in an AppServer session.


PSC00171808 : Translated labels and widgets on same row but different column
================================================================================
When translating static viewers where KeepChildPositions=Yes, translated labels
now use the existing label's width only. Also when translating static viewers,
the label's font, rather than the widget's font, is used to determine the width
of the label.

The translation of simple (LIST-ITEMS) combo-box labels is now supported for
dynamic viewers.

When translating dynamic viewers with KeepChildPositions=Yes, the label moves
to the bottom (back) so that it doesn't overlay any widgets to its left. The
label is not truncated, unless it is longer than the space available.


PSC00168877 : The DataView does not support Dynamics Comments and Auditing
================================================================================
There is no default support for Comments and Auditing when DataViews and
ProDataSets are used.

The following error is returned when attempting to save a comment for a
DataView:
                                         
BUFFER-FIELD RowUserProp was not found in buffer <dataset-buffer-name>.(7351)

The Server Interface implementation could define a RowUserPropfield in the
entity temp-table to store the information needed to trigger Auto Comment and
show tick marks in the Dynamics toolbar's Auditing and Comment actions, similar
to how the SDO handles it. Using this field might make it easier to use
existing Repository Manager APIs and reuse existing SDO code. Note that the
Auditing and Comment information is stored with delimiters in the field. This
makes it difficult to use outside of the ADM and difficult to populate. The
population have to be done for each record and will likely affect performance.


PSC00155275 : Info for all users sent to client
================================================================================
When a user attempts to login in a client-AppServer configuration, the entire
list of users is sent from the AppServer back to the client. This may be an
expensive operation when there is a large number of users in the repository. To
reduce this overhead, adding the session property "abbreviatedUserTable" to all
client and AppServer session types and setting its value to "YES" will result
in only the user that is logging in having his data shipped across from the
AppServer, thereby reducing the traffic.


PSC00153575 : Static SmartDataFields (e.g. SmartSelect) cannot be translated.
================================================================================
SmartSelect objects are not presented for translation in the Translation window
at runtime.

The work around is to enter translations of SmartSelects in the Translation
Control tool. The same naming convention as for Lookups is used. You must
specify the Widget Type as 'FILL-IN' and the Widget Name as 'fiLookup' in all
cases. You must enter the Object Name as <viewer-name>:<field-name>.

If the static SmartDataViewer containing the SmartSelect is used in a static
container, you must enter the file name of the viewer, including the extension
(.w), in the Object Name. If the viewer is used in a dynamic container, you
must enter the object name of the viewer, without any extension.

This is an example based on a viewer for the Warehouse table using a
SmartSelect for the 'State' field. The file name of the viewer is
'warehousesdv.w'.

Translation for use in a static container:

Object Name: warehousesdv.w:state
Widget Type: Fill In
Widget Name: fiLookup

Translation for use in a dynamic container:

Object Name: warehousesdv:state
Widget Type: Fill In
Widget Name: fiLookup


PSC00201988 : Error: The Root node code must be specified. (AF:1) when creating
Dyn TreeViews
================================================================================
When entering data in the "Dynamic TreeView Builder" tool, you must enter the
"Object filename" value first. If you do not enter the Object filename first,
you see the "Root node code must be specified. (AF:1)" error upon saving the
data.


PSC00200646 : Error 7452 in Dynamics Dataset Export Filter
================================================================================
Customers using European numeric settings might see the 7452 error when
pressing the filter button on the Dataset Export screen.


PSC00155024 : Cascading security allocations does not work for Data Security
================================================================================
The option to cascade security allocations from a profile user does not   
work for Data security.


PSC00151136 : RTB: Problems when dyn object and super proc in different module
================================================================================
When modifying a dynamic object where the dynamic object and its super
procedure were created in different product modules, the following error may
occur:

The product module <product-module1> and the product module <product-module2>
must be the same. (AF:110)


PSC00146842 : Error 560 Generating Objects From SDO
================================================================================
Error 560 (Entry outside the range of list) is raised when the Object Generator
is used to create dynamic objects from a prebuilt SDO when the SDO has been
created by the Object Generator, and has subsequently had other tables manually
added, and the product module has sublevels in the path.


PSC00146243 : Client cache viewer tool returns errors
================================================================================
The client cache viewer tool no longer works when run against a current version
of the Repository API.


PSC00143666 : Copy-Paste in DynView is not keeping all the attributes of the
widgets
================================================================================
When copying widgets from a DynView to another DynView, some widget attribute
values are missed. For example, when a fill-in is copied, the values of the
ShowPopup and Label attributes are missed in the target DynView. This happens
for all attributes that are read from the Repository.


PSC00140156 : DataFields cut/copied then pasted are associated with RowObject
================================================================================
There is an issue when you cut or copy DataFields from one dynamic viewer and
then paste them to another dynamic viewer built from the same SDO. Until you
save and reopen the second viewer, the AppBuilder shows the new fields as being
associated with the RowObject table instead of their actual database table.


PSC00131772 : Toolbar object modifications are not updated in the Toolbar
================================================================================
011A90108
Toolbar data are cached on the client as soon as they have been read once    
from the server, so when actions, bands and/or toolbars are changed in the   
Toolbar and menu designer these changes will not always be reflected in new
instances of toolbars.                                   
       
Running the Dynamic Launcher and checking the 'Destroy ADM super-procedures'
option will ensure that toolbar data are refreshed. The other option is to   
restart the session.                            


PSC00128502 : Fields hidden on DynView master layout in design mode if custom
layout exists
================================================================================
If a field on a master layout has its HIDDEN attribute set to TRUE, the viewer
typically displays the field in design mode. However, if a customized layout is
made for the viewer, the viewer does not display the hidden field when the
viewer reopens. This is inconsistent with the normal behavior for displaying
hidden fields in master layouts. If you need to modify a hidden field in this
situation, use the ROM tool. Do not modify the hidden field by using the 'List
Objects' button to bring up the property sheet. Doing so removes the field
instance.


PSC00125407 : scm_checks_on in Security Control is not supported
================================================================================
In Security Control, there is a toggle that switches on and off checks for the
use of an SCM tool. The use of this setting is not yet implemented in all the
places where it is relevant to check for this setting. SCM functionality is
always enabled when the SCM tool (Roundtable) is in use with Progress Dynamics.


PSC00247292 : Creating a .zip file on removable media from Visual Translator
causes errors
================================================================================
Creating .zip file on removable media from Visual Translator causes the
following errors:

Error occurred while accessing component property/method: MultiVolumeControl.
Out of present range.

Error code: 0x8002000a Zip adetran/common/_zipmgr.w (5890) Zip: Couldn't open
to write. (15).

Note:  Creating a .zip file on non-removable storage functions properly.


PSC00150235 : Changing the TranMan Language combo may cause error (132)
================================================================================
Changing the selected language on the TranMan Data Tab combo does not display
the correct translations after using the 'View', 'Sort' option from the pull
down Menu.

Double clicking on some rows might give the following error:
** This Translation already exists with Sequence number <number> Instance
Number <number> Language  Name "<language>". (132)


PSC00181371 : Two undo/reset buttons on the Standardtoolbar
================================================================================
The new UndoChange toolbar action is not supported in Dynamics Web.

By default, UndoChange replaces the Reset action in shipped toolbars and
Tableio bands. When these toobars and bands are realized in the Web, the Reset
button and menu item remain and function correctly. However, the UndoChange
action may also be realized at runtime as a non-functioning button and menu
item, labeled "Undo 1 (CTRL-Z)".

In order to suppress the UndoChange button and menu item, the UndoChange action
can be set to Hidden, or added to the HiddenActions property, for the toolbar.
For additional information, please see the note for the new UndoChange action
under GUIRENDR / SmartToolbar in this document.


PSC00144996 : The compileAll option in WebTools has a limitation of URL length
of 4096 chars
================================================================================
The compileAll option on AppManager in WebTools has a limitation of URL length
being more than 4096 chars, depending of what web browser is being used. Try to
limit the size of the compiles, number of files if you run into this problem.


PSC00139229 : HTML after WSTag not sent if WSTag runs another WebSpeed object
================================================================================
If a SpeedScript file contains a WSTag tag that runs another WebSpeed
object, the remaining HTML after the WSTag tag is not sent to the Web
browser.


PSC00130586 : WebSpeed detail program called from a WebSpeed report program
hangs
================================================================================
A WebSpeed detail program called from a WebSpeed report program might hang when
the Add button is used a second time or the Delete button is used. If the
detail program is used separately from the report program, the problem does not
occur.



b. Adapter for SonicESB

PSC00240333 : Connnection string limitation for session-managed native ESB
Adapter
================================================================================
The combined length of the connection string (composed of  a user-id, password,
and information fields) must not exceed 30,000 non-Unicode characters when
connecting to an AppServer. Exceeding the string length causes an AppServer
exception.


PSC00220618 : Agents remain locked when ESB Adapter returns a Fault in Sonic
Workbench
================================================================================
When using the OpenEdge Adapter for Sonic ESB with a session-free AppServer and
persistent procedures, it is important that you release the persistent
procedure when your ESB process completes, to prevent having a locked agent.

When the adapter returns a fault, you must ensure the Release operation is done
in your Fault process. This requires you to keep track of your process ID and
have access to it in your Fault process.

In the Progress Developer Studio for OpenEdge/Sonic Workbench development
environment, Sonic intercepts all fault returns so that it can display the
result.  Consequently, Fault processes are never run. Setting the Command
Parameter ESB Fault Return Mode to "Continue Process with Fault"  discards the
original message where your Procedure ID is stored, so this is not a viable
solution.

To free up locked agents on the AppServer, you must restart your development
container.

Using Persistent Procedures within Sonic ESB processes is discouraged because
it greatly complicates the handling of Faults and makes your session-free
AppServer operate no differently than a session-managed AppServer.



c. Adapter for SonicMQ

PSC00329878 : ABL commit does not work properly for Pub-Sub sessions
================================================================================
ABL commit does not properly commit messages received during a subscription
when  WebSphereMQ is the JMS Provider. The issue is with the way WebSphereMQ
handles acknowledgements in Pub-Sub sessions during asynchronous reception.



d. AdminServer

PSC00340608 : Start the AdminService using Administrator account
================================================================================
When starting the AdminService with the System account on Windows, you might
observe Java Null Pointer Exceptions. As a workaround, change the user to a
valid user with admin privileges.

To change the user:
1. Go to Control Panel>Administrative Tools>Services
2. Select the "AdminService for OpenEdge 11.6"
3. Right-click and choose Properties
4. In the Properties dialog, select the "Log On" tab
5. Change the radio selection to "This account:"
6. Enter the username and password of a valid admin user and click Apply
7. Restart the AdminService in the Services dialog box



e. AppServer

PSC00342063 : ADH-* ciphers need to set explicitly for Broker.
================================================================================
Ciphers like ADH-AES128-SHA256, ADH-AES128-GCM-SHA256 & ADH-AES128-SHA256 need
to set explicitly to work.

1) If someone needs work with ciphers which are started with ADH-* then that
needs to set  explicitly using PSC_SSLSERVER_CIPHERS in broker environment
section.

2) For example:
    [Environment.asbroker1]
        PSC_SSLSERVER_CIPHERS=ADH-AES128-SHA256
3) After that broker needs to restart to pick up this new ciphers.


PSC00229780 : Startup time of AppServer broker increases when SSL is enabled
(Linux and UNIX)
================================================================================
After upgrading to OpenEdge Appserver V11, the AppServer broker's startup time
might increase if SSL is enabled.  This happens if /dev/random is not populated
with random data.  The SSL libraries used by the AppServer broker require
several kilobytes of random data to properly secure SSL connections to the
broker.

To resolve the issue, ensure that /dev/random is populated with enough random
data.  There are two possible solutions:

- Move /dev/random to /dev/random_bak, and then add a simlink from /dev/random
to /dev/urandom.  This makes /dev/random reference /dev/urandom.  Note that
/dev/urandom is less secure.

-  Install and run rngd, the random number generator daemon.  It increases the
entropy pool used /dev/random to provide random data.


PSC00244975 : Support for Actional is removed
================================================================================
Support for Progress Actional (including all Actional interceptors for
OpenEdge), which was first introduced in OpenEdge 10.2B, is removed from
OpenEdge Release 11.1.



f. AppServer Internet Adapter

PSC00342125 : SSL/TLS communication between AIA and AppServer
================================================================================
SSL/TLS communication between AIA and AppServer has problem when using
ADH-AES256-SHA256, ADH-AES128-SHA256 or ADH-AES128-GCM-SHA256 ciphers suite
with default SSL protocol (i.e. TLS 1.2).

It is recommended that these cipher suites are not used for SSL/TLS
communication between AIA and AppServer.


PSC00342127 : SSL/TLS communication between AIA and AppServer
================================================================================
SSL/TLS communication between AIA and AppServer has problem when using
ADH-AES256-SHA256, ADH-AES128-SHA256 or ADH-AES128-GCM-SHA256 ciphers suite
with default SSL protocol (i.e. TLSv1.2).

It is recommended that these cipher suites are not used for SSL/TLS
communication between AIA and AppServer.



g. Command Line Tools

PSC00341901 : Adding Agents during an AppServer Refresh operation
================================================================================
When you issue a refresh command using asbman or wtbman utility, the busy or
running agents are marked to be refreshed.
If you add more agents using -addserver option while there are agents running
and marked to be refreshed, you will observe
that the agents marked to be refreshed are also included in counting the
maximum server permitted as per the license limitation.



h. DATASERVER

PSC00242574 : Always run r-code against the schema image of the original
database
================================================================================
Prior to OpenEdge 11.3, any change to the record structure or to
compile-dependent characteristics of a column would create a schema mismatch
between compiled r-code and the schema holder database representing a foreign
schema.

Starting in OpenEdge 11.3, the Oracle and MS SQL Server DataServers introduce
"position-independent r-code" which is r-code whose schema references are
"independent" of the physical positioning of a column in the foreign data
source.  In OpenEdge 11.3, position-independent r-code means that column
positions on the server table can be rearranged with only the need to perform a
schema pull but not the need to recompile ABL code.  In OpenEdge 11.3,
introducing a new column or deleting an existing column from an existing record
structure still requires the r-code to be recompiled against the new schema
layout.

With "position-independent r-code, the r-code is dependent only on a logical
identification of the column, and not the physical position of the column. The
logical identification of a column takes place in the OpenEdge database before
migrating to a foreign data source and that logical identification never
changes once the column is defined in the OpenEdge table. Therefore, if the
columns on the server are simply rearranged, the code need not be recompiled.
But, changes to the foreign schema do need to be pulled back into the schema
image to ensure that the new physical position of a column is re-matched
against the proper logical identifiers known to the r-code.  To avoid run-time
data corruption, never run r-code or load data (.d file) while connected
through a schema image that does not reflect the actual schema on the server.

Starting in OpenEdge 11.4, the Oracle and MS SQL Server DataServers can also
accept certain changes to column attributes that would have previously caused a
schema mismatch.  The only schema attributes that cannot change are the data
type, the number of extents in an extent column and the column name.  Now, like
the online schema capability of the OpenEdge database, these are the only
attributes that require a recompile.  Again however, any changes to the server
schema still must be pulled back into the schema image to ensure the proper
attributes are known to the run-time code.  

Starting in OpenEdge 11.4, the Oracle MS SQL Server DataServers can also allow
new columns to be added to a server record's column layout that would have
previously caused a schema mismatch.  While adding a new field will no longer
require a recompile, it is still important to always perform a schema pull so
that the schema image accurately reflects the schema structure on the server.
If the added server column is not reflected in the schema image, then future
references to that field in DataServer applications will not recognize the
field reference on any subsequent re-compiles.    


PSC00215517 : Techniques to load .d file when table has non-updatable column on
MSSQLServer
================================================================================
In MSS DataServers, there is a restriction to a load operation from a .d file
when the table has non-updatable columns (i.e. columns on MS SQL server are of
type 'identity' or 'timestamp' or 'rowguid').
You can work-around this restriction by following one of the two options
described below.

Option 1:-
Use dump/load tools of the foreign data source instead of data from a .d file
to load your foreign table.

Note: This is the only way to retain the original values from non-updatable
columns.

Option 2:-
If the user wants newly generated values for non-updatable columns stored along
side updatable fields from the given '.d' file, write an ABL program to read
data from the .d file into a temp table and then skip non-updatable fields
while writing the temp table records to the foreign table.

Sample ABL code provided below to perform this task.

Consider a table named "test" on SQL Server side with the structure as,

TABLE [test](
[fld1] [int] IDENTITY(1,1) NOT NULL,
[fld2] [varchar](50) NULL,
[fld3] [varchar](50) NULL
)

****** sample ABL code ******

/* define temp table with the name Temptbl for table test */
define temp-table Temptbl like test.

/* pouplate temp-table Temptbl from the records in the .d file name test.d */
INPUT FROM test.d.
REPEAT:
CREATE Temptbl.
IMPORT Temptbl.
/* create a record in the foreign DB */
CREATE test.
BUFFER-COPY Temptbl EXCEPT fld1 TO test.
END.
INPUT CLOSE.

*****************************


PSC00246724 : R-code compiled in OpenEdge 11 before and after this fix must be
recompiled
================================================================================
32-bit and 64-bit datasever r-code compiled in OpenEdge 11.2.0 is incompatible
with OE 11 releases before and after it due to a change of data stored in
r-code.  Corrections are required for all r-code compiled against the
DataServer for MS SQL Server in releases other than 11.2.0.  Release 11.2.0
r-code is only compatible with its own run-time.  Moving Release 11.2.0 MSS
DataServer r-code to later releases (11.2.1+ or 11.3+) requires a recompile
even if you recompiled once already in moving to 11.2.0.


PSC00246559 : Recompile r-code in 11.2.1/11.3.0 from OpenEdge 11.2 or previous
V11 versions
================================================================================
32-bit and 64-bit platform r-code compiled on OpenEdge 11.2 (or previous
versions) must be recompiled at least once before being executed on OpenEdge
11.2.1 or later versions.  Corrections were required for all r-code compiled
against the DataServer for MS SQL Server due to 64-bit alignment issues
associated with stored r-code that affect run-time capabilities on both 32 and
64 bit platforms.


PSC00242586 : Always run r-code against the schema image of the original
database
================================================================================
Prior to OpenEdge 11.3, any change to the record structure or to
compile-dependent characteristics of a column would create a schema mismatch
between compiled r-code and the schema holder database representing a foreign
schema.

Starting in OpenEdge 11.3, the Oracle and MS SQL Server DataServers introduce
"position-independent r-code" which is r-code whose schema references are
"independent" of the physical positioning of a column in the foreign data
source.  In OpenEdge 11.3, position-independent r-code means that column
positions on the server table can be rearranged with only the need to perform a
schema pull but not the need to recompile ABL code.  In OpenEdge 11.3,
introducing a new column or deleting an existing column from an existing record
structure still requires the r-code to be recompiled against the new schema
layout.

With "position-independent r-code, the r-code is dependent only on a logical
identification of the column, and not the physical position of the column. The
logical identification of a column takes place in the OpenEdge database before
migrating to a foreign data source and that logical identification never
changes once the column is defined in the OpenEdge table. Therefore, if the
columns on the server are simply rearranged, the code need not be recompiled.
But, changes to the foreign schema do need to be pulled back into the schema
image to ensure that the new physical position of a column is re-matched
against the proper logical identifiers known to the r-code.  To avoid run-time
data corruption, never run r-code or load data (.d file) while connected
through a schema image that does not reflect the actual schema on the server.

Starting in OpenEdge 11.4, the Oracle and MS SQL Server DataServers can also
accept certain changes to column attributes that would have previously caused a
schema mismatch.  The only schema attributes that cannot change are the data
type, the number of extents in an extent column and the column name.  Now, like
the online schema capability of the OpenEdge database, these are the only
attributes that require a recompile.  Again however, any changes to the server
schema still must be pulled back into the schema image to ensure the proper
attributes are known to the run-time code.  

Starting in OpenEdge 11.4, the Oracle MS SQL Server DataServers can also allow
new columns to be added to a server record's column layout that would have
previously caused a schema mismatch.  While adding a new field will no longer
require a recompile, it is still important to always perform a schema pull so
that the schema image accurately reflects the schema structure on the server.
If the added server column is not reflected in the schema image, then future
references to that field in DataServer applications will not recognize the
field reference on any subsequent re-compiles.    


PSC00242399 : Existing MSS logical schema requires an update to enable certain
LOB operations
================================================================================
In MS SQL DataServer, partial LOB operations with non-native MS SQL Server
drivers had resulted in an error. The schema image has been modified to include
additional information that allows for important LOB data type distinctions in
the non-native drivers. As a result, a newly created logical schema with
re-pulled server definitions will no longer experience errors when non-native
drivers are processing DataServer LOB operations. If you want to successfully
use an existing logical schema with non-native driver connections, you must
first run the attached, upd_sqlcols_buf.p, script and then re-pull your table
definitions with LOB data types from the server into the schema holder
database.


PSC00223191 : ZPRGRS_RECID_BUF_SIZE Option minimum value changed from 44 to 52
================================================================================
The ZPRGRS_RECID_BUF_SIZE option allows the RECID buffer size to be configured
to a customized size for the DataServer session.  This is a legacy option
occasionally used by ODBC DataServer customers and MS SQL Server DataServer
customers up until OpenEdge 11.6 where it essentially becomes obsolete.  Prior
to 11.6, the option allowed for an expansion of the ROWID format size for
customers who chose their ROWID values from large natural keys.  It was also
used occasionally by customers who used PROGRESS_RECID surrogate key to
represent ROWID throughout their database structure.  In that case, the ROWID
buffer size could be minimized to 52 after 10.2B01 and 44 prior to 10.2B01.    

The minimum RECID buffer size was changed to 52 (from 44) beginning OpenEdge
10.2B01 release up until the OpenEdge 11.5.1 release  . In OpenEdge 11.6
release, the minimum value of RECID buffer size has been modified from 52 to 15
as part of the RECID area restructuring that introduced a new ROWID format
(PRGRS_ROWID_VER,1).  While ZPRGRS_RECID_BUF_SIZE was originally made available
to expand the default ROWID format size to something that would fit the largest
natural key you had in your database (if that key was greater than the
ZPRGRS_RECID_BUF_SIZE default).  But it can also be used to keep RECID buffer
size as small as possible in the record buffer (assuming you are using small
keys like the PROGRESS_RECID index that can be generated by a DataServer
migration.  The minimum limit of 52 (which is the size of the PROGRESS_RECID
surrogate key format) would still hold true in OpenEdge 11.6 and greater if you
were to revert back to the old ROWID format using the -Dsrv PRGRS_ROWID_VER,0
connection switch.  NOTE: The "old" (PRGRS_ROWID_VER,0) ROWID format is the
format of the ROWID before version 11.6.  

NOTE: DO NOT INCREASE THIS VALUE IF THERE IS NO REQUIREMENT FOR IT.  INCREASED
BUFFER SIZES CAN HAVE A NEGATIVE EFFECT ON NETWORK PERFORMANCE RUNNING
DATASERVER'S CLIENT/SERVER.

This syntax is for setting the buffer size for the RECID area,

-Dsrv ZPRGRS_RECID_BUF_SIZE,nnnn
    (where nnnn is the new size of the area in bytes. The range limits for nnnn
are   inclusive of values between 52 to 1024.)

Note: Applications that have stored ROWIDs on permanent media prior to 11.5.0
(using PRGRS_ROWID_VER,0) will not be able to use those stored references with
an 11.6 DataServer application because 11.6 uses a new ROWID format
(PRGRS_ROWID_VER,1).

Starting with OpenEdge 11.5.0, the in-memory format was modified to consolidate
ROWID information to reduce the network bandwidth for client/server
configurations. However, If you write ROWID's out to permanent storage media
during your 11.5.0 run-time session and then try to read records back using
your stored ROWID's in a non-11.5.0 run-time, a new ROWID format implemented in
the 11.5.0 release is rendered incompatible with all releases before it or
after it.

On the other way, If your application stores ROWID's on permanent media in a
non-11.5.0 run-time (such as 11.5.1) but tries to locate those records using an
OE 11.5.0 run-time, they would not be identified. This is because of the
ROWID's of the 11.5.0 run-time are not formatted the same as other releases,
the incompatibility will prevent you from finding records with ROWIDs stored
permanently in one run-time format and retrieved for record lookup in the
format of a different run-time.


PSC00218590 : SQLError not getting message with SNAC-10 driver.
================================================================================
New trigger solution (CR#OE00178470) generates 'PSC-init' and 'PSC-end'
messages on trigger execution. Modified DataServer code gets these messages
using SQLFetch()- SQLError - api calls for 2 times. Observed that SNAC-10
driver is not returning the PSC-end message as part of the 2nd time SQLFetch()
with SQLError()- API calls.

This is a 3rd party SNAC-10 driver issue. Confirmed the same by using a sample
ODBC program.

Note: This behavior has NO impact on DataServer functionality.


PSC00251163 : Recompile r-code in 11.2.1/11.3.0 from OpenEdge 11.2 or previous
versions
================================================================================
32-bit and 64-bit platform r-code compiled on OpenEdge 11.2 (or previous
versions) must be recompiled at least once before being executed on OpenEdge
11.2.1 or later versions.  Corrections were required due to the byte ordering
of data stored in r-code compiled against any DataServer (ODBC, MSS, or
ORACLE).  The byte-ordering of r-code storage and run-time retrieval affects
run-time capabilities on both Little Endian (LE) and Big Endian (BE) machine
types.



i. DB

PSC00342161 : Crash recovery status options are deactivated
================================================================================
The newly added crash recovery status options, -crStatus and -crTXDisplay, are
deactivated.  The options are accepted on the command line, but are benign and
shut off internally.  If specified on the command line, the options do not
produce any errors or the expected output.


PSC00330626 : Failure to load LOB data for certain records when binary loading
data into a table partition [11.4.0.x and 11.5.0.x]
================================================================================
When loading data into a table partition using the binary load utility, there
is a problem where the LOB fields may be skipped for some records.  This error
will not bring down the database, or disconnect a client. The records which
have lost the LOBs will still behave normally, except in the following
scenarios:

1.    Read/Update/Delete of the LOB fields of the record, where the error of
“Storage object for blob is not allocated (16510)” will occur.
2.    Delete the record with lost LOB fields, where the error of “SYSTEM
ERROR: unexpected return code from dsmRecordDelete -11” will occur.

The problem occurs under the following conditions:
1.    Table Partitioning must be enabled
2.    Must load data into a certain partition: the “partition
<partition-name>” qualifier must be used
3.    The source data in binary dump file(s) has more data to be loaded into
the target partition (some records are skipped by the loading process)
4.    The LOBs of the a record may not be loaded if its previous record has
been skipped by the loading process
5.    Using OpenEdge 11.4.0 or 11.5.0, or any hotfixes on those releases

To completely recover any lost LOBs, service pack 11.5.1 can be used to binary
load data again if the binary dump file(s) are still available.

To work around the record delete error, or partially recover the record without
LOBs, the following steps can be used:
1.    Find the record with lost LOBs
2.    Copy each field (except the LOBs) from the record
3.    Delete the record with dbrpr (option 3: Remove bad record fragment)
4.    Remove index entries for the record with idxfix
5.    Create a new record with the saved fields


PSC00220715 : dbutil.bat supports nine command line parameters
================================================================================
dbutil.bat supports 9 command line parameters.    Use proutil.bat if your command
line requires more than 9 parameters.  proutil.bat supports 27 parameters.  


PSC00220401 : An encryption-enabled, manual start db cannot be started by
failover clusters
================================================================================
You cannot start a database enabled for failover clusters with your operating
system cluster resource manager if it is also enabled for transparent data
encryption and configured for manual start.

Failover cluster and encryption-enabled databases must be configured for
autostart to be started by the cluster resource manager.

If you attempt to start an encryption-enabled database configured for manual
start with the operating system cluster resource manager, the actual startup
fails,
but the cluster resource manager may incorrectly report that the database has
been started.  


PSC00226402 : Promon output format is changed to include additional fields
================================================================================
In Release 11.0.0, new columns are inserted into promon reports to provide
information on new fields, for example domains, tenants, and partitions.  Refer
to "OpenEdge Data Management:  Database Administration" for more details.
Understanding the change in column location is particularly important if you
have scripts that parse promon output and act on the parsed results.


PSC00299582 : Utilities performing index operations on a UTF-8 database
requires -cpinternal UTF-8
================================================================================
Utilities performing index key operations within PROUTIL require you to include
"-cpinternal UTF-8" on the command line when operating on a UTF-8 database. If
PROUTIL detects that your database is a UTF-8 database and -cpinternal UTF-8 is
not specified, a message is generated and the utility exits.  

The utilities are:  LOAD, IDXACTIVATE, IDXFIX, IDXCHECK, IDXBUILD, CONV1011,
PARTITIONMANAGE SPLIT, PARTITIONMANAGE MERGE, PARTITIONMANAGE TRUNCATE, and
TPIDXBUILD.


PSC00256028 : Database log messages contain GMT timestamps
================================================================================
During regular execution, when OpenEdge processes write to the database log
file (.lg) the timestamp header of the message shows the time in local time
format. This header with local time information includes the offset of the
local time from Greenwich Mean Time (GMT).

For example: "[2013/04/25@11:00:34.123-0400]" which shows that the time is 4
hours offset from GMT.

On UNIX systems, when OpenEdge processes field exceptions (either internal
fatal errors or signals from other processes), messages may be written to the
database log (.lg) file from within the process' Signal Handler code. These
messages, when written from the Signal Handler, show a timestamp header in
Greenwich Mean Time (GMT) format.

For example: "[2013/04/25@15:01:07.000+0000]" which shows that the time is
actual GMT with 0 hours offset.

In addition, the time information written from the process' Signal Handler does
not show millisecond values.

This change in timestamp formatting allows OpenEdge to avoid calling certain
UNIX system functions which can cause a process to hang or not properly
terminate if called from within the Signal Handler code.



j. Doc

PSC00342161 : Crash recovery status options are deactivated
================================================================================
The crash recovery status options, -crStatus and -crTXDisplay, are
deactivated, even though they are documented in the following locations:
- OpenEdge Deployment:  Startup Command and Parameter Reference
- OpenEdge Data Management:  Database Administration

If specified on a command line, they are ignored and do not produce an error
or the described output.


PSC00240336 : Problems with context-sensitve help in Progress Developer Studio
for OpenEdge
================================================================================
When launching context-sensitive help in Eclipse, Help Not Found errors
sometime occur even when help is available. The error message is, "The context
help for this user interface element could not be found."
 
If you get a Help Not Found error after pressing F1, or clicking the help icon
in the UI, try one of the following:

1. Click on some other element in the UI and press F1, or click the help icon
again.

2. Click on "Search for . . ." link in the help pane. A list of relevant topics
appears.


PSC00232614 : Incorrect file location reference
================================================================================
In OpenEdge Development: Progress Dynamics Administration, there are incorrect
references to the location of the intmplframe.w file.

The file can be found at  src/dynamics/install/obj/intmplframe.w.


PSC00183192 : Search of PDF files for UNIX Platforms
================================================================================
On UNIX platforms, the search index is not automatically attached to the
documentation PDF files.  To attach the index file so that you will have search
capabilities, follow these steps:
 1. From the Adobe Acrobat Reader, click on the Search icon.  The Adobe Acrobat
Search dialog box appears.
 2. In the Adobe Acrobat Search dialog box, click on the Index button and
choose Add.
 3. From the drop down list of files, select the oeidx.pdx file and choose OK.


PSC00183191 : Non-existing examples mentioned in online help for CSSPIN
================================================================================
The CSSpin Active X Control Help file mentions the following example:
   Example Location
   Project File Form/Basic File
   SPINDEMO.VBP SPINDEMO.FRM
These example files do not exist.


PSC00183183 : Microsoft Security Update may affect remote access of Online Help
================================================================================
If you receive the following error when accessing the help remotely:
"Action cancelled Internet Explorer was unable to link the web page you
requested. The page might be temporarily unavailable", see the Microsoft
Knowledge Base article titled: "Certain Web sites and HTML Help features may
not work after you install security update 896358 or security update 890175"
located at http://support.microsoft.com/kb/892675/. The article describes the
reasons for the issue and provides workarounds.


PSC00342160 : Enhancements to DBMAN not documented
================================================================================
Several enhancements to the DBMAN utility are not documented.  DBMAN supports:

* New output options when -vst is specified.  You can format the output
generated by -vst with the -format parameter.  The -format parameter accepts
one of the following qualifiers:  csv, json, or tab.

* New filtering options when -all is specified.  You can refine the -all
selection based on status with the -status parameter.
The –status parameter accepts one of the following qualifiers:    starting,
started, stopping, and stopped.

For more information see the command line help.


PSC00342231 : Certified web browsers for BPM Portal online help
================================================================================
When viewing the BPM Portal online help, please note that Google Chrome version
45 is not yet fully supported.    When using Google Chrome 45,  the help system's
table of contents does not synchronize with the pages when using the Next and
Previous buttons to page through the help system, and the Next and Previous
buttons appear inactive.  

The certified web browsers and versions for using this help system are:
- Google Chrome 44.x and all earlier versions
- Internet Explorer 7.x, 8.x, 9.x, 10.x, 11.x
- Firefox 3.x, - 39.x
- Safari 5.x



k. GUI

PSC00244792 : Behavior changes when cropping and stretching images
================================================================================
In OpenEdge releases earlier than 11.3, cropping images (using the FROM option
of the Image phrase, or the optional parameters of the LOAD-IMAGE ( ) method)
and stretching images (using the STRETCH-TO-FIT attribute of the IMAGE widget)
did not always work as specified. In many cases, the cropping and stretching
were ignored or were performed incorrectly. These issues are fixed in OpenEdge
Release 11.3. Applications which use these features may display images
differently than in earlier releases.


PSC00238681 : VideoSoft IndexTab control does not display properly on certain
platforms
================================================================================
The VideoSoft vsIndexTab OCX does not display at runtime on certain platforms
(for example, Windows 7 64-bit).  This is a third-party issue, and occurs
whether developing in Visual Studio 2010 or with OpenEdge.


PSC00237832 : Crystal Reports XI causes crash in some environments
================================================================================
Adding an instance of the Crystal Reports XI ActiveX Report Viewer to a window
causes a crash on certain platforms (such as Windows 7 or Windows 2008 Server)
and with certain Report Viewer versions (namely V11.5 or later 11.X versions).
This is a third-party issue, and occurs whether developing in Visual Studio
2010 or with OpenEdge.


PSC00258689 : AppBuilder in Developer Studio does not support SHIFT in
accelerators
================================================================================
The ABL does not support SHIFT as second modifier for modified single key
accelerators. Developer Studio bindings defined with ALT-SHIFT-X or
CTRL-SHIFT-X (The "x" refers to any printable char.) will thus not work when
the focus is in the design window. Progress will send CTRL-X or ALT-X to
Eclipse ignoring the SHIFT and fire corresponding bindings if defined. This
means that the ABL UI Designer do not respond to CTRL-SHIFT-W  (Close all) and
CTRL-SHIFT-S (save all) in the Developer Studio default Theme.



l. Install

PSC00322063 : 32-bit client fails to load COM objects on a Win-64 machine
================================================================================
When you install 64-bit OpenEdge on a Win-64 machine that already has a 32-bit
OpenEdge (version before 11.5) installed, the existing 32-bit installation
generates the following error message when the client tries to load a COM
object:
  Error occurred  while creating CONTROL-FRAME: .
  0x800700c1
  Error code: 0x800700c1 (5898)
To resolve this issue, the following command from the 32-bit version’s proenv
prompt:
  regsvr32 %DLC%\bin\prox.dll


PSC00200154 : Sonic container startup shortcut requires quotes for directories
with spaces
================================================================================
If you install OpenEdge into a directory with a space in the name (e.g.
C:\Program Files\OpenEdge), the shortcut to start up the sonic container does
not function properly.    You can fix the problem by editing the shortcut and
enclosing the Target: and Start in: fields in double quotes.


PSC00341557 : Installing PDSOE to an external eclipse has path constraints
================================================================================
PDSOE cannot be installed into an external eclipse container with plug-ins if
the external eclipse path contains an underscore ("_") in the name. To install
successfully install to an external eclipse container, you must provide an
external eclipse path that does not contain underscores ("_").


PSC00196833 : .Net Framework not installed with unknown default language
================================================================================
Progress Developer Studio and OpenEdge Advanced UI Controls have a dependency
on the Microsoft .NET Framework v4.0.

The OpenEdge installation media includes the English version of the Microsoft
.NET Framework, and the OpenEdge installation process will automatically
install the framework if it is not already your system, provided that your
system's locale is set to English.  

If the locale on your system is set to something other than English and the
.NET Framework 4.0 for your locale is not already installed, then Progress
Developer Studio and OpenEdge Advanced UI Controls do not install properly.
OpenEdge will not install the English version of the .NET Framework when the
system locale is not English, and the Advanced UI controls will not install
without the .NET Framework installed.

To work around this problem, install the Microsoft .NET Framework v4.0 for your
locale, prior to installing OpenEdge.  

To download different languages of the .NET Framework 4.0 as well as the
Windows 64-bit version:
  - Login to http://www.progress.com/esd
  - Choose "Progress OpenEdge Deployment Components"
  - Choose "Microsoft .NET Framework" download page


PSC00196736 : Unknown Publisher message with a Netsetup Install
================================================================================
After performing a Netsetup install on Windows the user may see an Unknown
Publisher message when running any OpenEdge .EXE files from a network drive. To
resolve this issue, add the network drive share to the client's trusted zone.

To add the network drive to your trusted zone:

1. Open the Internet Options Dialog Box from an Internet Explorer session.
2. Select the Security Tab.
3. Select the Local Intranet icon from the zones shown.
4. Click the Sites command button, which opens a Local Intranet Dialog Box.
5. Click the Advanced command button, which opens a dialog box where you
add and remove websites from your intranet.
6. Add \\servername\ to the list of websites. Click Close, then OK to return to
the main Internet Options Dialog Box.

You may have to reboot the client for this to take effect.


PSC00216026 : The WebClient One-Click install fails as a Non-Admin User
================================================================================
The WebClient One-Click install (OCI) (over-the-web install) fails when run by
a non-admin on a system that does not already have the Installshield Setup
Player installed as an Add-On.    For this to work, the add-on must already be
installed/registered by an Administrator. Running the WebClient One-Click
install as Administrator just one time will get the Setup Player installed.
After this is done the WebClient One-Click install can be run as a
Non-Administrator. This issue only occurs when installing Over-the-Web. This
issue does not occur when running the WebClient installation directly via the
setup.exe file.


PSC00299643 : Personal install of WebClient fails with Internet Explorer
================================================================================
When you do a web-based install of WebClient using Internet Explorer, you get
the following error message:  

---------------------------
Feature transfer error
---------------------------
Feature:    Disk<1>
Component:    <Disk1>Disk1 Files(1)
File:        C:\Users\User.W764\AppData\Roaming\InstallShield Installation
Information\{59728F20-15EE-4C15-BB4F-780CDF156ADA}\
Error:        Access is denied.

This is a third party limitation. The only workaround is to use a cdimage
install of WebClient instead of the web-based install.


PSC00281096 : Cannot install WebClient using 64-bit Internet Explorer
================================================================================
The web-based WebClient installation fails if you use 64-bit Internet Explorer
(IE).

This is a third-party limitation. The workaround is to either use 32-bit IE or
use the cdimage install.


PSC00255748 : WebClient 11.2.x service pack fails to install on top of
WebClient 11.2.0
================================================================================
The WebClient 11.2.x service pack fails to install on top of WebClient 11.2.0
for a non-admin user. It is a problem in the WebClient 11.2.0 installation and
cannot be resolved in this service pack. To install the WebClient 11.2.x
service pack properly, you must uninstall the WebClient 11.2.0 and install the
WebClient 11.2.x service pack again.


PSC00238578 : Slow Webclient installation on the Windows 2003 Server
================================================================================
While installing WebClient on the Windows 2003 Server, the progress bar might
reach 90% and then stop for more than 20 minutes before completing the
installation. This happens for the non-administrator group users.



m. LANG

PSC00339768 : MEMPTRs are no longer supported with LENGTH function
================================================================================
In Release 11.0 the LENGTH function was updated to support all variable types
in the language. MEMPTRs were not fully supported, and always returned either
the UNKNOWN value or zero. In 11.6 MEMPTRs are changed back to their 10.2
behavior. Attempting to use the LENGTH function with a MEMPTR now results in a
compile time error and run time error.


PSC00334772 : Pathnames may be misinterpreted as single line comments (SLCs)
================================================================================
Single line comments (SLCs) in the language are have the // syntax, which is
the industry standard.

However, there are statements in the ABL that accept pathnames as arguments,
and because there is no requirement for these paths to be quoted, there is a
possibility that an unquoted and hardcoded pathname (such as a UNC path) in
code that may be interpreted as a single line comment.

These are the known statements that are affected by SLCs:

•    RUN
•    COMPILE
•    OS-APPEND/COPY/CREATE-DIR/RENAME
•    INPUT
•    OUTPUT
•    INPUT-OUTPUT
•    SYSTEM-DIALOG GET-DIR/FILE

Example:
RUN //rdlserv/foo/bar.p.

In this case, the path is interpreted as an SLC, and the RUN statement uses the
code on the next line as its arguments. This can be fixed by quoting all
pathnames.  Quoting pathnames is considered a good coding practice.


Also, double slashes are only interpreted as SLCs when located at the start of
a string; they are not interpreted as SLCs if they are in the middle or end.

Example:
RUN not/an//SLC.

This statement functions just fine.


PSC00332929 : Behavior Changes when doing reflection
================================================================================
You may encounter behavior changes due to refactoring work in reflection, as
follows:

* When using either DYNAMIC-INVOKE or the Invoke method of a
Progress.Lang.Class instance, you may see:

  - Error conditions, like not being able to find a matching method or making a
call that is ambiguous, resulting in different error
    messages than in previous releases.

  - Errors where you did not before, if the code does not pass a valid type.
For example, if you pass an INT64 to a method which takes
    an integer, this now fails even if the value of the INT64 is small enough
to fit in an INTEGER since this is not allowed with OO strong
    typing. Previously, there was no type checking for parameters of a built-in
method; now there is.

  - An error when passing parameters to a method via Invoke that is ambiguous,
when before it would erroneously call the first of n
    matching methods.

* The Life Cycle of Progress.Lang.Class instances has changed.

   In previous releases, once you got an instance of Progress.Lang.Class
(P.L.C), that instance would never be deleted.    This was
   done intentionally, but now Progress Software has changed the model and this
is no longer the case.    Now instances of
   Progress.Lang.Class are reference counted, as other OO objects are, and will
be deleted if it is no longer being used.   

   If you try to get an instance of P.L.C for a particular class, say classA,
and that instance already exists, the AVM still returns the
   existing instance.  However, if you got an instance for classA in the past,
and it has already been garbage collected, if you ask for
   it again, you will get a new instance.

   The effect of this on an ABL program is that previously you would always get
the same P.L.C instance, with the same handle Id for
   each class type.  Now you may get a different Id.

   It is still the case that you cannot explicitly delete an instance of a
P.L.C using the DELETE OBJECT statement.


PSC00183853 : INT64 ActiveX support requires oleaut32.dll version 5.1.2600.2180
or later
================================================================================
To support the INT64 data type with ActiveX controls or ActiveX Automation
objects, C:\windows\system32\oleaut32.dll must be version 5.1.2600.2180 or
later. If your application uses an earlier version of oleaut32.dll and a
parameter of INT64 data type is passed to a COM object, the results are
unpredictable and may result in an error.  This is true even if it is an input
parameter and the number in the variable is within the 32-bit range.
Therefore, if you do not have the correct version of oleaut32.dll, you should
not use the INT64 data type with COM objects.


PSC00183705 : CAN-FIND X field-list problem
================================================================================
The FIELDS clause does not guarantee the inclusion or exclusion of fields in
any given query.  The AVM may require additional fields, for example, to
accommodate a key value required by an index.

The application must not reference fields that are missing from the FIELDS
list. In most cases when this occurs a run-time error is generated indicating
that the field is unavailable.    

There are situations, for example with a function that includes the NO-ERROR
attribute by default, where it is legitimate to satisfy function requirements
using a field that is missing from the FIELDS list.  Such instances equate the
missing field to the Unknown value (?) or null (for DataServers) in order to
resolve an expression. In other words, the ABL attempts to detect missing
fields with run-time errors where possible. However, there are cases where it
is legitimate to use a missing field in an expression.    In such cases, the
missing field will resolve to the Unknown value (?) or native data source null.


PSC00132307 : Thai characters or complex scripts do not display in command
prompt or console
================================================================================
The Windows command prompt or console is not enabled for Thai characters or
complex scripts on any version of Windows (XP, Vista or Windows 7).

When trying to read Progress messages sent to the Console while using Thai or
complex scripts, you can:

* Use the English PROMSGS file.

* Use the Thai character or complex script PROMSGS file, but pipe the output of
the command to a file that can be read by any Windows editor.


PSC00340035 : No support for enums in WHERE clauses
================================================================================
You may get incorrect or unpredictable behavior if you specify an expression
that involves an enum instance in a WHERE clause. To avoid this problem, move
the part of the expression that involves an enum to an IF statement so that it
is not part of the WHERE clause.


PSC00169627 : Memory violation when connecting to a Web Service on AIX 5.3
================================================================================
In order to use WebServices on AIX 5.3, the minimum Operating System
requirement is AIX 5.3.04. You can find the version of AIX you are running
using the oslevel -r command.


PSC00151150 : Data types defined in imported schemas are not seen by the WSDL
Analyzer
================================================================================
RN# 100B-00168
==============
When a WSDL document contains an XML Schema import element, the type and
element definitions of the imported schema are not seen by the analyzer. A
message indicating that a type or element definition could not be found will
appear in the generated documentation.

To work around the problem, copy the xsd:schema elements (and their contents)
from the imported schema document and paste them as children of the wsdl:types
element of the WSDL document.  Also comment out the xsd:import element in the
xsd:schema element.

Double check namespace prefix definitions to ensure the prefixes in the copied
XML are properly defined and can be referenced by other parts of the WSDL
document.


PSC00148993 : Time zone information lost for some XML datatypes
================================================================================
The XML Schema datatypes, gYearMonth, gYear, gMonthDay, gDay, and gMonth, can
optionally include time zone information. OpenEdge does not handle time zone
information correctly for these datatypes. Any time zone input from the ABL is
lost, as is any time zone information returned from a Web service for these
datatypes. For example, "1953-10-4:00" becomes "1953-10". The one exception is
that Z, indicating Universal Time (UTC), is retained (for example, 1953-10Z
remains 1953-10Z).


PSC00333559 : XML security issues
================================================================================
There was a vulnerability where the internal DTD of an XML document might point
to a well known or common location of a sensitive file for extracting to the
caller.  For example,

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE foo [<!ENTITY xxe90539 SYSTEM "file:///c:/windows/win.ini"> ]>
<user>&xxe90539;</user>

In 11.6.0, we now prohibit this extraction unless SCHEMA-PATH allows it.   This
applies to both the DOM and SAX parsers:  <x-document>:LOAD( ),
<sax-reader>:SAX-PARSE( )  and <sax-reader>:SAX-PARSE-FIRST( )    .
This also applies to the WEB-CONTEXT:X-DOCUMENT attribute.

Using the following DOM example, where the above XML document is xxe.xml:

DEFINE VARIABLE hx AS HANDLE.
CREATE X-DOCUMENT hx.
hx:LOAD( "file", "xxe.xml", FALSE ).

This will produce the following error:

X-NODEREF or X-DOCUMENT LOAD got an error: FATAL ERROR: file 'C:\temp/xxe.xml',
line '3', column '0', message 'unable to open external entity
'file:///c:/windows/win.ini''. (9082)

To turn off this behavior, you can specify –strictEntityResolution 0 on the
command-line.


There was also an issue with XML ENTITY  expansion.  We added an
ENTITY-EXPANSION-LIMIT attribute to the DOM and SAX parsers.  The default is
50000. This default can be set by using the -entityExpansionLimit startup
parameter.

See the 11.6.0 documentation for more information.



n. Management

PSC00340004 : Report creation fails on chrome browser
================================================================================
Report creation in OEM fails on chrome browser due to pre-filled username and
password.

As a workaround for this issue, on the report creation page, enter the report
name and clear the pre-filled username and password field, and then click on
save button.


PSC00327243 : Workaround to Edit Areas for tenant partitions
================================================================================
In 11.6, it is not possible to edit areas when enabling a table for
multi-tenancy.
As a workaround for this issue, the user has to first enable multi-tenancy for
the table. The user can then go to individual delayed allocated tenant
partitions and assign the areas there.


PSC00183176 : Cannot use an older version of PROMSGS with a current release
================================================================================
Through the automated OpenEdge installation process, Progress Software
Corporation programmatically ensures that a current OpenEdge installation has
the most recent OpenEdge messages in the PROMSGS files. This approach also
ensures that you always have the most up-to-date OpenEdge messages throughout a
release's lifecycle. Do not perform any tasks related to the PROMSGS files
outside of the standard OpenEdge installation process; for example, attempting
to use the PROMSGS environment variable to point to any versions of a PROMSGS
will have unpredictable and potentially undesirable results.

For example, the PROMSGS files installed with the OpenEdge Release 10.1B
contain the most up-to-date messages to support OpenEdge Release 10.1B. After
the initial install, if you install add-on products, or OpenEdge install
service packs that are released after the 10.1B Release date, Progress again
programmatically provides any newer or more recently updated PROMSGS files. As
each OpenEdge add-on product or service pack is installed, the installation
program checks to ensure that the newest copy of the PROMSGS file is being used
by all products.


PSC00183170 : ubroker.properties file is renamed ubroker.properties-sav
================================================================================
When uninstalling the ubroker.properties file is renamed ubroker.properties-sav
and copied to the temp directory.


PSC00183166 : Uninstall fails with Proshell.dll in use
================================================================================
The uninstall will fail if any of the files it attempts to remove are busy. Use
of the Windows Explorer has been known to cause this condition of rendering the
file proshell.dll as in use, thus preventing the uninstall from succeeding,
however this may not be obvious at the time of uninstall.


PSC00183165 : Error when default language not installed
================================================================================
While adding a product after an installation has been completed, if you attempt
to change the default language to a language that has not yet been installed,
and the language is one listed with a non-alphabetic character (e.g. -, (, ))
an error will result that will not accurately reflect the problem. The error
should not prevent the installation from continuing. This problem is apparent
on Windows/NT platforms only and does not occur on UNIX.  The workaround is to
select entries from the pull-down list boxes.


PSC00183164 : Random errors with mapped drives on MSW
================================================================================
Due to Microsoft Knowledge Base Article #294816, we do not support the running
of a Progress application from a Network Share for Windows Terminal Services or
Citrix running on Windows 2000 Server or Windows 2000 Advanced Server. Terminal
Services users might see errors like "Disk or Network Error" or "C0000006: In
Page I/O Error", etc.  This happens due to a bug in the Windows operating
system where the network redirector only creates one file control block (FCB)
for all user connections so that when the first user to open the files logs
off, the other users lose their connections to files. To work around this
problem, place the program and associated data files on a localvolume, not
network share.


PSC00182944 : Working with Properties
================================================================================
If an "-Xbootclasspath:", "-Xbootclasspath/a:", or "-Xbootclasspath/p:" entry
that contains spaces in the argument value has been added to the
JavaTools.properties or AdminServerPlugins.properties file, the entry must be
manually edited to include quotes around the entire argument value (value to
the right of the colon).



o. NETUI

PSC00211451 : All dates exchanged between ABL and .NET are now the same except
12
================================================================================
All dates going from .NET to ABL and from ABL to .NET will be exactly the same
except for 12 days. These are the dates 2/29 in the leap years that are
represented by the Julian Calendar (on the Progress side) but not represented
by the Gregorian Calendar (on the .NET side).

(Since the Gregorian Calendar was not created until 10/15/1582, the .NET
DateTime implementation is not correct.)

These dates are:

2/29/100
2/29/200
2/29/300
2/29/500
2/29/600
2/29/700
2/29/900
2/29/1000
2/29/1100
2/29/1300
2/29/1400
2/29/1500


PSC00210591 : ABL extended .NET object subscribed to .NET event may be deleted
prematurely
================================================================================
An ABL extended .NET object subscribed to a .NET event may be deleted
prematurely. This bug can be observed with the following conditions:

- An ABL extended .NET object, for example AForm, is visualized
- A .NET object, for example a button, is not on AForm, but one of AForm's
methods is subscribed as the handler for this button's event.
- There is no reference to the button in the implementation of AForm.

If AForm is closed, and therefore Disposed, and all ABL references to it go
away, it will be deleted even though the button subscription is still
outstanding.  In other words, the button, in essense, still has a reference to
the class due to the subscription.  But this does not prevent the object from
being deleted, as it should.


PSC00225230 : .NET controls that call back to the AVM on other threads are not
supported
================================================================================
A .NET object might call back to the AVM to handle an event on a thread other
than the main UI thread. It might also call a .NET method on a different thread
where the method was overridden in a derived ABL class. The AVM does not
support either of these cases and raises a run-time error if they occur.


PSC00204789 : Workaround for Elegant Ribbon control and
IsolatedStorageException
================================================================================
The Foss PersistentStateManager class automatically loads and saves application
state in isolated storage, which does not work with the current OpenEdge .NET
bridge architecture.  Setting the
LoadStateAutomaticallyFromIsolatedStorageForDomain property to FALSE disables
the automatic state loading at application startup.  Add this line to your
program that uses the Elegant Ribbon control:

Elegant.Ui.PersistentStateManager:LoadStateAutomaticallyFromIsolatedStorageForD
omain = FALSE.
 
This also means that changes in the quick access toolbar will not be loaded and
saved automatically.  If you need the changes to be kept, manually use the
Load() and Save() methods of the PersistentStateManager class.



p. Next Gen AppServer

PSC00341791 : Exceptions show up in server log while performing a CLEAN
operation
================================================================================
When performing a CLEAN operation from PDSOE while your server is running, you
may see property file exceptions in your server log.  These are caused during
the uninstall part of clean when the webapp still running after the relevant
sections in the openedge.propertries have been removed.  These exceptions can
be safely ignored.


PSC00339600 : Tagextract is not supported by WebSpeed on PASOE
================================================================================
Tagextract is not supported by the WebSpeed for PASOE Compatibility handler.


PSC00342404 : Legacy binary file upload not working in WebSpeed
================================================================================
Classic WebSpeed supported uploading a binary file if it met certain
conditions:
1. Agent properties specifying an upload directory and maximum file size must
first be set.
2. The client would have to do an HTTP POST with the payload being a
multipart/form-data message containing the file.

This is not working in the WEB transport for PAS for OpenEdege.

As a workaround, you can support binary file upload through an OpenHTTP
handler. There are no restrictions to the HTTP verbs or payloads supported with
an OpenHTTP handler. However, you will be required to write the ABL code to
process the payload and save the file to disk or a database.


PSC00339508 : SAML support for WEB transport
================================================================================
The WEB transport in PAS for OpenEdge does not support SAML as an
authentication source.


PSC00334471 : HTML Mapped objects are not supported in PASOE
================================================================================
HTML Mapped objects are not supported by the PASOE WebSpeed Comapatibility
handler.


PSC00342056 : When collectMetrics is enabled, the agent crashes if there are
more than 100 client sessions running
================================================================================
The collectMetrics property is enabled (collectMetics=1) in a PAS for OpenEdge
openedge.properties file. If this property is enabled and a Multi-Session Agent
is running more than 100 client sessions, the agent will crash.

As a workaround. you can disable the property (set collectMetics=0).

Another alternative is to configure the instance to rum more agents and to
limit the number of sessions per agent to less than 100. See the
openedge.properties.README file for more information on how to configure
agents.


PSC00339599 : &DISPLAY not supported by WebSpeed on PASOE
================================================================================
&DISPLAY,  a WebSpeed Preprocessor directive for "DISPLAY {&WEBSTREAM}", is not
supported by WebSpeed on PASOE.


PSC00337743 : PAS for OpenEdge through IIS fails if "request Chunking" is
enabled
================================================================================
If using an IIS web server in front of a PAS for OpenEdge instance then the
APSV transport (ABL client to PAS for OpenEdge) fails if "request Chunking" is
enabled.

IIS is erroring on the initial HEAD request and disconnecting the client.

To disable chunking run the following script:

<instance-dir>/bin/oeprop.sh <instance-name>.ROOT.APSV.enableRequestChunking=0

Since HTTP Sessions are disabled if Chunking is disabled, to eliminate the
WARNING message in the log file, you can run the following script:

<instance-dir>/bin/oeprop.sh <instance-name>.ROOT.APSV.useHTTPSessions=0

After running the disable script, the client and PAS for OpenEdge will not
chunk requests, and will stream data as it has with all previous releases.
However, with HTTP Session disabled, load balancing using the JSESSIONID is not
available for the APSV transport.



q. OEBPM

PSC00334985 : TimeZone support in ProDataSet/TempTable visualization
================================================================================


Currently, the Kendo UI does not have support for handling time-zones in the
DateTimePicker widget.

You can view the date in correct time-zone format for a DateTimeTZ datatype, if
the date is created using ABL or the JST tool, but you can not edit the
time-zone, because the DateTimePicker does not have support for handling
time-zones.  If you create a new record using ProDataSet/TempTable
visualization, the default time-zone is stored for the date.


PSC00255318 : BP Server DataSet CLOB supports only UTF-8
================================================================================
When you populate a dataslot with a DataSet value that contains a CLOB field,
the format must be UTF-8.

If your source data is in another format, it must be converted to UTF-8 using
ABL statements.  

For example:

COPY-LOB FROM m2 TO etable1.clobFld CONVERT TARGET UTF-8.


PSC00326708 : New SSL property
================================================================================
The property, "sslProtocol="TLS" protocols="TLSv1,TLSv1.1,TLSv1.2" was added
and should be used in ejbserver and portalserver's server.xml when the
configuration is performed using HTTPS.


PSC00256482 : EJB Server does not start when hostname has _
================================================================================
The EJB Server does not start when hostname has "_". This is a limitation with
JBoss application server.


PSC00341272 : Error on the publish dialog box while publishing a process to BP
Server using Publish Wizard.
================================================================================
In OE BPM Studio, while publishing a process to BP Server using Publish Wizard,
the following error is observed intermittently on the process publish dialog
box.

"The BizPulse server could not be found".

Workaround: Cancel the publish dialog box, and publish the process again using
the Publish Wizard. This will publish the project successfully.


PSC00323401 : Improvement in refreshing Path Analysis tab.
================================================================================
The Path Analysis tab will now refresh only when a change has been made to the
process. A progress monitor bar is added to indicate status.



r. OEMobile

PSC00342308 : Form Authentication in Telerik AppBuilder
================================================================================
When doing Mobile development with Telerik Platform emulators, you may
encounter errors of the following nature in applications that use CORS (Cross
Origin Resource Sharing) with Form authentication to the Progress Data Service
(you will see them in the browser debug console):
 
"XMLHttpRequest cannot load
http://myhostname:8980/ttCust/static/home.html?_ts=144536038-4982647239-1. The
request was redirected to
'http://myhostname:8980/ttCust/static/auth/login.html', which is disallowed for
cross-origin requests that require preflight."
 
These errors should only occur when using device emulators in a browser, and
not when deployed to actual devices as mobile apps. To work around the issue at
development time, you can configure CORS to allow files from different domains
to be loaded.



s. Open Client

PSC00194437 : Multiple Dataset parameters and RPC Encoded Web Services with
Axis java clients
================================================================================
When defining multiple INPUT DATASET parameters for an OpenEdge web service
that uses RPC/Encoded SOAP messages, do not use the NAMESPACE-URI option in the
DEFINE DATASET statements.

The Apache Axis Java client does not properly handle namepsace declarations
when it sends a SOAP request for an RPC/Encoded SOAP message. As a result, an
incorrect message will be sent and the data will not be loaded into the
ProDataSet.

Axis may have similar issues with OUTPUT DATASET parameters. SOAP responses
from OpenEdge may not be properly deserialized.

If the NAMESPACE-URI option is required, then either define the OpenEdge Web
service to use Document/Literal or RPC/Literal SOAP messages. Alternatively,
avoid the issue by passing only one dataset in the Web service call.



t. PDSOE

PSC00333710 : Focus shifts from the Editor to the Class browser
================================================================================
If you are working on the Class browser, perform a search, edit and save files,
the focus shifts to the Class browser from the Editor.

Workaround:

Clear the Class browser search field.


PSC00335317 : Issue in exporting and importing of .df file on same sports2000
type database
================================================================================
Importing .df file to a sports2000 type database returns a null pointer
exception and the tables are not imported if the .df file is exported from the
same database.
Workaround: To import the tables properly, user must associate a fresh
sports2000 type database to the project, delete all its tables and import the
exported .df to this new database.


PSC00240112 : Progress Developer Studio for OpenEdge debugger behavior change
================================================================================
Starting in OpenEdge Release 11.0 and continuing in all subsequent releases,
the Progress Developer Studio for OpenEdge debugger does not stop at the first
executable line. Instead, the debugger stops at the line containing the first
breakpoint.


PSC00340457 : Unable to associate the database connection while converting
OpenEdge project to Data Object project type
================================================================================
While converting OpenEdge project to Data Object project type using the Modify
Faceted Project wizard, the Create an Express Data Object application page is
shown instead of the Database Connections page and the following error message
is shown:
Widget is disposed.

As a result, the database connection will not be associated to the project.
Users can associate the database to the project from Project Properties>
Progress OpenEdge> Database Connections> Configure database connections.


PSC00342037 : Overriding methods causes systax errors
================================================================================
Overriding methods using  'Source>Override/Implement Members' option, will
cause syntax errors if any of the parameters contain the INDEX keyword.


PSC00342017 : Mobile web app deployment is no longer supported
================================================================================
Reusing an OpenEdge 11.5 workspace that has a mobile web app deployed on a
classic OpenEdge server will not start the server in OpenEdge 11.6. In OpenEdge
11.6, mobile web app deployment is not supported, therefore the server will not
be started if the workspace has a mobile web app deployed on the server.
Progress recommends that you remove the deployed mobile web app from the
Servers view and start the server manually.


PSC00340155 : Erroneous content assist proposals in database statements
================================================================================
Content assist proposals in database statements list extra proposals and the
order of the proposals is incorrect.


PSC00342310 : Exported WAR/ZIP files of ABL WebApp project do not contain
r-codes of WebHandlers or ABL files.
================================================================================
After migrating REST or Mobile (Data Object) projects from Progress OpenEdge
11.5 to ABL WebApp type project in Progress OpenEdge 11.6, the exported WAR/ZIP
files do not contain r-codes of the WebHandlers or ABL files located at
<proj>/PASOEContent/WEB-INF/openedge.

Workaround:
Remove the entry @{ROOT}/PASOEContent from Exclusion Rules window to compile
handler classes and export WAR/ZIP files with r-codes of handler classes.
Location: Project > Properties > Progress OpenEdge > Build > Source tab >
@{ROOT} > Excluded entry > Edit


PSC00342250 : Non-English locale causes flicker in profiler viewer
================================================================================
Launching PDSOE with a Non-English locale causes the values in the tables on
the Module Details and the Call Tree tab to flicker. To resolve this issue add
the following arguments at the end of eclipse.ini file in the location -
$DLC/oeide/eclipse.

-Duser.language=en
-Duser.country=US
-Duser.variant=EN


PSC00342140 : Separate source and r-code folders built for ABL Web App project
================================================================================
Creating an ABL Web App project always add the build destination folder of
<proj>/PASOEContent/WEB-INF/openedge to itself. Even if you select the    "Use
separate source and rcode directories" option while project creation, it is not
honored for the openedge directory present under <proj>/PASOEContent/WEB-INF.

In order to get separate source and r-code directories for the openedge folder
as well, you must manually change the build destination of the openedge folder
at the following location after the project gets created:
Project properties -> Progress OpenEdge -> Build -> Source tab.


PSC00341945 : Selecting an existing handler in ABL Web App project
================================================================================
While creating a new ABL Web App project, the "Select existing" option under
WebHandlers section does not display the list of existing handlers. However,
once the project gets created, you can use the    "New ABL Service" wizard to
select a handler from  the existing handlers available in the project PROPATH.


PSC00341559 : While creating the AppServer project, AppServer content is
published to the default AppServer erroneously
================================================================================
While creating traditional AppServer project, default AppServer that was
selected in the Startup page (Windows -> Preferences -> Progress OpenEdge ->
Startup) is selected in Define AppServer content module page by default. This
causes the project AppServer content to be published to the selected server on
clicking Finish. To avoid this, user user should navigate to Define AppServer
content module page and deselect the default selected server before clicking
Finish.


PSC00338499 : Call Tree tab in Profiler Editor displays inaccurate execution
sequence
================================================================================
When you profile UI applications and view it in the Call tree tab of the
Profiler Editor, it displays inaccurate execution sequence of the modules.


PSC00338237 : Call Tree tab takes a long time to expand tree nodes
================================================================================
When you expand the tree nodes in the Call Tree tab in Profiler Editor, it may
sometimes take longer if the generated profiler output file is large.


PSC00338088 : Cumulative times displayed for a session is inaccuarate
================================================================================
When you view the call tree hierarchy of a session in the Call Tree tab of the
Profiler Editor, the data displayed in the Cumulative times column in
inaccurate in recursive cases.


PSC00335812 : PDSOE workspace does not launch after killing it.
================================================================================
PDSOE does not open after killing PDSOE and launching it with the same
workspace. This is an intermittent issue. Even if the workspace does open, the
Progress OpenEdge page in Project properties is empty and the following error
message is returned:
The currently displayed page contains invalid values.
Workaround: Launch PDSOE with a new workspace and import the projects from the
old workspace to the new workspace.


PSC00257927 : Support for starting non-modal .Net Forms in an AVM project
session
================================================================================
With release 11.5, Progress Developer Studio for OpenEdge uses the wait-for
System.Windows.Forms.Application:run () method as the top level wait-for method
in a project’s ABL session. This allows customized tools and _idestartup.p to
start non modal .Net forms in the project session.  

However, any code started on the project session with its own wait-for
System.Windows.Forms.Application:run () method (as in the previous releases)
returns an error. The wait-for System.Windows.Forms.Application:run () method
must be replaced with wait-for <form>:ShowDialog or Show() to work. The Show()
method allows the form to open in a non-modal mode so that you can use Eclipse
actions and tools like Check Syntax and Data Dictionary while the form is open.
   
   
Launch Configuration still does not allow the launch of .Net forms in a project
session.


PSC00341378 : The Rest Manager does not start with spaces in work dir
================================================================================
Rest Manager will not start when the work directory specified during the
install has spaces or special characters.  Work around this issue by specifying
a work directory without spaces or special characters in the name.


PSC00331266 : REST Services not published if PAS for OpenEdge is stopped
================================================================================
REST Services will not be published to a PAS for OpenEdge instance that is not
running. Start the instance before you publish.


PSC00342226 : To deploy migrated REST/Mobile projects to PAS for Openedge
server instance, add ABL REST/ABL Data facets
================================================================================
Users will not be able to publish the REST/Mobile projects that are migrated
from a pre 11.6 OpenEdge workspace to a 11.6 workspace to PAS for OpenEdge
instance. In order to publish them to the PAS instance user should add ABL
REST/ABL Data Object facets to the migrated projects. For more information,
refer to Migrating a Data Object Project to ABL Web App Project topic in
Progress Developer Studio for OpenEdge Online Help.


PSC00341951 : The publish location of a PAS for OpenEdge instance cannot
contain backward slashes
================================================================================
A PAS for OpenEdge instance will not start if the publish directory path
contains backward ("\") slashes. Providing the publish directory with forward
slashes ("/") in its path resolves the issue.

Also, changing the default publish location in the Start up tab causes the
values on PROPATH tab to point to incorrect location. You should manually
update the PROPATH to point to <pas instance>/<webApp>/WEB-INF/openedge.


PSC00339862 : WebHandler updates not applied when PAS for OpenEdge is stopped
================================================================================
If you publish an ABL WebApp project with the WebSpeed service to a PAS for
OpenEdge instance, the instance must be running. If the instance is stopped,
WebHandler information will not be updated in the openedge.properties file.


PSC00222815 : OpenEdge cannot compile/run GUI for .NET code generated using
previous versions
================================================================================
When you edit GUI for .NET code generated using a previous version of OpenEdge
Visual Designer, the generated code is updated to the current version of
Progress Developer Studio for OpenEdge and thus might contain new language
constructs that are not compatible with the previous versions of the compiler
and the AVM, and wizard-generated code is incompatible with previous versions.
Such incompatibilities can occur even when you do not explicitly use new
features of the current version.

To compile and execute GUI for .NET code, you must use an OpenEdge version that
matches or is later than the Visual Designer version in which the code was
generated. For example, source code opened in version 11.0 of the Visual
Designer will no longer compile in 10.2B.



u. Porting

PSC00187938 : On Windows 7 platforms, sqlexp only works with a numeric port
number
================================================================================
On Windows 7 platforms, sqlexp can only connect to the database server if the
port is numeric. For example, specify the port number as 4050 rather than using
a service name like "mydbservice".


PSC00208050 : Windows 64bit requires more memory for the Operating System
================================================================================
In Windows 64-bit, the operating system requires 2GB of free memory for
acceptable OpenEdge performance.  If your shared memory allocation (database
buffer pool) leaves less that 2GB of free memory, then performing even simple
operations, such as finding a record that is in memory, is extremely slow.



v. REST Adapter

PSC00305570 : Unable to deploy REST application on a remote AdminServer
================================================================================
You might observe timeout issues when deploying a REST application on a remote
AdminServer. This can happen when large REST application zip files take longer
to deploy than the default request timeout allows.  Work around this issue by
increasing the fathom.activemq.timeout Java system property value.  By default,
this property is set to 20000ms.  Increase the value to 40000ms by adding
"fathom.activemq.timeout=40000" to the $DLC/fathom.init.params file.



w. SQL

PSC00334862 : Unordered output for DISTINCT without ORDER BY
================================================================================
In 11.6 as part of the new optimizations done in the SQL, most of the DISTINCT
queries are now transformed to GROUP BY to get significantly better performance
in most cases.



For example,



Assume the user given query as below



select distinct  c1,c2 ,c3 from Test_tabl1;



Is now transformed internally as



Select c1,c2,c3 from Test_tabl1 Group By c1,c2,c3;





Side effects of the above transformation : -

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

1)

Without any transformation, DISTINCT is performed by Sorting the input rows.
Because of the SORT the output will be in the sorted order of distinct columns.
 Since the query is not having any ORDER BY clause, it is not required to give
the output in the sorted order. But due the distinct operation user will see
the sorted output even though there is no order by clause in the query.



With the new transformation, GROUP BY query is processed with HASH aggregation,
because of the HASH aggregation output results may not be in the order.



If user wants the output to be in the sorted order, user must specify the ORDER
BY clause in the query.



2)

Above same ordering problem manifested in a different way.



Select distinct top 10 c1,c2,c3 from test_tabl1;



for the above query without any transformation, first distinct operation is
performed on the result of distinct, TOP 10 rows are returned. Since the
DISTINCT needs sorting, the TOP 10 rows will be the first 10 rows in the order.


In a way the above query returns the output equivalent to below query



Select distinct top 10 c1,c2,c3 from test_tabl1 order by c1,c2,c3;



Whereas with the new transformation, DISTINCT is transformed to GROUP By, if
GROUP BY processed with HASH aggregation, the input to the TOP operation may
not be in the sorted ORDER hence results would vary (i.e the output may not be
the first 10 rows).



To get the consistent output it is required to have ORDER BY clause.



Note that the sql standards have no requirement that the output of SELECT
DISTINCT need to be in any particular order.


PSC00313386 : OE SQL supports OS authentication
================================================================================
OpenEdge SQL now supports password authentication of users based on a user-id
defined to the operating system's user identification system. This capability
is called OS authentication.

To use this capability, there must be an OpenEdge authentication domain defined
in the database schema.
Currently, a domain is defined in the ABL Data Administration tools.
Use the methods described in the Basic Database Tools section of the ABL
documentation to define the domain.

To use the domain when connecting to SQL, connect with the UserID set to
"username@mydomain"  where "mydomain" is the new domain you have defined in
Basic Database Tools.


PSC00192905 : ESQLC clients can specify an IP protocol version using a
parameter
================================================================================
ESQLC clients will default to using the IPv4 protocol.    The use of the IPv6
protocol can be selected by using the -ipv6 parameter on the connection URL.
The following is an example of a connection URL where the use the of IPv6
protocol is desired:

progress:T:myhost:5000:mydb:[-ipv6]

The parameter is also available to use with connection URLs for the SQLDump,
SQLoad, and SQLSChema utilities.


PSC00287562 : Error in data access for TP table when data is not moved to
respective partitions.
================================================================================
For a TP table data access, user may experience failure when one or more
partitions of that table are marked for "prepare for split target". If query
tries to access such partitions, SQL server returns failure saying "Table is in
maintenance mode". This happens for local index scan and table scan. However,
SQL server does not report error when Global index scan is used by the query.
Below is the illustration of above behavior using an example.

--Alter the table to a list partition table
ALTER TABLE TAB
PARTITION BY LIST I USING TABLE AREA "tpCustomerArea60"
(
   PARTITION PART_1 VALUES IN (1),
   PARTITION PART_2 VALUES IN (2)
)USING INDEX IDX_TAB;

ALTER TABLE TAB PREPARE FOR SPLIT PRO_INITIAL  TARGET PARTITION PART_1;

--Access data using local index scan. Error shall be thrown in this case
SELECT * FROM TAB;
 [DataDirect][OpenEdge JDBC Driver][OpenEdge] Table "HUM.TAB" cannot be
accessed for a partition (partition id=1) due to incomplete db maintenance
operation.(17736)

--Access data using global index scan. We shall get result in this case
SELECT * FROM TAB FORCE(INDEX(INDX_GLOBAL)) WHERE I>0;
      I
-----------
      1
      2

So, it is recommended  to the users to move the data to respective partition as
soon as the partition is marked as "prepare for split target" to have
unrestricted data access.


PSC00224136 : Error message for DhSQLException
================================================================================
If a DhSQLException is encountered while executing a stored procedure/trigger,
SQL then returns the error code and error message defined in the
DhSQLException. If the error code defined in DhSQLException matches any of the
SQL error codes, the error message defined in DhSQLException is ignored and the
corresponding error message defined in SQL is returned.

Customers should avoid using SQL defined error codes while defining
DhSQLException. As all SQL error codes are of negative value, it is advisable
that customers should use positive error codes while defining DhSQLException,
though it is not enforced that negative error codes are reserved.

For example:

CREATE PROCEDURE sp (IN i INT)
   IMPORT
      import java.sql.*;
   BEGIN
      if (i == 0)   throw new DhSQLException ( 666 , new String("Sample user
defined new DhSQLException   object") );
     else if(i==1) throw new DhSQLException ( -666 , new String("Sample user
defined new DhSQLException object") );
     else if(i==2) throw new DhSQLException ( -210083 , new String("Sample user
defined new DhSQLException object") );
   END;

1)          Call sp(0) : This returns the error code and error message
defined in DhSQLException .
       
           ErrorCode=666
           [DataDirect][OpenEdge JDBC Driver][OpenEdge] Sample user defined
new DhSQLException object

2)          Call sp(1): This returns the error code and error message defined
in DhSQLException.

           ErrorCode=-666
           [DataDirect][OpenEdge JDBC Driver][OpenEdge] Sample user defined
new DhSQLException object

3)          Call sp(2) :  This returns the error message defined against the
error code defined in SQL  ignoring the error message defined in
DhSQLException.

           ErrorCode=-210083
          [DataDirect][OpenEdge JDBC Driver][OpenEdge] Table/view/synonynm
%s cannot be found. (15814)


PSC00334730 : Some ANY subqueries containing COUNT function return incorrect
results.
================================================================================
Some of the ANY subqueries which contain a COUNT function might return
incorrect results.
The problem may occur in a sql query in which the form has an ANY subquery and:
•    the ANY Subquery  contains a COUNT () aggregation function
•    the ANY Subquery that has an outer reference. I.e., the ANY subquery
refers back to data in the outer (or “top-most”) query.
•    the outer reference in the ANY subquery is used in a predicate in the
subquery.

For example, the following artificial query has the form described above, and
might experience this problem:
              Select custnum, name, city, country  from pub.customer c
              where  number_visits > ANY (select
count(favorite_country)
                                 from  
popularity_survey ps  
                                 where
ps.favorite_country =  c.country and   …….)


PSC00329851 : Join condition on numeric and character column
================================================================================
SQL does not generate SQL_ERR_INVNUMSTR error when the join condition compares
integer data type with character data type.  
If the character data does not have a numeric form, the comparison for the
joining rows, is evaluated as False.
SQL no longer returns an error “Invalid number string” to the application in
this case.


PSC00188599 : SQL uses the Java compiler to compile the Java code for a CREATE
================================================================================
TRIGGER or CREATE PROCEDURE statement. If the Java compiler finds errors in
this Java source code, it outputs diagnostic information describing the errors.

A subset of the diagnostics is appended to the SQL-92 error
message which is returned to the client.

The entire set of diagnostics is stored on the server, in the SQL server's
WRKDIR (working directory).  If the owner of the stored procedure/trigger is
OWNER, and the procedure/trigger name is XX, then all the diagnostics are in
the file named OWNER.XX.LST in the SQL server's WRKDIR (working directory).

The WRKDIR is identified by either the environment variable $WRKDIR, or on NT
by the registry entry WRKDIR under the registry key for the Progress software
installation.



x. Security

PSC00326616 : .NET client does not connect to 11.6 SSL AppServer (WinXP only)
================================================================================
Windows XP does not have support for AES-* ciphers and TLSv1.2 protocol.

In order to make successful TLS/SSL communication between the .Net client
running in winxp and 11.6 AppServer, user need to downgrade the cipher and
protcol at AppServer side.

Best combination to make successful SSL/TLS communication is
        SSL Protocol: SSLv3
        SSL Cipher : RC4-MD5

Should be configured at both end (i.e. client & server).


PSC00341796 : Connecting AppServerS/DCS using -sslprotocols
================================================================================
This is a known issue with Java distribution.The local_policy.jar that is
shipped in $DLC\jre\lib\security & $DLC\jdk\jre\lib\security has restriction
not to use key encryption size more than 128 bit. That why ciphers like
AES256-SHA256, ADH-AES256-SHA256 etc never work for AppServer broker and the
client connection.


ava recommends that one downloads a new local_policy.jar (with all the
permissions) from Oracle site and use it instead of what is shipped in JDK.

http://www.oracle.com/technetwork/java/javase/downloads/jce-7-download-432124.h
tml


Thus in 11.6, we are ship this new local_policy.jar inside $DLC/java/ext
folder.

Workaround:
---------------
    - Take the backup of local_policy.jar present inside  $DLC\jre\lib\security
& $DLC\jdk\jre\lib\security folders.
    - Copy new local_policy.jar from $DLC/java/ext folder and put it inside
$DLC\jre\lib\security & $DLC\jdk\jre\lib\security.
    - Then start the broker or AppServer adapter (like AIA,WSA,REST) that you
want to use.
    - Make sure this is only required if you are using ciphers like
          
             1) AES256-SHA256
             2) DHE-RSA-AES256-SHA256
             3) ADH-AES256-SHA256
             4) AES256-GCM-SHA384
             5) DHE-RSA-AES256-GCM-SHA384
             6) ADH-AES256-GCM-SHA384


PSC00326921 : OE client instance is started without a “-ssl”
================================================================================
When an OE client instance is started without a “-ssl” startup parameter and
sends connection request to proserved DB running in ssl mode, the DB server
fails to authenticate the client connection request and message is returned to
client to send back a ssl enabled handshake request. If the client is capable
of sending an ssl request, the connection can be established.



y. Server Technology

PSC00335833 : Connecting to a WebSphereMQ via ABL Client using Connection
Factory
================================================================================
You must use WebSphereMQ's binding mode to connect to WebSphereMQ server
remotely. For this you will need to create the connection factory that is
compatible with jms session type used in the ABL client.

Following are the compatible combinations:

* ABL jmsSession can connect using WebSphereMQ's ConnectionFactory,
QueueConnectionFactory or TopicConnectionFactory
* ABL ptpSession can only connect using QueueConnectionFactory
* ABL pubsubSession can only connect using TopicConnectionFactory


PSC00222182 : 11.1 Webspeed Messenger installation behavior for Windows
================================================================================
From OpenEdge Release 11.1, Webspeed Messenger installation behavior on Windows
has changed as below:

1) WebSpeed Messenger only installation:

The msngrs.properties file is created in the $DLC/properties location. Prior to
OpenEdge Release 11.1, it used to be the ubroker.properties file. This changed
behavior on Windows is now consistent with the behavior on UNIX.

Note: You can rename the msngrs.properties file to the ubroker.properties file.

2) WebSpeed Messenger only installation performed over the existing OpenEdge
installation:

a) The msngrs.properties file is created in $DLC/properties.
b) The existing ubroker.properties file is saved as ubroker.properties-sav.

This changed behavior on Windows is also consistent with the behavior on UNIX.


PSC00167391 : OpenEdge installation may install Sonic client and container code
================================================================================
RN#: 101A-00291
===============
The OpenEdge installation program may install Sonic Software client and
container code depending on which products get installed. Because the
installation program requires it run as ROOT on Unix, the Sonic Software code
gets installed with those permission set. The OpenEdge installation program
attempts to set the correct permissions for the Sonic code, but this fails on
the HPUX operating system. This will cause the Sonic ESB Container created by
OpenEdge to fail when started unless it is started as ROOT. To resolve this,
run the command 'chmod -R o+w *' from $DLC/sonic as ROOT.



z. WebClient

PSC00310993 : WebClient install fails from IIS
================================================================================
If hosting the WebClient install image on an IIS Web Server, the install might
fail with the following error message:
An error (-5005 : 0x8007000d) has occurred while running the setup.

If this occurs, make sure to define the following MIME types in your IIS web
server and re-try:
.inx     application/octet-stream
.ini     application/octet-stream
.hdr     application/octet-stream


PSC00183963 : DLLs and EXEs That You May Have to Package with Your Application
================================================================================
Be aware that there may be Progress-supplied DLLs or EXEs that are used by your
application that are not included in the end-user WebClient install. Strictly
speaking, these DLLs and EXEs are not a part of ABL.  For example, there are
some DLLS or EXEs only used during application installation. Other DLLS may be
required if the application uses procedures in the adecomm or adeshar
directories that indirectly use DLLs.  Progress  excludes them from the install
to keep WebClient as small as possible and keep install time over the Internet
as fast as possible. If you need any of these files to install or run your
application, include them in your application installation.  Examples of these
files are listed below by category.

DLLs used by some procedures in adecomm/adeshar:
    dirsrch.dll
    fileinfo.dll
    proprint.dll

EXEs that could be used by your install:
* ini2reg.exe
* regsvr32.exe (A Microsoft tool usually, but not always, installed on a
typical PC)


PSC00183961 : Do Not Use Notepad to Edit .htm Files
================================================================================
Do not use Notepad to edit the webclient.htm file or bootstrap.htm file for
customizing your application install. When Notepad saves the file, it changes
the line terminator characters and may make the file work improperly in the
browser.


PSC00183171 : The WebClient install does not accurately calculate disk space
required
================================================================================
The WebClient install does not accurately calculate the amount of disk space
required on the client side to do the install.    Prior to the install the user
should probably have around 25 meg of available disk space. Some of this is for
temporary storage of installation files.



LIST OF ISSUES ADDRESSED

a. ADE Tools and Runtime

PSC00339337
=============================
The HTTP client crashes when an HTTP GET request contains a URL that uses
escaped characters.


PSC00339077
=============================
The http client allows a dev to specify a proxy server for a request or client,
similar to the below code

def var oClient as IHttpClient.
def var oReq as IHttpRequest.

/* all requests */
oClient = ClientBuilder:Build()
          :ViaProxy('http://proxy.example.com')
          :Client.
          
/* single request */              
oReq = RequestBuilder:Get('http://www.example.com')
        :ViaProxy('http://proxy.example.com')
        :Request.

This creates a correct request and also the correct payload (ie the Host:
header is correct and the request line too). But the client connects to the
target URI and not the proxy URI.


PSC00338278
=============================
ABL HTTP Client does not work  for HEAD operation if the content-length is more
than 0


PSC00337814
=============================
Error 4088 for ALLOW-COLUMN-SEARCHING occurs when running a SmartDataBrowser in
a TTY client.


PSC00337135
=============================
Using the new HTTP client, requests that returns a large-ish XML document
(8mb+)    can fail.

Errors are raised within the scope of the HttpClient:Execute() method.
Errors can vary. Most failures give some form of "X-NODEREF or X-DOCUMENT Load
got an error: <xml-exception>. (9082)", which must be coming from the point
where the received data gets loaded into the DOM X-document that should be
returned via HttpResponse:Entity.

This seems in part tied to how fast the machine running the request can handle
incoming data


PSC00334668
=============================
A simple program which uses OpenEdge.Net.pl to encode the string "14 Oak
Bedford ma" using the URI:Encode method fails to convert the third space in the
string.


PSC00333868
=============================
Various miscellaneous memory leaks were encountered when running
OpenEdge.Net.HTTP code.  This resulted in a significant memory leak in
applications that call into this code repeatedly.


PSC00333697
=============================
When executing an http request, in a session that was started using -cpinternal
utf-8 -cpstream utf-8, using the OpenEdge.Net.HTTP.ClientBuilder class, either
a crash or the following error is thrown:

Invalid character data found in MEMPTR for codepage UTF-8 (12012)

Both the crash and the error occur on the following line of ABL code:

Write OpenEdge.Net.HTTP.Filter.Payload.StringBodyResponseFilter at line 61  

Stack trace from protrace shows the following Call Stack:

utCpTotalBytes
rnImportBlob
rncopyblob
rnexec_entry
rninterpret
rnDisallowFuncInASSIGN
rnudfpshi
rnudfpopo
rnudfunc_run


PSC00333643
=============================
Even though AcceptJson() method specified, its not being included in the HTTP
headers request when using the HTTPClient


PSC00329286
=============================
When performing a FIND/REPLACE operation, using Search all Sections option, in
an AppBuilder generated program that has over 350 triggers defined, the
AppBuilder throws the following error:

** No b_SEW_TRG record is available. (91)

This problem did not occur in 10.2B.


PSC00328149
=============================
Dynamics Login Company lookups no longer display company records with European
startup parameters, after upgrading from 10.2B07.


PSC00327823
=============================
After upgrading ADM2 application from 10.2B08 to 11.x, some SmartWindows with
folders have scrollbars on them.


PSC00326600
=============================
When using the stand alone AppBuilder, the message 'The relative path....
resolves to a different file" is wrong and references the same file with a
relative and absolute path.


PSC00326341
=============================
Groupassign link between SmartDataViewers causes Reset/Undo button to be
enabled when adding new record.


PSC00325642
=============================
The file import of the temp-db maintenance tool no longer shows the list of
files to import. The "Fetch files" button doesn't fetch anything even if
there's files matching the criteria on the filesystem.



b. Adapter for SonicESB

PSC00324324
=============================
The OpenEdge Native ESB Adapter does not escape invalid XML characters within a
SOAP Fault.



c. Adapter for SonicMQ

PSC00327002
=============================
OE Sonic Adapter errors with (12371) if it receives a map message with element
larger than 32000 bytes.



d. AdminServer

PSC00336832
=============================
Network error: "Handshake Failure. No supported cipher suites (9996) (10770)"
occurs when connecting to remote secure wsa.


PSC00326778
=============================
Random errors:
[14/04/14 05:34:03] [2] [Security]        username:105: System generated
password has expired (9908)


PSC00310785
=============================
Admin server restart on hpux platform always fails with "port already in use"
error. Will have to wait for some period of time.


PSC00257318
=============================
Remote shutdown of AdminServer stops the local AdminService
****************************************
Remote shutdown of AdminServer stops the local AdminService when they are both
listening on the same port number.



e. AppServer

PSC00336838
=============================
Client error 9407 when stopping stateless Appserver agent.


PSC00326640
=============================
SSL connection between .NET client through AIA to AppServer fails with
connection reset error


PSC00288458
=============================
Intermittent  java.lang.NullPointerException errors when stopping and starting
an appserver under OpenEdge 11.3, 11.4 or 11.5.



f. AppServer Internet Adapter

PSC00326952
=============================
Connection between SSL enable AIA and AppServer is failing during handshake.



g. Auditing

PSC00323141
=============================
cust_audit.xml export file contains non printable ASCII characters that make
the .xml file unusable in most programs that can read .xml files. (like
Microsoft Excel)



h. DATASERVER

PSC00339675
=============================
When using a dynamic query that features a LOOKUP function against DataServer
for Oracle, the LOOKUP is not taken into account and the result-set is not
filtered.


PSC00338995
=============================
Using OpenEdge DataServer for Oracle when running a specific program that
executes the REPOSITION TO ROWID, it crashes.


PSC00338175
=============================
1436 error is still experienced even with hotfix 11.3.3.014


PSC00336284
=============================
Dumped .df from an Oracle schema holder gets corrupted and can't be loaded back
to a new wmpty database.


PSC00333257
=============================
Oracle error -907 when running ABL query with join  query


PSC00333127
=============================
Error 1436 when compilation foreign owner is different than run time foreign
owner.


PSC00332306
=============================
Queries using FOR-EACH, FIRST, FIND fail to return results.


PSC00332087
=============================
ORA-00920 thrown for some queries


PSC00330908
=============================
Browse query fails with errors 3782 and 480 when executed against DataServer
for Oracle in 11.4.0 32-bit / 64-bit


PSC00328910
=============================
Oracle data server QUERY-TUNING phrase HINT causes memory leak.


PSC00322883
=============================
Foreign owner in query's inner select is different from Oracle user name used
in SchemaHolder connection string.


PSC00322751
=============================
Executing dynamic query, referencing 2 separate tables, via DataServer for
Oracle returns the wrong results due to incorrect ORDER BY clause


PSC00320781
=============================
The following error will trigger followed by the abnormal termination of the
AppServer server process: SYSTEM ERROR: fmget: bad record or unknown value.
(13)


PSC00310780
=============================
Oracle DataServer generates wrong SQL query with missing bracket.


PSC00280680
=============================
Generate Delta.sql OpenEdge to MSS utility fails if the database changes
include adding additional extents to an array field.


PSC00261840
=============================
Updating a logical database field using Oracle Dataserver gets the following
error:
** Input value: <input> should be <yes/no>. (87)


PSC00261202
=============================
The client <-> remote dataserver communication is not encrypted

****************************************

The communication stream between the ABL client and the remote dataserver was
not covered by the SSL implementation until now, causing the data to flow in
plain text through the network.


PSC00227223
=============================
Problem when number of un-Updateable columns in a SQL SERVER table exceeds 20.



i. DB

PSC00340812
=============================
For tables in Type I storage areas that were created using OpenEdge 9.x or
earlier,
using either the -DbCheck option for run-time validation checks, or dbtool
option 5,
when inserting, updating or deleting records or validating the record blocks of
that table you receive the error:

(17853) rmBlockValid error:  sum of block parts <blksize> != blocksize <blksize
– 2> for dbkey <n>

The problem exists in OpenEdge 11.5.0 and 11.5.1.


PSC00340735
=============================
DB cannot get through crash recovery after normal shutdown with open live JTA
transactions.


PSC00339435
=============================
DB cannot get through crash recovery after normal shutdown with open live JTA
transactions.
Fails with:  (-----) dbxaUndoLogical: after dbxaGlobalTxnReserve call


PSC00338437
=============================
In some cases, proutil <db> -C dumpspecified does not export information even
if there is information in the database table that meets the dumpspecified
criteria.


PSC00335356
=============================
Command line prostrct builddb fails to recreate the .db file for databases
converted from OpenEdge 10.x to 11.x. It issues a 'Database has the wrong
version number' message. Databases created in 11.x succeed.


PSC00334196
=============================
Incorrect values reported by _IndexStat-split/_IndexStat-blockdelete


PSC00333069
=============================
FIND ... BEGINS statement starts to return only the first record that meets its
criteria and the AMBIGUOUS function returns FALSE when primary index is unique
+ multi-component.


PSC00331850
=============================
Querying VST where its Id field <= 0 unexpectedly returns all records.


PSC00331643
=============================
When restoring a backup over a current database, the confirmation question
comes before displaying information about when the backup was taken and of what
database it was take from.


PSC00331500
=============================
When a second ai archiver directory is specified with either the database
startup parameter: -aiarcdir or online with RFUTIL -C aiarchiver setdir, the AI
Archiver fails to archive AI extents to next aiarc directory when the first is
full.


PSC00331365
=============================
proutil -C dbdes does not display the list of enabled features if a required
license is missing


PSC00329294
=============================
Mixing wrong version executables will cause database failed to print out the
correct database version number.


PSC00328928
=============================
Under certain cases involving multiple database updates, you may end up with
logical index corruption if you undo certain sub-transactions.

The problem may occur on undo of certain sub-transactions when indexed fields
of tables from multiple databases are updated in different nested
sub-transactions.

This issue can be avoided by running with the -nosavepoints option.


PSC00328268
=============================
A small BI cluster size may not be able to support as many concurrent
transactions as may be expected by the -n value.


PSC00327777
=============================
Grammar error Stand by in the proutil output


PSC00326196
=============================
The statement cache data for a user may be incorrect (all unknown values) or
possible garbage.


PSC00322250
=============================
In 11.4.0 through 11.5.0, the order that active locks are returned when
querying _Lock was changed.  This increased the likelihood of UNKNOWN appearing
at the top of the list.  Starting in 11.4.0.009, 11.5.1, and later, it now
returns only the active lock entries.


PSC00321219
=============================
promon "Summary: Record Reads" and the VST "_ActSummary._Summary-RecReads" are
inconsistent.  Promon is incorrect.
Each are to report the number of individual records read from the database
(buffer pool).


PSC00318660
=============================
The Scatter Factor is incorrect in table analysis after loading into a
multi-tenant table or a partitioned table.  


PSC00307637
=============================
After adding new indexes online with the "Add Objects Online" option queries
that use the new index fail with error 16488:
Index <indexname> of table <tablename> is not active. (16488)

VST query (_active) reports the new index as Active (by design).
IDXBUILD by inactive activation or by Table inactive indexes does not find the
newly added indexes as inactive indexes to build.

http://knowledgebase.progress.com/articles/Article/000051550


PSC00299348
=============================
When binary dump encounters the user's ulimit on solaris, hp, or linux, it
fails with:
File size limit exceeded. (3697)


PSC00296025
=============================
IDXANALYS reports take longer to run in OpenEdge 11 than 10


PSC00287388
=============================
DBRPR tool doesn't report rebuilding Free/RM/IDXDC chains when fixing cluster
chains at the same time.


PSC00286508
=============================
Trying to convert an 11.3 1252 audit enabled database to UTF-8 fails with the
errors:



   Read permission denied by DB (14323)

   SYSTEM ERROR: error (-1218) fetching template record (3970)

   SYSTEM ERROR: scanning template for table _aud-file-policy (3968)

   ** Conversion failed, database is unusable. (3942)


PSC00285575
=============================
When the Alternate Buffer Pool is assigned at the database objects level as
opposed to the Storage Area level,

PROMON correctly shows the current state: "LRU2 replacement policy disabled"
when OS reads GT -B2.

The lru2 mechanism is not enabled even though it should be.


PSC00259992
=============================
rfutil with endtime option processes incorrect ai extent
****************************************
Rfutil roll forward with the endtime option may attempt to process AI notes
from the AI extent that follows the one that reached the endtime, causing
errors (4554), or (1028) and (8999).


PSC00259130
=============================
IDXBUILD, IDXCHECK, and IDXFIX with option SOME will fail with "Index not
found. (2755)" when Tablename is 32 chars.


PSC00246082
=============================
IDXFIX option "6.  Delete one record and it's index entries."  Should error
1895 when the RECID entered is for a Template record.
Instead it reports "Index fix completed successfully. (4332)"


PSC00232336
=============================
Binary dump fails on a table with no fields
****************************************
Binary dump fails on a table with no fields
Internal error in upLobSearchTable, errno 4. (11158)
SYSTEM ERROR: Binary Dump/Load failed in upBlobSearchTable. (9194)


PSC00230189
=============================
OE 11 logs additional 7129 connection messages for client connection
authentication context.



j. Diagnostics

PSC00320795
=============================
Using the COMPILE ... SAVE ... DEBUG-LIST statement to compile an inherited
class inserts a reference to the inherited class's debug listing in the r-code
for the base class. This reference causes the ABL Debugger to display the wrong
code when debugging the base class.


PSC00315039
=============================
During debugging error 4354 sometimes occurs: Invalid syntax for the ASSIGN
command. (4354)


PSC00306498
=============================
Properties using a collection name are not evaluated in the PDSOE debugger
expressions view unless the debugger option "Enable property evaluation" is
checked ON.  Properties should be evaluated in the Expressions view regardless
of this setting.


PSC00286506
=============================
QryInfo loggigng triggers error "** FIND FIRST/LAST failed for table
_IndexStat. (565)" if logging level is set to 3 or higher, when the info is
logged for a query on a temp-table.


PSC00225575
=============================
logentrytypes QryInfo causes session crash on Linux

****************************************

The QryInfo logentrytypes option causes a session crash on Linux.



k. GUI

PSC00333809
=============================
Setting the FGCOLOR attribute has no effect on the appearance of the text of
radio buttons in a radio set widget when the Windows Themes interface is used.
The text color does change if the Windows Classic interface is used or the
prowin32.exe.manifest file is removed.


PSC00331676
=============================
When there are two OpenEdge client sessions and changes are made to the records
in one session, refreshing a browse widget in the other session using the
REFRESH() method does not show the updated records. The updated records are
displayed if they are scrolled out of the browse's viewport and then scrolled
back into the viewport.


PSC00329283
=============================
An AppBuilder session may crash when opening a program which contains a browse
which has the ROW-HEIGHT option in the DEFINE BROWSE statement.


PSC00327988
=============================
ENTRY and LEAVE events of field-level widgets in an ABL window or an ABL window
embedded in a .NET form may not fire when another ABL window which is disabled
is displayed.


PSC00327538
=============================
The FOCUS handle returns the unknown value when an input-blocking statement
(e.g., WAIT-FOR or UPDATE) has ended and no other input-blocking statement is
executing.


PSC00323696
=============================
Client may crash after setting FORMAT for a browse column multiple times to
formats of different sizes.


PSC00319547
=============================
In the GUI client, for certain datatypes, if the cursor is placed at the end of
a fill-in (after the last character), and a trigger fires that redisplays the
value in the field, the cursor will move before the last character. This
affects the following datatypes and formats:

- INTEGERs and DECIMALs with formats using "z" or "9" instead of ">" (no
sliding decimals)

- DATE, DATETIME and DATETIME-TZ

- LOGICAL


PSC00318677
=============================
Applying an 11.3.2.x hotfix introduces a regression issue where triggers may
stop firing on LEAVE of a fill-in in an ABL window which is embedded in a .NET
form.


PSC00318409
=============================
NUM-SELECTED-ROWS returns Incorrect Value when the browse is multi-select and
at least one field is editable.
If the same row is selected multiple times holding shift key + left mouse
click, NUM-SELECTED-ROWS is increasing, every time the row is clicked.
If you change to the control key and click again and again on the very same row
that is already selected. The value of NUM-SELECTED-ROWS decrements each time
regardless of whether or not the row is selected which will be selected /
deselected alternately.


PSC00306155
=============================
Application crashes in a specific browse window when the VALUE-CHANGED event is
executed.


PSC00241399
=============================
Events cannot be trapped in a combo box on a browse
****************************************
It's not possible to trap a keyboard event in a combo box on a browse column.
This works when the combo isn't on the browse.


PSC00237266
=============================
NO-LABELS has no effect if browse includes VIEW-AS phrase
****************************************
If a browse widget has a field with a VIEW-AS phrase and the NO-LABELS option
is used, the latter is ignored and the browse is displayed with column labels.



l. Install

PSC00337357
=============================
10.2B 32-bit Adminservice fails to start after installing 11.5 64-bit on
WINDOWS


PSC00336442
=============================
Error when specify Script and Doc folder during Webspeed installation as
Webspeed/Script


PSC00335715
=============================
After installing both 32-bit and 64-bit  OpenEdge 11.5 on Windows, under the
registry key

HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\PSC\PROGRESS\11.5\JAVA

There's a JRE entry that points to the JRE shipped with the 64-bit OpenEdge
installation.


PSC00317171
=============================
Installing 64-bit OpenEdge on Windows incorrectly copies 64-bit versions of the
evntlog.dll and pstimer.ocx to %windir%\SysWOW64. That directory should only
hold 32-bit libraries, 64-bit libraries should go to %windir%\System32 instead.


PSC00252989
=============================
Application is not launched after WebClient installation
****************************************
WebClient application is not launched after WebClient installation


PSC00245576
=============================
OpenEdge Service Pack installation disables enabled Debugger
****************************************
Installing a Service Pack in Openedge will disable Debugger if it had been
enabled.



m. LANG

PSC00341334
=============================
If TODAY is used as the INITIAL of a NO-UNDO variable, then it is not adjusted
for SESSION:TIMEZONE.  This also applies to NO-UNDO variables with INITIAL NOW.


PSC00339873
=============================
The Web Service client declares an invalid namespace in the SOAP Header. For
example:
ns0:ns1="http://MyNamespace.xsd"


PSC00339768
=============================
In Open Edge 11.x releases, no compile error is raised when LENGTH used with
MEMPTR input. In previous versions error (223) was raised. At run time the
value returned is always zero regardless of the length of the MEMPTR.


PSC00339424
=============================
The WSDL Analyzer generates a Temp-Table and ProDataset definition with an
empty namespace instead of the correct value.


PSC00339302
=============================
A query with a complex CONTAINS expression can hang when a client is connected
client/server to a database. A complex CONTAINS expression would contain more
than 5 words with '&' and '|' operators.


PSC00339281
=============================
Reading JSON containing a dataset with nested/foreign-key-hidden data-relations
where one of the arrays for a child record is empty generates error:

"Error parsing JSON: expected string, but found brace. (15358).


PSC00338855
=============================
The OpenEdge Web Service client does not process a SOAP fault if the HTTP
status code is not 500.


PSC00337748
=============================
The OpenEdge 32-bit session crashes when serializing a large Temp-Table to a
LONGCHAR variable via the WRITE-XML() method.


PSC00337365
=============================
The AVM might crash under the following conditions

- you have a query on a non-OpenEdge table (i.e. DataServer)

- you insert a row into the table while the query is still open

- you execute REPOSITION TO ROWID on the query

The crash occurs while executing REPOSITION TO ROWID.


PSC00337149
=============================
FOR EACH with CAN-DO in WHERE clause not functioning correctly when connected
to the database with Runtime Permission checking active.


PSC00336649
=============================
An AppError that was thrown in an ABL class can cause error 984 (Error
attempting to push run time parameters onto the stack).  This is caused when a
method being used in a method argument throws a .net error.


PSC00336638
=============================
There is no command-line facility to set the XML entity expansion limit from
the default of 50000, for customers who determined the 50000 limit was too
high. This is especially problematic for handling the WEB-CONTEXT:X-DOCUMENT,
as there is no way to set the entity expansion limit before the XML document is
parsed.


PSC00336437
=============================
A query with an OUTER-JOIN on a table-partitioned or multi-tenant table may
cause unexpected behaviour if the table-partition/multi-tenant table has no row
in the result list. The unexpected behaviour could either be a crash, or the
following error message:

SYSTEM ERROR: Cannot insert a key of size <XXX> into a sort buffer of size
8192. (4219)


PSC00335770
=============================
The following error is returned when trying to connect to multiple Web Services
via HTTPS from the same OpenEdge client session:

Error loading WSDL document  <WSDL document> : Internal error: Receive status
(11748)


PSC00335430
=============================
If you specify an instance method to the SET-CALLBACK() method on a dataset,
buffer or query object, the instance may get garbage collected sooner than
expected (after the dataset, buffer or query is deleted). If the method is
static, the static instance may get improperly reinitialized under the same
scenario.


PSC00335216
=============================
In 11.5.1, the first call to the NORMALIZE function in a session will give an
error "Cannot load ICU version    for NORMALIZE (17625)". Note the code still
runs as expected despite the error.


PSC00334314
=============================
Value of a shared variable changes unexpectedly

The value of a shared variable may be changed when the SET <return-value>
option of a .NET WAIT-FOR statement is used. In this case, the value which is
supposed to be stored in the variable specified by the SET option is instead
stored in an unrelated shared variable.


PSC00334026
=============================
When an unexplained delay or timeout occurs in a WebService while making a
method call into the Web Service, the ABL client can sometimes timeout and
crash.


PSC00333669
=============================
Appserver agent cannot recover a shared memory database connection without
error 8025.


PSC00333559
=============================
X-DOCUMENT and SAX-READER  are susceptible to XML External Entity Processing
vulnerability - can expose contents of targeted files.


PSC00333499
=============================
The X-DOCUMENT and SAX-READER handles are vulnerable to an XML Entity Expansion
Attack.


PSC00332809
=============================
CLOB is truncated at 512K while load via client/server connection.
If loading via shared memory connection, it loads fine.


PSC00331692
=============================
Adding LONGCHAR to ParameterList object isn't passing in the value correctly,
causing subsequent Class:Invoke() to fail.
Either Invoke() crashes the session or the LONGCHAR value in the invoked method
is left blank where it should contain text.


PSC00331621
=============================
In character mode, the SCREEN-VALUE of a LIST-ITEM-PAIRS combo-box with no
selected item is the value of the first item in the list. This is a change from
previous releases, in which the SCREEN-VALUE would be the unknown value in this
case.


PSC00331601
=============================
Getting error 455 when a browse on a query for a table that has a database FIND
trigger that returns error.

Unable to read record buffer because it is empty. (455)

When browsers are not involved, the program gets an error condition raised (as
if the RETURN ERROR was still in effect).


PSC00331506
=============================
The OpenEdge AVM sets the window width to 80 columns when running in batch
mode. There is no way to override this setting in batch mode. This can lead to
errors when compiling ABL code which expects a wider window (for example, a
132-column terminal).


PSC00331300
=============================
Progress.LangClass:Invoke() method fails silently when calling the AddMessage
method of an inherited Progress.Lang.AppError class.


PSC00331147
=============================
Attempting to write a JSON string stored in a LONGCHAR variable to the database
crashes the client when the JSON string stored n the LONGCHAR variable exceeded
the maximum record size of the table.


PSC00330947
=============================
The OpenEdge client crashes due to an invalid SOAP Response that does not
correspond to the WSDL document.


PSC00330226
=============================
If the ABL session's decimal seperator isn't a period ("."),
JsonObject:GetDecimal() and JsonArray:GetDecimal() ignore the decimal point in
the JSON and return wrong values.

(Note that JSON standard enforces the period as decimal point.)


PSC00329866
=============================
If a .NET object gets a property from an ABL hybrid, and the ABL hybrid has a
get accessor implementation for the property, the AVM leaks a small amount of
memory. Calling this property repeatedly will eventually exceed the -s
threshold of the AVM, resulting in error messages such as the following:
SYSTEM ERROR: -s exceeded. Raising STOP condition and attempting to write stack
trace to file 'procore'. Consider increasing -s startup parameter. (5635)


PSC00329820
=============================
Failure in large object operation error when reading no-lock and writing CLOB
field of a table at about the same time


PSC00329416
=============================
Code which does a RUN ON SomeHandle ASYNC statement where SomeHandle =
SESSION:HANDLE the code will leak memory.


PSC00329313
=============================
Using the READ-JSON function when dealing with escaped JSON strings can cause a
stack overflow error, and then a crash.


PSC00328731
=============================
-undothrow 2 does not throw errors from blocks with no explicit error directive
that are inside a user interface trigger.


PSC00328424
=============================
Exceptionally long expressions that worked in 10.2B will no longer compile in
OpenEdge 11.


PSC00328232
=============================
Row in the browse is result of the OUTER-JOIN of two tables order and ordeline.
When the orderline for the corresponding order is deleted and :refresh() is
executed, the row disappears from the browse, even though the order columns are
still populated with data.


PSC00328106
=============================
Client may raise error "Array subscript 0 is out of range" when executing the
BUFFER-COPY statement or function and the table has an assign trigger for one
or more fields.


PSC00327891
=============================
ABL code subscribes to several .NET events. The code compiles successfully, but
at runtime, when the events fire, exceptions are raised or the program crashes.

The events were .NET events whose signatures do not conform to the .NET
convention for event signatures (void return and 2 parameters, where the 1st
parameter is of type System.Object and the 2nd is derived from
System.EventArgs). ABL does not support .NET events that do not conform to the
signature convention, though some may work. The ABL compiler should issue an
error or warning when code tries to subscribe to such events.


PSC00327816
=============================
The client may crash trying to compile a EXPORT statement where a field has a
compile error in the VIEW-AS phrase.


We were trying to display information for an error message that couldn't
actually be captured in this particular case. We updated this to make sure that
we were only trying to display information that we had stored as part of the
error handling process.


PSC00327786
=============================
When XML-NODE-NAME or SERIALIZE-NAME attribute is set for a database buffer
field like this: BUFFER table:BUFFER-FIELD("field"):XML-NODE-NAME = "value", it
crashes with ACCESS_VIOLATION.


PSC00327552
=============================
When using MERGE-CHANGES with copy-all-mode set to TRUE, the changes dataset
ends up with records from a table in the dataset that has no BEFORE-TABLEs.


PSC00326425
=============================
The following errors are returned during READ-JSON on a Temp-Table that has a
BLOB field with escaped characters in the base64 encoded JSON string :

Base64 decode of raw data failed. (13074)
Unable to convert JSON to native data type for field ''<field> in temp-table
''<table>. (15363)


PSC00326413
=============================
Unlike SET-ATTRIBUTE,  REMOVE-ATTRIBUTE silently fails when attribute contains
extended characters.


PSC00326198
=============================
When running a 32-bit client that has statement cache enabled for the full
stack option, and it sends a long ABL stacktrace to a 64-bit server process,
the data presented can be incorrect. It can either display the line numbers
instead of the procedure names in the  _Connect-CacheInfo field, or display
unknown values or display the wrong line number, depending on how big the ABL
stacktrace is.


PSC00326175
=============================
In some circumstances with a dynamic buffer, if an error message is displayed
that displays the name of the buffer, the buffer name is missing from the
message e.g:

"** Unable to update  Field. (142)"

The table name should appear between "update" and "Field".


PSC00325845
=============================
Having a BUFFER parameter on a table in a protected temp-table or dataset in a
sub-class as the only reference in the derived class causes either a session
crash or error 566.


PSC00325661
=============================
If a GUI client (prowin32.exe/prowin.exe) process is started from (thus
parented to) a Windows Service, on Windows 2012 server this causes a
system-wide delay in applying Windows Group Policies when a user logs in.
As the GUI client is a GUI process, it interacts with the UI through Windows
messages. Newer versions of Windows prevent services from interacting with the
UI, with Session 0 Isolation. The OpenEdge GUI clients should not be used for
running Windows Services, even when using -b. Instead, use the OpenEdge
character client (_progres.exe).


PSC00325355
=============================
A loop reading a file via INPUT .. BINARY / SEEK / IMPORT <raw>/<memptr> starts
skipping over data when reading from a file that's more than 2gb in size. The
skipping starts the moment the 2gb mark is crossed.


PSC00325343
=============================
LOAD NEW crashes the client if it references a non existing key


PSC00324987
=============================
When UNKNOWN MEMPTR variables are passed as INPUT or OUTPUT PARAMETERs.  The NE
operator returns incorrect result when the passed parameter is compared to the
unknown value '?' in the called procedure.  It returns TRUE when it is expected
to return FALSE.


PSC00324984
=============================
READ-JSON fails when there is corrupted data in the target code page.  It might
cause an "error -26 in longchar to file" error to be returned.


PSC00324239
=============================
Trying to set a non-static property using the overload of
Progress.Lang.Class:SetPropertyValue() meant for statics will cause the AVM to
crash.    

For example, this will crash if the TestGetClass:CharacterProperty property is
not static.

DEFINE VARIABLE oPLCTestGetClass  AS Progress.Lang.Class  NO-UNDO.

oPLCTestGetClass  = GET-CLASS(TestGetClass).
oPLCTestGetClass:SetPropertyValue("CharacterProperty",    "NewCharacterValue").


PSC00324066
=============================
Defining a dataset with a partial data-relation causes the session to crash.


PSC00323921
=============================
_proinventory hangs on "Validating Unified Broker" in a netsetup environment


PSC00323745
=============================
Insufficient privileges error is thrown when calling SET-DB-CLIENT or
SET-CLIENT with a client-principal created by an external security system (such
as the REST Adapter), when a multi-tenant database in involved.


PSC00323460
=============================
Changing the FORMAT of a character variable with a FORMAT containing characters
other than "X" can truncate values containing non-ASCII characters when using
-cpinternal UTF-8.
E.g.

DEF VAR cvar AS CHAR FORMAT "XXXX" NO-UNDO.
cvar = "T" + CHR(128,"UTF-8","1252") + "st". /* Display Euro */
DISPLAY cvar.
cvar:FORMAT = "NNNN".

This displays only "T".



PSC00323293
=============================
When using GET-BYTES to read a source MEMPTR, using a starting position larger
than the source MEMPTR and passing zero as the numbytes parameter, instead of
returning the unknown value (as documented) the result is that the entire
source MEMPTR is assigned to the target MEMPTR.


PSC00323227
=============================
You may see some attributes in the RCODE-INFO system handle returning the wrong
info if you specified the XREF-XML option when the r-code was generated.


PSC00323011
=============================
Assignment of a UTF-8 LONGCHAR to a System.Object results in a different
string.  The AVM was not doing the correct codepage conversion when passing a
LONGCHAR value to .NET.


PSC00322775
=============================
Client session crashes with error 2733 when doing a simple FOR EACH with an OR
statement.

When the result of an OR in a query returns greater than 129,000 rows then the
query will fail with the 2733 error


PSC00322482
=============================
Behavior is inconsistent if a parent class constructor throws an error. The
child class can catch the error if the parent's constructor has a FINALLY
block, whereas if there is no FINALLY block, the error cannot be caught.  If it
can be caught, the child class    may allow the class to become fully
instantiated (by not rethrowing the error) even though the parent's constructor
threw an error. This is not the correct behavior.


PSC00322246
=============================
In 11.4 the prowin32.exe client crashes when calling a secure webservice
without importing the required certificates.


PSC00321705
=============================
Client crashes with SYSTEM ERROR: I/O error 0 in readfrmb, ret 0, file
18(srtckPVid), addr 99822668. (290) after upgrading to 11.4+


PSC00319271
=============================
The OUTPUT TO "CLIPBOARD" statement has a limit of 63K on the amount of text
which can be written to the Windows clipboard. Error 769 "Clipboard Buffer area
is full, output ignored" is generated if the limit is exceeded.


PSC00318371
=============================
The database server may hang or crash under the following circumstances:
- a client sends a query on a multi-component index,
- the combined size of the search criteria for the index exceeds the maximum
allowable size of an index entry
This would typically happen on a multi-component index where one of the
components is a CHARACTER field, and the query specifies a very long value for
this field.


PSC00317831
=============================
Client may end up in an infinite loop trying to send a message to a remote
database  that hasn't been connected yet if a signal is received during the
database connection.


PSC00316449
=============================
Error 16388 when trying to use a Client-Principal object in OE 11.X that is
authenticated against a user-defined authentication system in a database
running on OpenEdge 10.X.


PSC00316156
=============================
Error: ICU source string error: 3, when temp tables do not use correct word
break tables, causing the CONTAINS statement to function incorrectly.


PSC00315657
=============================
If you have a custom codepage defined in convmap.cp, non-ASCII characters might
not be correctly handled when using XML. This can occur for reading or writing
documents, with either DOM or SAX APIs.


PSC00313892
=============================
When attempting to compile an include file that defines a CASE statement and
references preprocessors and compile-time arguments causes a crash in
prow32.dll.


PSC00310252
=============================
Windows 8 and Windows 2012 no longer support RAW printing.  Consequently
neither the -Wa -wpp nor embedding printer control codes using PUT CONTROL
work.


PSC00309881
=============================
The WSDL Analyzer (bprowsdldoc) fails with an error message similar to the
following when it tries to generate a file with a name that is longer than the
limit allowed by Windows:

Error writing portType file '<long name>.html'
- Error creating No such file or directory file '???????????4W??????'


PSC00301606
=============================
The 64-bit OpenEdge 11.3.2 version might  raise error 9082 "attempt is made to
create or change an object in a way which is incorrect with respect to
namespaces" when using the XML SAVE method.


PSC00300893
=============================
The 64-Bit ABL COPY-LOB statement successfully copies a file (FILE
->MEMPTR->FILE) when the source file size is 4499999744 bytes but fails when
the source file size 4500000768 bytes which is just 1KB larger.  Due to 32 bit
restrictions, some operating system calls were failing for files over this
size.


PSC00269199
=============================
The COMPILE statement with XREF option does not list database table REFERENCE
for DATA-SOURCE definitions.


PSC00248677
=============================
Dynamics treeview doesn't show folder page details
****************************************
In some circumstances a dependent window attached to a Dynamics treeview that
contains a folder, doesn't show data on page one unless the page is refreshed
by clicking on another page or Treeview node.


PSC00140768
=============================
Operation 0 (1987) fills WebSpeed log
****************************************
When error 1987 is encountered in WebSpeed with operation 0, the client code
falls into an infinite loop and writes the message to the WebSpeed log file
until the disc is full.



n. Management

PSC00340903
=============================
ActiveMQ on some platforms such as AIX do not properly expose their remote
adminserver socket server via ActiveMQ to other machines depending on how the
DNS is setup. This is because the socket server for ActiveMQ is bound to the
hostname and not the wildcard address 0.0.0.0.


PSC00339268
=============================
Access to fathomRealm.policy does not follow fathomEtcDir variable


PSC00338068
=============================
If the number of work items queued for processing exceeds the work queue size,
that item will be dropped and any work that was to be performed by the resource
will not be performed.    When a pollable resource such as AppServer, database or
similar is dropped because the queue is full, its status will stay at "Not
Checked" and will never be polled again until OpenEdge Management is restarted.

This fix addresses the incorrect resource state and will allow the resource to
be polled again.  The default queue size of 250 may be too small if the
OpenEdge Management installation has more than about 200 resources.   Even with
this fix it will still be necessary to increase the fathomWorkQueueSize java
system property high enough to avoid dropped work items.  


PSC00338058
=============================
Scheduled fathom jobs run with admin server startup even though it is scheduled
to run daily at a set time.


PSC00333104
=============================
If you have more than one Web Service application deployed, then it is not
possible to change the active Web Service from the WSA view within OpenEdge
Explorer.


PSC00330955
=============================
OEM (Linux) with a remote container (Windows) corrupts the ubroker.properties
file if more than one environment variables exists for an appserver or webspeed
configuration. Attempts to add more than one environment variable to a WebSpeed
or Appserver configuration will result in the brokers configuration displaying
as a blank page in the browser. The ubroker.properties will be corrupted with
an extra <CR> character in the environment section.


PSC00330763
=============================
HTTP Error 500 when adding a rule to an existing monitoring Plan


PSC00328913
=============================
Scrolling within tenant object area selection loses focus


PSC00327809
=============================
Failure on deleting remote adminserver;some resources are partially deleted and
cannot access data administration page.


PSC00327715
=============================
Multiple ParseExceptions of sampleLock for CPU resources in a Trace files


PSC00327244
=============================
11.3.3 SP install caused OEM jobs to fail  with no information written to the
job logs.


PSC00327133
=============================
File monitor rules such as file age, file exists, file growth rate, file
modified or file size for File resources would not send email for every failure
when Throw additional alerts is checked.


PSC00326904
=============================
OpenEdge Multitenancy fails to assign at Tenant object to the specified area


PSC00326800
=============================
Max connections increased to 4000


PSC00326665
=============================
Overflow error (7485)  Db_TableStat.TableStat_Create


PSC00326662
=============================
Overflow error (7485) Db_TableStat.TableStat_Read


PSC00326272
=============================
Under some circumstances the OEM Database Administration page does not always
return an error when it can't access the database under database connections
and it only says "Cannot connect".


PSC00324031
=============================
Defined log file monitor to monitor online backup finish message.
and have always throw new alert checked, chose default mail action.
As long as the previous alert not cleared up under alerts tab, it will not send
new alert out.


PSC00323612
=============================
OEM Failed to support TLS1 on AIX


PSC00323541
=============================
Waiting for active work threads to complete. (11218)
Plugins and task scheduler are shutdown too early and prevent the completion of
the active work threads for the Fathom Graph Cache DB.


PSC00323538
=============================
Race condition with OEMGT at startup


PSC00322479
=============================
Default Mail action contains variables with no values.


PSC00320724
=============================
Fathom trend database is unavailable when started using a service name instead
of a port number


PSC00320486
=============================
Prowin32 crashes when connected via TCP to database running on the same machine
when the AdminServer polls the database.


PSC00320435
=============================
Unable to use I18N characters for table partitioning policy details in OE
Management/Explorer


PSC00317189
=============================
Overflow error (7485) ;INSERT INTO PUB.Db_IndexStat failed


PSC00302261
=============================
System plugin (osmetrics) fails to load when ProspectCRM service is running.


PSC00280635
=============================
The DataAdminService should have an option to tell that the passwords that are
passed are encoded.


PSC00252828
=============================
OEM "Resources" customized view is not saved
****************************************
Every time one returns to the resources screen, the whole resource set is
displayed with the default settings. The previously set criteria are not saved.

There is no option to save or set the default criteria when opening the
resource screen.  The following settings are not saved:

- Position of the columns
- Column width
- Treeview expansion, enabling to show or hide some resources.


PSC00247345
=============================
OEE: DBAGENT fails to start
****************************************
DBAGENT fails to start when the 'configuration' is not 'defaultconfiguration'


PSC00221930
=============================
Cannot disable "LogFileNameChanged" alert in OE Management
****************************************
When ubroker logfile threshold limit is set, "LogFileNameChanged" can generate
many alerts. This is a "hard coded" alert at this time. There is no way to
disable this alert.



o. NETUI

PSC00338430
=============================
Under certain circumstances, instantiating multiple ABL Dialog-boxes from
within a .NET form results in error "**Unable to realize DIALOG-BOX ... (4025)"


PSC00333882
=============================
The session crashes when compiling code that has a back-tic within a reference
to a .NET class (instead of failing to compile). For example:

    oResult = GetConfirmation(System.Windows.Forms.`BoxButtons:OK).


PSC00333842
=============================
The proBindingSource object offEnd event doesn't work with the Telerik
RadGridView.


PSC00331072
=============================
Passing 'System.Collections.Generic.ICollection<System.String>' to a method
causes a crash in 11.4 and 11.5.0.  The same code worked up till 11.3.3.


PSC00328621
=============================
The AVM can crash after getting a LEAVE on a browse row that brings up a dialog
box which is then dismissed by hitting the Escape key.


PSC00328459
=============================
When satisfying the WAIT-FOR of a Dialog-Box, a LEAVE trigger on a field in an
underlying window can fire unexpectedly if the Dialog-Box is started by the
APPLY of an event to a non-field object.
For example:
- c-win1.w has field fld1 with a LEAVE trigger
- c-win1.w has a menubar, with menu-item menu1 to launch dialog-f.w
- fld1 in c-win1.w has a trigger on the F3 key, which executes APPLY CHOOSE to
menu1
- dialog-f.w has a WAIT-FOR GO,UI of the dialog-frame
- double-clicking on a browse row in dialog-f.w will APPLY U1 to the
dialog-frame
- Pressing F3 with focus in fld1 will APPLY CHOOSE to menu1, which will start
the dialog.w
- double-clicking a browse row in dialog-f.w will satisfy the WAIT-FOR, and the
LEAVE trigger of f1 will fire unexpectedly.


PSC00328332
=============================
Error "System.NullReferenceException: Object reference not set to an object
instance" may occur when closing a form of type Progress.Windows.Form. The
application continues to run when the error message is dismissed.


PSC00325904
=============================
Error messages may appear repeatedly in a loop when the user tries to change
focus in an application which uses embedded ABL windows.


PSC00324948
=============================
Silent crash when assigning a ProDataset handle to a
Progress.Data.Bindingsource, where the dataset contains a buffer for a
temp-table defined as REFERENCE-ONLY and the temp-table has been bound (via
parameter passing with the BIND option).


PSC00323018
=============================
The scenario is:
* An ABL class is implementing an interface that resides in a .NET Class
Library (.dll).  
* A method in that interface returns System.String and the strings that are
returned are large.  
* The implementation of the method in the ABL class specifies the return type
as LONGCHAR.

When compiling this class the following compiler error is returned:

Method 'SomeLargeString' in interface definition
'ProgressTestClass.ILargeStringTest' returns 'character', but the method
implementation returns 'longchar'. (12951)

According to the OpenEdge GUI for .NET Mapping Reference in the documentation,
there are two possible data types that are implicitly mapped to the
System.String data type.  Those are CHARACTER and LONGCHAR.

This is also true of ABSTRACT method implementations.  When an ABSTRACT .NET
method that returns System.String is overridden by an implementation that
returns LONGCHAR the following compiler error is returned:

myAbstractMethod already defined in inherited class with return type
'character'. (12950)


PSC00322696
=============================
Error 14081 ("Error loading the .NET runtime") is generated when using the .Net
Interface from ABL if the session is started with -cpinternal 620-2533 (Thai
codepage).


PSC00319794
=============================
The OpenEdge GUI Client may crash if no ABL menu-items have been created and
the user presses the Enter key in an ABL window which has no active focus
widget. This issue occurs when a .NET WAIT-FOR [WAIT-FOR
System.Windows.Forms.Application:Run()] is used.


PSC00319684
=============================
The cursor position in a numeric fill-in may move if the application applies
the CHOOSE event to a button whose NO-FOCUS attribute is set to TRUE.


PSC00307270
=============================
An ABL dialog box appears on the Windows taskbar when it is displayed from an
ABL window which is embedded in a .NET form. The expected behavior is that the
dialog box will only appear on the taskbar if the parent form is not displayed
on the taskbar.


PSC00305401
=============================
An infinite loop may occur in an application which uses multiple embedded
windows. The loop may occur when a LEAVE trigger executes the RETURN NO-APPLY
statement after displaying a message in an alert box.


PSC00283726
=============================
When multiple batches of data are present in an UltraGrid, then the source
temp-table is emptied and reloaded with only a single batch, the UltraGrid is
filled with blank rows.


PSC00262016
=============================
Deleting object causes error when implicit query is deleted
****************************************

When disposing of the components variable in the destructor of a relatively
simple form with a dataset, the following error is thrown:

Cannot delete a dataset relation auto-generated query. (12349)



PSC00255733
=============================
Dialogs are not centered over floating child forms

****************************************

ABL dialog boxes are not centered over floating (undocked) .NET child forms.
They are parented and centered over the parent .NET form.



p. Next Gen AppServer

PSC00335049
=============================
When a .NET Open Client application connects to PASOE it fails if the .NET Open
Client has compression enabled.

Communication layer message: General Error: 9986. (7175)


PSC00333267
=============================
No error information is being returned from a Business Entity.


PSC00330192
=============================
PASOE: Configured -Mm value is not reflected in the agent log file if multiple
sessions in the Appserver agent try to simultaneously connect to one or more
databases.


PSC00320370
=============================
When making an async call on an AppServer and attaching a CLIENT-PRINCIPAL
object to the REQUEST-INFO attribute of the SERVER object handle, the CP object
gets transferred to the request object handle.



q. OEBPM

PSC00336826
=============================
QueryService API does not return workitems if filtered on ALL_USERS and
case-sensitivity is set to false.


PSC00335246
=============================
After applying the Brazilian Portuguese language bundle package, BPM Portal
calendars are not translated and it's showing with English format.


PSC00332800
=============================
After migrating a process from Savvion 7.6 to OE BPM 11.4, any update to one of
the Web forms will update the page format at save time and corrupt the final
layout and content when displayed in a web browser.


PSC00329262
=============================
Null pointer exception when accessing the "audit history" page of some
processes. Error occurs on setDataSlot() internal method.


PSC00326287
=============================
Process Refresh fails after adding a new dataslot to the process.


PSC00325566
=============================
Delay while loading the dashboard page for the logged-in user. The introduction
of a cache mechanism for the database results set now substantially reduces the
delay for the dashboard page to load when displaying a list of records.


PSC00323878
=============================
SESSIONID generated is not random enough to prevent security vulnerability


PSC00323401
=============================
When switching to the "Path Analysis" TAB in BPM Studio the path analysis is
being reloaded every time it is switched to from another TAB.  This is
unnecessary if the path has already been reloaded previously and the process
flow has not changed.


PSC00323383
=============================
The file 'user-det.jsp' in sbm.war has an embedded line of code that causes
errors at runtime because the single-quote characters are invalid:

File 'user-det.jsp' in
<path>/oebpm/jboss/webapps/deploy/sbm.war/bpmportal/administration contains an
error on line 182: bad single quotes.


PSC00322265
=============================
For other than English language, the OEBPM perspective names are showing
without the BPM word such as OpenEdge Designer instead of OpenEdge BPM
Designer.


PSC00321263
=============================
DateTimeTZ (datetime dataslot) not persisted for locales other than English -
exception thrown in bpmportal.log


PSC00313083
=============================
Runtime exception occurs when BizPulse rule makes use of custom Java class on
Windows platforms.


PSC00291767
=============================
When user accesses Delegated task settings, the Start-End dates do not show the
pre-configured range for Spanish/Portuguese/Chinese users of BPM Portal.



r. Open Client

PSC00339429
=============================
Generating a .NET proxy where two programs define temp-tables with the same
name but different schema will cause the generation to fail with this error:
error CS0103: The name 'SettApplicantOEProps' does not exist in the current
context. Compilation error occurs in the 2nd generated DataTable Class.


PSC00338304
=============================
A .NET OpenClient application which is calling an OE 11.4 appserver on a Linux
machine is failing with the following exception: ??Broker System failure:
Invalid state for deallocate: Current state = STATE_RECEIVING (7249) (7209).

This appears very similar to defects numbered PSC00323149 and PSC00328342,
however this is reproducible in 11.5.1 and 11.6.0.


PSC00328077
=============================
Unable to generate a Java Open Client proxy for a ProDataSet that contains more
than 46 data-relation objects.


PSC00321310
=============================
The .NET Open Client is unable to make a connection to a NameServer which is
located on a different network subnet when using the IP address.


PSC00269026
=============================
Using relative path for the -xpxgfile and -startdir parameters in the generated
runbproxygen.bat file fails with the following errors:



Proxy Generation Failed.

For details see the log file  C:\DLCWORK\test.log



The log file shows:

>>ERROR generating .NET proxies

    Default directory is not an absolute path



The same thing works in 11.2.1.



s. PDSOE

PSC00334972
=============================
It is impossible to change the debugger port in a AppServer debug configuration
from 3099.  The user interface allows the change to be made, however once the
debug configuration is closed and re-opened, the port is reset back to 3099.


PSC00334553
=============================
When using an external directory in a projects PROPATH, code completion will no
longer work.


PSC00333343
=============================
Library conflict when generating .war files using the following wizards:
1. Export REST Application
2. Export Data Object Web Application
3. Export ABL Web Application

The war file generated using first two wizards is supported only on traditional
OEWebServer and the one generated using the third wizard supported on "Pacific
Application Server for OpenEdge".


PSC00331579
=============================
PDOSE hang modify some properties of a control and then moving of scroll bar


PSC00331577
=============================
Visual designer hangs after moving scrollbar


PSC00330235
=============================
If code uses  code uses nested built-in ABL functions, the "Organize USING
statements" feature can insert excess USING statements.

This happens if a token (function name, variable name etc.) has a name matching
a known class type in the project, and the token is on the 2nd level of nesting
(or deeper).


PSC00330210
=============================
Organize USING Statements inserts unused USING if a variable that matches a
class name is passed as input parameter to a procedure/method/function call, if
the invocation does not qualify the parameter with the INPUT keyword.


PSC00330142
=============================
If a .p file defines a function with a buffer parameter, or a .cls file defines
a method with a buffer parameter, using the "Organize USING statements" will
incorrectly insert the line "USING System.Buffer FROM ASSEMBLY." in the code.


PSC00326979
=============================
The Developer Studio Database connections preferences blanks database
connections parameters when there are many connections defined.


PSC00326558
=============================
Visual Designer hangs when double-clicking event in Properties view


PSC00326466
=============================
"Organise USING statements" feature can incorrectly generate statements for
generic classes such as 'USING "System.Progress<PROGRESS>" FROM ASSEMBLY.'
This will then stop the code from compiling.


PSC00325153
=============================
When executing the ABL Unit Test on UNIX via the command-line, specifying a
.JSON configuration file, the "location" setting is not respected.


PSC00325022
=============================
When starting up PDSOE is started up using Team Foundation Server, the
<project>/.settings/org.eclipse.wst.common.project.facet.core.xml file is
checked out and on most occasions never changed.


PSC00324538
=============================
prowin32 hangs, spikes memory, crashes when clicking on inherited controls that
have been copied and pasted in Visual Designer


PSC00324376
=============================
Form is not loaded after modifying the source view of the form and switching
back to design view


PSC00323245
=============================
Cannot generate REST Invocation file in PDS-OE 11.5, if procedure uses a
TABLE-HANDLE.


PSC00322149
=============================
If auto bracketing is active, deleting the first bracket also deletes the first
character after the bracket


PSC00321457
=============================
When a form containing user controls is opened in Visual Designer using the
SHIFT-F9 key combination from the source code editor, and Visual Designer is
closed without touching any of the user controls. an error message is
displayed. If the user clicks on some of the user controls while the form is
open in Visual Designer and closes the form, when the form is reopened again
using SHIFT-F9 Visual Designer hangs while opening the form.


PSC00320838
=============================
The "Automatically add USING statement instead of qualified name" feature
enabled in the PSDOE OpenEdge Editor, breaks include files because the feature
adds USING statements at the top of the include file thus preventing the code
of the containing procedure or class from correctly compiling.


PSC00318994
=============================
In the Developer studio, when adding a trigger via the AppBuilder integration,
other pieces of code can go missing/be lost


PSC00318368
=============================
When editing a FreeForm Widget in Developer Studio it is a bit cumbersome
because every time a character is typed there is a delay and it will sometimes
miss several characters.


PSC00318225
=============================
Unable to use Path Variables to define a relative Build Destination path.


PSC00315588
=============================
After adding multiple fields to a frame in the AppBuilder UI, only the field
with the highest alphanumeric name appears in the Outline View.

This problem only persists until the procedure has been saved, closed and
re-opened.


PSC00313909
=============================
When developing with a SmartDataViewer in OE 11.4 PDSOE IDE and selecting the
ADM2 DB Fields palette option, the following message is displayed:
    ---------------------------
    You must have at least one connected database to add DB Fields.
    Do you want to connect to a database?
    OK   Cancel
    ---------------------------
    
The issue is that a database is already connected through the _idestartup.p
hook (and not through the Project Properties - Database Connections section),
so the above message should not display (and force you to create a dummy
database connection within the Project Properties - Database Connections
section).


PSC00313853
=============================
In PDS 11.3x the outline view lists internal procedures and functions in
alphabetic order, ignoring CASE.  In 11.4, any procedures or functions whose
names begin with upper case characters are shown first, in alphabetic order,
then lower case names are listed in alphabetic order.


PSC00313037
=============================
Progress Developer Studio's auto complete functionality is working and only
shows "No Proposals" message


PSC00312133
=============================
When associating a verb with an operation in REST Editor, system gets real
slow. This happens when the current project has large number of ABL sources
that has compilation errors.


PSC00305408
=============================
The PDSOE debugger doesn't open include files for debugging if they are
contained in linked folders.  


PSC00294114
=============================
When using the option "Make AppBuilder generated code read-only", this can
prevent the user editing code in non-read only sections of code.


PSC00261603
=============================
Unable to type in a section above read-only section in Appbuilder generated
file.  Part of the section or line above the read-only section is also
read-only when it shouldn't be.


PSC00204286
=============================
In the Developer Studio's "Outline" view the methods are sorted incorrectly.   

Methods with upper case are sorted first, then lower case second.



t. Porting

PSC00324969
=============================
Client bkIOWrite error causes database to crash. Error 9450, 3645, 5028.



u. QPE

PSC00335642
=============================
The SonicMQ Adapter is unavailable within the OpenEdge Explorer / Management on
the Linux 64-bit platform.



v. REST Adapter

PSC00338898
=============================
The ClientContextId is 0 when using the appSecurity-form-oerealm.xml security
template for a REST Service.


PSC00336842
=============================
The REST Adapter is logging some of the startup messages in the REST Adapter
log files as a warning, instead they should be logged as informational
messages.


PSC00317486
=============================
When using OERealm for security, throwing back a Progress.Lang.AppError from
the AppServer OERealm security class does not pass the error back to the REST
client.  Instead the standard HTML for error 401 is returned.



w. Replication

PSC00321527
=============================
Replication agent re-syncs instead of terminating when a dsrutil command is
executed.


PSC00292521
=============================
The status code return by dsrutil is wrong for secondary target regardless of
if  the secondary target database is up or down.



x. Report Builder

PSC00315557
=============================
Report Engine (PRORE32.EXE) may crash when printing a single page from the
print preview window using the "Print Current Page" button.



y. SQL

PSC00339957
=============================
Field (column) of type "Array of Decimals"  if contains values which are more
than the defined size is causing SQL statements to run forever


PSC00338158
=============================
GRANT WITH OPTION is not supported for GRANT ON SEQUENCE statement. The current
documentation is not clear about this option not being supported. The
documentation will be enhanced in a future release.


PSC00336493
=============================
If total number of index components for all indexes in a table exceeds 500,
then querying such a table may lead to sql engine crash.


PSC00329867
=============================
UPDATE statement is not working fine when setting multiple lob columns, few
with nulls and few with some non-null data.


PSC00329851
=============================
SQL will no longer generate SQL_ERR_INVNUMSTR error when a join condition
compares  integer data type with character data type.  


PSC00325269
=============================
Permissions are not revoked when the grantor and the grantee are same user.


PSC00323979
=============================
When converting an 0 (zero) into a bit data-type using CAST function, it fails
with error 7481. Example: SELECT cast(0 as bit) FROM pub.customer


PSC00321432
=============================
Join on Table with Derived table where
 1) the derived table has UNION of two tables and
 2) The Join contains ALL keyword in WHERE clause

throws the following Internal Error.
=== SQL Exception 1 ===
SQLState=HY000
ErrorCode=-211022
[DataDirect][OpenEdge JDBC Driver][OpenEdge] Encountered internal error in SQL
ENGINE at 4045 in /vobs_sql/sql/src/progstub/pro_cache.cxx. Contact Progress
Technical Support


PSC00319199
=============================
Broker detects death of a _sqlsrv2 server when the ports are being scanned by a
3rd party port scanning software.


PSC00297919
=============================
For TP tables, BEFORE UPDATE triggers are not allowed to modify partition key
column values.    


PSC00224136
=============================
SQL Server does not return DhSQLException.MESSAGE_TEXT
****************************************
While executing a stored procedure/trigger, if a DhSQLException is encountered
then SQL fails to return the error message defined in DhSQLException object.



z. Security

PSC00335661
=============================
Webclient application is crashing randomly after applying Hotfix 10.2B0836 when
connecting to an AIA via TLS and when refreshing a browse.


PSC00326351
=============================
You may get the following error when auditing in enabled and you perform an
operation that would be audited via a SQL connection:

Integrity constraint violation:uniqueness constraint violation (7518)



{. Server Technology

PSC00337431
=============================
When using CANCEL-REQUESTS to cancel outstanding ASYNC requests while connected
to the AppServer via Aia, the session crashes.

This problem does not occur on 11.5.1, but it does occur in 10.2B0841, 11.3.2 &
11.4 clients.

Below is the stack trace from protrace when the crash occurs:

csnet_conn
csnet_send_stop_msg
ubcExit
ub_cleanup_connhdl
ub_setStop
ub_emptySendQueue
csopenGetRequest
csopenCancelRequests
rncs_cancelRequests
umServGetAttr
umSuperGetAttr
ioGetAttribute
rnwdatrEval


PSC00326235
=============================
Due to the POODLE vulnerability SSLv3 is being disabled on all web servers. The
current implementation of the OpenEdge client only supports SSLv3 hello
messages, so if a web server is running in strict mode (only allowing TLS hello
messages), the connection to the web server will fail.



|. Web Services Adapter

PSC00318499
=============================
When using the RETURN ERROR statement with a Web Service procedure, the WSA
response gets double escaped.



}. WebClient

PSC00338882
=============================
If a WebClient application supports both 32-bit and 64-bit WebClient, it is
necessary for the application vendor to provide the WebClient Application
Assembler with separate URLs for downloading 32-bit and 64-bit WebClient.
However, WebClient Deployment Packager does not contain a field for the user to
modify the 64-bit WebClient installer URL.


PSC00320774
=============================
Uninstalling a WebClient application with a Personal install of 32-bit
WebClient on a 64-bit Windows will not uninstall completely if it has System
Tasks. The application will be removed, but any System Tasks will not be undone
(e.g. shortcuts, unregistering DLLs).



~. WebSpeed

PSC00340240
=============================
Pdf file gets corrupted when being uploaded with wsisa.dll messenger.


PSC00337475
=============================
wsisa.dll messenger fails when setting loggingLevel > 0


PSC00329894
=============================
WebSpeed agent may receive new request while processing WAIT-FOR on the
currently running request


PSC00325183
=============================
WebSpeed agent randomly choose the log file sequence after restart of the
broker.  The last written log file is skipped and writes to much lower sequence
number associated wit the log file.


PSC00324981
=============================
Webpage with large form submit causes wsasp.dll to crash IIS webserver.


PSC00312946
=============================
hen uploading a file to WebSpeed, the get-cgi() function is broken, and returns
a lower-case version of the HTTP_USER_AGENT CGI variable.



---------------------------------------
Third Party Acknowledgments
---------------------------------------

Release Notes - Documentation Third Party Acknowledgements

Copyright (c) 2015 Progress Software Corporation and/or one of its
subsidiaries or affiliates.  All rights reserved.

One or more products in the Progress OpenEdge v11.6 release includes
third party components covered by licenses that require that the
following documentation notices be provided.  If changes in third party
components occurred for the current release of the Product, the
following Third Party Acknowledgements may contain notice updates to any
earlier versions provided in documentation or README file.

Progress OpenEdge v11.6 may incorporate ANT v1.5.4.  Such technology is
subject to the following terms and conditions: The Apache Software
License, Version 1.1, applies to all versions of up to ant 1.6.0
included.  The Apache Software License, Version 1.1 - Copyright (C)
2000-2003 The Apache Software Foundation.  All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
met: 1.  Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.  2.
Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.  3.
The end-user documentation included with the redistribution, if any,
must include the following acknowledgment:  "This product includes
software developed by the Apache Software Foundation
(http://www.apache.org/)." Alternately, this acknowledgment may appear
in the software itself, if and wherever such third-party acknowledgments
normally appear.  4.  The names "Ant" and "Apache Software Foundation"
must not be used to endorse or promote products derived from this
software without prior written permission.  For written permission,
please contact apache@apache.org.  5.  Products derived from this
software may not be called "Apache", nor may "Apache" appear in their
name, without prior written permission of the Apache Software
Foundation.  THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR
IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS  FOR A PARTICULAR  PURPOSE ARE
DISCLAIMED.  IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR ITS
CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
PROFITS; OR BUSINESS  INTERRUPTION)  HOWEVER CAUSED AND ON ANY  THEORY
OF LIABILITY,  WHETHER  IN CONTRACT,  STRICT LIABILITY,  OR TORT
(INCLUDING  NEGLIGENCE OR  OTHERWISE) ARISING IN  ANY WAY OUT OF THE
USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
This software consists of voluntary contributions made by many
individuals on behalf of the Apache Software Foundation.  For more
information on the Apache Software Foundation, please see
<http://www.apache.org/>.

Progress OpenEdge v11.6 may incorporate Apache Avalon 2002/08/06, Apache
Batik v1.1, Apache Jakarta POI v1.1, Apache POI 2003/05/14, Regexp (Pure
Java Regular Expression) v1.2, and XMLTask v1.15.1  from The Apache
Software Foundation.  Such technologies are subject to the following
terms and conditions:  The Apache Software License, Version 1.1
Copyright (c) 2000 The Apache Software Foundation.  All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
met: 1.  Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.  2.
Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.  3.
The end-user documentation included with the redistribution, if any,
must include the following acknowledgment: "This product includes
software developed by the Apache Software Foundation
(http://www.apache.org/)." Alternately, this acknowledgment may appear
in the software itself, if and wherever such third-party acknowledgments
normally appear.  4.  The names "Apache" and "Apache Software
Foundation" must not be used to endorse or promote products derived from
this software without prior written permission.  For written permission,
please contact apache@apache.org.  5.  Products derived from this
software may not be called "Apache", nor may "Apache" appear in their
name, without prior written permission of the Apache Software
Foundation.  THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR
IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED.  IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR ITS
CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. This
software consists of voluntary contributions made by many individuals on
behalf of the Apache Software Foundation.  For more information on the
Apache Software Foundation, please see <http://www.apache.org/>.
Portions of this software are based upon public domain software
originally written at the National Center for Supercomputing
Applications, University of Illinois, Urbana-Champaign.

Progress OpenEdge v11.6 may incorporate Apache JAXP v1.3.04 from The
Apache Software Foundation.  Such technology is subject to the following
terms and conditions:  The Apache Software License, Version 1.1
Copyright (c) 1999-2003 The Apache Software Foundation.  All rights
reserved.  Redistribution and use in source and binary forms, with or
without modification, are permitted provided that the following
conditions are met: 1.  Redistributions of source code must retain the
above copyright notice, this list of conditions and the following
disclaimer.  2.  Redistributions in binary form must reproduce the above
copyright notice, this list of conditions and the following disclaimer
in the documentation and/or other materials provided with the
distribution.  3.  The end-user documentation included with the
redistribution, if any, must include the following acknowledgment:
"This product includes software developed by the Apache Software
Foundation (http://www.apache.org/)." Alternately, this acknowledgment
may appear in the software itself, if and wherever such third-party
acknowledgments normally appear.  4.  The names "Xalan" and "Apache
Software Foundation" must not be used to endorse or promote products
derived from this software without prior written permission.  For
written permission, please contact apache@apache.org.  5.  Products
derived from this software may not be called "Apache", nor may "Apache"
appear in their name, without prior written   permission of the Apache
Software Foundation.  THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY
EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE APACHE SOFTWARE
FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.  This
software consists of voluntary contributions made by many individuals on
behalf of the Apache Software Foundation and was originally based on
software copyright (c) 1999, Lotus Development Corporation.,
http://www.lotus.com.  For more information on the Apache Software
Foundation, please see http://www.apache.org/.

Progress OpenEdge v11.6 may incorporate Crimson v1.1.3 (as part of 1PDT
Progress Extensions for Eclipse (PEX) v2.4.3).  Such technology is
subject to the following terms and conditions:  The Apache Software
License, Version 1.1 Copyright (c) 1999-2003 The Apache Software
Foundation.  All rights reserved.  Redistribution and use in source and
binary forms, with or without modification, are permitted provided that
the following conditions are met:  1.  Redistributions of source code
must retain the above copyright notice, this list of conditions and the
following disclaimer.  2.  Redistributions in binary form must reproduce
the above copyright notice, this list of conditions and the following
disclaimer in the documentation and/or other materials provided with the
distribution.  3.  The end-user documentation included with the
redistribution, if any, must include the following acknowledgment: "This
product includes software developed by the Apache Software Foundation
(http://www.apache.org/)." Alternately, this acknowledgment may appear
in the software itself, if and wherever such third-party acknowledgments
normally appear.  4.  The names "Xerces" and "Apache Software
Foundation" must not be used to endorse or promote products derived from
this software without prior written permission.  For written permission,
please contact apache@apache.org.  5.  Products derived from this
software may not be called "Apache", nor may "Apache" appear in their
name, without prior written permission of the Apache Software
Foundation.  THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR
IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED.  IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR ITS
CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. This
software consists of voluntary contributions made by many individuals on
behalf of the Apache Software Foundation and was originally based on
software copyright (c) 1999, International Business Machines, Inc.,
http://www.ibm.com.  For more information on the Apache Software
Foundation, please see <http://www.apache.org/>.

Progress OpenEdge v11.6 may incorporate jfor v0.7.2 from jfor.  Such
technology is subject to the following terms and conditions: jfor
Apache-Style Software License.  Copyright (c) 2002 by the jfor project.
All rights reserved.  Redistribution and use in source and binary forms,
with or without modification, are permitted provided that the following
conditions are met: 1.  Redistributions of source code must retain the
above copyright notice, this list of conditions and the following
disclaimer.  2.  Redistributions in binary form must reproduce the above
copyright notice, this list of conditions and the following disclaimer
in the documentation and/or other materials provided with the
distribution.  3.  The end-user documentation included with the
redistribution, if any, must include the following acknowledgment:
"This product includes software developed by the jfor project
(http://www.jfor.org)." Alternately, this acknowledgment may appear in
the software itself, if and wherever such third-party acknowledgments
normally appear.  4.  The name "jfor" must not be used to endorse or
promote products derived from this software without prior written
permission.  For written permission, please contact info@jfor.org.  5.
Products derived from this software may not be called "jfor", nor may
"jfor" appear in their name, without prior written permission of
info@jfor.org.  THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR
IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED.  IN NO EVENT SHALL THE JFOR PROJECT OR ITS CONTRIBUTORS BE
LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,  EVEN IF ADVISED OF
THE POSSIBILITY OF SUCH DAMAGE.

Progress OpenEdge v11.6 may incorporate Apache LogKit v1.2 from The
Apache Software Foundation.  Such technologies are subject to the
following terms and conditions:  The Apache Software License, Version
1.1 -- Copyright (C) 1997-2003 The Apache Software Foundation.  All
rights reserved.  Redistribution and use in source and binary forms,
with or without modification, are permitted provided that the following
conditions are met: 1.  Redistributions of source code must retain the
above copyright notice, this list of conditions and the following
disclaimer.  2.  Redistributions in binary form must reproduce the above
copyright notice, this list of conditions and the following disclaimer
in the documentation and/or other materials provided with the
distribution.  3.  The end-user documentation included with the
redistribution, if any, must include the following acknowledgment:
"This product includes software developed by the Apache Software
Foundation (http://www.apache.org/)." Alternately, this acknowledgment
may appear in the software itself, if and wherever such third-party
acknowledgments normally appear.  4.  The names "LogKit", "Jakarta" and
"Apache Software Foundation" must not be used to endorse or promote
products derived from this software without prior written permission.
For written permission, please contact apache@apache.org.  5.  Products
derived from this software may not be called "Apache", nor may "Apache"
appear in their name, without prior written permission of the Apache
Software Foundation.  THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY
EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS  FOR A PARTICULAR
PURPOSE ARE  DISCLAIMED. IN NO EVENT SHALL THE APACHE SOFTWARE
FOUNDATION  OR ITS CONTRIBUTORS  BE LIABLE FOR ANY DIRECT, INDIRECT,
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,BUT
NOT LIMITED TO, PROCUREMENT  OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
USE, DATA, OR PROFITS; OR BUSINESS  INTERRUPTION)  HOWEVER CAUSED AND ON
ANY THEORY OF LIABILITY, WHETHER  IN CONTRACT,  STRICT LIABILITY, OR
TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE
USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
This software consists of voluntary contributions made by many
individuals on behalf of the Apache Software Foundation.  For more
information on the Apache Software Foundation, please see
<http://www.apache.org/>.

Progress OpenEdge v11.6 may incorporate Xerces for Java XML Parser
v2.6.2.  Such technology is subject to the following terms and
conditions: The Apache Software License, Version 1.1 Copyright (c) 1999
The Apache Software Foundation.  All rights reserved.  Redistribution
and use in source and binary forms, with or without modification, are
permitted provided that the following conditions are met: 1.
Redistributions of source code must retain the above copyright notice,
this list of conditions and the following disclaimer.  2.
Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.  3.
The end-user documentation included with the redistribution, if any,
must include the following acknowledgment: "This product includes
software developed by the Apache Software Foundation
(http://www.apache.org/)." Alternately, this acknowledgment may appear
in the software itself, if and wherever such third-party acknowledgments
normally appear.  4.  The names "Xerces" and "Apache Software
Foundation" must not be used to endorse or promote products derived from
this software without prior written permission.  For written permission,
please contact apache@apache.org.  5.  Products derived from this
software may not be called "Apache", nor may "Apache" appear in their
name, without prior written permission of the Apache Software
Foundation.  THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR
IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED.  IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR ITS
CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. This
software consists of voluntary contributions made by many individuals on
behalf of the Apache Software Foundation and was originally based on
software copyright (c) 1999, International Business Machines, Inc.,
http://www.ibm.com.  For more information on the Apache Software
Foundation, please see <http://www.apache.org/>.

Progress OpenEdge v11.6 may incorporate SOAP v2.3.1 from Apache
Foundation.  Such technology is subject to the following terms and
conditions: The Apache Software License, Version 1.1
Copyright (c) 1999 The Apache Software Foundation.  All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
met:
1.  Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
2.  Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
3.  The end-user documentation included with the redistribution, if any,
must include the following acknowledgment: "This product includes
software developed by the Apache Software Foundation
(http://www.apache.org/)."
Alternately, this acknowledgment may appear in the software itself, if
and wherever such third-party acknowledgments normally appear.
4.  The names "SOAP" and "Apache Software Foundation" must not be used
to endorse or promote products derived from this software without prior
written permission.  For written permission, please contact
apache@apache.org.
5.  Products derived from this software may not be called "Apache", nor
may "Apache" appear in their name, without prior written permission of
the Apache Software Foundation.
THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN
NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE
LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
THE POSSIBILITY OF SUCH DAMAGE.
This software consists of voluntary contributions made by many
individuals on behalf of the Apache Software Foundation.  For more
information on the Apache Software Foundation, please see
<http://www.apache.org/>.

Progress OpenEdge v11.6 may incorporate ANTLR (Another Tool for Language
Recognition) v2.7.6.  Such technology is subject to the following terms
and conditions: ANTLR 3 License [The BSD License] Copyright (c)
2003-2006, Terence Parr All rights reserved.  Redistribution and use in
source and binary forms, with or without modification, are permitted
provided that the following conditions are met:  Redistributions of
source code must retain the above copyright notice, this list of
conditions and the following disclaimer.  Redistributions in binary form
must reproduce the above copyright notice, this list of conditions and
the following disclaimer in the documentation and/or other materials
provided with the distribution.  Neither the name of the author nor the
names of its contributors may be used to endorse or promote products
derived from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER
OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

Progress OpenEdge v11.6 may incorporate Castor v0.9.3 from castor.org.
Such technology is subject to the following terms and conditions:
Original Intalio license - Copyright 1999-2004 (C) Intalio Inc., and
others.  All Rights Reserved.  Redistribution and use of this software
and associated documentation ("Software"), with or without modification,
are permitted provided that the following conditions are met: 1.
Redistributions of source code must retain copyright statements and
notices.  Redistributions must also contain a copy of this document.  2.
Redistributions in   binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.  3.
The name "ExoLab" must not be used to endorse    or promote products
derived from this Software without prior written permission of Intalio
Inc.  For written permission, please contact info@exolab.org.  4.
Products derived from this Software may not be called "Castor" nor may
"Castor" appear in their names without prior written permission of
Intalio Inc.  Exolab, Castor and Intalio are trademarks of Intalio Inc.
5.  Due credit should be given to the ExoLab Project
(http://www.exolab.org/).  THIS SOFTWARE IS PROVIDED BY INTALIO AND
CONTRIBUTORS ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES,
INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
INTALIO OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

Progress OpenEdge v11.6 may incorporate Decimal Conversion Code (dtoa.c;
g_fmt.c; rnd_prod.s; decstrod.c; decstrtof.c; dmisc.c; gdtoa.c; gdtoa.h;
gdtoaimp.h; gethex.c; gmisc.c; hd_init.c; misc.c; smisc.c; strtodg.c;
strtord.c; sum.c; ulp.c).  Such technologies are subject to the
following terms and conditions: dtoa.c License: The author of this
software is David M. Gay.  Copyright (c) 1991, 2000, 2001 by Lucent
Technologies.  Permission to use, copy, modify, and distribute this
software for any purpose without fee is hereby granted, provided that
this entire notice is included in all copies of any software which is or
includes a copy or modification of this software and in all copies of
the supporting documentation for such software.  THIS SOFTWARE IS BEING
PROVIDED "AS IS", WITHOUT ANY EXPRESS OR IMPLIED WARRANTY.  IN
PARTICULAR, NEITHER THE AUTHOR NOR LUCENT MAKES ANY REPRESENTATION OR
WARRANTY OF ANY KIND CONCERNING THE MERCHANTABILITY OF THIS SOFTWARE OR
ITS FITNESS FOR ANY PARTICULAR PURPOSE. g_fmt.c License: The author of
this software is David M. Gay.  Copyright (c) 1991, 1996 by Lucent
Technologies.  Permission to use, copy, modify, and distribute this
software for any purpose without fee is hereby granted, provided that
this entire notice is included in all copies of any software which is or
includes a copy or modification of this software and in all copies of
the supporting documentation for such software.  THIS SOFTWARE IS BEING
PROVIDED "AS IS", WITHOUT ANY EXPRESS OR IMPLIED WARRANTY.  IN
PARTICULAR, NEITHER THE AUTHOR NOR LUCENT MAKES ANY REPRESENTATION OR
WARRANTY OF ANY KIND CONCERNING THE MERCHANTABILITY OF THIS SOFTWARE OR
ITS FITNESS FOR ANY PARTICULAR PURPOSE.
rnd_prod.s License: The author of this software is David M. Gay.
Copyright (c) 1991 by Lucent Technologies.  Permission to use, copy,
modify, and distribute this software for any purpose without fee is
hereby granted, provided that this entire notice is included in all
copies of any software which is or includes a copy or modification of
this software and in all copies of the supporting documentation for such
software.  THIS SOFTWARE IS BEING PROVIDED "AS IS", WITHOUT ANY EXPRESS
OR IMPLIED WARRANTY.  IN PARTICULAR, NEITHER THE AUTHOR NOR LUCENT MAKES
ANY REPRESENTATION OR WARRANTY OF ANY KIND CONCERNING THE
MERCHANTABILITY OF THIS SOFTWARE OR ITS FITNESS FOR ANY PARTICULAR
PURPOSE. decstrtod.c License: The author of this software is David M.
Gay.  Copyright (C) 1998-2001 by Lucent Technologies All Rights Reserved
Permission to use, copy, modify, and distribute this software and its
documentation for any purpose and without fee is hereby granted,
provided that the above copyright notice appear in all copies and that
both that the copyright notice and this permission notice and warranty
disclaimer appear in supporting documentation, and that the name of
Lucent or any of its entities not be used in advertising or publicity
pertaining to distribution of the software without specific, written
prior permission.  LUCENT DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS
SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND
FITNESS. IN NO EVENT SHALL LUCENT OR ANY OF ITS ENTITIES BE LIABLE FOR
ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER
RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF
CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. decstrtof.c
License: The author of this software is David M. Gay.  Copyright (C)
1998, 2000 by Lucent Technologies All Rights Reserved Permission to use,
copy, modify, and distribute this software and its documentation for any
purpose and without fee is hereby
granted, provided that the above copyright notice appear in all copies
and that both that the copyright notice and this permission notice and
warranty disclaimer appear in supporting documentation, and that the
name of Lucent or any of its entities not be used in advertising or
publicity pertaining to distribution of the software without specific,
written prior permission.  LUCENT DISCLAIMS ALL WARRANTIES WITH REGARD
TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
AND FITNESS. IN NO EVENT SHALL LUCENT OR ANY OF ITS ENTITIES BE LIABLE
FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. dmisc.c
License: The author of this software is David M. Gay.  Copyright (C)
1998 by Lucent Technologies All Rights Reserved Permission to use, copy,
modify, and distribute this software and its documentation for any
purpose and without fee is hereby granted, provided that the above
copyright notice appear in all copies and that both that the copyright
notice and this permission notice and warranty disclaimer appear in
supporting documentation, and that the name of Lucent or any of its
entities not be used in advertising or publicity pertaining to
distribution of the software without specific, written prior permission.
LUCENT DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
LUCENT OR ANY OF ITS ENTITIES BE LIABLE FOR ANY SPECIAL, INDIRECT OR
CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF
USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
PERFORMANCE OF THIS SOFTWARE. gdtoa.c License: The author of this
software is David M. Gay.  Copyright (C) 1998, 1999 by Lucent
Technologies All Rights Reserved Permission to use, copy, modify, and
distribute this software and its documentation for any purpose and
without fee is hereby granted, provided that the above copyright notice
appear in all copies and that both that the copyright notice and this
permission notice and warranty disclaimer appear in supporting
documentation, and that the name of Lucent or any of its entities not be
used in advertising or publicity pertaining to distribution of the
software without specific, written prior permission.  LUCENT DISCLAIMS
ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL LUCENT OR
ANY OF ITS ENTITIES BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL
DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS
ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF
THIS SOFTWARE. gdtoa.h License: The author of this software is David M.
Gay.  Copyright (C) 1998 by Lucent Technologies All Rights Reserved
Permission to use, copy, modify, and distribute this software and its
documentation for any purpose and without fee is hereby
granted, provided that the above copyright notice appear in all copies
and that both that the copyright notice and this permission notice and
warranty disclaimer appear in supporting documentation, and that the
name of Lucent or any of its entities not be used in advertising or
publicity pertaining to distribution of the software without specific,
written prior permission.  LUCENT DISCLAIMS ALL WARRANTIES WITH REGARD
TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
AND FITNESS. IN NO EVENT SHALL LUCENT OR ANY OF ITS ENTITIES BE LIABLE
FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
gdtoaimp.h License: The author of this software is David M. Gay.
Copyright (C) 1998-2000 by Lucent Technologies All Rights Reserved
Permission to use, copy, modify, and distribute this software and its
documentation for any purpose and without fee is hereby granted,
provided that the above copyright notice appear in all copies and that
both that the copyright notice and this permission notice and warranty
disclaimer appear in supporting documentation, and that the name of
Lucent or any of its entities not be used in advertising or publicity
pertaining to distribution of the software without specific, written
prior permission.  LUCENT DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS
SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND
FITNESS. IN NO EVENT SHALL LUCENT OR ANY OF ITS ENTITIES BE LIABLE FOR
ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER
RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF
CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. gethex.c
License: The author of this software is David M. Gay.  Copyright (C)
1998 by Lucent Technologies All Rights Reserved Permission to use, copy,
modify, and distribute this software and its documentation for any
purpose and without fee is hereby granted, provided that the above
copyright notice appear in all copies and that both that the copyright
notice and this permission notice and warranty disclaimer appear in
supporting documentation, and that the name of Lucent or any of its
entities not be used in advertising or publicity pertaining to
distribution of the software without specific, written prior permission.
LUCENT DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
LUCENT OR ANY OF ITS ENTITIES BE LIABLE FOR ANY SPECIAL, INDIRECT OR
CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF
USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
PERFORMANCE OF THIS SOFTWARE. gmisc.c License: The author of this
software is David M. Gay.  Copyright (C) 1998 by Lucent Technologies All
Rights Reserved Permission to use, copy, modify, and distribute this
software and its documentation for any purpose and without fee is hereby
granted, provided that the above copyright notice appear in all copies
and that both that the copyright notice and this permission notice and
warranty disclaimer appear in supporting documentation, and that the
name of Lucent or any of its entities not be used in advertising or
publicity pertaining to distribution of the software without specific,
written prior permission.  LUCENT DISCLAIMS ALL WARRANTIES WITH REGARD
TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
AND FITNESS. IN NO EVENT SHALL LUCENT OR ANY OF ITS ENTITIES BE LIABLE
FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. hd_init.c
License: The author of this software is David M. Gay.  Copyright (C)
2000 by Lucent Technologies All Rights Reserved Permission to use, copy,
modify, and distribute this software and its documentation for any
purpose and without fee is hereby granted, provided that the above
copyright notice appear in all copies and that both that the copyright
notice and this permission notice and warranty disclaimer appear in
supporting documentation, and that the name of Lucent or any of its
entities not be used in advertising or publicity pertaining to
distribution of the software without specific, written prior permission.
LUCENT DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
LUCENT OR ANY OF ITS ENTITIES BE LIABLE FOR ANY SPECIAL, INDIRECT OR
CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF
USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
PERFORMANCE OF THIS SOFTWARE. misc.c License: The author of this
software is David M. Gay.  Copyright (C) 1998, 1999 by Lucent
Technologies All Rights Reserved Permission to use, copy, modify, and
distribute this software and its documentation for any purpose and
without fee is hereby granted, provided that the above copyright notice
appear in all copies and that both that the copyright notice and this
permission notice and warranty  disclaimer appear in supporting
documentation, and that the name of Lucent or any of its entities not be
used in advertising or publicity pertaining to distribution of the
software without specific, written prior permission.  LUCENT DISCLAIMS
ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL LUCENT OR
ANY OF ITS ENTITIES BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL
DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS
ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF
THIS SOFTWARE. smisc.c License: The author of this software is David M.
Gay.  Copyright (C) 1998, 1999 by Lucent Technologies All Rights
Reserved Permission to use, copy, modify, and distribute this software
and its documentation for any purpose and without fee is hereby granted,
provided that the above copyright notice appear in all copies and that
both that the copyright notice and this permission notice and warranty
disclaimer appear in supporting documentation, and that the name of
Lucent or any of its entities not be used in advertising or publicity
pertaining to distribution of the software without specific, written
prior permission.  LUCENT DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS
SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND
FITNESS. IN NO EVENT SHALL LUCENT OR ANY OF ITS ENTITIES BE LIABLE FOR
ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER
RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF
CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. strtodg.c
License: The author of this software is David M. Gay.  Copyright (C)
1998-2001 by Lucent Technologies All Rights Reserved Permission to use,
copy, modify, and distribute this software and its documentation for any
purpose and without fee is hereby granted, provided that the above
copyright notice appear in all copies and that both that the copyright
notice and this permission notice and warranty disclaimer appear in
supporting documentation, and that the name of Lucent or any of its
entities not be used in advertising or publicity pertaining to
distribution of the software without specific, written prior permission.
LUCENT DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
LUCENT OR ANY OF ITS ENTITIES BE LIABLE FOR ANY SPECIAL, INDIRECT OR
CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF
USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
PERFORMANCE OF THIS SOFTWARE. strtord.c License: The author of this
software is David M. Gay.  Copyright (C) 1998, 2000 by Lucent
Technologies All Rights Reserved Permission to use, copy, modify, and
distribute this software and its documentation for any purpose and
without fee is hereby granted, provided that the above copyright notice
appear in all copies and that both that the copyright notice and this
permission notice and warranty disclaimer appear in supporting
documentation, and that the name of Lucent or any of its entities not be
used in advertising or publicity pertaining to distribution of the
software without specific, written prior permission.  LUCENT DISCLAIMS
ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL LUCENT OR
ANY OF ITS ENTITIES BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL
DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS
ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF
THIS SOFTWARE. sum.c License: The author of this software is David M.
Gay.  Copyright (C) 1998 by Lucent Technologies All Rights Reserved
Permission to use, copy, modify, and distribute this software and its
documentation for any purpose and without fee is hereby granted,
provided that the above copyright notice appear in all copies and that
both that the copyright notice and this permission notice and warranty
disclaimer appear in supporting documentation, and that the name of
Lucent or any of its entities not be used in advertising or publicity
pertaining to distribution of the software without specific, written
prior permission.  LUCENT DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS
SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND
FITNESS. IN NO EVENT SHALL LUCENT OR ANY OF ITS ENTITIES BE LIABLE FOR
ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER
RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF
CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ulp.c License:
The author of this software is David M. Gay.  Copyright (C) 1998, 1999
by Lucent Technologies All Rights Reserved Permission to use, copy,
modify, and distribute this software and its documentation for any
purpose and without fee is hereby granted, provided that the above
copyright notice appear in all copies and that both that the copyright
notice and this permission notice and warranty disclaimer appear in
supporting documentation, and that the name of Lucent or any of its
entities not be used in advertising or publicity pertaining to
distribution of the software without specific, written prior permission.
LUCENT DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
LUCENT OR ANY OF ITS ENTITIES BE LIABLE FOR ANY SPECIAL, INDIRECT OR
CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF
USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
PERFORMANCE OF THIS SOFTWARE.

Progress OpenEdge v11.6 may incorporate DOM4J v1.6.1 from MetaStuff,
Ltd.  Such technology is subject to the following terms and conditions:
Copyright 2001-2005 (C) MetaStuff, Ltd.  All Rights Reserved.
Redistribution and use of this software and associated documentation
("Software"), with or without modification, are permitted provided that
the following conditions are met: 1.  Redistributions of source code
must retain copyright statements and notices.  Redistributions must also
contain a copy of this document.  2.  Redistributions in binary form
must reproduce the above copyright notice, this list of conditions and
the following disclaimer in the documentation and/or other materials
provided with the distribution.  3.  The name "DOM4J" must not be used
to endorse or promote products derived from this Software without prior
written permission of MetaStuff, Ltd.  For written permission, please
contact dom4j-info@metastuff.com.  4.  Products derived from this
Software may not be called "DOM4J" nor may "DOM4J" appear in their names
without prior written permission of MetaStuff, Ltd.  DOM4J is a
registered trademark of MetaStuff, Ltd.  5.  Due credit should be given
to the DOM4J Project - http://www.dom4j.org THIS SOFTWARE IS PROVIDED BY
METASTUFF, LTD. AND CONTRIBUTORS ``AS IS'' AND ANY EXPRESSED OR IMPLIED
WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN
NO EVENT SHALL METASTUFF, LTD. OR ITS CONTRIBUTORS BE LIABLE FOR ANY
DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
POSSIBILITY OF SUCH DAMAGE.

Progress OpenEdge v11.6 may incorporate GraphicsMagick v1.3.14 from
GraphicsMagick Group.  Such technology is subject to the following terms
and conditions:
..  This text is in reStucturedText format, so it may look a bit odd.
..  See http://docutils.sourceforge.net/rst.html for details.
======================================
GraphicsMagick Copyrights and Licenses
======================================
This file is part of the GraphicsMagick software distributed by the
GraphicsMagick Group.
  [*Please note that the legal community considers 15 or more total
  lines of code or text (not necessarily contiguous) to
  be significant for the purposes of copyright.  Repeated changes such
  as renaming a symbol has similar significance
  to changing one line of code.*]
The licenses which components of this software fall under are as
follows.
1) In November 2002, the GraphicsMagick Group created GraphicsMagick
from ImageMagick Studio's ImageMagick and applied the "MIT" style
license:  Copyright (C) 2002 - 2012 GraphicsMagick Group
Permission is hereby granted, free of charge, to any person obtaining a
copy of this software and associated documentation files (the
"Software"), to deal in the Software without restriction, including
without limitation the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of the Software, and to
permit persons to whom the Software is furnished to do so, subject to
the following conditions: The above copyright notice and this permission
notice shall be included in all copies or substantial portions of the
Software.  THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY
KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
2) In October 1999, ImageMagick Studio assumed the responsibility for
the development of ImageMagick (forking from the distribution by E. I.
du Pont de Nemours and Company) and applied a new license:
Copyright (C) 2002 ImageMagick Studio, a non-profit organization
dedicated to making software imaging solutions freely available.
Permission is hereby granted, free of charge, to any person obtaining a
copy of this software and associated documentation files
("ImageMagick"), to deal in ImageMagick without restriction, including
without limitation the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of ImageMagick, and to permit
persons to whom the ImageMagick is furnished to do so, subject to the
following conditions:
The above copyright notice and this permission notice shall be included
in all copies or substantial portions of ImageMagick.
The software is provided "as is", without warranty of any kind, express
or implied, including but not limited to the warranties of
merchantability, fitness for a particular purpose and noninfringement.
In no event shall ImageMagick Studio be liable for any claim, damages or
other liability, whether in an action of contract, tort or otherwise,
arising from, out of or in connection with ImageMagick or the use or
other dealings in ImageMagick.
Except as contained in this notice, the name of the ImageMagick Studio
shall not be used in advertising or otherwise to promote the sale, use
or other dealings in ImageMagick without prior written authorization
from the ImageMagick Studio.
3) From 1991 to October 1999 (through ImageMagick 4.2.9), ImageMagick
was developed and distributed by E. I. du Pont de Nemours and Company:
Copyright 1999 E. I. du Pont de Nemours and Company
Permission is hereby granted, free of charge, to any person obtaining a
copy of this software and associated documentation files
("ImageMagick"), to deal in ImageMagick without restriction, including
without limitation the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of ImageMagick, and to permit
persons to whom the ImageMagick is furnished to do so, subject to the
following conditions:
The above copyright notice and this permission notice shall be included
in all copies or substantial portions of ImageMagick.
The software is provided "as is", without warranty of any kind, express
or implied, including but not limited to the warranties of
merchantability, fitness for a particular purpose and noninfringement.
In no event shall E. I. du Pont de Nemours and Company be liable for any
claim, damages or other liability, whether in an action of contract,
tort or otherwise, arising from, out of or in connection with
ImageMagick or the use or other dealings in ImageMagick.
Except as contained in this notice, the name of the E. I. du Pont de
Nemours and Company shall not be used in advertising or otherwise to
promote the sale, use or other dealings in ImageMagick without prior
written authorization from the E. I. du Pont de Nemours and Company.
4) The GraphicsMagick Base64Decode() and Base64Encode() functions are
based on source code obtained from OpenSSH. This source code is
distributed under the following license:  Copyright (c) 2000 Markus
Friedl.  All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
met:
1.  Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
2.  Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
THIS SOFTWARE IS PROVIDED BY THE AUTHOR \`\`AS IS\'\' AND ANY EXPRESS OR
IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF  MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT,
INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
POSSIBILITY OF SUCH DAMAGE.
5) Many of the pattern images in coders/logo.c are derived from XFig,
which is distributed under the following license:
  | FIG : Facility for Interactive Generation of figures
  | Copyright (c) 1985-1988 by Supoj Sutanthavibul
  | Parts Copyright (c) 1989-2000 by Brian V. Smith
  | Parts Copyright (c) 1991 by Paul King
Any party obtaining a copy of these files is granted, free of charge, a
full and unrestricted irrevocable, world-wide, paid up, royalty-free,
nonexclusive right and license to deal in this software and
documentation files (the "Software"), including without limitation the
rights to use, copy, modify, merge, publish, distribute, sublicense,
and/or sell copies of the Software, and to permit persons who receive
copies from any such party to do so, with the only requirement being
that this copyright notice remain intact.
6) The documentation for the composition operators is copied from the
rlecomp manual page, which is authored by Rod Bogart and John W.
Peterson.  Rlecomp is part of the Utah Raster Toolkit distributed by the
University of Michigan and the University of Utah.  The copyright for
this manual page is as follows: Copyright (c) 1986, University of Utah
This software is copyrighted as noted below.  It may be freely copied,
modified, and redistributed, provided that the copyright notice is
preserved on all copies.
There is no warranty or other guarantee of fitness for this software, it
is provided solely "as is".  Bug reports or fixes may be sent to the
author, who may or may not act on them as he desires.
You may not include this software in a program or other software product
without supplying the source, or without informing the end-user that the
source is available for no extra charge.
If you modify this software, you should include a notice giving the name
of the person performing the modification, the date of modification, and
the reason for such modification.
7) The source code comprising swab.c is originally derived from libtiff
which has the following license:
  | Copyright (c) 1988-1997 Sam Leffler
  | Copyright (c) 1991-1997 Silicon Graphics, Inc.
Permission to use, copy, modify, distribute, and sell this software and
its documentation for any purpose is hereby granted without fee,
provided  that (i) the above copyright notices and this permission
notice appear in all copies of the software and related documentation,
and (ii) the names of Sam Leffler and Silicon Graphics may not be used
in any advertising or publicity relating to the software without the
specific, prior written permission of Sam Leffler and Silicon Graphics.
THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND,
EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY
WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. IN NO
EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR ANY SPECIAL,
INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND, OR ANY
DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER
OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF
LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
OF THIS SOFTWARE.
8) The C++ API known as "Magick++", and which resides in the Magick++
directory, is distributed under the following license: Copyright 1999 -
2003 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
Permission is hereby granted, free of charge, to any person obtaining a
copy of the source files and associated documentation files
("Magick++"), to deal in Magick++ without restriction, including without
limitation of the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of Magick++, and to permit
persons to whom the Magick++ is furnished to do so, subject to the
following conditions:
This copyright notice shall be included in all copies or substantial
portions of Magick++.  The copyright to Magick++ is retained by its
author and shall not be subsumed or replaced by any other copyright.
The software is provided "as is", without warranty of any kind, express
or implied, including but not limited to the warranties of
merchantability, fitness for a particular purpose and noninfringement.
In no event shall Bob Friesenhahn be liable for any claim, damages or
other liability, whether in an action of contract, tort or otherwise,
arising from, out of or in connection with Magick++ or the use or other
dealings in Magick++.
9) The GraphicsMagick HaldClutImagePixels() function in magick/hclut.c
is based on source code from the HaldCLUT package by Eskil Steenberg
(http://www.quelsolaar.com/technology/clut.html) which is distributed
under the following license: Copyright (c) 2005 Eskil Steenberg.  All
rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
met:
1.  Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
2.  Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
THIS SOFTWARE IS PROVIDED BY THE AUTHOR \`\`AS IS\'\' AND ANY EXPRESS OR
IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT,
INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
POSSIBILITY OF SUCH DAMAGE.
10)  GraphicsMagick makes use of third-party "delegate" libraries to
support certain optional features.  These libraries bear their own
copyrights and licenses, which may be more or less restrictive than the
GraphicsMagick license.  For convenience, when GraphicsMagick is bundled
with (or compiled with) "delegate" libraries, a copy of the licenses for
these libraries is provided in a "licenses" directory.
--------------------------------------------------------------------------
...  |copy|   unicode:: U+000A9 ..  COPYRIGHT SIGN
Copyright |copy| GraphicsMagick Group 2002 - 2011

OVERVIEW and LEGAL ISSUES from jpeg.txt file (from GraphicsMagick):
The Independent JPEG Group's JPEG software
==========================================
README for release 6b of 27-Mar-1998
====================================
This distribution contains the sixth public release of the Independent
JPEG Group's free JPEG software.  You are welcome to redistribute this
software and to use it for any purpose, subject to the conditions under
LEGAL ISSUES, below.
Serious users of this software (particularly those incorporating it into
larger programs) should contact IJG at jpeg-info@uunet.uu.net to be
added to our electronic mailing list.  Mailing list members are notified
of updates and have a chance to participate in technical discussions,
etc.
This software is the work of Tom Lane, Philip Gladstone, Jim Boucher,
Lee Crocker, Julian Minguillon, Luis Ortiz, George Phillips, Davide
Rossi, Guido Vollbeding, Ge' Weijers, and other members of the
Independent JPEG
Group.  IJG is not affiliated with the official ISO JPEG standards
committee.
OVERVIEW
========
This package contains C software to implement JPEG image compression and
decompression.  JPEG (pronounced "jay-peg") is a standardized
compression
method for full-color and gray-scale images.  JPEG is intended for
compressing "real-world" scenes; line drawings, cartoons and other
non-realistic images are not its strong suit.  JPEG is lossy, meaning
that the output image is not exactly identical to the input image.
Hence you must not use JPEG if you have to have identical output bits.
However, on typical photographic images, very good compression levels
can be obtained with no visible change, and remarkably high compression
levels are possible if you can tolerate a low-quality image.  For more
details, see the references, or just experiment with various compression
settings.  This software implements JPEG baseline, extended-sequential,
and progressive compression processes.  Provision is made for supporting
all variants of these processes, although some uncommon parameter
settings aren't implemented yet.
For legal reasons, we are not distributing code for the
arithmetic-coding variants of JPEG; see LEGAL ISSUES.  We have made no
provision for supporting the hierarchical or lossless processes defined
in the standard.
We provide a set of library routines for reading and writing JPEG image
files, plus two sample applications "cjpeg" and "djpeg", which use the
library to perform conversion between JPEG and some other popular image
file formats.  The library is intended to be reused in other
applications.
In order to support file conversion and viewing software, we have
included considerable functionality beyond the bare JPEG coding/decoding
capability; for example, the color quantization modules are not strictly
part of JPEG decoding, but they are essential for output to colormapped
file formats or colormapped displays.  These extra functions can be
compiled out of the library if not required for a particular
application.  We have also included "jpegtran", a utility for lossless
transcoding between different JPEG processes, and "rdjpgcom" and
"wrjpgcom", two simple applications for inserting and extracting textual
comments in JFIF files.
The emphasis in designing this software has been on achieving
portability and flexibility, while also making it fast enough to be
useful.  In particular, the software is not intended to be read as a
tutorial on JPEG.  (See the REFERENCES section for introductory
material.)  Rather, it is intended to be reliable, portable,
industrial-strength code.  We do not claim to have achieved that goal in
every aspect of the software, but we strive for it.
We welcome the use of this software as a component of commercial
products.
No royalty is required, but we do ask for an acknowledgement in product
documentation, as described under LEGAL ISSUES.
LEGAL ISSUES
============
In plain English:
1.  We don't promise that this software works.  (But if you find any
bugs, please let us know!)
2.  You can use this software for whatever you want.  You don't have to
pay us.
3.  You may not pretend that you wrote this software.  If you use it in
a program, you must acknowledge somewhere in your documentation that
you've used the IJG code.
In legalese:
The authors make NO WARRANTY or representation, either express or
implied, with respect to this software, its quality, accuracy,
merchantability, or fitness for a particular purpose.  This software is
provided "AS IS", and you, its user, assume the entire risk as to its
quality and accuracy.
This software is copyright (C) 1991-1998, Thomas G. Lane.
All Rights Reserved except as specified below.
Permission is hereby granted to use, copy, modify, and distribute this
software (or portions thereof) for any purpose, without fee, subject to
these conditions:
(1) If any part of the source code for this software is distributed,
then this README file must be included, with this copyright and
no-warranty notice unaltered; and any additions, deletions, or changes
to the original files must be clearly indicated in accompanying
documentation.
(2) If only executable code is distributed, then the accompanying
documentation must state that "this software is based in part on the
work of the Independent JPEG Group".
(3) Permission for use of this software is granted only if the user
accepts full responsibility for any undesirable consequences; the
authors accept NO LIABILITY for damages of any kind.
These conditions apply to any software derived from or based on the IJG
code, not just to the unmodified library.  If you use our work, you
ought to acknowledge us.
Permission is NOT granted for the use of any IJG author's name or
company name in advertising or publicity relating to this software or
products derived from it.  This software may be referred to only as "the
Independent JPEG Group's software".
We specifically permit and encourage the use of this software as the
basis of commercial products, provided that all warranty or liability
claims are assumed by the product vendor.
ansi2knr.c is included in this distribution by permission of L. Peter
Deutsch, sole proprietor of its copyright holder, Aladdin Enterprises of
Menlo Park, CA.
ansi2knr.c is NOT covered by the above copyright and conditions, but
instead by the usual distribution terms of the Free Software Foundation;
principally, that you must include source code if you redistribute it.
(See the file ansi2knr.c for full details.)  However, since ansi2knr.c
is not needed as part of any program generated from the IJG code, this
does not limit you more than the foregoing paragraphs do.
The Unix configuration script "configure" was produced with GNU
Autoconf.
It is copyright by the Free Software Foundation but is freely
distributable.
The same holds for its supporting scripts (config.guess, config.sub,
ltconfig, ltmain.sh).  Another support script, install-sh, is copyright
by M.I.T. but is also freely distributable.
It appears that the arithmetic coding option of the JPEG spec is covered
by patents owned by IBM, AT&T, and Mitsubishi.  Hence arithmetic coding
cannot legally be used without obtaining one or more licenses.  For this
reason, support for arithmetic coding has been removed from the free
JPEG software.  (Since arithmetic coding provides only a marginal gain
over the unpatented Huffman mode, it is unlikely that very many
implementations will support it.)
So far as we are aware, there are no patent restrictions on the
remaining code.
The IJG distribution formerly included code to read and write GIF files.
To avoid entanglement with the Unisys LZW patent, GIF reading support
has been removed altogether, and the GIF writer has been simplified to
produce "uncompressed GIFs".  This technique does not use the LZW
algorithm; the resulting GIF files are larger than usual, but are
readable by all standard GIF decoders.
We are required to state that "The Graphics Interchange Format(c) is the
Copyright property of CompuServe Incorporated.  GIF(sm) is a Service
Mark property of CompuServe Incorporated."

Contents of png.txt file (from GraphicsMagick):
This copy of the libpng notices is provided for your convenience.  In
case of any discrepancy between this copy and the notices in the file
png.h that is included in the libpng distribution, the latter shall
prevail.
COPYRIGHT NOTICE, DISCLAIMER, and LICENSE:
If you modify libpng you may insert additional notices immediately
following this sentence.
libpng versions 1.0.7, July 1, 2000, through 1.2.0, September 1, 2001,
are Copyright (c) 2000 Glenn Randers-Pehrson and are distributed
according to the same disclaimer and license as libpng-1.0.6 with the
following individuals added to the list of Contributing Authors
   Simon-Pierre Cadieux
   Eric S. Raymond
   Gilles Vollant
and with the following additions to the disclaimer:
There is no warranty against interference with your enjoyment of the
library or against infringement.  There is no warranty that our efforts
or the library will fulfill any of your particular purposes or needs.
This library is provided with all faults, and the entire risk of
satisfactory quality, performance, accuracy, and effort is with the
user.
libpng versions 0.97, January 1998, through 1.0.6, March 20, 2000, are
Copyright (c) 1998, 1999 Glenn Randers-Pehrson, and are distributed
according to the same disclaimer and license as libpng-0.96, with the
following individuals added to the list of Contributing Authors:
   Tom Lane
   Glenn Randers-Pehrson
   Willem van Schaik
libpng versions 0.89, June 1996, through 0.96, May 1997, are Copyright
(c) 1996, 1997 Andreas Dilger
Distributed according to the same disclaimer and license as libpng-0.88,
with the following individuals added to the list of Contributing
Authors:
   John Bowler
   Kevin Bracey
   Sam Bushell
   Magnus Holmgren
   Greg Roelofs
   Tom Tanner
libpng versions 0.5, May 1995, through 0.88, January 1996, are Copyright
(c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.  For the purposes of
this copyright and license, "Contributing Authors" is defined as the
following set of individuals:
   Andreas Dilger
   Dave Martindale
   Guy Eric Schalnat
   Paul Schmidt
   Tim Wegner
The PNG Reference Library is supplied "AS IS".  The Contributing Authors
and Group 42, Inc.  disclaim all warranties, expressed or implied,
including, without limitation, the warranties of merchantability and of
fitness for any purpose.  The Contributing Authors and Group 42, Inc.
assume no liability for direct, indirect, incidental, special,
exemplary, or consequential damages, which may result from the use of
the PNG Reference Library, even if advised of the possibility of such
damage.  Permission is hereby granted to use, copy, modify, and
distribute this source code, or portions hereof, for any purpose,
without fee, subject to the following restrictions:
1.  The origin of this source code must not be misrepresented.
2.  Altered versions must be plainly marked as such and must not be
misrepresented as being the original source.
3.  This Copyright notice may not be removed or altered from any source
or altered source distribution.
The Contributing Authors and Group 42, Inc.  specifically permit,
without fee, and encourage the use of this source code as a component to
supporting the PNG file format in commercial products.  If you use this
source code in a product, acknowledgment is not required but would be
appreciated.
A "png_get_copyright" function is available, for convenient use in
"about" boxes and the like:
   printf("%s",png_get_copyright(NULL));
Also, the PNG logo (in PNG format, of course) is supplied in the files
"pngbar.png" and "pngbar.jpg (88x31) and "pngnow.png" (98x31).
Libpng is OSI Certified Open Source Software.  OSI Certified Open Source
is a certification mark of the Open Source Initiative.
Glenn Randers-Pehrson
randeg@alum.rpi.edu
September 1, 2001

Contents of tiff.txt file (from GraphicsMagick):
Copyright (c) 1988-1997 Sam Leffler
Copyright (c) 1991-1997 Silicon Graphics, Inc.
Permission to use, copy, modify, distribute, and sell this software and
its documentation for any purpose is hereby granted without fee,
provided that (i) the above copyright notices and this permission notice
appear in all copies of the software and related documentation, and (ii)
the names of Sam Leffler and Silicon Graphics may not be used in any
advertising or publicity relating to the software without the specific,
prior written permission of Sam Leffler and Silicon Graphics.  THE
SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND,
EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY
WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.  IN NO
EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR ANY SPECIAL,
INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND, OR ANY
DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER
OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF
LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
OF THIS SOFTWARE.

Contents of zlib.txt file (from GraphicsMagick):
zlib 1.1.3 is a general purpose data compression library.  All the code
is thread safe.  The data format used by the zlib library is described
by RFCs (Request for Comments) 1950 to 1952 in the files
ftp://ds.internic.net/rfc/rfc1950.txt (zlib format), rfc1951.txt
(deflate format) and rfc1952.txt (gzip format).  These documents are
also available in other formats from
ftp://ftp.uu.net/graphics/png/documents/zlib/zdoc-index.html
All functions of the compression library are documented in the file
zlib.h (volunteer to write man pages welcome, contact jloup@gzip.org).
A usage example of the library is given in the file example.c which also
tests that the library is working correctly.  Another example is given
in the file minigzip.c.  The compression library itself is composed of
all source files except example.c and minigzip.c.
To compile all files and run the test program, follow the instructions
given at the top of Makefile.  In short "make test; make install" should
work for most machines.  For Unix: "configure; make test; make install"
For MSDOS, use one of the special makefiles such as Makefile.msc.
For VMS, use Make_vms.com or descrip.mms.
Questions about zlib should be sent to <zlib@quest.jpl.nasa.gov>, or to
Gilles Vollant <info@winimage.com> for the Windows DLL version.
The zlib home page is http://www.cdrom.com/pub/infozip/zlib/
The official zlib ftp site is ftp://ftp.cdrom.com/pub/infozip/zlib/
Before reporting a problem, please check those sites to verify that you
have the latest version of zlib; otherwise get the latest version and
check whether the problem still exists or not.
Mark Nelson <markn@tiny.com> wrote an article about zlib for the Jan.
1997 issue of  Dr.  Dobb's Journal; a copy of the article is available
in http://web2.airmail.net/markn/articles/zlibtool/zlibtool.htm
The changes made in version 1.1.3 are documented in the file ChangeLog.
The main changes since 1.1.2 are:
- fix "an inflate input buffer bug that shows up on rare but persistent
  occasions" (Mark)
- fix gzread and gztell for concatenated .gz files (Didier Le Botlan)
- fix gzseek(..., SEEK_SET) in write mode
- fix crc check after a gzeek (Frank Faubert)
- fix miniunzip when the last entry in a zip file is itself a zip file
  (J Lillge)
- add contrib/asm586 and contrib/asm686 (Brian Raiter)
  See http://www.muppetlabs.com/~breadbox/software/assembly.html
- add support for Delphi 3 in contrib/delphi (Bob Dellaca)
- add support for C++Builder 3 and Delphi 3 in contrib/delphi2 (Davide
Moretti)
- do not exit prematurely in untgz if 0 at start of block (Magnus
Holmgren)
- use macro EXTERN instead of extern to support DLL for BeOS (Sander
Stoks)
- added a FAQ file
plus many changes for portability.
Unsupported third party contributions are provided in directory
"contrib".  A Java implementation of zlib is available in the Java
Development Kit 1.1
http://www.javasoft.com/products/JDK/1.1/docs/api/Package-java.util.zip.html
See the zlib home page http://www.cdrom.com/pub/infozip/zlib/ for
details.
A Perl interface to zlib written by Paul Marquess
<pmarquess@bfsec.bt.co.uk>  is in the CPAN (Comprehensive Perl Archive
Network) sites, such as:
ftp://ftp.cis.ufl.edu/pub/perl/CPAN/modules/by-module/Compress/Compress-Zlib*
A Python interface to zlib written by A.M. Kuchling <amk@magnet.com> is
available in Python 1.5 and later versions, see
http://www.python.org/doc/lib/module-zlib.html
A zlib binding for TCL written by Andreas Kupries
<a.kupries@westend.com> is availlable at
http://www.westend.com/~kupries/doc/trf/man/man.html
An experimental package to read and write files in .zip format, written
on top of zlib by Gilles Vollant <info@winimage.com>, is available at
http://www.winimage.com/zLibDll/unzip.html and also in the
contrib/minizip directory of zlib.
Notes for some targets:
- To build a Windows DLL version, include in a DLL project zlib.def,
zlib.rc and all .c files except example.c and minigzip.c; compile with
-DZLIB_DLL
  The zlib DLL support was initially done by Alessandro Iacopetti and is
  now maintained by Gilles Vollant <info@winimage.com>.  Check the zlib
  DLL home page at http://www.winimage.com/zLibDll
  From Visual Basic, you can call the DLL functions which do not take a
  structure as argument: compress, uncompress and all gz* functions.
  See contrib/visual-basic.txt for more information, or get
  http://www.tcfb.com/dowseware/cmp-z-it.zip
- For 64-bit Irix, deflate.c must be compiled without any optimization.
With -O, one libpng test fails.  The test works in 32 bit mode (with the
-n32 compiler flag).  The compiler bug has been reported to SGI.
- zlib doesn't work with gcc 2.6.3 on a DEC 3000/300LX under OSF/1 2.1
it works when compiled with cc.
- on Digital Unix 4.0D (formely OSF/1) on AlphaServer, the cc option
-std1 is necessary to get gzprintf working correctly.  This is done by
configure.
- zlib doesn't work on HP-UX 9.05 with some versions of /bin/cc.  It
works with other compilers.  Use "make test" to check your compiler.
- gzdopen is not supported on RISCOS, BEOS and by some Mac compilers.
- For Turbo C the small model is supported only with reduced performance
to avoid any far allocation; it was tested with -DMAX_WBITS=11
-DMAX_MEM_LEVEL=3
- For PalmOs, see http://www.cs.uit.no/~perm/PASTA/pilot/software.html
Per Harald Myrvang <perm@stud.cs.uit.no>
Acknowledgments:
  The deflate format used by zlib was defined by Phil Katz.  The deflate
  and zlib specifications were written by L. Peter Deutsch.  Thanks to
  all the people who reported problems and suggested various
  improvements in zlib; they are too numerous to cite here.
Copyright notice:
 (C) 1995-1998 Jean-loup Gailly and Mark Adler
This software is provided 'as-is', without any express or implied
warranty.  In no event will the authors be held liable for any damages
arising from the use of this software.
Permission is granted to anyone to use this software for any purpose,
including commercial applications, and to alter it and redistribute it
freely, subject to the following restrictions:
1.  The origin of this software must not be misrepresented; you must not
claim that you wrote the original software.  If you use this software in
a product, an acknowledgment in the product documentation would be
appreciated but is not required.
2.  Altered source versions must be plainly marked as such, and must not
be misrepresented as being the original software.
3.  This notice may not be removed or altered from any source
distribution.
Jean-loup Gailly        Mark Adler
jloup@gzip.org          madler@alumni.caltech.edu
If you use the zlib library in a product, we would appreciate *not*
receiving lengthy legal documents to sign.  The sources are provided for
free but without warranty of any kind.  The library has been entirely
written by Jean-loup Gailly and Mark Adler; it does not include
third-party code.
If you redistribute modified sources, we would appreciate that you
include in the file ChangeLog history information documenting your
changes.

Progress OpenEdge v11.6 may incorporate International Classes for
Unicode (International Components for Unicode) v2.4 from IBM. Such
technology is subject to the following terms and conditions:  ICU
License - The ICU project is licensed under the X License (see also the
x.org original), which is compatible with GPL but non-copyleft.  The
license allows ICU to be incorporated into a wide variety of software
projects using the GPL license.  The X license is compatible with the
GPL, while also allowing ICU to be incorporated into non-open source
products.  License ICU License - ICU 1.8.1 and later COPYRIGHT AND
PERMISSION NOTICE Copyright (c) 1995-2003 International Business
Machines Corporation and others All rights reserved.  Permission is
hereby granted, free of charge, to any person obtaining a copy of this
software and associated documentation files (the "Software"), to deal in
the Software without restriction, including without limitation the
rights to use, copy, modify, merge, publish, distribute, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, provided that the above copyright notice(s) and this
permission notice appear in all copies of the Software and that both the
above copyright notice(s) and this permission notice appear in
supporting documentation.  THE SOFTWARE IS PROVIDED "AS IS", WITHOUT
WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO
THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
NONINFRINGEMENT OF THIRD PARTY RIGHTS. IN NO EVENT SHALL THE COPYRIGHT
HOLDER OR HOLDERS INCLUDED IN THIS NOTICE BE LIABLE FOR ANY CLAIM, OR
ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES WHATSOEVER
RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF
CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. Except as
contained in this notice, the name of a copyright holder shall not be
used in advertising or otherwise to promote the sale, use or other
dealings in this Software without prior written authorization of the
copyright holder.
-------------------------------------------------------------------------
All trademarks and registered trademarks mentioned herein are the
property of their respective owners.

Progress OpenEdge v11.6 may incorporate International Components for
Unicode v4.8.0.  Such technology is subject to the following terms and
conditions: ICU License - ICU 1.8.1 and later COPYRIGHT AND PERMISSION
NOTICE Copyright (c) 1995-2011 International Business Machines
Corporation and others All rights reserved.
Permission is hereby granted, free of charge, to any person obtaining a
copy of this software and associated documentation files (the
"Software"), to deal in the Software without restriction, including
without limitation the rights to use, copy, modify, merge, publish,
distribute, and/or sell copies of the Software, and to permit persons to
whom the Software is furnished to do so, provided that the above
copyright notice(s) and this permission notice appear in all copies of
the Software and that both the above copyright notice(s) and this
permission notice appear in supporting documentation.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF
THIRD PARTY RIGHTS. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS
INCLUDED IN THIS NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT
OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS
OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
PERFORMANCE OF THIS SOFTWARE.
Except as contained in this notice, the name of a copyright holder shall
not be used in advertising or otherwise to promote the sale, use or
other dealings in this Software without prior written authorization of
the copyright holder.
All trademarks and registered trademarks mentioned herein are the
property of their respective owners.

Progress OpenEdge v11.6 may incorporate java.net args4j v2.0.12 from
Kohsuke Kawaguchi.  Such technology is subject to the following terms
and conditions: Copyright (c) 2003, Kohsuke Kawaguchi All rights
reserved.  Redistribution and use in source and binary forms, with or
without modification, are permitted provided that the following
conditions are met:  *Redistributions of source code must retain the
above copyright notice, this list of conditions and the following
disclaimer.  *Redistributions in binary form must reproduce the above
copyright notice, this list of conditions and the following disclaimer
in the documentation and/or other materials provided with the
distribution.  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING,
BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

Progress OpenEdge v11.6 may incorporate Jaxen v1.1-beta-3 from
jaxen.org.  Such technology is subject to the following terms and
conditions:  Project License $Id: LICENSE.txt 1128 2006-02-05 21:49:04Z
elharo $ Copyright 2003-2006 The Werken Company.  All Rights Reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
met: Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
Neither the name of the Jaxen Project nor the names of its contributors
may be used to endorse or promote products derived from this software
without specific prior written permission.  THIS SOFTWARE IS PROVIDED BY
THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
THE POSSIBILITY OF SUCH DAMAGE.

Progress OpenEdge v11.6 may incorporate Jing 20030619 (as part of 1PDT
Progress Extensions for Eclipse (PEX) v2.4.3).  Such technology is
subject to the following terms and conditions:  Jing Copying Conditions.
Copyright (c) 2001-2003 Thai Open Source Software Center Ltd.  All
rights reserved.  Redistribution and use in source and binary forms,
with or without modification, are permitted provided that the following
conditions are met: Redistributions of source code must retain the above
copyright notice, this list of conditions and the following disclaimer.
Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
Neither the name of the Thai Open Source Software Center Ltd nor the
names of its contributors may be used to endorse or promote products
derived from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR
CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. Third-party
JARs - This distribution includes some additional JAR files, which have
their own copying conditions:
saxon.jar Comes from the Saxon 6.5.2 distribution and is covered by
these conditions xercesImpl.jar xml-apis.jar Come from the Xerces-J
2.4.0 distribution and are covered by the Apache Software License
isorelax.jar Comes from ISO RELAX 2003/01/08 distribution and is covered
by the following license: Copyright (c) 2001-2002, SourceForge ISO-RELAX
Project (ASAMI Tomoharu, Daisuke Okajima, Kohsuke Kawaguchi, and MURATA
Makoto) Permission is hereby granted, free of charge, to any person
obtaining a copy of this software and associated documentation files
(the "Software"), to deal in the Software without restriction, including
without limitation the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of the Software, and to
permit persons to whom the Software is furnished to do so, subject to
the following conditions: The above copyright notice and this permission
notice shall be included in all copies or substantial portions of the
Software.  THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY
KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

Progress OpenEdge v11.6 may incorporate Sun's Jmaki framework v1.0 and
Sun's Jmaki framework v1.0.3 from Sun Microsystems, Inc.  Such
technology is subject to the following terms and conditions: Copyright
1994-2006 Sun Microsystems, Inc.  All Rights Reserved.  Redistribution
and use in source and binary forms, with or without modification, are
permitted provided that the following conditions are met: Redistribution
of source code must retain the above copyright notice, this list of
conditions and the following disclaimer.  Redistribution in binary form
must reproduce the above copyright notice, this list of conditions and
the following disclaimer in the documentation and/or other materials
provided with the distribution.  Neither the name of Sun Microsystems,
Inc.  or the names of contributors may be used to endorse or promote
products derived from this software without specific prior written
permission.  This software is provided "AS IS," without a warranty of
any kind.  ALL EXPRESS OR IMPLIED CONDITIONS, REPRESENTATIONS AND
WARRANTIES, INCLUDING ANY IMPLIED WARRANTY OF MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT, ARE HEREBY EXCLUDED. SUN
MICROSYSTEMS, INC. ("SUN") AND ITS LICENSORS SHALL NOT BE LIABLE FOR ANY
DAMAGES SUFFERED BY LICENSEE AS A RESULT OF USING, MODIFYING OR
DISTRIBUTING THIS SOFTWARE OR ITS DERIVATIVES. IN NO EVENT WILL SUN OR
ITS LICENSORS BE LIABLE FOR ANY LOST REVENUE, PROFIT OR DATA, OR FOR
DIRECT, INDIRECT, SPECIAL, CONSEQUENTIAL, INCIDENTAL OR PUNITIVE
DAMAGES, HOWEVER CAUSED AND REGARDLESS OF THE THEORY OF LIABILITY,
ARISING OUT OF THE USE OF OR INABILITY TO USE THIS SOFTWARE, EVEN IF SUN
HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. You acknowledge
that this software is not designed, licensed or intended for use in the
design, construction, operation or maintenance of any nuclear facility.

Progress OpenEdge v11.6 may incorporate Jmaki framework v1.8.0 from Sun
Microsystems, Inc.  Such technology is subject to the following terms
and conditions: Copyright 1994-2006 Sun Microsystems, Inc.  All Rights
Reserved.  Redistribution and use in source and binary forms, with or
without modification, are permitted provided that the following
conditions are met: * Redistribution of source code must retain the
above copyright notice, this list of conditions and the following
disclaimer.  * Redistribution in binary form must reproduce the above
copyright notice, this list of conditions and the following disclaimer
in the documentation and/or other materials provided with the
distribution.  Neither the name of Sun Microsystems, Inc.  or the names
of contributors may be used to endorse or promote products derived from
this software without specific prior written permission.  This software
is provided "AS IS," without a warranty of any kind.  ALL EXPRESS OR
IMPLIED CONDITIONS, REPRESENTATIONS AND WARRANTIES, INCLUDING ANY
IMPLIED WARRANTY OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR
NON-INFRINGEMENT, ARE HEREBY EXCLUDED. SUN MICROSYSTEMS, INC. ("SUN")
AND ITS LICENSORS SHALL NOT BE LIABLE FOR ANY DAMAGES SUFFERED BY
LICENSEE AS A RESULT OF USING, MODIFYING OR DISTRIBUTING THIS SOFTWARE
OR ITS DERIVATIVES. IN NO EVENT WILL SUN OR ITS LICENSORS BE LIABLE FOR
ANY LOST REVENUE, PROFIT OR DATA, OR FOR DIRECT, INDIRECT, SPECIAL,
CONSEQUENTIAL, INCIDENTAL OR PUNITIVE DAMAGES, HOWEVER CAUSED AND
REGARDLESS OF THE THEORY OF LIABILITY, ARISING OUT OF THE USE OF OR
INABILITY TO USE THIS SOFTWARE, EVEN IF SUN HAS BEEN ADVISED OF THE
POSSIBILITY OF SUCH DAMAGES. You acknowledge that this software is not
designed, licensed or intended for use in the design, construction,
operation or maintenance of any nuclear facility.

Progress OpenEdge v11.6 may incorporate JSTL v1.0 from Sun Microsystems,
Inc.  Such technologies are subject to the following terms and
conditions: Code sample License Copyright 1994-2006 Sun Microsystems,
Inc.  All Rights Reserved.  Redistribution and use in source and binary
forms, with or without modification, are permitted provided that the
following conditions are met: Redistribution of source code must retain
the above copyright notice, this list of conditions and the following
disclaimer.  Redistribution in binary form must reproduce the above
copyright notice, this list of conditions and the following disclaimer
in the documentation and/or other materials provided with the
distribution.  Neither the name of Sun Microsystems, Inc.  or the names
of contributors may be used to endorse or promote products derived from
this software without specific prior written permission.  This software
is provided "AS IS," without a warranty of any kind.  ALL EXPRESS OR
IMPLIED CONDITIONS, REPRESENTATIONS AND WARRANTIES, INCLUDING ANY
IMPLIED WARRANTY OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR
NON-INFRINGEMENT, ARE HEREBY EXCLUDED. SUN MICROSYSTEMS, INC. ("SUN")
AND ITS LICENSORS SHALL NOT BE LIABLE FOR ANY DAMAGES SUFFERED BY
LICENSEE AS A RESULT OF USING, MODIFYING OR DISTRIBUTING THIS SOFTWARE
OR ITS DERIVATIVES. IN NO EVENT WILL SUN OR ITS LICENSORS BE LIABLE FOR
ANY LOST REVENUE, PROFIT OR DATA, OR FOR DIRECT, INDIRECT, SPECIAL,
CONSEQUENTIAL, INCIDENTAL OR PUNITIVE DAMAGES, HOWEVER CAUSED AND
REGARDLESS OF THE THEORY OF LIABILITY, ARISING OUT OF THE USE OF OR
INABILITY TO USE THIS SOFTWARE, EVEN IF SUN HAS BEEN ADVISED OF THE
POSSIBILITY OF SUCH DAMAGES. You acknowledge that this software is not
designed, licensed or intended for use in the design, construction,
operation or maintenance of any nuclear facility.

Progress OpenEdge v11.6 may incorporate Looks v2.1.2 from JGoodies.
Such technology is subject to the following terms and conditions: The
BSD License for the JGoodies Looks - Copyright (c) 2001-2007 JGoodies
Karsten Lentzsch.  All rights reserved.  Redistribution and use in
source and binary forms, with or without modification, are permitted
provided that the following conditions are met: o Redistributions of
source code must retain the above copyright notice, this list of
conditions and the following disclaimer.  Redistributions in binary form
must reproduce the above copyright notice, this list of conditions and
the following disclaimer in the documentation and/or other materials
provided with the distribution.  Neither the name of JGoodies Karsten
Lentzsch nor the names of its contributors may be used to endorse or
promote products derived from this software without specific prior
written permission.  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS
AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR  OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE,  EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

Progress OpenEdge v11.6 may incorporate OpenSSL v1.0.1m from The OpenSSL
Project.  Such technology is subject to the following terms and
conditions:  LICENSE ISSUES  ==============   The OpenSSL toolkit stays
under a dual license, i.e.  both the conditions of the OpenSSL License
and the original SSLeay license apply to the toolkit.  See below for the
actual license texts.  Actually both licenses are BSD-style Open Source
licenses.  In case of any license issues related to OpenSSL please
contact openssl-core@openssl.org.
OpenSSL License ---------------
Copyright (c) 1998-2011 The OpenSSL Project.  All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
met:
1.  Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
2.  Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
3.  All advertising materials mentioning features or use of this
software must display the following acknowledgment: "This product
includes software developed by the OpenSSL Project for use in the
OpenSSL Toolkit.  (http://www.openssl.org/)"
4.  The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used
to endorse or promote products derived from this software without prior
written permission.  For written permission, please contact
openssl-core@openssl.org.
5.  Products derived from this software may not be called "OpenSSL" nor
may "OpenSSL" appear in their names without prior written permission of
the OpenSSL Project.
6.  Redistributions of any form whatsoever must retain the following
acknowledgment: "This product includes software developed by the OpenSSL
Project for use in the OpenSSL Toolkit (http://www.openssl.org/)"
THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY
EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE OpenSSL PROJECT OR ITS
CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
This product includes cryptographic software written by Eric Young
(eay@cryptsoft.com).  This product includes software written by Tim
Hudson (tjh@cryptsoft.com).
 Original SSLeay License -----------------------
Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) All rights
reserved.
This package is an SSL implementation written by Eric Young
(eay@cryptsoft.com).  The implementation was written so as to conform
with Netscapes SSL.
This library is free for commercial and non-commercial use as long as
the following conditions are aheared to.  The following conditions apply
to all code found in this distribution, be it the RC4, RSA, lhash, DES,
etc., code; not just the SSL code.  The SSL documentation included with
this distribution is covered by the same copyright terms except that the
holder is Tim Hudson (tjh@cryptsoft.com).
Copyright remains Eric Young's, and as such any Copyright notices in the
code are not to be removed.  If this package is used in a product, Eric
Young should be given attribution as the author of the parts of the
library used.
This can be in the form of a textual message at program startup or in
documentation (online or textual) provided with the package.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
met:
1.  Redistributions of source code must retain the copyright notice,
this list of conditions and the following disclaimer.
2.  Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
3.  All advertising materials mentioning features or use of this
software must display the following acknowledgement: "This product
includes cryptographic software written by Eric Young
(eay@cryptsoft.com)"
The word 'cryptographic' can be left out if the rouines from the library
being used are not cryptographic related :-).
4.  If you include any Windows specific code (or a derivative thereof)
from  the apps directory (application code) you must include an
acknowledgement:
"This product includes software written by Tim Hudson
(tjh@cryptsoft.com)"
THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND ANY EXPRESS OR
IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR
ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
POSSIBILITY OF SUCH DAMAGE.
The licence and distribution terms for any publically available version
or derivative of this code cannot be changed.  i.e.  this code cannot
simply be copied and put under another distribution licence [including
the GNU Public Licence.]

Progress OpenEdge v11.6 may incorporate SLF4J v1.6.2 and SLF4J Log4J
v1.6.1 from QOS.  Such technology is subject to the following terms and
conditions: Copyright (c) 2004-2008 QOS.ch All rights reserved.
Permission is hereby granted, free  of charge, to any person obtaining a
copy  of this  software  and  associated  documentation files  (the
"Software"), to  deal in  the Software without  restriction, including
without limitation  the rights to  use, copy, modify,  merge, publish,
distribute,  sublicense, and/or sell  copies of  the Software,  and to
permit persons to whom the Software  is furnished to do so, subject to
the following conditions: The  above  copyright  notice  and  this
permission  notice  shall  be included in all copies or substantial
portions of the Software.  THE SOFTWARE IS PROVIDED "AS IS", WITHOUT
WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO
THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

Progress OpenEdge v11.6 may incorporate SLF4J v1.7.7 from QOS.  Such
technology is subject to the following terms and conditions: Copyright
(c) 2004-2013 QOS.ch All rights reserved.  Permission is hereby granted,
free  of charge, to any person obtaining a  copy  of this  software  and
associated  documentation files  (the "Software"), to  deal in  the
Software without  restriction, including without limitation  the rights
to  use, copy, modify,  merge, publish, distribute,  sublicense, and/or
sell  copies of  the Software,  and to permit persons to whom the
Software  is furnished to do so, subject to the following conditions:
The  above  copyright  notice  and  this permission  notice  shall  be
included in all copies or substantial portions of the Software.  THE
SOFTWARE IS  PROVIDED  "AS  IS", WITHOUT  WARRANTY  OF ANY  KIND,
EXPRESS OR  IMPLIED, INCLUDING  BUT NOT LIMITED  TO THE  WARRANTIES OF
MERCHANTABILITY,    FITNESS    FOR    A   PARTICULAR    PURPOSE    AND
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
OF CONTRACT, TORT OR OTHERWISE,  ARISING FROM, OUT OF OR IN CONNECTION
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

Progress OpenEdge v11.6 may incorporate STAX API (JSR 173) v3.1.1 from
Woodstox Project.  Such technology is subject to the following terms and
conditions: Copyright (c) 2004-2010, Woodstox Project
(http://woodstox.codehaus.org/)All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
met:
1.  Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
2.  Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
3.  Neither the name of the Woodstox XML Processor nor the names of its
contributors may be used to endorse or promote products derived from
this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER
OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

Progress OpenEdge v11.6 may incorporate Trang 20030619 (as part of 1PDT
Progress Extensions for Eclipse (PEX) v2.4.3).  Such technology is
subject to the following terms and conditions:  Copyright (c) 2002, 2003
Thai Open Source Software Center Ltd.  All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
met: Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
Neither the name of the Thai Open Source Software Center Ltd nor the
names of its contributors may be used to endorse or promote products
derived from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR
CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

Progress OpenEdge v11.6 may incorporate Xpp3 v1.1.3.4 from Indiana
University (as part of 1PDT Progress Extensions for Eclipse (PEX)
v2.4.3).  Such technology is subject to the following terms and
conditions: Indiana University Extreme!  Lab Software License Version
1.1.1 Copyright (c) 2002 Extreme!  Lab, Indiana University.  All rights
reserved.  Redistribution and use in source and binary forms, with or
without modification, are permitted provided that the following
conditions are met: 1.  Redistributions of source code must retain the
above copyright notice, this list of conditions and the following
disclaimer.  2.  Redistributions in binary form must reproduce the above
copyright notice, this list of conditions and the following disclaimer
in the documentation and/or other materials provided with the
distribution.  3.  The end-user documentation included with the
redistribution, if any, must include the following acknowledgment:
"This product includes software developed by the Indiana University
Extreme!  Lab (http://www.extreme.indiana.edu/)." Alternately, this
acknowledgment may appear in the software itself, if and wherever such
third-party acknowledgments normally appear.  4.  The names "Indiana
Univeristy" and "Indiana Univeristy Extreme!  Lab" must not be used to
endorse or promote products derived from this software without prior
written permission.  For written permission, please contact
http://www.extreme.indiana.edu/.  5.  Products derived from this
software may not use "Indiana Univeristy" name nor may "Indiana
Univeristy" appear in their name, without prior written permission of
the Indiana University.  THIS SOFTWARE IS PROVIDED "AS IS" AND ANY
EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHORS, COPYRIGHT HOLDERS
OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

Progress OpenEdge v11.6 may incorporate XStream v1.3.1 from XStream.
Such technology is subject to the following terms and conditions:
Copyright (c) 2003-2006, Joe Walnes Copyright (c) 2006-2007, XStream
Committers All rights reserved.  Redistribution and use in source and
binary forms, with or without modification, are permitted provided that
the following conditions are met: Redistributions of source code must
retain the above copyright notice, this list of conditions and the
following disclaimer.  Redistributions in binary form must reproduce the
above copyright notice, this list of conditions and the following
disclaimer in the documentation and/or other materials provided with the
distribution.  Neither the name of XStream nor the names of its
contributors may be used to endorse or promote products derived from
this software without specific prior written permission.  THIS SOFTWARE
IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

Progress OpenEdge v11.6 may incorporate YAJL v0.4.0 from Lloyd Hilaiel.
Such technology is subject to the following terms and conditions:
Copyright 2007, Lloyd Hilaiel.  Redistribution and use in source and
binary forms, with or without modification, are permitted provided that
the following conditions are met: 1.  Redistributions of source code
must retain the above copyright notice, this list of conditions and the
following disclaimer.  2.  Redistributions in binary form must reproduce
the above copyright notice, this list of conditions and the following
disclaimer in the documentation and/or other materials provided with the
distribution.  3.  Neither the name of Lloyd Hilaiel nor the names of
its contributors may be used to endorse or promote products derived from
this software without specific prior written permission.  THIS SOFTWARE
IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN
NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

Progress OpenEdge v11.6 may incorporate GNU ZLIB v1.1.4 and GNU ZLIB
v1.2.3 from Jean-loup Gailiy & Mark Alder.  Such technology is subject
to the following terms and conditions: Copyright notice: (C) 1995-2002
Jean-loup Gailly and Mark Adler This software is provided 'as-is',
without any express or implied warranty.  In no event will the authors
be held liable for any damages arising from the use of this software.
Permission is granted to anyone to use this software for any purpose,
including commercial applications, and to alter it and redistribute it
freely, subject to the following restrictions: 1.  The origin of this
software must not be misrepresented; you must not claim that you wrote
the original software.  If you use this software in a product, an
acknowledgment in the product documentation would be appreciated but is
not required.  2.  Altered source versions must be plainly marked as
such, and must not be misrepresented as being the original software.  3.
This notice may not be removed or altered from any source distribution.
  Jean-loup Gailly        Mark Adler
  jloup@gzip.org          madler@alumni.caltech.edu

Progress OpenEdge v11.6 may incorporate ZLIB.NET Free v1.0.4 from
ComponentAce.  Such technology is subject to the following terms and
conditions: Copyright (c) 2006-2007, ComponentAce
http://www.componentace.com All rights reserved.  Redistribution and use
in source and binary forms, with or without modification, are permitted
provided that the following conditions are met: Redistributions of
source code must retain the above copyright notice, this list of
conditions and the following disclaimer.  Redistributions in binary form
must reproduce the above copyright notice, this list of conditions and
the following disclaimer in the documentation and/or other materials
provided with the distribution.  Neither the name of ComponentAce nor
the names of its contributors may be used to endorse or promote products
derived from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER
OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

Progress OpenEdge v11.6 may incorporate LALR Parser Generator in Java
v0.10k.  Such technology is subject to the following terms and
conditions:  CUP Parser Generator Copyright Notice, License, and
Disclaimer - Copyright 1996-1999 by Scott Hudson, Frank Flannery, C.
Scott Ananian - Permission to use, copy, modify, and distribute this
software and its documentation for any purpose and without fee is hereby
granted, provided that the above copyright notice appear in all copies
and that both the copyright notice and this permission notice and
warranty disclaimer appear in supporting documentation, and that the
names of the authors or their employers not be used in advertising or
publicity pertaining to distribution of the software without specific,
written prior permission.  The authors and their employers disclaim all
warranties with regard to this software, including all implied
warranties of merchantability and fitness.  In no event shall the
authors or their employers be liable for any special, indirect or
consequential damages or any damages whatsoever resulting from loss of
use, data or profits, whether in an action of contract, negligence or
other tortious action, arising out of or in connection with the use or
performance of this software.

Progress OpenEdge v11.6 may incorporate the RSA Data Security, Inc.  MD5
Message-Digest Algorithm.  Copyright (c)1991-2, RSA Data Security, Inc.
Created 1991.  All rights reserved.  (MD5 Encryption Library v3.0 and
MD5 Encryption vMD5C.C) These technologies are subject to the following
terms and conditions:  RSA Data Security MD5 message-digest algorithm
RSA Data Security, Inc.  MD5C.C - RSA Data Security, Inc., MD5
message-digest algorithm Copyright (C) 1991-2, RSA Data Security, Inc.
Created 1991.  All rights reserved.  License to copy and use this
software is granted provided that it is identified as the "RSA Data
Security, Inc.  MD5 Message-Digest Algorithm" in all material mentioning
or referencing this software or this function.  License is also granted
to make and use derivative works provided that such works are identified
as "derived from the RSA Data Security, Inc.  MD5 Message-Digest
Algorithm" in all material mentioning or referencing the derived work.
RSA Data Security, Inc.  makes no representations concerning either the
merchantability of this software or the suitability of this software for
any particular purpose.  It is provided "as is" without express or
implied warranty of any kind.  These notices must be retained in any
copies of any part of this documentation and/or software.

Updated 9/23/2015