Your Browser is not longer supported

Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...

{{viewport.spaceProperty.prod}}

KC_CREATE_OBJECT - Add objects to the configuration

KC_CREATE_OBJECT allows you to add the following objects dynamically to the application configuration:

  • transport connections to remote LU6.1 applications (KC_CON)

  • key sets (KC_KSET)

  • LU6.1 sessions (KC_LSES)

  • transaction codes by means of which service programs are started in partner applications (KC_LTAC)

  • an LTERM partner to connect clients and printers (KC_LTERM)

  • application program units and VORGANG exits (KC_PROGRAM)

  • clients and printers (KC_PTERM)

  • transaction codes and TAC queues (KC_TAC)

  • user IDs, including their queues (KC_USER)

openUTM on Windows systems does not support any printers.

Exactly one object can be created per KC_CREATE_OBJECT call. Within any given program unit, however, KC_CREATE_OBJECT can be called several times, i.e. several objects with the same type or with different object types can be created.

You will find more detailed information on dynamically adding objects to the configuration in chapter "Changing the configuration dynamically".

If an object which can be dynamically generated in a UTM cluster application (Unix, Linux and Windows systems) has to be deleted then you must always delete it using the administration functions. These objects cannot be deleted simply by means of a regeneration.


Requirements for dynamically adding an object

  • During KDCDEF generation of the UTM application, RESERVE was used to reserve spaces in the table for the object type; one of these spaces in the table is still empty. You can determine if there are still free spaces available in the table for the corresponding object type using KC_GET_OBJECT and the KC_DYN_PAR parameter type.

  • You can only add application program units and VORGANG exits dynamically if the application was generated with load modules (BS2000 systems) or shared objects/DLLs (Unix, Linux and Windows systems). The program unit or VORGANG exit must be created by a compiler for which a program unit has already been statically configured (PROGRAM statement) during the KDCDEF generation.

    Only on BS2000 systems: For ILCS-capable compilers, it is sufficient to statically generate a program unit with COMP=ILCS.

  • Transaction codes for program units that use an X/Open program interface can only be added dynamically if at least one transaction code for an X/Open program unit was configured during the KDCDEF generation.

  • User IDs can only be configured dynamically if the application was generated with user IDs.

    Note for BS2000 systems:

    • User IDs with ID cards or can only be added dynamically if space in the table was reserved explicitly for user IDs with ID cards during the KDCDEF generation, and if one of these table spaces is still free.

    • You can only dynamically enter user IDs with Kerberos authentication if table spaces for user IDs with Kerberos authentication have been reserved explicitly and if one of these spaces is still free.


The following must be observed when adding new objects / cluster

Certain rules must be observed when adding objects that are related to each other. These rules are described in chapter "Changing the configuration dynamically". The following are examples of objects that are related to each other:

  • transaction codes and the program units and VORGANG exits assigned to them

  • clients/printers and the associated LTERM partners and the connection user IDs or user IDs for the automatic KDCSIGN

  • key sets referenced by user IDs, LTERM partners and transaction codes


Procedure / period of validity / transaction management / cluster

The call is subject to transaction management. Until the transaction has been completed, a dynamically created object can only be accessed within the transaction itself. Applicationwide access is only possible after the transaction has been completed. In particular, the object can only be manipulated by means of administration functions after the transaction has been completed (this includes information queries). Within the same transaction, the object can only be accessed when adding additional objects that are related to it.

The call’s effects extend beyond the end of the current application run. This means that objects added dynamically are also part of the configuration for later application runs (as long as the objects are not deleted again).

The following applies in UTM cluster applications (Unix, Linux and Windows systems):
The call applies globally to the cluster, i.e. the objects are dynamically entered in the configuration in all the node applications.

Data to be supplied

Function of the call

Data to be entered in the

parameter area 1

identification area

selection
area

data area                             

Add transport connections to the remote LU6.1 application to the configuration

obj_type:
KC_CON              

——

——

Data structure kc_con_str with the name and properties of the partner and the connection

Add key set to the configuration

obj_type:
KC_KSET

——

——

Data structure kc_kset_str with the name and properties of the key set

Add LU6.1 session to the configuration

obj_type:
KC_LSES              

——

——

Data structure kc_lses_str with the name and properties of the partners involved 

Add transaction code by means of which service programs are started in partner applications to the configuration

obj_type:
KC_LTAC

——

——

Data structure kc_ltac_str with the name and properties of the LTAC and the partner

Add an LTERM partner to the configuration

obj_type:
KC_LTERM

——

——

Data structure kc_lterm_str with the name and properties of the LTERM partner

Add a program unit or VORGANG exit to the configuration

obj_type:
KC_PROGRAM

——

——

Data structure kc_program_str with the name and properties of the program unit or VORGANG exit

Add a client/printer (PTERM) to the configuration

obj_type:
KC_PTERM

——

——

Data structure kc_pterm_str with the name and properties of the client/printer

Add a transaction code
or TAC queue to the
configuration

obj_type:
KC_TAC

——

——

Data structure kc_tac_str with the name and properties of the transaction code or TAC queue

Add a user ID (including queue) to the configuration

obj_type:
KC_USER

——

——

Data structure kc_user_str with the name and properties of the user ID and queue

1 The operation code KC_CREATE_OBJECT must be specified in the parameter area in all cases.

Parameter settings

Parameter area

Field name

Contents

version

KC_ADMI_VERSION_1

retcode

KC_RC_NIL

version_data

KC_VERSION_DATA_11

opcode

KC_CREATE_OBJECT

obj_type

Object type

obj_number

1

id_lth

0

select_lth

0

data_lth

Length of the data in the data area

Identification area

Selection area

Data area

Data structure of the object type

KDCADMI call

KDCADMI (&parameter_area, NULL, NULL, &data_area)

Data returned by UTM

Parameter area

Field name

Contents

retcode

Return codes

obj_type

In the obj_type field you must specify the type of object to be created. You can specify the following object types:

KC_CON, KC_KSET, KC_LSES, KC_LTAC, KC_LTERM, KC_PROGRAM, KC_PTERM, KC_TAC, KC_USER.

obj_number

Only one object can be created per call. Therefore you must set obj_number = 1.

data_lth

In the data_lth field you specify the length of the data structure you are passing to UTM in the data area.

Data area

You must pass a data structure in the data area containing the name of the new object and the properties to be assigned to this object. A unique data structure is provided for each individual object type, and you must place this data structure in the data area.

The tables on the following pages as of "obj_type=KC_CON" contain descriptions of the data structures as a function of the type of the object to be created. The table shows you which fields in the relevant data structure must be supplied with data.

The entries in the first column of the table have the following meanings:


o

Supplying the field with data is optional

m

Supplying the field with data is mandatory

(m)

Supplying the field with data may be mandatory, depending on the data you have entered for the other mandatory parameters or at the level of the operating system under which the UTM application is running.

Fields in the data structures that you have not explicitly specified must be set to binary zero. UTM will use the default values for these fields. You can find the default values listed in the descriptions of the data structures in section "Data structures used to pass information".

retcode

In the retcode field UTM outputs the return codes of the call, see "Returncodes".