home *** CD-ROM | disk | FTP | other *** search
/ InfoMagic Source Code 1993 July / THE_SOURCE_CODE_CD_ROM.iso / gnu / gccdist / gcc / include / lnmdef.h < prev    next >
Encoding:
C/C++ Source or Header  |  1991-02-27  |  3.4 KB  |  62 lines

  1. /*    LNMDEF - Logical name flag definitions                    */
  2.  
  3. #define LNM$M_NO_ALIAS 1
  4. #define LNM$M_CONFINE 2
  5. #define LNM$M_CRELOG 4
  6. #define LNM$M_TABLE 8
  7. #define LNM$M_CONCEALED 256
  8. #define LNM$M_TERMINAL 512
  9. #define LNM$M_EXISTS 1024
  10. #define LNM$M_SHAREABLE 65536
  11. #define LNM$M_CREATE_IF 16777216
  12. #define LNM$M_CASE_BLIND 33554432
  13. struct lnmdef {
  14. /* Logical name attributes -- bits 0-7                                      */
  15.     unsigned lnm$v_no_alias : 1;        /* Do not allow outer mode alias    */
  16.     unsigned lnm$v_confine : 1;         /* Do not copy into subprocess      */
  17.     unsigned lnm$v_crelog : 1;          /* Created with old $CRELOG service */
  18.     unsigned lnm$v_table : 1;           /* This is a table name             */
  19.     unsigned lnm$v_fill_0 : 4;          /* Fill out logical name byte       */
  20. /* Logical name translation attributes -- bits 8-15                         */
  21.     unsigned lnm$v_concealed : 1;       /* Do not display result of translation */
  22.     unsigned lnm$v_terminal : 1;        /* Do not retranslate result of translation */
  23.     unsigned lnm$v_exists : 1;          /* Translation does exist at this index */
  24.     unsigned lnm$v_fill_1 : 5;          /* Fill out translation byte        */
  25. /* Logical name table characteristics -- bits 16-23                         */
  26.     unsigned lnm$v_shareable : 1;       /* Logical name table is shareable (S0 space) */
  27.     unsigned lnm$v_fill_2 : 3;          /* Reserved bit numbers 17-19       */
  28.     unsigned lnm$v_fill_3 : 4;          /* Fill out table byte              */
  29. /* System service options -- bits 24-31                                     */
  30.     unsigned lnm$v_create_if : 1;       /* May map to existing logical name table */
  31.     unsigned lnm$v_case_blind : 1;      /* Perform case-insensitive translation */
  32.     unsigned lnm$v_fill_4 : 6;          /* Fill out options byte            */
  33.     } ;
  34. #define LNM$C_TABNAMLEN 31              /* Maximum length of a name contained within a directory table */
  35. #define LNM$C_NAMLENGTH 255             /* Maximum logical name / translation length */
  36. #define LNM$C_MAXDEPTH 10               /* Maximum logical name recursion depth */
  37. #define LNM$_INDEX 1                    /* Translation index                */
  38. #define LNM$_STRING 2                   /* Translation string               */
  39. #define LNM$_ATTRIBUTES 3               /* Attribute bits                   */
  40. #define LNM$_TABLE 4                    /* Logical name table name          */
  41. #define LNM$_LENGTH 5                   /* Length of translation string     */
  42. #define LNM$_ACMODE 6                   /* Access mode of name              */
  43. #define LNM$_MAX_INDEX 7                /* Maximum translation index        */
  44. #define LNM$_PARENT 8                   /* Parent logical name table name   */
  45. #define LNM$_LNMB_ADDR 9                /* Return LNM block address         */
  46. /*  internal use by MTL                                                     */
  47. /*  and mailbox UCB                                                         */
  48. /* Define item list codes                                                   */
  49. #define LNM$_CHAIN -1                   /* Chain to next list               */
  50.  
  51. /* LNM Itemlist for TRNLOG system service                      */
  52. /*    added by P.G.Mulgaonkar, SRI Robotics, 8 July 86             */
  53.             
  54. struct  LNM$ITEMLIST
  55.         {
  56.         unsigned short     lnm$item_buflen;
  57.         unsigned short     lnm$item_code;
  58.         char         *lnm$item_buffer;
  59.         char         *lnm$item_retlen;
  60.         int          lnm$item_flag;
  61.         } ;
  62.