JANUS DEFINE: Difference between revisions

From m204wiki
Jump to navigation Jump to search
m (1 revision)
No edit summary
Line 1: Line 1:
{{DISPLAYTITLE:JANUS DEFINE}}
{{DISPLAYTITLE:JANUS DEFINE}}
<span class="pageSubtitle"><section begin="desc" />DEFINE<section end="desc" /></span>
<span class="pageSubtitle"><section begin="desc" />Define and set characteristics of a Janus port.<section end="desc" /></span>


.im jandef :h3 id=defxmps.Janus port processing and examples .im jprtxmp
==Overview==


[[Category:Janus commands|JANUS DEFINE]]
The JANUS DEFINE command is used to specify the characteristics of a Janus port. It defines the usage of the named port as one of the following:
[[Category:Sirius commands]]
 
<ul>
<li>Access by IFDIAL clients</li>
<li>Open Server or Open Client connections</li>
<li>Specialty Data Store access</li>
<li>Web access</li>
<li>FTP server connections</li>
<li>Telnet server connections</li>
<li>Generic Sockets usage -- with the ''Model 204'' online either requesting (CLSOCK) or accepting (SRVSOCK) the connection</li>
<li>Connection between the ''[[Janus Debugger]]'' or ''[[Sirius Debugger]]'' workstation GUI and programs being debugged in ''Model 204''</li>
</ul>
 
For any except a CLSOCK or DEBUGGERCLIENT port, this subcommand associates a service with a TCP/IP port number.
 
Among the characteristics specified by JANUS DEFINE is whether the port will use Secure Sockets Layer (SSL) for encrypted communications.
 
See [[JANUS DEFINE]] for a discussion of when you need to issue the JANUS DEFINE command.
 
The JANUS DEFINE command syntax is described below.
 
==Syntax==
 
<p class="syntax"><section begin="syntax" /> JANUS DEFINE portname portnum type maxcon other_parms...
<section end="syntax" /></p>
<p class="caption">JANUS DEFINE command syntax
</p>
 
Where each of the first four parameters is positional and required:
 
<table class="syntaxTable">
 
<tr><th>portname</th>
<td>A 1- to 30-character name by which the port is identified. It is used on other JANUS subcommands, such as JANUS START and [[JANUS DISPLAY]]. It is used on the [[$Sock_Conn]] function or the Socket object New constructor to name the CLSOCK port defining a connection.</td></tr>
 
<tr><th>portnum</th>
<td>The TCP/IP port number at which the service is available.  ''portnum'' is the server port number, and it must be between 1 and 65535, inclusive. This number is used by client applications on the network when they require access to the [[Model 204]] server. The server port number must be unique on the host. Several "well-known" port numbers for various TCP/IP services (for example, 53 for ''nameserver'' should be avoided, unless you are implementing that service using [[Janus Sockets]].
 
For CLSOCK and DEBUGGERCLIENT ports, an asterisk (*) is used as the port number, since they are used to create, rather than accept, connections, and these port numbers are not determined until the time of the connection. For WEBSERV ports, 80 is customary for non-secure HTTP and 443 for secure HTTP (SSL); you can, however, use other numbers for WEBSERV ports if required.
 
For FTPSERVER ports, 21 is customary; you can, however, use other numbers for FTPSERVER ports if required.</td></tr>
 
<tr><th>type</th>
<td>Port type. Valid types are:
 
<table class="syntaxTable">
<tr><th>CLSOCK</th>
<td>A ''[[Janus Sockets]]'' client socket port. If non-system administrator users are to use a CLSOCK port, rules must be provided to allow them to initiate outgoing connections on the port.</td></tr>
<tr><th>DEBUGGERCLIENT</th>
<td>A ''[[Sirius Debugger]]'' client socket port.</td></tr>
<tr><th>DEBUGGERSERVER</th>
<td>A ''[[Janus Debugger]]'' or ''[[Sirius Debugger]]'' server socket port.</td></tr>
<tr><th>FTPSERVER</th>
<td>A Janus FTP Server application.</td></tr>
<tr><th>IFDIAL</th>
<td>''[[Janus IFDIAL Library]]'' applications.</td></tr>
<tr><th>OAS</th>
<td>Synonym for type SDS.</td></tr>
<tr><th>OMNI</th>
<td>Synonym for type SDS.</td></tr>
<tr><th>OPENSERV</th>
<td>Open Server applications; Open Client connections are outward-bound connections on an OPENSERV port.</td></tr>
<tr><th>SRVSOCK</th>
<td>A ''[[Janus Sockets]]'' server socket port.</td></tr>
<tr><th>SDS</th>
<td>A Specialty Data Store port.</td></tr>
<tr><th>TNSERV</th>
<td>A Janus Telnet Server port. Only available in ''[[Sirius Mods]]'' Version 6.9 and later.</td></tr>
<tr><th>WEBSERV</th>
<td>A World Wide Web Server port.
</td></tr>
</table>
 
For ''[[Janus Open Client]]'' usage, you must define one or more ports of type SDS or OPENSERV, and you may need to use the MASTER parameter on a port definition.  For JANUS server ports, specify SRVSOCK; for JANUS client ports, specify CLSOCK; for JANUS FTP server ports, specify FTPSERVER; for JANUS telnet server ports, specify TNSERV. TNSERV ports require that the system TNDEV parameter be set to indicate what IODEV daemon threads switch to while in full-screen mode for a telnet connection.
</td></tr>
 
<tr><th>maxcon</th>
<td>Maximum number of simultaneous active connections to be allowed on the port. This number must be less than or equal to the number of TCP/IP connections for which the site is licensed. Before ''[[Sirius Mods]]'' Version 6.8, the '''maxcon''' value had to be less than or equal to the number of sdaemons defined to the online, except for non-CLSOCK ports. If you are defining multiple ports for your site, however, the sum of the '''maxcon''' connections you define is allowed to be greater than the number for which the site is licensed. In this case, ''[[Janus Web Server]]'' will automatically prevent any connection that would exceed the site license limit. For Janus Open Client, note that a server-to-server connection requires an extra connection for the '''site handler'''. Thus, a single connection to a remote server would use two connections, while 10 connections to a remote server would use 11.  Under ''[[Sirius Mods]]'' Version and later, restrictions on the allowed values for maxcon are no longer present, but licensed thread limits are still enforced at the time a connection is made. You can use the JANUS TSTATUS command (:hdref refid=tstat.) to view the thread usage and connection limits for your port, and you can use the [[JANUS LIMITS]] command to view similar information for your Online.</td></tr>
 
<tr><th>other_parms</th>
<td>A set of blank-delimited parameters that describe the characteristics of and processing to be performed on the port. These parameters are keywords, sometimes followed by values, and they are described individually in the subsections that follow. .el .do They are all optional, except: are not allowed
 
<ul>
<li>for OPENSERV ports, CMD is required
<li>For CLSOCK ports, REMOTE is required
<li>For SRVSOCK ports, CMD is required
<li>For FTPSERVER ports, OPEN, CMD, NEWSESOPEN, and NEWSESCMD
</ul>
</td></tr>
</table>
 
<div id="parmlist">
==JANUS DEFINE parameters==
</div>
 
<table class="syntaxTable">
<tr><td>[[ALLOCC]]</td><td>Indicates that input, output and request buffers are to be allocated when a connection is established and are to be freed when the connection is closed.</td></tr>
<tr><td>[[ANONYMOUS]]</td><td> The ANONYMOUS parameter must be followed by a number '''maxanon''' or an asterisk (*):</td></tr>
<tr><td>[[ANONUSER]]</td><td> ANONUSER may be specified only if ANONYMOUS is also specified.</td></tr>
<tr><td>[[AUDTERM]]</td><td>This parameter is used to control whether the server thread sends "non-compiler terminal output" to the audit trail.</td></tr>
<tr><td>[[AUTODONE]]</td><td>This parameter requests [[Janus Web Server]] to treat a return to command mode after all port and ON rules CMDs have been processed as an implicit $Web_Done.</td></tr>
<tr><td>[[AUTOLOAD]]</td><td>This parameter, indicates that the incore copy of Janus tables are to be reloaded at the first request subsequent to a table redefinition.</td></tr>
<tr><td>[[AUTOON]]</td><td>This parameter requests [[Janus Web Server]] to issue an implicit $Web_On before executing the commands specified in a JANUS WEB ON rule.</td></tr>
<tr><td>[[AUTOSYS]]</td><td></td></tr>
<tr><td>[[BINARY]]</td><td> This parameter requests [[Janus Sockets]] to send and receive strings with $SOCK_ functions or Socket methods using no translation.
</td></tr>
<tr><td>[[BINDADDR]]</td><td>Specifies the IP address to which the port will be bound, if the host (machine) on which [[Model 204]] is running supports multiple IP addresses.</td></tr>
<tr><td>[[BSIZE]]</td><td>Specifies the size of the TCP/IP input and output buffers.</td></tr>
<tr><td>[[CHAR]]</td><td>This parameter requests [[Janus Sockets]] to translate strings (sent and received with [[Janus Sockets]] functions or methods) between the internal representation within [[Model 204]] (EBCDIC) and the character representation used by the remote end of the connection.</td></tr>
<tr><td>[[CHARSET]]</td><td>Indicates, to the remote host, the character set being used by Janus.</td></tr>
<tr><td>[[CLIENTSOCKET]]</td><td>This parameter names the client socket port to use to open connections back to the FTP client, if the client requests active file transfers.</td></tr>
<tr><td>[[CLOSEIMMED]]</td><td>Indicates that if a lost connection is noticed by the Janus PST, the PST should BUMP the [[Model 204]] thread associated with the connection immediately.</td></tr>
<tr><td>[[CLOSEREAD]]</td><td> CLOSEIMMED (:hdref refid=climm.) indicates that if a lost connection is noticed by the Janus PST, the PST should BUMP the [[Model 204]] thread associated with the connection immediately.</td></tr>
<tr><td>[[CMD]]</td><td>Specifies the [[Model 204]] commands to be executed after the files and groups specified in the OPEN parameter are opened.</td></tr>
<tr><td>[[COMPRESS]]</td><td>Indicates the type of compression to be performed on outgoing Janus Web Server data.</td></tr>
<tr><td>[[CR]]</td><td>Indicates that lines of text data sent to a browser should be separated by the ASCII carriage return character (X'0D').</td></tr>
<tr><td>[[CRLF]]</td><td>Indicates that lines of text data sent to a browser should be separated by the ASCII carriage return and line feed characters (X'0D0A').</td></tr>
<tr><td>[[CSSINSP]]</td><td>Indicates whether or not Janus Web Legacy support is to insert a space to represent the attribute byte on a 3270 screen.</td></tr>
<tr><td>[[CSSTITLEDIV and CSSTITLESPAN]]</td><td>Indicates whether or not Janus Web Legacy support is to use a &lt;div> (CSSTITLEDIV) or &lt;span> (CSSTITLESPAN) tag for the title line of a screen.</td></tr>
<tr><td>[[DBCS and NODBCS]]</td><td>Indicates whether or not the [[Model 204]] DBCS parameter is to be automatically set to 1 on requests to a WEBSERV port.</td></tr>
<tr><td>[[DEBPORTCMD and NODEBPORTCMD]]</td><td>Indicates whether the commands specified in the CMD clause of the JANUS DEFINE command are to be run on threads debugging requests to the port with the JANUSDEBUG command</td></tr>
<tr><td>[[DEBPORTOPEN and NODEBPORTOPEN]]</td><td>Indicates whether the files and groups specified in the OPEN clause of the JANUS DEFINE command are to be opened on threads debugging requests.</td></tr>
<tr><td>[[EXEC2RPC]]</td><td>Indicates that language requests should be converted to RPCs.</td></tr>
<tr><td>[[FDWOL]]</td><td>Specifies that all FINDs done by the [[Janus Omni]] are to be done as FIND WITHOUT LOCKS.</td></tr>
<tr><td>[[FORMPOSTWAIT]]</td><td> The default value for FORMPOSTWAIT is 900.</td></tr>
<tr><td>[[FORMREDIRWAIT]]</td><td> Since browsers typically respond immediately to a redirect by doing a GET for the target URL without any user interaction, the time between a redirect and the GET should typically be very small.</td></tr>
<tr><td>[[FINCLOSE]]</td><td> If FINCLOSE is not specified, or if NOFINCLOSE is specified, a [[Janus Sockets]] thread remains in-use and does not recognize a FIN indicator sent by a remote partner until the [[Janus Sockets]] application tries to receive data on the connection.</td></tr>
<tr><td>[[HIGHPRIORITY]]</td><td> This parameter adjusts the [[Model 204]] scheduling priority of [[Janus Web Server]] threads by starting them at the upper end of their priority range rather than at their default priority.</td></tr>
<tr><td>[[HTTPVERSION]]</td><td> This parameter sets the HTTP version returned to the browser by [[Janus Web Server]].</td></tr>
<tr><td>[[IBSIZE]]</td><td>Specifies the size of the TCP/IP input buffer.</td></tr>
<tr><td>[[INPUTTIMEOUT]]</td><td> This parameter, new as of [[Sirius Mods]] Version 6.8, tells [[Janus Web Server]] to use a different timeout value for input (receiving the web request) than for output.</td></tr>
<tr><td>[[JANCAT]]</td><td>Specifies the name of the file that contains the [[Model 204]] to SQL mappings.</td></tr>
<tr><td>[[KEEPALIVE]]</td><td> The KEEPALIVE parameter indicates the number of seconds a TCP/IP connection is to be held open after an HTTP request on that connection.</td></tr>
<tr><td>[[LANGUAGE]]</td><td>Indicates, to the remote host, the language being used by Janus.</td></tr>
<tr><td>[[LEGBL,]]</td><td> This parameter has no effect if an external style sheet is not used (CSS parameter in JANUS WEB SCREEN rules).</td></tr>
<tr><td>[[LEGCSS and NOLEGCSS]]</td><td> Almost all browsers correctly support the CSS used by</td></tr>
<tr><td>[[LEGJS and NOLEGJS]]</td><td> While almost all browsers correctly support the simple :hp1.JavaScript:ehp1. used by Janus Web Legacy support, and this :hp1.JavaScript:ehp1. makes the pages generated by Janus Web Legacy support considerably more "friendly", the NOLEGJS parameter can be specified if a site has rules against the use of ''JavaScript''.</td></tr>
<tr><td>[[LF]]</td><td>Indicates that lines of text data sent to a browser should be separated by the ASCII line feed character (X'0A-
').</td></tr>
<tr><td>[[LINEND]]</td><td>Specifies the hex value of a string to be sent by [[Janus Sockets]] at the end of each "line;" that is, appended to the string sent by the $SOCK_SENDLN functions or after each output line captured on the socket.</td></tr>
<tr><td>[[LOG]]</td><td>Specifies that all [[Janus Web Server]] requests for the port are to be logged to a sequential dataset whose DDNAME is specified by ''xxxx''.</td></tr>
<tr><td>[[LOGAPPEND]]</td><td>Indicates that the [[Janus Web Server]] log dataset for the port is to be opened in APPEND mode.</td></tr>
<tr><td>[[LOGCLOSET]]</td><td>Indicates how often the [[Janus Web Server]] log dataset is to be "closed", that is how often the DSCB is to be updated for the log dataset.</td></tr>
<tr><td>[[LOGGMT]]</td><td>Indicates that the time stamps in the [[Janus Web Server]] log dataset for the port are to be represented as GMT instead of local time.</td></tr>
<tr><td>[[LOGMSGI]]</td><td>This parameter prevents [[Janus Web Server]] from saving [[Model 204]] messages issued during logon for a web user.</td></tr>
<tr><td>[[MASTER]]</td><td>Specifies that this is the default port for :hp1.outgoing:ehp1.</td></tr>
<tr><td>[[MAXCURS]]</td><td>Specifies the maximum number of cursors that can be opened for a single [[Janus Omni]] connection.</td></tr>
<tr><td>[[MAXIPSES]]</td><td>Specifies the maximum number of ''Janus Web Legacy Support'' sessions maintained per IP address.</td></tr>
<tr><td>[[MAXREC]]</td><td>Specifies the maximum record length for input records on a Janus IFDIAL port.</td></tr>
<tr><td>[[MAXSAVE]]</td><td>Specifies the maximum number of compiled SQL requests to save in CCATEMP.</td></tr>
<tr><td>[[MAXTEMP]]</td><td>Specifies the maximum number of CCATEMP pages allowed to be used by a web request for holding input (file upload) and output (dynamically generated HTML) data.</td></tr>
<tr><td>[[MSGSEND and NOMSGSEND]]</td><td> These parameters are available in [[Sirius Mods]] Version 6.0 and later.</td></tr>
<tr><td>[[MSG204]]</td><td>Specifies the Sybase message number to be used to return terminal output to the client.</td></tr>
<tr><td>[[MSG204L]]</td><td>Specifies the Sybase message number to be used to return terminal output to the client.</td></tr>
<tr><td>[[NEWPASSWORDC]]</td><td>This parameter prevents [[Janus Web Server]] from immediately sending an "Unauthorized" response to a browser after a password change.</td></tr>
<tr><td>[[NEWSESCMD]]</td><td>Specifies the [[Model 204]] commands to be executed when a new login session is initiated.</td></tr>
<tr><td>[[NEWGUESTOK]]</td><td>Indicates that "guest" logins are to be allowed for $Sir_Login calls in programs run as part of NEWSESCMD processing (:hdref refid=newsesc.).</td></tr>
<tr><td>[[NEWSESNOCLEARG]]</td><td>Indicates that GTBL is not to be cleared at the end of NEWSESCMD command processing.</td></tr>
<tr><td>[[NEWSESOPEN]]</td><td>Specifies the names of one or more [[Model 204]] files or groups to be opened before any NEWSESCMD commands are executed.</td></tr>
<tr><td>[[NOAUDTERM]]</td><td>This parameter is used to control whether the server thread sends "non-compiler terminal output" to the audit trail.</td></tr>
<tr><td>[[NOAUTODONE]]</td><td>This parameter prevents [[Janus Web Server]] from treating a return to command mode after all port and ON rules CMDs have been processed as an implicit $Web_Done.</td></tr>
<tr><td>[[NOAUTOON]]</td><td>This parameter prevents [[Janus Web Server]] from preceding the execution of the command specified in a JANUS WEB ON rule with an implicit $Web_On.</td></tr>
<tr><td>[[NOSCREENREDIR]]</td><td>Indicates that [[Janus Web Server]] legacy support (automatic mapping of 3270 applications to HTML) is not to use the redirect's to map all screens for a legacy session to the same URL.</td></tr>
<tr><td>[[NOTRACEFIELD]]</td><td> Indicates the form field or fields whose values are not to be traced when the X'04' bit (causes tracing of form field values for web requests) of JANUS TRACE is in effect.</td></tr>
<tr><td>[[NOUPCASE]]</td><td>Indicates that no client data is to be converted to upper case.</td></tr>
<tr><td>[[OBSIZE]]</td><td>Specifies the size of the TCP/IP output buffer.</td></tr>
<tr><td>[[OMNIACCT]]</td><td>Specifies the Model 204 ACCOUNT for the SDS catalog sdaemon for the
port.</td></tr>
<tr><td>[[OMNIUSER]]</td><td>Specifies the Model 204 user ID for the SDS catalog sdaemon for the
port.</td></tr>
<tr><td>[[OPEN]]</td><td>Specifies the name of one or more [[Model 204]] files or groups to be opened when a server session is initiated.</td></tr>
<tr><td>[[PASVPORT]]</td><td>Identifies the first FTP server port number to use for “passive” file
transfers.</td></tr>
<tr><td>[[PRELOGINUSER]]</td><td>Indicates the userid under which pre-login processing runs.</td></tr>
<tr><td>[[PRSTOK]]</td><td>Specifies the hex values of strings that are used to separate input strings using the $SOCK_RECVPRS function.</td></tr>
<tr><td>[[PUBLOG]]</td><td>Indicates that a "real" login should be done for the SOCKUSER userid for SRVSOCK logons.</td></tr>
<tr><td>[[RAWINPUT]]</td><td>Tells [[Janus Web Server]] to save the raw input stream for an HTTP POST, regardless of the mime type set by the client in the <code>content-type</code> header.</td></tr>
<tr><td>[[RAWINPUTONLY]]</td><td></td></tr>
<tr><td>[[RBSIZE]]</td><td>Specifies the Janus RPC or Request buffer size.</td></tr>
<tr><td>[[REMOTE]]</td><td>Identifies the remote server and the remote port number to be used with a set of &JSOK CLSOCK connections.</td></tr>
<tr><td>[[RPCONLY]]</td><td>Indicates that only RPC requests are allowed on the port.</td></tr>
<tr><td>[[SCREEN and NOSCREEN]]</td><td> The SCREEN and NOSCREEN parameters are available in &SIRMODS. &vsn. 6.3 and later.</td></tr>
<tr><td>[[SCREENURL]]</td><td> This parameter is available in &SIRMODS. 6.3 and later.</td></tr>
<tr><td>[[SDSACCT]]</td><td></td></tr>
<tr><td>[[SDSUSER]]</td><td></td></tr>
<tr><td>[[SESCOOKIE]]</td><td> Available in &SIRMODS. &vsn. 6.0 and later, SESCOOKIEs are cryptographically designed to be virtually impossible to "fake".</td></tr>
<tr><td>[[SESCOOKIENOSEC]]</td><td> The SESCOOKIENOSEC parameter is only available in &SIRMODS. &vsn. 6.0 and later.</td></tr>
<tr><td>[[SESFASTLOGIN]]</td><td> This parameter reduces the login security overhead for &JWEBS threads by causing a login performed for a continued session to be a "fast" login.</td></tr>
<tr><td>[[SESTIMEOUT]]</td><td> Valid only for WEBSERV ports.</td></tr>
<tr><td>[[SLOWCLOSE]]</td><td> This parameter is useful for dealing with a bug in some browsers that sends an extra, junk, carriage-return and line-feed character after the contents of an HTTP POST.</td></tr>
<tr><td>[[SOCKACCT]]</td><td>Specifies the default [[Model 204]] account ID used for SRVSOCK logons.</td></tr>
<tr><td>[[SOCKPMAX]]</td><td>Specifies the maximum number of sockets a user may have connected at any time using the particular &JSOK client port.</td></tr>
<tr><td>[[SOCKUSER]]</td><td>Specifies the default [[Model 204]] user ID used for SRVSOCK logons.</td></tr>
<tr><td>[[SQUAREB]]</td><td> SQUAREB must be followed by either of the following:</td></tr>
<tr><td>[[SSL]]</td><td>Indicates that communications on this port should be encrypted using SSL (Secure Sockets Layer) or TLS (Transport Layer Security) support.</td></tr>
<tr><td>[[SSLBSIZE]]</td><td> This tuning parameter specifies the size of the input buffer used for reading encrypted data for an SSL port.</td></tr>
<tr><td>[[SSLCACHE]]</td><td>Specifies the number of entries in virtual storage to be allocated for caching information related to this port's SSL sessions.</td></tr>
<tr><td>[[SSLCIPH]]</td><td>Limit the stream ciphers (encryption algorithms) that this port offers for SSL connections.</td></tr>
<tr><td>[[SSLCLCERT and SSLCLCERTR]]</td><td>Specify that an SSL server port will request an SSL certificate from the client.</td></tr>
<tr><td>[[SSLIBSIZE]]</td><td>Specifies the size of the SSL input buffer to be used on SSL ports.</td></tr>
<tr><td>[[SSLMAXAGE]]</td><td>Specifies the maximum number of minutes that an SSL session is to be maintained.</td></tr>
<tr><td>[[SSLMAXCERTL]]</td><td>Indicates the number of bytes of virtual storage to be allocated to hold incoming certificates presented for authentication.</td></tr>
<tr><td>[[SSLOBSIZE]]</td><td>Specifies the size of the SSL output buffer to be used on SSL ports.</td></tr>
<tr><td>[[SSLOPT]]</td><td>Specifies that the use of SSL-like encryption is optional for applications using the port.</td></tr>
<tr><td>[[SSLPROT]]</td><td> During the negotiation for a connection to or from this port, Janus will offer the most secure protocol available, then, if necessary, will fall back to the next lower one available, and so on.</td></tr>
<tr><td>[[SSLSES]]</td><td> This feature reduces the overhead of NEWSESCMD processing by limiting it to logical session establishment time.</td></tr>
<tr><td>[[SSLUNENC]]</td><td>Indicates that an unencrypted private key is being used in the certificate specified by the SSL parameter (:hdref refid=ssl.) on this Janus server port definition.</td></tr>
<tr><td>[[STIMEOUT]]</td><td></td></tr>
<tr><td>[[TCPLOG]]</td><td> A new [[Janus Web Server]] port definition parameter, TCPLOG, tells [[Janus Web Server]]</td></tr>
<tr><td>[[TCPKEEPALIVE]]</td><td>Specifies that connections on the port should use TCP keepalives.</td></tr>
<tr><td>[[TIMEOUT]]</td><td>Specifies the number of seconds of inactivity after which clients connected to this port will be disconnected.</td></tr>
<tr><td>[[TRACE]]</td><td>Specifies the initial TRACE setting for the port.</td></tr>
<tr><td>[[UPCASE]]</td><td>Indicates that all client "names" are to be converted to upper case.</td></tr>
<tr><td>[[VARIPADDR]]</td><td> Valid only for WEBSERV ports.</td></tr>
<tr><td>[[WEBACCT]]</td><td>Specifies the default [[Model 204]] account ID used for web logons for URLs where no userid is required.</td></tr>
<tr><td>[[WEBCOOKID]]</td><td>Indicates that an identifying "cookie" should be sent to a browser to distinguish multiple browsers coming through the same proxy server or running on the same machine.</td></tr>
<tr><td>[[WEBLH]]</td><td>Synonym for WEBLOGHOLD; see :hdref refid=wlogh..</td></tr>
<tr><td>[[WEBLM]]</td><td>Synonym for WEBLOGMAX; see :hdref refid=wlogm..</td></tr>
<tr><td>[[WEBLOGCOOKIE]]</td><td>Indicates that, for public URLs, Janus Web should log the user in with the userid specified by cookie-name. Normally, all public URL logins use the default public userid (usually WEBUSER).</td></tr>
<tr><td>[[WEBLOGHOLD]]</td><td>Indicates that number of seconds that a "real" login should be saved for re-use on a web connection.</td></tr>
<tr><td>[[WEBLOGMAX]]</td><td>Indicates the maximum number of cached login sessions to be held for a single user.</td></tr>
<tr><td>[[WEBPL]]</td><td>Synonym for WEBPUBLOG; see :hdref refid=wpubl..</td></tr>
<tr><td>[[WEBPUBLOG]]</td><td>Indicates that a "real" login should be done for the WEBUSER userid for public URLs.</td></tr>
<tr><td>[[WEBREALM]]</td><td>Indicates the security "realm" of userids and passwords.</td></tr>
<tr><td>[[WEBSDMAX]]</td><td>Indicates the maximum number of sdaemons to be used for cached web logins.</td></tr>
<tr><td>[[WEBSM]]</td><td>This parameter is a synonym for WEBSDMAX; see :hdref refid=wsdm..</td></tr>
<tr><td>[[WEBUSER]]</td><td>Specifies the default [[Model 204]] user ID used for web logons for URLs where no userid is required.</td></tr>
<tr><td>[[WSFQUERY]]</td><td></td></tr>
<tr><td>[[XTAB]]</td><td>Specify a translation table that has not yet been loaded with the JANUS LOADXT command, but the table must be loaded before the port can be started.</td></tr>
</table>
 
==References==
 
See: [[List of Janus commands]] | [[JANUS DEFINE#parmlist|List of JANUS DEFINE parameters]].
 
[[Category:JANUS DEFINE parameters|JANUS DEFINE]]

Revision as of 21:47, 8 March 2011

<section begin="desc" />Define and set characteristics of a Janus port.<section end="desc" />

Overview

The JANUS DEFINE command is used to specify the characteristics of a Janus port. It defines the usage of the named port as one of the following:

  • Access by IFDIAL clients
  • Open Server or Open Client connections
  • Specialty Data Store access
  • Web access
  • FTP server connections
  • Telnet server connections
  • Generic Sockets usage -- with the Model 204 online either requesting (CLSOCK) or accepting (SRVSOCK) the connection
  • Connection between the Janus Debugger or Sirius Debugger workstation GUI and programs being debugged in Model 204

For any except a CLSOCK or DEBUGGERCLIENT port, this subcommand associates a service with a TCP/IP port number.

Among the characteristics specified by JANUS DEFINE is whether the port will use Secure Sockets Layer (SSL) for encrypted communications.

See JANUS DEFINE for a discussion of when you need to issue the JANUS DEFINE command.

The JANUS DEFINE command syntax is described below.

Syntax

<section begin="syntax" /> JANUS DEFINE portname portnum type maxcon other_parms... <section end="syntax" />

JANUS DEFINE command syntax

Where each of the first four parameters is positional and required:

portname A 1- to 30-character name by which the port is identified. It is used on other JANUS subcommands, such as JANUS START and JANUS DISPLAY. It is used on the $Sock_Conn function or the Socket object New constructor to name the CLSOCK port defining a connection.
portnum The TCP/IP port number at which the service is available. portnum is the server port number, and it must be between 1 and 65535, inclusive. This number is used by client applications on the network when they require access to the Model 204 server. The server port number must be unique on the host. Several "well-known" port numbers for various TCP/IP services (for example, 53 for nameserver should be avoided, unless you are implementing that service using Janus Sockets.

For CLSOCK and DEBUGGERCLIENT ports, an asterisk (*) is used as the port number, since they are used to create, rather than accept, connections, and these port numbers are not determined until the time of the connection. For WEBSERV ports, 80 is customary for non-secure HTTP and 443 for secure HTTP (SSL); you can, however, use other numbers for WEBSERV ports if required.

For FTPSERVER ports, 21 is customary; you can, however, use other numbers for FTPSERVER ports if required.
type Port type. Valid types are:
CLSOCK A Janus Sockets client socket port. If non-system administrator users are to use a CLSOCK port, rules must be provided to allow them to initiate outgoing connections on the port.
DEBUGGERCLIENT A Sirius Debugger client socket port.
DEBUGGERSERVER A Janus Debugger or Sirius Debugger server socket port.
FTPSERVER A Janus FTP Server application.
IFDIAL Janus IFDIAL Library applications.
OAS Synonym for type SDS.
OMNI Synonym for type SDS.
OPENSERV Open Server applications; Open Client connections are outward-bound connections on an OPENSERV port.
SRVSOCK A Janus Sockets server socket port.
SDS A Specialty Data Store port.
TNSERV A Janus Telnet Server port. Only available in Sirius Mods Version 6.9 and later.
WEBSERV A World Wide Web Server port.

For Janus Open Client usage, you must define one or more ports of type SDS or OPENSERV, and you may need to use the MASTER parameter on a port definition. For JANUS server ports, specify SRVSOCK; for JANUS client ports, specify CLSOCK; for JANUS FTP server ports, specify FTPSERVER; for JANUS telnet server ports, specify TNSERV. TNSERV ports require that the system TNDEV parameter be set to indicate what IODEV daemon threads switch to while in full-screen mode for a telnet connection.

maxcon Maximum number of simultaneous active connections to be allowed on the port. This number must be less than or equal to the number of TCP/IP connections for which the site is licensed. Before Sirius Mods Version 6.8, the maxcon value had to be less than or equal to the number of sdaemons defined to the online, except for non-CLSOCK ports. If you are defining multiple ports for your site, however, the sum of the maxcon connections you define is allowed to be greater than the number for which the site is licensed. In this case, Janus Web Server will automatically prevent any connection that would exceed the site license limit. For Janus Open Client, note that a server-to-server connection requires an extra connection for the site handler. Thus, a single connection to a remote server would use two connections, while 10 connections to a remote server would use 11. Under Sirius Mods Version and later, restrictions on the allowed values for maxcon are no longer present, but licensed thread limits are still enforced at the time a connection is made. You can use the JANUS TSTATUS command (:hdref refid=tstat.) to view the thread usage and connection limits for your port, and you can use the JANUS LIMITS command to view similar information for your Online.
other_parms A set of blank-delimited parameters that describe the characteristics of and processing to be performed on the port. These parameters are keywords, sometimes followed by values, and they are described individually in the subsections that follow. .el .do They are all optional, except: are not allowed
  • for OPENSERV ports, CMD is required
  • For CLSOCK ports, REMOTE is required
  • For SRVSOCK ports, CMD is required
  • For FTPSERVER ports, OPEN, CMD, NEWSESOPEN, and NEWSESCMD

JANUS DEFINE parameters

ALLOCCIndicates that input, output and request buffers are to be allocated when a connection is established and are to be freed when the connection is closed.
ANONYMOUS The ANONYMOUS parameter must be followed by a number maxanon or an asterisk (*):
ANONUSER ANONUSER may be specified only if ANONYMOUS is also specified.
AUDTERMThis parameter is used to control whether the server thread sends "non-compiler terminal output" to the audit trail.
AUTODONEThis parameter requests Janus Web Server to treat a return to command mode after all port and ON rules CMDs have been processed as an implicit $Web_Done.
AUTOLOADThis parameter, indicates that the incore copy of Janus tables are to be reloaded at the first request subsequent to a table redefinition.
AUTOONThis parameter requests Janus Web Server to issue an implicit $Web_On before executing the commands specified in a JANUS WEB ON rule.
AUTOSYS
BINARY This parameter requests Janus Sockets to send and receive strings with $SOCK_ functions or Socket methods using no translation.
BINDADDRSpecifies the IP address to which the port will be bound, if the host (machine) on which Model 204 is running supports multiple IP addresses.
BSIZESpecifies the size of the TCP/IP input and output buffers.
CHARThis parameter requests Janus Sockets to translate strings (sent and received with Janus Sockets functions or methods) between the internal representation within Model 204 (EBCDIC) and the character representation used by the remote end of the connection.
CHARSETIndicates, to the remote host, the character set being used by Janus.
CLIENTSOCKETThis parameter names the client socket port to use to open connections back to the FTP client, if the client requests active file transfers.
CLOSEIMMEDIndicates that if a lost connection is noticed by the Janus PST, the PST should BUMP the Model 204 thread associated with the connection immediately.
CLOSEREAD CLOSEIMMED (:hdref refid=climm.) indicates that if a lost connection is noticed by the Janus PST, the PST should BUMP the Model 204 thread associated with the connection immediately.
CMDSpecifies the Model 204 commands to be executed after the files and groups specified in the OPEN parameter are opened.
COMPRESSIndicates the type of compression to be performed on outgoing Janus Web Server data.
CRIndicates that lines of text data sent to a browser should be separated by the ASCII carriage return character (X'0D').
CRLFIndicates that lines of text data sent to a browser should be separated by the ASCII carriage return and line feed characters (X'0D0A').
CSSINSPIndicates whether or not Janus Web Legacy support is to insert a space to represent the attribute byte on a 3270 screen.
CSSTITLEDIV and CSSTITLESPANIndicates whether or not Janus Web Legacy support is to use a <div> (CSSTITLEDIV) or <span> (CSSTITLESPAN) tag for the title line of a screen.
DBCS and NODBCSIndicates whether or not the Model 204 DBCS parameter is to be automatically set to 1 on requests to a WEBSERV port.
DEBPORTCMD and NODEBPORTCMDIndicates whether the commands specified in the CMD clause of the JANUS DEFINE command are to be run on threads debugging requests to the port with the JANUSDEBUG command
DEBPORTOPEN and NODEBPORTOPENIndicates whether the files and groups specified in the OPEN clause of the JANUS DEFINE command are to be opened on threads debugging requests.
EXEC2RPCIndicates that language requests should be converted to RPCs.
FDWOLSpecifies that all FINDs done by the Janus Omni are to be done as FIND WITHOUT LOCKS.
FORMPOSTWAIT The default value for FORMPOSTWAIT is 900.
FORMREDIRWAIT Since browsers typically respond immediately to a redirect by doing a GET for the target URL without any user interaction, the time between a redirect and the GET should typically be very small.
FINCLOSE If FINCLOSE is not specified, or if NOFINCLOSE is specified, a Janus Sockets thread remains in-use and does not recognize a FIN indicator sent by a remote partner until the Janus Sockets application tries to receive data on the connection.
HIGHPRIORITY This parameter adjusts the Model 204 scheduling priority of Janus Web Server threads by starting them at the upper end of their priority range rather than at their default priority.
HTTPVERSION This parameter sets the HTTP version returned to the browser by Janus Web Server.
IBSIZESpecifies the size of the TCP/IP input buffer.
INPUTTIMEOUT This parameter, new as of Sirius Mods Version 6.8, tells Janus Web Server to use a different timeout value for input (receiving the web request) than for output.
JANCATSpecifies the name of the file that contains the Model 204 to SQL mappings.
KEEPALIVE The KEEPALIVE parameter indicates the number of seconds a TCP/IP connection is to be held open after an HTTP request on that connection.
LANGUAGEIndicates, to the remote host, the language being used by Janus.
LEGBL, This parameter has no effect if an external style sheet is not used (CSS parameter in JANUS WEB SCREEN rules).
LEGCSS and NOLEGCSS Almost all browsers correctly support the CSS used by
LEGJS and NOLEGJS While almost all browsers correctly support the simple :hp1.JavaScript:ehp1. used by Janus Web Legacy support, and this :hp1.JavaScript:ehp1. makes the pages generated by Janus Web Legacy support considerably more "friendly", the NOLEGJS parameter can be specified if a site has rules against the use of JavaScript.
LFIndicates that lines of text data sent to a browser should be separated by the ASCII line feed character (X'0A- ').
LINENDSpecifies the hex value of a string to be sent by Janus Sockets at the end of each "line;" that is, appended to the string sent by the $SOCK_SENDLN functions or after each output line captured on the socket.
LOGSpecifies that all Janus Web Server requests for the port are to be logged to a sequential dataset whose DDNAME is specified by xxxx.
LOGAPPENDIndicates that the Janus Web Server log dataset for the port is to be opened in APPEND mode.
LOGCLOSETIndicates how often the Janus Web Server log dataset is to be "closed", that is how often the DSCB is to be updated for the log dataset.
LOGGMTIndicates that the time stamps in the Janus Web Server log dataset for the port are to be represented as GMT instead of local time.
LOGMSGIThis parameter prevents Janus Web Server from saving Model 204 messages issued during logon for a web user.
MASTERSpecifies that this is the default port for :hp1.outgoing:ehp1.
MAXCURSSpecifies the maximum number of cursors that can be opened for a single Janus Omni connection.
MAXIPSESSpecifies the maximum number of Janus Web Legacy Support sessions maintained per IP address.
MAXRECSpecifies the maximum record length for input records on a Janus IFDIAL port.
MAXSAVESpecifies the maximum number of compiled SQL requests to save in CCATEMP.
MAXTEMPSpecifies the maximum number of CCATEMP pages allowed to be used by a web request for holding input (file upload) and output (dynamically generated HTML) data.
MSGSEND and NOMSGSEND These parameters are available in Sirius Mods Version 6.0 and later.
MSG204Specifies the Sybase message number to be used to return terminal output to the client.
MSG204LSpecifies the Sybase message number to be used to return terminal output to the client.
NEWPASSWORDCThis parameter prevents Janus Web Server from immediately sending an "Unauthorized" response to a browser after a password change.
NEWSESCMDSpecifies the Model 204 commands to be executed when a new login session is initiated.
NEWGUESTOKIndicates that "guest" logins are to be allowed for $Sir_Login calls in programs run as part of NEWSESCMD processing (:hdref refid=newsesc.).
NEWSESNOCLEARGIndicates that GTBL is not to be cleared at the end of NEWSESCMD command processing.
NEWSESOPENSpecifies the names of one or more Model 204 files or groups to be opened before any NEWSESCMD commands are executed.
NOAUDTERMThis parameter is used to control whether the server thread sends "non-compiler terminal output" to the audit trail.
NOAUTODONEThis parameter prevents Janus Web Server from treating a return to command mode after all port and ON rules CMDs have been processed as an implicit $Web_Done.
NOAUTOONThis parameter prevents Janus Web Server from preceding the execution of the command specified in a JANUS WEB ON rule with an implicit $Web_On.
NOSCREENREDIRIndicates that Janus Web Server legacy support (automatic mapping of 3270 applications to HTML) is not to use the redirect's to map all screens for a legacy session to the same URL.
NOTRACEFIELD Indicates the form field or fields whose values are not to be traced when the X'04' bit (causes tracing of form field values for web requests) of JANUS TRACE is in effect.
NOUPCASEIndicates that no client data is to be converted to upper case.
OBSIZESpecifies the size of the TCP/IP output buffer.
OMNIACCTSpecifies the Model 204 ACCOUNT for the SDS catalog sdaemon for the port.
OMNIUSERSpecifies the Model 204 user ID for the SDS catalog sdaemon for the port.
OPENSpecifies the name of one or more Model 204 files or groups to be opened when a server session is initiated.
PASVPORTIdentifies the first FTP server port number to use for “passive” file transfers.
PRELOGINUSERIndicates the userid under which pre-login processing runs.
PRSTOKSpecifies the hex values of strings that are used to separate input strings using the $SOCK_RECVPRS function.
PUBLOGIndicates that a "real" login should be done for the SOCKUSER userid for SRVSOCK logons.
RAWINPUTTells Janus Web Server to save the raw input stream for an HTTP POST, regardless of the mime type set by the client in the content-type header.
RAWINPUTONLY
RBSIZESpecifies the Janus RPC or Request buffer size.
REMOTEIdentifies the remote server and the remote port number to be used with a set of &JSOK CLSOCK connections.
RPCONLYIndicates that only RPC requests are allowed on the port.
SCREEN and NOSCREEN The SCREEN and NOSCREEN parameters are available in &SIRMODS. &vsn. 6.3 and later.
SCREENURL This parameter is available in &SIRMODS. 6.3 and later.
SDSACCT
SDSUSER
SESCOOKIE Available in &SIRMODS. &vsn. 6.0 and later, SESCOOKIEs are cryptographically designed to be virtually impossible to "fake".
SESCOOKIENOSEC The SESCOOKIENOSEC parameter is only available in &SIRMODS. &vsn. 6.0 and later.
SESFASTLOGIN This parameter reduces the login security overhead for &JWEBS threads by causing a login performed for a continued session to be a "fast" login.
SESTIMEOUT Valid only for WEBSERV ports.
SLOWCLOSE This parameter is useful for dealing with a bug in some browsers that sends an extra, junk, carriage-return and line-feed character after the contents of an HTTP POST.
SOCKACCTSpecifies the default Model 204 account ID used for SRVSOCK logons.
SOCKPMAXSpecifies the maximum number of sockets a user may have connected at any time using the particular &JSOK client port.
SOCKUSERSpecifies the default Model 204 user ID used for SRVSOCK logons.
SQUAREB SQUAREB must be followed by either of the following:
SSLIndicates that communications on this port should be encrypted using SSL (Secure Sockets Layer) or TLS (Transport Layer Security) support.
SSLBSIZE This tuning parameter specifies the size of the input buffer used for reading encrypted data for an SSL port.
SSLCACHESpecifies the number of entries in virtual storage to be allocated for caching information related to this port's SSL sessions.
SSLCIPHLimit the stream ciphers (encryption algorithms) that this port offers for SSL connections.
SSLCLCERT and SSLCLCERTRSpecify that an SSL server port will request an SSL certificate from the client.
SSLIBSIZESpecifies the size of the SSL input buffer to be used on SSL ports.
SSLMAXAGESpecifies the maximum number of minutes that an SSL session is to be maintained.
SSLMAXCERTLIndicates the number of bytes of virtual storage to be allocated to hold incoming certificates presented for authentication.
SSLOBSIZESpecifies the size of the SSL output buffer to be used on SSL ports.
SSLOPTSpecifies that the use of SSL-like encryption is optional for applications using the port.
SSLPROT During the negotiation for a connection to or from this port, Janus will offer the most secure protocol available, then, if necessary, will fall back to the next lower one available, and so on.
SSLSES This feature reduces the overhead of NEWSESCMD processing by limiting it to logical session establishment time.
SSLUNENCIndicates that an unencrypted private key is being used in the certificate specified by the SSL parameter (:hdref refid=ssl.) on this Janus server port definition.
STIMEOUT
TCPLOG A new Janus Web Server port definition parameter, TCPLOG, tells Janus Web Server
TCPKEEPALIVESpecifies that connections on the port should use TCP keepalives.
TIMEOUTSpecifies the number of seconds of inactivity after which clients connected to this port will be disconnected.
TRACESpecifies the initial TRACE setting for the port.
UPCASEIndicates that all client "names" are to be converted to upper case.
VARIPADDR Valid only for WEBSERV ports.
WEBACCTSpecifies the default Model 204 account ID used for web logons for URLs where no userid is required.
WEBCOOKIDIndicates that an identifying "cookie" should be sent to a browser to distinguish multiple browsers coming through the same proxy server or running on the same machine.
WEBLHSynonym for WEBLOGHOLD; see :hdref refid=wlogh..
WEBLMSynonym for WEBLOGMAX; see :hdref refid=wlogm..
WEBLOGCOOKIEIndicates that, for public URLs, Janus Web should log the user in with the userid specified by cookie-name. Normally, all public URL logins use the default public userid (usually WEBUSER).
WEBLOGHOLDIndicates that number of seconds that a "real" login should be saved for re-use on a web connection.
WEBLOGMAXIndicates the maximum number of cached login sessions to be held for a single user.
WEBPLSynonym for WEBPUBLOG; see :hdref refid=wpubl..
WEBPUBLOGIndicates that a "real" login should be done for the WEBUSER userid for public URLs.
WEBREALMIndicates the security "realm" of userids and passwords.
WEBSDMAXIndicates the maximum number of sdaemons to be used for cached web logins.
WEBSMThis parameter is a synonym for WEBSDMAX; see :hdref refid=wsdm..
WEBUSERSpecifies the default Model 204 user ID used for web logons for URLs where no userid is required.
WSFQUERY
XTABSpecify a translation table that has not yet been loaded with the JANUS LOADXT command, but the table must be loaded before the port can be started.

References

See: List of Janus commands | List of JANUS DEFINE parameters.