Issue 32045  —   AS/400 CCSID 930 (Katakana) causes lowercase DLL function calls to fail

Status:   Planned for resolution in 10.4.01

Solution available in patch(es):      10.3.02.024    9.7.05.037

Description:

 Title:
 ------
 AS/400 CCSID 930 (Katakana) causes lowercase DLL function calls to fail

 Environment:
 ------------
 +Uniface Version : 10.3.02.xxx / 9.7.05.xxx
 +Operating System : AS/400
 +Database : Any

 Summary:
 --------
 When using CCSID 930 (Japanese) to execute a Uniface 10 job, it will fail with
 'Could not load DLM API' followed by 'Unable to open IFS:liblssrv64.so;64;
 error Could not start PASE..'
 It appears that there is a license issue, however, this is not the case and is
 due to CCSID(930) having all lowercase characters at different codepoints than
 all other CCSID's.

 So when a function call is made to the DLM service program that will start the
 license check, the function name is incorrectly converted to EBCDIC, causing
 the entry point no to be found. This causes the job to fail.

 This occurs on 10.3.02.xxx. With 9.7.05.xxx it is not as bad since DLM is not
 dynamically loaded, but user 3GL is, so if user 3GL is used that contains
 functions with lowercase characters in them, these will fail to activate.

 Reproduction scenario for 10.3.02:
 ---------------------

 Make sure CCSID 930 is specfied in the compiled STARTUP and in usys.asn,
 $sys_charset
 Start urouter subsystem
 Expected Result:
 ----------------
 Job will check out the appropriate license and execute as expected

 Actual Result:
 --------------
 Job will fail and messages such as 'Could not load DLM API' and 'Unable to open
 IFS:liblssrv64.so;64' show up in the logging.

 Workaround:
 -----------
 Avoid using CCSID 930, and use CCSID 939 instead.

Workaround:

 User CCSID 939 instead

Notes: