]> git.michaelhowe.org Git - packages/o/openafs.git/commitdiff
merge trunk revisions 2281:2890 to etch-backports backports/1.4.5.dfsg1-1.40bpo1
authorNoah Meyerhans <noahm@debian.org>
Fri, 16 Nov 2007 20:46:29 +0000 (20:46 +0000)
committerNoah Meyerhans <noahm@debian.org>
Fri, 16 Nov 2007 20:46:29 +0000 (20:46 +0000)
29 files changed:
configure
configure-libafs
configure-libafs.in
configure.in
debian/CellServDB
debian/changelog
debian/control
debian/module/genchanges
debian/module/sysname
debian/patches/afs-man-name [new file with mode: 0644]
debian/patches/ktc-prototypes [new file with mode: 0644]
debian/patches/series
debian/rules
doc/man-pages/man1/fs_uuid.1 [new file with mode: 0644]
doc/man-pages/pod1/fs_uuid.pod [new file with mode: 0644]
src/afs/DARWIN/osi_vnodeops.c
src/afs/LINUX/osi_module.c
src/afs/VNOPS/afs_vnop_lookup.c
src/afs/afs_call.c
src/afs/afs_daemons.c
src/afs/afs_nfsclnt.c
src/afs/afs_osidnlc.c
src/afsd/afsd.c
src/bucoord/restore.c
src/packaging/RedHat/openafs-buildall.sh
src/packaging/RedHat/openafs.spec.in
src/venus/fs.c
src/viced/callback.c
src/volser/vos.c

index 905b80e2590090ebbc7c0a78418bc18df7713e97..e62e8d70dd03e6ef6d3ce65fd8e463e92346d759 100755 (executable)
--- a/configure
+++ b/configure
@@ -2170,7 +2170,7 @@ fi
 
 # Define the identity of the package.
  PACKAGE=openafs
- VERSION=1.4.5pre2
+ VERSION=1.4.5
 
 
 cat >>confdefs.h <<_ACEOF
@@ -2318,7 +2318,7 @@ am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} xf -'
 
 ac_config_headers="$ac_config_headers src/config/afsconfig.h"
 
-MACOS_VERSION=1.4.5fc2
+MACOS_VERSION=1.4.5
 
 
 
index 141f0003a98ff622297bcc3d857675b2398abe79..39092b039acece36064725dd93c14500b59f2411 100755 (executable)
@@ -2170,7 +2170,7 @@ fi
 
 # Define the identity of the package.
  PACKAGE=openafs-libafs
- VERSION=1.4.5pre2
+ VERSION=1.4.5
 
 
 cat >>confdefs.h <<_ACEOF
@@ -2318,7 +2318,7 @@ am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} xf -'
 
 ac_config_headers="$ac_config_headers src/config/afsconfig.h"
 
-MACOS_VERSION=1.4.5fc2
+MACOS_VERSION=1.4.5
 
 
 
index 7799910bfe959f2620dae3d8a6466850cd9164fb..8c211b0eebaffbc1ddcea8166e5992ff178fe454 100644 (file)
@@ -1,7 +1,7 @@
 AC_INIT(src/libafs/Makefile.common.in)
-AM_INIT_AUTOMAKE(openafs-libafs,1.4.5pre2)
+AM_INIT_AUTOMAKE(openafs-libafs,1.4.5)
 AC_CONFIG_HEADER(src/config/afsconfig.h)
-MACOS_VERSION=1.4.5fc2
+MACOS_VERSION=1.4.5
 
 AC_SUBST(MACOS_VERSION)
 
index 1e21ca7324e5ab12b79c368bce54c1be94e67439..350778c58f58fb321eb6409ab38385f89a1fcb88 100644 (file)
@@ -1,7 +1,7 @@
 AC_INIT(src/config/stds.h)
-AM_INIT_AUTOMAKE(openafs,1.4.5pre2)
+AM_INIT_AUTOMAKE(openafs,1.4.5)
 AC_CONFIG_HEADER(src/config/afsconfig.h)
-MACOS_VERSION=1.4.5fc2
+MACOS_VERSION=1.4.5
 
 AC_SUBST(MACOS_VERSION)
 
index 882d0904eaf67156638a353dbd1667b34c04f5c3..79a2c23ffabf92c2b1167b2544c89c020e71ced1 100644 (file)
@@ -1,4 +1,4 @@
->grand.central.org      #GCO Public CellServDB 05 Jul 2007
+>grand.central.org      #GCO Public CellServDB 25 Oct 2007
 18.92.0.108                     #grand-opening.mit.edu
 128.2.203.61                    #penn.central.org
 130.237.48.87                   #andrew.e.kth.se
@@ -48,8 +48,6 @@
 66.93.118.125                   #stormy
 130.85.24.11                    #weasel
 130.85.24.13                    #straykitten
->midnightlinux.com      #Midnight Linux, Pittsburgh PA
-208.10.142.82                   #outpost.midnightlinux.com
 >setfilepointer.com     #SetFilePointer.com
 63.224.10.2                     #hamlet.SetFilePointer.com
 63.224.10.4                     #troilus.SetFilePointer.com
 213.187.92.33                   #gpp1.gppc.de
 213.187.92.34                   #paulchen.gppc.de
 213.187.92.35                   #lotus.gppc.de
+>cms.hu-berlin.de       #Humboldt University Berlin
+141.20.1.65                     #commodus.cms.hu-berlin.de
+141.20.1.66                     #faustinus.cms.hu-berlin.de
+141.20.1.67                     #marcellus.cms.hu-berlin.de
 >ifh.de                 #DESY Zeuthen
 141.34.22.10                    #romulus.ifh.de
 141.34.22.11                    #remus.ifh.de
 129.219.10.70                   #authen1.asu.edu
 129.219.10.72                   #authen3.asu.edu
 129.219.100.16                  #authen4.asu.edu
->hep.caltech.edu        #CalTech High Energy Physics
-131.215.126.150                 #afs.hep.caltech.edu
+>eecs.berkeley.edu      #University of California, Berkeley - EECS Dept.
+128.32.139.34                   #greed.eecs.berkeley.edu
+128.32.139.35                   #gluttony.eecs.berkeley.edu
+169.229.60.112                  #envy.eecs.berkeley.edu
+>hep.caltech.edu        #Caltech High Energy Physics
+131.215.116.20                  #afs.hep.caltech.edu
 >clarkson.edu           #Clarkson University, Potsdam, New York USA
 128.153.1.111                   #arthur.clarkson.edu
 128.153.9.111                   #lancelot.clarkson.edu
 128.2.10.28                     #vice28.fs.andrew.cmu.edu
 128.2.32.44                     #new-vice12.fs.andrew.cmu.edu
 >club.cc.cmu.edu        #Carnegie Mellon University Computer Club
+128.2.204.149                   #barium.club.cc.cmu.edu
 128.237.157.11                  #sodium.club.cc.cmu.edu
 128.237.157.13                  #potassium.club.cc.cmu.edu
 >chem.cmu.edu           #Carnegie Mellon University - Chemistry Dept.
 128.2.40.134                    #afs.chem.cmu.edu
 128.2.40.140                    #afs2.chem.cmu.edu
 >cs.cmu.edu             #Carnegie Mellon University - School of Comp. Sci.
+128.2.184.215                   #pumpkin.srv.cs.cmu.edu
 128.2.201.46                    #strawberry.srv.cs.cmu.edu
-128.2.201.47                    #pumpkin.srv.cs.cmu.edu
 128.2.201.48                    #cherry.srv.cs.cmu.edu
 >ece.cmu.edu            #Carnegie Mellon University - Elec. Comp. Eng. Dept.
 128.2.129.7                     #porok.ece.cmu.edu
 >cs.fhm.edu             #Department Computer Science Munich University Of Applied Science
 129.187.208.2                   #srv1.informatik.fh-muenchen.de
 >eecs.harvard.edu       #Harvard - EECS
-140.247.60.61                   #zermelo.eecs.harvard.edu
+140.247.60.64                   #lefkada.eecs.harvard.edu
 140.247.60.83                   #corfu.eecs.harvard.edu
 >iastate.edu            #Iowa State University
 129.186.1.243                   #afsdb-1.iastate.edu
 134.158.232.11                  #ccafsdb1.in2p3.fr
 134.158.232.12                  #ccafsdb2.in2p3.fr
 134.158.232.13                  #ccafsdb3.in2p3.fr
+>mcc.ac.gb              #University of Manchester
+130.88.203.41                   #nevis.mc.man.ac.uk
+130.88.203.144                  #eryri.mc.man.ac.uk
+130.88.203.145                  #scafell.mc.man.ac.uk
 >anl.gov                #Argonne National Laboratory
-146.137.96.33                   #arteus.ctd.anl.gov
-146.137.162.88                  #agamemnon.ctd.anl.gov
-146.137.194.80                  #antenor.ctd.anl.gov
+146.137.96.33                   #arteus.it.anl.gov
+146.137.162.88                  #agamemnon.it.anl.gov
+146.137.194.80                  #antenor.it.anl.gov
 >rhic.bnl.gov           #Relativistic Heavy Ion Collider
 130.199.6.51                    #rafs03.rcf.bnl.gov
 130.199.6.52                    #rafs02.rcf.bnl.gov
 >laroia.net             #Laroia Networks
 66.66.102.254                   #supercore.laroia.net
 >sinenomine.net         #Sine Nomine Associates
-192.204.203.218                 #va.sinenomine.net
+66.135.48.108                   #tx2srv03.sinenomine.net
+72.73.30.42                     #va.sinenomine.net
 >slackers.net           #The Slackers' Network
-63.201.48.27                    #alexandria.slackers.net
+199.4.150.159                   #alexandria.slackers.net
 >tproa.net              #The People's Republic of Ames
 72.13.4.23                      #service-3.tproa.net
 72.13.4.24                      #service-4.tproa.net
 >dementia.org           #Dementia Unlimited
 128.2.12.45                     #alycia.dementia.org
 128.2.120.216                   #meredith.dementia.org
+>dsrw.org               #The DSRW
+65.103.82.83                    #straylight.dsrw.org
+65.103.82.84                    #chiba.dsrw.org
+65.103.82.85                    #freeside.dsrw.org
 >hackish.org            #Hackish.org
 24.167.65.213                   #avatar.sys.hackish.org
 128.2.120.138                   #kurma.sys.hackish.org
 194.249.156.1                   #brenta.ijs.si
 >p-ng.si                #Nova Gorica Polytechnic
 193.2.120.2                     #solkan.p-ng.si
+>hep-ex.physics.metu.edu.tr #METU Department of Physics, Experimental HEP group, Ankara/Turke
+144.122.31.131                  #neutrino.physics.metu.edu.tr
 >phy.bris.ac.uk         #Bristol University - phyics
 137.222.58.9                    #afs1.phy.bris.ac.uk
 >inf.ed.ac.uk           #School of Informatics, University of Edinburgh
index a640a084617d08b0a54d722afbd230b5cd30c4f2..7be4d32dd3024990effb619c3b582badde80ccdf 100644 (file)
@@ -1,8 +1,30 @@
-openafs (1.4.5~pre2.dfsg1-1~40bpo1) etch-backports; urgency=low
+openafs (1.4.5.dfsg1-1~40bpo1) etch-backports; urgency=low
 
-  * Backport to etch.
+  * Backport to etch
 
