CUSTOM parameter: Difference between revisions

From m204wiki
Jump to navigation Jump to search
m (misc formatting)
m (typos)
 
(11 intermediate revisions by 5 users not shown)
Line 26: Line 26:
<p class="code">CUSTOM=(1,2,3,4,6,8,9,10,11)
<p class="code">CUSTOM=(1,2,3,4,6,8,9,10,11)
</p>
</p>
==Custom settings==
==Custom settings==
<p>
<p>
Line 77: Line 78:


<tr><th>11</th>
<tr><th>11</th>
<td>Controls mixed-case password support for login passwords. If it is set, mixed-case login passwords are allowed for both external and CCASTAT security. If it is not set, all login passwords are uppercase.</td>
<td>Controls mixed-case password support for login passwords. If it is set, mixed-case login passwords are allowed for both external and CCASTAT security. If it is not set, all login passwords are uppercase.
<p>
As of Model&nbsp;204 7.7, this setting also includes support for RACF special characters. The special characters whose support is added are described in IBM APAR OA43999 and listed here: </p>
<p class="code">Ampersand        <tt>&</tt>
Asterisk          <tt>*</tt>
Colon            <tt>:</tt>
Dash              <tt>-</tt>
Equal sign        <tt>=</tt>
Exclamation point <tt>!</tt>
Left arrow        <tt><</tt>
Per cent sign    <tt>%</tt>
Period            <tt>.</tt>
Plus sign        <tt>+</tt>
Question mark    <tt>?</tt>
Right arrow      <tt>></tt>
Underscore        <tt>_</tt>
Vertical bar      <tt>|</tt>
</p></td>
<td>V7.4</td></tr>
<td>V7.4</td></tr>


Line 89: Line 107:


<tr><th>14</th>
<tr><th>14</th>
<td>Require account ID (in addition to userid) on logins.</td>
<td>Require account ID (in addition to user ID) on logins.</td>
<td>V7.5</td></tr>
<td>V7.5</td></tr>


Line 97: Line 115:


<tr><th>16</th>
<tr><th>16</th>
<td>Append the userid of the updating user to the [[Setting up the date-time stamp field|date-time stamp (DTSFN) field]] values.</td>
<td>Append the user ID of the updating user to the [[Setting up the date-time stamp field|date-time stamp (DTSFN) field]] values.</td>
<td>V7.5</td></tr>
<td>V7.5</td></tr>


Line 123: Line 141:
Suppress the last line in the <var>LOGCTL</var> dialog during <var>ADD</var>, <var>CHANGE</var>, and <var>DELETE</var>.
Suppress the last line in the <var>LOGCTL</var> dialog during <var>ADD</var>, <var>CHANGE</var>, and <var>DELETE</var>.
<p class="code"> LOGCTL C USER1
<p class="code"> LOGCTL C USER1
  *** M204.0374: ENTER PASSWORD,PRIVILEGES,PRIORITY                      
  *** M204.0374: ENTER PASSWORD,PRIVILEGES,PRIORITY
  *** M204.0379: Enter terminal list, all, none, add, del, or return    
  *** M204.0379: Enter terminal list, all, none, add, del, or return
                                                                       
 
  USER1       X'10'     LOW    ALL       <b><--------suppress this line</b>  
  USER1     X'10'     LOW    ALL     <b><----suppress this line</b>
  *** M204.0376: Parameters accepted                                    
  *** M204.0376: Parameters accepted  
  *** M204.0345: CCASTAT updated                                        
  *** M204.0345: CCASTAT updated
