Annotation of 43BSDReno/usr.sbin/amd/config/os-aix3.h, revision 1.1.1.1

1.1       root        1: /* $Id: os-aix3.h,v 5.2 90/06/23 22:20:33 jsp Rel $ */
                      2: 
                      3: /*
                      4:  * AIX 3.1 definitions for Amd (automounter)
                      5:  *
                      6:  * Copyright (c) 1990 Jan-Simon Pendry
                      7:  * Copyright (c) 1990 Imperial College of Science, Technology & Medicine
                      8:  * Copyright (c) 1990 The Regents of the University of California.
                      9:  * All rights reserved.
                     10:  *
                     11:  * This code is derived from software contributed to Berkeley by
                     12:  * Jan-Simon Pendry at Imperial College, London.
                     13:  *
                     14:  * Redistribution and use in source and binary forms are permitted provided
                     15:  * that: (1) source distributions retain this entire copyright notice and
                     16:  * comment, and (2) distributions including binaries display the following
                     17:  * acknowledgement:  ``This product includes software developed by the
                     18:  * University of California, Berkeley and its contributors'' in the
                     19:  * documentation or other materials provided with the distribution and in
                     20:  * all advertising materials mentioning features or use of this software.
                     21:  * Neither the name of the University nor the names of its contributors may
                     22:  * be used to endorse or promote products derived from this software without
                     23:  * specific prior written permission.
                     24:  * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED
                     25:  * WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF
                     26:  * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
                     27:  *
                     28:  *     @(#)os-aix3.h   5.1 (Berkeley) 6/29/90
                     29:  */
                     30: 
                     31: /*
                     32:  * Does the compiler grok void *
                     33:  */
                     34: #define        VOIDP
                     35: 
                     36: /*
                     37:  * Which version of the Sun RPC library we are using
                     38:  * This is the implementation release number, not
                     39:  * the protocol revision number.
                     40:  */
                     41: #define        RPC_4
                     42: 
                     43: /*
                     44:  * Which version of the NFS interface are we using.
                     45:  * This is the implementation release number, not
                     46:  * the protocol revision number.
                     47:  */
                     48: #define        NFS_AIX3
                     49: 
                     50: /*
                     51:  * Does this OS have NDBM support?
                     52:  */
                     53: #define OS_HAS_NDBM
                     54: 
                     55: /*
                     56:  * The mount table is obtained from the kernel
                     57:  */
                     58: #undef UPDATE_MTAB
                     59: 
                     60: /*
                     61:  * Pick up BSD bits from include files
                     62:  */
                     63: #define        _BSD
                     64: 
                     65: /*
                     66:  * No mntent info on AIX 3
                     67:  */
                     68: #undef MNTENT_HDR
                     69: #define        MNTENT_HDR <sys/mntctl.h>
                     70: 
                     71: /*
                     72:  * Name of filesystem types
                     73:  */
                     74: #define        MOUNT_TYPE_NFS  MNT_NFS
                     75: #define        MOUNT_TYPE_UFS  MNT_JFS
                     76: #undef MTAB_TYPE_UFS
                     77: #define        MTAB_TYPE_UFS   "jfs"
                     78: 
                     79: /*
                     80:  * How to unmount filesystems
                     81:  */
                     82: #undef MOUNT_TRAP
                     83: #define        MOUNT_TRAP(type, mnt, flag, mnt_data) \
                     84:        aix3_mount(mnt->mnt_fsname, mnt->mnt_dir, flag, type, mnt_data, mnt->mnt_opts)
                     85: #undef UNMOUNT_TRAP
                     86: #define        UNMOUNT_TRAP(mnt)       uvmount(mnt->mnt_passno, 0)
                     87: 
                     88: 
                     89: /*
                     90:  * Byte ordering
                     91:  */
                     92: #ifndef BYTE_ORDER
                     93: #include <sys/machine.h>
                     94: #endif /* BYTE_ORDER */
                     95: 
                     96: #undef ARCH_ENDIAN
                     97: #if BYTE_ORDER == LITTLE_ENDIAN
                     98: #define ARCH_ENDIAN "little"
                     99: #else
                    100: #if BYTE_ORDER == BIG_ENDIAN
                    101: #define ARCH_ENDIAN "big"
                    102: #else
                    103: XXX - Probably no hope of running Amd on this machine!
                    104: #endif /* BIG */
                    105: #endif /* LITTLE */
                    106: 
                    107: /*
                    108:  * Miscellaneous AIX 3 bits
                    109:  */
                    110: #define        NEED_MNTOPT_PARSER
                    111: #define        SHORT_MOUNT_NAME
                    112: 
                    113: #define        MNTMAXSTR       128
                    114: 
                    115: #define        MNTTYPE_UFS     "jfs"           /* Un*x file system */
                    116: #define        MNTTYPE_NFS     "nfs"           /* network file system */
                    117: #define        MNTTYPE_IGNORE  "ignore"        /* No type specified, ignore this entry */
                    118: 
                    119: struct mntent {
                    120:        char    *mnt_fsname;    /* name of mounted file system */
                    121:        char    *mnt_dir;       /* file system path prefix */
                    122:        char    *mnt_type;      /* MNTTYPE_* */
                    123:        char    *mnt_opts;      /* MNTOPT* */
                    124:        int     mnt_freq;       /* dump frequency, in days */
                    125:        int     mnt_passno;     /* pass number on parallel fsck */
                    126: };
                    127: 
                    128: #define        NFS_HDR "misc-aix3.h"
                    129: #define        UFS_HDR "misc-aix3.h"
                    130: #undef NFS_FH_DREF
                    131: #define        NFS_FH_DREF(dst, src) { (dst).addr = *(src); }
                    132: #undef NFS_SA_DREF
                    133: #define        NFS_SA_DREF(dst, src) { (dst).addr = *(src); }
                    134: #define        M_RDONLY MNT_READONLY
                    135: 
                    136: /*
                    137:  * How to get a mount list
                    138:  */
                    139: #undef READ_MTAB_FROM_FILE
                    140: #define        READ_MTAB_AIX3_STYLE
                    141: 
                    142: /*
                    143:  * The data for the mount syscall needs the path in addition to the
                    144:  * host name since that is the only source of information about the
                    145:  * mounted filesystem.
                    146: #define        NFS_ARGS_NEEDS_PATH
                    147:  */
                    148: 
                    149: #define        NFS_LOMAP       34
                    150: #define        NFS_HIMAP       99
                    151: #define NFS_ERROR_MAPPING \
                    152: static nfs_errormap[] = {           0,75,77,99,99,99, \
                    153:                        99,99,99,99,99,78,99,99,99,79, \
                    154:                        99,99,70,99,35,36,37,38,39,40, \
                    155:                        41,42,43,44,45,46,47,48,49,50, \
                    156:                        51,52,53,54,55,56,57,58,60,61, \
                    157:                        64,65,99,67,68,62,63,66,69,68, \
                    158:                        99,99,99,71,99,99,99,99,99,99 \
                    159:                        };
                    160: 
                    161: #define        MOUNT_AIX3
                    162: 
                    163: /*
                    164:  * Need this too
                    165:  */
                    166: #include <time.h>

unix.superglobalmegacorp.com

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