[comp.os.vms] Info-Vax Digest V0 #17

Info-Vax-REQUEST@KL.SRI.COM.UUCP (05/11/87)

Info-Vax Digest          Monday, 11 May 1987       Volume 0 : Issue 17

Today's Topics:
  Re: clearing the screen
  Tracing "transit" packets through a DECnet node
  Definitions of PCB status bits and scheduler state codes for VAX C
  Quick way to see if a DECnet node is reachable
  Re: Where are PCB$ and SCH$ defines??
  Printer queue on HP Laser Jet+
  A leading blank page on our printer queue.
  Re: Where are PCB$ and SCH$ defines??
  Re: Where are PCB$ and SCH$ defines??
  Re: How do you ring bell in DCL file?
----------------------------------------------------------------------

Date: 8 May 87 20:10:14 GMT
From: amethyst!face@arizona.edu  (Chris Janton)
Subject: Re: clearing the screen

To clear the screen and ring the bell, leaving the cursor positioned on
the first line do the following - (assumes a VT100)

1.  Create a file with the proper escape sequences: (assume name clear_bell)

        <esc>[;H<esc>[J<bel>

2.  Create an FDL file that looks like this (assume name clear_bell.fdl)

 IDENT  " 8-MAY-1987 12:40:05   VAX/VMS ANALYZE/RMS_FILE Utility"

 SYSTEM
        SOURCE                  VAX/VMS

 FILE
        ALLOCATION              3
        BEST_TRY_CONTIGUOUS     no
        CLUSTER_SIZE            3
        CONTIGUOUS              no
        EXTENSION               0
        GLOBAL_BUFFER_COUNT     0
        NAME                    "CLEAR_BELL."
        ORGANIZATION            sequential
        OWNER                   [25,14]
        PROTECTION              (system:RWED, owner:RWED, group:RE, world:E)

 RECORD
        BLOCK_SPAN              yes
        CARRIAGE_CONTROL        none
        FORMAT                  variable
        SIZE                    255

The key point here is the carriage_control entry of "none"

3.  Execute the command

        Convert/Fdl=clear_bell clear_bell clear_bell
 which creates a new version of the file clear_bell with the appropriate
file attributes.

4.  Put the new clear_bell file in a suitable place.

5.  In DCL procedures use the command

        $ type clear_bell.

to clear the screen and ring the bell.

Note:  I realize that this requires an image activation but TYPE is usually
installed so it shouldn't matter too much.  How often do you clear the screen
anyway?

------------------------------

Date: 9 May 87 15:16:10 GMT
From: hao!gaia!jon@ames.arpa  (Jonathan Corbet)
Subject: Tracing "transit" packets through a DECnet node


        Does anybody out there know how to find the source of "transit"
packets being sent through a DECnet node?  I have a critical, but slow
(async!) line that I need to keep relatively free during the day, and it
sometimes gets bogged down with data being sent between two remote nodes.
There are far too many nodes on this net for me to try "tell xxx show known
links" to each one...is there maybe an easier way?

Thanks,
Jonathan Corbet
{seismo | hplabs | gatech}!hao!gaia!jon
{ucbvax | allegra | cbosgd}!nbires!gaia!jon
--
Jonathan Corbet
{seismo | hplabs | gatech}!hao!gaia!jon
{ucbvax | allegra | cbosgd}!nbires!gaia!jon

------------------------------

Date: Sat, 9 May 87 09:22:21 PDT
From: nagy%warner.hepnet@lbl.arpa
Subject: Definitions of PCB status bits and scheduler state codes for
         VAX C

>Where are PCB$ and SCH$ defines??
>
>Where is this information???  If someone has previously needed this data for
>a C program and has already created '.h' files I would greatly appreciate
>a copy of them.
>
>Jim Vallino
>Siemens Research and Technology Lab.

$PCBDEF and $STATEDEF are defined in LIB.MLB.  Included below are VAX C
header files $PCBSTSDEF.H (process status bit definitions from the PCB)
and $STATEDEF.H (scheduler state codes).  These were prepared from the
BLISS require file SYS$LIBRARY:LIB.REQ shipped with VMS by a set of
procedures I wrote and a bit of judicious editting.

=Frank Nagy
=Fermilab Research Division EED/Controls
=FNAL::NAGY.HEPNET or NAGY@FNAL.Bitnet

========================Cut Here for $PCBSTSDEF.H===========================
/*+ $PCBSTSDEF
  Module ($PCBSTSDEF) of FERMI$LIB:LCLCDEF.TLB.

  Defines symbols for the process status bits in the PCB which is
  returned by $GETJPI for the JPI$_STS item code.
-*/
/* Extracted $PCBDEF from SYS$LIBRARY:LIB on 30-DEC-1983*/
                                /* Bit numbers: */
#define  PCB$V_ASTPEN    17     /* AST pending */
#define  PCB$V_BATCH     14     /* Process is a batch job */
#define  PCB$V_DELPEN    1      /* Delete pending */
#define  PCB$V_DISAWS    24     /* Disable automatic WS adjustment */
#define  PCB$V_FORCPEN   2      /* Force exit pending */
#define  PCB$V_HIBER     19     /* Hibernate after initial image activate */
#define  PCB$V_INQUAN    3      /* Initial quantum in progress */
#define  PCB$V_LOGIN     20     /* Login w/o reading authorization file */
#define  PCB$V_NETWRK    21     /* Network connected job */
#define  PCB$V_NOACNT    15     /* No accounting for process */
#define  PCB$V_NODELET   23     /* No delete */
#define  PCB$V_PHDRES    18     /* Process header resident */
#define  PCB$V_PSWAPM    4      /* Process swap mode (1noswap) */
#define  PCB$V_PWRAST    22     /* Power failure AST */
#define  PCB$V_RES       0      /* Resident in balance set */
#define  PCB$V_RESPEN    5      /* Resume pending, skip suspend */
#define  PCB$V_SSFEXC    6      /* System service exception enabled (K) */
#define  PCB$V_SSFEXCE   7      /* System service exception enabled (E) */
#define  PCB$V_SSFEXCS   8      /* System service exception enabled (S) */
#define  PCB$V_SSFEXCU   9      /* System service exception enabled (U) */
#define  PCB$V_SSRWAIT   10     /* System service resource wait disable */
#define  PCB$V_SUSPEN    11     /* Suspend pending */
#define  PCB$V_SWPVBN    16     /* Warite for swap VBN in progress */
#define  PCB$V_WAKEPEN   12     /* Wake pending, skip hibernate */
#define  PCB$V_WALL      13     /* Wait for all events in mask */
                                /* Bit masks: */
#define  PCB$M_ASTPEN    (1 << PCB$V_ASTPEN)
#define  PCB$M_BATCH     (1 << PCB$V_BATCH)
#define  PCB$M_DELPEN    (1 << PCB$V_DELPEN)
#define  PCB$M_DISAWS    (1 << PCB$V_DISAWS)
#define  PCB$M_FORCPEN   (1 << PCB$V_FORCPEN)
#define  PCB$M_HIBER     (1 << PCB$V_HIBER)
#define  PCB$M_INQUAN    (1 << PCB$V_INQUAN)
#define  PCB$M_LOGIN     (1 << PCB$V_LOGIN)
#define  PCB$M_NETWRK    (1 << PCB$V_NETWRK)
#define  PCB$M_NOACNT    (1 << PCB$V_NOACNT)
#define  PCB$M_NODELET   (1 << PCB$V_NODELET)
#define  PCB$M_PHDRES    (1 << PCB$V_PHDRES)
#define  PCB$M_PSWAPM    (1 << PCB$V_PSWAPM)
#define  PCB$M_PWRAST    (1 << PCB$V_PWRAST)
#define  PCB$M_RES       (1 << PCB$V_RES)
#define  PCB$M_RESPEN    (1 << PCB$V_RESPEN)
#define  PCB$M_SSFEXC    (1 << PCB$V_SSFEXC)
#define  PCB$M_SSFEXCE   (1 << PCB$V_SSFEXCE)
#define  PCB$M_SSFEXCS   (1 << PCB$V_SSFEXCS)
#define  PCB$M_SSFEXCU   (1 << PCB$V_SSFEXCU)
#define  PCB$M_SSRWAIT   (1 << PCB$V_SSRWAIT)
#define  PCB$M_SUSPEN    (1 << PCB$V_SUSPEN)
#define  PCB$M_SWPVBN    (1 << PCB$V_SWPVBN)
#define  PCB$M_WAKEPEN   (1 << PCB$V_WAKEPEN)
#define  PCB$M_WALL      (1 << PCB$V_WALL)
/*
  End of $PCBSTSDEF module.
*/
========================Cut Here for $STATEDEF.H===========================
/*+ $STATEDEF
  Module ($STATEDEF) of FERMI$LIB:LCLCDEF.TLB.

  Defines symbols for the process's scheduler state returned
  by $GETJPI for the JPI$_STATE item code.
-*/
/* Extracted $STATEDEF from SYS$LIBRARY:LIB.REQ on 09-May-1987*/

#define SCH$C_COLPG     1       /* collided page wait */
#define SCH$C_MWAIT     2       /* mutex and miscellaneous resource wait */
#define SCH$C_CEF       3       /* common event flag wait state */
#define SCH$C_PFW       4       /* page fault wait */
#define SCH$C_LEF       5       /* local event flag wait */
#define SCH$C_LEFO      6       /* local event flag wait out of balance set */
#define SCH$C_HIB       7       /* hibernate wait */
#define SCH$C_HIBO      8       /* hibernate wait out of balance set */
#define SCH$C_SUSP      9       /* suspended */
#define SCH$C_SUSPO     10      /* suspended out of the balance set */
#define SCH$C_FPG       11      /* freepage wait */
#define SCH$C_COM       12      /* compute, in balance set state */
#define SCH$C_COMO      13      /* compute, out of balance set state */
#define SCH$C_CUR       14      /* current process state */

------------------------------

Date: 9 May 87 15:58:05 GMT
From: ucsdhub!hp-sdd!ncr-sd!ncrcae!hubcap!gatech!hao!gaia!jon@sdcsvax.
      ucsd.edu  (Jonathan Corbet)
Subject: Quick way to see if a DECnet node is reachable

Somebody recently asked about how one might quickly see if a DECnet node
is reachable.  Below is some code which does just that.  It uses the
(undocumented) netacp calls that were published in the Pageswapper last
year.  Be warned: this stuff is undocumented, unsupported.  It could break
at any new release of the system!

There are two files here, "reachable.c" and "nfbdef.h".  The latter is a
little long, but I have modified it enough (mostly by adding structure
definitions) that I couldn't just say "get it from lib.mlb".

enjoy.

Jonathan Corbet
{seismo | hplabs | gatech}!hao!gaia!jon
{ucbvax | allegra | cbosgd}!nbires!gaia!jon


------- reachable.c ---------------------
/* 1/86 jc */

# include "nfbdef.h"
# include <iodef.h>
# include <stdio.h>

# define error(s) (((s) & 0x1) == 0)


reachable (node)
char *node;
/*
 * Return TRUE iff the given node is reachable.
 * NOTE:        This routine relies on an undocumented interface to NETACP
 *              that is discussed in the January '86 Pageswapper.
 */
{
        struct nfb nfb;
        struct nfbkey key;
        int chan = 0, status, len = 0, ef = 0;
        short iosb[4];
        char buf[1024];
        int nfbd[2] = { sizeof (struct nfb), &nfb };
        int keyd[2] = { sizeof (struct nfbkey), &key };
/*
 * Set up the NFB.
 */
        nfb.nfb$b_fct = NFB$C_FC_SHOW;
        nfb.nfb$b_flags = NFB$M_MULT;
        nfb.nfb$b_database = NFB$C_DB_NDI;
        nfb.nfb$l_srch_key = NFB$C_NDI_REA;
        nfb.nfb$b_oper = NFB$C_OP_EQL;
        nfb.nfb$l_srch2_key = NFB$C_NDI_LOO;
        nfb.nfb$b_oper2 = NFB$C_OP_NEQ;
        nfb.nfb$b_mbz1 = 0;
        nfb.nfb$w_cell_size = 0;
        nfb.nfb$l_fldid[0] = NFB$C_NDI_NNA;
        nfb.nfb$l_fldid[1] = NFB$C_ENDOFLIST;
/*
 * Set up the match key.
 */
        key.p4_count = 0;
        key.srch = 1;
        key.srch2 = 1;
        key.start = 0;
/*
 * Get a net channel.
 */
        lib$get_ef (&ef);
        status = sys$assign (descr ("_NET:"), &chan, 0, 0);
        if (error (status))
                syserr (status, "Assign to net");
/*
 * Do the qio.
 */
        status = sys$qiow (ef, chan, IO$_ACPCONTROL, iosb, 0, 0,
                nfbd, keyd, &len, descr_n (buf, 1024), 0, 0);
        if (error (status))
                syserr (status, "QIO status");
        else if error (iosb[0])
                syserr (iosb[0], "QIO iosb");
/*
 * Release our resources.
 */
        sys$dassgn (chan);
        lib$free_ef (&ef);
/*
 * See if the node is reachable.
 */
        return (is_reachable (buf, len, node));
}




is_reachable (buf, len, node)
char *buf;
int len;
char *node;
/*
 * Pass through the given buffer and see if the given node appears therein.
 */
{
        int length;
        char *cp = buf;
/*
 * Pass through the structure.
 */
        while ((cp - buf) < len)
        {
        /*
         * The first two bytes are the length of the node name.  Sometimes
         * one sees a length of zero, caused by nodes in the same area for
         * which no name has been set.
         */
                if (length = * (short *) cp)
                {
                        if (! strncmp (node, cp + 2, length))
                                return (TRUE);
                }
        /*
         * Advance to the next name.
         */
                cp += length + 2;
        }
        return (FALSE);
}


------- nfbdef.h -----------------------

/*
        $NFBDEF symbol definitions from LIB.MLB
 */
/*
 * My own version of this file, with comments and structure definitions
 * added.  jc.
 */
# define        NFB$B_DATABASE  0X2
# define        NFB$B_FCT       0X0
# define        NFB$B_FLAGS     0X1
# define        NFB$B_MBZ1      0XD
# define        NFB$B_OPER      0X3
# define        NFB$B_OPER2     0XC
# define        NFB$B_STR_TEXT  0X2
# define        NFB$C_AJI_ADD   0X13010010
# define        NFB$C_AJI_BLO   0X13010013
# define        NFB$C_AJI_CIR   0X13020042
# define        NFB$C_AJI_COL   0X13020040
# define        NFB$C_AJI_LCK   0X13000001
# define        NFB$C_AJI_LIT   0X13010012
# define        NFB$C_AJI_NNA   0X13020041
# define        NFB$C_AJI_REA   0X13000002
# define        NFB$C_AJI_RPR   0X13010014
# define        NFB$C_AJI_TYP   0X13010011
# define        NFB$C_ARI_ADD   0X14010010
# define        NFB$C_ARI_COL   0X14020040
# define        NFB$C_ARI_DCO   0X14010011
# define        NFB$C_ARI_DHO   0X14010012
# define        NFB$C_ARI_DLI   0X14020041
# define        NFB$C_ARI_LCK   0X14000001
# define        NFB$C_ARI_NND   0X14010013
# define        NFB$C_ARI_REA   0X14000002
# define        NFB$C_CRI_ACB   0X4010029
# define        NFB$C_CRI_ACI   0X401002A
# define        NFB$C_CRI_BBT   0X4010025
# define        NFB$C_CRI_BLK   0X4000003
# define        NFB$C_CRI_BLO   0X4010017
# define        NFB$C_CRI_CHN   0X4010021
# define        NFB$C_CRI_CHR   0X4020043
# define        NFB$C_CRI_CNT   0X4020044
# define        NFB$C_CRI_COL   0X4020040
# define        NFB$C_CRI_COS   0X4010018
# define        NFB$C_CRI_CTA   0X4010011
# define        NFB$C_CRI_DEVNAM        0X402004A
# define        NFB$C_CRI_DLM   0X4000005
# define        NFB$C_CRI_DRT   0X4010036
# define        NFB$C_CRI_DTE   0X4020049
# define        NFB$C_CRI_DTH   0X4010031
# define        NFB$C_CRI_DYB   0X401002E
# define        NFB$C_CRI_DYI   0X401002F
# define        NFB$C_CRI_DYT   0X4010030
# define        NFB$C_CRI_HET   0X4010019
# define        NFB$C_CRI_IAB   0X401002B
# define        NFB$C_CRI_IAI   0X401002C
# define        NFB$C_CRI_IAT   0X401002D
# define        NFB$C_CRI_LCK   0X4000001
# define        NFB$C_CRI_LCT   0X4010015
# define        NFB$C_CRI_LIT   0X401001A
# define        NFB$C_CRI_LOO   0X4020046
# define        NFB$C_CRI_MBL   0X4010022
# define        NFB$C_CRI_MRB   0X4010027
# define        NFB$C_CRI_MRC   0X401001B
# define        NFB$C_CRI_MRT   0X4010034
# define        NFB$C_CRI_MST   0X4010032
# define        NFB$C_CRI_MTR   0X4010028
# define        NFB$C_CRI_MWI   0X4010023
# define        NFB$C_CRI_NAM   0X4020041
# define        NFB$C_CRI_NUM   0X4020048
# define        NFB$C_CRI_OWPID 0X4010010
# define        NFB$C_CRI_P2P   0X4020045
# define        NFB$C_CRI_PLS   0X401001E
# define        NFB$C_CRI_PNA   0X4010016
# define        NFB$C_CRI_PNN   0X4020047
# define        NFB$C_CRI_POL   0X401001D
# define        NFB$C_CRI_RCT   0X401001C
# define        NFB$C_CRI_RPR   0X4010035
# define        NFB$C_CRI_SER   0X4000002
# define        NFB$C_CRI_SRV   0X4010012
# define        NFB$C_CRI_STA   0X4010013
# define        NFB$C_CRI_SUB   0X4010014
# define        NFB$C_CRI_TRI   0X4010024
# define        NFB$C_CRI_TRT   0X4010026
# define        NFB$C_CRI_TYP   0X4010020
# define        NFB$C_CRI_USE   0X401001F
# define        NFB$C_CRI_VER   0X4000004
# define        NFB$C_CRI_VMSNAM        0X4020042
# define        NFB$C_CRI_XPT   0X4010033
# define        NFB$C_CTX_SIZE  0X40
# define        NFB$C_DB_AJI    0X13    /* Adjacency information        */
# define        NFB$C_DB_ARI    0X14    /* Area information             */
# define        NFB$C_DB_CRI    0X4     /* Circuit information          */
# define        NFB$C_DB_EFI    0X6     /* Event logging filters        */
# define        NFB$C_DB_ESI    0X7     /* Event logging sinks          */
# define        NFB$C_DB_LLI    0X8     /* Logical links                */
# define        NFB$C_DB_LNI    0X1     /* Local node information       */
# define        NFB$C_DB_MAX    0X1B
# define        NFB$C_DB_NDI    0X2     /* Common node information      */
# define        NFB$C_DB_OBI    0X3     /* Object information           */
# define        NFB$C_DB_PLI    0X5     /* Line information             */
# define        NFB$C_DB_PSI1   0X15
# define        NFB$C_DB_PSI2   0X16
# define        NFB$C_DB_PSI3   0X17
# define        NFB$C_DB_PSI4   0X18
# define        NFB$C_DB_PSI5   0X19
# define        NFB$C_DB_SDI    0X1A    /* Service (DLE) Information    */
# define        NFB$C_DB_SPI    0X12    /* Server process info          */
# define        NFB$C_DB_XAI    0X1B    /* X.25 access database         */
# define        NFB$C_DB_XD5    0XD
# define        NFB$C_DB_XD9    0XF
# define        NFB$C_DB_XDI    0XB
# define        NFB$C_DB_XGI    0XA
# define        NFB$C_DB_XNI    0X9
# define        NFB$C_DB_XS5    0XC
# define        NFB$C_DB_XS9    0XE
# define        NFB$C_DB_XTI    0X10
# define        NFB$C_DB_XTT    0X11
# define        NFB$C_DB_XXX    0X1C

# define        NFB$C_DECLNAME  0X15            /* Declare name         */
# define        NFB$C_DECLOBJ   0X16            /* Declare object       */
# define        NFB$C_DECLSERV  0X17            /* Declare server avail */
# define        NFB$C_EFI_B1    0X6010012
# define        NFB$C_EFI_B2    0X6010013
# define        NFB$C_EFI_COL   0X6020040
# define        NFB$C_EFI_EVE   0X6020041
# define        NFB$C_EFI_LCK   0X6000001
# define        NFB$C_EFI_SB1   0X6020042
# define        NFB$C_EFI_SB2   0X6020043
# define        NFB$C_EFI_SB3   0X6020044
# define        NFB$C_EFI_SIN   0X6010010
# define        NFB$C_EFI_SP1   0X6010011
# define        NFB$C_ENDOFLIST 0X0
# define        NFB$C_ESI_B1    0X7010013
# define        NFB$C_ESI_B2    0X7010014
# define        NFB$C_ESI_COL   0X7020040
# define        NFB$C_ESI_LCK   0X7000001
# define        NFB$C_ESI_LNA   0X7020041
# define        NFB$C_ESI_SB1   0X7020042
# define        NFB$C_ESI_SB2   0X7020043
# define        NFB$C_ESI_SB3   0X7020044
# define        NFB$C_ESI_SNK   0X7010010
# define        NFB$C_ESI_SP1   0X7010012
# define        NFB$C_ESI_STA   0X7010011
# define        NFB$C_FC_CLEAR  0X24            /* Clear field values      */
# define        NFB$C_FC_DELETE 0X21            /* Delete an entry from db */
# define        NFB$C_FC_LOOP   0X26            /* (PSI) loop x.25 lines   */
# define        NFB$C_FC_MAX    0X26
# define        NFB$C_FC_SET    0X23            /* Set/modify field values */
# define        NFB$C_FC_SHOW   0X22            /* Return specified info   */
# define        NFB$C_FC_ZERCOU 0X25            /* Zero counters           */
# define        NFB$C_LENGTH    0X10
# define        NFB$C_LLI_CNT   0X8010018
# define        NFB$C_LLI_COL   0X8020040
# define        NFB$C_LLI_DLY   0X8010010
# define        NFB$C_LLI_IPID  0X8010016
# define        NFB$C_LLI_LCK   0X8000001
# define        NFB$C_LLI_LLN   0X8010012
# define        NFB$C_LLI_PID   0X8010015
# define        NFB$C_LLI_PNA   0X8010014
# define        NFB$C_LLI_PNN   0X8020043
# define        NFB$C_LLI_PRC   0X8020042
# define        NFB$C_LLI_RID   0X8020044
# define        NFB$C_LLI_RLN   0X8010013
# define        NFB$C_LLI_STA   0X8010011
# define        NFB$C_LLI_USR   0X8020041
# define        NFB$C_LLI_XWB   0X8010017
# define        NFB$C_LNI_ACL   0X1010011
# define        NFB$C_LNI_ADD   0X1010010
# define        NFB$C_LNI_ALI   0X1010033
# define        NFB$C_LNI_AMC   0X1010030
# define        NFB$C_LNI_AMH   0X1010031
# define        NFB$C_LNI_BRT   0X101002C
# define        NFB$C_LNI_BUS   0X1010024
# define        NFB$C_LNI_CNT   0X1020042
# define        NFB$C_LNI_COL   0X1020040
# define        NFB$C_LNI_DAC   0X1010028
# define        NFB$C_LNI_DFA   0X1010016
# define        NFB$C_LNI_DPX   0X1010029
# define        NFB$C_LNI_DWE   0X1010017
# define        NFB$C_LNI_ETY   0X101001A
# define        NFB$C_LNI_IAT   0X1010018
# define        NFB$C_LNI_IDE   0X1020043
# define        NFB$C_LNI_ITI   0X1010012
# define        NFB$C_LNI_LCK   0X1000001
# define        NFB$C_LNI_LPC   0X1010025
# define        NFB$C_LNI_LPD   0X1010027
# define        NFB$C_LNI_LPH   0X101002B
# define        NFB$C_LNI_LPL   0X1010026
# define        NFB$C_LNI_MAD   0X101001E
# define        NFB$C_LNI_MAR   0X101002D
# define        NFB$C_LNI_MBE   0X101002E
# define        NFB$C_LNI_MBR   0X101002F
# define        NFB$C_LNI_MBU   0X1010023
# define        NFB$C_LNI_MCO   0X1010020
# define        NFB$C_LNI_MHO   0X1010021
# define        NFB$C_LNI_MLK   0X1010015
# define        NFB$C_LNI_MLN   0X101001F
# define        NFB$C_LNI_MVE   0X1020044
# define        NFB$C_LNI_MVI   0X1010022
# define        NFB$C_LNI_NAM   0X1020041
# define        NFB$C_LNI_NVE   0X1020045
# define        NFB$C_LNI_OTI   0X1010013
# define        NFB$C_LNI_PHA   0X1020047
# define        NFB$C_LNI_PIQ   0X101002A
# define        NFB$C_LNI_RFA   0X1010019
# define        NFB$C_LNI_RSI   0X101001C
# define        NFB$C_LNI_RTI   0X101001B
# define        NFB$C_LNI_RVE   0X1020046
# define        NFB$C_LNI_SAD   0X101001D
# define        NFB$C_LNI_SBS   0X1010032
# define        NFB$C_LNI_STA   0X1010014
# define        NFB$C_LNI_SUP   0X1000002
# define        NFB$C_LOGEVENT  0X1C
/*
 * Node information that can be gotten.
 */
# define        NFB$C_NDI_ACC   0X2010020 /* L: Access switch           */
# define        NFB$C_NDI_ACL   0X2010014 /* L: Active links            */
# define        NFB$C_NDI_ADD   0X2010012 /* L: address                 */
# define        NFB$C_NDI_CNT   0X2020042 /* S: Counters                */
# define        NFB$C_NDI_COL   0X2020040 /* S: Collating fields        */
# define        NFB$C_NDI_CPU   0X201001A /* L: CPU type                */
# define        NFB$C_NDI_CTA   0X2010011 /* L: Due time for counters   */
# define        NFB$C_NDI_CTI   0X2010013 /* L: Counter timer           */
# define        NFB$C_NDI_DAD   0X201001C /* L: Dump address            */
# define        NFB$C_NDI_DCO   0X2010017 /* L: Destination cost        */
# define        NFB$C_NDI_DCT   0X201001D /* L: Dump count              */
# define        NFB$C_NDI_DEL   0X2010015 /* L: Delay                   */
# define        NFB$C_NDI_DFL   0X2020056 /* S: Diagnostic load file    */
# define        NFB$C_NDI_DHO   0X2010018 /* L: Destination hops        */
# define        NFB$C_NDI_DLI   0X202004D /* S: Destination line        */
# define        NFB$C_NDI_DTY   0X2010016 /* L: Destination type        */
# define        NFB$C_NDI_DUM   0X202004A /* S: Dump file               */
# define        NFB$C_NDI_HAC   0X2020041 /* S: Node addr/loopline      */
# define        NFB$C_NDI_HWA   0X2020057 /* S: Hardware NI addr        */
# define        NFB$C_NDI_IHO   0X201001F /* L: Host                    */
# define        NFB$C_NDI_LCK   0X2000001 /* B: Parameters are locked   */
# define        NFB$C_NDI_LOA   0X2020046 /* S: Load file               */
# define        NFB$C_NDI_LOO   0X2000002 /* B: Loopback node           */
# define        NFB$C_NDI_LPA   0X2020058 /* S: Loop assist NI addr     */
# define        NFB$C_NDI_NAC   0X2020052 /* S: Nonpriv user account    */
# define        NFB$C_NDI_NLI   0X202004C /* S: Loopback line           */
# define        NFB$C_NDI_NNA   0X2020043 /* S: Node name               */
# define        NFB$C_NDI_NND   0X2010022 /* L: Next node address       */
# define        NFB$C_NDI_NNN   0X2020059 /* S: Next node name          */
# define        NFB$C_NDI_NPW   0X2020053 /* S: Nonpriv password        */
# define        NFB$C_NDI_NUS   0X2020051 /* S: Nonpriv user id         */
# define        NFB$C_NDI_OHO   0X201001E /* L: Host                    */
# define        NFB$C_NDI_PAC   0X202004F /* S: Priveleged account      */
# define        NFB$C_NDI_PPW   0X2020050 /* S: Priveleged password     */
# define        NFB$C_NDI_PRX   0X2010021 /* L: Proxy parameter         */
# define        NFB$C_NDI_PUS   0X202004E /* S: Priveleged user ID      */
# define        NFB$C_NDI_REA   0X2000003 /* B: Node is reachable       */
# define        NFB$C_NDI_RPA   0X2020054 /* S: Receive password        */
# define        NFB$C_NDI_SDU   0X202004B /* S: Secondary dumper        */
# define        NFB$C_NDI_SDV   0X2010019 /* L: Service device          */
# define        NFB$C_NDI_SID   0X2020049 /* S: Software ID             */
# define        NFB$C_NDI_SLI   0X2020044 /* S: Service line            */
# define        NFB$C_NDI_SLO   0X2020047 /* S: Secondary loader        */
# define        NFB$C_NDI_SNV   0X2010023 /* L: Service node version    */
# define        NFB$C_NDI_SPA   0X2020045 /* S: Service password        */
# define        NFB$C_NDI_STY   0X201001B /* L: Software type           */
# define        NFB$C_NDI_TAD   0X2010010 /* L: Local node address      */
# define        NFB$C_NDI_TLO   0X2020048 /* S: Tertiary loader         */
# define        NFB$C_NDI_TPA   0X2020055 /* S: Transmit password       */
# define        NFB$C_OBI_ACC   0X3020047
# define        NFB$C_OBI_CHN   0X3010013
# define        NFB$C_OBI_COL   0X3020040
# define        NFB$C_OBI_FID   0X3020045
# define        NFB$C_OBI_HPR   0X3010011
# define        NFB$C_OBI_IAC   0X3020043
# define        NFB$C_OBI_LCK   0X3000001
# define        NFB$C_OBI_LPR   0X3010010
# define        NFB$C_OBI_NAM   0X3020044
# define        NFB$C_OBI_NUM   0X3010014
# define        NFB$C_OBI_PID   0X3010015
# define        NFB$C_OBI_PRX   0X3010016
# define        NFB$C_OBI_PSW   0X3020048
# define        NFB$C_OBI_SET   0X3000002
# define        NFB$C_OBI_SFI   0X3020042
# define        NFB$C_OBI_UCB   0X3010012
# define        NFB$C_OBI_USR   0X3020046
# define        NFB$C_OBI_ZNA   0X3020041
/*
 * Comparison operation codes.
 */
# define        NFB$C_OP_EQL    0X0             /* Equal to             */
# define        NFB$C_OP_FNDMAX 0X5             /* */
# define        NFB$C_OP_FNDMIN 0X4
# define        NFB$C_OP_FNDPOS 0X6
# define        NFB$C_OP_GTRU   0X1             /* Greater than, unsigned */
# define        NFB$C_OP_LSSU   0X2             /* Less than, unsigned  */
# define        NFB$C_OP_MAXFCT 0X3
# define        NFB$C_OP_MAXINT 0X6
# define        NFB$C_OP_NEQ    0X3             /* Not equal            */

# define        NFB$C_PLI_BFN   0X501001E
# define        NFB$C_PLI_BFS   0X5010027
# define        NFB$C_PLI_BUS   0X501001F
# define        NFB$C_PLI_CHR   0X5020043
# define        NFB$C_PLI_CLO   0X5000005
# define        NFB$C_PLI_CNT   0X5020044
# define        NFB$C_PLI_COL   0X5020040
# define        NFB$C_PLI_CON   0X5000004
# define        NFB$C_PLI_CTA   0X5010010
# define        NFB$C_PLI_DDT   0X501001B
# define        NFB$C_PLI_DEVNAM        0X5020047
# define        NFB$C_PLI_DLT   0X501001C
# define        NFB$C_PLI_DUP   0X5000003
# define        NFB$C_PLI_EPT   0X5010026
# define        NFB$C_PLI_HTI   0X5010016
# define        NFB$C_PLI_HWA   0X5020046
# define        NFB$C_PLI_LCK   0X5000001
# define        NFB$C_PLI_LCT   0X5010013
# define        NFB$C_PLI_LPC   0X5010023
# define        NFB$C_PLI_LPD   0X5010025
# define        NFB$C_PLI_LPL   0X5010024
# define        NFB$C_PLI_MBL   0X5010017
# define        NFB$C_PLI_MCD   0X5020045
# define        NFB$C_PLI_MOD   0X5010022
# define        NFB$C_PLI_MRT   0X5010018
# define        NFB$C_PLI_MWI   0X5010019
# define        NFB$C_PLI_NAM   0X5020041
# define        NFB$C_PLI_PLVEC 0X5010020
# define        NFB$C_PLI_PRO   0X5010014
# define        NFB$C_PLI_RTT   0X5010021
# define        NFB$C_PLI_SER   0X5000002
# define        NFB$C_PLI_SLT   0X501001A
# define        NFB$C_PLI_SRT   0X501001D
# define        NFB$C_PLI_STA   0X5010011
# define        NFB$C_PLI_STI   0X5010015
# define        NFB$C_PLI_SUB   0X5010012
# define        NFB$C_PLI_VMSNAM        0X5020042
# define        NFB$C_READEVENT 0X1D
# define        NFB$C_SDI_CIR   0X1A020041
# define        NFB$C_SDI_COL   0X1A020040
# define        NFB$C_SDI_LCK   0X1A000001
# define        NFB$C_SDI_PHA   0X1A020042
# define        NFB$C_SDI_PID   0X1A010011
# define        NFB$C_SDI_PRC   0X1A020043
# define        NFB$C_SDI_SUB   0X1A010010
# define        NFB$C_SPI_ACS   0X12020041
# define        NFB$C_SPI_CHN   0X12010012
# define        NFB$C_SPI_COL   0X12020040
# define        NFB$C_SPI_IRP   0X12010011
# define        NFB$C_SPI_LCK   0X12000001
# define        NFB$C_SPI_NCB   0X12020044
# define        NFB$C_SPI_PID   0X12010010
# define        NFB$C_SPI_PNM   0X12020045
# define        NFB$C_SPI_PRL   0X12000002
# define        NFB$C_SPI_RID   0X12020042
# define        NFB$C_SPI_RNA   0X12010013
# define        NFB$C_SPI_SFI   0X12020043
# define        NFB$C_TYP_BIT   0X0
# define        NFB$C_TYP_L     0X1
# define        NFB$C_TYP_LNG   0X1
# define        NFB$C_TYP_S     0X2
# define        NFB$C_TYP_STR   0X2
# define        NFB$C_TYP_V     0X0
# define        NFB$C_WILDCARD  0X1
# define        NFB$C_XAI_ACC   0X1B020044
# define        NFB$C_XAI_COL   0X1B020040
# define        NFB$C_XAI_LCK   0X1B000001
# define        NFB$C_XAI_NDA   0X1B010010
# define        NFB$C_XAI_NET   0X1B020041
# define        NFB$C_XAI_NOD   0X1B020045
# define        NFB$C_XAI_PSW   0X1B020043
# define        NFB$C_XAI_USR   0X1B020042
# define        NFB$C_XD5_ACC   0XD02004A
# define        NFB$C_XD5_CMK   0XD020042
# define        NFB$C_XD5_COL   0XD020040
# define        NFB$C_XD5_CVL   0XD020043
# define        NFB$C_XD5_DST   0XD020041
# define        NFB$C_XD5_FIL   0XD020047
# define        NFB$C_XD5_GRP   0XD020044
# define        NFB$C_XD5_LCK   0XD000001
# define        NFB$C_XD5_NOD   0XD010012
# define        NFB$C_XD5_NUM   0XD020045
# define        NFB$C_XD5_OBJ   0XD020046
# define        NFB$C_XD5_PRI   0XD010010
# define        NFB$C_XD5_PSW   0XD020049
# define        NFB$C_XD5_SAD   0XD010011
# define        NFB$C_XD5_USR   0XD020048
# define        NFB$C_XD9_ACC   0XF02004A
# define        NFB$C_XD9_CMK   0XF020042
# define        NFB$C_XD9_COL   0XF020040
# define        NFB$C_XD9_CVL   0XF020043
# define        NFB$C_XD9_DST   0XF020041
# define        NFB$C_XD9_FIL   0XF020047
# define        NFB$C_XD9_GRP   0XF020044
# define        NFB$C_XD9_LCK   0XF000001
# define        NFB$C_XD9_NOD   0XF010012
# define        NFB$C_XD9_NUM   0XF020045
# define        NFB$C_XD9_OBJ   0XF020046
# define        NFB$C_XD9_PRI   0XF010010
# define        NFB$C_XD9_PSW   0XF020049
# define        NFB$C_XD9_SAD   0XF010011
# define        NFB$C_XD9_USR   0XF020048
# define        NFB$C_XDI_ACH   0XB010010
# define        NFB$C_XDI_ASW   0XB010011
# define        NFB$C_XDI_CHN   0XB020042
# define        NFB$C_XDI_CNT   0XB020045
# define        NFB$C_XDI_COL   0XB020040
# define        NFB$C_XDI_CTM   0XB010012
# define        NFB$C_XDI_DTE   0XB020041
# define        NFB$C_XDI_LCK   0XB000001
# define        NFB$C_XDI_LIN   0XB020043
# define        NFB$C_XDI_MCH   0XB010013
# define        NFB$C_XDI_MCI   0XB010016
# define        NFB$C_XDI_NET   0XB020044
# define        NFB$C_XDI_STA   0XB010014
# define        NFB$C_XDI_SUB   0XB010015
# define        NFB$C_XGI_COL   0XA020040
# define        NFB$C_XGI_GDT   0XA020042
# define        NFB$C_XGI_GNM   0XA010010
# define        NFB$C_XGI_GRP   0XA020041
# define        NFB$C_XGI_GTY   0XA010011
# define        NFB$C_XGI_LCK   0XA000001
# define        NFB$C_XNI_CAT   0X9010010
# define        NFB$C_XNI_CLT   0X9010011
# define        NFB$C_XNI_COL   0X9020040
# define        NFB$C_XNI_DBL   0X9010012
# define        NFB$C_XNI_DWI   0X9010013
# define        NFB$C_XNI_LCK   0X9000001
# define        NFB$C_XNI_MBL   0X9010014
# define        NFB$C_XNI_MCL   0X9010015
# define        NFB$C_XNI_MNS   0X9000002
# define        NFB$C_XNI_MRS   0X9010016
# define        NFB$C_XNI_MST   0X9010017
# define        NFB$C_XNI_MWI   0X9010018
# define        NFB$C_XNI_NET   0X9020041
# define        NFB$C_XNI_RST   0X9010019
# define        NFB$C_XNI_STT   0X901001A
# define        NFB$C_XS5_ACI   0XC010012
# define        NFB$C_XS5_CNT   0XC020041
# define        NFB$C_XS5_COL   0XC020040
# define        NFB$C_XS5_CTM   0XC010013
# define        NFB$C_XS5_LCK   0XC000001
# define        NFB$C_XS5_MCI   0XC010010
# define        NFB$C_XS5_STA   0XC010011
# define        NFB$C_XS9_ACI   0XE010012
# define        NFB$C_XS9_CNT   0XE020041
# define        NFB$C_XS9_COL   0XE020040
# define        NFB$C_XS9_CTM   0XE010013
# define        NFB$C_XS9_LCK   0XE000001
# define        NFB$C_XS9_MCI   0XE010010
# define        NFB$C_XS9_STA   0XE010011
# define        NFB$C_XTI_BFZ   0X10010011
# define        NFB$C_XTI_COL   0X10020040
# define        NFB$C_XTI_CPL   0X10010012
# define        NFB$C_XTI_FNM   0X10020041
# define        NFB$C_XTI_LCK   0X10000001
# define        NFB$C_XTI_MBF   0X10010014
# define        NFB$C_XTI_MBK   0X10010013
# define        NFB$C_XTI_MVR   0X10010015
# define        NFB$C_XTI_STA   0X10010010
# define        NFB$C_XTT_COL   0X11020040
# define        NFB$C_XTT_CPS   0X11010011
# define        NFB$C_XTT_LCK   0X11000001
# define        NFB$C_XTT_TPT   0X11020041
# define        NFB$C_XTT_TST   0X11010010
# define        NFB$K_LENGTH    0X10
# define        NFB$L_BIT_VALUE 0X0
# define        NFB$L_FLDID     0X10
# define        NFB$L_LNG_VALUE 0X0
# define        NFB$L_PARAM_ID  0X0
# define        NFB$L_SRCH2_KEY 0X8
# define        NFB$L_SRCH_KEY  0X4
# define        NFB$M_DB        0XFF000000
# define        NFB$M_ERRUPD    0X1
# define        NFB$M_INX       0XFFFF
# define        NFB$M_MULT      0X2
# define        NFB$M_NOCTX     0X4
# define        NFB$M_SPARE     0XFC0000
# define        NFB$M_TYP       0X30000
# define        NFB$S_DB        0X8
# define        NFB$S_INX       0X10
# define        NFB$S_SPARE     0X6
# define        NFB$S_TYP       0X2
# define        NFB$V_DB        0X18
# define        NFB$V_ERRUPD    0X0
# define        NFB$V_INX       0X0
# define        NFB$V_MULT      0X1
# define        NFB$V_NOCTX     0X2
# define        NFB$V_SPARE     0X12
# define        NFB$V_TYP       0X10
# define        NFB$W_CELL_SIZE 0XE
# define        NFB$W_STR_COUNT 0X0
# define        NFB$_ERR_CELL   0X9
# define        NFB$_ERR_DB     0X2
# define        NFB$_ERR_FCT    0X1
# define        NFB$_ERR_FLAGS  0XE
# define        NFB$_ERR_OPER   0XA
# define        NFB$_ERR_OPER2  0XD
# define        NFB$_ERR_P1     0X3
# define        NFB$_ERR_P2     0X4
# define        NFB$_ERR_P3     0X5
# define        NFB$_ERR_P4     0X6
# define        NFB$_ERR_P5     0X7
# define        NFB$_ERR_P6     0X8
# define        NFB$_ERR_SRCH   0XB
# define        NFB$_ERR_SRCH2  0XC

/*
 * The NFB definition.
 */
# define NFB_RQST 40
struct nfb
{
        unsigned char nfb$b_fct;
        unsigned char nfb$b_flags;
        unsigned char nfb$b_database;
        unsigned char nfb$b_oper;
        unsigned long nfb$l_srch_key;
        unsigned long nfb$l_srch2_key;
        unsigned char nfb$b_oper2;
        unsigned char nfb$b_mbz1;
        unsigned short int nfb$w_cell_size;
        unsigned long int nfb$l_fldid[NFB_RQST];
};

/*
 * The match key structure.
 */
struct nfbkey
{
        unsigned int p4_count;
        unsigned int srch;
        unsigned int srch2;
        unsigned short start;
        unsigned char ctx[NFB$C_CTX_SIZE];
};
--
Jonathan Corbet
{seismo | hplabs | gatech}!hao!gaia!jon
{ucbvax | allegra | cbosgd}!nbires!gaia!jon

------------------------------

Date: 9 May 87 22:18:15 GMT
From: sargas.usc.edu!tli@OBERON.USC.EDU  (Tony Li)
Subject: Re: Where are PCB$ and SCH$ defines??

In article <162@siemens.UUCP> jrv@siemens.UUCP (James R Vallino) writes:

    I am attempting to use SYS$GETJPI to find information about processes.
    Two of the items of information which I need are JPI$_STATE and JPI$_STS.
    The returned values make use of SCH$ and PCB$ defines respectively.

Look in LIB.MLB.

;-)



--
Tony Li - USC University Computing Services     "Fene mele kiki bobo"
Uucp: oberon!tli                                                -- Joe Isuzu
Bitnet: tli@uscvaxq, tli@ramoth
Internet: tli@sargas.usc.edu

------------------------------

Date: Sun, 10-MAY-1987 11:40:24.00 GMT+1
From: <zrgc002%DTUZDV5A.BITNET@wiscvm.wisc.edu> (Christoph D. Gatzka)
Subject: Printer queue on HP Laser Jet+

We are just about to connect a HP Laser Jet+ printer to our MicroVAX. I
would like to know, how others might have set up the queue with forms and
device control libraries, any information is welcome (especially dumps
of entries in the device control library and hints on forms setup).

 Christoph D. Gatzka                zrgc002@dtuzdv5a.bitnet
 Student of medicine

 University of Tuebingen
 Germany

------------------------------

Date: Sun, 10-MAY-1987 11:44:09.58 GMT+1
From: <zrgc002%DTUZDV5A.BITNET@wiscvm.wisc.edu> (Christoph D. Gatzka)
Subject: A leading blank page on our printer queue.

Quite a while ago there was some information here on info-vax about a queue
that spits out a blank page in front of every job. We have an AGFA P400
406 dpi Xerographic printer on our VAX and the symbiont adds form-feeds
in the wrong places (i.e. more than specified in the control libraries
modules). I think somebody saw the problem with an LN03 and circumvented
it by removing/adding some other form feeds in the form setup.

Any help is appreciated.

 Christoph D. Gatzka                zrgc002@dtuzdv5a.bitnet
 Student of medicine

 University of Tuebingen
 Germany

------------------------------

Date: 10 May 87 07:32:07 GMT
From: ihnp4!inuxc!iuvax!bsu-cs!corwin@ucbvax.Berkeley.EDU  (Paul
      Frommeyer)
Subject: Re: Where are PCB$ and SCH$ defines??

In article <2079@sargas.usc.edu>, tli@sargas.usc.edu (Tony Li) writes:
>> In article <162@siemens.UUCP> jrv@siemens.UUCP (James R Vallino) writes:
>>
>>   I am attempting to use SYS$GETJPI to find information about processes.
>>   Two of the items of information which I need are JPI$_STATE and JPI$_STS.
>>   The returned values make use of SCH$ and PCB$ defines respectively.
>
> Look in LIB.MLB.
>

If you are calling SYS$GETJPI from VAX C, you can convert the LIB.MLB $EQUs
to #defines in a jpidef.h. If you want jpidef.h, I have a copy (around
here on our cluster somewheres...), as well as syidef, uaidef...

