Allgemeines
Anwendungsgebiet: | Abfragen und Zugriff zu Listen und Tabellen; |
Makrotyp: | S-Typ, MF-Format 2: Standardform/E-/L-/M-/C-/D-Form; siehe "S-Typ-Makroaufrufe" |
Makrobeschreibung
Um privilegierte Systemdienste besser vor unbefugten Zugriffen zu schützen, ermöglicht das Software-Produkt SECOS eine Aufteilung der Privilegien, mit denen in früheren Versionen der Inhaber der Kennung TSOS (Systemverwaltung) ausgestattet war, auf verschiedene Verwaltungsinstanzen, die jeweils für einen Teilbereich der Systemverwaltung zuständig sind. Jede dieser Instanzen besitzt nur die Systemprivilegien, die sie für ihre Aufgaben benötigt. Einzelheiten dieser Privilegienverteilung können dem Handbuch „SE-COS“ [14] entnommen werden.
Mit dem Makro CHKPRV kann der Benutzer in seinem Programm prüfen, ob der Auftrag, unter dem es läuft, eines oder mehrere dieser Systemprivilegien besitzt. Dabei können
31 Systemprivilegien abgefragt werden. Das Ergebnis dieser Überprüfung wird im Standardheader des Datenbereichs als Returncode übergeben (siehe Returncodetabelle im Anschluss an die Operandenbeschreibung).
Makroaufrufformat und Operandenbeschreibung
CHKPRV |
PRIV=(priv[,priv]...) ,MF=S / E / L / C / D / M [,PARAM=adr / (r)] ,PREFIX=S / p ,MACID=RMC / macid |
PRIV=
gibt das Systemprivileg an, das überprüft werden soll.
(priv[,priv]...)
Bezeichnungen der zu prüfenden Systemprivilegien. Bei Angabe mehrerer Privilegien wird der Returncode „Kein Fehler“ übergeben, wenn der Auftrag mindestens eines dieser Privilegien besitzt.
Die folgende Übersicht stellt die möglichen Werte für priv den zugehörigen Systemprivilegien gegenüber:
ACSADM | Alias-Catalog-Service-Verwaltung |
CUPRV001 | von der Systemverwaltung flexibel zu belegen |
FTACADM | FTAC-Verwaltung |
FTADM | File-Transfer-Verwaltung |
GUAADM | Systemglobale Guard-Administration |
HSMSADM | HSMS-Verwaltung |
HWMAINT | Hardware-Online-Wartung |
NETADM | Netzverwaltung |
NOTIFADM | Notification-Service-Administration |
OPERATING | BS2000-Systembedienung |
POSIXADM | POSIX-Benutzerverwaltung |
PROPADM | Programmierung von Administrationsprozeduren |
PRSRVADM | SPOOL-Verwaltung |
SATFEVAL | Auswertung der SAT-Dateien |
SATFMGMT | Verwaltung der SAT-Dateien |
SECADM | Sicherheitsverwaltung |
STDPROC | Verwenden von Benutzerkommandos |
SUBSMGMT | Subsystemverwaltung |
SWMONADM | Software-Monitor-Verwaltung |
TAPEADM | Bandverwaltung |
TAPEKEYADM | Encryption Key Verwaltung für Bänder |
TSOS | TSOS-Privilegien, die keiner der anderen hier angegebenen Verwaltungsinstanzen |
USERADM | Benutzerverwaltung |
VMPRIV | Verwaltung einer virtuellen Maschine |
VM2ADM | Verwaltung von VM2000 |
MF=
Zur allgemeinen Beschreibung des Operanden MF, der dazugehörenden Operandenwerte und der evtl. nachfolgenden Operanden (z.B. PREFIX, MACID und PARAM) siehe Abschnitt „S-Typ-Makroaufrufe“. Die gültigen MF-Werte sind zu Beginn der Makrobeschreibung bei „Makrotyp“ angegeben und aus dem Aufrufformat ersichtlich.
Bei der C-Form, D-Form oder M-Form des Makroaufrufs kann ein Präfix PREFIX und bei der C-Form oder M-Form zusätzlich eine Macid MACID angegeben werden (siehe AAbschnitt „S-Typ-Makroaufrufe“).
Rückinformation und Fehleranzeigen
Standardheader:
+---------------+ | | | | | |0|0|b|b|a|a|a|a| +---------------+
Über die Ausführung des Makros CHKPRY wird im Standardheader folgender Returncode übergeben (bb=Subcode1, aaaa=Maincode):
X'bb' | X'aaaa' | Erläuterung |
X'00' | X'0000' | Funktion erfolgreich ausgeführt. Die Task besitzt mindestens eines der angegebenen |
X'00' | X'0002' | Die Task besitzt keines der angegebenen Privilegien. |
X'01' | X'0003' | Operandenfehler: Unzulässige Angabe für Privilegien. |
X'20' | X'00FF' | Systemfehler |
Weitere Returncodes, deren Bedeutung durch Konvention makroübergreifend festgelegt ist, können der Tabelle „Standard-Returncodes“ (Standardheader) entnommen werden.
Das aufrufende Programm wird beendet, wenn folgende Fehler auftreten:
Der Datenbereich ist dem Aufrufer nicht zugewiesen.
Der Datenbereich ist nicht auf Wortgrenze ausgerichtet.
Der Datenbereich ist gegen Schreibzugriff geschützt.