z/OS UNIX System Services File System Interface Reference
Previous topic | Next topic | Contents | Contact z/OS | Library | PDF


BPXYNREG — Map interface block to vnode registration

z/OS UNIX System Services File System Interface Reference
SA23-2285-00

*        %GOTO NREGPRO  ;         /* Bilingual header
         MACRO
         BPXYNREG  &DSECT=YES,&LIST=YES
         GBLB  &NREG411
         AIF   (&NREG411 EQ 1).E411
&NREG411 SETB  1
         AIF   ('&LIST' EQ 'YES').A411
         PUSH  PRINT  BPXYNREG: BPX2REG (v_reg) parameter list
         PRINT OFF
         AGO   .A411
*                                  */
*%NREGPRO : ;
*/****START OF SPECIFICATIONS******************************************
*
*    $MAC (BPXYNREG) COMP(SCPX1) PROD(BPX):
*
*01* MACRO NAME: BPXYNREG
*
*01* DSECT NAME: N/A
*
*01* DESCRIPTIVE NAME: Interface Block to VNode Registration
*
*02*   ACRONYM: NREG
**/
*/*01* PROPRIETARY STATEMENT=                                        */
*/***PROPRIETARY_STATEMENT********************************************/
*/*                                                                  */
*/*                                                                  */
*/* LICENSED MATERIALS - PROPERTY OF IBM                             */
*/* THIS MACRO IS "RESTRICTED MATERIALS OF IBM"                      */
*/* 5650-ZOS (C) COPYRIGHT IBM CORP. 1993, 2003                      */
*/*                                                                  */
*/* STATUS= HBB7709                                                  */
*/*                                                                  */
*/***END_OF_PROPRIETARY_STATEMENT*************************************/
*/*
*
*01* EXTERNAL CLASSIFICATION:  GUPI
*01* END OF EXTERNAL CLASSIFICATION:
*
*01* FUNCTION:
*
*      The NREG maps the input to the v_register routine, BPXVNREG.
*
*01* METHOD OF ACCESS:
*
*02*   PL/X:
*
*        %INCLUDE SYSLIB(BPXYNREG)
*        By default, the NREG is based on NRegPtr.  If
*        other basing is desired, use %NREGBASE='BASED(XXXXXX)'.
*        If %NREGBASE='BASED(NREGPTR)' is coded, a Declare for
*        NREGPTR is also generated.
*
*02*   ASM:
*        With DSECT=NO, storage is allocated in line
*        and addressability is provided thru that DSECT or CSECT.
*        With DSECT=YES, a DSECT is produced and "USING NREG,reg"
*        is required for addressability.  Here "reg" contains the
*        address of NREG#LEN bytes of storage.
*        The default is DSECT=YES.
*
*01* SIZE: Release dependent.  Refer to the mapping.
*
*01* POINTED TO BY: In dynamic storage of routines calling BPXVNREG.
*
*01* CREATED BY: Caller of Syscall Routine
*
*01* DELETED BY: Caller of Syscall Routine
*
*01* STORAGE ATTRIBUTES:
*02*   SUBPOOL: n/a
*02*   KEY: n/a
*02*   RESIDENCY: Callers storage
*
*01* FREQUENCY: 1 per syscall that calls BPXVNREG
*
*01* SERIALIZATION: N/A
*
*01* DEPENDENCIES: None
*
*01* NOTES:
*           BPXYVFSI is a C program interface for the BPX1V (v_)
*           services.  The NREG structure in BPXYVFSI matches
*           the BPXYNREG structure.
*
*01* COMPONENT: z/OS UNIX (SCPX1)
*
*01* DISTRIBUTION LIBRARY:  AMACLIB                              @P1C
*
*01* EYE-CATCHER: NREG
*02*   OFFSET:  0
*02*   LENGTH:  4
*
****END OF SPECIFICATIONS*********************************************/
*        %GOTO NREGPLS  ;         /* Bilingual header
.A411    ANOP  ,
** BPXYNREG: NREG - LFS Registration routine parameter list
**  Used By:  VRG
         AIF   ('&DSECT' EQ 'NO').B411
NREG                 DSECT ,
         AGO   .C411
.B411    ANOP  ,
                     DS    0D
NREG                 DC    XL(NREG#LENGTH)'00'
                     ORG   NREG
.C411    ANOP  ,
NREGBEGIN            DS    0D
*
NREGID               DC    C'NREG'            Eye catcher
NREGLEN              DC    AL2(NREG#LENGTH)   Length of the structure
NREGVER              DC    AL2(NREG#VERSION)  NReg version number
NREGSTYPE            DS    F                  Server Type
NREGSNAMELEN         DS    F                  Length of Server name
NREGSNAME            DS    CL32               Server Name
NREGMAXVNTOKENS      DS    F                  Max # of VNTokens
NREGFLAGS            DS    CL1                Flags                @D4C
NREGFXHOTC           EQU   X'80'               Exit uses HOTC      @D4A
NREGNOWAIT           EQU   X'40'               for Quiesced FS     @D5A
NREGSECSFD           EQU   X'20'               for SFD severs      @P3A
NREGALLOCDEVNO       EQU   X'10'               allocate a devno    @D6A
NREGRES01            DS    CL3                Reserved field       @D4C
NREGENDOFVER1        DS    0F                 End of Version 1     @D4A
NREGFXEXITNAME       DS    CL8                Exit program name    @D4A
NREGFXINITPARM       DS    CL8                Init parm for Exit   @D4A
NREGABENDCODE        DS    F                  Abend Code received  @D4A
NREGABENDRSN         DS    F                  Abend Reason Code    @D4A
                     ORG   NREGABENDRSN                            @D6A
NREGDEVNO            DS    F                    or Output Devno    @D6A
NREGPFSTYPE          DS    CL8                Dependant PFS        @D5A
*
*   Constants
*
NREG#LENGTH          EQU   *-NREGBEGIN        Length of NREG
NREG#LENGTHVER1      EQU   NREGENDOFVER1-NREGBEGIN  Length of V1 NREG
NREG#VERSION1        EQU   1                  NReg Version 1
NREG#VERSION2        EQU   2                  NReg Version 2
NREG#VERSION         EQU   NREG#VERSION2      NReg Current Version
*      NRegSType constants
NREGSTYPE#FILE       EQU   1                  File Server type
NREGSTYPE#LOCK       EQU   2                  Lock Server type
NREGSTYPE#FEXP       EQU   3                  File Exporter type
NREGSTYPE#SFDS       EQU   4                  SFD server           @P3A
NREGSTYPE#MAX        EQU   4                  Max allowed srvr type
** BPXYNREG End
         SPACE 3
         AIF   ('&LIST' EQ 'YES').E411
         POP   PRINT
.E411    ANOP  ,
         MEND  ,                  Terminating PL/X comment           */