- -- Noah Meyerhans <noahm@csail.mit.edu>  Fri,  9 Nov 2007 16:37:45 -0500
+ -- Noah Meyerhans <noahm@csail.mit.edu>  Fri, 16 Nov 2007 15:04:34 -0500
+
+openafs (1.4.5.dfsg1-1) unstable; urgency=low
+
+  * New upstream release.
+    - Even with a new enough Linux kernel to support keyrings, we still
+      may have found the system call table and need to clean it up when
+      unloading the module.  (Closes: #448793)
+  * Use uname -m rather than dpkg --print-architecture to determine the
+    sysname for kernel module builds.  Otherwise, builds with a different
+    kernel architecture than userspace (amd64 kernels with i386 userspace,
+    for example) don't work.  Thanks, Anders Kaseorg.  (Closes: #448452)
+  * Fix signing the generated the changes file on a kernel module build.
+    The module build file reorganization required an additional change to
+    genchanges.  Thanks, Anders Kaseorg.  (Closes: #448449)
+  * Expose prototypes for the ktc_* functions.  (Closes: #449432)
+  * Fix man pages for subcommands to use an underscore in the NAME section
+    instead of a space so that they'll be indexed properly by the current
+    groff and man-db.
+  * Update CellServDB to 2007-10-25 GCO release.
+  * Add Homepage to the package control fields.
+
+ -- Russ Allbery <rra@debian.org>  Sun, 11 Nov 2007 15:54:59 -0800
 
 openafs (1.4.5~pre2.dfsg1-1) unstable; urgency=low
 
index fdc960c46a942ebe5ec75c4d4895bca23f961747..3798f985a04b1ce34862392a310a46c07eaf8861 100644 (file)
@@ -6,6 +6,7 @@ Uploaders: Russ Allbery <rra@debian.org>
 Build-Depends: debhelper (>= 5), libncurses5-dev, libpam0g-dev, bison,
  flex, perl, comerr-dev, libkrb5-dev, autoconf, automake, quilt (>= 0.40)
 Standards-Version: 3.7.2
+Homepage: http://www.openafs.org/
 
 Package: openafs-client
 Architecture: i386 powerpc sparc alpha s390 ia64 hppa amd64 ppc64 s390x
index e38781bccc4e36e11e85e742c26750fce0ae6933..5aa47cc86f9a023fa9b4f01c905911e40acac297 100644 (file)
@@ -11,7 +11,7 @@ umask 022
 MODVERS=`cat debian/VERSION | sed s/:/\+/`
 ARCH=`dpkg --print-architecture`
 
-mprefix=`grep Package: debian/control.module | cut -d' ' -f 2 | cut -d= -f 1`
+mprefix=`grep Package: debian/control.in | cut -d' ' -f 2 | cut -d= -f 1`
 chfile="$KSRC/../$mprefix${KVERS}${INT_SUBARCH}_${MODVERS}_${ARCH}.changes"
 
 dpkg-genchanges -b ${KMAINT:+-m"$KMAINT <$KEMAIL>"} -u"$KSRC/.." \
index cdb96923eb8cf1e2b4c75defa7810828bf4c7056..d551c89ddde292521fb8db6e37f5d5bbb39ffe92 100755 (executable)
@@ -7,7 +7,7 @@ if [ x"$KVERS" = x ] ; then
     exit 1
 fi
 
-case `dpkg --print-architecture` in
+case `uname -m` in
 alpha)
     case $KVERS in
     2.2*)
@@ -21,16 +21,6 @@ alpha)
         ;;
     esac
     ;;
-amd64)
-    case $KVERS in
-    2.4*)
-        echo amd64_linux24
-        ;;
-    2.6*)
-        echo amd64_linux26
-        ;;
-    esac
-    ;;
 hppa)
     case $KVERS in
     2.4*)
@@ -61,7 +51,7 @@ ia64)
         ;;
     esac
     ;;
-powerpc)
+ppc)
     case $KVERS in
     2.2*)
         echo ppc_linux22
@@ -127,6 +117,16 @@ sparc64)
         ;;
     esac
     ;;
+x86_64)
+    case $KVERS in
+    2.4*)
+        echo amd64_linux24
+        ;;
+    2.6*)
+        echo amd64_linux26
+        ;;
+    esac
+    ;;
 *)
     echo "ERROR: unsupported architecture" >&2
     echo UNKNOWN
diff --git a/debian/patches/afs-man-name b/debian/patches/afs-man-name
new file mode 100644 (file)
index 0000000..88fc4c0
--- /dev/null
@@ -0,0 +1,1888 @@
+Current groff can't deal with NAME sections with a space on the left
+side of the -.  This patch has also been applied upstream and will be
+in the next release after 1.4.5.
+
+--- openafs.orig/doc/man-pages/README
++++ openafs/doc/man-pages/README
+@@ -78,7 +78,10 @@
+   documents common options, and discusses the general use of the suite.
+   Then, each operation code in the suite should have a separate man page,
+   named after the command with the space between the command suite and the
+-  operation code replaced with an underscore.
++  operation code replaced with an underscore.  The NAME section of the
++  operation man page must also use an underscore (fs_listacl, not fs
++  listacl) for compatibility with some man programs.  The SYNOPSIS section
++  should, of course, use a space, since that's what the user must type.
+   All man pages must follow the standard layout for man page sections and
+   formatting.  The best general reference is the pod2man man page,
+--- openafs.orig/doc/man-pages/pod1/fs_checkservers.pod
++++ openafs/doc/man-pages/pod1/fs_checkservers.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-fs checkservers - Displays the status of server machines
++fs_checkservers - Displays the status of server machines
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/fs_checkvolumes.pod
++++ openafs/doc/man-pages/pod1/fs_checkvolumes.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-fs checkvolumes - Forces the Cache Manager to update volume information
++fs_checkvolumes - Forces the Cache Manager to update volume information
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/fs_cleanacl.pod
++++ openafs/doc/man-pages/pod1/fs_cleanacl.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-fs cleanacl - Remove obsolete entries from an ACL
++fs_cleanacl - Remove obsolete entries from an ACL
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/fs_copyacl.pod
++++ openafs/doc/man-pages/pod1/fs_copyacl.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-fs copyacl - Copies an ACL from a directory to one or more other directories
++fs_copyacl - Copies an ACL from a directory to one or more other directories
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/fs_diskfree.pod
++++ openafs/doc/man-pages/pod1/fs_diskfree.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-fs diskfree - Shows data about the partition housing a directory or file
++fs_diskfree - Shows data about the partition housing a directory or file
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/fs_examine.pod
++++ openafs/doc/man-pages/pod1/fs_examine.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-fs examine - Shows data about the volume containing a directory or file
++fs_examine - Shows data about the volume containing a directory or file
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/fs_exportafs.pod
++++ openafs/doc/man-pages/pod1/fs_exportafs.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-fs exportafs - Configures export of AFS to clients of other file systems
++fs_exportafs - Configures export of AFS to clients of other file systems
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/fs_flush.pod
++++ openafs/doc/man-pages/pod1/fs_flush.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-fs flush - Forces the Cache Manager to discard a cached file or directory
++fs_flush - Forces the Cache Manager to discard a cached file or directory
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/fs_flushall.pod
++++ openafs/doc/man-pages/pod1/fs_flushall.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-fs flushall - Force the AFS Cache Manager to discard all data
++fs_flushall - Force the AFS Cache Manager to discard all data
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/fs_flushmount.pod
++++ openafs/doc/man-pages/pod1/fs_flushmount.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-fs flushmount - Forces the Cache Manager to discard a mount point
++fs_flushmount - Forces the Cache Manager to discard a mount point
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/fs_flushvolume.pod
++++ openafs/doc/man-pages/pod1/fs_flushvolume.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-fs flushvolume - Forces the Cache Manager to discard cached data from a volume
++fs_flushvolume - Forces the Cache Manager to discard cached data from a volume
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/fs_getcacheparms.pod
++++ openafs/doc/man-pages/pod1/fs_getcacheparms.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-fs getcacheparms - Displays the current size and usage of the cache
++fs_getcacheparms - Displays the current size and usage of the cache
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/fs_getcalleraccess.pod
++++ openafs/doc/man-pages/pod1/fs_getcalleraccess.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-fs getcalleraccess - Show the current user's access to a file or directory
++fs_getcalleraccess - Show the current user's access to a file or directory
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/fs_getcellstatus.pod
++++ openafs/doc/man-pages/pod1/fs_getcellstatus.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-fs getcellstatus - Reports whether setuid programs are honored in a cell
++fs_getcellstatus - Reports whether setuid programs are honored in a cell
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/fs_getclientaddrs.pod
++++ openafs/doc/man-pages/pod1/fs_getclientaddrs.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-fs getclientaddrs - Displays the client interfaces to register
++fs_getclientaddrs - Displays the client interfaces to register
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/fs_getcrypt.pod
++++ openafs/doc/man-pages/pod1/fs_getcrypt.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-fs getcrypt - Displays the state of encryption for AFS file transfers
++fs_getcrypt - Displays the state of encryption for AFS file transfers
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/fs_getserverprefs.pod
++++ openafs/doc/man-pages/pod1/fs_getserverprefs.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-fs getserverprefs - Displays preference ranks for file servers or VL servers
++fs_getserverprefs - Displays preference ranks for file servers or VL servers
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/fs_help.pod
++++ openafs/doc/man-pages/pod1/fs_help.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-fs help - Displays help for fs commands
++fs_help - Displays help for fs commands
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/fs_listacl.pod
++++ openafs/doc/man-pages/pod1/fs_listacl.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-fs listacl - Displays ACLs
++fs_listacl - Displays ACLs
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/fs_listaliases.pod
++++ openafs/doc/man-pages/pod1/fs_listaliases.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-fs listaliases - Displays the current list of aliases for AFS cells
++fs_listaliases - Displays the current list of aliases for AFS cells
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/fs_listcells.pod
++++ openafs/doc/man-pages/pod1/fs_listcells.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-fs listcells - Displays the database server machines known to the Cache Manager
++fs_listcells - Displays the database server machines known to the Cache Manager
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/fs_listquota.pod
++++ openafs/doc/man-pages/pod1/fs_listquota.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-fs listquota - Displays quota information for a volume
++fs_listquota - Displays quota information for a volume
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/fs_lsmount.pod
++++ openafs/doc/man-pages/pod1/fs_lsmount.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-fs lsmount - Reports the volume for which a directory is the mount point.
++fs_lsmount - Reports the volume for which a directory is the mount point.
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/fs_messages.pod
++++ openafs/doc/man-pages/pod1/fs_messages.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-fs messages - Sets whether the Cache Manager writes log messages
++fs_messages - Sets whether the Cache Manager writes log messages
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/fs_mkmount.pod
++++ openafs/doc/man-pages/pod1/fs_mkmount.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-fs mkmount - Creates a mount point for a volume
++fs_mkmount - Creates a mount point for a volume
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/fs_newalias.pod
++++ openafs/doc/man-pages/pod1/fs_newalias.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-fs newalias - Creates a new alias for a cell
++fs_newalias - Creates a new alias for a cell
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/fs_newcell.pod
++++ openafs/doc/man-pages/pod1/fs_newcell.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-fs newcell - Changes the kernel-resident list of a cell's database servers
++fs_newcell - Changes the kernel-resident list of a cell's database servers
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/fs_quota.pod
++++ openafs/doc/man-pages/pod1/fs_quota.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-fs quota - Displays the quota used in the volume containing a directory or file
++fs_quota - Displays the quota used in the volume containing a directory or file
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/fs_rmmount.pod
++++ openafs/doc/man-pages/pod1/fs_rmmount.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-fs rmmount - Removes a mount point
++fs_rmmount - Removes a mount point
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/fs_setacl.pod
++++ openafs/doc/man-pages/pod1/fs_setacl.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-fs setacl - Sets the ACL for a directory
++fs_setacl - Sets the ACL for a directory
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/fs_setcachesize.pod
++++ openafs/doc/man-pages/pod1/fs_setcachesize.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-fs setcachesize - Sets the size of the disk cache
++fs_setcachesize - Sets the size of the disk cache
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/fs_setcell.pod
++++ openafs/doc/man-pages/pod1/fs_setcell.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-fs setcell - Configures permissions for setuid programs from specified cells
++fs_setcell - Configures permissions for setuid programs from specified cells
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/fs_setclientaddrs.pod
++++ openafs/doc/man-pages/pod1/fs_setclientaddrs.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-fs setclientaddrs - Sets the client interfaces to register with the File Server
++fs_setclientaddrs - Sets the client interfaces to register with the File Server
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/fs_setcrypt.pod
++++ openafs/doc/man-pages/pod1/fs_setcrypt.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-fs setcrypt - Enables of disables the encryption of AFS file transfers
++fs_setcrypt - Enables of disables the encryption of AFS file transfers
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/fs_setquota.pod
++++ openafs/doc/man-pages/pod1/fs_setquota.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-fs setquota - Sets the quota for the volume containing a file or directory
++fs_setquota - Sets the quota for the volume containing a file or directory
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/fs_setserverprefs.pod
++++ openafs/doc/man-pages/pod1/fs_setserverprefs.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-fs setserverprefs - Sets the preference ranks for file servers or VL servers
++fs_setserverprefs - Sets the preference ranks for file servers or VL servers
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/fs_setvol.pod
++++ openafs/doc/man-pages/pod1/fs_setvol.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-fs setvol - Set quota and messages for a volume containing a file or directory
++fs_setvol - Set quota and messages for a volume containing a file or directory
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/fs_storebehind.pod
++++ openafs/doc/man-pages/pod1/fs_storebehind.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-fs storebehind - Enables asynchronous writes to the file server
++fs_storebehind - Enables asynchronous writes to the file server
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/fs_sysname.pod
++++ openafs/doc/man-pages/pod1/fs_sysname.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-fs sysname - Reports or sets the CPU/operating system type
++fs_sysname - Reports or sets the CPU/operating system type
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/fs_uuid.pod
++++ openafs/doc/man-pages/pod1/fs_uuid.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-fs uuid - Prints the uuid of the client or generates a new one
++fs_uuid - Prints the uuid of the client or generates a new one
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/fs_whereis.pod
++++ openafs/doc/man-pages/pod1/fs_whereis.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-fs whereis - Reports each file server housing a file or directory
++fs_whereis - Reports each file server housing a file or directory
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/fs_whichcell.pod
++++ openafs/doc/man-pages/pod1/fs_whichcell.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-fs whichcell - Returns the cell to which a file or directory belongs
++fs_whichcell - Returns the cell to which a file or directory belongs
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/fs_wscell.pod
++++ openafs/doc/man-pages/pod1/fs_wscell.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-fs wscell - Returns the name of the cell to which a machine belongs
++fs_wscell - Returns the name of the cell to which a machine belongs
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/pts_adduser.pod
++++ openafs/doc/man-pages/pod1/pts_adduser.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-pts adduser - Adds a user or machine to a Protection Database group
++pts_adduser - Adds a user or machine to a Protection Database group
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/pts_apropos.pod
++++ openafs/doc/man-pages/pod1/pts_apropos.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-pts apropos - Displays each help entry containing a keyword string
++pts_apropos - Displays each help entry containing a keyword string
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/pts_chown.pod
++++ openafs/doc/man-pages/pod1/pts_chown.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-pts chown - Changes the owner of a Protection Database entry
++pts_chown - Changes the owner of a Protection Database entry
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/pts_creategroup.pod
++++ openafs/doc/man-pages/pod1/pts_creategroup.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-pts creategroup - Creates an (empty) Protection Database group entry
++pts_creategroup - Creates an (empty) Protection Database group entry
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/pts_createuser.pod
++++ openafs/doc/man-pages/pod1/pts_createuser.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-pts createuser - Creates a user or machine entry in the Protection Database
++pts_createuser - Creates a user or machine entry in the Protection Database
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/pts_delete.pod
++++ openafs/doc/man-pages/pod1/pts_delete.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-pts delete - Deletes a Protection Database entry
++pts_delete - Deletes a Protection Database entry
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/pts_examine.pod
++++ openafs/doc/man-pages/pod1/pts_examine.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-pts examine - Displays a Protection Database entry
++pts_examine - Displays a Protection Database entry
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/pts_help.pod
++++ openafs/doc/man-pages/pod1/pts_help.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-pts help - Displays help for pts commands
++pts_help - Displays help for pts commands
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/pts_interactive.pod
++++ openafs/doc/man-pages/pod1/pts_interactive.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-pts interactive - Enters interactive mode
++pts_interactive - Enters interactive mode
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/pts_listentries.pod
++++ openafs/doc/man-pages/pod1/pts_listentries.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-pts listentries - Displays all users or groups in the Protection Database
++pts_listentries - Displays all users or groups in the Protection Database
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/pts_listmax.pod
++++ openafs/doc/man-pages/pod1/pts_listmax.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-pts listmax - Displays the max user id and max group id counters
++pts_listmax - Displays the max user id and max group id counters
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/pts_listowned.pod
++++ openafs/doc/man-pages/pod1/pts_listowned.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-pts listowned - Show the Protection Database groups owned by a user or group
++pts_listowned - Show the Protection Database groups owned by a user or group
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/pts_membership.pod
++++ openafs/doc/man-pages/pod1/pts_membership.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-pts membership - Displays the membership list for a user or group
++pts_membership - Displays the membership list for a user or group
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/pts_quit.pod
++++ openafs/doc/man-pages/pod1/pts_quit.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-pts quit - Exit from pts interactive mode
++pts_quit - Exit from pts interactive mode
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/pts_removeuser.pod
++++ openafs/doc/man-pages/pod1/pts_removeuser.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-pts removeuser - Removes a user from a Protection Database group
++pts_removeuser - Removes a user from a Protection Database group
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/pts_rename.pod
++++ openafs/doc/man-pages/pod1/pts_rename.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-pts rename - Changes the name of a Protection Database entry
++pts_rename - Changes the name of a Protection Database entry
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/pts_setfields.pod
++++ openafs/doc/man-pages/pod1/pts_setfields.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-pts setfields - Sets privacy flags or quota for a Protection Database entry
++pts_setfields - Sets privacy flags or quota for a Protection Database entry
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/pts_setmax.pod
++++ openafs/doc/man-pages/pod1/pts_setmax.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-pts setmax - Sets the value of the max group id or max user id counter
++pts_setmax - Sets the value of the max group id or max user id counter
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/pts_sleep.pod
++++ openafs/doc/man-pages/pod1/pts_sleep.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-pts sleep - Pauses for a few seconds
++pts_sleep - Pauses for a few seconds
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/pts_source.pod
++++ openafs/doc/man-pages/pod1/pts_source.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-pts source - Read pts commands from a file
++pts_source - Read pts commands from a file
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/vos_addsite.pod
++++ openafs/doc/man-pages/pod1/vos_addsite.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-vos addsite - Adds a read-only site definition to a volume's VLDB entry
++vos_addsite - Adds a read-only site definition to a volume's VLDB entry
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/vos_apropos.pod
++++ openafs/doc/man-pages/pod1/vos_apropos.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-vos apropos - Displays each help entry containing a keyword string
++vos_apropos - Displays each help entry containing a keyword string
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/vos_backup.pod
++++ openafs/doc/man-pages/pod1/vos_backup.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-vos backup - Creates a backup volume for a single read/write volume
++vos_backup - Creates a backup volume for a single read/write volume
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/vos_backupsys.pod
++++ openafs/doc/man-pages/pod1/vos_backupsys.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-vos backupsys - Creates a backup volume for several read/write volumes
++vos_backupsys - Creates a backup volume for several read/write volumes
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/vos_changeaddr.pod
++++ openafs/doc/man-pages/pod1/vos_changeaddr.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-vos changeaddr - Changes or removes a file server machine's entry in the VLDB
++vos_changeaddr - Changes or removes a file server machine's entry in the VLDB
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/vos_changeloc.pod
++++ openafs/doc/man-pages/pod1/vos_changeloc.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-vos changeloc - Change a volume's entry in the VLDB
++vos_changeloc - Change a volume's entry in the VLDB
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/vos_create.pod
++++ openafs/doc/man-pages/pod1/vos_create.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-vos create - Creates a read/write volume and associated VLDB entry
++vos_create - Creates a read/write volume and associated VLDB entry
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/vos_delentry.pod
++++ openafs/doc/man-pages/pod1/vos_delentry.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-vos delentry - Removes a volume entry from the VLDB.
++vos_delentry - Removes a volume entry from the VLDB.
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/vos_dump.pod
++++ openafs/doc/man-pages/pod1/vos_dump.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-vos dump - Converts a volume into ASCII format and writes it to a file
++vos_dump - Converts a volume into ASCII format and writes it to a file
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/vos_examine.pod
++++ openafs/doc/man-pages/pod1/vos_examine.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-vos examine - Shows volume header and VLDB entry information for a volume
++vos_examine - Shows volume header and VLDB entry information for a volume
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/vos_help.pod
++++ openafs/doc/man-pages/pod1/vos_help.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-vos help - Displays help for vos commands
++vos_help - Displays help for vos commands
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/vos_listaddrs.pod
++++ openafs/doc/man-pages/pod1/vos_listaddrs.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-vos listaddrs - Displays all VLDB server entries
++vos_listaddrs - Displays all VLDB server entries
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/vos_listpart.pod
++++ openafs/doc/man-pages/pod1/vos_listpart.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-vos listpart - Displays all AFS partitions on a file server machine
++vos_listpart - Displays all AFS partitions on a file server machine
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/vos_listvldb.pod
++++ openafs/doc/man-pages/pod1/vos_listvldb.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-vos listvldb - Displays a volume's VLDB entry
++vos_listvldb - Displays a volume's VLDB entry
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/vos_listvol.pod
++++ openafs/doc/man-pages/pod1/vos_listvol.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-vos listvol - Displays information from a volume header
++vos_listvol - Displays information from a volume header
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/vos_lock.pod
++++ openafs/doc/man-pages/pod1/vos_lock.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-vos lock - Locks a VLDB volume entry
++vos_lock - Locks a VLDB volume entry
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/vos_move.pod
++++ openafs/doc/man-pages/pod1/vos_move.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-vos move - Moves a read/write volume to another site
++vos_move - Moves a read/write volume to another site
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/vos_offline.pod
++++ openafs/doc/man-pages/pod1/vos_offline.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-vos offline - Takes a volume offline
++vos_offline - Takes a volume offline
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/vos_online.pod
++++ openafs/doc/man-pages/pod1/vos_online.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-vos online - Brings a volume online
++vos_online - Brings a volume online
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/vos_partinfo.pod
++++ openafs/doc/man-pages/pod1/vos_partinfo.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-vos partinfo - Reports the available and total space on a partition
++vos_partinfo - Reports the available and total space on a partition
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/vos_release.pod
++++ openafs/doc/man-pages/pod1/vos_release.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-vos release - Updates read-only volumes to match the read/write source volume
++vos_release - Updates read-only volumes to match the read/write source volume
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/vos_remove.pod
++++ openafs/doc/man-pages/pod1/vos_remove.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-vos remove - Removes a volume from a site
++vos_remove - Removes a volume from a site
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/vos_remsite.pod
++++ openafs/doc/man-pages/pod1/vos_remsite.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-vos remsite - Removes a read-only site definition from a VLDB entry
++vos_remsite - Removes a read-only site definition from a VLDB entry
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/vos_rename.pod
++++ openafs/doc/man-pages/pod1/vos_rename.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-vos rename - Renames a volume
++vos_rename - Renames a volume
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/vos_restore.pod
++++ openafs/doc/man-pages/pod1/vos_restore.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-vos restore - Converts an ASCII dump file into an AFS volume
++vos_restore - Converts an ASCII dump file into an AFS volume
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/vos_size.pod
++++ openafs/doc/man-pages/pod1/vos_size.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-vos size - Computes the size of a volume dump
++vos_size - Computes the size of a volume dump
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/vos_status.pod
++++ openafs/doc/man-pages/pod1/vos_status.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-vos status - Reports a Volume Server's status
++vos_status - Reports a Volume Server's status
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/vos_syncserv.pod
++++ openafs/doc/man-pages/pod1/vos_syncserv.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-vos syncserv - Verifies VLDB entries that mention a specified site
++vos_syncserv - Verifies VLDB entries that mention a specified site
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/vos_syncvldb.pod
++++ openafs/doc/man-pages/pod1/vos_syncvldb.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-vos syncvldb - Verifies VLDB entries for volumes residing at specified site
++vos_syncvldb - Verifies VLDB entries for volumes residing at specified site
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/vos_unlock.pod
++++ openafs/doc/man-pages/pod1/vos_unlock.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-vos unlock - Unlocks a single VLDB entry
++vos_unlock - Unlocks a single VLDB entry
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/vos_unlockvldb.pod
++++ openafs/doc/man-pages/pod1/vos_unlockvldb.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-vos unlockvldb - Unlocks several locked VLDB entries
++vos_unlockvldb - Unlocks several locked VLDB entries
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/vos_zap.pod
++++ openafs/doc/man-pages/pod1/vos_zap.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-vos zap - Removes a volume from its site without writing to the VLDB
++vos_zap - Removes a volume from its site without writing to the VLDB
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/backup_adddump.pod
++++ openafs/doc/man-pages/pod8/backup_adddump.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-backup adddump - Defines a dump level in the dump hierarchy
++backup_adddump - Defines a dump level in the dump hierarchy
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/backup_addhost.pod
++++ openafs/doc/man-pages/pod8/backup_addhost.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-backup addhost - Adds a Tape Coordinator entry to the Backup Database
++backup_addhost - Adds a Tape Coordinator entry to the Backup Database
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/backup_addvolentry.pod
++++ openafs/doc/man-pages/pod8/backup_addvolentry.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-backup addvolentry - Defines a volume entry in a volume set
++backup_addvolentry - Defines a volume entry in a volume set
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/backup_addvolset.pod
++++ openafs/doc/man-pages/pod8/backup_addvolset.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-backup addvolset - Creates a new (empty) volume set
++backup_addvolset - Creates a new (empty) volume set
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/backup_apropos.pod
++++ openafs/doc/man-pages/pod8/backup_apropos.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-backup apropos - Displays each help entry containing a keyword string
++backup_apropos - Displays each help entry containing a keyword string
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/backup_dbverify.pod
++++ openafs/doc/man-pages/pod8/backup_dbverify.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-backup dbverify - Checks the integrity of the Backup Database
++backup_dbverify - Checks the integrity of the Backup Database
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/backup_deldump.pod
++++ openafs/doc/man-pages/pod8/backup_deldump.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-backup deldump - Deletes a dump level from the Backup Database
++backup_deldump - Deletes a dump level from the Backup Database
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/backup_deletedump.pod
++++ openafs/doc/man-pages/pod8/backup_deletedump.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-backup deletedump - Deletes one or more dump records from the Backup Database
++backup_deletedump - Deletes one or more dump records from the Backup Database
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/backup_delhost.pod
++++ openafs/doc/man-pages/pod8/backup_delhost.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-backup delhost - Deletes a Tape Coordinator entry from the Backup Database
++backup_delhost - Deletes a Tape Coordinator entry from the Backup Database
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/backup_delvolentry.pod
++++ openafs/doc/man-pages/pod8/backup_delvolentry.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-backup delvolentry - Deletes a volume entry from a volume set
++backup_delvolentry - Deletes a volume entry from a volume set
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/backup_delvolset.pod
++++ openafs/doc/man-pages/pod8/backup_delvolset.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-backup delvolset - Deletes one or more volume sets from the Backup Database
++backup_delvolset - Deletes one or more volume sets from the Backup Database
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/backup_diskrestore.pod
++++ openafs/doc/man-pages/pod8/backup_diskrestore.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-backup diskrestore - Restores the entire contents of a partition
++backup_diskrestore - Restores the entire contents of a partition
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/backup_dump.pod
++++ openafs/doc/man-pages/pod8/backup_dump.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-backup dump - Creates a dump (dumps a volume set at a particular dump level)
++backup_dump - Creates a dump (dumps a volume set at a particular dump level)
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/backup_dumpinfo.pod
++++ openafs/doc/man-pages/pod8/backup_dumpinfo.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-backup dumpinfo - Displays a dump record from the Backup Database
++backup_dumpinfo - Displays a dump record from the Backup Database
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/backup_help.pod
++++ openafs/doc/man-pages/pod8/backup_help.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-backup help - Displays help for backup commands
++backup_help - Displays help for backup commands
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/backup_interactive.pod
++++ openafs/doc/man-pages/pod8/backup_interactive.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-backup interactive - Enters interactive mode
++backup_interactive - Enters interactive mode
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/backup_jobs.pod
++++ openafs/doc/man-pages/pod8/backup_jobs.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-backup jobs - Lists pending and running operations in interactive mode
++backup_jobs - Lists pending and running operations in interactive mode
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/backup_kill.pod
++++ openafs/doc/man-pages/pod8/backup_kill.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-backup kill - Terminates a pending or running operation
++backup_kill - Terminates a pending or running operation
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/backup_labeltape.pod
++++ openafs/doc/man-pages/pod8/backup_labeltape.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-backup labeltape - Creates the magnetic label on a tape
++backup_labeltape - Creates the magnetic label on a tape
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/backup_listdumps.pod
++++ openafs/doc/man-pages/pod8/backup_listdumps.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-backup listdumps - Displays the dump hierarchy from the Backup Database
++backup_listdumps - Displays the dump hierarchy from the Backup Database
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/backup_listhosts.pod
++++ openafs/doc/man-pages/pod8/backup_listhosts.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-backup listhosts - Lists Tape Coordinators registered in the Backup Database
++backup_listhosts - Lists Tape Coordinators registered in the Backup Database
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/backup_listvolsets.pod
++++ openafs/doc/man-pages/pod8/backup_listvolsets.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-backup listvolsets - Lists volume set entries from the Backup Database
++backup_listvolsets - Lists volume set entries from the Backup Database
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/backup_quit.pod
++++ openafs/doc/man-pages/pod8/backup_quit.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-backup quit - Leaves interactive mode
++backup_quit - Leaves interactive mode
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/backup_readlabel.pod
++++ openafs/doc/man-pages/pod8/backup_readlabel.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-backup readlabel - Reads and displays a tape's label
++backup_readlabel - Reads and displays a tape's label
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/backup_restoredb.pod
++++ openafs/doc/man-pages/pod8/backup_restoredb.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-backup restoredb - Restores a saved copy of the Backup Database
++backup_restoredb - Restores a saved copy of the Backup Database
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/backup_savedb.pod
++++ openafs/doc/man-pages/pod8/backup_savedb.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-backup savedb - Creates a saved copy of the Backup Database
++backup_savedb - Creates a saved copy of the Backup Database
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/backup_scantape.pod
++++ openafs/doc/man-pages/pod8/backup_scantape.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-backup scantape - Extracts dump information from a tape
++backup_scantape - Extracts dump information from a tape
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/backup_setexp.pod
++++ openafs/doc/man-pages/pod8/backup_setexp.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-backup setexp - Sets the expiration date for existing dump levels.
++backup_setexp - Sets the expiration date for existing dump levels.
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/backup_status.pod
++++ openafs/doc/man-pages/pod8/backup_status.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-backup status - Reports a Tape Coordinator's status
++backup_status - Reports a Tape Coordinator's status
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/backup_volinfo.pod
++++ openafs/doc/man-pages/pod8/backup_volinfo.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-backup volinfo - Displays a volume's dump history from the Backup Database
++backup_volinfo - Displays a volume's dump history from the Backup Database
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/backup_volrestore.pod
++++ openafs/doc/man-pages/pod8/backup_volrestore.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-backup volrestore - Restores one or more volumes
++backup_volrestore - Restores one or more volumes
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/backup_volsetrestore.pod
++++ openafs/doc/man-pages/pod8/backup_volsetrestore.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-backup volsetrestore - Restores all volumes in a volume set
++backup_volsetrestore - Restores all volumes in a volume set
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/bos_addhost.pod
++++ openafs/doc/man-pages/pod8/bos_addhost.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-bos addhost - Adds a database server machine to the CellServDB file
++bos_addhost - Adds a database server machine to the CellServDB file
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/bos_addkey.pod
++++ openafs/doc/man-pages/pod8/bos_addkey.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-bos addkey - Adds a new server encryption key to the KeyFile file
++bos_addkey - Adds a new server encryption key to the KeyFile file
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/bos_adduser.pod
++++ openafs/doc/man-pages/pod8/bos_adduser.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-bos adduser - Adds a privileged user to the UserList file
++bos_adduser - Adds a privileged user to the UserList file
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/bos_apropos.pod
++++ openafs/doc/man-pages/pod8/bos_apropos.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-bos apropos - Displays each help entry containing a keyword string
++bos_apropos - Displays each help entry containing a keyword string
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/bos_create.pod
++++ openafs/doc/man-pages/pod8/bos_create.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-bos create - Defines a new process in the BosConfig file and starts it
++bos_create - Defines a new process in the BosConfig file and starts it
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/bos_delete.pod
++++ openafs/doc/man-pages/pod8/bos_delete.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-bos delete - Deletes a server process from the BosConfig file
++bos_delete - Deletes a server process from the BosConfig file
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/bos_exec.pod
++++ openafs/doc/man-pages/pod8/bos_exec.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-bos exec - Executes a command on a remote server machine
++bos_exec - Executes a command on a remote server machine
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/bos_getdate.pod
++++ openafs/doc/man-pages/pod8/bos_getdate.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-bos getdate - Displays the time stamps on an AFS binary file
++bos_getdate - Displays the time stamps on an AFS binary file
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/bos_getlog.pod
++++ openafs/doc/man-pages/pod8/bos_getlog.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-bos getlog - Prints a server process's log file
++bos_getlog - Prints a server process's log file
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/bos_getrestart.pod
++++ openafs/doc/man-pages/pod8/bos_getrestart.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-bos getrestart - Displays the automatic restart times for server processes
++bos_getrestart - Displays the automatic restart times for server processes
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/bos_help.pod
++++ openafs/doc/man-pages/pod8/bos_help.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-bos help - Displays help for bos commands
++bos_help - Displays help for bos commands
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/bos_install.pod
++++ openafs/doc/man-pages/pod8/bos_install.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-bos install - Installs a new version of a binary file
++bos_install - Installs a new version of a binary file
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/bos_listhosts.pod
++++ openafs/doc/man-pages/pod8/bos_listhosts.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-bos listhosts - Displays the contents of the CellServDB file
++bos_listhosts - Displays the contents of the CellServDB file
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/bos_listkeys.pod
++++ openafs/doc/man-pages/pod8/bos_listkeys.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-bos listkeys - Displays the server encryption keys from the KeyFile file
++bos_listkeys - Displays the server encryption keys from the KeyFile file
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/bos_listusers.pod
++++ openafs/doc/man-pages/pod8/bos_listusers.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-bos listusers - Lists the privileged users from the UserList file
++bos_listusers - Lists the privileged users from the UserList file
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/bos_prune.pod
++++ openafs/doc/man-pages/pod8/bos_prune.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-bos prune - Removes obsolete files from /usr/afs/bin and /usr/afs/logs
++bos_prune - Removes obsolete files from /usr/afs/bin and /usr/afs/logs
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/bos_removehost.pod
++++ openafs/doc/man-pages/pod8/bos_removehost.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-bos removehost - Removes a database server machine from the CellServDB file
++bos_removehost - Removes a database server machine from the CellServDB file
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/bos_removekey.pod
++++ openafs/doc/man-pages/pod8/bos_removekey.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-bos removekey - Removes a server encryption key from the KeyFile file
++bos_removekey - Removes a server encryption key from the KeyFile file
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/bos_removeuser.pod
++++ openafs/doc/man-pages/pod8/bos_removeuser.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-bos removeuser - Removes a privileged user from the UserList file
++bos_removeuser - Removes a privileged user from the UserList file
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/bos_restart.pod
++++ openafs/doc/man-pages/pod8/bos_restart.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-bos restart - Restarts a server process
++bos_restart - Restarts a server process
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/bos_salvage.pod
++++ openafs/doc/man-pages/pod8/bos_salvage.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-bos salvage - Restores internal consistency to a file system or volume
++bos_salvage - Restores internal consistency to a file system or volume
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/bos_setauth.pod
++++ openafs/doc/man-pages/pod8/bos_setauth.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-bos setauth - Sets authorization checking requirements for all server processes
++bos_setauth - Sets authorization checking requirements for all server processes
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/bos_setcellname.pod
++++ openafs/doc/man-pages/pod8/bos_setcellname.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-bos setcellname - Sets the cell's name in ThisCell and CellServDB
++bos_setcellname - Sets the cell's name in ThisCell and CellServDB
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/bos_setrestart.pod
++++ openafs/doc/man-pages/pod8/bos_setrestart.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-bos setrestart - Sets when the BOS Server restarts processes
++bos_setrestart - Sets when the BOS Server restarts processes
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/bos_shutdown.pod
++++ openafs/doc/man-pages/pod8/bos_shutdown.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-bos shutdown - Stops a process without changing its status flag
++bos_shutdown - Stops a process without changing its status flag
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/bos_start.pod
++++ openafs/doc/man-pages/pod8/bos_start.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-bos start - Starts a process after setting its status flag
++bos_start - Starts a process after setting its status flag
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/bos_startup.pod
++++ openafs/doc/man-pages/pod8/bos_startup.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-bos startup - Starts a process without changing its status flag
++bos_startup - Starts a process without changing its status flag
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/bos_status.pod
++++ openafs/doc/man-pages/pod8/bos_status.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-bos status - Displays the status of server processes
++bos_status - Displays the status of server processes
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/bos_stop.pod
++++ openafs/doc/man-pages/pod8/bos_stop.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-bos stop - Stops a process after changing its status flag
++bos_stop - Stops a process after changing its status flag
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/bos_uninstall.pod
++++ openafs/doc/man-pages/pod8/bos_uninstall.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-bos uninstall - Reverts to the former version of a process's binary file
++bos_uninstall - Reverts to the former version of a process's binary file
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/fstrace_apropos.pod
++++ openafs/doc/man-pages/pod8/fstrace_apropos.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-fstrace apropos - Displays each help entry containing a keyword string
++fstrace_apropos - Displays each help entry containing a keyword string
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/fstrace_clear.pod
++++ openafs/doc/man-pages/pod8/fstrace_clear.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-fstrace clear - Clears the trace log
++fstrace_clear - Clears the trace log
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/fstrace_dump.pod
++++ openafs/doc/man-pages/pod8/fstrace_dump.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-fstrace dump - Dumps a trace log
++fstrace_dump - Dumps a trace log
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/fstrace_help.pod
++++ openafs/doc/man-pages/pod8/fstrace_help.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-fstrace help - Displays help for fstrace commands
++fstrace_help - Displays help for fstrace commands
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/fstrace_lslog.pod
++++ openafs/doc/man-pages/pod8/fstrace_lslog.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-fstrace lslog - Displays information about a log
++fstrace_lslog - Displays information about a log
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/fstrace_lsset.pod
++++ openafs/doc/man-pages/pod8/fstrace_lsset.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-fstrace lsset - Reports the status of an event set
++fstrace_lsset - Reports the status of an event set
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/fstrace_setlog.pod
++++ openafs/doc/man-pages/pod8/fstrace_setlog.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-fstrace setlog - Sets the size of a trace log
++fstrace_setlog - Sets the size of a trace log
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/fstrace_setset.pod
++++ openafs/doc/man-pages/pod8/fstrace_setset.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-fstrace setset - Sets the status of an event set
++fstrace_setset - Sets the status of an event set
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/kas_apropos.pod
++++ openafs/doc/man-pages/pod8/kas_apropos.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-kas apropos - Displays each help entry containing a keyword string
++kas_apropos - Displays each help entry containing a keyword string
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/kas_create.pod
++++ openafs/doc/man-pages/pod8/kas_create.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-kas create - Creates an entry in the Authentication Database
++kas_create - Creates an entry in the Authentication Database
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/kas_delete.pod
++++ openafs/doc/man-pages/pod8/kas_delete.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-kas delete - Deletes an entry from the Authentication Database
++kas_delete - Deletes an entry from the Authentication Database
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/kas_examine.pod
++++ openafs/doc/man-pages/pod8/kas_examine.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-kas examine - Displays information from an Authentication Database entry
++kas_examine - Displays information from an Authentication Database entry
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/kas_forgetticket.pod
++++ openafs/doc/man-pages/pod8/kas_forgetticket.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-kas forgetticket - Discards all tickets for the issuer
++kas_forgetticket - Discards all tickets for the issuer
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/kas_help.pod
++++ openafs/doc/man-pages/pod8/kas_help.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-kas help - Displays help for kas commands
++kas_help - Displays help for kas commands
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/kas_interactive.pod
++++ openafs/doc/man-pages/pod8/kas_interactive.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-kas interactive - Enters interactive mode
++kas_interactive - Enters interactive mode
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/kas_list.pod
++++ openafs/doc/man-pages/pod8/kas_list.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-kas list - Displays all entries in the Authentication Database
++kas_list - Displays all entries in the Authentication Database
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/kas_listtickets.pod
++++ openafs/doc/man-pages/pod8/kas_listtickets.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-kas listtickets - Displays all of the issuer's tickets (tokens)
++kas_listtickets - Displays all of the issuer's tickets (tokens)
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/kas_noauthentication.pod
++++ openafs/doc/man-pages/pod8/kas_noauthentication.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-kas noauthentication - Discards an authenticated identity in interactive mode
++kas_noauthentication - Discards an authenticated identity in interactive mode
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/kas_quit.pod
++++ openafs/doc/man-pages/pod8/kas_quit.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-kas quit - Leaves interactive mode
++kas_quit - Leaves interactive mode
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/kas_setfields.pod
++++ openafs/doc/man-pages/pod8/kas_setfields.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-kas setfields - Sets fields in an Authentication Database entry
++kas_setfields - Sets fields in an Authentication Database entry
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/kas_setpassword.pod
++++ openafs/doc/man-pages/pod8/kas_setpassword.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-kas setpassword - Changes the key field in an Authentication Database entry
++kas_setpassword - Changes the key field in an Authentication Database entry
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/kas_statistics.pod
++++ openafs/doc/man-pages/pod8/kas_statistics.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-kas statistics - Displays statistics from an Authentication Server process
++kas_statistics - Displays statistics from an Authentication Server process
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/kas_stringtokey.pod
++++ openafs/doc/man-pages/pod8/kas_stringtokey.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-kas stringtokey - Converts a character string into an octal key
++kas_stringtokey - Converts a character string into an octal key
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/kas_unlock.pod
++++ openafs/doc/man-pages/pod8/kas_unlock.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-kas unlock - Unlocks a locked user account
++kas_unlock - Unlocks a locked user account
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/uss_add.pod
++++ openafs/doc/man-pages/pod8/uss_add.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-uss add - Creates a user account
++uss_add - Creates a user account
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/uss_apropos.pod
++++ openafs/doc/man-pages/pod8/uss_apropos.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-uss apropos - Displays each help entry containing a keyword string.
++uss_apropos - Displays each help entry containing a keyword string.
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/uss_bulk.pod
++++ openafs/doc/man-pages/pod8/uss_bulk.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-uss bulk - Executes multiple uss commands listed in a file
++uss_bulk - Executes multiple uss commands listed in a file
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/uss_delete.pod
++++ openafs/doc/man-pages/pod8/uss_delete.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-uss delete - Deletes a user account
++uss_delete - Deletes a user account
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod8/uss_help.pod
++++ openafs/doc/man-pages/pod8/uss_help.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-uss help - Displays help for uss commands
++uss_help - Displays help for uss commands
+ =head1 SYNOPSIS
+--- openafs.orig/doc/man-pages/pod1/fs_apropos.pod
++++ openafs/doc/man-pages/pod1/fs_apropos.pod
+@@ -1,6 +1,6 @@
+ =head1 NAME
+-fs apropos - Displays each help entry containing a keyword string
++fs_apropos - Displays each help entry containing a keyword string
+ =head1 SYNOPSIS
diff --git a/debian/patches/ktc-prototypes b/debian/patches/ktc-prototypes
new file mode 100644 (file)
index 0000000..5e59a45
--- /dev/null
@@ -0,0 +1,24 @@
+Expose prototypes for the ktc_* functions on platforms other than Windows.
+Fixed upstream in a different way, but only on the 1.5 branch.
+
+Debian Bug#449432
+
+--- openafs.orig/src/auth/auth.p.h
++++ openafs/src/auth/auth.p.h
+@@ -24,7 +24,6 @@
+     char ticket[MAXKTCTICKETLEN];
+ };
+-#ifdef AFS_NT40_ENV
+ extern int ktc_SetToken(struct ktc_principal *server, struct ktc_token *token,
+                       struct ktc_principal *client, afs_int32 flags);
+@@ -38,6 +37,8 @@
+ extern int ktc_ForgetAllTokens(void);
++#ifdef AFS_NT40_ENV
++
+ /* Flags for the flag word sent along with a token */
+ #define PIOCTL_LOGON          0x1     /* invoked from integrated logon */
index 7ca93e5290403b1b4a4bd073d4da98d8bcaaecb7..e4dfee1c1c83655e51c140f9e53e71d303d25b79 100644 (file)
@@ -8,3 +8,5 @@ compiler-flags
 no-admin-reference
 ucontext-everywhere
 find-core-files
