Google
 

Trailing-Edge - PDP-10 Archives - BB-P363B-SM_1985 - mcb/nml/nml.req
There are 2 other files named nml.req in the archive. Click here to see a list.
! NET:<BRANDT.DEVELOPMENT>NML.REQ.1 8-Jun-82 10:56:11, Edit by BRANDT
!
!   Transfer definitions of NODE_ID buffers from NML.REQ to NMLCOM.REQ.
!
! NET:<VOBA.NML.DEVELOPMENT>NML.REQ.12 25-Mar-82 16:56:11, Edit by VOBA
!
! Define fields in entity data block structure to accomodate qualifier
! sub-queues for qualified entities. For qualified entities, the parameter
! variables are replaced by fields for queue headers, which point to
! the sub-queues indexed by qualified parameters of the entities.
! Clean up code and update copyright date.
!
! NET:<DECNET20-V3P1.NML>NML.REQ.5  6-Apr-81 09:24:55, Edit by GUNN
!
! Fix definition of NODE_DB_BLOCK to include common entity id fields.
!
! NET:<DECNET20-V3P1.NML>NML.REQ.3  2-Apr-81 10:39:51, Edit by GUNN
!
! Define fields in EDB to link EDB's on CIRCUIT id queue.
!
! NET:<DECNET20-V3P1.NML>NML.REQ.3 23-Feb-81 10:24:30, Edit by GUNN
!
! Add definitions for entity data bases.
!
! NET:<DECNET20-V3P1.NML>NML.REQ.1 20-Feb-81 08:50:46, Edit by GUNN
!
! Add definition for NODE ID buffer.
!
%title 'NML -- Network Management Layer Internal Definitions'

!                    COPYRIGHT (c) 1980, 1981, 1982
!                    DIGITAL EQUIPMENT CORPORATION
!                        Maynard, Massachusetts
!
!     This software is furnished under a license and may  be  used
!     and copied only in accordance with the terms of such license
!     and with the inclusion of the above copyright notice.   This
!     software  or any other copies thereof may not be provided or
!     otherwise made available to any other person.  No  title  to
!     and ownership of the software is hereby transferred.
!
!     The information  in  this  software  is  subject  to  change
!     without  notice  and should not be construed as a commitment
!     by DIGITAL EQUIPMENT CORPORATION.
!
!     DIGITAL assumes no responsibility for the use or reliability
!     of  its  software  on  equipment  which  is  not supplied by
!     DIGITAL.
!

!++
! Facility: LSG DECnet Network Management
!
! Abstract: The definitions in this file are used internally
!	    by the Network Management Layer.
!
! Environment: TOPS10/TOPS20 user mode, MCB RSX task level
!
! Author: Steven M. Jenness, Creation date: 10-Dec-80
!
!--
!
! EDB - Entity Data Block structure definition
!

$field ENTITY_DB_BLOCK_FIELDS =
    set
    EDB_QLINK = [$sub_block(Q_ENTRY_SIZE)], ! Queue header fields
    EDB_ENTITY_ID = [$bytes(17)],       ! Entity id (AI-16)

    %if $X25 and not $MCB               ! Parameter fields
    %then
    EDB_PARAMETER_FIELDS = [$sub_block(%if Q_HEADER_SIZE gtr 3
                                       %then Q_HEADER_SIZE
                                       %else 3 %fi)],
    %else
    EDB_PARAMETER_FIELDS = [$sub_block(3)],
    %fi

!   Overlaying

    %if $X25 and not $MCB
    %then
        $overlay (EDB_ENTITY_ID)
    EDB_QUALIFIER = [$bytes(17)],       ! Qualifier name string (AI-16)
        $continue
    %fi

        $overlay (EDB_ENTITY_ID)        ! Special case fields for NODE
    NDB_ENTITY_ID = [$bytes(9)],        ! NODE entity id
    NDB_NODE_TYPE = [$bits(3)],         ! NODE type 
        $continue

    %if $X25 and not $MCB               ! The qualifier queue is defined for
    %then                               ! the MODULE X25-ACCESS entity on the
        $overlay (EDB_PARAMETER_FIELDS) ! TOPS side only.
    EDB_QUALIFIER_QUEUE = [$sub_block(Q_HEADER_SIZE)],
        $continue
    %fi

        $overlay (EDB_PARAMETER_FIELDS)
    EDB_PARAMETER_COUNT = [$integer],   ! Count of number of parameters
    EDB_PARAMETER_ALLOCATION = [$integer], ! Units of parameter vector
    EDB_PARAMETER_VECTOR = [$address]   ! Address of parameter vector
        $continue
    tes;

literal
    ENTITY_DB_BLOCK_SIZE = $field_set_size, ! Size of block in words
    ENTITY_DB_BLOCK_ALLOCATION = ENTITY_DB_BLOCK_SIZE * %upval;

!
! NDB - Node Data Block structure definition
!

$field NODE_DB_BLOCK_FIELDS =
    set
    EDB_FIELDS = [$sub_block(ENTITY_DB_BLOCK_SIZE)], ! Common EDB fields
    NDB_CIRCUIT_QLINK = [$sub_block(Q_ENTRY_SIZE)], ! NODE circuit id list
    NDB_SVC_CIRCUIT = [$pointer]        ! Pointer to SERVICE CIRCUIT id
    tes;

literal
    NODE_DB_BLOCK_SIZE = $field_set_size,
    NODE_DB_BLOCK_ALLOCATION = NODE_DB_BLOCK_SIZE * %upval;

literal
    NDB$EXECUTOR = 1;                   ! Code for EXECUTOR in NDB_NODE_TYPE

macro
    ENTITY_DB_BLOCK =
        block [ENTITY_DB_BLOCK_SIZE] field (ENTITY_DB_BLOCK_FIELDS) %;

macro
    NODE_DB_BLOCK =
        block [NODE_DB_BLOCK_SIZE]
        field (ENTITY_DB_BLOCK_FIELDS,NODE_DB_BLOCK_FIELDS) %;

!
! PVB - Parameter Vector Block structure definition
!

$field PVB_ENTRY = 
    set
    PE_NUMBER = [$integer],             ! Parameter type number
    PE_DATA = [$integer],               ! Parameter data

!   Overlaying

        $overlay (PE_DATA)
    PE_ADDRESS = [$address],            ! or Address of parameter data
        $continue

        $overlay (PE_DATA)
    PE_POINTER = [$pointer]             ! or Pointer to parameter data
        $continue
    tes;

literal
    PVB_ENTRY_SIZE = $field_set_size,   ! Size of entry in fullwords
    PVB_ENTRY_ALLOCATION = $field_set_size * %upval; ! In units

$field PARAMETER_VECTOR_BLOCK =
    set
    PVB_PARAMETER = [$sub_block(PVB_ENTRY_SIZE)] ! Single parameter entry
    tes;

macro
    $NML$PVB_ENTRY_VECTOR (N) =
        blockvector [N,PVB_ENTRY_SIZE] field (PVB_ENTRY) %;

macro
    $NML$PVB_ENTRY_BLOCK =
        block [PVB_ENTRY_SIZE] field (PVB_ENTRY) %;
%title ''
%sbttl ''

!
! [End of NML.REQ]
! Local Modes:
! Mode:BLISS
! Auto Save Mode:2
! Comment Column:40
! Comment Rounding:+1
! End: