Um einen Drucker oder Client (d.h. ein Terminal, einen UPIC-Client oder eine TS-Anwendung) in die Konfiguration aufzunehmen, müssen Sie die Datenstruktur kc_pterm_str über den Datenbereich legen. In kc_pterm_str übergeben Sie Namen, Adresse und Eigenschaften des Client bzw. Druckers an UTM. Der folgenden Tabelle können Sie entnehmen, wie die Felder der Struktur zu versorgen sind.
openUTM auf Windows-Systemen unterstützt keine Drucker.
Feldname1 | Bedeutung | ||
m | pt_name[8]
| Name des Client bzw. Druckers. Der Name darf bis zu 8 Zeichen lang sein. | |
Besonderheiten bei der Kommunikation über die Socket-Schnittstelle: | |||
(m) | pronam_long[64]
| Name des Rechners, auf/an dem sich der Client/Drucker befindet. | |
Angegeben werden muss der vollständige Rechnername (FQDN), unter dem der Rechner im DNS bekannt ist. Der Name darf maximal 64 Zeichen lang sein. Anstelle eines bis zu 64 Zeichen langen FQDN-Namens kann weiterhin ein kurzer, maximal 8 Zeichen langer lokaler Name (im BS2000-System: BCAM-Name) des Partnerrechners angegeben werden. In diesem Fall muss der lokale Name unter Zuhilfenahme von externer Zusatzinformation (im BS2000-System: FQDN-Datei, im Unix-/Linux-/Windows-System: hosts-Datei) vom Transportsystem auf einen FQDN-Namen bzw. eine IP-Adresse abbildbar sein. | |||
Ist auf BS2000-Systemen ptype='*RSO', dann muss pronam_long='*RSO' angegeben werden. | |||
Wird die Verbindung zum Partner über die Socket-Schnittstelle aufgebaut, dann müssen Sie für pronam_long die symbolische Adresse bzw. den realen Hostnamen des Rechners angeben. | |||
Auf Unix-, Linux- und Windows-Systemen ist die Angabe von pronam_long nur für ptype='UPIC-R', 'APPLI' oder 'SOCKET' erlaubt. Bei Terminals und Druckern setzt openUTM den Standardwert (Leerzeichen) ein. | |||
o | bcamappl[8] | Name der UTM-Anwendung, über den die Verbindungen zwischen UTM-Anwendung und Client/Drucker aufgebaut werden sollen. Der Anwendungsname muss bei der KDCDEF-Generierung in MAX APPLINAME oder mit einer BCAMAPPL-Anweisung statisch generiert worden sein. | |
Soll die Verbindung zum Kommunikationspartner über das Protokoll SOCKET aufgebaut werden, dann müssen Sie einen BCAMAPPL-Namen angeben, für den t_prot='T' generiert ist. | |||
Nur auf BS2000-Systemen: | |||
(m) | ptype[8] | Typ des Client/Druckers. | |
Die Angabe von ptype ist in UTM-Anwendungen auf BS2000-Systemen Pflicht. | |||
Auf Windows-Systemen ist die Angabe von ptype='PRINTER' nicht erlaubt. | |||
o | ptype_fotyp[8] | Ist nur bei Druckern auf Unix- und Linux-Systemen relevant (ptype='PRINTER'). | |
o | ptype_class[40] | Ist nur bei Druckern auf Unix- und Linux-Systemen relevant (ptype='PRINTER'). | |
(m) | lterm[8] | Name des LTERM-Partners, der diesem Client/Drucker zugeordnet werden soll. | |
Bei UPIC-Clients und TS-Anwendungen (ptype= 'UPIC-L', 'UPIC-R', 'APPLI' oder 'SOCKET') ist lterm Pflichtparameter. Der angegebene LTERM-Partner muss in derselben Transaktion wie der Client erzeugt werden. Siehe dazu Kapitel „Konfiguration dynamisch ändern". | |||
o | auto_connect | Legt fest, ob die Verbindung zu dem Client/Drucker beim Start der Anwendung automatisch aufgebaut wird: | |
'Y' | Bei jedem Start der Anwendung soll UTM versuchen, die Verbindung zum Client/Drucker aufzubauen. | ||
'N' | Es soll kein automatischer Verbindungsaufbau durchgeführt werden. | ||
Für UPIC-Clients ist nur auto_connect='N' erlaubt. | |||
o | state | Legt fest, ob der Client/Drucker nach dem Eintragen zunächst gesperrt sein soll oder nicht. | |
'Y' | Der Client/Drucker soll nicht gesperrt werden. (ON) | ||
'N' | Der Client/Drucker soll gesperrt werden. (OFF) | ||
o | cid[8] | Ist nur für Drucker auf BS2000-, Unix- und Linux-Systemen relevant. | |
o | map | Nur relevant bei TS-Anwendungen (ptype='APPLI') oder SOCKET-USP-Anwendungen. | |
In map legen Sie fest, ob UTM eine Code-Konvertierung (EBCDIC<->ASCII) für die Benutzer-Nachrichten, die zwischen den Kommunikationspartnern ausgetauscht werden, durchführen soll oder nicht. Benutzer-Nachrichten werden an der KDCS-Schnittstelle bei den Aufrufen zur Nachrichtenbehandlung (MPUT/FPUT/DPUT) im Nachrichtenbereich übergeben. | |||
'U' (USER) | |||
'S' , '1' , '2', '3', '4'
Geben Sie einen der obigen Werte an, dann konvertiert UTM die Benutzernachrichten gemäß den für die Code-Konvertierung bereitgestellten Konvertierungstabellen, siehe Abschnitt „Code-Konvertierung“ im openUTM-Handbuch „Anwendungen generieren“, d.h.:
Die Angaben 'S' und '1 sind dabei synonym. Weitere Informationen zur Code-Konvertierung finden Sie im openUTM-Handbuch „Anwendungen programmieren mit KDCS“, Abschnitt "Code-Konvertierung". | |||
o | termn[2]
| Kennzeichen für die Art des Client/Druckers (Terminalmnemonic). Das Kennzeichen ist maximal 2 Zeichen lang. Die Standardwerte für termn finden Sie in der Tabelle im Abschnitt "kc_pterm_str - Clients und Drucker" ("BS2000-Systeme" bzw. "Unix-, Linux- und Windows-Systeme"). | |
o | protocol | Nur auf BS2000-Systemen: | |
'N' (NO): Es wird ohne NEABT gearbeitet. | |||
'S' (STATION): Es wird mit NEABT gearbeitet. | |||
Für Clients, die sich über einen Multiplexanschluss anschließen sollen, muss protocol='S' angegeben werden. | |||
Für UPIC-Clients, RSO-Drucker und TS-Anwendungen, mit denen über die Socket-Schnittstelle kommuniziert werden soll, müssen Sie protocol='N' angeben. Die Angabe von protocol='S' wird in diesen Fällen ignoriert. | |||
o | usage_type | Nur auf BS2000-Systemen: | |
'D' für einen Dialog-Partner | |||
o | listener_port[5]
| Bei listener_port geben Sie an, an welcher Portnummer im fernen System die Partner-Anwendung auf Verbindungsaufbauwünsche von außen wartet. | |
Auf BS2000-Systemen ist die Angabe von listener_port nur bei ptype='APPLI' oder 'SOCKET' erlaubt. | |||
Auf Unix-, Linux und Windows-Systemen ist listener-port nur für t_prot='T' und 'R' relevant. | |||
o | t_prot | nur relevant bei Clients vom Typ ptype='APPLI', 'SOCKET' oder 'UPIC-R' auf Unix-, Linux- und Windows-Systemen: | |
'R' | RFC1006, ISO-Transportprotokoll Klasse 0 über TCP/IP und Konvergenzprotokoll RFC1006 (APPLI, UPIC-R) | ||
'T' | native TCP-IP-Transportprotokoll für die Kommunikation über die Socket-Schnittstelle (SOCKET) | ||
o | tsel_format | nur relevant bei Clients vom Typ ptype='APPLI', 'SOCKET' oder 'UPIC-R' auf Unix-, Linux- und Windows-Systemen: | |
'T' für das TRANSDATA-Format | |||
o | idletime[5]
| Darf nur für Dialog-Partner angegeben werden. | |
Diese Funktion dient dazu den Datenschutz zu verbessern: | |||
Maximalwert: '32767' | |||
Bei einem ungültigen Wert setzt UTM idletime auf den kleinsten zulässigen Wert und liefert den Returncode KC_MC_OK mit Subcode KC_SC_INVALID_IDLETIME zurück. | |||
o | encryption_level | nur relevant für UPIC-Clients und auf BS2000-Systemen zusätzlich für einige Terminalemulationen. | |
In encryption_level legen Sie die minimale Verschlüsselungsebene für die Kommunikation mit dem Client fest,
Folgende Angaben sind möglich: | |||
'N' | (NONE) | ||
'3' | (LEVEL 3) | ||
'4' | (LEVEL 4) | ||
| '5' | (LEVEL 5) UTM fordert die Verschlüsselung der Nachrichten mit der Verschlüsselungsebene 5 an, d.h. die Nachrichten werden mit AES-GCM Algorithmus verschlüsselt. Die Vereinbarung des AES-Schlüssels erfolgt über das Ephemeral Elliptic Curve Diffie-Hellman Verfahren (ECDHE). Dabei wird zur Signatur des öffentlichen Server-Schlüssels ein RSA Schlüssel mit einer Schlüssellänge von 2048 Bits verwendet. Der Level 5 wird von openUTM nur für Unix-, Linux- und Windows-Systeme unterstützt. | ||
Der Verbindungsaufbau zu dem Client wird von UTM abgelehnt, wenn der Client nicht mindestens die angegebene Verschlüsselungsebene ( 3, 4 oder 5) unterstützt. | |||
'T' | (TRUSTED) | ||
Für die einzelnen Client-Typen gilt bezüglich der Verschlüsselungsebene:
| |||
Voraussetzung für die Verschlüsselung der Daten auf Verbindungen zum Client ist, dass entsprechende RSA-Schlüssel verfügbar sind. Falls die Anwendung mit OPTION GEN-RSA-KEYS=NO generiert ist, dann erzeugt KDCDEF keine RSA-Schlüssel, d.h. es sind standardmäßig keine RSA-Schlüssel verfügbar. Es ist jedoch möglich, RSA-Schlüssel per KDCUPD zu übertragen oder mit KC_ENCRYPT zu erzeugen. Diese können dann von den neu erzeugten Objekten benutzt werden. | |||
o | usp_hdr | Dieser Parameter ist nur für PTERMs mit ptype='SOCKET' von Bedeutung. | |
'A' | Bei allen Ausgabe-Nachrichten (Dialog, Asynchron, K-Meldungen) erzeugt UTM einen UTM-Socket-Protokoll-Header und stellt diesen der Nachricht voran. | ||
'M' | Nur bei Ausgabe von K-Meldungen erzeugt UTM einen UTM-Socket-Protokoll-Header und stellt diesen der Nachricht voran. | ||
'N' | UTM erzeugt für keine Ausgabe-Nachricht einen UTM-Socket-Protokoll-Header. | ||
1 | Alle nicht aufgeführten Felder der Datenstruktur kc_pterm_str und alle für das verwendete Betriebssystem nicht relevanten Felder sind mit binär null zu versorgen. Die Datenstruktur ist im Abschnitt "kc_pterm_str - Clients und Drucker" vollständig beschrieben. |