+ktc-prototypes
+afs-man-name
index 8b9b62f27f4101ce535d00a6fed624c8bdc35f44..baf4439d1db97578a0a0fb01efc201d7599ac259 100755 (executable)
@@ -46,9 +46,9 @@ DOC_PACKAGES = libpam-openafs-kaserver openafs-dbserver openafs-fileserver \
 
 # These variable is used only by get-orig-source, which will normally only be
 # run by maintainers.
-VERSION   = 1.4.5pre2
-DEBVERS   = 1.4.5~pre2.dfsg1
-UPSTREAM  = /afs/grand.central.org/software/openafs/candidate/$(VERSION)
+VERSION   = 1.4.5
+DEBVERS   = 1.4.5.dfsg1
+UPSTREAM  = /afs/grand.central.org/software/openafs/$(VERSION)
 
 # Download the upstream source, merge in the doc tarball, and do the
 # repackaging that we have to do for DFSG reasons.  This assumes AFS is
diff --git a/doc/man-pages/man1/fs_uuid.1 b/doc/man-pages/man1/fs_uuid.1
new file mode 100644 (file)
index 0000000..f8cb093
--- /dev/null
@@ -0,0 +1,271 @@
+.rn '' }`
+''' $RCSfile$$Revision$$Date$
+'''
+''' $Log$
+'''
+.de Sh
+.br
+.if t .Sp
+.ne 5
+.PP
+\fB\\$1\fR
+.PP
+..
+.de Sp
+.if t .sp .5v
+.if n .sp
+..
+.de Ip
+.br
+.ie \\n(.$>=3 .ne \\$3
+.el .ne 3
+.IP "\\$1" \\$2
+..
+.de Vb
+.ft CW
+.nf
+.ne \\$1
+..
+.de Ve
+.ft R
+
+.fi
+..
+'''
+'''
+'''     Set up \*(-- to give an unbreakable dash;
+'''     string Tr holds user defined translation string.
+'''     Bell System Logo is used as a dummy character.
+'''
+.tr \(*W-|\(bv\*(Tr
+.ie n \{\
+.ds -- \(*W-
+.ds PI pi
+.if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
+.if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
+.ds L" ""
+.ds R" ""
+'''   \*(M", \*(S", \*(N" and \*(T" are the equivalent of
+'''   \*(L" and \*(R", except that they are used on ".xx" lines,
+'''   such as .IP and .SH, which do another additional levels of
+'''   double-quote interpretation
+.ds M" """
+.ds S" """
+.ds N" """""
+.ds T" """""
+.ds L' '
+.ds R' '
+.ds M' '
+.ds S' '
+.ds N' '
+.ds T' '
+'br\}
+.el\{\
+.ds -- \(em\|
+.tr \*(Tr
+.ds L" ``
+.ds R" ''
+.ds M" ``
+.ds S" ''
+.ds N" ``
+.ds T" ''
+.ds L' `
+.ds R' '
+.ds M' `
+.ds S' '
+.ds N' `
+.ds T' '
+.ds PI \(*p
+'br\}
+.\"    If the F register is turned on, we'll generate
+.\"    index entries out stderr for the following things:
+.\"            TH      Title 
+.\"            SH      Header
+.\"            Sh      Subsection 
+.\"            Ip      Item
+.\"            X<>     Xref  (embedded
+.\"    Of course, you have to process the output yourself
+.\"    in some meaninful fashion.
+.if \nF \{
+.de IX
+.tm Index:\\$1\t\\n%\t"\\$2"
+..
+.nr % 0
+.rr F
+.\}
+.TH FS_UUID 1 "OpenAFS" "23/Oct/2007" "AFS Command Reference"
+.UC
+.if n .hy 0
+.if n .na
+.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
+.de CQ          \" put $1 in typewriter font
+.ft CW
+'if n "\c
+'if t \\&\\$1\c
+'if n \\&\\$1\c
+'if n \&"
+\\&\\$2 \\$3 \\$4 \\$5 \\$6 \\$7
+'.ft R
+..
+.\" @(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2
+.      \" AM - accent mark definitions
+.bd B 3
+.      \" fudge factors for nroff and troff
+.if n \{\
+.      ds #H 0
+.      ds #V .8m
+.      ds #F .3m
+.      ds #[ \f1
+.      ds #] \fP
+.\}
+.if t \{\
+.      ds #H ((1u-(\\\\n(.fu%2u))*.13m)
+.      ds #V .6m
+.      ds #F 0
+.      ds #[ \&
+.      ds #] \&
+.\}
+.      \" simple accents for nroff and troff
+.if n \{\
+.      ds ' \&
+.      ds ` \&
+.      ds ^ \&
+.      ds , \&
+.      ds ~ ~
+.      ds ? ?
+.      ds ! !
+.      ds /
+.      ds q
+.\}
+.if t \{\
+.      ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
+.      ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
+.      ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
+.      ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
+.      ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
+.      ds ? \s-2c\h'-\w'c'u*7/10'\u\h'\*(#H'\zi\d\s+2\h'\w'c'u*8/10'
+.      ds ! \s-2\(or\s+2\h'-\w'\(or'u'\v'-.8m'.\v'.8m'
+.      ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
+.      ds q o\h'-\w'o'u*8/10'\s-4\v'.4m'\z\(*i\v'-.4m'\s+4\h'\w'o'u*8/10'
+.\}
+.      \" troff and (daisy-wheel) nroff accents
+.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
+.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
+.ds v \\k:\h'-(\\n(.wu*9/10-\*(#H)'\v'-\*(#V'\*(#[\s-4v\s0\v'\*(#V'\h'|\\n:u'\*(#]
+.ds _ \\k:\h'-(\\n(.wu*9/10-\*(#H+(\*(#F*2/3))'\v'-.4m'\z\(hy\v'.4m'\h'|\\n:u'
+.ds . \\k:\h'-(\\n(.wu*8/10)'\v'\*(#V*4/10'\z.\v'-\*(#V*4/10'\h'|\\n:u'
+.ds 3 \*(#[\v'.2m'\s-2\&3\s0\v'-.2m'\*(#]
+.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
+.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
+.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
+.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
+.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
+.ds ae a\h'-(\w'a'u*4/10)'e
+.ds Ae A\h'-(\w'A'u*4/10)'E
+.ds oe o\h'-(\w'o'u*4/10)'e
+.ds Oe O\h'-(\w'O'u*4/10)'E
+.      \" corrections for vroff
+.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
+.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
+.      \" for low resolution devices (crt and lpr)
+.if \n(.H>23 .if \n(.V>19 \
+\{\
+.      ds : e
+.      ds 8 ss
+.      ds v \h'-1'\o'\(aa\(ga'
+.      ds _ \h'-1'^
+.      ds . \h'-1'.
+.      ds 3 3
+.      ds o a
+.      ds d- d\h'-1'\(ga
+.      ds D- D\h'-1'\(hy
+.      ds th \o'bp'
+.      ds Th \o'LP'
+.      ds ae ae
+.      ds Ae AE
+.      ds oe oe
+.      ds Oe OE
+.\}
+.rm #[ #] #H #V #F C
+.SH "NAME"
+fs uuid \- Prints the uuid of the client or generates a new one
+.SH "SYNOPSIS"
+\fBfs uuid\fR [\fB\-generate\fR] [\fB\-help\fR]
+.SH "DESCRIPTION"
+\fBfs uuid\fR prints the current uuid of an OpenAFS client. It can
+optionally force the generation of a new uuid, if needed. The client
+uuid is used by the \fBfileserver\fR to differentiate clients with the
+same IP address.
+.SH "CAUTIONS"
+The \fBfs uuid\fR command is only available in OpenAFS versions after
+1.4.5 and 1.5.8. The behavior differs slightly between versions. In
+OpenAFS 1.4.5 and later, the \fB\-generate\fR option is required and the
+uuid for the client machine is never printed. OpenAFS versions 1.5.8
+and later will print the uuid.
+.SH "OPTIONS"
+.Ip "\fB\-generate\fR" 4
+Generates a new uuid for the cache manager. This is useful if two
+clients share the same uuid. \fB\-generate\fR is optional in OpenAFS
+versions 1.5.8 and later, but it is required in OpenAFS versions 1.4.5
+and later.
+.Ip "\fB\-help\fR" 4
+Prints the online help for this command. All other valid options are
+ignored.
+.SH "OUTPUT"
+\fBfs uuid\fR prints out the current uuid for the client or the new uuid
+if the \fB\-generate\fR option is passed to it.
+.SH "EXAMPLES"
+There are only two ways to invoke \fBfs uuid\fR under 1.5.8 and later:
+.PP
+.Vb 2
+\&   % fs uuid
+\&   UUID: 8ac66f9308a8e-47d7-80f7-50d0040cddc2
+.Ve
+.Vb 2
+\&   % fs uuid -generate
+\&   New UUID: 436bd660-1720-429508e470cff38f5c6fb0
+.Ve
+Here is the only way to invoke \fBfs uuid\fR under OpenAFS 1.4.5 and later:
+.PP
+.Vb 2
+\&   % fs uuid -generate
+\&   New uuid generated.
+.Ve
+.SH "PRIVILEGE REQUIRED"
+The issuer must be logged on as the local superuser \f(CWroot\fR.
+.SH "SEE ALSO"
+the \fIfs(1)\fR manpage
+.SH "COPYRIGHT"
+Copyright 2007 Jason Edgecombe <jason@rampaginggeek.com>
+.PP
+This documentation is covered by the IBM Public License Version 1.0. This
+man page was written by Jason Edgecombe for OpenAFS.
+
+.rn }` ''
+.IX Title "FS_UUID 1"
+.IX Name "fs uuid - Prints the uuid of the client or generates a new one"
+
+.IX Header "NAME"
+
+.IX Header "SYNOPSIS"
+
+.IX Header "DESCRIPTION"
+
+.IX Header "CAUTIONS"
+
+.IX Header "OPTIONS"
+
+.IX Item "\fB\-generate\fR"
+
+.IX Item "\fB\-help\fR"
+
+.IX Header "OUTPUT"
+
+.IX Header "EXAMPLES"
+
+.IX Header "PRIVILEGE REQUIRED"
+
+.IX Header "SEE ALSO"
+
+.IX Header "COPYRIGHT"
+
diff --git a/doc/man-pages/pod1/fs_uuid.pod b/doc/man-pages/pod1/fs_uuid.pod
new file mode 100644 (file)
index 0000000..244f5aa
--- /dev/null
@@ -0,0 +1,82 @@
+=head1 NAME
+
+fs uuid - Prints the uuid of the client or generates a new one
+
+=head1 SYNOPSIS
+
+=for html
+<div class="synopsis">
+
+B<fs uuid> [B<-generate>] [B<-help>]
+
+=for html
+</div>
+
+=head1 DESCRIPTION
+
+B<fs uuid> prints the current uuid of an OpenAFS client. It can
+optionally force the generation of a new uuid, if needed. The client
+uuid is used by the B<fileserver> to differentiate clients with the
+same IP address.
+
+=head1 CAUTIONS
+
+The B<fs uuid> command is only available in OpenAFS versions after
+1.4.5 and 1.5.8. The behavior differs slightly between versions. In
+OpenAFS 1.4.5 and later, the B<-generate> option is required and the
+uuid for the client machine is never printed. OpenAFS versions 1.5.8
+and later will print the uuid.
+
+=head1 OPTIONS
+
+=over 4
+
+=item B<-generate>
+
+Generates a new uuid for the cache manager. This is useful if two
+clients share the same uuid. B<-generate> is optional in OpenAFS
+versions 1.5.8 and later, but it is required in OpenAFS versions 1.4.5
+and later.
+
+=item B<-help>
+
+Prints the online help for this command. All other valid options are
+ignored.
+
+=back
+
+=head1 OUTPUT
+
+B<fs uuid> prints out the current uuid for the client or the new uuid
+if the B<-generate> option is passed to it.
+
+=head1 EXAMPLES
+
+There are only two ways to invoke B<fs uuid> under 1.5.8 and later:
+
+   % fs uuid
+   UUID: 8ac66f9308a8e-47d7-80f7-50d0040cddc2
+
+   % fs uuid -generate
+   New UUID: 436bd660-1720-429508e470cff38f5c6fb0
+
+Here is the only way to invoke B<fs uuid> under OpenAFS 1.4.5 and later:
+
+   % fs uuid -generate
+   New uuid generated.
+
+
+=head1 PRIVILEGE REQUIRED
+
+The issuer must be logged on as the local superuser C<root>.
+
+=head1 SEE ALSO
+
+L<fs(1)>
+
+=head1 COPYRIGHT
+
+Copyright 2007 Jason Edgecombe <jason@rampaginggeek.com>
+
+This documentation is covered by the IBM Public License Version 1.0. This
+man page was written by Jason Edgecombe for OpenAFS.
index 75580a4fd3d40058b8e9ce54a76f6fd1f368f993..7fad134a727674789e4aeecc8fecd87f1600b8c6 100644 (file)
@@ -5,7 +5,7 @@
 #include <afs/param.h>
 
 RCSID
-    ("$Header: /cvs/openafs/src/afs/DARWIN/osi_vnodeops.c,v 1.18.2.24 2007/10/15 19:22:43 shadow Exp $");
+    ("$Header: /cvs/openafs/src/afs/DARWIN/osi_vnodeops.c,v 1.18.2.28 2007/10/24 05:45:38 shadow Exp $");
 
 #include <afs/sysincludes.h>   /* Standard vendor system headers */
 #include <afsincludes.h>       /* Afs-based standard headers */
@@ -542,6 +542,8 @@ afs_vop_close(ap)
     else
        code = afs_close(avc, ap->a_fflag, &afs_osi_cred, vop_proc);
     osi_FlushPages(avc, vop_cred);     /* hold bozon lock, but not basic vnode lock */
+    /* This is legit; it just forces the fstrace event to happen */
+    code = afs_CheckCode(code, NULL, 60);
     AFS_GUNLOCK();
 
     return code;
@@ -634,17 +636,22 @@ afs_vop_access(ap)
     /* we can't check for KAUTH_VNODE_TAKE_OWNERSHIP, so we always permit it */
     
     code = afs_AccessOK(tvc, bits, &treq, cmb);
-
+#if defined(AFS_DARWIN80_ENV)
+    /* In a dropbox, cp on 10.4 behaves badly, looping on EACCES */
+    /* In a dropbox, Finder may reopen the file. Let it. */
+    if (code == 0 && ((bits &~(PRSFS_READ|PRSFS_WRITE)) == 0)) {
+       code = afs_AccessOK(tvc, PRSFS_ADMINISTER|PRSFS_INSERT|bits, &treq, cmb);
+    }
+#endif
     if (code == 1 && vnode_vtype(ap->a_vp) == VREG &&
         ap->a_action & KAUTH_VNODE_EXECUTE &&
         (tvc->m.Mode & 0100) != 0100) {
         code = 0;
-     }
+    }
     if (code) {
         code= 0;               /* if access is ok */
     } else {
-       /* In 10.4 cp will loop forever on EACCES */
-        code = afs_CheckCode(EPERM, &treq, 57);        /* failure code */
+        code = afs_CheckCode(EACCES, &treq, 57);        /* failure code */
     }
 out:
      afs_PutFakeStat(&fakestate);
@@ -683,12 +690,15 @@ afs_vop_getattr(ap)
 
     AFS_GLOCK();
     code = afs_getattr(VTOAFS(ap->a_vp), ap->a_vap, vop_cred);
+    /* This is legit; it just forces the fstrace event to happen */
+    code = afs_CheckCode(code, NULL, 58);
     AFS_GUNLOCK();
 #ifdef AFS_DARWIN80_ENV
     VATTR_SET_SUPPORTED(ap->a_vap, va_type);
     VATTR_SET_SUPPORTED(ap->a_vap, va_mode);
     VATTR_SET_SUPPORTED(ap->a_vap, va_uid);
     VATTR_SET_SUPPORTED(ap->a_vap, va_gid);
+    VATTR_SET_SUPPORTED(ap->a_vap, va_fsid);
     VATTR_SET_SUPPORTED(ap->a_vap, va_fileid);
     VATTR_SET_SUPPORTED(ap->a_vap, va_nlink);
     VATTR_SET_SUPPORTED(ap->a_vap, va_data_size);
@@ -715,6 +725,8 @@ afs_vop_setattr(ap)
     int code;
     AFS_GLOCK();
     code = afs_setattr(VTOAFS(ap->a_vp), ap->a_vap, vop_cred);
+    /* This is legit; it just forces the fstrace event to happen */
+    code = afs_CheckCode(code, NULL, 59);
     AFS_GUNLOCK();
     return code;
 }
