Programming Interface Information:
This information is NOT
intended to be
used as Programming Interfaces of VM/ESA. It is to be used for diagnosis only. |
SPXBK
Cross Reference (Contains links to field and bit definitions)
SPXBK Prolog
Name : HCPSPXBK Description: Interface for POSIX ID set requests DSECT : SPXBK Function : Contain specifications and responses for the "set POSIX IDs" function, Diagnose X'29C'. Located by : none Created by : HCPPXI (copied from/to guest storage) Deleted by : HCPPXI Serialized : CP's copy of the SPXBK is fetched by HCPVINOP into (VMDVOBUF). This area is governed by instruction-stream serialization.
SPXBK Control Block Content
SPXBK DSECT
Hex Dec Type/Val Lng Label (dup) Comments ---- ---- --------- ---- -------------- -------- 0000 0 Structure SPXBK Interface for POSIX ID set requests 0000 0 Dbl-Word 8 SPXHDR (0) 0000 0 Signed 2 SPXDIAGC Diagnose code eyecatcher 0000029C SPXDIAGV X'029C' Required value for SPXDIAGC 0002 2 Signed 2 SPXFCODE Diagnose function code: 00000000 SPXFUSER 0 0 = Set user IDs (UIDs) for calling virtual config 00000001 SPXFGRP 1 1 = Set group IDs (GIDs) for calling virtual config 00000002 SPXFNGRP 2 2 = NEWGRP function 0004 4 Signed 2 SPXDWLEN Size of block in doublewords 0006 6 Bitstring 1 SPXFLAGS Option flags: .1.. .... SPXALLID X'40' For functions FUSER and FGRP, if the calling process has appropriate privileges, set the real, effective, and saved set UIDs/GIDs. If this bit is off or the process is not authorized, set only the effective UID/GID. ..1. .... SPXNAMIN X'20' For function code FGRP, the GID(s) are to be set to the GID corresponding to SPXGNAME. For function FNGRP, if the login is a member of SPXGNAME, then the GID(s) are to be set to the GID GID corresponding to SPXGNAME ...1 .... SPXIDIN X'10' For functions FGRP, the GID(s) are to be set to SPXGID. For function FNGRP, if the login is a member of SPXGID, then the GID(s) are to be set to SPXGID. 0007 7 Bitstring 1 SPXRSVD1 Reserved for IBM use 00000008 SPXHDRL *-SPXHDR SPXFCN's length will vary depend on the function code that was specified. 0008 8 Dbl-Word 8 SPXFCN (0) Redefinition of the function unique data SPXFCN fields used for function SPXFGRP: cmnt* ORG SPXFCN For function SPXFGRP: 0008 8 Signed 4 * Reserved for IBM use 000C 12 Signed 4 SPXGID POSIX group ID (GID) for function FGRP when SPXNAMIN=0. 0010 16 Character 8 SPXGNAME POSIX group name for function FGRP when SPXNAMIN=1 00000010 SPXF1DL *-SPXFCN Length of function 1 data 00000018 SPXF1LEN SPXF1DL+SPXHDRL Length of function 1 and header 00000003 SPXF1SIZ (SPXF1LEN+7)/8 Size of function 1 QPXBK in DWs SPXFCN fields used for function SPXFNGRP: 0008 8 Signed 4 * Reserved for IBM use 000C 12 Signed 4 * (SPXGID) POSIX group ID (GID) for function FGRP when SPXNAMIN=0. 0010 16 Character 8 * (SPXGNAME) POSIX group name for function FGRP when SPXNAMIN=1 00000010 SPXF2DL *-SPXFCN Length of function 2 data 00000018 SPXF2LEN SPXF2DL+SPXHDRL Length of function 2 and header 00000003 SPXF2SIZ (SPXF2LEN+7)/8 Size of function 2 QPXBK in DWs SPXFCN fields used for function SPXFUSER: 0008 8 Signed 4 SPXUID POSIX user ID (UID) for function FUSER. 000C 12 Signed 4 * Reserved for IBM use 00000008 SPXF0DL *-SPXFCN Length of function 0 data 00000010 SPXF0LEN SPXF0DL+SPXHDRL Length of function 0 and header 00000002 SPXF0SIZ (SPXF0LEN+7)/8 Size of function 0 QPXBK in DWs The following equates define return codes from diagnose X'29C'. These values are passed back in register Ry. These return codes apply to all functions unless a parenthesized list of applicable function names precedes the description. 00000000 SPXEOK 0 Function succeeded. For FUSER/FGRP, only the effective ID was changed (cf. return code SPXEOKAL below). For FNGRP, all GIDs were changed. SPXGID contains the GID value. 00000001 SPXECODE 1 Incorrect value in SPXDIAGC 00000002 SPXEFUNC 2 Invalid function code in SPXFCODE 00000003 SPXELEN 3 Length in SPXDWLEN below minimum allowed 00000004 SPXEFLAG 4 Invalid option flags in SPXFLAGS or SPXRSVD1 is non-zero 00000005 SPXEAUTH 5 (FUSER,FGRP) Requestor not authorized to change UID/GID to specified value (FNGRP) Requesting login name is not a member of the specified group 00000006 SPXENFND 6 (FUSER,FGRP,FNGRP) Specified group ID or group name not defined 00000008 SPXEID 8 (FUSER,FGRP,FNGRP) Specified ID is not a valid UID or GID 00000009 SPXEDBAS 9 (FUSER,FGRP,FNGRP) Group database is invalid or inaccessible 0000000A SPXEOKAL 10 (FUSER,FGRP) Function succeeded. All IDs (real, effective, and saved set) were changed. 0000000B SPXEPXCA 11 (FUSER,FGRP,FNGRP) POSIX communication area has not been defined 0000000C SPXEAPID 12 (FUSER,FGRP,FNGRP) Active PID in POSIX communication area is not a PID allocated to the requesting virtural configuration
SPXBK Storage Layout
*** SPXBK - Interface for POSIX ID set requests * * +-------------+-------------+-------------+------+------+ * 0 | SPXDIAGC | SPXFCODE | SPXDWLEN |:FLAGS|:RSVD1| * +-------------+-------------+-------------+------+------+ * 8 |///////////////////////////| SPXGID | * +---------------------------+---------------------------+ * 10 | SPXGNAME | * +-------------------------------------------------------+ * 18 * *** SPXBK - Interface for POSIX ID set requests *** Overlay for SPXFCN in SPXBK * * +---------------------------+---------------------------+ * 8 |///////////////////////////|///////////////////////////| * +---------------------------+---------------------------+ * 10 |///////////////////////////////////////////////////////| * +-------------------------------------------------------+ * 18 * *** Overlay for SPXFCN in SPXBK *** Overlay for SPXFCN in SPXBK * * +---------------------------+---------------------------+ * 8 | SPXUID |///////////////////////////| * +---------------------------+---------------------------+ * 10 * *** Overlay for SPXFCN in SPXBK
SPXBK Cross Reference
(contains links to field and bit definitions)Symbol Dspl Value -------------- ---- -----SPXALLID 0006 40
SPXDIAGC 0000
SPXDIAGV 0000 0000029C
SPXDWLEN 0004
SPXEAPID 000C 0000000C
SPXEAUTH 000C 00000005
SPXECODE 000C 00000001
SPXEDBAS 000C 00000009
SPXEFLAG 000C 00000004
SPXEFUNC 000C 00000002
SPXEID 000C 00000008
SPXELEN 000C 00000003
SPXENFND 000C 00000006
SPXEOK 000C 00000000
SPXEOKAL 000C 0000000A
SPXEPXCA 000C 0000000B
SPXFCN 0008
SPXFCODE 0002
SPXFGRP 0002 00000001
SPXFLAGS 0006
SPXFNGRP 0002 00000002
SPXFUSER 0002 00000000
SPXF0DL 000C 00000008
SPXF0LEN 000C 00000010
SPXF0SIZ 000C 00000002
SPXF1DL 0010 00000010
SPXF1LEN 0010 00000018
SPXF1SIZ 0010 00000003
SPXF2DL 0010 00000010
SPXF2LEN 0010 00000018
SPXF2SIZ 0010 00000003
SPXGID 000C
SPXGNAME 0010
SPXHDR 0000
SPXHDRL 0007 00000008
SPXIDIN 0006 10
SPXNAMIN 0006 20
SPXRSVD1 0007
SPXUID 0008
Last updated on 3 Aug 1999 at 12:35:06 EDT.
Copyright IBM Corporation, 1990, 1999