</p>
</p>
</td>
</td>
Line 137: Line 155:
<var>FILELOAD</var>; skip DDname check for <code>CCA1WK01</code> to allow DFSORT to dynamically allocate sort work datasets. DFSORT will dynamically allocate CCA1WK01-CCA1WK06 unless overridden by <code>//DFSPARM</code>:
<var>FILELOAD</var>; skip DDname check for <code>CCA1WK01</code> to allow DFSORT to dynamically allocate sort work datasets. DFSORT will dynamically allocate CCA1WK01-CCA1WK06 unless overridden by <code>//DFSPARM</code>:
<p class="code">//DFSPARM DD *
<p class="code">//DFSPARM DD *
// SIZE=200M,LIST,LISTX,MSGPRT=ALL,FILSZ=E1800000  
// SIZE=200M,LIST,LISTX,MSGPRT=ALL,FILSZ=E1800000
// OPTION DYNALLOC=(SYSDA,3)    <b><------will override</b></p></td>
// OPTION DYNALLOC=(SYSDA,3)    <b><----will override</b></p></td>
<td>V7.5 <br>(zap 75Z279 required)</td></tr>
<td>V7.5 <br>(zap 75Z279 required)</td></tr>


Line 146: Line 164:


<tr><th>23</th>
<tr><th>23</th>
<td>Always truncate the userid to 10 characters.</td>
<td><var>LOGIN</var> command processing: truncate a login user ID to 10 characters, and allow the login to continue with the password prompt.  Without <var>CUSTOM</var> 23, a user ID longer than 10 characters fails immediately with <code>M204.0349: Login failed</code>,
<td>V7.7;<br />V7.6 (zap 76Z209 required);  
and no password prompt is issued.</td>
V7.5 (zap 75Z426 required)</td></tr>
<td>V7.7;<br />V7.6 (zap 76Z209 required); V7.5 (zap 75Z426 required)</td></tr>
 
<tr><th>24</th>
<td><var>IFSTRTN</var>: Allow embedded blanks in passwords passed via <var>IFSTRTN</var> calls; requires semicolon as password delimiter. Leading and trailing blanks are stripped.</td>
<td>V7.7<br /></td></tr>
 