Alternatively, you can just plug hex values into the SYS$GETJPI call,but
if you are doing a lot of calls to SYS$GETJPI a jpidef.h is probably easier.
Also if in VAX C, watch out for the 0 terminator of the item list... I
forgot to include it, and hadn't a clue as to all my access violations...


--
Paul "Corwin" Frommeyer        "Experience is no substitute for competence."
UUCP:
        {seismo,ihnp4}!{iuvax,pur-ee}!corwin

------------------------------

Date: 9 May 87 11:23:23 GMT
From: mcvax!enea!tut!eal@seismo.css.gov  (Lehtim{ki Erkki)
Subject: Re: Where are PCB$ and SCH$ defines??

They are defined in SYS$LIBRARY:LIB.MLB
Some time ago there were posting of a DCL command procedure, which
generated .H-files from LIB.MLB-entries.

Erkki

------------------------------

Date: 9 May 87 23:28:31 GMT
From: ihnp4!alberta!sask!skatter!kuo@ucbvax.Berkeley.EDU  (Dr. Peter
      Kuo)
Subject: Re: How do you ring bell in DCL file?

In article <154@siemens.UUCP>, jrv@siemens.UUCP writes:
> I would like to have the terminal bell rung from within a DCL command
> file.  Is there a way to specify control characters within a string
> used with a 'write sys$output' statement? Can the control character be
> entered "raw" into the string or is there a character escape mechanism?

Have you tried putting in the ^G using EDT (using the special character insert
mode) when building your DCL command file (8-) ? It works fine.


-------------------------------------------------------------------------------
Peter Kuo                   | Bitnet (VMS)  : KUO@SASK
Accelerator Laboratory      |
(a.k.a. The Beam Warehouse) | uucp   (Unix) : !alberta\
Univ. of Saskatchewan       |                 !ihnp4  -- !sask!skatter!kuo
Saskatoon, Saskatchewan     |                 !utcsri /
CANADA  S7N 0W0             |
(Earth)                     | Ma Bell       : (306) 966-6059

Disclaimer: I don't know what I am saying, so don't quote me on
            anything! And I only speak for myself. Also, I am now
            stuck on a ^%^^%)^&* Unix machine.

------------------------------

End of Info-Vax Digest
**********************