@@ -1191,6 +1203,7 @@ afs_vop_remove(ap)
     GETNAME();
     AFS_GLOCK();
     error = afs_remove(VTOAFS(dvp), name, vop_cn_cred);
+    error = afs_CheckCode(error, NULL, 61);
     AFS_GUNLOCK();
     cache_purge(vp);
     if (!error) {
@@ -1208,6 +1221,12 @@ afs_vop_remove(ap)
        /* If crashes continue in ubc_hold, comment this out */
         (void)ubc_uncache(vp);
 #endif
+    } else {
+       /* should check for PRSFS_INSERT and not PRSFS_DELETE, but the
+          goal here is to deal with Finder's unhappiness with resource
+          forks that have no resources in a dropbox setting */
+       if (name[0] == '.' && name[1] == '_' && error == EACCES) 
+           error = 0;
     }
 
 #ifndef AFS_DARWIN80_ENV
@@ -2061,14 +2080,14 @@ afs_darwin_getnewvnode(struct vcache *avc)
    Don't touch! */
 int 
 afs_darwin_finalizevnode(struct vcache *avc, struct vnode *dvp, struct componentname *cnp, int isroot) {
-   vnode_t ovp = AFSTOV(avc);
+   vnode_t ovp;
    vnode_t nvp;
    int error;
    struct vnode_fsparam par;
    AFS_GLOCK();
    ObtainWriteLock(&avc->lock,325);
+   ovp = AFSTOV(avc);
    if (!(avc->states & CDeadVnode) && vnode_vtype(ovp) != VNON) {
-        ReleaseWriteLock(&avc->lock);
         AFS_GUNLOCK();
 #if 0 /* unsupported */
         if (dvp && cnp)
@@ -2076,7 +2095,11 @@ afs_darwin_finalizevnode(struct vcache *avc, struct vnode *dvp, struct component
                               cnp->cn_hash,
                               VNODE_UPDATE_PARENT|VNODE_UPDATE_NAME);
 #endif
+       /* Can end up in reclaim... drop GLOCK */
         vnode_rele(ovp);
+       AFS_GLOCK();
+        ReleaseWriteLock(&avc->lock);
+       AFS_GUNLOCK();
         return 0;
    }
    if ((avc->states & CDeadVnode) && vnode_vtype(ovp) != VNON) 
@@ -2098,20 +2121,24 @@ afs_darwin_finalizevnode(struct vcache *avc, struct vnode *dvp, struct component
    error = vnode_create(VNCREATE_FLAVOR, VCREATESIZE, &par, &nvp);
    if (!error) {
        vnode_addfsref(nvp);
+       if ((avc->states & CDeadVnode) && vnode_vtype(ovp) != VNON) 
+          printf("vcache %p should not be CDeadVnode", avc);
+       if (avc->v == ovp) {
+          if (!(avc->states & CVInit)) {
+              vnode_clearfsnode(ovp);
+              vnode_removefsref(ovp);
+          }
+       }
        avc->v = nvp;
        avc->states &=~ CDeadVnode;
-       if (!(avc->states & CVInit)) {
-          vnode_clearfsnode(ovp);
-          vnode_removefsref(ovp);
-       }
    }
+   vnode_put(ovp);
+   vnode_rele(ovp);
    AFS_GLOCK();
    ReleaseWriteLock(&avc->lock);
    if (!error)
       afs_osi_Wakeup(&avc->states);
    AFS_GUNLOCK();
-   vnode_put(ovp);
-   vnode_rele(ovp);
    return error;
 }
 #endif
index d25f6f6166e7dbd56975eab806d6232ea39f5117..52d2ced82855bce2369361ab9a33eaead255f9ee 100644 (file)
@@ -15,7 +15,7 @@
 #include "afs/param.h"
 
 RCSID
-    ("$Header: /cvs/openafs/src/afs/LINUX/osi_module.c,v 1.52.2.28 2007/08/22 02:19:28 shadow Exp $");
+    ("$Header: /cvs/openafs/src/afs/LINUX/osi_module.c,v 1.52.2.29 2007/10/24 18:09:50 shadow Exp $");
 
 #include <linux/module.h> /* early to avoid printf->printk mapping */
 #include "afs/sysincludes.h"
@@ -379,9 +379,7 @@ init_module(void)
     err = register_filesystem(&afs_fs_type);
     if (err) {
        afs_destroy_inodecache();
-#ifndef LINUX_KEYRING_SUPPORT
        osi_syscall_clean();
-#endif
        return err;
     }
 
@@ -408,9 +406,7 @@ cleanup_module(void)
     osi_keyring_shutdown();
 #endif
     osi_sysctl_clean();
-#ifndef LINUX_KEYRING_SUPPORT
     osi_syscall_clean();
-#endif
     unregister_filesystem(&afs_fs_type);
 
     afs_destroy_inodecache();
index 5f8053f48e64c7601aa976d435b9ae7cec0bf9b2..e1c11a99fb77adcbc345ac2526636203f811ac32 100644 (file)
@@ -18,7 +18,7 @@
 #include "afs/param.h"
 
 RCSID
-    ("$Header: /cvs/openafs/src/afs/VNOPS/afs_vnop_lookup.c,v 1.50.2.18 2006/02/18 04:09:36 shadow Exp $");
+    ("$Header: /cvs/openafs/src/afs/VNOPS/afs_vnop_lookup.c,v 1.50.2.19 2007/10/16 22:03:46 shadow Exp $");
 
 #include "afs/sysincludes.h"   /* Standard vendor system headers */
 #include "afsincludes.h"       /* Afs-based standard headers */
@@ -497,7 +497,7 @@ Next_AtSys(register struct vcache *avc, struct vrequest *areq,
            au = afs_GetUser(areq->uid, avc->fid.Cell, 0);
            if (au->exporter) {
                error =
-                   EXP_SYSNAME(au->exporter, (char *)0, sysnamelist, num);
+                   EXP_SYSNAME(au->exporter, (char *)0, sysnamelist, &num);
                if (error) {
                    return 0;
                }
index d9ead8b15fb46fa92808fa4321e59650a98a55df..70a764c7ad1db709c8cd69d81598c4392893edb8 100644 (file)
@@ -11,7 +11,7 @@
 #include "afs/param.h"
 
 RCSID
-    ("$Header: /cvs/openafs/src/afs/afs_call.c,v 1.74.2.23 2007/10/10 16:57:54 shadow Exp $");
+    ("$Header: /cvs/openafs/src/afs/afs_call.c,v 1.74.2.25 2007/10/17 03:51:44 shadow Exp $");
 
 #include "afs/sysincludes.h"   /* Standard vendor system headers */
 #include "afsincludes.h"       /* Afs-based standard headers */
@@ -508,11 +508,12 @@ afs_DaemonOp(long parm, long parm2, long parm3, long parm4, long parm5,
 static void
 wait_for_cachedefs(void) {
 #ifdef AFS_CACHE_VNODE_PATH
-    while ((afs_numcachefiles < 1) || (afs_numfilesperdir < 1) ||
-          (afs_cachebasedir[0] != '/')) {
-       printf("afs: waiting for cache parameter definitions\n");
-       afs_osi_Sleep(&afs_initState);
-    }
+    if (cacheDiskType != AFS_FCACHE_TYPE_MEM) 
+       while ((afs_numcachefiles < 1) || (afs_numfilesperdir < 1) ||
+              (afs_cachebasedir[0] != '/')) {
+           printf("afs: waiting for cache parameter definitions\n");
+           afs_osi_Sleep(&afs_initState);
+       }
 #endif
 }
 
@@ -894,22 +895,24 @@ afs_syscall_call(parm, parm2, parm3, parm4, parm5, parm6)
        osi_FreeSmallSpace(tbuffer);
     } else if (parm == AFSOP_GO) {
 #ifdef AFS_CACHE_VNODE_PATH
-       afs_int32 dummy;
-
-       wait_for_cachedefs();
-
+       if (cacheDiskType != AFS_FCACHE_TYPE_MEM) {
+           afs_int32 dummy;
+           
+           wait_for_cachedefs();
+           
 #ifdef AFS_DARWIN80_ENV
-       get_vfs_context();
-#endif
-       if ((afs_numcachefiles > 0) && (afs_numfilesperdir > 0) && 
-           (afs_cachebasedir[0] == '/')) {
-           for (dummy = 0; dummy < afs_numcachefiles; dummy++) {
-               code = afs_InitCacheFile(NULL, dummy);
-           }
-       }
+           get_vfs_context();
+#endif
+           if ((afs_numcachefiles > 0) && (afs_numfilesperdir > 0) && 
+               (afs_cachebasedir[0] == '/')) {
+               for (dummy = 0; dummy < afs_numcachefiles; dummy++) {
+                   code = afs_InitCacheFile(NULL, dummy);
+               }
+           }
 #ifdef AFS_DARWIN80_ENV
-       put_vfs_context();
+           put_vfs_context();
 #endif
+       }
 #endif
        /* the generic initialization calls come here.  One parameter: should we do the
         * set-time operation on this workstation */
index 81e3db070d53a9eddf8f4ccfc5f47c298f96721a..1cc6c11ad0fe257a4069827da9f2c1a80eab7c77 100644 (file)
@@ -11,7 +11,7 @@
 #include "afs/param.h"
 
 RCSID
-    ("$Header: /cvs/openafs/src/afs/afs_daemons.c,v 1.28.2.13 2006/02/13 18:31:13 shadow Exp $");
+    ("$Header: /cvs/openafs/src/afs/afs_daemons.c,v 1.28.2.14 2007/10/23 00:03:01 shadow Exp $");
 
 #ifdef AFS_AIX51_ENV
 #define __FULL_PROTO
@@ -49,7 +49,7 @@ afs_int32 afs_CheckServerDaemonStarted = 0;
 #ifdef DEFAULT_PROBE_INTERVAL
 afs_int32 PROBE_INTERVAL = DEFAULT_PROBE_INTERVAL;     /* overridding during compile */
 #else
-afs_int32 PROBE_INTERVAL = 180;        /* default to 3 min */
+afs_int32 PROBE_INTERVAL = 30; /* default to 3 min */
 #endif
 
 #define PROBE_WAIT() (1000 * (PROBE_INTERVAL - ((afs_random() & 0x7fffffff) \
index 203c273613244f2e2e80737d9042776aa79555aa..071f0b5b3542fba48f75f4effde69a9dc02f8b36 100644 (file)
@@ -11,7 +11,7 @@
 #include "afs/param.h"
 
 RCSID
-    ("$Header: /cvs/openafs/src/afs/afs_nfsclnt.c,v 1.12.2.3 2007/03/20 19:24:11 shadow Exp $");
+    ("$Header: /cvs/openafs/src/afs/afs_nfsclnt.c,v 1.12.2.4 2007/10/16 22:03:45 shadow Exp $");
 
 #if !defined(AFS_NONFSTRANS) || defined(AFS_AIX_IAUTH_ENV)
 #include "afs/sysincludes.h"   /* Standard vendor system headers */
@@ -331,6 +331,8 @@ afs_nfsclient_sysname(register struct nfsclientpag *np, char *inname,
     }
     *outname = np->sysname;
     *num = np->sysnamecount;
+    if (!np->sysname[0])
+       return ENODEV; /* XXX */
     return 0;
 }
 
index 05361c615c5d9762c6ae379cf4824e981cdb6346..5caf6549ff60b18f7739f24b70e28f979dd13efd 100644 (file)
@@ -11,7 +11,7 @@
 #include "afs/param.h"
 
 RCSID
-    ("$Header: /cvs/openafs/src/afs/afs_osidnlc.c,v 1.8.2.5 2006/02/18 04:09:33 shadow Exp $");
+    ("$Header: /cvs/openafs/src/afs/afs_osidnlc.c,v 1.8.2.6 2007/10/19 20:40:52 shadow Exp $");
 
 #include "afs/sysincludes.h"   /*Standard vendor system headers */
 #include "afsincludes.h"       /*AFS-based standard headers */
@@ -242,7 +242,12 @@ osi_dnlc_lookup(struct vcache *adp, char *aname, int locktype)
        ReleaseReadLock(&afs_xvcache);
        dnlcstats.misses++;
     } else {
-       if (tvc->states & CVInit) {
+       if ((tvc->states & CVInit)
+#ifdef  AFS_DARWIN80_ENV
+           ||(tvc->states & CDeadVnode)
+#endif
+           )      
+       {
            ReleaseReadLock(&afs_xvcache);
            dnlcstats.misses++;
            osi_dnlc_remove(adp, aname, tvc);
index 7c5e5e269977fe7c4031b4ffe5df8a55e118059a..6ff46c3fcaf22677c1725fd12eeda0e381aee933 100644 (file)
@@ -58,7 +58,7 @@
 #include <afs/param.h>
 
 RCSID
-    ("$Header: /cvs/openafs/src/afsd/afsd.c,v 1.43.2.22 2007/10/10 16:57:56 shadow Exp $");
+    ("$Header: /cvs/openafs/src/afsd/afsd.c,v 1.43.2.23 2007/10/23 14:31:29 shadow Exp $");
 
 #define VFS 1
 
@@ -428,7 +428,7 @@ afsd_event_cleanup(int signo) {
 
     CFRunLoopRemoveSource(CFRunLoopGetCurrent(), source, kCFRunLoopDefaultMode);
     CFRelease (source);
-    IODeregisterForSystemPower(iterator);
+    IODeregisterForSystemPower(&iterator);
     IOServiceClose(root_port);
     IONotificationPortDestroy(notify);
 
index 0835edaec83d9d08fd038fec91525e24432350aa..7486cbd817c0ee4261af400701e8e2200d7ec333 100644 (file)
@@ -15,7 +15,7 @@
 #include <afs/param.h>
 
 RCSID
-    ("$Header: /cvs/openafs/src/bucoord/restore.c,v 1.8.2.7 2007/06/26 05:44:57 jaltman Exp $");
+    ("$Header: /cvs/openafs/src/bucoord/restore.c,v 1.8.2.8 2007/10/16 16:56:48 jaltman Exp $");
 
 #include <afs/stds.h>
 #include <sys/types.h>
@@ -224,7 +224,7 @@ bc_Restorer(aindex)
            code = bcdb_FindDumpByID(dumpTaskPtr->parentDumpID, dumpDescr);
            if (code)
              {
-               afs_com_err(whoami, "Couldn't look up info for dump %d\n",
+               afs_com_err(whoami, code, "Couldn't look up info for dump %d\n",
                        dumpTaskPtr->parentDumpID);
                continue;
              }
index 788cb2a31b90444310a6a4898c08f2feeecc1930..40108b5399cd4523ce0d7c5557eb9e103da22123 100755 (executable)
@@ -4,7 +4,7 @@
 #
 # Written by:  Derek Atkins <warlord@MIT.EDU>
 #
-# $Revision: 1.1.2.2 $
+# $Revision: 1.1.2.3 $
 #
 
 # Define where the Specfile is located.
@@ -21,10 +21,17 @@ buildopts=
 if [ `echo $rhrel | grep -c 'Fedora Core'` = 1 ] ; then
   ostype='fc'
   osrel=`echo $rhrel | sed -e 's/^.*release \([^ ]*\).*$/\1/' -e 's/\.//g'`
+elif [ `echo $rhrel | grep -c 'Fedora'` = 1 ] ; then
+  ostype='fc'
+  osrel=`echo $rhrel | sed -e 's/^.*release \([^ ]*\).*$/\1/' -e 's/\.//g'`
 elif [ `echo $rhrel | grep -c 'Red Hat Enterprise Linux'` = 1 ] ; then
   ostype='rhel'
   excludearch=i586
   osrel=`echo $rhrel | sed -e 's/^.*release \([^ ]*\).*$/\1/' -e 's/\.//g'`
+elif [ `echo $rhrel | grep -c 'CentOS'` = 1 ] ; then
+  ostype='rhel'
+  excludearch=i586
+  osrel=`echo $rhrel | sed -e 's/^.*release \([^ ]*\).*$/\1/' -e 's/\.//g'`
 elif [ `echo $rhrel | grep -c 'Red Hat Linux'` = 1 ] ; then
   ostype='rh'
   osrel=`echo $rhrel | sed -e 's/^.*release \([^ ]*\).*$/\1/' -e 's/\.//g'`
index f7c626315637fce38812cd9c96fa0b71e570357d..99ae034fbe9488e64b0f9785ea4dc0dcc1c3593f 100644 (file)
@@ -1,4 +1,4 @@
-# Openafs Spec $Revision: 1.1.2.4 $
+# Openafs Spec $Revision: 1.1.2.6 $
 
 %define afsvers 1.4.5pre1
 %define pkgvers 1.4.5pre1
@@ -229,7 +229,7 @@ URL: http://www.openafs.org
 BuildRoot: %{_tmppath}/%{name}-%{version}-root
 Packager: Derek Atkins <warlord@MIT.EDU>
 Group: Networking/Filesystems
-BuildRequires: %{?kdepend:%{kdepend}, } pam-devel, ncurses-devel
+BuildRequires: %{?kdepend:%{kdepend}, } pam-devel, ncurses-devel, flex, bison
 %if %{build_userspace}
 BuildRequires: autoconf
 %endif
@@ -244,6 +244,7 @@ Source10: http://www.openafs.org/dl/openafs/%{afsvers}/RELNOTES-%{afsvers}
 Source11: http://www.openafs.org/dl/openafs/%{afsvers}/ChangeLog
 
 Source30: openafs-kernel-version.sh
+Source998: openafs-buildall.sh
 Source999: kmodtool
 
 Patch0:  openafs-1.4.0-kmodule26.patch
index 9eac9dad584d8fdd12144d5c8098fd6f3867e609..a5c5dd89aefc2853acdde85e58408a8e357d3584 100644 (file)
@@ -11,7 +11,7 @@
 #include <afs/param.h>
 
 RCSID
-    ("$Header: /cvs/openafs/src/venus/fs.c,v 1.24.2.7 2007/06/12 19:20:21 shadow Exp $");
+    ("$Header: /cvs/openafs/src/venus/fs.c,v 1.24.2.8 2007/10/16 17:20:09 jaltman Exp $");
 
 #include <afs/afs_args.h>
 #include <rx/xdr.h>
@@ -69,7 +69,7 @@ static char tspace[1024];
 static struct ubik_client *uclient;
 
 static int GetClientAddrsCmd(), SetClientAddrsCmd(), FlushMountCmd();
-static int RxStatProcCmd(), RxStatPeerCmd(), GetFidCmd(), NewUuidCmd();
+static int RxStatProcCmd(), RxStatPeerCmd(), GetFidCmd(), UuidCmd();
 
 extern char *hostutil_GetNameByINet();
 extern struct hostent *hostutil_GetHostByName();
@@ -1244,21 +1244,40 @@ FlushVolumeCmd(struct cmd_syndesc *as, char *arock)
     return error;
 }
 
+/* 
+ * The Windows version of UuidCmd displays the UUID.
+ * When the UNIX version is updated to do the same
+ * be sure to replace the CMD_REQUIRED flag with
+ * CMD_OPTIONAL in the cmd_AddParam(-generate) call 
+ */
 static int
-NewUuidCmd(struct cmd_syndesc *as, char *arock)
+UuidCmd(struct cmd_syndesc *as, char *arock)
 {
     afs_int32 code;
     struct ViceIoctl blob;
 
     blob.in_size = 0;
     blob.out_size = 0;
-    code = pioctl(0, VIOC_NEWUUID, &blob, 1);
-    if (code) {
-       Die(errno, 0);
-       return 1;
-    }
+    
+    if (as->parms[0].items) {
+        if (geteuid()) {
+            fprintf (stderr, "Permission denied: requires root access.\n");
+            return EACCES;
+        }
+
+        /* generate new UUID */
+        code = pioctl(0, VIOC_NEWUUID, &blob, 1);
 
-    printf("New uuid generated.\n");
+        if (code) {
+            Die(errno, 0);
+            return 1;
+        }
+
+        printf("New uuid generated.\n");
+    } else {
+        /* This will never execute */
+        printf("Please add the '-generate' option to generate a new UUID.\n");
+    }
     return 0;
 }
 
@@ -3460,8 +3479,8 @@ defect 3069
                          "get fid for file(s)");
     cmd_AddParm(ts, "-path", CMD_LIST, CMD_OPTIONAL, "dir/file path");
 
-    ts = cmd_CreateSyntax("newuuid", NewUuidCmd, 0,
-                         "force a new uuid");
+    ts = cmd_CreateSyntax("uuid", UuidCmd, 0, "manage the UUID for the cache manager");
+    cmd_AddParm(ts, "-generate", CMD_FLAG, CMD_REQUIRED, "generate a new UUID");
 
     code = cmd_Dispatch(argc, argv);
     if (rxInitDone)
index 327c17cb67f4ec7fb4853820fae0f64397377bec..66f674e2255b1c846e45e50a61c79d5692dea656 100644 (file)
@@ -83,7 +83,7 @@
 #include <afs/param.h>
 
 RCSID
-    ("$Header: /cvs/openafs/src/viced/callback.c,v 1.55.2.17 2007/08/21 08:28:37 jaltman Exp $");
+    ("$Header: /cvs/openafs/src/viced/callback.c,v 1.55.2.18 2007/10/24 15:37:32 shadow Exp $");
 
 #include <stdio.h>
 #include <stdlib.h>            /* for malloc() */
@@ -1181,7 +1181,7 @@ BreakDelayedCallBacks_r(struct host *host)
 
     cbstuff.nbreakers--;
     /* If we succeeded it's always ok to unset HFE_LATER */
-    if (!host->hostFlags & VENUSDOWN)
+    if (!(host->hostFlags & VENUSDOWN))
        host->hostFlags &= ~HFE_LATER;
     return (host->hostFlags & VENUSDOWN);
 }
index 4b5629983bce53855d704513e7a845afe60da0e2..47a8e137f4e3d8c966571a172c9e3af367331e6a 100644 (file)
@@ -11,7 +11,7 @@
 #include <afs/param.h>
 
 RCSID
-    ("$Header: /cvs/openafs/src/volser/vos.c,v 1.40.2.19 2007/07/19 18:52:40 shadow Exp $");
+    ("$Header: /cvs/openafs/src/volser/vos.c,v 1.40.2.20 2007/10/23 14:22:27 shadow Exp $");
 
 #include <sys/types.h>
 #ifdef AFS_NT40_ENV
@@ -342,21 +342,21 @@ WriteData(struct rx_call *call, char *rock)
            error = VOLSERBADOP;
            goto wfail;
        }
+       /* test if we have a valid dump */
+       hset64(filesize, 0, 0);
+       USD_SEEK(ufd, filesize, SEEK_END, &currOffset);
+       hset64(filesize, hgethi(currOffset), hgetlo(currOffset)-sizeof(afs_uint32));
+       USD_SEEK(ufd, filesize, SEEK_SET, &currOffset);
+       USD_READ(ufd, &buffer, sizeof(afs_uint32), &got);
+       if ((got != sizeof(afs_uint32)) || (ntohl(buffer) != DUMPENDMAGIC)) {
+           fprintf(STDERR, "Signature missing from end of file '%s'\n", filename);
+           error = VOLSERBADOP;
+           goto wfail;
+       }
+       /* rewind, we are done */
+       hset64(filesize, 0, 0);
+       USD_SEEK(ufd, filesize, SEEK_SET, &currOffset);
     }
-    /* test if we have a valid dump */
-    hset64(filesize, 0, 0);
-    USD_SEEK(ufd, filesize, SEEK_END, &currOffset);
-    hset64(filesize, hgethi(currOffset), hgetlo(currOffset)-sizeof(afs_uint32));
-    USD_SEEK(ufd, filesize, SEEK_SET, &currOffset);
-    USD_READ(ufd, &buffer, sizeof(afs_uint32), &got);
-    if ((got != sizeof(afs_uint32)) || (ntohl(buffer) != DUMPENDMAGIC)) {
-       fprintf(STDERR, "Signature missing from end of file '%s'\n", filename);
-        error = VOLSERBADOP;
-        goto wfail;
-    }
-    hset64(filesize, 0, 0);
-    USD_SEEK(ufd, filesize, SEEK_SET, &currOffset);
-    /* rewind, we are done */
     code = SendFile(ufd, call, blksize);
     if (code) {
        error = code;