From c17a5f54e6e8a7244dca5c976dd390ff6bc31c1c Mon Sep 17 00:00:00 2001 From: Sam Hartman Date: Thu, 5 Jul 2001 01:31:49 +0000 Subject: [PATCH] Finish merge between 1.0.4 and July 4 mainline --- src/Makefile | 608 ------------------ src/afs/LINUX/osi_module.c | 31 +- src/afs/LINUX/osi_vnodeops.c | 50 +- src/afs/UKERNEL/sysincludes.h | 9 + src/afs/VNOPS/afs_vnop_lookup.c | 265 ++++---- src/afs/afs.h | 7 + src/afs/afs_call.c | 63 +- src/afs/afs_pioctl.c | 174 +++-- src/afsd/Makefile | 2 +- src/afsd/afs.conf.linux | 4 +- src/config/Makefile.alpha_dux40 | 28 - src/config/Makefile.alpha_dux50 | 29 - src/config/Makefile.alpha_linux_2216_22 | 48 -- src/config/Makefile.hp_ux102 | 37 -- src/config/Makefile.hp_ux110 | 37 -- src/config/Makefile.i386_fbsd_42 | 52 -- src/config/Makefile.i386_linux22 | 55 -- src/config/Makefile.i386_linux24 | 46 -- src/config/Makefile.ppc_darwin_12 | 46 -- src/config/Makefile.ppc_darwin_13 | 46 -- src/config/Makefile.ppc_linux24 | 46 -- src/config/Makefile.rs_aix42 | 42 -- src/config/Makefile.s390_linux22 | 51 -- src/config/Makefile.sgi_62 | 45 -- src/config/Makefile.sgi_63 | 42 -- src/config/Makefile.sgi_64 | 46 -- src/config/Makefile.sgi_65 | 46 -- src/config/Makefile.sparc64_linux22 | 50 -- src/config/Makefile.sparc_linux22 | 50 -- src/config/Makefile.sun4x_55 | 46 -- src/config/Makefile.sun4x_56 | 54 -- src/config/Makefile.sun4x_57 | 58 -- src/config/Makefile.sun4x_58 | 51 -- src/config/Makefile.sunx86_54 | 22 - src/config/param.i386_linux22.h | 32 +- src/config/param.i386_linux24.h | 32 +- ...ha_linux_2216_22.h => param.ppc_linux22.h} | 57 +- ..._2216_22_usr.h => param.ppc_linux22_usr.h} | 17 +- src/config/param.ppc_linux24.h | 35 +- src/config/param.sparc64_linux22.h | 35 +- src/config/param.sparc_linux22.h | 34 +- src/libafs/Makefile.common | 4 +- src/libafs/MakefileProto.AIX | 172 ----- src/libafs/MakefileProto.DARWIN | 115 ---- src/libafs/MakefileProto.DUX | 116 ---- src/libafs/MakefileProto.FBSD | 112 ---- src/libafs/MakefileProto.HPUX | 171 ----- src/libafs/MakefileProto.IRIX | 436 ------------- src/libafs/MakefileProto.LINUX | 207 ------ src/libafs/MakefileProto.SOLARIS | 160 ----- src/lwp/lwp.c | 29 +- src/lwp/lwp.h | 16 +- src/lwp/preempt.c | 2 +- src/lwp/process.c | 11 +- src/rx/rx.c | 102 +-- src/rx/rx_clock.h | 8 +- src/venus/Makefile | 4 +- src/vol/partition.c | 2 +- src/volser/volmain.c | 11 +- 59 files changed, 625 insertions(+), 3581 deletions(-) delete mode 100644 src/Makefile delete mode 100644 src/config/Makefile.alpha_dux40 delete mode 100644 src/config/Makefile.alpha_dux50 delete mode 100644 src/config/Makefile.alpha_linux_2216_22 delete mode 100644 src/config/Makefile.hp_ux102 delete mode 100644 src/config/Makefile.hp_ux110 delete mode 100644 src/config/Makefile.i386_fbsd_42 delete mode 100644 src/config/Makefile.i386_linux22 delete mode 100644 src/config/Makefile.i386_linux24 delete mode 100644 src/config/Makefile.ppc_darwin_12 delete mode 100644 src/config/Makefile.ppc_darwin_13 delete mode 100644 src/config/Makefile.ppc_linux24 delete mode 100644 src/config/Makefile.rs_aix42 delete mode 100644 src/config/Makefile.s390_linux22 delete mode 100644 src/config/Makefile.sgi_62 delete mode 100644 src/config/Makefile.sgi_63 delete mode 100644 src/config/Makefile.sgi_64 delete mode 100644 src/config/Makefile.sgi_65 delete mode 100644 src/config/Makefile.sparc64_linux22 delete mode 100644 src/config/Makefile.sparc_linux22 delete mode 100644 src/config/Makefile.sun4x_55 delete mode 100644 src/config/Makefile.sun4x_56 delete mode 100644 src/config/Makefile.sun4x_57 delete mode 100644 src/config/Makefile.sun4x_58 delete mode 100644 src/config/Makefile.sunx86_54 rename src/config/{param.alpha_linux_2216_22.h => param.ppc_linux22.h} (69%) rename src/config/{param.alpha_linux_2216_22_usr.h => param.ppc_linux22_usr.h} (80%) delete mode 100644 src/libafs/MakefileProto.AIX delete mode 100644 src/libafs/MakefileProto.DARWIN delete mode 100644 src/libafs/MakefileProto.DUX delete mode 100644 src/libafs/MakefileProto.FBSD delete mode 100644 src/libafs/MakefileProto.HPUX delete mode 100644 src/libafs/MakefileProto.IRIX delete mode 100644 src/libafs/MakefileProto.LINUX delete mode 100644 src/libafs/MakefileProto.SOLARIS diff --git a/src/Makefile b/src/Makefile deleted file mode 100644 index 594ca5f65..000000000 --- a/src/Makefile +++ /dev/null @@ -1,608 +0,0 @@ -# Copyright 2000, International Business Machines Corporation and others. -# All Rights Reserved. -# -# This software has been released under the terms of the IBM Public -# License. For details, see the LICENSE file in the top-level source -# directory or online at http://www.openafs.org/dl/license10.html - -SHELL=/bin/sh -DESTDIR=dest/ -SRCDIR=${DESTDIR} -INSTALL=${SRCDIR}bin/install -WASHTOOL=true - -#WASHTOOLRCSUPDATE=${WASHTOOL} rcsupdate -WASHTOOLCMD=$(MAKE) -WASHTOOLFLAGS=-argument install - -COMPILE_PART1=cd obj; cd -COMPILE_PART2=; $(MAKE) install SYS_NAME=${SYS_NAME} DESTDIR=$(shell pwd)/${SYS_NAME}/dest/ SRCDIR=$(shell pwd)/${SYS_NAME}/dest/ -MKDIR_IF_NEEDED=[ -d $$1 ] || mkdir -p $$1 - -# Enable build+install of obsolete and insecure packages -# Set to anything other than YES, or comment out to disable the build -WITH_DEPRECATED=YES - -# To compile AFS from scratch in the src tree run "make SYS_NAME=". -# This recursively calls "make install ..." and does not depend on the -# existence of any non-standard programs. -# To compile a package and all its predecessors using washtool run -# "make ". This requires that @sys works, and that washtool, -# rcsupdate and our version of ci and co exist. -# To compile for the kernel type "make blibafs". This assumes washtool, -# install, rxgen, compile_et and others already exist and runs it with -# "-argument kinstall". - -all: - set ${SYS_NAME}/dest; $(MKDIR_IF_NEEDED) - $(MAKE) install "COMPILE_PART1=cd obj; cd" "COMPILE_PART2=; $(MAKE) install SYS_NAME=${SYS_NAME} DESTDIR=`pwd`/${SYS_NAME}/dest/ SRCDIR=`pwd`/${SYS_NAME}/dest/" "COMPILE_PART3=; $(MAKE) test SYS_NAME=${SYS_NAME} DESTDIR=`pwd`/${SYS_NAME}/dest/ SRCDIR=`pwd`/${SYS_NAME}/dest/" SYS_NAME=${SYS_NAME} "WASHTOOL=echo No washtool: " - -basics: - -if test -f "${WASHTOOL}"; \ - then \ - ${WASHTOOL} project . . -noretarget; \ - ${WASHTOOL} destdir; \ - fi -# test -d ${DESTDIR} - -minproject: basics - ${WASHTOOL} project . . -noretarget - ${WASHTOOL} destdir - -project: basics cmd comerr minproject # try and initialize project - -config: basics - ${COMPILE_PART1} config ${COMPILE_PART2} - -pinstall: basics config - ${COMPILE_PART1} pinstall ${COMPILE_PART2} - -procmgmt: basics config pinstall - ${COMPILE_PART1} procmgmt ${COMPILE_PART2} - -util: basics pinstall procmgmt - ${COMPILE_PART1} util ${COMPILE_PART2} - -audit: basics pinstall rx rxkad fsint - ${COMPILE_PART1} audit ${COMPILE_PART2} - -comerr: basics util - ${COMPILE_PART1} comerr ${COMPILE_PART2} - -cmd: basics comerr - ${COMPILE_PART1} cmd ${COMPILE_PART2} - @case ${SYS_NAME} in \ - sgi_6* | sun4x_57 | sun4x_58 | hp_ux11* | sparc64_linux* | alpha_linux* ) \ - ${COMPILE_PART1} cmd ${COMPILE_PART2} install64 ;; \ - esac - -lwp: project util - ${COMPILE_PART1} lwp ${COMPILE_PART2} - -rxgen: minproject pinstall - ${COMPILE_PART1} rxgen ${COMPILE_PART2} - -rxobj: - ${WASHTOOL} object rx - -kernrx: - ${COMPILE_PART1} rx ${COMPILE_PART2} - -rx: project lwp rxgen - ${COMPILE_PART1} rx ${COMPILE_PART2} - -rxstat: rx - ${COMPILE_PART1} rxstat ${COMPILE_PART2} - -rxincls: rxobj - ${COMPILE_PART1} rx ${COMPILE_PART2} - -rxtests: rxobj - ${COMPILE_PART1} rx ${COMPILE_PART3} - -fsint: project kfsint - -kfsint: rxgen rxincls lwp - ${COMPILE_PART1} fsint ${COMPILE_PART2} - -export2: project fsint - -export: minproject fsint - @case ${SYS_NAME} in \ - rs_aix*) \ - ${COMPILE_PART1} export ${COMPILE_PART2} ;; \ - * ) echo skipping export for ${SYS_NAME} ;; \ - esac - -afs: minproject export - ${COMPILE_PART1} afs ${COMPILE_PART2} - -des: minproject config - if [ -f "obj/des/Makefile" ] ; then \ - ${COMPILE_PART1} des ${COMPILE_PART2} ; \ - else \ - ${COMPILE_PART1} des_stub ${COMPILE_PART2} ; \ - fi - -sys: project des rx rxstat fsint - ${COMPILE_PART1} sys ${COMPILE_PART2} - -rxkad: project des - ${WASHTOOL} object rxkad - ${WASHTOOL} object rxkad/domestic - ${COMPILE_PART1} rxkad ${COMPILE_PART2} - -kernauth: - ${COMPILE_PART1} auth ${COMPILE_PART2} - -auth: project comerr des lwp rx sys rxkad audit - ${COMPILE_PART1} auth ${COMPILE_PART2} - -ubik: project auth - ${COMPILE_PART1} ubik ${COMPILE_PART2} - -# cd obj/ubik; $(MAKE) test SYS_NAME=${SYS_NAME} -ubiktests: ubik sys - ${COMPILE_PART1} ubik ${COMPILE_PART3} - -ptserver: project ubik cmd comerr auth audit - ${COMPILE_PART1} ptserver ${COMPILE_PART2} - -kauth: project ubik cmd auth comerr ptserver audit libacl - ${COMPILE_PART1} kauth ${COMPILE_PART2} - -dauth: project ubik cmd auth comerr - ${COMPILE_PART1} dauth ${COMPILE_PART2} - -libacl: project ptserver - ${COMPILE_PART1} libacl ${COMPILE_PART2} - -kerndir: minproject - ${COMPILE_PART1} dir ${COMPILE_PART2} - -dir: project libacl - ${COMPILE_PART1} dir ${COMPILE_PART2} - -# Removed from sgi_* case below: -# ${COMPILE_PART1} sgiefs ${COMPILE_PART2};; -sgiefs: - case ${SYS_NAME} in \ - sgi_*) \ - echo "SGI efs not supported" ;; \ - *) \ - echo No efs stuff for ${SYS_NAME};; \ - esac - -vol: project dir afs sgiefs - ${COMPILE_PART1} vol ${COMPILE_PART2} - -vlserver: project vol audit - ${COMPILE_PART1} vlserver ${COMPILE_PART2} - -viced: project vlserver audit - ${COMPILE_PART1} viced ${COMPILE_PART2} - -tviced: project viced vlserver libafsrpc libafsauthent - case ${SYS_NAME} in \ - alpha_dux*|sgi_*|sun4x_*|rs_aix*|*linux*|hp_ux110) \ - ${COMPILE_PART1} tviced ${COMPILE_PART2} ;; \ - *) \ - echo Not building MT viced for ${SYS_NAME} ;; \ - esac - -volser: project tviced usd kauth audit - ${COMPILE_PART1} volser ${COMPILE_PART2} - -venus: project volser ptserver - ${COMPILE_PART1} venus ${COMPILE_PART2} - ${COMPILE_PART1} venus/test ${COMPILE_PART2} - -afsd: project sys kauth - ${COMPILE_PART1} afsd ${COMPILE_PART2} - -null: project - ${COMPILE_PART1} null ${COMPILE_PART2} - -gtx: project null auth # kauth rxkad ? - case ${SYS_NAME} in \ - rs_aix* | sun4x_5? | sgi_6? | *linux* | ppc_darwin* | *fbsd*) \ - rm -f ${DESTDIR}lib/afs/libtermlib.a; \ - ln -s libnull.a ${DESTDIR}lib/afs/libtermlib.a; \ - ${COMPILE_PART1} gtx ${COMPILE_PART2};; \ - *) \ - rm -f ${DESTDIR}lib/afs/libtermlib.a; \ - ln -s /usr/lib/libtermlib.a ${DESTDIR}lib/afs/libtermlib.a; \ - ${COMPILE_PART1} gtx ${COMPILE_PART2};; \ - esac - -fsprobe: project util fsint - ${COMPILE_PART1} fsprobe ${COMPILE_PART2} - -scout: project gtx fsprobe - ${COMPILE_PART1} scout ${COMPILE_PART2} - -uss: des kauth project rx vlserver vol - ${COMPILE_PART1} uss ${COMPILE_PART2} - -bozo: project ntp audit - ${COMPILE_PART1} bozo ${COMPILE_PART2} - - -# Removed from respective case statements below: -# ${COMPILE_PART1} vfsckaix42 ${COMPILE_PART2} ;; -# ${COMPILE_PART1} vfscksol25 ${COMPILE_PART2} ;; -# ${COMPILE_PART1} vfscksol26 ${COMPILE_PART2} ;; -# ${COMPILE_PART1} vfscksol27 ${COMPILE_PART2} ;; -vfsck: minproject vol - set -x; \ - case ${SYS_NAME} in \ - sgi_* | *linux* | rs_aix42 | ppc_darwin* | hp_ux* | *fbsd* ) \ - echo skip vfsck for ${SYS_NAME} ;; \ - * ) \ - ${COMPILE_PART1} vfsck ${COMPILE_PART2} ;; \ - esac - -login: project kauth rxkad - set -x; \ - case ${SYS_NAME} in \ - sgi_* ) \ - ${COMPILE_PART1} sgistuff ${COMPILE_PART2} ;; \ - rs_aix42 ) \ - ${WASHTOOL} object login ; \ - ${COMPILE_PART1} tsm41 ${COMPILE_PART2} ;; \ - alpha_dux* ) \ - ${COMPILE_PART1} sia ${COMPILE_PART2} ;; \ - sun4x_55 ) \ - ${COMPILE_PART1} login ${COMPILE_PART2} ;; \ - sun4x_* | hp_ux11* | *linux* | *fbsd* ) \ - ${COMPILE_PART1} pam ${COMPILE_PART2} ;; \ - ppc_darwin* ) \ - echo Skipping login for ${SYS_NAME} ;; \ - * ) \ - ${COMPILE_PART1} login ${COMPILE_PART2} ;; \ - esac - -KERNELDIR= \ - afs \ - dir \ - rx \ - fsint \ - auth \ - rxkad \ - util \ - libacl \ - vlserver \ - sgiefs \ - rxstat - - -UKERNELDIR= \ - afs \ - dir \ - rx \ - fsint \ - util \ - auth \ - rxkad \ - vlserver \ - kauth \ - des \ - afsweb \ - rxstat - - -libafs: minproject libafs_setup ${KERNELDIR} - ${COMPILE_PART1} libafs ${COMPILE_PART2} - -libuafs: minproject libuafs_setup ${UKERNELDIR} - set -x; \ - case ${SYS_NAME} in \ - hp_ux102* ) \ - echo Skipping libuafs for ${SYS_NAME} ;; \ - * ) \ - ${COMPILE_PART1} libuafs ${COMPILE_PART2} ;; \ - esac - -afsweb: minproject kauth dauth - ${COMPILE_PART1} afsweb ${COMPILE_PART2} - -update: project auth - ${COMPILE_PART1} update ${COMPILE_PART2} - -log: project auth - ${COMPILE_PART1} log ${COMPILE_PART2} - -bu_utils: project - ${COMPILE_PART1} bu_utils ${COMPILE_PART2} - -usd: project - ${COMPILE_PART1} usd ${COMPILE_PART2} - -bubasics: project comerr - ${COMPILE_PART1} bubasics ${COMPILE_PART2} - -butm: project bubasics usd - ${COMPILE_PART1} butm ${COMPILE_PART2} - -butc: project bubasics butm budb bucoord cmd - ${COMPILE_PART1} butc ${COMPILE_PART2} - -tbutc: project bubasics butm budb bucoord cmd butc - case ${SYS_NAME} in \ - alpha_dux*|sgi_*|sun4x_*|rs_aix4*|*linux*|hp_ux110) \ - ${COMPILE_PART1} tbutc ${COMPILE_PART2} ;; \ - *) \ - echo Not building MT butc for ${SYS_NAME} ;; \ - esac - -budb: project bubasics - ${COMPILE_PART1} budb ${COMPILE_PART2} - -bucoord: project bubasics budb volser - ${COMPILE_PART1} bucoord ${COMPILE_PART2} - -xstat: project - ${COMPILE_PART1} xstat ${COMPILE_PART2} - -afsmonitor: project gtx xstat - ${COMPILE_PART1} afsmonitor ${COMPILE_PART2} - -# -# Washtool internal targets -# -ircs: project - case ${SYS_NAME} in \ - sgi_* ) \ - echo skip ircs for ${SYS_NAME} ;; \ - *) \ - ${COMPILE_PART1} ircs ${COMPILE_PART2} ;; \ - esac - -wash: project - case ${SYS_NAME} in \ - sgi_* ) \ - echo skip wash for ${SYS_NAME} ;; \ - *) \ - ${COMPILE_PART1} wash ${COMPILE_PART2} ;; \ - esac - -tests: rxtests ubiktests - -# pthread based user space RX library -libafsrpc: rx rxkad des - case ${SYS_NAME} in \ - alpha_dux*|sgi_*|sun4x_*|rs_aix*|*linux*|hp_ux110) \ - ${COMPILE_PART1} libafsrpc ${COMPILE_PART2} ;; \ - *) \ - echo Not building MT libafsrpc for ${SYS_NAME} ;; \ - esac - -libafsauthent: ubik auth kauth libafsrpc - case ${SYS_NAME} in \ - alpha_dux*|sgi_*|sun4x_*|rs_aix*|*linux*|hp_ux110) \ - ${COMPILE_PART1} libafsauthent ${COMPILE_PART2} ;; \ - *) \ - echo Not building MT libafsrpc for ${SYS_NAME} ;; \ - esac - -libadmin_real: - ${COMPILE_PART1} libadmin ${COMPILE_PART2} - ${COMPILE_PART1} libadmin/adminutil ${COMPILE_PART2} - ${COMPILE_PART1} libadmin/vos ${COMPILE_PART2} - ${COMPILE_PART1} libadmin/client ${COMPILE_PART2} - ${COMPILE_PART1} libadmin/kas ${COMPILE_PART2} - ${COMPILE_PART1} libadmin/pts ${COMPILE_PART2} - ${COMPILE_PART1} libadmin/bos ${COMPILE_PART2} - ${COMPILE_PART1} libadmin/cfg ${COMPILE_PART2} - ${COMPILE_PART1} libadmin/test ${COMPILE_PART2} - ${COMPILE_PART1} libadmin/samples ${COMPILE_PART2} -libadmin: libafsauthent bozo - case ${SYS_NAME} in \ - alpha_dux*|sgi_*|sun4x_*|rs_aix*|*linux*|hp_ux110) \ - $(MAKE) libadmin_real SYS_NAME=$(SYS_NAME) \ - WASHTOOL="$(WASHTOOL)" \ - COMPILE_PART1="$(COMPILE_PART1)" \ - COMPILE_PART2="$(COMPILE_PART2)" \ - SRCDIR=$(SRCDIR) DESTDIR=$(DESTDIR) \ - DBG_DEFS=$(DBG_DEFS) ;; \ - *) \ - echo Not building MT libadmin for ${SYS_NAME} ;; \ - esac -finale: project cmd comerr afsd allrcmds butc tbutc libuafs audit kauth log package \ - ptserver scout bu_utils ubik uss bozo vfsck volser \ - venus update xstat afsmonitor dauth tests libafsrpc \ - libafsauthent libadmin - ${COMPILE_PART1} finale ${COMPILE_PART2} - -# Use washtool to ensure MakefileProto is current and obj/libafs exists. - -libafs_setup: config minproject export -# How about if no RCSUPDATE exists? -# Well then you're going to lose. Or, if you insist, set -# WASHTOOLRCSUPDATE to be a no-op -# Warning: The next few lines are _extremely_ sensitive to spaces and tabs. - ${WASHTOOL} object libafs - case ${SYS_NAME} in \ - alpha_dux* ) \ - MKAFS_OSTYPE=DUX;; \ - hp_ux* ) \ - MKAFS_OSTYPE=HPUX;; \ - *linux*) \ - MKAFS_OSTYPE=LINUX;; \ - *fbsd*) \ - MKAFS_OSTYPE=FBSD;; \ - rs_aix* ) \ - MKAFS_OSTYPE=AIX;; \ - sgi_* ) \ - MKAFS_OSTYPE=IRIX;; \ - sun4x_5* ) \ - MKAFS_OSTYPE=SOLARIS;; \ - ppc_darwin* ) \ - MKAFS_OSTYPE=DARWIN;; \ - * ) \ - echo WARNING: No MakefileProto for sys ${SYS_NAME} ; \ - esac; \ - obj/config/config src/libafs/MakefileProto.$$MKAFS_OSTYPE obj/libafs/Makefile ${SYS_NAME} - -libuafs_setup: config minproject export -# How about if no RCSUPDATE exists? -# Well then you're going to lose. Or, if you insist, set -# WASHTOOLRCSUPDATE to be a no-op - ${WASHTOOL} object libuafs - case ${SYS_NAME} in \ - hp_ux* ) \ - MKAFS_OSTYPE=HPUX;; \ - *linux*) \ - MKAFS_OSTYPE=LINUX;; \ - *fbsd*) \ - MKAFS_OSTYPE=FBSD;; \ - rs_aix* ) \ - MKAFS_OSTYPE=AIX;; \ - sun4x_5* ) \ - MKAFS_OSTYPE=SOLARIS;; \ - alpha_dux* ) \ - MKAFS_OSTYPE=DUX;; \ - sgi_6* ) \ - MKAFS_OSTYPE=IRIX;; \ - ppc_darwin* ) \ - MKAFS_OSTYPE=DARWIN;; \ - * ) \ - echo WARNING: No MakefileProto for sys ${SYS_NAME} ; \ - esac; \ - obj/config/config src/libuafs/MakefileProto.$$MKAFS_OSTYPE obj/libuafs/Makefile ${SYS_NAME} - -# "COMPILE_PART1=${COMPILE_PART1}" "COMPILE_PART2=${COMPILE_PART2}" SYS_NAME=${SYS_NAME} ;; - -TARGET=finale -install: - $(MAKE) $(TARGET) "SYS_NAME=${SYS_NAME}" "WASHTOOL=${WASHTOOL}" \ - "COMPILE_PART1=${COMPILE_PART1}" \ - "COMPILE_PART2=${COMPILE_PART2}" \ - DESTDIR=`pwd`/${SYS_NAME}/dest/ \ - SRCDIR=`pwd`/${SYS_NAME}/dest/ \ - "DBG_DEFS=${DBG_DEFS}" - -# sgi: "NON_SHARED=-non_shared" -#updatekdir: -# ${WASHTOOL} rcsupdate ${KERNELDIR} libafs - -kupdate: updatekdir libafs_setup libuafs_setup - -blibafs: - $(MAKE) libafs "WASHTOOL=${WASHTOOL}" "WASHTOOLFLAGS=-argument kinstall" SYS_NAME=${SYS_NAME} "CPUARCH=${CPUARCH}" "MPSP=${MPSP}" "DBG_DEFS=${DBG_DEFS}" - -blibuafs: - $(MAKE) libuafs "WASHTOOL=${WASHTOOL}" "WASHTOOLFLAGS=-argument ukinstall" SYS_NAME=${SYS_NAME} "CPUARCH=${CPUARCH}" "MPSP=${MPSP}" "DBG_DEFS=${DBG_DEFS}" - -bwebafs: sys - $(MAKE) libuafs "WASHTOOL=${WASHTOOL}" "WASHTOOLFLAGS=-argument webinstall" SYS_NAME=${SYS_NAME} "CPUARCH=${CPUARCH}" "MPSP=${MPSP}" "DBG_DEFS=${DBG_DEFS}" - -clean: - ${WASHTOOL} every "cd obj/%s; $(MAKE) clean" -rootd obj - -checklist: - ${WASHTOOL} every -command \ - 'cd rcs/%s; echo ; echo In %s:; if test x = "x`/bin/ls RCS/*,v`"; then exit 0; else rlog -I RCS/*,v; fi' - -links: - echo "Remove the obj directory" - - /bin/rm -rf @sys/obj/* ; - - /bin/rm -rf @sys/dest/* ; - - /bin/mkdir @sys/obj ; - echo "Create the obj directories" - here=`pwd` ; \ - cd src; \ - for file in `find [!NW]* -type d -print` ; do \ - /bin/mkdir $${here}/obj/$${file} ; \ - done; - echo "Create the obj file links" - here=`pwd` ; \ - cd src; \ - for file in `find [!NW]* -type f -print` ; do \ - /bin/ln -s `pwd`/$${file} $${here}/obj/$${file} ; \ - done; - -# -# Below targets are all deprecated, insecure, or obsolte, -# see README.OBSOLETE and README.INSECURE for more info -# - -mpp: project - @case ${WITH_DEPRECATED} in \ - YES) ${COMPILE_PART1} mpp ${COMPILE_PART2} ;; \ - *) echo skipping deprecated target: mpp ;; \ - esac - -package: project mpp - @case ${WITH_DEPRECATED} in \ - YES) ${COMPILE_PART1} package ${COMPILE_PART2} ;; \ - *) echo skipping deprecated target: package ;; \ - esac - -package.files: package - @case ${WITH_DEPRECATED} in \ - YES) ${DESTDIR}/bin/makepkgfiles afs.dev ;; \ - *) echo skipping deprecated target: package.files ;; \ - esac - -ntp: project volser - @case ${WITH_DEPRECATED} in \ - YES) case ${SYS_NAME} in \ - sun4x_58 | *linux* | *fbsd* | ppc_darwin* ) echo skipping ntp for ${SYS_NAME} ;; \ - * ) ${COMPILE_PART1} ntp ${COMPILE_PART2} ;; \ - esac ;; \ - *) echo skipping deprecated target: ntp ;; \ - esac - -sgistuff: project rlogind - @case ${WITH_DEPRECATED} in \ - YES) case ${SYS_NAME} in \ - sgi_* ) ${COMPILE_PART1} sgistuff ${COMPILE_PART2} ;; \ - * ) echo skipping sgistuff for ${SYS_NAME} ;; \ - esac ;; \ - *) echo skipping deprecated target: sgistuff ;; \ - esac - -ftpd43+: project kauth rxkad - @case ${WITH_DEPRECATED} in \ - YES) case ${SYS_NAME} in \ - rs_aix* | sun4x_55 | *linux*) \ - ${COMPILE_PART1} ftpd43+ ${COMPILE_PART2} ;; \ - *) echo skip ftpd43+ for ${SYS_NAME} ;; \ - esac ;; \ - *) echo skipping deprecated target: ftpd43+ ;; \ - esac - -inetd: project kauth rxkad - @case ${WITH_DEPRECATED} in \ - YES) ${COMPILE_PART1} inetd ${COMPILE_PART2} ;; \ - *) echo skipping deprecated target: inetd ;; \ - esac - -rsh: project inetd - @case ${WITH_DEPRECATED} in \ - YES) ${COMPILE_PART1} rsh ${COMPILE_PART2} ;; \ - *) echo skipping deprecated target: rsh ;; \ - esac - -rlogind: project rsh ftpd43+ login - @case ${WITH_DEPRECATED} in \ - YES) case ${SYS_NAME} in \ - rs_aix*) ${COMPILE_PART1} rlogind ${COMPILE_PART2} ;; \ - *) echo skipping rlogind for ${SYS_NAME} ;; \ - esac ;; \ - *) echo skipping deprecated target: rlogind ;; \ - esac - -rcp: project rsh inetd - @case ${WITH_DEPRECATED} in \ - YES) case ${SYS_NAME} in \ - sgi_* ) echo skip rcp for ${SYS_NAME} ;; \ - *) ${COMPILE_PART1} rcp ${COMPILE_PART2} ;; \ - esac ;; \ - *) echo skipping deprecated target: rcp ;; \ - esac - -allrcmds: project rcp rlogind - - diff --git a/src/afs/LINUX/osi_module.c b/src/afs/LINUX/osi_module.c index 608012740..7947b5a13 100644 --- a/src/afs/LINUX/osi_module.c +++ b/src/afs/LINUX/osi_module.c @@ -20,6 +20,9 @@ #include +#ifdef AFS_SPARC64_LINUX24_ENV +#define __NR_setgroups32 82 /* This number is not exported for some bizarre reason. */ +#endif asmlinkage int (*sys_settimeofdayp)(struct timeval *tv, struct timezone *tz); #if !defined(AFS_ALPHA_LINUX20_ENV) @@ -56,7 +59,10 @@ static void* afs_ni_syscall = 0; #ifdef AFS_SPARC64_LINUX20_ENV static unsigned int afs_ni_syscall32 = 0; -asmlinkage int (*sys_setgroupsp32)(int gidsetsize, __kernel_gid_t32 *grouplist); +asmlinkage int (*sys32_setgroupsp)(int gidsetsize, __kernel_gid_t32 *grouplist); +#if defined(__NR_setgroups32) +asmlinkage int (*sys32_setgroups32p)(int gidsetsize, __kernel_gid_t32 *grouplist); +#endif extern unsigned int sys_call_table32[]; asmlinkage int afs_syscall32(long syscall, long parm1, long parm2, long parm3, @@ -73,7 +79,7 @@ __asm__ __volatile__ (" } #endif -#if defined(AFS_LINUX24_ENV) +#ifdef AFS_LINUX24_ENV asmlinkage int (*sys_setgroups32p)(int gidsetsize, __kernel_gid32_t *grouplist); #endif @@ -89,8 +95,14 @@ int init_module(void) { extern int afs_syscall(); extern int afs_xsetgroups(); -#if defined(AFS_SPARC64_LINUX20_ENV) || defined(AFS_LINUX24_ENV) +#if defined(__NR_setgroups32) extern int afs_xsetgroups32(); +#endif +#ifdef AFS_SPARC64_LINUX20_ENV + extern int afs32_xsetgroups(); +#if defined(__NR_setgroups32) + extern int afs32_xsetgroups32(); +#endif #endif /* obtain PAGE_OFFSET value */ @@ -132,12 +144,16 @@ int init_module(void) sys_setgroupsp = SYSCALL2POINTER sys_call_table[__NR_setgroups]; sys_call_table[__NR_setgroups] = POINTER2SYSCALL afs_xsetgroups; #ifdef AFS_SPARC64_LINUX20_ENV - sys_setgroupsp32 = SYSCALL2POINTER sys_call_table32[__NR_setgroups]; - sys_call_table32[__NR_setgroups] = POINTER2SYSCALL afs_xsetgroups32; + sys32_setgroupsp = SYSCALL2POINTER sys_call_table32[__NR_setgroups]; + sys_call_table32[__NR_setgroups] = POINTER2SYSCALL afs32_xsetgroups; #endif #if defined(__NR_setgroups32) sys_setgroups32p = SYSCALL2POINTER sys_call_table[__NR_setgroups32]; sys_call_table[__NR_setgroups32] = POINTER2SYSCALL afs_xsetgroups32; +#ifdef AFS_SPARC64_LINUX20_ENV + sys32_setgroups32p = SYSCALL2POINTER sys_call_table32[__NR_setgroups32]; + sys_call_table32[__NR_setgroups32] = POINTER2SYSCALL afs32_xsetgroups32; +#endif #endif return 0; @@ -150,11 +166,14 @@ void cleanup_module(void) sys_call_table[__NR_setgroups] = POINTER2SYSCALL sys_setgroupsp; sys_call_table[__NR_afs_syscall] = afs_ni_syscall; #ifdef AFS_SPARC64_LINUX20_ENV - sys_call_table32[__NR_setgroups] = POINTER2SYSCALL sys_setgroupsp32; + sys_call_table32[__NR_setgroups] = POINTER2SYSCALL sys32_setgroupsp; sys_call_table32[__NR_afs_syscall] = afs_ni_syscall32; #endif #if defined(__NR_setgroups32) sys_call_table[__NR_setgroups32] = POINTER2SYSCALL sys_setgroups32p; +#ifdef AFS_SPARC64_LINUX20_ENV + sys_call_table32[__NR_setgroups32] = POINTER2SYSCALL sys32_setgroups32p; +#endif #endif unregister_filesystem(&afs_file_system); diff --git a/src/afs/LINUX/osi_vnodeops.c b/src/afs/LINUX/osi_vnodeops.c index 8223ea992..c6497e541 100644 --- a/src/afs/LINUX/osi_vnodeops.c +++ b/src/afs/LINUX/osi_vnodeops.c @@ -230,7 +230,7 @@ tagain: len = strlen(de->name); /* filldir returns -EINVAL when the buffer is full. */ -#ifdef AFS_LINUX24_ENV +#if (defined(AFS_LINUX24_ENV) || defined(pgoff2loff)) && defined(DECLARE_FSTYPE) { unsigned int type=DT_UNKNOWN; struct VenusFid afid; @@ -508,7 +508,11 @@ static int afs_linux_lock(struct file *fp, int cmd, struct file_lock *flp) int code = 0; struct vcache *vcp = (struct vcache*)FILE_INODE(fp); cred_t *credp = crref(); +#ifdef AFS_LINUX24_ENV + struct flock64 flock; +#else struct flock flock; +#endif /* Convert to a lock format afs_lockctl understands. */ memset((char*)&flock, 0, sizeof(flock)); @@ -683,8 +687,27 @@ static int afs_linux_dentry_revalidate(struct dentry *dp, int flags) static int afs_linux_dentry_revalidate(struct dentry *dp) #endif { - /* Force revalidation as this may be a different client than the - one which caused an entry to get cached */ + int code; + cred_t *credp; + struct vrequest treq; + struct inode *ip = (struct inode *)dp->d_inode; + + unsigned long timeout = 3*HZ; /* 3 seconds */ + + if (!(flags & LOOKUP_CONTINUE)) { + long diff = CURRENT_TIME - dp->d_parent->d_inode->i_mtime; + + if (diff < 15*60) + timeout = 0; + } + + if (time_after(jiffies, dp->d_time + timeout)) + goto out_bad; + + out_valid: + return 1; + + out_bad: return 0; } @@ -765,9 +788,7 @@ int afs_linux_create(struct inode *dip, struct dentry *dp, int mode) #endif dp->d_op = afs_dops; - /* This DV is probably wrong, unfortunately, Perhaps we should - VerifyVCache the directory */ - dp->d_time=hgetlo(((struct vcache *)dip)->m.DataVersion); + dp->d_time = jiffies; d_instantiate(dp, ip); } @@ -814,8 +835,7 @@ int afs_linux_lookup(struct inode *dip, struct dentry *dp) ip->i_op = &afs_symlink_iops; #endif } - /* directory ought to be stat'd here.... */ - dp->d_time=hgetlo(((struct vcache *)dip)->m.DataVersion); + dp->d_time = jiffies; dp->d_op = afs_dops; d_add(dp, (struct inode*)vcp); @@ -882,9 +902,7 @@ int afs_linux_unlink(struct inode *dip, struct dentry *dp) if (!code) { d_delete(dp); if (putback) { - /* This DV is probably wrong, unfortunately, Perhaps we should - VerifyVCache the directory */ - dp->d_time=hgetlo(((struct vcache *)dip)->m.DataVersion); + dp->d_time = jiffies; d_add(dp, NULL); /* means definitely does _not_ exist */ } } @@ -934,9 +952,7 @@ int afs_linux_mkdir(struct inode *dip, struct dentry *dp, int mode) tvcp->v.v_fop = &afs_dir_fops; #endif dp->d_op = afs_dops; - /* This DV is probably wrong, unfortunately, Perhaps we should - VerifyVCache the directory */ - dp->d_time=hgetlo(((struct vcache *)dip)->m.DataVersion); + dp->d_time = jiffies; d_instantiate(dp, (struct inode*)tvcp); } AFS_GUNLOCK(); @@ -998,9 +1014,7 @@ int afs_linux_rename(struct inode *oldip, struct dentry *olddp, if (!code) { /* update time so it doesn't expire immediately */ - /* This DV is probably wrong, unfortunately, Perhaps we should - VerifyVCache the directory */ - newdp->d_time=hgetlo(((struct vcache *)newdp->d_parent->d_inode)->m.DataVersion); + newdp->d_time = jiffies; d_move(olddp, newdp); } @@ -1305,7 +1319,7 @@ int afs_linux_updatepage(struct file *fp, struct page *pp, ICL_TYPE_POINTER, pp, ICL_TYPE_INT32, atomic_read(&pp->count), ICL_TYPE_INT32, 99999); - setup_uio(&tuio, &iovec, page_addr + offset, pp->offset + offset, count, + setup_uio(&tuio, &iovec, page_addr + offset, pageoff(pp) + offset, count, UIO_WRITE, AFS_UIOSYS); code = afs_write(vcp, &tuio, fp->f_flags, credp, 0); diff --git a/src/afs/UKERNEL/sysincludes.h b/src/afs/UKERNEL/sysincludes.h index 367b6e20b..73db66ab7 100644 --- a/src/afs/UKERNEL/sysincludes.h +++ b/src/afs/UKERNEL/sysincludes.h @@ -137,6 +137,11 @@ #endif #endif /* AFS_USR_DARWIN_ENV || AFS_USR_FBSD_ENV */ +#ifdef AFS_AFSDB_ENV +#include +#include +#endif /* AFS_AFSDB_ENV */ + /* glibc 2.2 has pthread_attr_setstacksize */ #if defined(AFS_LINUX22_ENV) || defined(AFS_USR_LINUX22_ENV) && (__GLIBC_MINOR__ < 2) #define pthread_attr_setstacksize(a,b) 0 @@ -932,6 +937,8 @@ extern pthread_cond_t usr_sleep_cond; #define usr_cond_signal(A) assert(pthread_cond_signal(A) == 0) #define usr_cond_broadcast(A) assert(pthread_cond_broadcast(A) == 0) #define usr_cond_wait(A,B) pthread_cond_wait(A,B) +#define usr_cond_timedwait(A,B,C) pthread_cond_timedwait(A,B,C) + #define usr_thread_create(A,B,C) \ do { \ pthread_attr_t attr; \ @@ -1378,4 +1385,6 @@ typedef struct { extern unsigned short usr_rx_port; +#define AFS_LOOKUP_NOEVAL 1 + #endif /* __AFS_SYSINCLUDESH__ so idempotent */ diff --git a/src/afs/VNOPS/afs_vnop_lookup.c b/src/afs/VNOPS/afs_vnop_lookup.c index 7df8f041d..a1f22b246 100644 --- a/src/afs/VNOPS/afs_vnop_lookup.c +++ b/src/afs/VNOPS/afs_vnop_lookup.c @@ -40,6 +40,8 @@ extern afs_rwlock_t afs_xvcache; extern afs_rwlock_t afs_xcbhash; extern struct afs_exporter *afs_nfsexporter; extern char *afs_sysname; +extern char *afs_sysnamelist[]; +extern int afs_sysnamecount; extern struct afs_q VLRU; /*vcache LRU*/ #ifdef AFS_LINUX22_ENV extern struct inode_operations afs_symlink_iops, afs_dir_iops; @@ -242,85 +244,82 @@ afs_ENameOK(aname) return 1; } -Check_AtSys(avc, aname, outb, areq) - register struct vcache *avc; - char *aname, **outb; - struct vrequest *areq; -{ - register char *tname; - register int error = 0, offset = -1; - - for (tname=aname; *tname; tname++) /*Move to the end of the string*/; - - /* - * If the current string is 4 chars long or more, check to see if the - * tail end is "@sys". - */ - if ((tname >= aname + 4) && (AFS_EQ_ATSYS(tname-4))) - offset = (tname - 4) - aname; - if (offset < 0) { - tname = aname; - } else { - tname = (char *) osi_AllocLargeSpace(AFS_LRALLOCSIZ); - if (offset) - strncpy(tname, aname, offset); - if (!afs_nfsexporter) - strcpy(tname+offset, (afs_sysname ? afs_sysname : SYS_NAME )); - else { - register struct unixuser *au; - register afs_int32 error; - au = afs_GetUser(areq->uid, avc->fid.Cell, 0); afs_PutUser(au, 0); - if (au->exporter) { - error = EXP_SYSNAME(au->exporter, (char *)0, tname+offset); - if (error) - strcpy(tname+offset, "@sys"); - } else { - strcpy(tname+offset, (afs_sysname ? afs_sysname : SYS_NAME )); - } - } - error = 1; - } - *outb = tname; - return error; -} - - -char *afs_getsysname(areq, adp) +afs_getsysname(areq, adp, bufp) register struct vrequest *areq; - register struct vcache *adp; { + register struct vcache *adp; + register char *bufp; +{ static char sysname[MAXSYSNAME]; register struct unixuser *au; register afs_int32 error; + if (!afs_nfsexporter) { + strcpy(bufp, afs_sysname); + return 0; + } AFS_STATCNT(getsysname); - /* this whole interface is wrong, it should take a buffer ptr and copy - * the data out. - */ au = afs_GetUser(areq->uid, adp->fid.Cell, 0); afs_PutUser(au, 0); if (au->exporter) { - error = EXP_SYSNAME(au->exporter, (char *)0, sysname); - if (error) return "@sys"; - else return sysname; + error = EXP_SYSNAME(au->exporter, (char *)0, bufp); + if (error) + strcpy(bufp, "@sys"); + return -1; } else { - return (afs_sysname == 0? SYS_NAME : afs_sysname); + strcpy(bufp, afs_sysname); + return 0; } } -void afs_HandleAtName(aname, aresult, areq, adp) - register char *aname; - register char *aresult; - register struct vrequest *areq; - register struct vcache *adp; { - register int tlen; - AFS_STATCNT(HandleAtName); - tlen = strlen(aname); - if (tlen >= 4 && strcmp(aname+tlen-4, "@sys")==0) { - strncpy(aresult, aname, tlen-4); - strcpy(aresult+tlen-4, afs_getsysname(areq, adp)); - } - else strcpy(aresult, aname); +Check_AtSys(avc, aname, state, areq) + register struct vcache *avc; + char *aname; + struct sysname_info *state; + struct vrequest *areq; +{ + if (AFS_EQ_ATSYS(aname)) { + state->offset = 0; + state->name = (char *) osi_AllocLargeSpace(AFS_SMALLOCSIZ); + state->allocked = 1; + state->index = afs_getsysname(areq, avc, state->name); + } else { + state->offset = -1; + state->allocked = 0; + state->index = 0; + state->name = aname; } +} + +Next_AtSys(avc, areq, state) + register struct vcache *avc; + struct vrequest *areq; + struct sysname_info *state; +{ + if (state->index == -1) + return 0; /* No list */ + + /* Check for the initial state of aname != "@sys" in Check_AtSys*/ + if (state->offset == -1 && state->allocked == 0) { + register char *tname; + /* Check for .*@sys */ + for (tname=state->name; *tname; tname++) + /*Move to the end of the string*/; + if ((tname > state->name + 4) && (AFS_EQ_ATSYS(tname-4))) { + state->offset = (tname - 4) - state->name; + tname = (char *) osi_AllocLargeSpace(AFS_LRALLOCSIZ); + strncpy(tname, state->name, state->offset); + state->name = tname; + state->allocked = 1; + state->index = afs_getsysname(areq, avc, state->name+state->offset); + return 1; + } else + return 0; /* .*@sys doesn't match either */ + } else if (++(state->index) >= afs_sysnamecount + || !afs_sysnamelist[state->index]) + return 0; /* end of list */ + strcpy(state->name+state->offset, afs_sysnamelist[state->index]); + return 1; +} #if (defined(AFS_SGI62_ENV) || defined(AFS_SUN57_64BIT_ENV)) extern int BlobScan(ino64_t *afile, afs_int32 ablob); @@ -867,8 +866,13 @@ afs_lookup(OSI_VC_ARG(adp), aname, avcp, pnp, flags, rdir, acred) int flags; struct vnode *rdir; #else +#if defined(UKERNEL) +afs_lookup(adp, aname, avcp, acred, flags) + int flags; +#else afs_lookup(adp, aname, avcp, acred) -#endif +#endif /* UKERNEL */ +#endif /* SUN5 || SGI */ OSI_VC_DECL(adp); struct vcache **avcp; char *aname; @@ -883,6 +887,8 @@ afs_lookup(adp, aname, avcp, acred) extern afs_int32 afs_mariner; /*Writing activity to log?*/ OSI_VC_CONVERT(adp) afs_hyper_t versionNo; + int no_read_access = 0; + struct sysname_info sysState; /* used only for @sys checking */ AFS_STATCNT(afs_lookup); #ifdef AFS_OSF_ENV @@ -897,39 +903,6 @@ afs_lookup(adp, aname, avcp, acred) goto done; } - /* lookup the name aname in the appropriate dir, and return a cache entry - on the resulting fid */ - - /* - * check for, and handle "@sys" if it's there. We should be able - * to avoid the alloc and the strcpy with a little work, but it's - * not pressing. If there aren't any remote users (ie, via the - * NFS translator), we have a slightly easier job. - * the faster way to do this is to check for *aname == '@' and if - * it's there, check for @sys, otherwise, assume there's no @sys - * then, if the lookup fails, check for .*@sys... - */ - if (!AFS_EQ_ATSYS(aname)) { - tname = aname; - } - else { - tname = (char *) osi_AllocLargeSpace(AFS_SMALLOCSIZ); - if (!afs_nfsexporter) - strcpy(tname, (afs_sysname ? afs_sysname : SYS_NAME )); - else { - register struct unixuser *au; - register afs_int32 error; - au = afs_GetUser(treq.uid, adp->fid.Cell, 0); afs_PutUser(au, 0); - if (au->exporter) { - error = EXP_SYSNAME(au->exporter, (char *)0, tname); - if (error) - strcpy(tname, "@sys"); - } else { - strcpy(tname, (afs_sysname ? afs_sysname : SYS_NAME )); - } - } - } - /* come back to here if we encounter a non-existent object in a read-only volume's directory */ @@ -943,7 +916,7 @@ afs_lookup(adp, aname, avcp, acred) else code = 0; /* watch for ".." in a volume root */ - if (adp->mvstat == 2 && tname[0] == '.' && tname[1] == '.' && !tname[2]) { + if (adp->mvstat == 2 && aname[0] == '.' && aname[1] == '.' && !aname[2]) { /* looking up ".." in root via special hacks */ if (adp->mvid == (struct VenusFid *) 0 || adp->mvid->Fid.Volume == 0) { #ifdef AFS_OSF_ENV @@ -990,13 +963,17 @@ afs_lookup(adp, aname, avcp, acred) else adp->last_looker = treq.uid; } + /* Check for read access as well. We need read access in order to + stat files, but not to stat subdirectories. */ + if (!afs_AccessOK(adp, PRSFS_READ, &treq, CHECK_MODE_BITS)) + no_read_access = 1; /* special case lookup of ".". Can we check for it sooner in this code, * for instance, way up before "redo:" ?? * I'm not fiddling with the LRUQ here, either, perhaps I should, or else * invent a lightweight version of GetVCache. */ - if (tname[0] == '.' && !tname[1]) { /* special case */ + if (aname[0] == '.' && !aname[1]) { /* special case */ ObtainReadLock(&afs_xvcache); osi_vnhold(adp, 0); ReleaseReadLock(&afs_xvcache); @@ -1009,27 +986,42 @@ afs_lookup(adp, aname, avcp, acred) goto done; } + Check_AtSys(adp, aname, &sysState, &treq); + tname = sysState.name; + + /* 1st Check_AtSys and lookup by tname is required here, for now, + because the dnlc is *not* told to remove entries for the parent + dir of file/dir op that afs_LocalHero likes, but dnlc is informed + if the cached entry for the parent dir is invalidated for a + non-local change. + Otherwise, we'd be able to do a dnlc lookup on an entry ending + w/@sys and know the dnlc was consistent with reality. */ tvc = osi_dnlc_lookup (adp, tname, WRITE_LOCK); *avcp = tvc; /* maybe wasn't initialized, but it is now */ -#ifdef AFS_LINUX22_ENV if (tvc) { - if (tvc->mvstat == 2) { /* we don't trust the dnlc for root vcaches */ - AFS_RELE(tvc); - *avcp = 0; - } - else { + if (no_read_access && vType(tvc) != VDIR) { + /* need read access on dir to stat non-directory */ + afs_PutVCache(tvc, WRITE_LOCK); + *avcp = (struct vcache *)0; + code = EACCES; + goto done; + } +#ifdef AFS_LINUX22_ENV + if (tvc->mvstat == 2) { /* we don't trust the dnlc for root vcaches */ + AFS_RELE(tvc); + *avcp = 0; + } + else { + code = 0; + hit = 1; + goto done; + } +#else /* non - LINUX */ code = 0; hit = 1; goto done; - } - } -#else /* non - LINUX */ - if (tvc) { - code = 0; - hit = 1; - goto done; - } #endif /* linux22 */ + } { register struct dcache *tdc; @@ -1047,7 +1039,6 @@ afs_lookup(adp, aname, avcp, acred) /* now we will just call dir package with appropriate inode. Dirs are always fetched in their entirety for now */ - /* If the first lookup doesn't succeed, maybe it's got @sys in the name */ ObtainReadLock(&adp->lock); /* @@ -1074,17 +1065,28 @@ afs_lookup(adp, aname, avcp, acred) /* Save the version number for when we call osi_dnlc_enter */ hset(versionNo, tdc->f.versionNo); + /* + * check for, and handle "@sys" if it's there. We should be able + * to avoid the alloc and the strcpy with a little work, but it's + * not pressing. If there aren't any remote users (ie, via the + * NFS translator), we have a slightly easier job. + * the faster way to do this is to check for *aname == '@' and if + * it's there, check for @sys, otherwise, assume there's no @sys + * then, if the lookup fails, check for .*@sys... + */ + /* above now implemented by Check_AtSys and Next_AtSys */ + + /* lookup the name in the appropriate dir, and return a cache entry + on the resulting fid */ theDir = tdc->f.inode; - code = afs_dir_LookupOffset(&theDir, tname, &tfid.Fid, &dirCookie); - if (code == ENOENT && tname == aname) { - int len; - len = strlen(aname); - if (len >= 4 && AFS_EQ_ATSYS(aname+len-4)) { - tname = (char *) osi_AllocLargeSpace(AFS_LRALLOCSIZ); - afs_HandleAtName(aname, tname, &treq, adp); - code = afs_dir_LookupOffset(&theDir, tname, &tfid.Fid, &dirCookie); - } + code = afs_dir_LookupOffset(&theDir, sysState.name, &tfid.Fid, &dirCookie); + + /* If the first lookup doesn't succeed, maybe it's got @sys in the name */ + while (code == ENOENT && Next_AtSys(adp, &treq, &sysState)) { + code = afs_dir_LookupOffset(&theDir, sysState.name, &tfid.Fid, &dirCookie); } + tname = sysState.name; + ReleaseReadLock(&adp->lock); afs_PutDCache(tdc); @@ -1155,6 +1157,11 @@ afs_lookup(adp, aname, avcp, acred) tvc->parentVnode = adp->fid.Fid.Vnode; tvc->parentUnique = adp->fid.Fid.Unique; tvc->states &= ~CBulkStat; + +#if defined(UKERNEL) && defined(AFS_WEB_ENHANCEMENTS) + if (!(flags & AFS_LOOKUP_NOEVAL)) + /* don't eval mount points */ +#endif /* UKERNEL && AFS_WEB_ENHANCEMENTS */ if (tvc->mvstat == 1) { /* a mt point, possibly unevaluated */ struct volume *tvolp; @@ -1263,6 +1270,14 @@ done: if (afs_mariner) afs_AddMarinerName(aname, tvc); + +#if defined(UKERNEL) && defined(AFS_WEB_ENHANCEMENTS) + if (!(flags & AFS_LOOKUP_NOEVAL)) + /* Here we don't enter the name into the DNLC because we want the + evaluated mount dir to be there (the vcache for the mounted volume) + rather than the vc of the mount point itself. we can still find the + mount point's vc in the vcache by its fid. */ +#endif /* UKERNEL && AFS_WEB_ENHANCEMENTS */ if (!hit) { osi_dnlc_enter (adp, aname, tvc, &versionNo); } diff --git a/src/afs/afs.h b/src/afs/afs.h index 4f80931dd..121ccd50c 100644 --- a/src/afs/afs.h +++ b/src/afs/afs.h @@ -63,6 +63,7 @@ extern int afs_shuttingdown; #define PIGGYSIZE 1350 /* max piggyback size */ #define MAXVOLS 128 /* max vols we can store */ #define MAXSYSNAME 128 /* max sysname (i.e. @sys) size */ +#define MAXNUMSYSNAMES 16 /* max that current constants allow */ #define NOTOKTIMEOUT (2*3600) /* time after which to timeout conns sans tokens */ #define NOPAG 0xffffffff #define AFS_NCBRS 300 /* max # of call back return entries */ @@ -74,6 +75,11 @@ extern int afs_shuttingdown; #define AFS_RXDEADTIME 50 #define AFS_HARDDEADTIME 120 +struct sysname_info { + char *name; + short offset; + char index, allocked; +}; /* flags to use with AFSOP_CACHEINIT */ #define AFSCALL_INIT_MEMCACHE 0x1 /* use a memory-based cache */ @@ -194,6 +200,7 @@ struct cell { u_short vlport; /* volume server port */ short states; /* state flags */ short cellIndex; /* relative index number per cell */ + time_t timeout; /* data expire time, if non-zero */ }; #define afs_PutCell(cellp, locktype) diff --git a/src/afs/afs_call.c b/src/afs/afs_call.c index 930b294fe..073b8f63a 100644 --- a/src/afs/afs_call.c +++ b/src/afs/afs_call.c @@ -56,6 +56,8 @@ long afs_global_owner; simple_lock_data_t afs_global_lock; #elif defined(AFS_DARWIN_ENV) struct lock__bsd__ afs_global_lock; +#elif defined(AFS_FBSD_ENV) +struct simplelock afs_global_lock; #endif #if defined(AFS_OSF_ENV) || defined(AFS_DARWIN_ENV) || defined(AFS_FBSD_ENV) thread_t afs_global_owner; @@ -132,7 +134,7 @@ long parm, parm2, parm3, parm4, parm5, parm6; if (!afs_suser() && (parm != AFSOP_GETMTU) && (parm != AFSOP_GETMASK)) { /* only root can run this code */ -#if !defined(AFS_SGI_ENV) && !defined(AFS_OSF_ENV) && !defined(AFS_LINUX20_ENV) && !defined(AFS_DARWIN_ENV) +#if !defined(AFS_SGI_ENV) && !defined(AFS_OSF_ENV) && !defined(AFS_LINUX20_ENV) && !defined(AFS_DARWIN_ENV) && !defined(AFS_FBSD_ENV) setuerror(EACCES); return(EACCES); #else @@ -202,7 +204,7 @@ long parm, parm2, parm3, parm4, parm5, parm6; while (afs_initState < AFSOP_START_AFS) afs_osi_Sleep(&afs_initState); -#if defined(AFS_SUN_ENV) || defined(AFS_SGI_ENV) || defined(AFS_HPUX_ENV) || defined(AFS_LINUX20_ENV) || defined(AFS_DARWIN_ENV) +#if defined(AFS_SUN_ENV) || defined(AFS_SGI_ENV) || defined(AFS_HPUX_ENV) || defined(AFS_LINUX20_ENV) || defined(AFS_DARWIN_ENV) || defined(AFS_FBSD_ENV) temp = AFS_MINBUFFERS; /* Should fix this soon */ #else temp = ((afs_bufferpages * NBPG)>>11); /* number of 2k buffers we could get from all of the buffer space */ @@ -284,14 +286,14 @@ long parm, parm2, parm3, parm4, parm5, parm6; AFS_COPYIN((char *)parm3, tcell.cellName, parm4, code); if (!code) afs_NewCell(tcell.cellName, tcell.hosts, parm5, - (char *)0, (u_short)0, (u_short)0); + (char *)0, (u_short)0, (u_short)0, (int)0); } } } else if (parm == AFSOP_ADDCELL2) { struct afsop_cell tcell; char *tbuffer = osi_AllocSmallSpace(AFS_SMALLOCSIZ), *lcnamep = 0; char *tbuffer1 = osi_AllocSmallSpace(AFS_SMALLOCSIZ), *cnamep = 0; -#if defined(AFS_SGI61_ENV) || defined(AFS_SUN57_ENV) || defined(AFS_DARWIN_ENV) +#if defined(AFS_SGI61_ENV) || defined(AFS_SUN57_ENV) || defined(AFS_DARWIN_ENV) || defined(AFS_FBSD_ENV) size_t bufferSize; #else /* AFS_SGI61_ENV */ u_int bufferSize; @@ -314,7 +316,7 @@ long parm, parm2, parm3, parm4, parm5, parm6; } if (!code) afs_NewCell(tbuffer1, tcell.hosts, cflags, - lcnamep, (u_short)0, (u_short)0); + lcnamep, (u_short)0, (u_short)0, (int)0); } } osi_FreeSmallSpace(tbuffer); @@ -329,7 +331,7 @@ long parm, parm2, parm3, parm4, parm5, parm6; while (afs_initState < AFSOP_START_BKG) afs_osi_Sleep(&afs_initState); AFS_COPYIN((char *)parm2, (caddr_t) &cparms, sizeof(cparms), code); if (code) { -#if defined(AFS_SUN5_ENV) || defined(AFS_OSF_ENV) || defined (AFS_SGI64_ENV) || defined(AFS_LINUX20_ENV) || defined(AFS_DARWIN_ENV) +#if defined(AFS_SUN5_ENV) || defined(AFS_OSF_ENV) || defined (AFS_SGI64_ENV) || defined(AFS_LINUX20_ENV) || defined(AFS_DARWIN_ENV) || defined(AFS_FBSD_ENV) goto out; #else setuerror(code); @@ -375,7 +377,7 @@ long parm, parm2, parm3, parm4, parm5, parm6; code = afs_InitCacheFile((char *) 0, ainode); } else if (parm == AFSOP_ROOTVOLUME) { -#if defined(AFS_SGI61_ENV) || defined(AFS_SUN57_ENV) || defined(AFS_DARWIN_ENV) +#if defined(AFS_SGI61_ENV) || defined(AFS_SUN57_ENV) || defined(AFS_DARWIN_ENV) || defined(AFS_FBSD_ENV) size_t bufferSize; #else /* AFS_SGI61_ENV */ u_int bufferSize; @@ -393,7 +395,7 @@ long parm, parm2, parm3, parm4, parm5, parm6; else if (parm == AFSOP_CACHEFILE || parm == AFSOP_CACHEINFO || parm == AFSOP_VOLUMEINFO || parm == AFSOP_AFSLOG) { char *tbuffer = osi_AllocSmallSpace(AFS_SMALLOCSIZ); -#if defined(AFS_SGI61_ENV) || defined(AFS_SUN57_ENV) || defined(AFS_DARWIN_ENV) +#if defined(AFS_SGI61_ENV) || defined(AFS_SUN57_ENV) || defined(AFS_DARWIN_ENV) || defined(AFS_FBSD_ENV) size_t bufferSize; #else /* AFS_SGI61_ENV */ u_int bufferSize; @@ -501,7 +503,7 @@ long parm, parm2, parm3, parm4, parm5, parm6; #endif /* AFS_SGI62_ENV && !AFS_SGI65_ENV */ #endif /* AFS_SGI53_ENV */ else if (parm == AFSOP_SHUTDOWN) { -#if defined(AFS_OSF_ENV) || defined(AFS_DARWIN_ENV) +#if defined(AFS_OSF_ENV) || defined(AFS_DARWIN_ENV) || defined(AFS_FBSD_ENV) extern struct mount *afs_globalVFS; #else /* AFS_OSF_ENV */ extern struct vfs *afs_globalVFS; @@ -524,7 +526,7 @@ long parm, parm2, parm3, parm4, parm5, parm6; afs_vfs_mount(parm2, parm3, parm4, parm5); #endif /* AFS_HPUX100_ENV */ #else /* defined(AFS_HPUX_ENV) */ -#if defined(AFS_SGI_ENV) || defined(AFS_SUN5_ENV) || defined(AFS_OSF_ENV) || defined(AFS_LINUX20_ENV) || defined(AFS_DARWIN_ENV) +#if defined(AFS_SGI_ENV) || defined(AFS_SUN5_ENV) || defined(AFS_OSF_ENV) || defined(AFS_LINUX20_ENV) || defined(AFS_DARWIN_ENV) || defined(AFS_FBSD_ENV) code = EINVAL; #else setuerror(EINVAL); @@ -595,7 +597,22 @@ long parm, parm2, parm3, parm4, parm5, parm6; #endif /* !AFS_SUN5_ENV */ if (!code) AFS_COPYOUT ((caddr_t)&mask, (caddr_t)parm3, sizeof(afs_int32), code); - } else + } +#ifdef AFS_AFSDB_ENV + else if (parm == AFSOP_AFSDB_HANDLER) { + int sizeArg = (int)parm4; + int kmsgLen = sizeArg & 0xffff; + int cellLen = (sizeArg & 0xffff0000) >> 16; + afs_int32 *kmsg = afs_osi_Alloc(kmsgLen); + char *cellname = afs_osi_Alloc(cellLen); + AFS_COPYIN((afs_int32 *)parm3, kmsg, kmsgLen, code); + if (!code) code = afs_AfsdbHandler(cellname, cellLen, kmsg); + if (!code) AFS_COPYOUT(cellname, (char *)parm2, cellLen, code); + afs_osi_Free(kmsg, kmsgLen); + afs_osi_Free(cellname, cellLen); + } +#endif + else code = EINVAL; out: @@ -824,7 +841,9 @@ copyin_iparam(caddr_t cmarg, struct iparam *dst) #if defined(AFS_LINUX_64BIT_KERNEL) && !defined(AFS_ALPHA_LINUX20_ENV) struct iparam32 dst32; -#ifdef AFS_SPARC64_LINUX20_ENV +#ifdef AFS_SPARC64_LINUX24_ENV + if (current->thread.flags & SPARC_FLAG_32BIT) +#elif AFS_SPARC64_LINUX20_ENV if (current->tss.flags & SPARC_FLAG_32BIT) #else #error Not done for this linux version @@ -878,7 +897,7 @@ Afs_syscall (uap, rvp) { int *retval = &rvp->r_val1; #else /* AFS_SUN5_ENV */ -#if defined(AFS_OSF_ENV) || defined(AFS_DARWIN_ENV) +#if defined(AFS_OSF_ENV) || defined(AFS_DARWIN_ENV) || defined(AFS_FBSD_ENV) afs3_syscall(p, args, retval) struct proc *p; void *args; @@ -1016,7 +1035,7 @@ Afs_syscall () mutex_exit(&procp->p_crlock); #else AFS_GLOCK(); -#if defined(AFS_OSF_ENV) || defined(AFS_DARWIN_ENV) +#if defined(AFS_OSF_ENV) || defined(AFS_DARWIN_ENV) || defined(AFS_FBSD_ENV) code = afs_setpag(p, args, retval); #else /* AFS_OSF_ENV */ code = afs_setpag(); @@ -1028,7 +1047,7 @@ Afs_syscall () #ifdef AFS_SUN5_ENV code = afs_syscall_pioctl(uap->parm1, uap->parm2, uap->parm3, uap->parm4, rvp, CRED()); #else -#ifdef AFS_DARWIN_ENV +#if defined(AFS_DARWIN_ENV) || defined(AFS_FBSD_ENV) code = afs_syscall_pioctl(uap->parm1, uap->parm2, uap->parm3, uap->parm4, p->p_cred->pc_ucred); #else code = afs_syscall_pioctl(uap->parm1, uap->parm2, uap->parm3, uap->parm4); @@ -1040,7 +1059,7 @@ Afs_syscall () code = copyin_iparam((char *)uap->parm3, &iparams); if (code) { -#if !defined(AFS_SUN5_ENV) && !defined(AFS_OSF_ENV) && !defined(AFS_LINUX20_ENV) && !defined(AFS_DARWIN_ENV) +#if !defined(AFS_SUN5_ENV) && !defined(AFS_OSF_ENV) && !defined(AFS_LINUX20_ENV) && !defined(AFS_DARWIN_ENV) && !defined(AFS_FBSD_ENV) setuerror(code); #endif } else @@ -1049,7 +1068,7 @@ Afs_syscall () iparams.param3, iparams.param4, rvp, CRED()); #else code = afs_syscall_icreate(uap->parm1, uap->parm2, iparams.param1, iparams.param2, -#if defined(AFS_OSF_ENV) || defined(AFS_DARWIN_ENV) +#if defined(AFS_OSF_ENV) || defined(AFS_DARWIN_ENV) || defined(AFS_FBSD_ENV) iparams.param3, iparams.param4, retval); #else iparams.param3, iparams.param4); @@ -1059,7 +1078,7 @@ Afs_syscall () #ifdef AFS_SUN5_ENV code = afs_syscall_iopen(uap->parm1, uap->parm2, uap->parm3, rvp, CRED()); #else -#if defined(AFS_OSF_ENV) || defined(AFS_DARWIN_ENV) +#if defined(AFS_OSF_ENV) || defined(AFS_DARWIN_ENV) || defined(AFS_FBSD_ENV) code = afs_syscall_iopen(uap->parm1, uap->parm2, uap->parm3, retval); #else code = afs_syscall_iopen(uap->parm1, uap->parm2, uap->parm3); @@ -1088,13 +1107,13 @@ Afs_syscall () } #else if (code) { -#if !defined(AFS_SUN5_ENV) && !defined(AFS_OSF_ENV) && !defined(AFS_DARWIN_ENV) +#if !defined(AFS_SUN5_ENV) && !defined(AFS_OSF_ENV) && !defined(AFS_DARWIN_ENV) && !defined(AFS_FBSD_ENV) setuerror(code); #endif } #endif /* !AFS_LINUX20_ENV */ } else { -#if defined(AFS_SUN5_ENV) || defined(AFS_OSF_ENV) || defined(AFS_LINUX20_ENV) || defined(AFS_DARWIN_ENV) +#if defined(AFS_SUN5_ENV) || defined(AFS_OSF_ENV) || defined(AFS_LINUX20_ENV) || defined(AFS_DARWIN_ENV) || defined(AFS_FBSD_ENV) code = EINVAL; #else setuerror(EINVAL); @@ -1286,7 +1305,7 @@ Afscall_icl(long opcode, long p1, long p2, long p3, long p4, long *retval) register afs_int32 code; struct afs_icl_log *logp; struct afs_icl_set *setp; -#if defined(AFS_SGI61_ENV) || defined(AFS_SUN57_ENV) || defined(AFS_DARWIN_ENV) +#if defined(AFS_SGI61_ENV) || defined(AFS_SUN57_ENV) || defined(AFS_DARWIN_ENV) || defined(AFS_FBSD_ENV) size_t temp; #else /* AFS_SGI61_ENV */ afs_uint32 temp; @@ -1302,7 +1321,7 @@ Afscall_icl(long opcode, long p1, long p2, long p3, long p4, long *retval) } #else if (!afs_suser()) { /* only root can run this code */ -#if !defined(AFS_SGI_ENV) && !defined(AFS_OSF_ENV) && !defined(AFS_LINUX20_ENV) && !defined(AFS_DARWIN_ENV) +#if !defined(AFS_SGI_ENV) && !defined(AFS_OSF_ENV) && !defined(AFS_LINUX20_ENV) && !defined(AFS_DARWIN_ENV) && !defined(AFS_FBSD_ENV) setuerror(EACCES); return EACCES; #else diff --git a/src/afs/afs_pioctl.c b/src/afs/afs_pioctl.c index 80a815461..1baf5f8d1 100644 --- a/src/afs/afs_pioctl.c +++ b/src/afs/afs_pioctl.c @@ -199,7 +199,9 @@ copyin_afs_ioctl(caddr_t cmarg, struct afs_ioctl *dst) #if defined(AFS_LINUX_64BIT_KERNEL) && !defined(AFS_ALPHA_LINUX20_ENV) struct afs_ioctl32 dst32; -#ifdef AFS_SPARC64_LINUX20_ENV +#ifdef AFS_SPARC64_LINUX24_ENV + if (current->thread.flags & SPARC_FLAG_32BIT) +#elif AFS_SPARC64_LINUX20_ENV if (current->tss.flags & SPARC_FLAG_32BIT) #else #error Not done for this linux type @@ -381,7 +383,7 @@ afs_xioctl (p, args, retval) caddr_t arg; } *uap = (struct a *)args; #else /* AFS_OSF_ENV */ -#ifdef AFS_DARWIN_ENV +#if defined(AFS_DARWIN_ENV) || defined(AFS_FBSD_ENV) struct ioctl_args { int fd; u_long com; @@ -411,12 +413,12 @@ afs_xioctl () caddr_t arg; } *uap = (struct a *)u.u_ap; #endif /* AFS_LINUX22_ENV */ -#endif /* AFS_DARWIN_ENV */ +#endif /* AFS_DARWIN_ENV || AFS_FBSD_ENV */ #endif /* AFS_OSF_ENV */ #endif /* AFS_SUN5_ENV */ #endif #ifndef AFS_LINUX22_ENV -#if defined(AFS_AIX32_ENV) || defined(AFS_SUN5_ENV) || defined(AFS_OSF_ENV) || defined(AFS_DARWIN_ENV) +#if defined(AFS_AIX32_ENV) || defined(AFS_SUN5_ENV) || defined(AFS_OSF_ENV) || defined(AFS_DARWIN_ENV) || defined(AFS_FBSD_ENV) struct file *fd; #else register struct file *fd; @@ -426,7 +428,7 @@ afs_xioctl () register int ioctlDone = 0, code = 0; AFS_STATCNT(afs_xioctl); -#ifdef AFS_DARWIN_ENV +#if defined(AFS_DARWIN_ENV) || defined(AFS_FBSD_ENV) if ((code=fdgetf(p, uap->fd, &fd))) return code; #else @@ -502,7 +504,7 @@ afs_xioctl () if (code) { osi_FreeSmallSpace(datap); AFS_GUNLOCK(); -#ifdef AFS_DARWIN_ENV +#if defined(AFS_DARWIN_ENV) || defined(AFS_FBSD_ENV) return code; #else #if defined(AFS_SUN5_ENV) @@ -575,7 +577,7 @@ afs_xioctl () #endif code = ioctl(uap, rvp); #else -#if defined(AFS_DARWIN_ENV) +#if defined(AFS_DARWIN_ENV) || defined(AFS_FBSD_ENV) return ioctl(p, uap, retval); #else #ifdef AFS_OSF_ENV @@ -608,7 +610,7 @@ afs_xioctl () #ifdef AFS_LINUX22_ENV return -code; #else -#if !defined(AFS_OSF_ENV) && !defined(AFS_DARWIN_ENV) +#if !defined(AFS_OSF_ENV) && !defined(AFS_DARWIN_ENV) && !defined(AFS_FBSD_ENV) if (!getuerror()) setuerror(code); #if defined(AFS_AIX32_ENV) && !defined(AFS_AIX41_ENV) @@ -619,7 +621,7 @@ afs_xioctl () #endif #endif /* AFS_LINUX22_ENV */ #endif /* AFS_SUN5_ENV */ -#if defined(AFS_OSF_ENV) || defined(AFS_DARWIN_ENV) +#if defined(AFS_OSF_ENV) || defined(AFS_DARWIN_ENV) || defined(AFS_FBSD_ENV) return (code); #endif } @@ -671,7 +673,7 @@ afs_pioctl(p, args, retval) extern struct mount *afs_globalVFS; #else /* AFS_OSF_ENV */ -#ifdef AFS_DARWIN_ENV +#if defined(AFS_DARWIN_ENV) || defined(AFS_FBSD_ENV) afs_pioctl(p, args, retval) struct proc *p; void *args; @@ -706,7 +708,7 @@ afs_syscall_pioctl(path, com, cmarg, follow, rvp, credp) rval_t *rvp; struct AFS_UCRED *credp; #else -#ifdef AFS_DARWIN_ENV +#if defined(AFS_DARWIN_ENV) || defined(AFS_FBSD_ENV) afs_syscall_pioctl(path, com, cmarg, follow, credp) struct AFS_UCRED *credp; #else @@ -737,7 +739,7 @@ afs_syscall_pioctl(path, com, cmarg, follow) #ifndef AFS_SUN5_ENV if (! _VALIDVICEIOCTL(com)) { PIOCTL_FREE_CRED(); -#if defined(AFS_OSF_ENV) || defined(AFS_DARWIN_ENV) +#if defined(AFS_OSF_ENV) || defined(AFS_DARWIN_ENV) || defined(AFS_FBSD_ENV) return EINVAL; #else /* AFS_OSF_ENV */ #if defined(AFS_SGI64_ENV) || defined(AFS_LINUX22_ENV) @@ -752,7 +754,7 @@ afs_syscall_pioctl(path, com, cmarg, follow) code = copyin_afs_ioctl(cmarg, &data); if (code) { PIOCTL_FREE_CRED(); -#if defined(AFS_SUN5_ENV) || defined(AFS_OSF_ENV) || defined(AFS_SGI64_ENV) || defined(AFS_LINUX22_ENV) || defined(AFS_DARWIN_ENV) +#if defined(AFS_SUN5_ENV) || defined(AFS_OSF_ENV) || defined(AFS_SGI64_ENV) || defined(AFS_LINUX22_ENV) || defined(AFS_DARWIN_ENV) || defined(AFS_FBSD_ENV) return (code); #else setuerror(code); @@ -760,7 +762,7 @@ afs_syscall_pioctl(path, com, cmarg, follow) #endif } if ((com & 0xff) == PSetClientContext) { -#if defined(AFS_LINUX22_ENV) || defined(AFS_DARWIN_ENV) +#if defined(AFS_LINUX22_ENV) || defined(AFS_DARWIN_ENV) || defined(AFS_FBSD_ENV) return EINVAL; /* Not handling these yet. */ #else #if defined(AFS_SUN5_ENV) || defined(AFS_AIX41_ENV) || defined(AFS_LINUX22_ENV) @@ -782,14 +784,14 @@ afs_syscall_pioctl(path, com, cmarg, follow) crfree(foreigncreds); } PIOCTL_FREE_CRED(); -#if defined(AFS_SUN5_ENV) || defined(AFS_OSF_ENV) || defined(AFS_SGI64_ENV) || defined(AFS_LINUX22_ENV) || defined(AFS_DARWIN_ENV) +#if defined(AFS_SUN5_ENV) || defined(AFS_OSF_ENV) || defined(AFS_SGI64_ENV) || defined(AFS_LINUX22_ENV) || defined(AFS_DARWIN_ENV) || defined(AFS_FBSD_ENV) return (code); #else return (setuerror(code), code); #endif } } -#if !defined(AFS_LINUX22_ENV) && !defined(AFS_DARWIN_ENV) +#if !defined(AFS_LINUX22_ENV) && !defined(AFS_DARWIN_ENV) && !defined(AFS_FBSD_ENV) if (foreigncreds) { /* * We could have done without temporary setting the u.u_cred below @@ -826,7 +828,7 @@ afs_syscall_pioctl(path, com, cmarg, follow) if ((com & 0xff) == 15) { /* special case prefetch so entire pathname eval occurs in helper process. otherwise, the pioctl call is essentially useless */ -#if defined(AFS_SUN5_ENV) || defined(AFS_AIX41_ENV) || defined(AFS_LINUX22_ENV) || defined(AFS_DARWIN_ENV) +#if defined(AFS_SUN5_ENV) || defined(AFS_AIX41_ENV) || defined(AFS_LINUX22_ENV) || defined(AFS_DARWIN_ENV) || defined(AFS_FBSD_ENV) code = Prefetch(path, &data, follow, foreigncreds ? foreigncreds : credp); #else @@ -840,7 +842,7 @@ afs_syscall_pioctl(path, com, cmarg, follow) #endif /* AFS_SGI64_ENV */ #endif /* AFS_HPUX101_ENV */ #endif -#if !defined(AFS_LINUX22_ENV) && !defined(AFS_DARWIN_ENV) +#if !defined(AFS_LINUX22_ENV) && !defined(AFS_DARWIN_ENV) && !defined(AFS_FBSD_ENV) if (foreigncreds) { #ifdef AFS_AIX41_ENV crset(tmpcred); /* restore original credentials */ @@ -861,7 +863,7 @@ afs_syscall_pioctl(path, com, cmarg, follow) } #endif /* AFS_LINUX22_ENV */ PIOCTL_FREE_CRED(); -#if defined(AFS_SUN5_ENV) || defined(AFS_OSF_ENV) || defined(AFS_SGI64_ENV) || defined(AFS_LINUX22_ENV) || defined(AFS_DARWIN_ENV) +#if defined(AFS_SUN5_ENV) || defined(AFS_OSF_ENV) || defined(AFS_SGI64_ENV) || defined(AFS_LINUX22_ENV) || defined(AFS_DARWIN_ENV) || defined(AFS_FBSD_ENV) return (code); #else return (setuerror(code), code); @@ -883,7 +885,7 @@ afs_syscall_pioctl(path, com, cmarg, follow) #endif /* AFS_AIX41_ENV */ AFS_GLOCK(); if (code) { -#if !defined(AFS_LINUX22_ENV) && !defined(AFS_DARWIN_ENV) +#if !defined(AFS_LINUX22_ENV) && !defined(AFS_DARWIN_ENV) && !defined(AFS_FBSD_ENV) if (foreigncreds) { #ifdef AFS_AIX41_ENV crset(tmpcred); /* restore original credentials */ @@ -904,7 +906,7 @@ afs_syscall_pioctl(path, com, cmarg, follow) } #endif /* AFS_LINUX22_ENV */ PIOCTL_FREE_CRED(); -#if defined(AFS_SUN5_ENV) || defined(AFS_OSF_ENV) || defined(AFS_SGI64_ENV) || defined(AFS_LINUX22_ENV) || defined(AFS_DARWIN_ENV) +#if defined(AFS_SUN5_ENV) || defined(AFS_OSF_ENV) || defined(AFS_SGI64_ENV) || defined(AFS_LINUX22_ENV) || defined(AFS_DARWIN_ENV) || defined(AFS_FBSD_ENV) return (code); #else return(setuerror(code), code); @@ -959,7 +961,7 @@ afs_syscall_pioctl(path, com, cmarg, follow) code = afs_HandlePioctl(vp, com, &data, follow, &credp); } #else -#if defined(AFS_LINUX22_ENV) || defined(AFS_DARWIN_ENV) +#if defined(AFS_LINUX22_ENV) || defined(AFS_DARWIN_ENV) || defined(AFS_FBSD_ENV) code = afs_HandlePioctl(vp, com, &data, follow, &credp); #else code = afs_HandlePioctl(vp, com, &data, follow, &u.u_cred); @@ -969,7 +971,7 @@ afs_syscall_pioctl(path, com, cmarg, follow) #endif /* AFS_AIX41_ENV */ #endif /* AFS_SUN5_ENV */ } else { -#if defined(AFS_SUN5_ENV) || defined(AFS_OSF_ENV) || defined(AFS_SGI64_ENV) || defined(AFS_LINUX22_ENV) || defined(AFS_DARWIN_ENV) +#if defined(AFS_SUN5_ENV) || defined(AFS_OSF_ENV) || defined(AFS_SGI64_ENV) || defined(AFS_LINUX22_ENV) || defined(AFS_DARWIN_ENV) || defined(AFS_FBSD_ENV) code = EINVAL; /* not in /afs */ #else setuerror(EINVAL); @@ -982,7 +984,7 @@ afs_syscall_pioctl(path, com, cmarg, follow) #endif } -#if !defined(AFS_LINUX22_ENV) && !defined(AFS_DARWIN_ENV) +#if !defined(AFS_LINUX22_ENV) && !defined(AFS_DARWIN_ENV) && !defined(AFS_FBSD_ENV) if (foreigncreds) { #ifdef AFS_AIX41_ENV crset(tmpcred); @@ -1010,7 +1012,7 @@ afs_syscall_pioctl(path, com, cmarg, follow) #endif } PIOCTL_FREE_CRED(); -#if defined(AFS_SUN5_ENV) || defined(AFS_OSF_ENV) || defined(AFS_SGI64_ENV) || defined(AFS_LINUX22_ENV) || defined(AFS_DARWIN_ENV) +#if defined(AFS_SUN5_ENV) || defined(AFS_OSF_ENV) || defined(AFS_SGI64_ENV) || defined(AFS_LINUX22_ENV) || defined(AFS_DARWIN_ENV) || defined(AFS_FBSD_ENV) return (code); #else if (!getuerror()) @@ -1421,7 +1423,7 @@ static PGCPAGs(avc, afun, areq, ain, aout, ainSize, aoutSize, acred) afs_PutCell(tcell, READ_LOCK); if (set_parent_pag) { int pag; -#ifdef AFS_DARWIN_ENV +#if defined(AFS_DARWIN_ENV) || defined(AFS_FBSD_ENV) struct proc *p=current_proc(); /* XXX */ uprintf("Process %d (%s) tried to change pags in PSetTokens\n", p->p_pid, p->p_comm); @@ -1664,8 +1666,9 @@ static PNewStatMount(avc, afun, areq, ain, aout, ainSize, aoutSize) register struct vcache *tvc; register struct dcache *tdc; struct VenusFid tfid; - char *bufp = 0; - afs_int32 offset, len, hasatsys=0; + char *bufp; + struct sysname_info sysState; + afs_int32 offset, len; AFS_STATCNT(PNewStatMount); if (!avc) return EINVAL; @@ -1676,8 +1679,11 @@ static PNewStatMount(avc, afun, areq, ain, aout, ainSize, aoutSize) } tdc = afs_GetDCache(avc, 0, areq, &offset, &len, 1); if (!tdc) return ENOENT; - hasatsys = Check_AtSys(avc, ain, &bufp, areq); - code = afs_dir_Lookup(&tdc->f.inode, bufp, &tfid.Fid); + Check_AtSys(avc, ain, &sysState, areq); + do { + code = afs_dir_Lookup(&tdc->f.inode, sysState.name, &tfid.Fid); + } while (code == ENOENT && Next_AtSys(avc, areq, &sysState)); + bufp = sysState.name; if (code) { afs_PutDCache(tdc); goto out; @@ -1717,7 +1723,7 @@ static PNewStatMount(avc, afun, areq, ain, aout, ainSize, aoutSize) ReleaseWriteLock(&tvc->lock); afs_PutVCache(tvc, WRITE_LOCK); out: - if (hasatsys) osi_FreeLargeSpace(bufp); + if (sysState.allocked) osi_FreeLargeSpace(bufp); return code; } @@ -1845,6 +1851,13 @@ static PUnlog(avc, afun, areq, ain, aout, ainSize, aoutSize) afs_ResetUserConns(tu); tu->refCount--; ObtainWriteLock(&afs_xuser,228); +#ifdef UKERNEL + /* set the expire times to 0, causes + * afs_GCUserData to remove this entry + */ + tu->ct.EndTimestamp = 0; + tu->tokenTime = 0; +#endif /* UKERNEL */ } } ReleaseWriteLock(&afs_xuser); @@ -2035,7 +2048,7 @@ struct AFS_UCRED *acred; { register char *tp; register afs_int32 code; -#if defined(AFS_SGI61_ENV) || defined(AFS_SUN57_ENV) || defined(AFS_DARWIN_ENV) +#if defined(AFS_SGI61_ENV) || defined(AFS_SUN57_ENV) || defined(AFS_DARWIN_ENV) || defined(AFS_FBSD_ENV) size_t bufferSize; #else u_int bufferSize; @@ -2277,7 +2290,7 @@ static PNewCell(avc, afun, areq, ain, aout, ainSize, aoutSize, acred) } linkedstate |= CNoSUID; /* setuid is disabled by default for fs newcell */ - code = afs_NewCell(newcell, cellHosts, linkedstate, linkedcell, fsport, vlport); + code = afs_NewCell(newcell, cellHosts, linkedstate, linkedcell, fsport, vlport, (int)0); return code; } @@ -2334,8 +2347,9 @@ static PRemoveMount(avc, afun, areq, ain, aout, ainSize, aoutSize) afs_int32 ainSize; afs_int32 *aoutSize; /* set this */ { register afs_int32 code; - char *bufp = 0; - afs_int32 offset, len, hasatsys = 0; + char *bufp; + struct sysname_info sysState; + afs_int32 offset, len; register struct conn *tc; register struct dcache *tdc; register struct vcache *tvc; @@ -2355,8 +2369,11 @@ static PRemoveMount(avc, afun, areq, ain, aout, ainSize, aoutSize) tdc = afs_GetDCache(avc, 0, areq, &offset, &len, 1); /* test for error below */ if (!tdc) return ENOENT; - hasatsys = Check_AtSys(avc, ain, &bufp, areq); - code = afs_dir_Lookup(&tdc->f.inode, bufp, &tfid.Fid); + Check_AtSys(avc, ain, &sysState, areq); + do { + code = afs_dir_Lookup(&tdc->f.inode, sysState.name, &tfid.Fid); + } while (code == ENOENT && Next_AtSys(avc, areq, &sysState)); + bufp = sysState.name; if (code) { afs_PutDCache(tdc); goto out; @@ -2439,7 +2456,7 @@ static PRemoveMount(avc, afun, areq, ain, aout, ainSize, aoutSize) ReleaseWriteLock(&avc->lock); code = 0; out: - if (hasatsys) osi_FreeLargeSpace(bufp); + if (sysState.allocked) osi_FreeLargeSpace(bufp); return code; } @@ -2541,7 +2558,7 @@ struct AFS_UCRED *acred; #if defined(AFS_SGI_ENV) || defined(AFS_ALPHA_ENV) || defined(AFS_SUN5_ENV) || defined(AFS_HPUX_ENV) VN_HOLD((struct vnode *)tvc); #else -#if defined(AFS_DARWIN_ENV) +#if defined(AFS_DARWIN_ENV) || defined(AFS_FBSD_ENV) osi_vnhold(tvc, 0); #else tvc->vrefCount++; @@ -2669,7 +2686,6 @@ static PGetVnodeXStatus(avc, afun, areq, ain, aout, ainSize, aoutSize) /* (since we don't really believe remote uids anyway) */ /* outname[] shouldn't really be needed- this is left as an excercise */ /* for the reader. */ - static PSetSysName(avc, afun, areq, ain, aout, ainSize, aoutSize, acred) struct vcache *avc; int afun; @@ -2684,15 +2700,17 @@ register struct AFS_UCRED *acred; register struct afs_exporter *exporter; extern struct unixuser *afs_FindUser(); extern char *afs_sysname; + extern char *afs_sysnamelist[]; + extern int afs_sysnamecount; register struct unixuser *au; register afs_int32 pag, error; - int t; + int t, count; AFS_STATCNT(PSetSysName); if (!afs_globalVFS) { /* Afsd is NOT running; disable it */ -#if defined(AFS_SUN5_ENV) || defined(AFS_OSF_ENV) || defined(AFS_SGI64_ENV) || defined(AFS_LINUX22_ENV) || defined(AFS_DARWIN_ENV) +#if defined(AFS_SUN5_ENV) || defined(AFS_OSF_ENV) || defined(AFS_SGI64_ENV) || defined(AFS_LINUX22_ENV) || defined(AFS_DARWIN_ENV) || defined(AFS_FBSD_ENV) return (EINVAL); #else return (setuerror(EINVAL), EINVAL); @@ -2702,9 +2720,24 @@ register struct AFS_UCRED *acred; bcopy(ain, (char *)&setsysname, sizeof(afs_int32)); ain += sizeof(afs_int32); if (setsysname) { - t = strlen(ain); - if (t > MAXSYSNAME) + + /* Check my args */ + if (setsysname < 0 || setsysname > MAXNUMSYSNAMES) return EINVAL; + for(cp = ain,count = 0;count < setsysname;count++) { + /* won't go past end of ain since maxsysname*num < ain length */ + t = strlen(cp); + if (t >= MAXSYSNAME || t <= 0) + return EINVAL; + /* check for names that can shoot us in the foot */ + if (*cp == '.' && (cp[1] == 0 || (cp[1] == '.' && cp[2] == 0))) + return EINVAL; + cp += t+1; + } + /* args ok */ + + /* inname gets first entry in case we're being a translater */ + t = strlen(ain); bcopy(ain, inname, t+1); /* include terminating null */ ain += t + 1; } @@ -2731,23 +2764,50 @@ register struct AFS_UCRED *acred; else foundname = 1; afs_PutUser(au, READ_LOCK); } else { + + /* Not xlating, so local case */ if (!afs_sysname) osi_Panic("PSetSysName: !afs_sysname\n"); - if (!setsysname) { + if (!setsysname) { /* user just wants the info */ strcpy(outname, afs_sysname); - foundname = 1; - } else { - if (!afs_osi_suser(acred)) /* Local guy; only root can change sysname */ + foundname = afs_sysnamecount; + } else { /* Local guy; only root can change sysname */ + if (!afs_osi_suser(acred)) return EACCES; + + /* clear @sys entries from the dnlc, once afs_lookup can + do lookups of @sys entries and thinks it can trust them */ + /* privs ok, store the entry, ... */ strcpy(afs_sysname, inname); + if (setsysname > 1) { /* ... or list */ + cp = ain; + for(count=1; count < setsysname;++count) { + if (!afs_sysnamelist[count]) + osi_Panic("PSetSysName: no afs_sysnamelist entry to write\n"); + t = strlen(cp); + bcopy(cp, afs_sysnamelist[count], t+1); /* include null */ + cp += t+1; + } + } + afs_sysnamecount = setsysname; } } if (!setsysname) { - cp = aout; + cp = aout; /* not changing so report back the count and ... */ bcopy((char *)&foundname, cp, sizeof(afs_int32)); cp += sizeof(afs_int32); if (foundname) { - strcpy(cp, outname); + strcpy(cp, outname); /* ... the entry, ... */ cp += strlen(outname)+1; + for(count=1; count < foundname; ++count) { /* ... or list. */ + /* Note: we don't support @sys lists for exporters */ + if (!afs_sysnamelist[count]) + osi_Panic("PSetSysName: no afs_sysnamelist entry to read\n"); + t = strlen(afs_sysnamelist[count]); + if (t >= MAXSYSNAME) + osi_Panic("PSetSysName: sysname entry garbled\n"); + strcpy(cp, afs_sysnamelist[count]); + cp += t + 1; + } } *aoutSize = cp - aout; } @@ -3491,8 +3551,9 @@ static PFlushMount(avc, afun, areq, ain, aout, ainSize, aoutSize, acred) register struct vcache *tvc; register struct dcache *tdc; struct VenusFid tfid; - char *bufp = 0; - afs_int32 offset, len, hasatsys=0; + char *bufp; + struct sysname_info sysState; + afs_int32 offset, len; AFS_STATCNT(PFlushMount); if (!avc) return EINVAL; @@ -3503,8 +3564,11 @@ static PFlushMount(avc, afun, areq, ain, aout, ainSize, aoutSize, acred) } tdc = afs_GetDCache(avc, 0, areq, &offset, &len, 1); if (!tdc) return ENOENT; - hasatsys = Check_AtSys(avc, ain, &bufp, areq); - code = afs_dir_Lookup(&tdc->f.inode, bufp, &tfid.Fid); + Check_AtSys(avc, ain, &sysState, areq); + do { + code = afs_dir_Lookup(&tdc->f.inode, sysState.name, &tfid.Fid); + } while (code == ENOENT && Next_AtSys(avc, areq, &sysState)); + bufp = sysState.name; if (code) { afs_PutDCache(tdc); goto out; @@ -3549,7 +3613,7 @@ static PFlushMount(avc, afun, areq, ain, aout, ainSize, aoutSize, acred) #endif afs_PutVCache(tvc, WRITE_LOCK); out: - if (hasatsys) osi_FreeLargeSpace(bufp); + if (sysState.allocked) osi_FreeLargeSpace(bufp); return code; } diff --git a/src/afsd/Makefile b/src/afsd/Makefile index 27be8a9d3..11f317a9a 100644 --- a/src/afsd/Makefile +++ b/src/afsd/Makefile @@ -19,7 +19,7 @@ include ../config/Makefile.version INSTALLro = ${INSTALL} -m 644 INSTALLex = ${INSTALL} -m 755 -CFLAGS = -g -I${SRCDIR}include ${XCFLAGS} +CFLAGS = -g -I${TOP_SRCDIR}/config -I${SRCDIR}include ${XCFLAGS} LDFLAGS = -g ${XLDFLAGS} noversion: install diff --git a/src/afsd/afs.conf.linux b/src/afsd/afs.conf.linux index 21f877631..c22c9c3ea 100644 --- a/src/afsd/afs.conf.linux +++ b/src/afsd/afs.conf.linux @@ -25,8 +25,8 @@ OPTIONS=$MEDIUM # useful for debugging as it prints _a lot_ of information. VERBOSE= -# AFSD_OPTIONS are the options passed to afsd. -AFSD_OPTIONS="$OPTIONS $VERBOSE" +# OPTIONS are the options passed to afsd. +OPTIONS="$OPTIONS $VERBOSE" # Sample server preferences function. Set server preferences using this. diff --git a/src/config/Makefile.alpha_dux40 b/src/config/Makefile.alpha_dux40 deleted file mode 100644 index 3e364770e..000000000 --- a/src/config/Makefile.alpha_dux40 +++ /dev/null @@ -1,28 +0,0 @@ -# Copyright 2000, International Business Machines Corporation and others. -# All Rights Reserved. -# -# This software has been released under the terms of the IBM Public -# License. For details, see the LICENSE file in the top-level source -# directory or online at http://www.openafs.org/dl/license10.html - -AFS_OSTYPE = DUX - -MT_CC=cc -XCFLAGS= -D_NO_PROTO -DOSF -MT_CFLAGS=-D_REENTRANT=1 -pthread -DAFS_PTHREAD_ENV ${XCFLAGS} -SHLIB_SUFFIX=so -SHLIB_CFLAGS= -XLIBS= -MTLIBS=-pthread -lpthread -lmach -lexc -lc -NON_SHARED=-non_shared -TXLIBS= -lcurses -LWP_OPTMZ=-O2 -OPTMZ=-O2 -DBG=-g3 -CSTATIC=-non_shared -RANLIB=/bin/true -WASHTOOL=${DESTDIR}bin/washtool -INSTALL=${DESTDIR}bin/install - -#this is for the vol package -FS_CONV_OSF40D= $(DESTDIR)root.server/usr/afs/bin/fs_conv_dux40D diff --git a/src/config/Makefile.alpha_dux50 b/src/config/Makefile.alpha_dux50 deleted file mode 100644 index 39abb115e..000000000 --- a/src/config/Makefile.alpha_dux50 +++ /dev/null @@ -1,29 +0,0 @@ -# Copyright 2000, International Business Machines Corporation and others. -# All Rights Reserved. -# -# This software has been released under the terms of the IBM Public -# License. For details, see the LICENSE file in the top-level source -# directory or online at http://www.openafs.org/dl/license10.html - -AFS_OSTYPE = DUX - -MT_CC=cc -XCFLAGS= -D_NO_PROTO -DOSF -MT_CFLAGS=-D_REENTRANT=1 -pthread -DAFS_PTHREAD_ENV ${XCFLAGS} -SHLIB_SUFFIX=so -SHLIB_CFLAGS= -XLIBS= -MTLIBS=-pthread -lpthread -lmach -lexc -lc -NON_SHARED=-non_shared -TXLIBS= -lcurses -LWP_OPTMZ=-O2 -OPTMZ=-O2 -DBG=-g3 -CP=cp -CSTATIC=-non_shared -RANLIB=/bin/true -WASHTOOL=${DESTDIR}bin/washtool -INSTALL=${DESTDIR}bin/install - -#this is for the vol package -FS_CONV_OSF40D= $(DESTDIR)root.server/usr/afs/bin/fs_conv_dux40D diff --git a/src/config/Makefile.alpha_linux_2216_22 b/src/config/Makefile.alpha_linux_2216_22 deleted file mode 100644 index 7443d55cc..000000000 --- a/src/config/Makefile.alpha_linux_2216_22 +++ /dev/null @@ -1,48 +0,0 @@ -# Makefile for Linux 2.2.16 kernel on Alpha with glibc 2.2 -# Keep macros within each section in sorted order for clean diff displays. -# -# AFS_OSTYPE used to indicate suffixes and os specific subdirectories. -AFS_OSTYPE = LINUX -# Base directory for linux kernel source. Actually a prefix which is complete -# when LINUX_VERS is appended to it. -LINUX_SRCDIR = /usr/src/linux- -# Default list of Linux kernels to build. Build will run only if all -# can be built. To build a different set, specify LINUX_VERS to make. -LINUX_VERS = 2.2.16 - -# -# compilation and link editor flags -DBG=-g -OPTMZ=-O2 -PAM_CFLAGS = -O2 -Dlinux -DLINUX_PAM -fPIC -# Put -O2 here to _ensure_ all Makefiles pick it up. -XCFLAGS= -O2 -MT_CFLAGS=-DAFS_PTHREAD_ENV -pthread -D_REENTRANT ${XCFLAGS} -XLDFLAGS= -SHARE_LDFLAGS = -shared -Xlinker -x -SHLIB_SUFFIX=so -SHLIB_CFLAGS= -# -# libraries -MTLIBS=-lpthread -TXLIBS= /usr/lib/libncurses.so -XLIBS= -# -# programs -AR=ar -AS=as -CP=cp -INSTALL=${SRCDIR}bin/install -LD=ld -MT_CC=cc -MV=mv -RANLIB=ranlib -RM=rm -WASHTOOL=${SRCDIR}bin/washtool -# -# Other OS specific requirements -# -YACC = bison -y -LEX = flex -l -# Used in des library. -CRYPT_OBJ = crypt.o diff --git a/src/config/Makefile.hp_ux102 b/src/config/Makefile.hp_ux102 deleted file mode 100644 index 583708719..000000000 --- a/src/config/Makefile.hp_ux102 +++ /dev/null @@ -1,37 +0,0 @@ -# Copyright 2000, International Business Machines Corporation and others. -# All Rights Reserved. -# -# This software has been released under the terms of the IBM Public -# License. For details, see the LICENSE file in the top-level source -# directory or online at http://www.openafs.org/dl/license10.html - -AFS_OSTYPE = HPUX -CC=/opt/ansic/bin/cc -Ae -MT_CC=/opt/ansic/bin/cc -Ae -XCFLAGS0=-ldld -lc -Wp,-H200000 -Wl,-a,archive -DAUTH_DBM_LOG +z -Wl,+k -D_LARGEFILE64_SOURCE -XCFLAGS=${XCFLAGS0} +DA1.0 -XCFLAGS64=${XCFLAGS0} +DA2.0W -MT_CFLAGS=-D_POSIX_C_SOURCE=199506L -DAFS_PTHREAD_ENV ${XCFLAGS} -XLIBS= -XLIBELFA= -TXLIBS=/usr/lib/libHcurses.a -MTLIBS=-L/opt/dce/lib -ldce -SHLIB_SUFFIX=sl -LWP_OPTMZ=-O -OPTMZ=-O -DBG=-g -RANLIB=ranlib -WASHTOOL=${DESTDIR}bin/washtool -INSTALL=${DESTDIR}bin/install -RM=/bin/rm -CP=/bin/cp -AR=/bin/ar -AS=/usr/ccs/bin/as -MV=/bin/mv -LD=/bin/ld -LEX=/opt/langtools/bin/lex -DBM=/lib/libndbm.a -PAM_CFLAGS=+DA1.0 +z -Wl,+k -SHARE_LDFLAGS=-b -Bsymbolic -PAMLIBS=/usr/lib/libpam.1 -YACC=/opt/langtools/bin/yacc diff --git a/src/config/Makefile.hp_ux110 b/src/config/Makefile.hp_ux110 deleted file mode 100644 index caab152fa..000000000 --- a/src/config/Makefile.hp_ux110 +++ /dev/null @@ -1,37 +0,0 @@ -# Copyright 2000, International Business Machines Corporation and others. -# All Rights Reserved. -# -# This software has been released under the terms of the IBM Public -# License. For details, see the LICENSE file in the top-level source -# directory or online at http://www.openafs.org/dl/license10.html - -AFS_OSTYPE = HPUX -CC=/opt/ansic/bin/cc -MT_CC=/opt/ansic/bin/cc -XCFLAGS0=-ldld -lc -Wp,-H200000 -Wl,-a,archive -DAUTH_DBM_LOG +z -Wl,+k -D_LARGEFILE64_SOURCE -XCFLAGS=${XCFLAGS0} +DA1.0 -XCFLAGS64=${XCFLAGS0} +DA2.0W -MT_CFLAGS=-D_POSIX_C_SOURCE=199506L -DAFS_PTHREAD_ENV ${XCFLAGS} -XLIBS=-lnsl -XLIBELFA=-lelf -TXLIBS=/usr/lib/libHcurses.a -MTLIBS=-lpthread -SHLIB_SUFFIX=sl -LWP_OPTMZ=-O -OPTMZ=-O -DBG=-g -RANLIB=ranlib -WASHTOOL=${DESTDIR}bin/washtool -INSTALL=${DESTDIR}bin/install -RM=/bin/rm -CP=/bin/cp -AR=/bin/ar -AS=/usr/ccs/bin/as -MV=/bin/mv -LD=/bin/ld -LEX=/opt/langtools/bin/lex -DBM=/lib/libndbm.a -PAM_CFLAGS=+DA1.0 +z -Wl,+k -SHARE_LDFLAGS=-b -Bsymbolic -PAMLIBS=/usr/lib/libpam.1 -YACC=/opt/langtools/bin/yacc diff --git a/src/config/Makefile.i386_fbsd_42 b/src/config/Makefile.i386_fbsd_42 deleted file mode 100644 index 942d7c7a6..000000000 --- a/src/config/Makefile.i386_fbsd_42 +++ /dev/null @@ -1,52 +0,0 @@ -# Copyright 1998 Transarc Corporation -# -# Keep macros within each section in sorted order for clean diff displays. -# -# AFS_OSTYPE used to indicate suffixes and os specific subdirectories. -AFS_OSTYPE = FBSD -# Pointers to destination and source directories -DESTDIR=DEST/ -SRCDIR=DEST/ -# Base directory for linux kernel source. Actually a prefix which is complete -# when LINUX_VERS is appended to it. -# LINUX_SRCDIR = /usr/src/linux- -# Default list of Linux kernels to build. Build will run only if all -# can be built. To build a different set, specify LINUX_VERS to make. -# LINUX_VERS = 2.2.5-15 2.2.10 2.2.12 2.2.12-20 2.2.13 2.2.14 - -# -# compilation and link editor flags -DBG=-g -OPTMZ=-O2 -PAM_CFLAGS = -O2 -pipe -fPIC -# Put -O2 here to _ensure_ all Makefiles pick it up. -XCFLAGS= -O2 -pipe -MT_CFLAGS=-DAFS_PTHREAD_ENV -pthread -D_REENTRANT ${XCFLAGS} -XLDFLAGS= -SHARE_LDFLAGS = -shared -Xlinker -x -SHLIB_SUFFIX=so -SHLIB_CFLAGS= -# -# libraries -MTLIBS=-pthread -TXLIBS= /usr/lib/libncurses.so -XLIBS=-lcompat -# -# programs -AR=ar -AS=as -CP=cp -INSTALL=${SRCDIR}bin/install -LD=ld -MT_CC=cc -MV=mv -RANLIB=ranlib -RM=rm -WASHTOOL=${SRCDIR}bin/washtool -# -# Other OS specific requirements -# -YACC = bison -y -LEX = flex -l -# Used in des library. -CRYPT_OBJ = crypt.o diff --git a/src/config/Makefile.i386_linux22 b/src/config/Makefile.i386_linux22 deleted file mode 100644 index d22d5110c..000000000 --- a/src/config/Makefile.i386_linux22 +++ /dev/null @@ -1,55 +0,0 @@ -# Copyright 2000, International Business Machines Corporation and others. -# All Rights Reserved. -# -# This software has been released under the terms of the IBM Public -# License. For details, see the LICENSE file in the top-level source -# directory or online at http://www.openafs.org/dl/license10.html - -# Keep macros within each section in sorted order for clean diff displays. -# -# AFS_OSTYPE used to indicate suffixes and os specific subdirectories. -AFS_OSTYPE = LINUX - -# Base directory for linux kernel source. Actually a prefix which is complete -# when LINUX_VERS is appended to it. -LINUX_SRCDIR = $(KSRC) -# Default list of Linux kernels to build. Build will run only if all -# can be built. To build a different set, specify LINUX_VERS to make. -LINUX_VERS = $(KVERS) - -# -# compilation and link editor flags -DBG=-g -OPTMZ=-O2 -PAM_CFLAGS = -O2 -Dlinux -DLINUX_PAM -fPIC -# Put -O2 here to _ensure_ all Makefiles pick it up. -XCFLAGS= -O2 -MT_CFLAGS=-DAFS_PTHREAD_ENV -pthread -D_REENTRANT ${XCFLAGS} -XLDFLAGS= -SHARE_LDFLAGS = -shared -Xlinker -x -SHLIB_SUFFIX=so -SHLIB_CFLAGS= -# -# libraries -MTLIBS=-lpthread -TXLIBS= /usr/lib/libncurses.so -XLIBS= -# -# programs -AR=ar -AS=as -CP=cp -LD=ld -MT_CC=cc -MV=mv -RANLIB=ranlib -RM=rm -WASHTOOL=${DESTDIR}bin/washtool -INSTALL=${DESTDIR}bin/install -# -# Other OS specific requirements -# -YACC = bison -y -LEX = flex -l -# Used in des library. -CRYPT_OBJ = crypt.o diff --git a/src/config/Makefile.i386_linux24 b/src/config/Makefile.i386_linux24 deleted file mode 100644 index 1b6939541..000000000 --- a/src/config/Makefile.i386_linux24 +++ /dev/null @@ -1,46 +0,0 @@ -# AFS_OSTYPE used to indicate suffixes and os specific subdirectories. -AFS_OSTYPE = LINUX - -# Base directory for linux kernel source. Actually a prefix which is complete -# when LINUX_VERS is appended to it. -LINUX_SRCDIR = $(KSRC) -# Default list of Linux kernels to build. Build will run only if all -# can be built. To build a different set, specify LINUX_VERS to make. -LINUX_VERS = $(KVERS) - -# -# compilation and link editor flags -DBG=-g -OPTMZ=-O2 -PAM_CFLAGS = -O2 -Dlinux -DLINUX_PAM -fPIC -# Put -O2 here to _ensure_ all Makefiles pick it up. -XCFLAGS= -O2 -MT_CFLAGS=-DAFS_PTHREAD_ENV -pthread -D_REENTRANT ${XCFLAGS} -XLDFLAGS= -SHARE_LDFLAGS = -shared -Xlinker -x -SHLIB_SUFFIX=so -SHLIB_CFLAGS= -# -# libraries -MTLIBS=-lpthread -TXLIBS= /usr/lib/libncurses.so -XLIBS= -# -# programs -AR=ar -AS=as -CP=cp -LD=ld -MT_CC=cc -MV=mv -RANLIB=ranlib -RM=rm -WASHTOOL=${DESTDIR}bin/washtool -INSTALL=${DESTDIR}bin/install -# -# Other OS specific requirements -# -YACC = bison -y -LEX = flex -l -# Used in des library. -CRYPT_OBJ = crypt.o diff --git a/src/config/Makefile.ppc_darwin_12 b/src/config/Makefile.ppc_darwin_12 deleted file mode 100644 index bdf3d34c0..000000000 --- a/src/config/Makefile.ppc_darwin_12 +++ /dev/null @@ -1,46 +0,0 @@ -# Keep macros within each section in sorted order for clean diff displays. -# -# AFS_OSTYPE used to indicate suffixes and os specific subdirectories. -AFS_OSTYPE = DARWIN -# -# Pointers to destination and source directories -DESTDIR=DEST/ -DESTDIR=DEST/ -# -# compilation and link editor flags -XCFLAGS=-traditional-cpp -#MT_CFLAGS=-D_REENTRANT -DAFS_PTHREAD_ENV ${XCFLAGS} -#MT_CC=cc -KROOT= -KINCLUDES=-I$(KROOT)/System/Library/Frameworks/Kernel.framework/Headers -#SHARE_LDFLAGS = -LWP_OPTMZ=-g -OPTMZ=-g -DBG=-g -REGEX_OBJ=regex.o - - -# -# libraries -#XLIBS= -TXLIBS= -#MTLIBS= -#XLIBELFA= -#XLIBKVM= -# -SHLIB_SUFFIX= -SHLIB_CFLAGS= -# -# programs -AR=ar -AS=as -CC=cc -CP=cp -INSTALL=${DESTDIR}bin/pinstall -LEX=lex -l -LD= ld -LORDER = lorder -MV=mv -RANLIB=ranlib -RM=rm -STRIP= strip diff --git a/src/config/Makefile.ppc_darwin_13 b/src/config/Makefile.ppc_darwin_13 deleted file mode 100644 index bdf3d34c0..000000000 --- a/src/config/Makefile.ppc_darwin_13 +++ /dev/null @@ -1,46 +0,0 @@ -# Keep macros within each section in sorted order for clean diff displays. -# -# AFS_OSTYPE used to indicate suffixes and os specific subdirectories. -AFS_OSTYPE = DARWIN -# -# Pointers to destination and source directories -DESTDIR=DEST/ -DESTDIR=DEST/ -# -# compilation and link editor flags -XCFLAGS=-traditional-cpp -#MT_CFLAGS=-D_REENTRANT -DAFS_PTHREAD_ENV ${XCFLAGS} -#MT_CC=cc -KROOT= -KINCLUDES=-I$(KROOT)/System/Library/Frameworks/Kernel.framework/Headers -#SHARE_LDFLAGS = -LWP_OPTMZ=-g -OPTMZ=-g -DBG=-g -REGEX_OBJ=regex.o - - -# -# libraries -#XLIBS= -TXLIBS= -#MTLIBS= -#XLIBELFA= -#XLIBKVM= -# -SHLIB_SUFFIX= -SHLIB_CFLAGS= -# -# programs -AR=ar -AS=as -CC=cc -CP=cp -INSTALL=${DESTDIR}bin/pinstall -LEX=lex -l -LD= ld -LORDER = lorder -MV=mv -RANLIB=ranlib -RM=rm -STRIP= strip diff --git a/src/config/Makefile.ppc_linux24 b/src/config/Makefile.ppc_linux24 deleted file mode 100644 index 1b6939541..000000000 --- a/src/config/Makefile.ppc_linux24 +++ /dev/null @@ -1,46 +0,0 @@ -# AFS_OSTYPE used to indicate suffixes and os specific subdirectories. -AFS_OSTYPE = LINUX - -# Base directory for linux kernel source. Actually a prefix which is complete -# when LINUX_VERS is appended to it. -LINUX_SRCDIR = $(KSRC) -# Default list of Linux kernels to build. Build will run only if all -# can be built. To build a different set, specify LINUX_VERS to make. -LINUX_VERS = $(KVERS) - -# -# compilation and link editor flags -DBG=-g -OPTMZ=-O2 -PAM_CFLAGS = -O2 -Dlinux -DLINUX_PAM -fPIC -# Put -O2 here to _ensure_ all Makefiles pick it up. -XCFLAGS= -O2 -MT_CFLAGS=-DAFS_PTHREAD_ENV -pthread -D_REENTRANT ${XCFLAGS} -XLDFLAGS= -SHARE_LDFLAGS = -shared -Xlinker -x -SHLIB_SUFFIX=so -SHLIB_CFLAGS= -# -# libraries -MTLIBS=-lpthread -TXLIBS= /usr/lib/libncurses.so -XLIBS= -# -# programs -AR=ar -AS=as -CP=cp -LD=ld -MT_CC=cc -MV=mv -RANLIB=ranlib -RM=rm -WASHTOOL=${DESTDIR}bin/washtool -INSTALL=${DESTDIR}bin/install -# -# Other OS specific requirements -# -YACC = bison -y -LEX = flex -l -# Used in des library. -CRYPT_OBJ = crypt.o diff --git a/src/config/Makefile.rs_aix42 b/src/config/Makefile.rs_aix42 deleted file mode 100644 index cb0c2e33c..000000000 --- a/src/config/Makefile.rs_aix42 +++ /dev/null @@ -1,42 +0,0 @@ -# Copyright 2000, International Business Machines Corporation and others. -# All Rights Reserved. -# -# This software has been released under the terms of the IBM Public -# License. For details, see the LICENSE file in the top-level source -# directory or online at http://www.openafs.org/dl/license10.html - -# Keep macros within each section in sorted order for clean diff displays. -# -# AFS_OSTYPE used to indicate suffixes and os specific subdirectories. -AFS_OSTYPE = AIX - -# compilation and link editor flags -OPTMZ=-O -LWP_OPTMZ=-O -DBG= -XCFLAGS=-K -D_NO_PROTO -D_NONSTD_TYPES -D_MBI=void -MT_CFLAGS=-DAFS_PTHREAD_ENV ${XCFLAGS} -SHLIB_SUFFIX=o -SHLIB_CFLAGS= -# -# libraries -TXLIBS=-lcurses -MTLIBS=-lpthreads -XLIBS=-ldl -# -# programs -MT_CC=xlc_r -AR=ar -AS=as -CP=cp -LD=ld -LEX=lex -MV=mv -RANLIB=ranlib -RM=rm -WASHTOOL=${DESTDIR}bin/washtool -INSTALL=${DESTDIR}bin/install -# -# This is the XBSA make flag and pathname to XBSA header files (xbsa.h) -XBSA_FLAGS=-Dxbsa -XBSADIR=/usr/tivoli/tsm/client/api/bin/xopen diff --git a/src/config/Makefile.s390_linux22 b/src/config/Makefile.s390_linux22 deleted file mode 100644 index 9104a6efc..000000000 --- a/src/config/Makefile.s390_linux22 +++ /dev/null @@ -1,51 +0,0 @@ -# Copyright 1998 Transarc Corporation -# -# Keep macros within each section in sorted order for clean diff displays. -# -# AFS_OSTYPE used to indicate suffixes and os specific subdirectories. -AFS_OSTYPE = LINUX - -# Base directory for linux kernel source. Actually a prefix which is complete -# when LINUX_VERS is appended to it. -LINUX_SRCDIR = /usr/src/linux- -# Default list of Linux kernels to build. Build will run only if all -# can be built. To build a different set, specify LINUX_VERS to make. -LINUX_VERS = 2.2.16 - -# -# compilation and link editor flags -DBG=-g -OPTMZ=-O -#PAM_CFLAGS = -O2 -Dlinux -DLINUX_PAM -fPIC -PAM_CFLAGS= -O -Dlinux -DLINUX_PAM -fPIC -# Put -O2 here to _ensure_ all Makefiles pick it up. -XCFLAGS= -O -g -MT_CFLAGS=-DAFS_PTHREAD_ENV -pthread -D_REENTRANT ${XCFLAGS} -XLDFLAGS= -SHARE_LDFLAGS = -shared -Xlinker -x -SHLIB_SUFFIX=so -SHLIB_CFLAGS= -# -# libraries -MTLIBS=-lpthread -TXLIBS= /usr/lib/libncurses.so -XLIBS= -# -# programs -AR=ar -AS=as -CP=cp -LD=gcc -MT_CC=gcc -MV=mv -RANLIB=ranlib -RM=rm -WASHTOOL=${DESTDIR}bin/washtool -INSTALL=${DESTDIR}bin/install -# -# Other OS specific requirements -# -YACC = bison -y -LEX = flex -l -# Used in des library. -CRYPT_OBJ = crypt.o diff --git a/src/config/Makefile.sgi_62 b/src/config/Makefile.sgi_62 deleted file mode 100644 index 15185cac7..000000000 --- a/src/config/Makefile.sgi_62 +++ /dev/null @@ -1,45 +0,0 @@ -# Copyright 2000, International Business Machines Corporation and others. -# All Rights Reserved. -# -# This software has been released under the terms of the IBM Public -# License. For details, see the LICENSE file in the top-level source -# directory or online at http://www.openafs.org/dl/license10.html - -# Keep macros within each section in sorted order for clean diff displays. -# -# AFS_OSTYPE used to indicate suffixes and os specific subdirectories. -AFS_OSTYPE = IRIX - -# compilation and link editor flags -DBG=-g -FSINCLUDES=-I/usr/include/sys/fs -I../sgiefs -LWP_OPTMZ=-O -OPTMZ=-O -XCFLAGS=-o32 -# The -mips3 for XCFLAGS64 allows code to run on R4000 as well as R8000+. -XCFLAGS64 =-64 -mips3 -MT_CFLAGS=-D_SGI_MP_SOURCE -DAFS_PTHREAD_ENV ${XCFLAGS} -XLDFLAGS=-o32 -XLDFLAGS64=-64 -# -# libraries -TXLIBS= -lcurses -XLIBS= -MTLIBS=-lpthread -SHLIB_SUFFIX=so -# -# programs -AR=ar -AS=as -CP=cp -MT_CC=cc -LD=ld -LEX=lex -MV=mv -RANLIB=/bin/true -RM=rm -WASHTOOL=${DESTDIR}bin/washtool -INSTALL=${DESTDIR}bin/install -# -# This is for the vol package -XFS_SIZE_CHECK = $(DESTDIR)root.server/usr/afs/bin/xfs_size_check diff --git a/src/config/Makefile.sgi_63 b/src/config/Makefile.sgi_63 deleted file mode 100644 index 11f274664..000000000 --- a/src/config/Makefile.sgi_63 +++ /dev/null @@ -1,42 +0,0 @@ -# Copyright 2000, International Business Machines Corporation and others. -# All Rights Reserved. -# -# This software has been released under the terms of the IBM Public -# License. For details, see the LICENSE file in the top-level source -# directory or online at http://www.openafs.org/dl/license10.html - -# Keep macros within each section in sorted order for clean diff displays. -# -# AFS_OSTYPE used to indicate suffixes and os specific subdirectories. -AFS_OSTYPE = IRIX - -# compilation and link editor flags -DBG=-g -FSINCLUDES=-I/usr/include/sys/fs -I../sgiefs -LWP_OPTMZ=-O -OPTMZ=-O -XCFLAGS=-D_OLD_TERMIOS -D_BSD_COMPAT -o32 -# The -mips3 for XCFLAGS64 allows code to run on R4000 as well as R8000+. -XCFLAGS64 =-D_BSD_COMPAT -64 -mips3 -MT_CFLAGS=-D_SGI_MP_SOURCE -DAFS_PTHREAD_ENV ${XCFLAGS} -XLDFLAGS=-o32 -XLDFLAGS64=-64 -# -# libraries -TXLIBS= -lcurses -XLIBS= -MTLIBS=-lpthread -SHLIB_SUFFIX=so -# -# programs -AR=ar -AS=as -CP=cp -MT_CC=cc -LD=ld -LEX=lex -MV=mv -RANLIB=/bin/true -RM=rm -WASHTOOL=${DESTDIR}bin/washtool -INSTALL=${DESTDIR}bin/install diff --git a/src/config/Makefile.sgi_64 b/src/config/Makefile.sgi_64 deleted file mode 100644 index 421d80171..000000000 --- a/src/config/Makefile.sgi_64 +++ /dev/null @@ -1,46 +0,0 @@ -# Copyright 2000, International Business Machines Corporation and others. -# All Rights Reserved. -# -# This software has been released under the terms of the IBM Public -# License. For details, see the LICENSE file in the top-level source -# directory or online at http://www.openafs.org/dl/license10.html - -# Keep macros within each section in sorted order for clean diff displays. -# -# AFS_OSTYPE used to indicate suffixes and os specific subdirectories. -AFS_OSTYPE = IRIX - -# compilation and link editor flags -DBG=-g -FSINCLUDES=-I/usr/include/sys/fs -I../sgiefs -LWP_OPTMZ=-O -OPTMZ=-O -XCFLAGS=-D_OLD_TERMIOS -D_BSD_COMPAT -n32 -woff 1009,1110,1116,1164,1171,1177,1183,1185,1204,1233,1515,1516,1548,1169,1174,1177,1196,1498,1506,1552 -# The -mips3 for XCFLAGS64 allows code to run on R4000 as well as R8000+. -XCFLAGS64 =-D_BSD_COMPAT -64 -mips3 -XLDFLAGS=-n32 -XLDFLAGS64=-64 -MT_CFLAGS=-D_SGI_MP_SOURCE -DAFS_PTHREAD_ENV ${XCFLAGS} -# -# libraries -TXLIBS= -lcurses -XLIBS= -MTLIBS=-lpthread -SHLIB_SUFFIX=so -SHLIB_CFLAGS= -# -# programs -AR=ar -AS=as -CP=cp -MT_CC=cc -LD=ld -LEX=lex -MV=mv -RANLIB=/bin/true -RM=rm -WASHTOOL=${DESTDIR}bin/washtool -INSTALL=${DESTDIR}bin/install -# -# This is for the vol package -XFS_SIZE_CHECK = $(DESTDIR)root.server/usr/afs/bin/xfs_size_check diff --git a/src/config/Makefile.sgi_65 b/src/config/Makefile.sgi_65 deleted file mode 100644 index 604028ec9..000000000 --- a/src/config/Makefile.sgi_65 +++ /dev/null @@ -1,46 +0,0 @@ -# Copyright 2000, International Business Machines Corporation and others. -# All Rights Reserved. -# -# This software has been released under the terms of the IBM Public -# License. For details, see the LICENSE file in the top-level source -# directory or online at http://www.openafs.org/dl/license10.html - -# Keep macros within each section in sorted order for clean diff displays. -# -# AFS_OSTYPE used to indicate suffixes and os specific subdirectories. -AFS_OSTYPE = IRIX -# Pointers to destination and source directories - -# compilation and link editor flags -DBG=-g -FSINCLUDES=-I/usr/include/sys/fs -I../sgiefs -OPTMZ=-O -XCFLAGS=-n32 -mips3 -woff 1009,1110,1116,1164,1171,1177,1183,1185,1204,1233,1515,1516,1548,1169,1174,1177,1196,1498,1506,1552 -# The -mips3 for XCFLAGS64 allows code to run on R4000 as well as R8000+. -XCFLAGS64 =-64 -mips3 -XLDFLAGS=-n32 -mips3 -XLDFLAGS64=-64 -mips3 -MT_CFLAGS=-D_SGI_MP_SOURCE -DAFS_PTHREAD_ENV ${XCFLAGS} -# -# libraries -TXLIBS= -lcurses -XLIBS= -MTLIBS=-lpthread -SHLIB_SUFFIX=so -SHLIB_CFLAGS= -# -# programs -AR=ar -AS=as -CP=cp -MT_CC=/usr/bin/cc -LD=/usr/bin/ld -LEX=lex -MV=mv -RANLIB=/bin/true -RM=rm -WASHTOOL=${DESTDIR}bin/washtool -INSTALL=${DESTDIR}bin/install -# -# This is for the vol package -XFS_SIZE_CHECK = $(DESTDIR)root.server/usr/afs/bin/xfs_size_check diff --git a/src/config/Makefile.sparc64_linux22 b/src/config/Makefile.sparc64_linux22 deleted file mode 100644 index fe13b0596..000000000 --- a/src/config/Makefile.sparc64_linux22 +++ /dev/null @@ -1,50 +0,0 @@ -# Copyright 1998 Transarc Corporation -# -# Keep macros within each section in sorted order for clean diff displays. -# -# AFS_OSTYPE used to indicate suffixes and os specific subdirectories. -AFS_OSTYPE = LINUX - -# Base directory for linux kernel source. Actually a prefix which is complete -# when LINUX_VERS is appended to it. -LINUX_SRCDIR = /usr/src/linux- -# Default list of Linux kernels to build. Build will run only if all -# can be built. To build a different set, specify LINUX_VERS to make. -LINUX_VERS = 2.2.14 - -# -# compilation and link editor flags -DBG=-g -OPTMZ=-O2 -PAM_CFLAGS = -O2 -Dlinux -DLINUX_PAM -fPIC -# Put -O2 here to _ensure_ all Makefiles pick it up. -XCFLAGS= -O2 -MT_CFLAGS=-DAFS_PTHREAD_ENV -pthread -D_REENTRANT ${XCFLAGS} -XLDFLAGS= -SHARE_LDFLAGS = -shared -Xlinker -x -SHLIB_SUFFIX=so -SHLIB_CFLAGS= -# -# libraries -MTLIBS=-lpthread -TXLIBS= /usr/lib/libncurses.so -XLIBS= -# -# programs -AR=ar -AS=as -CP=cp -LD=ld -MT_CC=cc -MV=mv -RANLIB=ranlib -RM=rm -WASHTOOL=${DESTDIR}bin/washtool -INSTALL=${DESTDIR}bin/install -# -# Other OS specific requirements -# -YACC = bison -y -LEX = flex -l -# Used in des library. -CRYPT_OBJ = crypt.o diff --git a/src/config/Makefile.sparc_linux22 b/src/config/Makefile.sparc_linux22 deleted file mode 100644 index 6c340ad82..000000000 --- a/src/config/Makefile.sparc_linux22 +++ /dev/null @@ -1,50 +0,0 @@ -# Copyright 1998 Transarc Corporation -# -# Keep macros within each section in sorted order for clean diff displays. -# -# AFS_OSTYPE used to indicate suffixes and os specific subdirectories. -AFS_OSTYPE = LINUX - -# Base directory for linux kernel source. Actually a prefix which is complete -# when LINUX_VERS is appended to it. -LINUX_SRCDIR = $(KSRC) -# Default list of Linux kernels to build. Build will run only if all -# can be built. To build a different set, specify LINUX_VERS to make. -LINUX_VERS = $(KVERS) - -# -# compilation and link editor flags -DBG=-g -OPTMZ=-O2 -PAM_CFLAGS = -O2 -Dlinux -DLINUX_PAM -fPIC -# Put -O2 here to _ensure_ all Makefiles pick it up. -XCFLAGS= -O2 -MT_CFLAGS=-DAFS_PTHREAD_ENV -pthread -D_REENTRANT ${XCFLAGS} -XLDFLAGS= -SHARE_LDFLAGS = -shared -Xlinker -x -SHLIB_SUFFIX=so -SHLIB_CFLAGS= -# -# libraries -MTLIBS=-lpthread -TXLIBS= /usr/lib/libncurses.so -XLIBS= -# -# programs -AR=ar -AS=as -CP=cp -LD=ld -MT_CC=cc -MV=mv -RANLIB=ranlib -RM=rm -WASHTOOL=${DESTDIR}bin/washtool -INSTALL=${DESTDIR}bin/install -# -# Other OS specific requirements -# -YACC = bison -y -LEX = flex -l -# Used in des library. -CRYPT_OBJ = crypt.o diff --git a/src/config/Makefile.sun4x_55 b/src/config/Makefile.sun4x_55 deleted file mode 100644 index b69193d54..000000000 --- a/src/config/Makefile.sun4x_55 +++ /dev/null @@ -1,46 +0,0 @@ -# Copyright 2000, International Business Machines Corporation and others. -# All Rights Reserved. -# -# This software has been released under the terms of the IBM Public -# License. For details, see the LICENSE file in the top-level source -# directory or online at http://www.openafs.org/dl/license10.html - -# Keep macros within each section in sorted order for clean diff displays. -# -# AFS_OSTYPE used to indicate suffixes and os specific subdirectories. -AFS_OSTYPE = SOLARIS - -# compilation and link editor flags -XCFLAGS=-dy -Bdynamic -MT_CFLAGS=-mt -DAFS_PTHREAD_ENV ${XCFLAGS} -LWP_OPTMZ=-g -OPTMZ=-O -DBG=-g -# -# libraries -XLIBS=-lsocket -lnsl -lintl -ldl -TXLIBS=-lcurses -MTLIBS=-lpthread -lsocket -XLIBELFA=-lelf -XLIBKVM=-lkvm -SHLIB_SUFFIX=so -SHLIB_CFLAGS=-KPIC -# -# programs -AR=/usr/ccs/bin/ar -AS=as -CC=/opt/SUNWspro/bin/cc -MT_CC=/opt/SUNWspro/bin/cc -CP=/bin/cp -LEX=lex -LD= /usr/ccs/bin/ld -LORDER = /usr/ccs/bin/lorder -MV=mv -RANLIB=/bin/true -RM=rm -STRIP= /usr/ccs/bin/strip -WASHTOOL=${DESTDIR}bin/washtool -INSTALL=${DESTDIR}bin/install -# -# this is for the vol package -FS_CONV_SOL26= $(DESTDIR)root.server/usr/afs/bin/fs_conv_sol26 diff --git a/src/config/Makefile.sun4x_56 b/src/config/Makefile.sun4x_56 deleted file mode 100644 index 74e144e4b..000000000 --- a/src/config/Makefile.sun4x_56 +++ /dev/null @@ -1,54 +0,0 @@ -# Copyright 2000, International Business Machines Corporation and others. -# All Rights Reserved. -# -# This software has been released under the terms of the IBM Public -# License. For details, see the LICENSE file in the top-level source -# directory or online at http://www.openafs.org/dl/license10.html - -# Keep macros within each section in sorted order for clean diff displays. -# -# AFS_OSTYPE used to indicate suffixes and os specific subdirectories. -AFS_OSTYPE = SOLARIS -# -# compilation and link editor flags -XCFLAGS=-dy -Bdynamic -MT_CFLAGS=-mt -DAFS_PTHREAD_ENV ${XCFLAGS} -PAM_CFLAGS = -KPIC -PAMLIBS= -lc -lpam -lsocket -lnsl -lm -SHARE_LDFLAGS = -G -Bsymbolic -LWP_OPTMZ=-g -OPTMZ=-O -DBG=-g -# -# libraries -XLIBS=-lsocket -lnsl -lintl -ldl -TXLIBS=-L/usr/ccs/lib -lcurses -MTLIBS=-lpthread -lsocket -XLIBELFA=-lelf -XLIBKVM=-lkvm -# -SHLIB_SUFFIX=so -SHLIB_CFLAGS=-KPIC -# -# programs -AR=/usr/ccs/bin/ar -AS=as -CC=/opt/SUNWspro/bin/cc -MT_CC=/opt/SUNWspro/bin/cc -CP=/bin/cp -LEX=lex -LD= /usr/ccs/bin/ld -LORDER = /usr/ccs/bin/lorder -MV=mv -RANLIB=/bin/true -RM=rm -STRIP= /usr/ccs/bin/strip -WASHTOOL=${DESTDIR}bin/washtool -INSTALL=${DESTDIR}bin/install -# -# this is for the vol package -FS_CONV_SOL26= $(DESTDIR)root.server/usr/afs/bin/fs_conv_sol26 -# -# This is the XBSA make flag and pathname to XBSA header files (xbsa.h) -XBSA_FLAGS=-Dxbsa -XBSADIR=/opt/tivoli/tsm/client/api/bin/xopen diff --git a/src/config/Makefile.sun4x_57 b/src/config/Makefile.sun4x_57 deleted file mode 100644 index 0003637bf..000000000 --- a/src/config/Makefile.sun4x_57 +++ /dev/null @@ -1,58 +0,0 @@ -# Copyright 2000, International Business Machines Corporation and others. -# All Rights Reserved. -# -# This software has been released under the terms of the IBM Public -# License. For details, see the LICENSE file in the top-level source -# directory or online at http://www.openafs.org/dl/license10.html - -# Keep macros within each section in sorted order for clean diff displays. -# -# AFS_OSTYPE used to indicate suffixes and os specific subdirectories. -AFS_OSTYPE = SOLARIS -# -# compilation and link editor flags -XCFLAGS=-dy -Bdynamic -MT_CFLAGS=-mt -DAFS_PTHREAD_ENV ${XCFLAGS} -PAM_CFLAGS = -KPIC -PAMLIBS= -lc -lpam -lsocket -lnsl -lm -SHARE_LDFLAGS = -G -Bsymbolic -LWP_OPTMZ=-g -OPTMZ=-O -DBG=-g - -## Compilation flags for 64 bit Solaris -XCFLAGS64 = ${XCFLAGS} -xarch=v9 - -# -# libraries -XLIBS=-lsocket -lnsl -lintl -ldl -TXLIBS=-lcurses -MTLIBS=-lpthread -lsocket -XLIBELFA=-lelf -XLIBKVM=-lkvm -# -SHLIB_SUFFIX=so -SHLIB_CFLAGS=-KPIC -# -# programs -AR=/usr/ccs/bin/ar -AS=as -CC=/opt/SUNWspro/bin/cc -MT_CC=/opt/SUNWspro/bin/cc -CP=/bin/cp -LEX=lex -LD= /usr/ccs/bin/ld -LORDER = /usr/ccs/bin/lorder -MV=mv -RANLIB=/bin/true -RM=rm -STRIP= /usr/ccs/bin/strip -WASHTOOL=${DESTDIR}bin/washtool -INSTALL=${DESTDIR}bin/install -# -# this is for the vol package -FS_CONV_SOL26= $(DESTDIR)root.server/usr/afs/bin/fs_conv_sol26 -# -# This is the XBSA make flag and pathname to XBSA header files (xbsa.h) -XBSA_FLAGS=-Dxbsa -XBSADIR=/opt/tivoli/tsm/client/api/bin/xopen diff --git a/src/config/Makefile.sun4x_58 b/src/config/Makefile.sun4x_58 deleted file mode 100644 index 5d07dfbe4..000000000 --- a/src/config/Makefile.sun4x_58 +++ /dev/null @@ -1,51 +0,0 @@ -# Keep macros within each section in sorted order for clean diff displays. -# -# AFS_OSTYPE used to indicate suffixes and os specific subdirectories. -AFS_OSTYPE = SOLARIS -# -# compilation and link editor flags -XCFLAGS=-dy -Bdynamic -MT_CFLAGS=-mt -DAFS_PTHREAD_ENV ${XCFLAGS} -PAM_CFLAGS = -KPIC -PAMLIBS= -lc -lpam -lsocket -lnsl -lm -SHARE_LDFLAGS = -G -Bsymbolic -LWP_OPTMZ=-g -OPTMZ=-O -DBG=-g - -## Compilation flags for 64 bit Solaris -XCFLAGS64 = ${XCFLAGS} -xarch=v9 - -# -# libraries -XLIBS=-lsocket -lnsl -lintl -ldl -TXLIBS=-lcurses -MTLIBS=-lpthread -lsocket -XLIBELFA=-lelf -XLIBKVM=-lkvm -# -SHLIB_SUFFIX=so -SHLIB_CFLAGS=-KPIC -# -# programs -AR=/usr/ccs/bin/ar -AS=as -CC=/opt/SUNWspro/bin/cc -MT_CC=/opt/SUNWspro/bin/cc -CP=/bin/cp -LEX=lex -LD= /usr/ccs/bin/ld -LORDER = /usr/ccs/bin/lorder -MV=mv -RANLIB=/bin/true -RM=rm -STRIP= /usr/ccs/bin/strip -WASHTOOL=${DESTDIR}bin/washtool -INSTALL=${DESTDIR}bin/install -# -# this is for the vol package -FS_CONV_SOL26= $(DESTDIR)root.server/usr/afs/bin/fs_conv_sol26 -# -# This is the XBSA make flag and pathname to XBSA header files (xbsa.h) -XBSA_FLAGS=-Dxbsa -XBSADIR=/opt/tivoli/tsm/client/api/bin/xopen diff --git a/src/config/Makefile.sunx86_54 b/src/config/Makefile.sunx86_54 deleted file mode 100644 index ab8e0cf58..000000000 --- a/src/config/Makefile.sunx86_54 +++ /dev/null @@ -1,22 +0,0 @@ -# Copyright 2000, International Business Machines Corporation and others. -# All Rights Reserved. -# -# This software has been released under the terms of the IBM Public -# License. For details, see the LICENSE file in the top-level source -# directory or online at http://www.openafs.org/dl/license10.html - -# Keep macros within each section in sorted order for clean diff displays. -# AFS_OSTYPE used to indicate suffixes and os specific subdirectories. -AFS_OSTYPE = NCR - -# compilation and link editor flags -# -# libraries -# -# programs -AR = /usr/ccs/bin/ar -LD = /usr/ccs/bin/ld -LORDER = /usr/ccs/bin/lorder -STRIP= /usr/ccs/bin/strip -WASHTOOL=${DESTDIR}bin/washtool -INSTALL=${DESTDIR}bin/install diff --git a/src/config/param.i386_linux22.h b/src/config/param.i386_linux22.h index 85506a61c..38630d7a9 100644 --- a/src/config/param.i386_linux22.h +++ b/src/config/param.i386_linux22.h @@ -27,12 +27,6 @@ #define AFS_SYSCALL 137 #define AFS_64BIT_IOPS_ENV 1 #define AFS_NAMEI_ENV 1 /* User space interface to file system */ -#include - -#define AFS_USERSPACE_IP_ADDR 1 -#define RXK_LISTENER_ENV 1 -#define AFS_GCPAGS 0 /* if nonzero, garbage collect PAGs */ - /* Machine / Operating system information */ #define SYS_NAME "i386_linux22" @@ -43,6 +37,11 @@ #define AFS_VM_RDWR_ENV 1 /* read/write implemented via VM */ #if defined(__KERNEL__) && !defined(KDUMP_KERNEL) +#if defined(MODULE) && defined(CONFIG_MODVERSIONS) +#define MODVERSIONS +#include +#endif + #include #ifdef CONFIG_SMP #undef CONFIG_SMP @@ -55,16 +54,27 @@ #ifndef CONFIG_X86_LOCAL_APIC #define CONFIG_X86_LOCAL_APIC #endif +#ifndef __SMP__ #define __SMP__ -#define AFS_GLOBAL_SUNLOCK #endif - -#if defined(MODULE) && defined(CONFIG_MODVERSIONS) -#define MODVERSIONS -#include +#define AFS_GLOBAL_SUNLOCK #endif #endif /* __KERNEL__ && !DUMP_KERNEL*/ +#include + +#define AFS_USERSPACE_IP_ADDR 1 +#define RXK_LISTENER_ENV 1 +#define AFS_GCPAGS 0 /* if nonzero, garbage collect PAGs */ + + +/* Machine / Operating system information */ +#define SYS_NAME "i386_linux22" +#define SYS_NAME_ID SYS_NAME_ID_i386_linux22 +#define AFSLITTLE_ENDIAN 1 +#define AFS_HAVE_FFS 1 /* Use system's ffs. */ +#define AFS_HAVE_STATVFS 0 /* System doesn't support statvfs */ +#define AFS_VM_RDWR_ENV 1 /* read/write implemented via VM */ #ifdef KERNEL #ifndef MIN diff --git a/src/config/param.i386_linux24.h b/src/config/param.i386_linux24.h index 0e8e95401..618919b68 100644 --- a/src/config/param.i386_linux24.h +++ b/src/config/param.i386_linux24.h @@ -20,20 +20,6 @@ #define AFS_SYSCALL 137 #define AFS_64BIT_IOPS_ENV 1 #define AFS_NAMEI_ENV 1 /* User space interface to file system */ -#include - -#define AFS_USERSPACE_IP_ADDR 1 -#define RXK_LISTENER_ENV 1 -#define AFS_GCPAGS 0 /* if nonzero, garbage collect PAGs */ - - -/* Machine / Operating system information */ -#define SYS_NAME "i386_linux24" -#define SYS_NAME_ID SYS_NAME_ID_i386_linux24 -#define AFSLITTLE_ENDIAN 1 -#define AFS_HAVE_FFS 1 /* Use system's ffs. */ -#define AFS_HAVE_STATVFS 0 /* System doesn't support statvfs */ -#define AFS_VM_RDWR_ENV 1 /* read/write implemented via VM */ #if defined(__KERNEL__) && !defined(KDUMP_KERNEL) #include @@ -48,7 +34,9 @@ #ifndef CONFIG_X86_LOCAL_APIC #define CONFIG_X86_LOCAL_APIC #endif +#ifndef __SMP__ #define __SMP__ +#endif #define AFS_GLOBAL_SUNLOCK #endif @@ -59,6 +47,16 @@ #endif /* __KERNEL__ && !DUMP_KERNEL*/ +#include +#define AFS_USERSPACE_IP_ADDR 1 +#define RXK_LISTENER_ENV 1 +#define AFS_GCPAGS 0 /* if nonzero, garbage collect PAGs */ + +#define AFSLITTLE_ENDIAN 1 +#define AFS_HAVE_FFS 1 /* Use system's ffs. */ +#define AFS_HAVE_STATVFS 0 /* System doesn't support statvfs */ +#define AFS_VM_RDWR_ENV 1 /* read/write implemented via VM */ + #ifdef KERNEL #ifndef MIN #define MIN(A,B) ((A) < (B) ? (A) : (B)) @@ -68,4 +66,10 @@ #endif #endif /* KERNEL */ +/* Machine / Operating system information */ +#define SYS_NAME "i386_linux24" +#define SYS_NAME_ID SYS_NAME_ID_i386_linux24 + #endif /* _PARAM_I386_LINUX24_H_ */ + + diff --git a/src/config/param.alpha_linux_2216_22.h b/src/config/param.ppc_linux22.h similarity index 69% rename from src/config/param.alpha_linux_2216_22.h rename to src/config/param.ppc_linux22.h index 474e6dbcb..1438cb90e 100644 --- a/src/config/param.alpha_linux_2216_22.h +++ b/src/config/param.ppc_linux22.h @@ -1,10 +1,8 @@ -#ifndef _PARAM_ALPHA_LINUX2216_22_H_ -#define _PARAM_ALPHA_LINUX2216_22_H_ +#ifndef _PARAM_PPC_LINUX22_H_ +#define _PARAM_PPC_LINUX22_H_ -/* Linux 2.2.16 kernel on Alpha with glibc 2.2 */ - /* In user space the AFS_LINUX20_ENV should be sufficient. In the kernel, - * it's a judgment call. If something is obviously sparc64 specific, use that + * it's a judgment call. If something is obviously ppc specific, use that * #define instead. Note that "20" refers to the linux 2.0 kernel. The "2" * in the sysname is the current version of the client. This takes into * account the perferred OS user space configuration as well as the kernel. @@ -12,34 +10,15 @@ #define AFS_LINUX20_ENV 1 #define AFS_LINUX22_ENV 1 -#define AFS_ALPHA_LINUX20_ENV 1 -#define AFS_ALPHA_LINUX22_ENV 1 -#define __alpha 1 -#define AFS_LINUX_64BIT_KERNEL 1 +#define AFS_PPC_LINUX20_ENV 1 +#define AFS_PPC_LINUX22_ENV 1 #define AFS_NONFSTRANS 1 #define AFS_MOUNT_AFS "afs" /* The name of the filesystem type. */ -#define AFS_SYSCALL 338 +#define AFS_SYSCALL 137 #define AFS_64BIT_IOPS_ENV 1 #define AFS_NAMEI_ENV 1 /* User space interface to file system */ -#define AFS_64BIT_ENV 1 /* Defines afs_int32 as int, not long. */ -#define AFS_64BITPOINTER_ENV 1 /* pointers are 64 bits. */ - -#include - -#define AFS_USERSPACE_IP_ADDR 1 -#define RXK_LISTENER_ENV 1 -#define AFS_GCPAGS 0 /* if nonzero, garbage collect PAGs */ - -/* Machine / Operating system information */ -#define SYS_NAME "alpha_linux_22" -#define SYS_NAME_ID SYS_NAME_ID_alpha_linux_22 -#define AFSLITTLE_ENDIAN 1 -#define AFS_HAVE_FFS 1 /* Use system's ffs. */ -#define AFS_HAVE_STATVFS 0 /* System doesn't support statvfs */ -#define AFS_VM_RDWR_ENV 1 /* read/write implemented via VM */ - #if defined(__KERNEL__) && !defined(KDUMP_KERNEL) #include #ifdef CONFIG_SMP @@ -50,12 +29,34 @@ */ #ifdef AFS_SMP #define CONFIG_SMP +#ifndef __SMP__ #define __SMP__ +#endif #define AFS_GLOBAL_SUNLOCK #endif +#if defined(MODULE) && defined(CONFIG_MODVERSIONS) +#define MODVERSIONS +#include +#endif + #endif /* __KERNEL__ && !DUMP_KERNEL*/ +#include + +#define AFS_USERSPACE_IP_ADDR 1 +#define RXK_LISTENER_ENV 1 +#define AFS_GCPAGS 0 /* if nonzero, garbage collect PAGs */ + + +/* Machine / Operating system information */ +#define SYS_NAME "ppc_linux22" +#define SYS_NAME_ID SYS_NAME_ID_ppc_linux22 +#define AFSBIG_ENDIAN 1 +#define AFS_HAVE_FFS 1 /* Use system's ffs. */ +#define AFS_HAVE_STATVFS 0 /* System doesn't support statvfs */ +#define AFS_VM_RDWR_ENV 1 /* read/write implemented via VM */ + #ifdef KERNEL #ifndef MIN #define MIN(A,B) ((A) < (B) ? (A) : (B)) @@ -65,4 +66,4 @@ #endif #endif /* KERNEL */ -#endif /* _PARAM_ALPHA_LINUX2216_22_H_ */ +#endif /* _PARAM_PPC_LINUX22_H_ */ diff --git a/src/config/param.alpha_linux_2216_22_usr.h b/src/config/param.ppc_linux22_usr.h similarity index 80% rename from src/config/param.alpha_linux_2216_22_usr.h rename to src/config/param.ppc_linux22_usr.h index e1d166751..51dc915dd 100644 --- a/src/config/param.alpha_linux_2216_22_usr.h +++ b/src/config/param.ppc_linux22_usr.h @@ -1,8 +1,8 @@ -#ifndef _PARAM_ALPHA_LINUX2216_22_USR_H_ -#define _PARAM_ALPHA_LINUX2216_22_USR_H_ +#ifndef _PARAM_USR_PPC_LINUX22_H_ +#define _PARAM_USR_PPC_LINUX22_H_ /* In user space the AFS_LINUX20_ENV should be sufficient. In the kernel, - * it's a judgment call. If something is obviously sparc64 specific, use that + * it's a judgment call. If something is obviously ppc specific, use that * #define instead. Note that "20" refers to the linux 2.0 kernel. The "2" * in the sysname is the current version of the client. This takes into * account the perferred OS user space configuration as well as the kernel. @@ -15,9 +15,8 @@ #define AFS_NONFSTRANS 1 #define AFS_MOUNT_AFS "afs" /* The name of the filesystem type. */ -#define AFS_SYSCALL 338 +#define AFS_SYSCALL 137 #define AFS_64BIT_IOPS_ENV 1 -#define AFS_64BIT_ENV 1 #define AFS_NAMEI_ENV 1 /* User space interface to file system */ #include @@ -27,9 +26,9 @@ /* Machine / Operating system information */ -#define SYS_NAME "alpha_linux_22" -#define SYS_NAME_ID SYS_NAME_ID_alpha_linux_22 -#define AFSLITTLE_ENDIAN 1 +#define SYS_NAME "ppc_linux22" +#define SYS_NAME_ID SYS_NAME_ID_ppc_linux22 +#define AFSBIG_ENDIAN 1 #define AFS_HAVE_FFS 1 /* Use system's ffs. */ #define AFS_HAVE_STATVFS 0 /* System doesn't support statvfs */ #define AFS_VM_RDWR_ENV 1 /* read/write implemented via VM */ @@ -51,4 +50,4 @@ #define CMSERVERPREF #endif -#endif /* _PARAM_ALPHA_LINUX2216_22_USR_H_ */ +#endif /* _PARAM_USR_PPC_LINUX22_H_ */ diff --git a/src/config/param.ppc_linux24.h b/src/config/param.ppc_linux24.h index b88c0c01e..c0f898f7a 100644 --- a/src/config/param.ppc_linux24.h +++ b/src/config/param.ppc_linux24.h @@ -20,20 +20,6 @@ #define AFS_SYSCALL 137 #define AFS_64BIT_IOPS_ENV 1 #define AFS_NAMEI_ENV 1 /* User space interface to file system */ -#include - -#define AFS_USERSPACE_IP_ADDR 1 -#define RXK_LISTENER_ENV 1 -#define AFS_GCPAGS 0 /* if nonzero, garbage collect PAGs */ - - -/* Machine / Operating system information */ -#define SYS_NAME "ppc_linux24" -#define SYS_NAME_ID SYS_NAME_ID_ppc_linux24 -#define AFSBIG_ENDIAN 1 -#define AFS_HAVE_FFS 1 /* Use system's ffs. */ -#define AFS_HAVE_STATVFS 0 /* System doesn't support statvfs */ -#define AFS_VM_RDWR_ENV 1 /* read/write implemented via VM */ #if defined(__KERNEL__) && !defined(KDUMP_KERNEL) #include @@ -45,12 +31,33 @@ */ #ifdef AFS_SMP #define CONFIG_SMP +#ifndef __SMP__ #define __SMP__ +#endif #define AFS_GLOBAL_SUNLOCK #endif +#if defined(MODULE) && defined(CONFIG_MODVERSIONS) +#define MODVERSIONS +#include +#endif #endif /* __KERNEL__ && !DUMP_KERNEL*/ +#include + +#define AFS_USERSPACE_IP_ADDR 1 +#define RXK_LISTENER_ENV 1 +#define AFS_GCPAGS 0 /* if nonzero, garbage collect PAGs */ + + +/* Machine / Operating system information */ +#define SYS_NAME "ppc_linux24" +#define SYS_NAME_ID SYS_NAME_ID_ppc_linux24 +#define AFSBIG_ENDIAN 1 +#define AFS_HAVE_FFS 1 /* Use system's ffs. */ +#define AFS_HAVE_STATVFS 0 /* System doesn't support statvfs */ +#define AFS_VM_RDWR_ENV 1 /* read/write implemented via VM */ + #ifdef KERNEL #ifndef MIN #define MIN(A,B) ((A) < (B) ? (A) : (B)) diff --git a/src/config/param.sparc64_linux22.h b/src/config/param.sparc64_linux22.h index 28f097729..cbf60d450 100644 --- a/src/config/param.sparc64_linux22.h +++ b/src/config/param.sparc64_linux22.h @@ -27,20 +27,6 @@ #define AFS_32BIT_USR_ENV 1 /* user level processes are 32bit */ #define AFS_64BITPOINTER_ENV 1 /* pointers are 64 bits. */ -#include - -#define AFS_USERSPACE_IP_ADDR 1 -#define RXK_LISTENER_ENV 1 -#define AFS_GCPAGS 0 /* if nonzero, garbage collect PAGs */ - -/* Machine / Operating system information */ -#define SYS_NAME "sparc64_linux22" -#define SYS_NAME_ID SYS_NAME_ID_sparc64_linux22 -#define AFSBIG_ENDIAN 1 -#define AFS_HAVE_FFS 1 /* Use system's ffs. */ -#define AFS_HAVE_STATVFS 0 /* System doesn't support statvfs */ -#define AFS_VM_RDWR_ENV 1 /* read/write implemented via VM */ - #if defined(__KERNEL__) && !defined(KDUMP_KERNEL) #include #ifdef CONFIG_SMP @@ -51,12 +37,33 @@ */ #ifdef AFS_SMP #define CONFIG_SMP +#ifndef __SMP__ #define __SMP__ +#endif #define AFS_GLOBAL_SUNLOCK #endif +#if defined(MODULE) && defined(CONFIG_MODVERSIONS) +#define MODVERSIONS +#include +#endif + #endif /* __KERNEL__ && !DUMP_KERNEL*/ +#include + +#define AFS_USERSPACE_IP_ADDR 1 +#define RXK_LISTENER_ENV 1 +#define AFS_GCPAGS 0 /* if nonzero, garbage collect PAGs */ + +/* Machine / Operating system information */ +#define SYS_NAME "sparc64_linux22" +#define SYS_NAME_ID SYS_NAME_ID_sparc64_linux22 +#define AFSBIG_ENDIAN 1 +#define AFS_HAVE_FFS 1 /* Use system's ffs. */ +#define AFS_HAVE_STATVFS 0 /* System doesn't support statvfs */ +#define AFS_VM_RDWR_ENV 1 /* read/write implemented via VM */ + #ifdef KERNEL #ifndef MIN #define MIN(A,B) ((A) < (B) ? (A) : (B)) diff --git a/src/config/param.sparc_linux22.h b/src/config/param.sparc_linux22.h index f0b4214d6..cc36f5fc5 100644 --- a/src/config/param.sparc_linux22.h +++ b/src/config/param.sparc_linux22.h @@ -21,20 +21,6 @@ #define AFS_SYSCALL 227 #define AFS_64BIT_IOPS_ENV 1 #define AFS_NAMEI_ENV 1 /* User space interface to file system */ -#include - -#define AFS_USERSPACE_IP_ADDR 1 -#define RXK_LISTENER_ENV 1 -#define AFS_GCPAGS 0 /* if nonzero, garbage collect PAGs */ - - -/* Machine / Operating system information */ -#define SYS_NAME "sparc_linux22" -#define SYS_NAME_ID SYS_NAME_ID_sparc_linux22 -#define AFSBIG_ENDIAN 1 -#define AFS_HAVE_FFS 1 /* Use system's ffs. */ -#define AFS_HAVE_STATVFS 0 /* System doesn't support statvfs */ -#define AFS_VM_RDWR_ENV 1 /* read/write implemented via VM */ #if defined(__KERNEL__) && !defined(KDUMP_KERNEL) #include @@ -46,12 +32,32 @@ */ #ifdef AFS_SMP #define CONFIG_SMP +#ifndef __SMP__ #define __SMP__ +#endif #define AFS_GLOBAL_SUNLOCK #endif +#if defined(MODULE) && defined(CONFIG_MODVERSIONS) +#define MODVERSIONS +#include +#endif #endif /* __KERNEL__ && !DUMP_KERNEL*/ +#include + +#define AFS_USERSPACE_IP_ADDR 1 +#define RXK_LISTENER_ENV 1 +#define AFS_GCPAGS 0 /* if nonzero, garbage collect PAGs */ + +/* Machine / Operating system information */ +#define SYS_NAME "sparc_linux22" +#define SYS_NAME_ID SYS_NAME_ID_sparc_linux22 +#define AFSBIG_ENDIAN 1 +#define AFS_HAVE_FFS 1 /* Use system's ffs. */ +#define AFS_HAVE_STATVFS 0 /* System doesn't support statvfs */ +#define AFS_VM_RDWR_ENV 1 /* read/write implemented via VM */ + #ifdef KERNEL #ifndef MIN #define MIN(A,B) ((A) < (B) ? (A) : (B)) diff --git a/src/libafs/Makefile.common b/src/libafs/Makefile.common index 69d301123..282f99e80 100644 --- a/src/libafs/Makefile.common +++ b/src/libafs/Makefile.common @@ -10,7 +10,7 @@ SHELL=/bin/sh DESTDIR = DEST/ SRCDIR = DEST/ -INCLUDE= -I. -I/usr/include +INCLUDE= -I. -I/usr/include -I${TOP_SRCDIR}/config Aobj=COMMON Dobj=DYNEL Cobj=CLIENT @@ -341,6 +341,6 @@ afs_pioctl_nfs.o: $(AFS)/afs_pioctl.c clean: -rm -rf STATIC* MODLOAD* - -rm -f h net netinet rpc ufs machine inet nfs sys + -rm -rf h net netinet rpc ufs machine inet nfs sys afs afsint asm asm-generic config rx diff --git a/src/libafs/MakefileProto.AIX b/src/libafs/MakefileProto.AIX deleted file mode 100644 index 1b2589134..000000000 --- a/src/libafs/MakefileProto.AIX +++ /dev/null @@ -1,172 +0,0 @@ -# Copyright 2000, International Business Machines Corporation and others. -# All Rights Reserved. -# -# This software has been released under the terms of the IBM Public -# License. For details, see the LICENSE file in the top-level source -# directory or online at http://www.openafs.org/dl/license10.html - -# MakefileProto for AIX systems -# - -DESTDIR=DEST/ -include $(DESTDIR)../obj/config/Makefile.${SYS_NAME} - -# OS specific object files: -AFS_OS_OBJS = \ - osi_assem.o \ - osi_config.o \ - osi_groups.o \ - osi_file.o \ - osi_inode.o \ - osi_misc.o \ - osi_sleep.o \ - osi_timeout.o \ - osi_vm.o \ - xdr.o \ - xdr_array.o - -AFSNOIAUTHOBJS = \ - afs_call.o \ - afs_pioctl.o \ - osi_vfsops.o \ - osi_vnodeops.o - - -# Object files for iauth NFS->AFS authenticator. -AFSIAUTHOBJS = \ - afs_call_iauth.o \ - afs_nfsclnt_iauth.o \ - afs_pioctl_iauth.o \ - osi_vfsops_iauth.o \ - osi_vnodeops_iauth.o - -# System specific build commands -STRIP = /bin/strip -DBUG = -g -#OPT = -O -OPT2 = -O - -IMPORTS = -bI:/lib/kernex.exp -bI:/lib/syscalls.exp -bI:/lib/sockets.exp \ - -bI:/lib/netinet.exp \ - -bI:${DESTDIR}lib/afs/extras.exp -bI:${DESTDIR}lib/afs/export.exp -KDEFS = -U_IBMR2 -D_POWER -D_AIX -DNLS -D_NLS -DMSG -D__STR31__ -Daiws \ - -D_POWER_RS -D_POWER_PC -D_POWER_RS1 -D_POWER_RS2 -D_POWER_RSC \ - -D_POWER_601 -D_POWER_603 -D_POWER_604 -D_THREADS -M -D_KERNEL \ - -D_POWER_MP -UKOFF -DAFSDEBUG -DVICE -DNFS -DUFS -DINET -DQUOTA \ - -DGETMOUNT -H8 -DAFS -DAFS_COMMON -D_VOPS -D_SUN -DKERNEL -LDSTUFF= -b"binder:/usr/lib/bind glink:/usr/lib/glink.o" -bnoentry -b h:4 \ - -D0 -T512 -LDFLAGS = -m -eafs_config -bexport:${DESTDIR}/lib/afs/afs.exp ${IMPORTS} \ - -lsys -lcsys - -CFLAGS=-I. -I.. ${FSINCLUDES} $(KDEFS) $(KOPTS) ${DBUG} - -# Name of directory to hold object files and libraries. -KOBJ = MODLOAD - -# This tells Makefile.common to use it's single directory build target. -COMPDIRS = single_compdir - -include Makefile.common - -setup: - -mkdir $(KOBJ) - -rm $(KOBJ)/Makefile $(KOBJ)/Makefile.common - ln -s ../Makefile $(KOBJ)/Makefile - ln -s ../Makefile.common $(KOBJ)/Makefile.common - -rm -f h net netinet rpc ufs nfs machine sys - ln -s /usr/include/sys h - ln -s /usr/include/net net - ln -s /usr/include/netinet netinet - ln -s /usr/include/rpc rpc - ln -s /usr/include/sys sys - ln -s /usr/include/nfs nfs - ln -s /usr/include/jfs ufs - - - - - -# Standard AFS->NFS translator support is removed in AFS 3.5 in favor of -# the iauth authentication mechanism. The model was changed by IBM in the -# middle of an OS release. So iauth is only supported on AIX 4.1.5 and -# later 4.1.x (if they are ever made) and AIX 4.2.1 (and later AIX 4.2.x if -# they are ever made. AIX 4.3 also uses the iauth translator. - -CLIENTDIR = $(DESTDIR)root.client/usr/vice/etc/dkload -LIBAFSIAUTH = afs.ext.iauth -LIBAFS = afs.ext - -DEST_LIBAFSIAUTH = $(CLIENTDIR)/$(LIBAFSIAUTH) -DEST_LIBAFS = $(CLIENTDIR)/$(LIBAFS) - -$(DEST_LIBAFS): $(LIBAFS) - $(INSTALL) -f $? $@ - -${STRIP} $@ - $(INSTALL) -f $?.map $@.map - -$(DEST_LIBAFSIAUTH): $(LIBAFSIAUTH) - $(INSTALL) -f $? $@ - -${STRIP} $@ - $(INSTALL) -f $?.map $@.map - - - -$(LIBAFSIAUTH): $(AFSAOBJS) $(AFSIAUTHOBJS) - ${LD} ${LDSTUFF} -bloadmap:afs.ext.iauth.loadmap \ - -bmap:afs.ext.iauth.map -o afs.ext.iauth \ - ${AFSAOBJS} ${AFSIAUTHOBJS} ${LIBS} ${LDFLAGS} - -$(LIBAFS): $(AFSAOBJS) $(AFSNOIAUTHOBJS) - ${LD} ${LDSTUFF} -bloadmap:afs.ext.loadmap \ - -bmap:afs.ext.map -o afs.ext \ - ${AFSAOBJS} $(AFSNOIAUTHOBJS) ${LIBS} ${LDFLAGS} - -libafs: $(DEST_LIBAFS) $(DEST_LIBAFSIAUTH) - - -# Object build rules: -# Common objects -xdr.o: $(RX)/xdr.c - $(CRULE1); -xdr_int64.o: $(RX)/xdr_int64.c - $(CRULE1); - -xdr_array.o: $(RX)/xdr_array.c - $(CRULE1); - -osi_assem.o: ${AFS}/osi_assem.s - ${AS} -o osi_assem.o ${AFS}/osi_assem.s -osi_config.o: $(AFS)/osi_config.c - $(CRULE1); -osi_groups.o: $(AFS)/osi_groups.c - $(CRULE1); -osi_file.o: $(AFS)/osi_file.c - $(CRULE1); -osi_inode.o: $(AFS)/osi_inode.c - $(CRULE1); -osi_misc.o: $(AFS)/osi_misc.c - $(CRULE1); -osi_sleep.o: $(AFS)/osi_sleep.c - $(CRULE1); -osi_timeout.o: $(AFS)/osi_timeout.c - $(CRULE1); -osi_vfsops.o: $(AFS)/osi_vfsops.c - $(CRULE1); -osi_vm.o: $(AFS)/osi_vm.c - $(CRULE1); -osi_vnodeops.o: $(AFS)/osi_vnodeops.c - $(CRULE1); - - -# Build rules for iauth objects. -afs_call_iauth.o: $(AFS)/afs_call.c - $(CRULE1) -DAFS_NONFSTRANS -DAFS_AIX_IAUTH_ENV -o afs_call_iauth.o; -afs_nfsclnt_iauth.o: $(AFS)/afs_nfsclnt.c - $(CRULE1) -DAFS_NONFSTRANS -DAFS_AIX_IAUTH_ENV -o afs_nfsclnt_iauth.o; -afs_pioctl_iauth.o: $(AFS)/afs_pioctl.c - $(CRULE1) -DAFS_NONFSTRANS -DAFS_AIX_IAUTH_ENV -o afs_pioctl_iauth.o; -osi_vfsops_iauth.o: $(AFS)/osi_vfsops.c - $(CRULE1) -DAFS_NONFSTRANS -DAFS_AIX_IAUTH_ENV -o osi_vfsops_iauth.o; -osi_vnodeops_iauth.o: $(AFS)/osi_vnodeops.c - $(CRULE1) -DAFS_NONFSTRANS -DAFS_AIX_IAUTH_ENV -o osi_vnodeops_iauth.o; diff --git a/src/libafs/MakefileProto.DARWIN b/src/libafs/MakefileProto.DARWIN deleted file mode 100644 index a24eaebd2..000000000 --- a/src/libafs/MakefileProto.DARWIN +++ /dev/null @@ -1,115 +0,0 @@ -#/* Copyright (C) 1995, 1989 Transarc Corporation - All rights reserved */ -# $Header: /tmp/cvstemp/openafs/src/libafs/Attic/MakefileProto.DARWIN,v 1.1 2001/04/23 18:43:17 hartmans Exp $ -# -# MakefileProto for Digital Unix systems -# - -DESTDIR=DEST/ -include $(DESTDIR)../obj/config/Makefile.${SYS_NAME} - - -# OS specific object files: -AFS_OS_OBJS = \ - osi_misc.o \ - osi_file.o \ - osi_inode.o \ - osi_groups.o \ - osi_sleep.o \ - osi_vm.o \ - osi_vnodeops.o \ - osi_module.o \ - xdr.o \ - xdr_array.o - - -#AFS_OS_NFSOBJS = osi_vfsops_nfs.o - -AFS_OS_NONFSOBJS = osi_vfsops.o - - -# System specific build commands and flags -KDEFS= -DBUG = -g -DEFINES= -D_KERNEL -DKERNEL -DKERNEL_PRIVATE -DDIAGNOSTIC -DUSE_SELECT -DMACH_USER_API -DMACH_KERNEL -OPTF=${OPT} -OPTF2=${OPT2} -KOPTS=-traditional-cpp -static -fno-common -finline -fno-keep-inline-functions -force_cpusubtype_ALL -msoft-float -mlong-branch -#CFLAGS=-Werror-implicit-function-declaration -I. -I.. ${KINCLUDES} $(DEFINES) $(KDEFS) $(KOPTS) ${DBUG} -#CFLAGS=-framework Kernel -I. -I.. ${KINCLUDES} $(DEFINES) $(KDEFS) $(KOPTS) ${DBUG} -CFLAGS=-I. -I.. ${KINCLUDES} $(DEFINES) $(KDEFS) $(KOPTS) ${DBUG} - - -# Name of directory to hold object files and libraries. -KOBJ = MODLOAD - -# This tells Makefile.common to use it's single directory build target. -COMPDIRS = single_compdir - -include Makefile.common - -setup: - -mkdir $(KOBJ) - -rm $(KOBJ)/Makefile $(KOBJ)/Makefile.common - ln -s ../Makefile $(KOBJ)/Makefile - ln -s ../Makefile.common $(KOBJ)/Makefile.common - -rm -f h net netinet rpc ufs nfs machine sys vm mach kern - -ln -s $(KROOT)/System/Library/Frameworks/Kernel.framework/Headers/net net - -ln -s $(KROOT)/System/Library/Frameworks/Kernel.framework/Headers/machine machine - -ln -s $(KROOT)/System/Library/Frameworks/Kernel.framework/Headers/netinet netinet - -ln -s $(KROOT)/System/Library/Frameworks/Kernel.framework/Headers/nfs nfs - -ln -s /usr/include/rpc rpc - -ln -s $(KROOT)/System/Library/Frameworks/Kernel.framework/Headers/sys sys - -ln -s $(KROOT)/System/Library/Frameworks/Kernel.framework/Headers/ufs ufs - -ln -s $(KROOT)/System/Library/Frameworks/Kernel.framework/Headers/sys h - - -# Below this line are targets when in the COMMON directory: -LIBAFS = libafs.o -LIBAFSNONFS = libafs.nonfs.o - -DEST_LIBAFS = ${DESTDIR}/root.client/usr/vice/etc/afs.kext/Contents/MacOS/afs-nfs -DEST_LIBAFSNONFS = ${DESTDIR}/root.client/usr/vice/etc/afs.kext/Contents/MacOS/afs - - -libafs: $(DEST_LIBAFSNONFS) ; - - -$(DEST_LIBAFS): $(LIBAFS) - $(INSTALL) -f $? $@ - -$(DEST_LIBAFSNONFS): $(LIBAFSNONFS) - $(INSTALL) -f $? $@ - -${LIBAFS}: $(AFSAOBJS) $(AFSNFSOBJS) - $(LD) -r -o ${LIBAFS} ${AFSAOBJS} ${AFSNFSOBJS} - -${LIBAFSNONFS}: $(AFSAOBJS) $(AFSNONFSOBJS) - $(LD) -r -o ${LIBAFSNONFS} ${AFSAOBJS} ${AFSNONFSOBJS} - - -# Object build rules: -osi_groups.o: $(AFS)/osi_groups.c - $(CRULE1) -osi_file.o: $(AFS)/osi_file.c - $(CRULE1) -osi_inode.o: $(AFS)/osi_inode.c - $(CRULE1) -osi_misc.o: $(AFS)/osi_misc.c - $(CRULE1) -osi_sleep.o: $(AFS)/osi_sleep.c - $(CRULE1) -osi_vfsops_nfs.o: $(AFS)/osi_vfsops.c - $(CRULE1) -o osi_vfsops_nfs.o -osi_vfsops.o: $(AFS)/osi_vfsops.c - $(CRULE1) -DAFS_NONFSTRANS -osi_vm.o: $(AFS)/osi_vm.c - $(CRULE1) -osi_vnodeops.o: $(AFS)/osi_vnodeops.c - $(CRULE1) -osi_module.o: $(AFS)/osi_module.c - $(CRULE1) -xdr.o: $(RX)/xdr.c - $(CRULE1); -xdr_array.o: $(RX)/xdr_array.c - $(CRULE1); - diff --git a/src/libafs/MakefileProto.DUX b/src/libafs/MakefileProto.DUX deleted file mode 100644 index 2d4ed95d6..000000000 --- a/src/libafs/MakefileProto.DUX +++ /dev/null @@ -1,116 +0,0 @@ -# Copyright 2000, International Business Machines Corporation and others. -# All Rights Reserved. -# -# This software has been released under the terms of the IBM Public -# License. For details, see the LICENSE file in the top-level source -# directory or online at http://www.openafs.org/dl/license10.html - -# MakefileProto for Digital Unix systems -# - -DESTDIR=DEST/ -include $(DESTDIR)../obj/config/Makefile.${SYS_NAME} - - -# OS specific object files: -AFS_OS_OBJS = \ - osi_groups.o \ - osi_file.o \ - osi_inode.o \ - osi_misc.o \ - osi_sleep.o \ - osi_vm.o \ - osi_vnodeops.o - -AFS_OS_NFSOBJS = \ - osi_vfsops_nfs.o - -AFS_OS_NONFSOBJS = \ - osi_vfsops.o - - -# System specific build commands and flags -KDEFS=-DLANGUAGE_C -G 4 -I/usr/sys/include -I../include \ - -I/usr/sys/${HEADER_RT} -I/usr/sys/BINARY -I/usr/sys/AFS \ - -DDEC3000_500 -DSWAPTYPE=1 -DUERF -DOSF -DCOMPAT_43 -DMACH -DUFS \ - -DRT -DKERNEL -D_KERNEL -signed -no_excpt -Wb,-static -Wco,-nofloat \ - -Olimit 1000 -D__alpha -Umips -UMIPS -DBUG = -O2 -g3 -DEFINES= -DAFSDEBUG -DKERNEL -DAFS -DVICE -DNFS -DUFS -DINET -DQUOTA -DGETMOUNT -OPTF=${OPT} -OPTF2=${OPT2} -CFLAGS=-I. -I.. ${FSINCLUDES} $(DEFINES) $(KDEFS) $(KOPTS) ${DBUG} - - -# Name of directory to hold object files and libraries. -KOBJ = STATIC - -# This tells Makefile.common to use it's single directory build target. -COMPDIRS = single_compdir - -include Makefile.common - -setup: - -mkdir $(KOBJ) - -rm $(KOBJ)/Makefile $(KOBJ)/Makefile.common - ln -s ../Makefile $(KOBJ)/Makefile - ln -s ../Makefile.common $(KOBJ)/Makefile.common - -rm -f h net netinet rpc ufs nfs machine sys vm - -ln -s /usr/sys/include/net net - -ln -s /usr/sys/include/machine machine - -ln -s /usr/sys/include/netinet netinet - -ln -s /usr/sys/include/nfs nfs - -ln -s /usr/sys/include/rpc rpc - -ln -s /usr/sys/include/sys sys - -ln -s /usr/sys/include/ufs ufs - -ln -s /usr/sys/include/sys h - -ln -s /usr/sys/include/vm vm - -touch $(KOBJ)/sec_net.h - - -# Below this line are targets when in the COMMON directory: -LIBAFS = libafs.o -LIBAFSNONFS = libafs.nonfs.o - -DEST_LIBAFS = ${DESTDIR}/root.client/bin/${LIBAFS} -DEST_LIBAFSNONFS = ${DESTDIR}/root.client/bin/${LIBAFSNONFS} - - -# libafs: $(DEST_LIBAFS) $(DEST_LIBAFSNONFS) - -.PHONY: libafs -libafs: $(DEST_LIBAFSNONFS) - - -$(DEST_LIBAFS): $(LIBAFS) - $(INSTALL) -f $? $@ - -$(DEST_LIBAFSNONFS): $(LIBAFSNONFS) - $(INSTALL) -f $? $@ - -${LIBAFS}: $(AFSAOBJS) $(AFSNFSOBJS) - $(LD) -r -o ${LIBAFS} ${AFSAOBJS} ${AFSNFSOBJS} - -${LIBAFSNONFS}: $(AFSAOBJS) $(AFSNONFSOBJS) - $(LD) -r -o ${LIBAFSNONFS} ${AFSAOBJS} ${AFSNONFSOBJS} - - -# Object build rules: -osi_groups.o: $(AFS)/osi_groups.c - $(CRULE1) -osi_file.o: $(AFS)/osi_file.c - $(CRULE1) -osi_inode.o: $(AFS)/osi_inode.c - $(CRULE1) -osi_misc.o: $(AFS)/osi_misc.c - $(CRULE1) -osi_sleep.o: $(AFS)/osi_sleep.c - $(CRULE1) -osi_vfsops_nfs.o: $(AFS)/osi_vfsops.c - $(CRULE1) -o osi_vfsops_nfs.o -osi_vfsops.o: $(AFS)/osi_vfsops.c - $(CRULE1) -DAFS_NONFSTRANS -osi_vm.o: $(AFS)/osi_vm.c - $(CRULE1) -osi_vnodeops.o: $(AFS)/osi_vnodeops.c - $(CRULE1) diff --git a/src/libafs/MakefileProto.FBSD b/src/libafs/MakefileProto.FBSD deleted file mode 100644 index 07759f6e4..000000000 --- a/src/libafs/MakefileProto.FBSD +++ /dev/null @@ -1,112 +0,0 @@ -#/* Copyright (C) 1995, 1989 Transarc Corporation - All rights reserved */ -# -# MakefileProto for Digital Unix systems -# - -DESTDIR=DEST/ -# include $(DESTDIR)/../obj/config/Makefile.${SYS_NAME} - - -# OS specific object files: -AFS_OS_OBJS = \ - osi_groups.o \ - osi_file.o \ - osi_inode.o \ - osi_misc.o \ - osi_sleep.o \ - osi_vm.o \ - osi_vnodeops.o - -AFS_OS_NFSOBJS = \ - osi_vfsops_nfs.o - -AFS_OS_NONFSOBJS = \ - osi_vfsops.o - - -# System specific build commands and flags -# KDEFS=-DLANGUAGE_C -I/usr/sys/include -I../include \ -# -I/usr/src/sys/${HEADER_RT} -I/usr/src/sys/sys \ -# -DSWAPTYPE=1 -DUERF -DOSF -DCOMPAT_43 -DUFS \ -# -DRT -DKERNEL -D_KERNEL -KDEFS=-Wall -fformat-extensions -ansi -nostdinc -I/usr/include -D_KERNEL \ - -elf -mpreferred-stack-boundary=2 -I/usr/src/sys/sys -I../afs -DBUG = -O2 -DEFINES= -DAFSDEBUG -DKERNEL -DAFS -DVICE -DNFS -DUFS -DINET -DQUOTA -DGETMOUNT -OPTF=${OPT} -OPTF2=${OPT2} -CFLAGS=-I. -I.. ${FSINCLUDES} $(DEFINES) $(KDEFS) $(KOPTS) ${DBUG} - - -# Name of directory to hold object files and libraries. -KOBJ = STATIC - -# This tells Makefile.common to use it's single directory build target. -COMPDIRS = single_compdir - -include Makefile.common - -setup: - -mkdir $(KOBJ) - -rm $(KOBJ)/Makefile $(KOBJ)/Makefile.common - ln -s ../Makefile $(KOBJ)/Makefile - ln -s ../Makefile.common $(KOBJ)/Makefile.common - -rm -f h net netinet rpc ufs nfs machine sys vm - -ln -s /usr/src/sys/net net - -ln -s /usr/src/sys/i386/include machine - -ln -s /usr/src/sys/netinet netinet - -ln -s /usr/src/sys/nfs nfs - -ln -s /usr/include/rpc rpc - -ln -s /usr/src/sys/sys sys - -ln -s /usr/src/sys/ufs/ufs ufs - -ln -s /usr/src/sys/sys h - -ln -s /usr/src/sys/vm vm - -touch $(KOBJ)/sec_net.h - - -# Below this line are targets when in the COMMON directory: -LIBAFS = libafs.o -LIBAFSNONFS = libafs.nonfs.o - -DEST_LIBAFS = ${DESTDIR}/root.client/bin/${LIBAFS} -DEST_LIBAFSNONFS = ${DESTDIR}/root.client/bin/${LIBAFSNONFS} - - -# libafs: $(DEST_LIBAFS) $(DEST_LIBAFSNONFS) -# libafs: $(DEST_LIBAFSNONFS) -libafs: - echo WARNING: No kernel module for ${SYS_NAME} - - -$(DEST_LIBAFS): $(LIBAFS) - $(INSTALL) -f $? $@ - -$(DEST_LIBAFSNONFS): $(LIBAFSNONFS) - $(INSTALL) -f $? $@ - -${LIBAFS}: $(AFSAOBJS) $(AFSNFSOBJS) - $(LD) -r -o ${LIBAFS} ${AFSAOBJS} ${AFSNFSOBJS} - -${LIBAFSNONFS}: $(AFSAOBJS) $(AFSNONFSOBJS) - $(LD) -r -o ${LIBAFSNONFS} ${AFSAOBJS} ${AFSNONFSOBJS} - - -# Object build rules: -osi_groups.o: $(AFS)/osi_groups.c - $(CRULE1) -osi_file.o: $(AFS)/osi_file.c - $(CRULE1) -osi_inode.o: $(AFS)/osi_inode.c - $(CRULE1) -osi_misc.o: $(AFS)/osi_misc.c - $(CRULE1) -osi_sleep.o: $(AFS)/osi_sleep.c - $(CRULE1) -osi_vfsops_nfs.o: $(AFS)/osi_vfsops.c - $(CRULE1) -o osi_vfsops_nfs.o -osi_vfsops.o: $(AFS)/osi_vfsops.c - $(CRULE1) -DAFS_NONFSTRANS -osi_vm.o: $(AFS)/osi_vm.c - $(CRULE1) -osi_vnodeops.o: $(AFS)/osi_vnodeops.c - $(CRULE1) diff --git a/src/libafs/MakefileProto.HPUX b/src/libafs/MakefileProto.HPUX deleted file mode 100644 index d52ce7d87..000000000 --- a/src/libafs/MakefileProto.HPUX +++ /dev/null @@ -1,171 +0,0 @@ -# Copyright 2000, International Business Machines Corporation and others. -# All Rights Reserved. -# -# This software has been released under the terms of the IBM Public -# License. For details, see the LICENSE file in the top-level source -# directory or online at http://www.openafs.org/dl/license10.html - -# MakefileProto for HP systems -# - -DESTDIR=DEST/ -include $(DESTDIR)../obj/config/Makefile.${SYS_NAME} - -# OS specific object files: -AFS_OS_OBJS = \ - osi_debug.o \ - osi_groups.o \ - osi_inode.o \ - osi_file.o \ - osi_misc.o \ - osi_sleep.o \ - osi_vnodeops.o \ - osi_vm.o - -AFS_OS_NFSOBJS = \ - osi_vfsops_nfs.o - -AFS_OS_NONFSOBJS = \ - osi_vfsops.o - - -# System specific build commands and flags -# -# Note: the online document -# -# Developing Dynamically Loadable Kernel Modules -# Issue 1.0 -# HP-UX 11.0 -# October 12, 1998 -# -# mentioned on http://docs.hp.com/hpux/os/index.html -# with URL http://docs.hp.com/hpux/content/dlkm_v1.2.pdf -# -# recommends the undocumented +ES1.Xindirect_calls option for both -# 32-bit and 64-bit kernel code, but it appears to be absolutely vital -# for compiling 64-bit kernel code. In 64-bit mode, the ANSI C compiler -# has the +Z (PIC) option on by default, and there is no documented way -# to turn it off. However, kernel code does not work properly when -# compiled with +Z (i.e. calling a function through a function pointer -# seems to hang). When the compiler sees the +ES1.Xindirect_calls -# option, however, it issues a warning and turns off +Z. -# -KDEFS= +ES1.Xindirect_calls +XixdU +Hx0 +ESlit +ESsfc +ESssf -Wp,-H300000 -D_KERNEL -D_KERNEL_BUILD -D_UNSUPPORTED \ - -DMP +R500 -Wl,+k $(CPU_KDEFS) -KDEFS_32 = +DA1.0 +DS1.0 -# add +M2 to $(KDEFS_64) for 64-bit migration warnings -# warning 478: "+Z" and "+ES1.Xindirect_calls" are mutually exclusive. "+Z" ignored. -# warning 530: LP64 migration: Casting from loose to strict alignment: Resulting pointer may be misaligned. -KDEFS_64 = +DA2.0W +DS2.0 +M2 +W 478,530 -DEFINES= -DAFSDEBUG -DKERNEL -DAFS -DVICE -DNFS -DUFS -DINET -DQUOTA -DGETMOUNT -DHPONCPLUS -OPTF=${OPT} -OPTF2=${OPT2} -CFLAGS=-I. -I.. -I../h -I../nfs ${FSINCLUDES} $(DEFINES) $(KDEFS) $(KOPTS) ${DBUG} - -# Name of directory to hold object files and libraries. -KOBJ=STATIC - -# This tells Makefile.common to use its single directory build target. -#COMPDIRS = single_compdir -# This is the hpux multiple directory target. -COMPDIRS = hpux_compdirs - -include Makefile.common - -BITS = 64 32 - -setup: - -rm -f h net dux machine netinet nfs rpc s200 ufs sys - ln -s /usr/include/sys h - ln -s /etc/conf/net net - ln -s /etc/conf/dux dux - ln -s /etc/conf/machine machine - ln -s /etc/conf/netinet netinet - ln -s /etc/conf/nfs nfs - ln -s /usr/include/rpc rpc - ln -s /etc/conf/machine s200 - ln -s /etc/conf/ufs ufs - ln -s /usr/include/sys sys - for b in $(BITS); do \ - for t in $(KOBJ); do \ - dir=$$t.$$b; \ - echo Making directory: $$dir; \ - mkdir -p $$dir; \ - rm -f $$dir/Makefile $$dir/Makefile.common; \ - ln -s ../Makefile $$dir/Makefile; \ - ln -s ../Makefile.common $$dir/Makefile.common; \ - done; \ - done - echo Setup complete. - -# Compile the clients. -${COMPDIRS}: - if false; then \ - for b in $(BITS); do \ - for t in $(KOBJ); do \ - dir=$$t.$$b; \ - echo Building directory: $$dir; \ - case $$b in \ - 32) bopts="$(KDEFS_32)"; bsuff="";; \ - 64) bopts="$(KDEFS_64)"; bsuff="64";; \ - esac; \ - cd $$dir; \ - $(MAKE) BITSUFFIX=$$bsuff CPU_KDEFS="$$bopts" DESTDIR=${DESTDIR} libafs || exit $$?; \ - cd ..; \ - done; \ - done; \ - fi - - -# Below this line are targets when in the static directory: -LIBAFS = libafs$(BITSUFFIX).a -LIBAFSNONFS = libafs$(BITSUFFIX).nonfs.a - - -DEST_LIBAFS = ${DESTDIR}root.client/bin/${LIBAFS} -DEST_LIBAFSNONFS = ${DESTDIR}root.client/bin/${LIBAFSNONFS} - - -# libafs: ${DEST_LIBAFS} ${DEST_LIBAFSNONFS} -libafs: ${DEST_LIBAFSNONFS} - -$(DEST_LIBAFS): $(LIBAFS) - ${INSTALL} -f $? $@ - -$(DEST_LIBAFSNONFS): $(LIBAFSNONFS) - ${INSTALL} -f $? $@ - -${LIBAFS}: $(AFSAOBJS) $(AFSNFSOBJS) - $(AR) cru $@ $? - $(RANLIB) $@ - -${LIBAFSNONFS}: $(AFSAOBJS) $(AFSNONFSOBJS) - $(AR) cru $@ $? - $(RANLIB) $@ - - -# HP specific objects -osi_groups.o: $(AFS)/osi_groups.c - $(CRULE1) -osi_inode.o: $(AFS)/osi_inode.c - $(CRULE1) -osi_file.o: $(AFS)/osi_file.c - $(CRULE1) -osi_misc.o: $(AFS)/osi_misc.c - $(CRULE1) -osi_sleep.o: $(AFS)/osi_sleep.c - $(CRULE1) -osi_vfsops_nfs.o: $(AFS)/osi_vfsops.c - $(CRULE1) -o osi_vfsops_nfs.o -osi_vfsops.o: $(AFS)/osi_vfsops.c - $(CRULE1) -DAFS_NONFSTRANS -osi_vm.o: $(AFS)/osi_vm.c - $(CRULE1) -osi_vnodeops.o: $(AFS)/osi_vnodeops.c - $(CRULE1) - -# This is a list of header files compiled with the -g option. It allows -# examination of AFS structures in a dump. -osi_debug.o: $(AFS)/osi_debug.c - $(CRULE4) - diff --git a/src/libafs/MakefileProto.IRIX b/src/libafs/MakefileProto.IRIX deleted file mode 100644 index 9049f8496..000000000 --- a/src/libafs/MakefileProto.IRIX +++ /dev/null @@ -1,436 +0,0 @@ -# Copyright 2000, International Business Machines Corporation and others. -# All Rights Reserved. -# -# This software has been released under the terms of the IBM Public -# License. For details, see the LICENSE file in the top-level source -# directory or online at http://www.openafs.org/dl/license10.html - -# MakefileProto for IRIX systems -# - -DESTDIR=DEST/ -include $(DESTDIR)../obj/config/Makefile.${SYS_NAME} - - -# OS specific object files: -AFS_OS_OBJS = \ - afs_base64.o \ - osi_groups.o \ - osi_idbg.o \ - osi_file.o \ - osi_inode.o \ - osi_misc.o \ - osi_sleep.o \ - osi_vm.o \ - osi_vnodeops.o - -AFS_OS_NFSOBJS = \ - osi_vfsops_nfs.o - -AFS_OS_NONFSOBJS = \ - osi_vfsops.o - - -# System specific build commands and flags -DBUG=-g - - -MPS=MP SP - -MPS=SP - -MPS=MP - - -# Turning off warnings regarding constant conditionals and not prototyped. -KDEFS=-D_K64U64 -D_KERNEL -DSTATIC=static -D_PAGESZ=16384 -D_MIPS3_ADDRSPACE \ - -DTFP -non_shared -elf -xansi -64 -mips4 -TENV:kernel \ - -TENV:misalignment=1 -OPT:space \ - -D${CPUBOARD} -D${MPSP} -D${CPUARCH} -DAFS_SGIMP_ENV ${NODYNOPT} \ - -jalr -woff 1209,1196,1496 - -# Turning off warnings regarding constant conditionals and not prototyped. -KDEFS_64BIT= -64 -D_K64U64 -D_PAGESZ=16384 -TENV:kernel -OPT:space \ - -TENV:misalignment=1 -R4000_LDFLAGS = -mips3 -64 -R4000_KDEFS = -mips3 -DR4000_DADDIU_WAR -DFAST_LOCORE_TFAULT -DUSE_LGPAGES \ - -DR4000 -DEVEREST -DBADVA_WAR -DMP_R4000_BADVA_WAR \ - -DECC_RECOVER -DCLOCK_CTIME_IS_ABSOLUTE -D_SHAREII -D_HIBERNATORII \ - -DPIOMEMOPS -DULI ${KDEFS_64BIT} -R8000_KDEFS = -mips4 -DTFP -DR8000 ${KDEFS_64BIT} -R8000_LDFLAGS = -mips4 -64 -KDEFS= -I/usr/include -I/usr/include/sys -D_KERNEL -DSTATIC=static \ - -D_MIPS3_ADDRSPACE -non_shared -elf -xansi \ - ${CPU_KDEFS} \ - -D${CPUBOARD} -D${MPSP} -DAFS_SGIMP_ENV ${NODYNOPT} \ - -jalr -woff 1209,1196,1496 -R10000_KDEFS = -mips4 -DR10000 -DEXPRESS -DIP28 -DI2_64 -DFAST_LOCORE_FAULT \ - -DSCACHE_SET_ASSOC=2 -D_NO_UNCACHED_MEM_WAR -DMIPS4_ISA \ - -DR10000_SPECULATION_WAR \ - -OPT:quad_align_branch_targets=FALSE \ - -OPT:quad_align_with_memops=FALSE -OPT:unroll_times=0 \ - -DDEFAULTSEMAMETER=1 ${KDEFS_64BIT} -R10000_LDFLAGS = -mips4 -64 -R4000_32_LDFLAGS = -mips2 -o32 -R4000_32_KDEFS = -mips2 -o32 -elf -DEXPRESS -D_K32U64 -xansi\ - -D_PAGESZ=4096 -D_KERNEL \ - -DSTATIC=static -DBADVA_WAR -DJUMP_WAR -DPROBE_WAR -D_MEM_PARITY_WAR \ - -D_TLB_LOOP_LIMIT -DTLBMOD_BADVADDR_WAR -D_VCE_AVOIDANCE \ - -D_R4600_CACHEOP_WAR -D_R4600_2_0_CACHEOP_WAR -D_IRIX5_MIPS3 \ - -D_IRIX5_MIPS4 -D_R5000_BADVADDR_WAR -D_R5000_JUMP_WAR -DMIPS4_ISA \ - -DR4000 -DR4000PC -DR4600 -DR4600SC -DTRITON -DTRITON_INDYSC \ - -Wc,-pic0 -fullwarn -non_shared -nostdinc -Wf,-XNp12000 \ - -woff 1685,515,608,658,799,803,835,852,1048,1233,1499,1501 \ - -DDEFAULTSEMAMETER=1 - -# Turning off warnings regarding constant conditionals and not prototyped. -# NOTE: Only for R5000 at the moment. -KDEFS= -I/usr/include -I/usr/include/sys -D_KERNEL -DSTATIC=static \ - -non_shared -elf -xansi \ - ${CPU_KDEFS} \ - -D${CPUBOARD} -D${MPSP} -DAFS_SGIMP_ENV ${NODYNOPT} \ - -jalr -woff 1209,1196,1496 -R5000_LDFLAGS = -mips2 -o32 -R5000_KDEFS = -DCRIME -DIP32 -DCRM -D_K32U64 -xansi -D_PAGESZ=4096 \ - -D_KERNEL -DSTATIC=static -DPROBE_WAR -D_VCE_AVOIDANCE -DTILE_DATA \ - -D_VCE_AVOIDANCE_DEBUG -D_R4600_CACHEOP_WAR -D_TLB_LOOP_LIMIT \ - -D_R4600_2_0_CACHEOP_WAR -DP0_WAR -D_IRIX5_MIPS4 -D_IRIX5_MIPS3 \ - -D_R5000_BADVADDR_WAR -DMIPS4_ISA -DSW_FAST_CACHE_SYNCH -DSWASH \ - -D_R5000_CVT_WAR=1 -D_MTEXT_VFS -DR4000 -DR4000PC -DR4600 \ - -DR4600SC -DTRITON -g -elf -mips2 -fullwarn -non_shared -nostdinc \ - -mips2 -o32 -woff 1685,515,608,658,799,803,852,1048,1233,1499,1501 \ - -Wf,-XNp12000 -DDEFAULTSEMAMETER=1 -R10000_LDFLAGS = -mips2 -o32 -R10000_KDEFS = -DCRIME -DIP32 -DCRM -D_K32U64 -xansi -D_K32U64 -D_PAGESZ=4096 \ - -D_KERNEL -DSTATIC=static -D_VCE_AVOIDANCE -DTILE_DATA \ - -DTLBMOD_BADVADDR_WAR -D_VCE_AVOIDANCE_DEBUG -D_TLB_LOOP_LIMIT \ - -DP0_WAR -D_IRIX5_MIPS4 -D_IRIX5_MIPS3 -D_R5000_BADVADDR_WAR \ - -DMIPS4_ISA -DSW_FAST_CACHE_SYNCH -DSWASH -DSCACHE_SET_ASSOC=2 \ - -D_R5000_CVT_WAR=1 -D_MTEXT_VFS -DR10000_SPECULATION_WAR \ - -DMH_R10000_SPECULATION_WAR -DSP -DIP32 -DR4000 -DR4000PC -DR4600 \ - -DR4600SC -DTRITON -DR10000 -D_NO_R4000 -g -elf -mips2 -fullwarn \ - -non_shared -nostdinc -mips2 -o32 \ - -woff 1685,515,608,658,799,803,852,1048,1233,1499,1501 \ - -Wf,-XNp12000 -DDEFAULTSEMAMETER=1 - -KDEFS= -I/usr/include -I/usr/include/sys -D_KERNEL -DSTATIC=static \ - -non_shared -elf -xansi \ - ${CPU_KDEFS} \ - -D${CPUBOARD} -D${MPSP} -DAFS_SGIMP_ENV ${NODYNOPT} \ - -jalr -woff 1209,1196,1496 -R10000_LDFLAGS = -mips4 -64 -R10000_KDEFS = -DKONA -DIP27 -DIP27 -DDISCONTIG_PHYSMEM -DNUMA_BASE -DNUMA_PM \ - -DNUMA_TBORROW -DNUMA_MIGR_CONTROL -DNUMA_REPLICATION \ - -DNUMA_REPL_CONTROL -DNUMA_SCHED -DLARGE_CPU_COUNT -DHUB2_NACK_WAR \ - -DBRIDGE_ERROR_INTR_WAR -DMAPPED_KERNEL -DBHV_SYNCH -DHUB_ERR_STS_WAR \ - -DHUB_MIGR_WAR -DNCR16C550 -DTL16PIR552 -DSN0_INTR_BROKEN -DFRU \ - -DFORCE_ERRORS -DSN0_USE_BTE -DBTE_BZERO_WAR -DREV1_BRIDGE_SUPPORTED \ - -DHUB_II_IFDR_WAR -xansi -DDISCONTIG_PHYSMEM -DNUMA_BASE -DNUMA_PM \ - -DNUMA_TBORROW -DNUMA_MIGR_CONTROL -DNUMA_REPLICATION \ - -DNUMA_REPL_CONTROL -DNUMA_SCHED -DLARGE_CPU_COUNT -DHUB2_NACK_WAR \ - -DBRIDGE_ERROR_INTR_WAR -DMAPPED_KERNEL -DBHV_SYNCH \ - -DHUB_ERR_STS_WAR -DHUB_MIGR_WAR -DNCR16C550 -DTL16PIR552 \ - -DSN0_INTR_BROKEN -DFRU -DFORCE_ERRORS -DSN0_USE_BTE -DBTE_BZERO_WAR \ - -DREV1_BRIDGE_SUPPORTED -DHUB_II_IFDR_WAR -D_PAGESZ=16384 -D_KERNEL \ - -DSTATIC=static -D_MIPS3_ADDRSPACE -DSN0 -DMIPS4_ISA \ - -DCLOCK_CTIME_IS_ABSOLUTE -DFAST_LOCORE_TFAULT -DULI -DCKPT \ - -DIDLESTACK_FASTINT -DR10K_LLSC_WAR -DPTE_64BIT -DRMAPS \ - -DPAGE_MIGRATION -DSW_FAST_CACHE_SYNCH -DINTR_KTHREADS \ - -DMRSP_AS_MR -D_MP_NETLOCKS -DMP_STREAMS=1 -DIP27 -DR10000 \ - -g -TENV:kernel -TENV:misalignment=1 -OPT:space \ - -OPT:quad_align_branch_targets=FALSE \ - -OPT:quad_align_with_memops=FALSE \ - -OPT:unroll_times=0 -OPT:Olimit=5000 -TARG:processor=r10000 \ - -FE:pointer_readonly -use_readonly_const -fullwarn \ - -non_shared -mips4 -64 \ - -woff 1685,515,608,658,799,803,852,1048,1233,1499,1501 \ - -DDEFAULTSEMAMETER=1 - -# For Irix 6.5 we are building based on cpu board number rather than CPU number -# While -G 8 is recommended for space, we know that the table overflows when -# both AFS and DFS are compiled into the kernel. For Irix 6.5, define MP -# so we pick up locks. -KDEFS= -I/usr/include -I/usr/include/sys -DSTATIC=static -DAFS_SGIMP_ENV \ - -DMP -D_KERNEL -DMP_STREAMS -D_MP_NETLOCKS -DMRSP_AS_MR \ - -fullwarn -non_shared -G 0 \ - -TENV:kernel -OPT:space -OPT:Olimit=0 -CG:unique_exit=on \ - -TENV:X=1 -OPT:IEEE_arithmetic=1 -OPT:roundoff=0 \ - -OPT:wrap_around_unsafe_opt=off \ - ${CPU_KDEFS} -woff 1209,1196,1496 -# 32 bit specific flags: -KDEFS_32 = -n32 -D_PAGESZ=4096 -mips3 -# 64 bit specific flags: -KDEFS_64 = -64 -D_PAGESZ=16384 -D_MIPS3_ADDRSPACE -mips4 - -# CPU board specific flags: -IP19_KDEFS = -DIP19 -DEVEREST -DMP -DR4000 \ - -mips3 -D_PAGESZ=16384 -D_MIPS3_ADDRSPACE -64 -IP20_KDEFS = -DIP20 -DR4000 -DJUMP_WAR -DBADVA_WAR -DTRITON -DUSE_PCI_PIO \ - $(KDEFS_32) -IP21_KDEFS = -DIP21 -DEVEREST -DMP -DTFP -TARG:processor=r8000 $(KDEFS_64) -IP25_KDEFS = -DIP25 -DEVEREST -DMP -DR10000 -TARG:processor=r10000 $(KDEFS_64) -IP26_KDEFS = -DIP26 -DTFP -TARG:sync=off -TARG:processor=r8000 $(KDEFS_64) -IP27_KDEFS = -DIP27 -DR10000 -DMP -DSN -DSN0 -DMAPPED_KERNEL \ - -DLARGE_CPU_COUNT \ - -DPTE_64BIT -DULI -DCKPT -DMIPS4_ISA -DR10K_LLSC_WAR -DNUMA_BASE \ - -DNUMA_PM -DNUMA_TBORROW -DNUMA_MIGR_CONTROL -DNUMA_REPLICATION \ - -DNUMA_REPL_CONTROL -DNUMA_SCHED -DCELL_PREPARE -DBHV_PREPARE \ - -TARG:processor=r10000 $(KDEFS_64) -IP28_KDEFS = -DIP28 -DR10000 -DSCACHE_SET_ASSOC=2 -D_NO_UNCACHED_MEM_WAR \ - -DR10000_SPECULATION_WAR -TARG:processor=r10000 \ - -TARG:t5_no_spec_stores $(KDEFS_64) -IP30_KDEFS = -DIP30 -DR10000 -DMP -DCELL_PREPARE -DBHV_PREPARE \ - -TARG:processor=r10000 $(KDEFS_64) -# Loader flags -LDFLAGS_64 = -64 -LDFLAGS_32 = -n32 - - - -DEFINES= -DAFSDEBUG -DKERNEL -DAFS -DVICE -DNFS -DUFS -DINET -DQUOTA -DGETMOUNT -OPTF=${OPT} -OPTF2=${OPT2} -CFLAGS=-I. -I.. ${FSINCLUDES} $(DEFINES) -G 0 $(KDEFS) $(KOPTS) ${DBUG} - -# This tells Makefile.common to use it's single directory build target. -#COMPDIRS = single_compdir -# This is the irix multiple directory target. -COMPDIRS = irix_compdirs - -include Makefile.common - -# Make all the directories, even if only building one. - -PROCESSORS=R4000 R4000_32 R8000 R10000 - -PROCESSORS = R5000 R1000 - -PROCESSORS = R10000 - -PROCESSORS = IP19 IP20 IP21 IP25 IP26 IP27 IP28 IP30 - - -KOBJ = STATIC MODLOAD - - -setup: - -rm -f h net netinet rpc ufs nfs machine sys sgiefs - -ln -s /usr/include/sys h - -ln -s /usr/include/net /usr/include/netinet . - -ln -s /usr/include/rpc /usr/include/sys . - -ln -s /usr/include/sys/fs . - -mkdir ${DESTDIR}root.client/bin - -mkdir ${DESTDIR}root.client/usr/vice/etc/sgiload - - BUILDPROCS="${PROCESSORS}" ; \ - BUILDMPS="${MPS}" ; \ - if [ "${CPUARCH}" != "" ] ; then \ - BUILDPROCS=${CPUARCH}; \ - BUILDMPS=${MPSP}; \ - fi ; \ - for p in $${BUILDPROCS} ; do \ - for n in $${BUILDMPS} ; do \ - for t in ${KOBJ} ; do \ - dir=$$t.$$n.$$p ; \ - echo Making directory: $$dir; \ - mkdir -p $$dir; \ - rm -f $$dir/Makefile.common $$dir/Makefile; \ - ln -s ../Makefile.common $$dir/Makefile.common; \ - ln -s ../Makefile $$dir/Makefile; \ - done; \ - done; \ - done - - BUILDPROCS="${PROCESSORS}" ; \ - if [ "${IPNO}" != "" ] ; then \ - BUILDPROCS="${IPNO}"; \ - fi ; \ - for p in $${BUILDPROCS} ; do \ - for t in ${KOBJ} ; do \ - dir=$$t.$$p ; \ - echo Making directory: $$dir; \ - mkdir -p $$dir; \ - rm -f $$dir/Makefile.common $$dir/Makefile; \ - ln -s ../Makefile.common $$dir/Makefile.common; \ - ln -s ../Makefile $$dir/Makefile; \ - done; \ - done - - echo Setup compelete. - - -# Compile static and modload versions of the clients. - -${COMPDIRS}: - BUILDPROCS="${PROCESSORS}" ; \ - if [ "${CPUARCH}" != "" ] ; then \ - BUILDPROCS=${CPUARCH}; \ - BUILDMPS=${MPSP}; \ - fi ; \ - for p in $${BUILDPROCS} ; do \ - for n in $${BUILDMPS} ; do \ - for t in ${KOBJ} ; do \ - dir=$$t.$$n.$$p ; \ - echo Building directory: $$dir; \ - case $$p in \ - R4000) \ - CPUBOARD=IP19; \ - CPU_KDEFS="${R4000_KDEFS}"; \ - LDFLAGS="${R4000_LDFLAGS}";; \ - R4000_32) \ - CPUBOARD=IP22; \ - CPU_KDEFS="${R4000_32_KDEFS}"; \ - LDFLAGS="${R4000_32_LDFLAGS}";; \ - R5000) \ - CPUBOARD=IP32; \ - CPU_KDEFS="${R5000_KDEFS}"; \ - LDFLAGS="${R5000_LDFLAGS}";; \ - R8000) \ - CPUBOARD=IP26; \ - CPU_KDEFS="${R8000_KDEFS}"; \ - LDFLAGS="${R8000_LDFLAGS}";; \ - R10000) \ - - CPUBOARD=IP28; \ - - CPUBOARD=IP32; \ - - CPUBOARD=IP27; \ - - CPU_KDEFS="${R10000_KDEFS}"; \ - LDFLAGS="${R10000_LDFLAGS}";; \ - *) echo "Unknown CPUARCH <$$p>" ; exit 1 ;; \ - esac ;\ - export CPUBOARD ;\ - export CPU_KDEFS ;\ - export LDFLAGS; \ - cd $$dir ; \ - $(MAKE) CPUARCH=$$p MPSP=$$n DESTDIR=../${DESTDIR} $$t.libafs || exit $$?;\ - cd ../ ; \ - done; \ - done; \ - done - -${COMPDIRS}: - BUILDPROCS="${PROCESSORS}" ; \ - if [ "${IPNO}" != "" ] ; then \ - BUILDPROCS="${IPNO}"; \ - fi ; \ - for p in $${BUILDPROCS} ; do \ - for t in ${KOBJ} ; do \ - dir=$$t.$$p ; \ - echo Building directory: $$dir; \ - LDFLAGS="${LDFLAGS_64}"; \ - case $$p in \ - IP19) CPU_KDEFS="${IP19_KDEFS}";; \ - IP20) CPU_KDEFS="${IP20_KDEFS}"; \ - LDFLAGS="${LDFLAGS_32}";; \ - IP21) CPU_KDEFS="${IP21_KDEFS}";; \ - IP25) CPU_KDEFS="${IP25_KDEFS}";; \ - IP26) CPU_KDEFS="${IP26_KDEFS}";; \ - IP27) CPU_KDEFS="${IP27_KDEFS}";; \ - IP28) CPU_KDEFS="${IP28_KDEFS}";; \ - IP30) CPU_KDEFS="${IP30_KDEFS}";; \ - *) echo Unknown IP number $$p ; exit 1 ;; \ - esac ;\ - case $$t in \ - MODLOAD) CPU_KDEFS="$${CPU_KDEFS} -TARG:force_jalr";; \ - esac ;\ - case $$t in \ - STATIC) echo X $${CPU_KDEFS} | sed 's/^X//' > $$dir/CPU_KDEFS;; \ - esac ;\ - export CPU_KDEFS ;\ - export LDFLAGS ;\ - cd $$dir ; \ - $(MAKE) IPNO=$$p DESTDIR=${DESTDIR} $$t.libafs || exit $$?; \ - cd ../ ; \ - done; \ - done - - - -LIBAFSNONFSA = libafs.nonfs.a -COPYFILES = copyfiles -LINKFILES = linkfiles - -STATICCLIENTDIR = ${DESTDIR}root.client/bin -MODLOADCLIENTDIR = ${DESTDIR}root.client/usr/vice/etc/sgiload - -# Make the NFS and no-NFS clients for this directory. -# STATIC.libafs: ${LIBAFSNONFSA} ${COPYFILES} ${LINKFILES} -STATIC.libafs: ${LIBAFSNONFSA} ${COPYFILES} ${LINKFILES} - - ${CP} ${LIBAFSNONFSA} \ - ${STATICCLIENTDIR}/libafs.${MPSP}.${CPUARCH}.nonfs.a - - ${CP} ${LIBAFSNONFSA} \ - ${STATICCLIENTDIR}/libafs.${IPNO}.nonfs.a - - -${LIBAFSNONFSA}: $(AFSAOBJS) $(AFSNONFSOBJS) - $(AR) cru $@ $? - -LIBAFSNONFSO = libaf.nonfs.o - -# MODLOAD.libafs: ${LIBAFSNONFSO} ${COPYFILES} ${LINKFILES} -MODLOAD.libafs: ${LIBAFSNONFSO} ${COPYFILES} ${LINKFILES} - - ${CP} ${LIBAFSNONFSO} \ - ${MODLOADCLIENTDIR}/libafs.${MPSP}.${CPUARCH}.nonfs.o - - ${CP} ${LIBAFSNONFSO} \ - ${MODLOADCLIENTDIR}/libafs.${IPNO}.nonfs.o - - -${LIBAFSNONFSO}: $(AFSAOBJS) $(AFSNONFSOBJS) - $(LD) ${LDFLAGS} -elf -r -d -G 0 -o ${LIBAFSNONFSO} \ - $(AFSAOBJS) $(AFSNONFSOBJS) - -${COPYFILES}: - ${CP} ../sgi_system ${STATICCLIENTDIR}/afs.sm - chmod 644 ${STATICCLIENTDIR}/afs.sm - ${CP} ../sgi_master ${STATICCLIENTDIR}/afs - chmod 644 ${STATICCLIENTDIR}/afs - -# Create symlinks to clients we don't need to build. -# If this changes, also change the kdump symlinks. -${LINKFILES}: - - ln -fs libafs.IP20.a ${DESTDIR}root.client/bin/libafs.IP22.a - ln -fs libafs.IP20.a ${DESTDIR}root.client/bin/libafs.IP32.a - ln -fs libafs.IP20.nonfs.a ${DESTDIR}root.client/bin/libafs.IP22.nonfs.a - ln -fs libafs.IP20.nonfs.a ${DESTDIR}root.client/bin/libafs.IP32.nonfs.a - ln -fs libafs.IP20.o ${DESTDIR}root.client/usr/vice/etc/sgiload/libafs.IP22.o - ln -fs libafs.IP20.o ${DESTDIR}root.client/usr/vice/etc/sgiload/libafs.IP32.o - ln -fs libafs.IP20.nonfs.o ${DESTDIR}root.client/usr/vice/etc/sgiload/libafs.IP22.nonfs.o - ln -fs libafs.IP20.nonfs.o ${DESTDIR}root.client/usr/vice/etc/sgiload/libafs.IP32.nonfs.o - - - - -# Object build rules: -# Common objects -afs_base64.o: $(AFS)/afs_base64.c - $(CRULE1); -osi_groups.o: $(AFS)/osi_groups.c - $(CRULE1); -osi_idbg.o: $(AFS)/osi_idbg.c - $(CRULE1); -osi_inode.o: $(AFS)/osi_inode.c - $(CRULE1); -osi_file.o: $(AFS)/osi_file.c - $(CRULE1); -osi_misc.o: $(AFS)/osi_misc.c - $(CRULE1); -osi_sleep.o: $(AFS)/osi_sleep.c - $(CRULE1); -osi_vfsops_nfs.o: $(AFS)/osi_vfsops.c - $(CRULE1) -o osi_vfsops_nfs.o; -osi_vfsops.o: $(AFS)/osi_vfsops.c - $(CRULE1) -DAFS_NONFSTRANS; -osi_vm.o: $(AFS)/osi_vm.c - $(CRULE1); -osi_vnodeops.o: $(AFS)/osi_vnodeops.c - $(CRULE1); - - diff --git a/src/libafs/MakefileProto.LINUX b/src/libafs/MakefileProto.LINUX deleted file mode 100644 index 8ff9bd275..000000000 --- a/src/libafs/MakefileProto.LINUX +++ /dev/null @@ -1,207 +0,0 @@ -# Copyright 2000, International Business Machines Corporation and others. -# All Rights Reserved. -# -# This software has been released under the terms of the IBM Public -# License. For details, see the LICENSE file in the top-level source -# directory or online at http://www.openafs.org/dl/license10.html - -# MakefileProto for Linux i386 systems -# - -DESTDIR=DEST/ -include ../config/Makefile.${SYS_NAME} - -# OS specific object files: -AFS_OS_OBJS = \ - osi_alloc.o \ - osi_cred.o \ - osi_groups.o \ - osi_inode.o \ - osi_file.o \ - osi_misc.o \ - osi_module.o \ - osi_sleep.o \ - osi_vfsops.o \ - osi_vm.o \ - osi_vnodeops.o \ - xdr.o \ - xdr_array.o - -AFS_OS_NFSOBJS = - -AFS_OS_NONFSOBJS = - - -# System specific build commands and flags -CC = gcc -LD = ld -# -Wall - -CCFLAGS = -O2 -fomit-frame-pointer \ - -fno-strength-reduce -pipe -march=i486 -malign-loops=2 -malign-jumps=2 \ - -malign-functions=2 -DEFINES = -D__KERNEL__ -DCPU=586 -DKERNEL -D_KERNEL -DMODULE ${SMP_DEF} ${KDEFINES} - -CCFLAGS = -O2 -fomit-frame-pointer -fno-strength-reduce -pipe -mno-fp-regs -ffixed-8 -DEFINES = -D__KERNEL__ -DKERNEL -D_KERNEL -DMODULE ${SMP_DEF} - -CCFLAGS = -O -fomit-frame-pointer -fno-strength-reduce \ - -fno-strict-aliasing -fsigned-char -DEFINES = -D__KERNEL__ -D__s390__ -DKERNEL -D_KERNEL -DMODULE ${SMP_DEF} - - -LD = ld -m elf32_sparc -CCFLAGS = -O2 -fomit-frame-pointer \ - -fno-strength-reduce -pipe -mcpu=v8 -mno-fpu -fcall-used-g5 -fcall-used-g7 -DEFINES = -D__KERNEL__ -DCPU=sparc -DKERNEL -D_KERNEL -DMODULE ${SMP_DEF} - -CC = sparc64-linux-gcc -LD = ld -m elf64_sparc -CCFLAGS = -O2 -fomit-frame-pointer \ - -fno-strength-reduce -pipe -mcpu=ultrasparc -m64 -mno-fpu -mcmodel=medlow -ffixed-g4 -fcall-used-g5 -fcall-used-g7 -Wno-sign-compare -DEFINES = -D__KERNEL__ -DCPU=sparc64 -DKERNEL -D_KERNEL -DMODULE ${SMP_DEF} - -CCFLAGS = -O2 -fomit-frame-pointer -fno-strength-reduce \ - -fno-strict-aliasing -fsigned-char -msoft-float -pipe \ - -fno-builtin -ffixed-r2 -DEFINES = -D__KERNEL__ -D__powerpc__ -DKERNEL -D_KERNEL -DMODULE ${SMP_DEF} - -INCLUDES = -I. -I../ - -CFLAGS = $(CCFLAGS) $(DEFINES) $(INCLUDES) - -# Name of directory to hold object files and libraries. -KOBJ = MODLOAD -MPS = MP SP - -# To pick up anything we might have missed -include Makefile.extradefs - -# COMPDIRS is called in Makefile.common to do the actual builds. -COMPDIRS=linux_compdirs - - -include Makefile.common - -setup: - -rm -f h net netinet sys rpc - -ln -s rx rpc - for v in notused; do \ - for m in ${MPS} ; do \ - KDIR=$(KOBJ)-$$m; \ - mkdir -p $${KDIR}; \ - ln -fs ../Makefile $${KDIR}/Makefile ; \ - ln -fs ../Makefile.common $${KDIR}/Makefile.common; \ - sh ./redhat.sh ${LINUX_SRCDIR} $${KDIR}/Makefile.extradefs; \ - done \ - done - -# Compile SP and MP clients as requested - -LINUX_INCDIR=include/linux - -${COMPDIRS}: - for v in notused ; do \ - IDIR=${LINUX_SRCDIR}/${LINUX_INCDIR}; \ - rm -f h; \ - ln -s $${IDIR} h; \ - rm -f linux; \ - ln -s $${IDIR} linux; \ - rm -f asm-generic; \ - ln -s ${LINUX_SRCDIR}/include/asm-generic asm-generic; \ - rm -f net; \ - ln -s $${IDIR} net; \ - rm -f netinet; \ - ln -s $${IDIR} netinet; \ - rm -f sys; \ - ln -s $${IDIR} sys; \ - rm -f asm; \ - - ln -s ${LINUX_SRCDIR}/include/asm-alpha asm ; \ - - ln -s ${LINUX_SRCDIR}/include/asm-i386 asm ; \ - - ln -s ${LINUX_SRCDIR}/include/asm-s390 asm ; \ - - ln -s ${LINUX_SRCDIR}/include/asm-ppc asm ; \ - - ln -s ${LINUX_SRCDIR}/include/asm-sparc asm ; \ - - ln -s ${LINUX_SRCDIR}/include/asm-sparc64 asm ; \ - - for m in ${MPS} ; do \ - KDIR=${KOBJ}-$$m ; \ - echo Building in directory: $${KDIR} ; \ - if [ "$$m" = "MP" ] ; then \ - SMP_DEF="-DAFS_SMP -D__BOOT_KERNEL_SMP=1 -D__BOOT_KERNEL_UP=0 -D__SMP__" ; \ - TARG="libafs.mp" ; \ - else \ - SMP_DEF="-D__BOOT_KERNEL_SMP=0 -D__BOOT_KERNEL_UP=1 -U__SMP__" ; \ - TARG=libafs ; \ - fi ; \ - cd $${KDIR} ; \ - $(MAKE) DESTDIR=${DESTDIR} SMP_DEF="$${SMP_DEF}" $${TARG} CLIENT= || exit $$?; \ - cd ../ ; \ - done \ - done - - -# Below this line are targets when in the COMMON directory: -# For Linux there is no kernel NFS server. -LIBAFS = openafs${CLIENT}.o -LIBAFS_MP = openafs${CLIENT}.mp.o - -DEST_LIBAFS = ${DESTDIR}/root.client/usr/vice/etc/modload/${LIBAFS} -DEST_LIBAFS_MP = ${DESTDIR}/root.client/usr/vice/etc/modload/${LIBAFS_MP} - - -libafs: $(DEST_LIBAFS) - echo SP Build Complete - -libafs.mp: $(DEST_LIBAFS_MP) - echo MP Build Complete - -$(DEST_LIBAFS): $(LIBAFS) - ${INSTALL} $? $@ - -$(DEST_LIBAFS_MP): $(LIBAFS_MP) - ${INSTALL} $? $@ - -${LIBAFS}: $(AFSAOBJS) $(AFSNONFSOBJS) - $(RM) -f $@ - $(LD) -r -o $@ $(AFSAOBJS) $(AFSNONFSOBJS) - -${LIBAFS_MP}: $(AFSAOBJS) $(AFSNONFSOBJS) - $(RM) -f $@ - $(LD) -r -o $@ $(AFSAOBJS) $(AFSNONFSOBJS) - - -# Linux specific objects -osi_alloc.o: $(AFS)/osi_alloc.c - $(CRULE1); -osi_cred.o: $(AFS)/osi_cred.c - $(CRULE1); -osi_groups.o: $(AFS)/osi_groups.c - $(CRULE1); -osi_file.o: $(AFS)/osi_file.c - $(CRULE1); -osi_inode.o: $(AFS)/osi_inode.c - $(CRULE1); -osi_misc.o: $(AFS)/osi_misc.c - $(CRULE1); -osi_module.o: $(AFS)/osi_module.c - $(CRULE1); -osi_sleep.o: $(AFS)/osi_sleep.c - $(CRULE1); -osi_vfsops.o: $(AFS)/osi_vfsops.c - $(CRULE1); -osi_vm.o: $(AFS)/osi_vm.c - $(CRULE1); -osi_vnodeops.o: $(AFS)/osi_vnodeops.c - $(CRULE1); -xdr.o: $(RX)/xdr.c - $(CRULE1); -xdr_int64.o: $(RX)/xdr_int64.c - $(CRULE1); -xdr_array.o: $(RX)/xdr_array.c - $(CRULE1); diff --git a/src/libafs/MakefileProto.SOLARIS b/src/libafs/MakefileProto.SOLARIS deleted file mode 100644 index 1c7847d0f..000000000 --- a/src/libafs/MakefileProto.SOLARIS +++ /dev/null @@ -1,160 +0,0 @@ -# Copyright 2000, International Business Machines Corporation and others. -# All Rights Reserved. -# -# This software has been released under the terms of the IBM Public -# License. For details, see the LICENSE file in the top-level source -# directory or online at http://www.openafs.org/dl/license10.html - -# MakefileProto for Solaris systems -# - -include $(DESTDIR)../obj/config/Makefile.${SYS_NAME} - - -# OS specific object files: -AFS_OS_OBJS = \ - osi_groups.o \ - osi_inode.o \ - osi_file.o \ - osi_sleep.o \ - osi_vm.o \ - osi_vnodeops.o - -AFS_OS_NFSOBJS = \ - osi_vfsops_nfs.o - -AFS_OS_NONFSOBJS = \ - osi_vfsops.o - -# System specific build commands and flags -DEFINES= -DAFSDEBUG -DKERNEL -DAFS -DVICE -DNFS -DUFS -DINET -DQUOTA -DGETMOUNT -#These are redundant -#LD = /usr/ccs/bin/ld -#LORDER = /usr/ccs/bin/lorder -#CC = /opt/SUNWspro/bin/cc -KDEFS= -Dsun4c -DSUN4C_60 -DNFSCLIENT -DSYSACCT -DOLDSCSI -DVDDRV -D_KERNEL \ - -DSYSV -dn ${ARCH_DEFS} - - -KDEFS_32 = -KDEFS_64 = -xarch=v9 - - -CFLAGS=-I. -I.. ${FSINCLUDES} $(DEFINES) $(KDEFS) $(KOPTS) ${DBUG} - -# Name of directory to hold object files and libraries. - -KOBJ = MODLOAD - -KOBJ = MODLOAD32 MODLOAD64 - - -# This tells Makefile.common to use it's single directory build target. - -COMPDIRS = single_compdir - - -COMPDIRS = solaris_compdirs - - -include Makefile.common - - -setup: - -rm -f h net netinet rpc ufs nfs machine sys inet - -ln -s /usr/include/sys h - -ln -s /usr/include/net net - -ln -s /usr/include/netinet netinet - -ln -s /usr/include/rpc rpc - -ln -s /usr/include/sys sys - -ln -s /usr/include/nfs nfs - -ln -s /usr/include/inet inet - -ln -s /usr/include/ufs ufs - for t in ${KOBJ} ; do \ - echo Making directory: $$t; \ - mkdir -p $$t; \ - rm -f $$t/Makefile.common $$t/Makefile ; \ - ln -s ../Makefile.common $$t/Makefile.common ; \ - ln -s ../Makefile $$t/Makefile ;\ - done - - -## This is the target for a Solaris 7. Here we build both the 32 bit and -## the 64 bit libafs in MODLOAD32 and MODLOAD64 directories respectively - - -${COMPDIRS}: - for t in ${KOBJ} ; do \ - echo Building directory: $$t ; \ - case $$t in \ - MODLOAD32) \ - ARCH_DEFS="${KDEFS_32}" ; \ - BITS="" ;; \ - MODLOAD64) \ - ARCH_DEFS="${KDEFS_64}" ; \ - BITS="64" ;; \ - esac ; \ - export ARCH_DEFS ; \ - export BITS ; \ - cd $$t ; \ - $(MAKE) DESTDIR=${DESTDIR} libafs ; \ - cd ../ ;\ - done - - - -# Below this line are targets when in the COMMON directory: -LIBAFS = libafs.o -LIBAFSNONFS = libafs.nonfs.o - - -DEST_LIBAFS = ${DESTDIR}/root.client/usr/vice/etc/modload/${LIBAFS} -DEST_LIBAFSNONFS = ${DESTDIR}/root.client/usr/vice/etc/modload/${LIBAFSNONFS} - -# Without this line, gmake tries to build libafs.o -.PHONY: libafs - -# libafs: $(DEST_LIBAFS) $(DEST_LIBAFSNONFS) -libafs: $(DEST_LIBAFSNONFS) - - -$(DEST_LIBAFS): $(LIBAFS) - ${INSTALL} -f $? $@ - -$(DEST_LIBAFSNONFS): $(LIBAFSNONFS) - ${INSTALL} -f $? $@ - - -${LIBAFS}: $(AFSAOBJS) $(AFSNFSOBJS) - $(RM) -f $@ - $(LD) -r -o $@ $(AFSAOBJS) ${AFSNFSOBJS} - -${LIBAFSNONFS}: $(AFSAOBJS) $(AFSNONFSOBJS) - $(RM) -f $@ - $(LD) -r -o $@ $(AFSAOBJS) ${AFSNONFSOBJS} - - -MODLOADDIR = ${DESTDIR}root.client/usr/vice/etc/modload - -libafs: ${LIBAFSNONFS} - ${INSTALL} -f ${LIBAFSNONFS} ${MODLOADDIR}/libafs${BITS}.nonfs.o - - - -# Solaris specific objects -osi_groups.o: $(AFS)/osi_groups.c - $(CRULE1); -osi_inode.o: $(AFS)/osi_inode.c - $(CRULE1); -osi_file.o: $(AFS)/osi_file.c - $(CRULE1); -osi_sleep.o: $(AFS)/osi_sleep.c - $(CRULE1); -osi_vfsops_nfs.o: $(AFS)/osi_vfsops.c - $(CRULE1) -o osi_vfsops_nfs.o; -osi_vfsops.o: $(AFS)/osi_vfsops.c - $(CRULE1) -DAFS_NONFSTRANS; -osi_vm.o: $(AFS)/osi_vm.c - $(CRULE1); -osi_vnodeops.o: $(AFS)/osi_vnodeops.c - $(CRULE1); diff --git a/src/lwp/lwp.c b/src/lwp/lwp.c index 1a40ca8ac..853f5625d 100644 --- a/src/lwp/lwp.c +++ b/src/lwp/lwp.c @@ -125,7 +125,7 @@ int lwp_nextindex; /* Minimum stack size */ int lwp_MinStackSize=0; -static lwp_remove(p, q) +static int lwp_remove(p, q) register PROCESS p; register struct QUEUE *q; { @@ -141,9 +141,10 @@ static lwp_remove(p, q) if (q->head == p) q -> head = p -> next; q->count--; p -> next = p -> prev = NULL; + return 0; } -static insert(p, q) +static int insert(p, q) register PROCESS p; register struct QUEUE *q; { @@ -157,9 +158,10 @@ static insert(p, q) p -> next = q -> head; } q->count++; + return 0; } -static move(p, from, to) +static int move(p, from, to) PROCESS p; struct QUEUE *from, *to; { @@ -167,7 +169,7 @@ static move(p, from, to) lwp_remove(p, from); insert(p, to); - + return 0; } /* Iterator macro */ @@ -520,7 +522,7 @@ int LWP_DispatchProcess() /* explicit voluntary preemption */ } #ifdef DEBUG -Dump_Processes() +int Dump_Processes() { if (lwp_init) { register int i; @@ -532,6 +534,7 @@ Dump_Processes() for_all_elts(x, blocked, { Dump_One_Process(x); }) } else printf("***LWP: LWP support not initialized\n"); + return 0; } #endif @@ -719,6 +722,7 @@ static void Abort_LWP(msg) Exit_LWP(); else savecontext(Exit_LWP, &tempcontext, LWPANCHOR.outersp); + return; } static int Create_Process_Part2 () /* creates a context for the new process */ @@ -730,9 +734,10 @@ static int Create_Process_Part2 () /* creates a context for the new process */ savecontext(Dispatcher, &temp->context, NULL); (*temp->ep)(temp->parm); LWP_DestroyProcess(temp); + return 0; } -static Delete_PCB(pid) /* remove a PCB from the process list */ +static int Delete_PCB(pid) /* remove a PCB from the process list */ register PROCESS pid; { Debug(4, ("Entered Delete_PCB")) @@ -740,10 +745,11 @@ static Delete_PCB(pid) /* remove a PCB from the process list */ ? &blocked : &runnable[pid->priority])); LWPANCHOR.processcnt--; + return 0; } #ifdef DEBUG -static Dump_One_Process(pid) +static int Dump_One_Process(pid) PROCESS pid; { int i; @@ -779,17 +785,19 @@ static Dump_One_Process(pid) } if (pid->wakevent>0) printf("***LWP: Number of last wakeup event: %d\n", pid->wakevent); + return 0; } #endif -static purge_dead_pcbs() +static int purge_dead_pcbs() { for_all_elts(cur, blocked, { if (cur->status == DESTROYED) Dispose_of_Dead_PCB(cur); }) + return 0; } int LWP_TraceProcesses = 0; -static Dispatcher() /* Lightweight process dispatcher */ +static int Dispatcher() /* Lightweight process dispatcher */ { register int i; #ifdef DEBUG @@ -895,7 +903,7 @@ static void Dispose_of_Dead_PCB (cur) */ } -static Exit_LWP() +static int Exit_LWP() { abort(); } @@ -1000,6 +1008,7 @@ static afs_int32 Initialize_Stack(stackptr, stacksize) #else *(afs_int32 *)stackptr = STACKMAGIC; #endif + return 0; } static int Stack_Used(stackptr, stacksize) diff --git a/src/lwp/lwp.h b/src/lwp/lwp.h index e9c13eb48..fcb096f57 100644 --- a/src/lwp/lwp.h +++ b/src/lwp/lwp.h @@ -309,7 +309,9 @@ extern int lwp_MaxStackSeen; /* External function declarations. */ #ifdef AFS_NT40_ENV +#ifndef _MFC_VER /*skip if doing Microsoft foundation class*/ #include +#endif #elif defined(AFS_LINUX20_ENV) #include #include @@ -334,7 +336,8 @@ extern void IOMGR_Sleep(int seconds); extern int IOMGR_Cancel(PROCESS pid); extern int IOMGR_Initialize(void); extern void IOMGR_FreeFDSet(fd_set * fds); -static void SignalTimeout(int code, struct timeval *timeout); +extern int IOMGR_SoftSig( int (*aproc)(), char *arock); + /* fasttime.c */ extern int FT_GetTimeOfDay(struct timeval *tv, struct timezone *tz); @@ -357,11 +360,22 @@ extern int LWP_WaitProcess(void *event); extern int LWP_INTERNALSIGNAL(void *event, int yield); extern int LWP_QWait(void); extern int LWP_QSignal(PROCESS pid); +#else +extern int LWP_CurrentProcess(); +extern int LWP_INTERNALSIGNAL(); +extern int LWP_InitializeProcessSupport(); +extern int LWP_CreateProcess(); +extern int LWP_DestroyProcess(); +extern int LWP_WaitProcess(); +extern PROCESS LWP_ThreadId(); #endif /* max time we are allowed to spend in a select call on NT */ #define IOMGR_MAXWAITTIME 5 /* seconds */ +/* max time we spend on a select in a Win95 DOS box */ +#define IOMGR_WIN95WAITTIME 5000 /* microseconds */ + #endif /* __LWP_INCLUDE_ */ #endif /* !KERNEL && !_KMEMUSER */ diff --git a/src/lwp/preempt.c b/src/lwp/preempt.c index 0b2bf529e..2be09ebd3 100644 --- a/src/lwp/preempt.c +++ b/src/lwp/preempt.c @@ -17,7 +17,7 @@ \*******************************************************************/ #include -#if defined(AFS_LINUX20_ENV) || defined(AFS_DARWIN_ENV) || defined(AFS_FBSD_ENV) +#if defined(AFS_LINUX20_ENV) || defined(AFS_DARWIN_ENV) || defined(AFS_FBSD_ENV) || defined(AFS_DJGPP_ENV) int PRE_Block = 0; #else #include diff --git a/src/lwp/process.c b/src/lwp/process.c index 32aa93869..897cff70a 100644 --- a/src/lwp/process.c +++ b/src/lwp/process.c @@ -12,6 +12,10 @@ #include #include #include "lwp.h" +#include +#ifdef HAVE_STDLIB_H +#include +#endif #if defined(AFS_OSF_ENV) || defined(AFS_S390_LINUX20_ENV) extern int PRE_Block; /* used in lwp.c and process.s */ @@ -80,9 +84,8 @@ static jmp_buf jmp_tmp; static char (*EP)(); static int rc; static jmp_buf_type *jmpBuffer; -static int code; -savecontext(ep, savearea, sp) +afs_int32 savecontext(ep, savearea, sp) char (*ep)(); struct lwp_context *savearea; char* sp; @@ -140,9 +143,10 @@ char* sp; perror("Error in setjmp2 : restoring\n"); exit(3); } + return 0; } -returnto(savearea) +afs_int32 returnto(savearea) struct lwp_context *savearea; { #if defined(DEBUG) @@ -158,5 +162,6 @@ struct lwp_context *savearea; #endif PRE_Block = 0; longjmp(savearea->setjmp_buffer, 2); + return 0; } diff --git a/src/rx/rx.c b/src/rx/rx.c index ae6e505a5..1b2fd0a2d 100644 --- a/src/rx/rx.c +++ b/src/rx/rx.c @@ -11,6 +11,7 @@ #ifdef KERNEL #include "../afs/param.h" +#include #include "../afs/sysincludes.h" #include "../afs/afsincludes.h" #ifndef UKERNEL @@ -67,6 +68,7 @@ extern afs_int32 afs_termState; # include "../afsint/rxgen_consts.h" #else /* KERNEL */ # include +# include # include # include #ifdef AFS_NT40_ENV @@ -81,6 +83,13 @@ extern afs_int32 afs_termState; # include # include #endif +#ifdef HAVE_STRINGS_H +#include +#else +#ifdef HAVE_STRING_H +#include +#endif +#endif # include "rx.h" # include "rx_user.h" # include "rx_clock.h" @@ -91,10 +100,6 @@ extern afs_int32 afs_termState; # include #endif /* KERNEL */ -#ifdef RXDEBUG -extern afs_uint32 LWP_ThreadId(); -#endif /* RXDEBUG */ - int (*registerProgram)() = 0; int (*swapNameProgram)() = 0; @@ -217,8 +222,6 @@ assert(pthread_once(&rx_once_init, rxi_InitPthread)==0); #define INIT_PTHREAD_LOCKS #endif -extern void rxi_DeleteCachedConnections(void); - /* Variables for handling the minProcs implementation. availProcs gives the * number of threads available in the pool at this moment (not counting dudes @@ -242,11 +245,8 @@ extern void rxi_DeleteCachedConnections(void); * to manipulate the queue. */ -extern void rxi_Delay(int); - -static int rxi_ServerThreadSelectingCall; - #ifdef RX_ENABLE_LOCKS +static int rxi_ServerThreadSelectingCall; static afs_kmutex_t rx_rpc_stats; void rxi_StartUnlocked(); #endif @@ -296,8 +296,6 @@ void osirx_AssertMine(afs_kmutex_t *lockaddr, char *msg); #define CLEAR_CALL_QUEUE_LOCK(C) #endif /* RX_ENABLE_LOCKS */ static void rxi_DestroyConnectionNoLock(); -void rxi_DestroyConnection(); -void rxi_CleanupConnection(); struct rx_serverQueueEntry *rx_waitForPacket = 0; /* ------------Exported Interfaces------------- */ @@ -360,6 +358,10 @@ int rx_Init(u_int port) char *htable, *ptable; int tmp_status; +#if defined(AFS_DJGPP_ENV) && !defined(DEBUG) + __djgpp_set_quiet_socket(1); +#endif + SPLVAR; INIT_PTHREAD_LOCKS @@ -562,7 +564,7 @@ register struct rx_service *aservice; } #else /* RX_ENABLE_LOCKS */ -static QuotaOK(aservice) +static int QuotaOK(aservice) register struct rx_service *aservice; { int rc=0; /* under min quota, we're OK */ @@ -621,7 +623,7 @@ void rxi_StartServerProcs(nExistingProcs) void rx_StartServer(donateMe) { register struct rx_service *service; - register int i, nProcs; + register int i, nProcs=0; SPLVAR; clock_NewTime(); @@ -658,14 +660,13 @@ void rx_StartServer(donateMe) if (donateMe) { #ifndef AFS_NT40_ENV #ifndef KERNEL - int code; char name[32]; #ifdef AFS_PTHREAD_ENV pid_t pid; - pid = pthread_self(); + pid = (pid_t) pthread_self(); #else /* AFS_PTHREAD_ENV */ PROCESS pid; - code = LWP_CurrentProcess(&pid); + LWP_CurrentProcess(&pid); #endif /* AFS_PTHREAD_ENV */ sprintf(name,"srv_%d", ++nProcs); @@ -859,7 +860,7 @@ static void rxi_DestroyConnectionNoLock(conn) MUTEX_EXIT(&rx_stats_mutex); } - if (conn->refCount > 0) { + if ((conn->refCount > 0) || (conn->flags & RX_CONN_BUSY)) { /* Busy; wait till the last guy before proceeding */ MUTEX_EXIT(&conn->conn_data_lock); USERPRI; @@ -1069,6 +1070,7 @@ struct rx_call *rx_NewCall(conn) return call; } +int rxi_HasActiveCalls(aconn) register struct rx_connection *aconn; { register int i; @@ -1077,7 +1079,7 @@ register struct rx_connection *aconn; { NETPRI; for(i=0; icall[i]) { + if ((tcall = aconn->call[i])) { if ((tcall->state == RX_STATE_ACTIVE) || (tcall->state == RX_STATE_PRECALL)) { USERPRI; @@ -1089,6 +1091,7 @@ register struct rx_connection *aconn; { return 0; } +int rxi_GetCallNumberVector(aconn, aint32s) register struct rx_connection *aconn; register afs_int32 *aint32s; { @@ -1107,6 +1110,7 @@ register afs_int32 *aint32s; { return 0; } +int rxi_SetCallNumberVector(aconn, aint32s) register struct rx_connection *aconn; register afs_int32 *aint32s; { @@ -1372,12 +1376,12 @@ osi_socket *socketp; { struct rx_serverQueueEntry *sq; register struct rx_call *call = (struct rx_call *) 0, *choice2; - struct rx_service *service; + struct rx_service *service = NULL; SPLVAR; MUTEX_ENTER(&freeSQEList_lock); - if (sq = rx_FreeSQEList) { + if ((sq = rx_FreeSQEList)) { rx_FreeSQEList = *(struct rx_serverQueueEntry **)sq; MUTEX_EXIT(&freeSQEList_lock); } else { /* otherwise allocate a new one and return that */ @@ -1528,14 +1532,14 @@ rx_GetCall(tno, cur_service, socketp) { struct rx_serverQueueEntry *sq; register struct rx_call *call = (struct rx_call *) 0, *choice2; - struct rx_service *service; + struct rx_service *service = NULL; SPLVAR; NETPRI; AFS_RXGLOCK(); MUTEX_ENTER(&freeSQEList_lock); - if (sq = rx_FreeSQEList) { + if ((sq = rx_FreeSQEList)) { rx_FreeSQEList = *(struct rx_serverQueueEntry **)sq; MUTEX_EXIT(&freeSQEList_lock); } else { /* otherwise allocate a new one and return that */ @@ -1759,6 +1763,7 @@ afs_int32 rx_EndCall(call, rc) MUTEX_ENTER(&conn->conn_call_lock); MUTEX_ENTER(&call->lock); MUTEX_ENTER(&conn->conn_data_lock); + conn->flags |= RX_CONN_BUSY; if (conn->flags & RX_CONN_MAKECALL_WAITING) { conn->flags &= (~RX_CONN_MAKECALL_WAITING); MUTEX_EXIT(&conn->conn_data_lock); @@ -1797,8 +1802,10 @@ afs_int32 rx_EndCall(call, rc) CALL_RELE(call, RX_CALL_REFCOUNT_BEGIN); MUTEX_EXIT(&call->lock); - if (conn->type == RX_CLIENT_CONNECTION) + if (conn->type == RX_CLIENT_CONNECTION) { MUTEX_EXIT(&conn->conn_call_lock); + conn->flags &= ~RX_CONN_BUSY; + } AFS_RXGUNLOCK(); USERPRI; /* @@ -3216,7 +3223,6 @@ struct rx_packet *rxi_ReceiveAckPacket(call, np, istack) afs_uint32 serial; /* because there are CM's that are bogus, sending weird values for this. */ afs_uint32 skew = 0; - int needRxStart = 0; int nbytes; int missing; int acked; @@ -3253,8 +3259,9 @@ struct rx_packet *rxi_ReceiveAckPacket(call, np, istack) if (rx_Log) { fprintf( rx_Log, "RACK: reason %x previous %u seq %u serial %u skew %d first %u", - ap->reason, ntohl(ap->previousPacket), np->header.seq, serial, - skew, ntohl(ap->firstPacket)); + ap->reason, ntohl(ap->previousPacket), + (unsigned int) np->header.seq, (unsigned int) serial, + (unsigned int) skew, ntohl(ap->firstPacket)); if (nAcks) { int offset; for (offset = 0; offset < nAcks; offset++) @@ -4440,8 +4447,8 @@ struct rx_packet *rxi_SendAck(call, optionalPacket, seq, serial, pflags, reason, #ifdef RXDEBUG if (rx_Log) { fprintf(rx_Log, "SACK: reason %x previous %u seq %u first %u", - ap->reason, ntohl(ap->previousPacket), p->header.seq, - ntohl(ap->firstPacket)); + ap->reason, ntohl(ap->previousPacket), + (unsigned int) p->header.seq, ntohl(ap->firstPacket)); if (ap->nAcks) { for (offset = 0; offset < ap->nAcks; offset++) putc(ap->acks[offset] == RX_ACK_TYPE_NACK? '-' : '*', rx_Log); @@ -5306,7 +5313,6 @@ void rxi_ComputeRoundTripTime(p, sentp, peer) struct timeval temptime; #endif register int rtt_timeout; - static char id[]="@(#)adaptive RTO"; #if defined(AFS_ALPHA_LINUX20_ENV) && defined(AFS_PTHREAD_ENV) && !defined(KERNEL) /* yet again. This was the worst Heisenbug of the port - stroucki */ @@ -5736,7 +5742,7 @@ rxi_DebugPrint(format, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, { struct clock now; clock_GetTime(&now); - fprintf(rx_Log, " %u.%.3u:", now.sec, now.usec/1000); + fprintf(rx_Log, " %u.%.3u:", (unsigned int) now.sec, (unsigned int) now.usec/1000); fprintf(rx_Log, format, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15); putc('\n', rx_Log); } @@ -5765,9 +5771,8 @@ void rx_PrintTheseStats (file, s, size, freePackets, version) } fprintf(file, - "rx stats: free packets %d, " - "allocs %d, ", - freePackets, + "rx stats: free packets %d, allocs %d, ", + (int) freePackets, s->packetRequests); if (version >= RX_DEBUGI_VERSION_W_NEWPACKETTYPES) { @@ -5847,7 +5852,7 @@ void rx_PrintTheseStats (file, s, size, freePackets, version) " \t(these should be small) sendFailed %d, " "fatalErrors %d\n", s->netSendFailures, - s->fatalErrors); + (int) s->fatalErrors); if (s->nRttSamples) { fprintf(file, @@ -5899,10 +5904,10 @@ struct rx_peer *peer; "Burst size %d, " "burst wait %u.%d.\n", ntohl(peer->host), - peer->port, - peer->burstSize, - peer->burstWait.sec, - peer->burstWait.usec); + (int) peer->port, + (int) peer->burstSize, + (int) peer->burstWait.sec, + (int) peer->burstWait.usec); fprintf(file, " Rtt %d, " @@ -5910,8 +5915,8 @@ struct rx_peer *peer; "total sent %d, " "resent %d\n", peer->rtt, - peer->timeout.sec, - peer->timeout.usec, + (int) peer->timeout.sec, + (int) peer->timeout.usec, peer->nSent, peer->reSends); @@ -5920,8 +5925,8 @@ struct rx_peer *peer; "max in packet skew %d, " "max out packet skew %d\n", peer->ifMTU, - peer->inPacketSkew, - peer->outPacketSkew); + (int) peer->inPacketSkew, + (int) peer->outPacketSkew); } #ifdef AFS_PTHREAD_ENV @@ -6241,7 +6246,6 @@ afs_int32 rx_GetServerPeers( { struct rx_debugIn in; afs_int32 rc = 0; - int i; /* * supportedValues is currently unused, but added to allow future @@ -6399,7 +6403,7 @@ void shutdown_rx(void) MUTEX_ENTER(&freeSQEList_lock); - while (np = rx_FreeSQEList) { + while ((np = rx_FreeSQEList)) { rx_FreeSQEList = *(struct rx_serverQueueEntry **)np; MUTEX_DESTROY(&np->lock); rxi_Free(np, sizeof(*np)); @@ -6596,7 +6600,8 @@ static int rxi_AddRpcStat( * queue. */ - if ((rpc_stat == NULL) || + if (queue_IsEnd(stats, rpc_stat) || + (rpc_stat == NULL) || (rpc_stat->stats[0].interfaceId != rxInterface) || (rpc_stat->stats[0].remote_is_server != isServer)) { int i; @@ -6897,9 +6902,6 @@ int rx_RetrieveProcessRPCStats( ptr = *stats = (afs_uint32 *) rxi_Alloc(space); if (ptr != NULL) { - register struct rx_peer *pp; - int i; - int num_copied = 0; rx_interface_stat_p rpc_stat, nrpc_stat; @@ -7002,8 +7004,6 @@ int rx_RetrievePeerRPCStats( ptr = *stats = (afs_uint32 *) rxi_Alloc(space); if (ptr != NULL) { - int i; - int num_copied = 0; rx_interface_stat_p rpc_stat, nrpc_stat; char *fix_offset; diff --git a/src/rx/rx_clock.h b/src/rx/rx_clock.h index 65a6663f2..e7d9e664c 100644 --- a/src/rx/rx_clock.h +++ b/src/rx/rx_clock.h @@ -104,11 +104,11 @@ extern void clock_UpdateTime(); #endif /* AFS_PTHREAD_ENV */ /* Some comparison operators for clock values */ -#define clock_Gt(a, b) ((a)->sec>(b)->sec || (a)->sec==(b)->sec && (a)->usec>(b)->usec) -#define clock_Ge(a, b) ((a)->sec>(b)->sec || (a)->sec==(b)->sec && (a)->usec>=(b)->usec) +#define clock_Gt(a, b) ((a)->sec>(b)->sec || ((a)->sec==(b)->sec && (a)->usec>(b)->usec)) +#define clock_Ge(a, b) ((a)->sec>(b)->sec || ((a)->sec==(b)->sec && (a)->usec>=(b)->usec)) #define clock_Eq(a, b) ((a)->sec==(b)->sec && (a)->usec==(b)->usec) -#define clock_Le(a, b) ((a)->sec<(b)->sec || (a)->sec==(b)->sec && (a)->usec<=(b)->usec) -#define clock_Lt(a, b) ((a)->sec<(b)->sec || (a)->sec==(b)->sec && (a)->usec<(b)->usec) +#define clock_Le(a, b) ((a)->sec<(b)->sec || ((a)->sec==(b)->sec && (a)->usec<=(b)->usec)) +#define clock_Lt(a, b) ((a)->sec<(b)->sec || ((a)->sec==(b)->sec && (a)->usec<(b)->usec)) /* Is the clock value zero? */ #define clock_IsZero(c) ((c)->sec == 0 && (c)->usec == 0) diff --git a/src/venus/Makefile b/src/venus/Makefile index 6f0a918f0..3802d3316 100644 --- a/src/venus/Makefile +++ b/src/venus/Makefile @@ -13,7 +13,7 @@ include ../config/Makefile.${SYS_NAME} INSTALLex = ${INSTALL} -m 755 CCXPG2= /usr/xpg2bin/cc -CFLAGS = ${OPTMZ} -I${DESTDIR}include -I${SRCDIR}include ${XCFLAGS} +CFLAGS = ${OPTMZ} -I${DESTDIR}include -I${TOP_SRCDIR}/config -I${SRCDIR}include ${XCFLAGS} INCLS = ${DESTDIR}include/afs/afsint.h \ ${DESTDIR}include/afs/cmd.h \ @@ -275,7 +275,7 @@ kdump64 : kdump64.o esac clean: - rm -f *.o *.a up fs core cmdebug AFS_component_version_number.c + rm -f *.o *.a up fs core cmdebug AFS_component_version_number.c fstrace gcpags beancount: wc -l *.c *.h diff --git a/src/vol/partition.c b/src/vol/partition.c index ab012faee..0ed0fa24a 100644 --- a/src/vol/partition.c +++ b/src/vol/partition.c @@ -291,7 +291,7 @@ int VCheckPartition(part, devname) Log("This program is compiled without AFS_NAMEI_ENV, but partition %s seems to contain volumes which use the namei-interface; aborting\n", part); return -1; } -#endif /* AFS_NAMEI_ENV */f +#endif /* AFS_NAMEI_ENV */ #endif #ifdef AFS_SGI_XFS_IOPS_ENV diff --git a/src/volser/volmain.c b/src/volser/volmain.c index bdddc9cf8..b2d87115a 100644 --- a/src/volser/volmain.c +++ b/src/volser/volmain.c @@ -287,13 +287,18 @@ char **argv; { else { printf("volserver: unrecognized flag '%s'\n", argv[code]); usage: +#ifndef AFS_NT40_ENV printf("Usage: volserver [-log] [-p ] " "[-udpsize ] " -#ifndef AFS_NT40_ENV "[-syslog[=FACILITY]] " -#endif - /* "[-enable_peer_stats] [-enable_process_stats] " */ + "[-enable_peer_stats] [-enable_process_stats] " + "[-help]\n"); +#else + printf("Usage: volserver [-log] [-p ] " + "[-udpsize ] " + "[-enable_peer_stats] [-enable_process_stats] " "[-help]\n"); +#endif VS_EXIT(1); } } -- 2.39.5