Annotation of 43BSDTahoe/new/spms/include/path.h, revision 1.1.1.1

1.1       root        1: /* $Header$ */
                      2: 
                      3: /*
                      4:  * Pathname definitions
                      5:  *
                      6:  * Author: Peter J. Nicklin
                      7:  */
                      8: 
                      9: /*
                     10:  * Buffer sizes
                     11:  */
                     12: #define ALIASSIZE      30              /* project directory alias size */
                     13: #define TYPESIZE       30              /* project directory type label size */
                     14: #define DIRDESCSIZE    128             /* project directory description size */
                     15: #define P_BUFSIZE      1024            /* pathname buffer size */
                     16: #define        PATHSIZE        256             /* maximum pathname length */
                     17: #define PPATHSIZE      128             /* maximum project pathname length */
                     18: #define TYPBUFSIZE     256             /* directory type labels buffer */
                     19: 
                     20: /* 
                     21:  * Nomenclature (WARNING: Check definition usage BEFORE changing)
                     22:  */
                     23: #define _CDIRC         '.'             /* current directory character */
                     24: #define _HDIRC         '~'             /* home directory character */
                     25: #define _PDIRC         '^'             /* project root directory character */
                     26: #define _PDTSC         '/'             /* project dir type labels sep char */
                     27: #define _PPSC          '^'             /* project path separator character */
                     28: #define _PSC           '/'             /* pathname separator character */
                     29: #define _RDIRC         '/'             /* root directory character */
                     30: #define CURDIR         "."             /* current directory */
                     31: #define PARENTDIR      ".."            /* parent directory */
                     32: #define PATHSEP                "/"             /* pathname separator */
                     33: #define PPATHSEP       "^"             /* project pathname separator */
                     34: #define ROOTDIR                "/"             /* root directory */
                     35: #define ROOTPROJECT    "^"             /* root project */
                     36: #define USERPROJECT    "~"             /* user's root project */
                     37: 
                     38: /*
                     39:  * Pathname types
                     40:  */
                     41: #define P_IFMT         0xf0000         /* project pathname mask */
                     42: #define        P_IFNEW         0x00000         /* new directory or file */
                     43: #define P_IFREG                0x10000         /* regular directory or file */
                     44: #define        P_IFHOME        0x20000         /* root project root directory */
                     45: #define P_IFPDIR       0x30000         /* project directory */
                     46: #define        P_IFPROOT       0x40000         /* project root directory */
                     47: 
                     48: /*
                     49:  * Pathname struct
                     50:  */
                     51: typedef struct _path
                     52:        {
                     53:        unsigned long p_mode;           /* type of pathname */
                     54:        char *p_alias;                  /* pathname alias */
                     55:        char *p_path;                   /* pathname */
                     56:        char *p_type;                   /* project directory type labels */
                     57:        char *p_desc;                   /* project directory description */
                     58:        char p_buf[P_BUFSIZE];          /* pathname buffer */
                     59:        char p_project[PATHSIZE];       /* pathname's project */
                     60:        } PATH;

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.