<tr><th>31</th>
<tr><th>31</th>
Line 209: Line 232:
<table>
<table>
<tr class="head"><th>Print command</th> <th>Results</th></tr>
<tr class="head"><th>Print command</th> <th>Results</th></tr>
<tr><td>PRINT $DATECNV('CYYDDD','YYYYMMDD','96001'</td> <td>19960101</td></tr>
 
<tr><td>PRINT $DATECNV('CYYDDD','YYYYMMDD','196001'</td> <td>20960101</td></tr>
<tr><td><p class="codeInTable">PRINT $DATECNV('CYYDDD','YYYYMMDD','96001')</p></td>  
<tr><td>PRINT $DATECNV('CYYDDD','YYYYMMDD','95001'</td> <td>19950101</td></tr>
<td><p class="codeInTable">19960101</p></td></tr>
<tr><td>PRINT $DATECNV('CYYDDD','YYYYMMDD','095001'</td> <td>19950101</td></tr>
 
<tr><td><p class="codeInTable">PRINT $DATECNV('CYYDDD','YYYYMMDD','196001')</p></td>  
<td><p class="codeInTable">20960101</p></td></tr>
 
<tr><td><p class="codeInTable">PRINT $DATECNV('CYYDDD','YYYYMMDD','95001')</p></td>  
<td><p class="codeInTable">19950101</p></td></tr>
 
<tr><td><p class="codeInTable">PRINT $DATECNV('CYYDDD','YYYYMMDD','095001')</p></td>  
<td><p class="codeInTable">19950101</p></td></tr>
</table>
</table>


Line 218: Line 249:
<table>
<table>
<tr class="head"><th>Print command</th> <th>Results</th></tr>
<tr class="head"><th>Print command</th> <th>Results</th></tr>
<tr><td>PRINT $DATECNV('CYYDDD','YYYYMMDD','96001'</td> <td>******</td></tr>
 
<tr><td>PRINT $DATECNV('CYYDDD','YYYYMMDD','196001'</td> <td>20960101</td></tr>
<tr><td><p class="codeInTable">PRINT $DATECNV('CYYDDD','YYYYMMDD','96001')</p></td>  
<tr><td>PRINT $DATECNV('CYYDDD','YYYYMMDD','95001'</td> <td>******</td></tr>
<td><p class="codeInTable">******</p></td></tr>
<tr><td>PRINT $DATECNV('CYYDDD','YYYYMMDD','095001'</td> <td>19950101</td></tr>
 
<tr><td><p class="codeInTable">PRINT $DATECNV('CYYDDD','YYYYMMDD','196001')</p></td>  
<td><p class="codeInTable">20960101</p></td></tr>
 
<tr><td><p class="codeInTable">PRINT $DATECNV('CYYDDD','YYYYMMDD','95001')</p></td>  
<td><p class="codeInTable">******</p></td></tr>
 
<tr><td><p class="codeInTable">PRINT $DATECNV('CYYDDD','YYYYMMDD','095001')</p></td>  
<td><p class="codeInTable">19950101</p></td></tr>
</table>
</table>


Line 258: Line 297:


====Using CUSTOM=(10)====
====Using CUSTOM=(10)====
Including <code>CUSTOM=10</code> in the <var>CCAIN</var> parameter stream enables you to specify a DDNAME longer than eight characters. The first eight characters will be used.
Including <code>CUSTOM=10</code> in the <var>CCAIN</var> parameter stream enables you to specify a DDname longer than eight characters. The first eight characters will be used.


====Using CUSTOM=(11)====
====Using CUSTOM=(11)====
Line 268: Line 307:


====Using CUSTOM=(12)====
====Using CUSTOM=(12)====
When using an external authorizer (RACF, ACF2, Top Secret), if a user issues a command that requires system manager or system administrator privileges, Model 204 will test for system manager privileges for the logged-in user using the external authorizer and, if that fails, test for system administrator privileges. <code>CUSTOM=(12)</code> changes the order of the tests in such a case so that a user is tested for system administrator privileges before being tested for system manager privileges.  
When using an external authorizer (RACF, ACF2, Top Secret), if a user issues a command that requires system manager or system administrator privileges, Model&nbsp;204 will test for system manager privileges for the logged-in user using the external authorizer and, if that fails, test for system administrator privileges. <code>CUSTOM=(12)</code> changes the order of the tests in such a case so that a user is tested for system administrator privileges before being tested for system manager privileges.  


====Using CUSTOM=(18)====
====Using CUSTOM=(18)====
Before Model 204 7.5, a setting of greater than 16K (16384) was allowed for the <var>[[SSLIBSIZE (JANUS DEFINE parameter)|SSLIBSIZE]]</var> parameter of the <var>JANUS DEFINE</var> command. However, in theory this should have only been necessary for SSL 2 support, as SSL 3 and TLS compliant implementations should only use SSL records of 16K or shorter. Since support for SSL 2 has been disabled in Model 204 7.5 (because SSL 2 is deprecated for its many security flaws), there is seemingly no need for SSL buffers longer than the 16K limit. So, Model 204 7.5 reduces any value greater than 16K for <var>SSLBSIZE</var> and <var>SSLOBSIZE</var> to 16K. This prevents Model&nbsp;204 from pointlessly allocating more storage than is necessary for SSL buffers.
Before Model 204 7.5, a setting of greater than 16K (16384) was allowed for the <var>[[SSLIBSIZE (JANUS DEFINE parameter)|SSLIBSIZE]]</var> parameter of the <var>JANUS DEFINE</var> command. However, in theory this should have only been necessary for SSL 2 support, as SSL 3 and TLS compliant implementations should only use SSL records of 16K or shorter.  
 
Since support for SSL 2 is disabled in Model&nbsp;204 7.5 (because SSL 2 is deprecated for its many security flaws), there is seemingly no need for SSL buffers longer than the 16K limit. So, Model&nbsp;204 7.5 reduces any value greater than 16K for <var>SSLBSIZE</var> and <var>SSLOBSIZE</var> to 16K. This prevents Model&nbsp;204 from pointlessly allocating more storage than is necessary for SSL buffers.


However, it appears that there are a few SSL 3 and TLS implementations in use that send SSL records longer than 16K, despite the standard's proscription against doing so. If a site communicates with such implementations, it might be necessary to set <code>CUSTOM 18</code>, then set <var>SSLIBSIZE</var> (or <var>SSLOBSIZE</var>) to a value greater than 16K.
However, it appears that there are a few SSL 3 and TLS implementations in use that send SSL records longer than 16K, despite the standard's proscription against doing so. If a site communicates with such implementations, it might be necessary to set <code>CUSTOM 18</code>, then set <var>SSLIBSIZE</var> (or <var>SSLOBSIZE</var>) to a value greater than 16K.
Line 295: Line 336:
<p class="code"><nowiki>EDIT 'A''B''C'''</nowiki></p>
<p class="code"><nowiki>EDIT 'A''B''C'''</nowiki></p>
</li>
</li>
<li>If an <var>EDIT</var> command inadvertently contains more than one comma, such as <code>E 0,,PDS6884</code>, you enter an edit session. (Without <code>CUSTOM=42</code>, the <var>EDIT</var> command is rejected). If the edit is saved, a procedure with the name <code>' ,'</code> (that is, space comma) is saved. Subsequently referencing this procedure must include the leading space and enclose the name in single quotation marks:
<p class="code">E ' ,'
DELETE ' ,'</p>
</li>
</ul>
</ul>


[[Category:System parameters]]
[[Category:System parameters]]
[[Category:Parameters]]
[[Category:Parameters]]

Latest revision as of 17:31, 22 January 2018

Enable special modifications to Model 204

Summary

Default value
None
Parameter type
System
Where set
On User 0's parameter line or reset by the system manager
Related products
All
Introduced
Model 204 V6.1 or earlier

Description

The CUSTOM parameter enables special modifications by Rocket Software to standard execution.

You do not have to enclose a single CUSTOM setting with parentheses, for example:

CUSTOM=8

Multiple values must be specified in a list and enclosed in parentheses, for example:

CUSTOM=(1,2,3,4,6,8,9,10,11)

Custom settings

The custom settings and usage are shown in the following table.


SettingUsageIntroduced
1 Century can be omitted on date input. V4.1
2 Century is omitted on date output. V4.1
3 $DAYI should return day values 2 through 8 (instead of 1 through 7). $DAY should equate values 2 through 8 as Monday through Sunday, and full-length day names should be returned. Value 9 returns MON-FRI. V4.1
4

DISPLAY FIELD fieldname

Defaults to:

DISPLAY FIELD (DDL ABBREV) fieldname

V4.1
5 Print debugging information for all MQ/204 requests. V4.2
6 The LOGOUT message is:

M204.2628: uuuuuuuuuu aaaaaaaaaa LOGOUT yy mmm dd hh.mm

V5.1
7 Obsolete as of Model 204 V7.1. V5.1
8 Connect clients can issue the LOGIN command from Remote Command Line (RCL) threads. Clients can login with a new user name without closing the current connection to start another one. V6.1
9 Suppresses all output from all forms of the PRIORITY command. V7.1
10 Allows file name entry using more than eight characters. V7.4
11 Controls mixed-case password support for login passwords. If it is set, mixed-case login passwords are allowed for both external and CCASTAT security. If it is not set, all login passwords are uppercase.

As of Model 204 7.7, this setting also includes support for RACF special characters. The special characters whose support is added are described in IBM APAR OA43999 and listed here:

Ampersand & Asterisk * Colon : Dash - Equal sign = Exclamation point ! Left arrow < Per cent sign % Period . Plus sign + Question mark ? Right arrow > Underscore _ Vertical bar |

V7.4
12 Swap order of system manager and system administrator test with external authorizer. Available as of Model 204 7.5. V7.5
13 Close VSAM files even if CLOSE=EOJ specified. V7.5
14 Require account ID (in addition to user ID) on logins. V7.5
15 Don't display user number on console (WTO) messages. V7.5
16 Append the user ID of the updating user to the date-time stamp (DTSFN) field values. V7.5
17 Preserves plus sign (+) in ASA column 1 for VBA datasets and USE PRINTER output to allow for overtyping. Line must contain plus sign in column 1, followed by blank, followed by anything:

PRINT '+ anything'

V7.5
18 Allow SSLIBSIZE (JANUS DEFINE parameter) value greater than 16K (16384). V7.5
19

Change the Login failed message from:

M204.0349: Login failed

To:

M204.0349: Enter logoff

V7.5
(zap 75Z279 required)
20

Suppress the last line in the LOGCTL dialog during ADD, CHANGE, and DELETE.

LOGCTL C USER1 *** M204.0374: ENTER PASSWORD,PRIVILEGES,PRIORITY *** M204.0379: Enter terminal list, all, none, add, del, or return USER1 X'10' LOW ALL <----suppress this line *** M204.0376: Parameters accepted *** M204.0345: CCASTAT updated

V7.5
(zap 75Z279 required)
21

FILELOAD; skip DDname check for CCA1WK01 to allow DFSORT to dynamically allocate sort work datasets. DFSORT will dynamically allocate CCA1WK01-CCA1WK06 unless overridden by //DFSPARM:

//DFSPARM DD * // SIZE=200M,LIST,LISTX,MSGPRT=ALL,FILSZ=E1800000 // OPTION DYNALLOC=(SYSDA,3) <----will override

V7.5
(zap 75Z279 required)
22 Use BATCH204 return codes if NUSERS is greater than 1. V7.5
(zap 75Z279 required)
23 LOGIN command processing: truncate a login user ID to 10 characters, and allow the login to continue with the password prompt. Without CUSTOM 23, a user ID longer than 10 characters fails immediately with M204.0349: Login failed, and no password prompt is issued. V7.7;
V7.6 (zap 76Z209 required); V7.5 (zap 75Z426 required)
24 IFSTRTN: Allow embedded blanks in passwords passed via IFSTRTN calls; requires semicolon as password delimiter. Leading and trailing blanks are stripped. V7.7
31 Extra bug checks for Ordered Index leaf pages. V7.5
32 Extra bug checks for all Ordered Index pages. V7.5
33 Issue a message (M204.1223) for every critical file resource wait. V7.5
34 Suppress APSY load stats from the journal. V7.5
35 Do not drain a subsystem when a user encounters a hard restart inside the subsystem. V7.5
36 An Insert statement with occurrence number 0 should place the inserted occurrence at the start of repeatable fields in the record. V7.5
37 Change M204.1076 (Do you really want to end the run) to indicate the job name rather than the location. V7.5
38 Allow any (non-privileged) user to reset LAUDIT. V7.5
39 Echo any MSGCTL command in a M204.0131 message. V7.5
40 Allow field constraints (UNIQUE, At-MOST-ONE) in non-TBO (FRCVOPT X'08' bit on) files. V7.5
41 Record data on successful RACF user logins by setting LOG=ALL in the SAF parameter list. The login data is shown in RACFRW batch reports. V7.7;
V7.6 (zap 76Z201 required);
V7.5 (zap 75Z420 required)
42 Allow the editing of procedure names containing a comma, equal sign, space, single quote, and/or semicolon. V7.7

Using the CUSTOM=(1) parameter with date conversions

If CUSTOM=(1) is added to the User 0 CCAIN stream or set later using the RESET command, the following occurs: If a CYY format is specified for conversion and only a YY input is supplied, the conversion is successfully completed by using the CENTSPLT and BASECENT parameters.

Examples

If CUSTOM=1, BASECENT=19, and CENTSPLT=95, then:

Print command Results

PRINT $DATECNV('CYYDDD','YYYYMMDD','96001')

19960101

PRINT $DATECNV('CYYDDD','YYYYMMDD','196001')

20960101

PRINT $DATECNV('CYYDDD','YYYYMMDD','95001')

19950101

PRINT $DATECNV('CYYDDD','YYYYMMDD','095001')

19950101

If CUSTOM=1 is omitted, BASECENT=19, and CENTSPLT=95, then:

Print command Results

PRINT $DATECNV('CYYDDD','YYYYMMDD','96001')

******

PRINT $DATECNV('CYYDDD','YYYYMMDD','196001')

20960101

PRINT $DATECNV('CYYDDD','YYYYMMDD','95001')

******

PRINT $DATECNV('CYYDDD','YYYYMMDD','095001')

19950101

Using CUSTOM=(2)

If CUSTOM=(2) is added to the User 0 CCAIN stream or set later using the RESET command, the following occurs: If a CYY-format is specified for output conversion and the C (century) indicator is zero, then C is eliminated. This C elimination is true for all $DATE… function calls.

For example:

If CUSTOM=(2) then: PRINT $DATEJ(2) prints 97.001

But if CUSTOM=(2) is omitted, then PRINT $DATEJ(2) prints 097.001.

Using CUSTOM=(6)

Using this option you can control the messages for the LOGIN and LOGOUT commands independently.

  • When CUSTOM is not set to 6, BATCH2 and IFAM2 applications cannot receive the return code from Model 204, if the command MSGCTL M204.0353 NOTERM is issued in the Online. Model 204 sends the return code to BATCH2 and IFAM2 User Language applications as a hidden field in the LOGOUT message, and the application must receive the LOGOUT message to obtain the return code.
  • When CUSTOM is set to 6, you can suppress M204.0353 and leave M204.2628 active and available for a BATCH2 or IFAM2 User Language application to receive the return code from the Online.

Using CUSTOM=(8)

The CUSTOM=(8) option lets Connect customers use one connection for multiple users.

  • If CUSTOM=(8) is not set, RCL behaves as in releases of Model 204 before V6R1.0; users receive the following message when issuing the LOGIN command:

    M204.1035:COMMAND INVALID FROM PROCEDURE

  • If CUSTOM=(8) is set, any commands that are invalid for RCL receive the following message:

    M204.2597 command COMMAND INVALID FROM AN RCL THREAD

Using CUSTOM=(9)

The CUSTOM=(9) option lets you suppress all output from all forms of the PRIORITY command.

Using CUSTOM=(10)

Including CUSTOM=10 in the CCAIN parameter stream enables you to specify a DDname longer than eight characters. The first eight characters will be used.

Using CUSTOM=(11)

Including CUSTOM=11 in the CCAIN parameter stream enables you to specify login passwords containing lowercase characters:

//CCAIN DD * LOGADD=200,CUSTOM=11

Using CUSTOM=(12)

When using an external authorizer (RACF, ACF2, Top Secret), if a user issues a command that requires system manager or system administrator privileges, Model 204 will test for system manager privileges for the logged-in user using the external authorizer and, if that fails, test for system administrator privileges. CUSTOM=(12) changes the order of the tests in such a case so that a user is tested for system administrator privileges before being tested for system manager privileges.

Using CUSTOM=(18)

Before Model 204 7.5, a setting of greater than 16K (16384) was allowed for the SSLIBSIZE parameter of the JANUS DEFINE command. However, in theory this should have only been necessary for SSL 2 support, as SSL 3 and TLS compliant implementations should only use SSL records of 16K or shorter.

Since support for SSL 2 is disabled in Model 204 7.5 (because SSL 2 is deprecated for its many security flaws), there is seemingly no need for SSL buffers longer than the 16K limit. So, Model 204 7.5 reduces any value greater than 16K for SSLBSIZE and SSLOBSIZE to 16K. This prevents Model 204 from pointlessly allocating more storage than is necessary for SSL buffers.

However, it appears that there are a few SSL 3 and TLS implementations in use that send SSL records longer than 16K, despite the standard's proscription against doing so. If a site communicates with such implementations, it might be necessary to set CUSTOM 18, then set SSLIBSIZE (or SSLOBSIZE) to a value greater than 16K.

Using CUSTOM=(42)

Before Model 204 7.7, a procedure with a name containing the following special characters could be created and displayed, but it could not be edited:

comma (,)
equal sign (=)
space ( )
single quote (')
semicolon (;)

If CUSTOM 42 is turned on, you can edit a procedure name containing these special characters, such as A B C, which contains spaces. To edit procedure names containing special characters:

  • Enclose the name in single quotation marks:

    EDIT 'A B C' EDIT 'AB=CD'

  • If the name contains single quotes, such as A'B'C', you must use two quotation marks for each single quote within the name (and enclose the name in single quotation marks):

    EDIT 'A''B''C'''

  • If an EDIT command inadvertently contains more than one comma, such as E 0,,PDS6884, you enter an edit session. (Without CUSTOM=42, the EDIT command is rejected). If the edit is saved, a procedure with the name ' ,' (that is, space comma) is saved. Subsequently referencing this procedure must include the leading space and enclose the name in single quotation marks:

    E ' ,' DELETE ' ,'