*
*%NREGPLS : ;
*%IF NREGBASE='' %THEN
*  %DO;
*    %NREGBASE='BASED(NREGPTR)';
*  %END;
*%IF TRANSLATE(NREGBASE)='BASED(NREGPTR)' %THEN
*  %DO;
*    DCL NRegPtr Ptr(31);         /* Pointer to NReg parameter list  */
*  %END;
*DCL
* 1    NReg       NREGBASE,
*  3   NRegID          Char(4),   /* +00 EBCDIC ID                   */
*  3   NRegLen         Fixed(15), /* +04 Length of NREG structure@P2C*/
*  3   NRegVer         Fixed(16), /* +06 NReg Version number         */
*  3   NRegSType       Fixed(32), /* +08 Server type                 */
*  3   NRegSNameLen    Fixed(31), /* +0C Length of Server name parm  */
*  3   NRegSName       Char(32),  /* +10 Server Name                 */
*  3   NRegMaxVNTokens Fixed(32), /* +30 Max # of VNTokens that will
*                                        be created for this server  */
*  3   NRegFlags       Bit(8),    /* +34 Flags                   @D4C*/
*    5  NregFxHotc      Bit(1),   /*      Invoke Exit with HOTC  @D4A*/
*    5  NregNoWait      Bit(1),   /*      for Quiesced File Sys  @D5A*/
*    5  NregSecSfd      Bit(1),   /*      Secondary SFD srvr     @P3A*/
*    5  NregAllocDevno  Bit(1),   /*      Allocate a Devno       @D6A*/
*  3   *               Char(3),   /* +35 Reserved                @D4C*/
*  3   NRegEndOfVer1   Char(0),   /* +38 End of Ver1 ----------  @D4A*/
*  3   NRegFileExporterArea,      /*                             @D4A*/
*    5  NregFxExitName Char(8),   /* +38 Exit program name       @D4A*/
*    5  NregFxInitParm Char(8),   /* +40 Init parm for Exit pgm  @D4A*/
*  3 NRegAbendCode     Fixed(32), /* +48 Abend Code received     @D4A*/
*  3 NRegAbendRsn      Fixed(32), /* +4C Abend Reason Code       @D4A*/
*    5 NRegDevno        Fixed(32),  /*   or Output Devno         @D6A*/
*  3 NRegPfsType       Char(8),   /* +50 Dependant PFS           @D5A*/
*  3 * Char(0) Bdy(Dword);        /* +58 Ensure NREG ends on
*                                        doubleword boundary         */
*DCL
*  NReg#ID       Char(4)   Constant('NREG'),/* Control Block Acronym */
*  NReg#LEN      Fixed(15) Constant(Length(NREG)),/* Length of NREG  */
*  NReg#Version  Fixed(16) Constant(NReg#Version2),/* Current    @D4C*/
*  NReg#Version1 Fixed(16) Constant(1),     /* Version 1 of NReg     */
*  NReg#LenVer1  Fixed(16) Constant(Offset(NRegEndOfVer1)),    /*@D4A*/
*  NReg#Version2 Fixed(16) Constant(2);     /* Version 2 of NReg @D4A*/
*
*  /* NRegSType constants                                            */
*DCL
*  NRegSType#FILE Fixed(32) Constant(1),/* File Server           @D1C*/
*  NRegSType#LOCK Fixed(32) Constant(2),/* Lock Server           @D1A*/
*  NRegSType#FEXP Fixed(32) Constant(3),/* File Exporter         @D4A*/
*  NRegSType#SFDS Fixed(32) Constant(4),/* SFD server            @P3A*/
*  NRegSType#MAX  Fixed(32) Constant(4);/* Max allowed srvr type @P3C*/
*
*       /* Note: If new Server types are added, DISPLAY OMVS should
*            be updated as follows:
*            (1) In BPXZMDEF, msg BPXO40If, add a type to the array.
*            (2) Recompile BPXMIMST.                                 */
*

Go to the previous page Go to the next page




Copyright IBM Corporation 1990, 2014