]> git.michaelhowe.org Git - packages/o/openafs.git/log
packages/o/openafs.git
14 years agokrb5_free_string takes a krb5_context
Andrew Deason [Thu, 4 Nov 2010 16:46:10 +0000 (11:46 -0500)]
krb5_free_string takes a krb5_context

Give krb5_free_string a krb5_context, not just the string to free.

Reviewed-on: http://gerrit.openafs.org/3262
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
(cherry picked from commit 354d21878ed401c644a5392f86af3fe6e660801f)

Change-Id: Ief39cbd5edc9bd9298e199f974d3dcecef31a3d5
Reviewed-on: http://gerrit.openafs.org/4009
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
14 years agoDocs: Specify where the Windows mini dump file is written
Rod Widdowson [Fri, 29 Oct 2010 13:21:37 +0000 (14:21 +0100)]
Docs: Specify where the Windows mini dump file is written

Reviewed-on: http://gerrit.openafs.org/3187
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
(cherry picked from commit c61e1aeeef8f81f75084f457e4d6e5e1d754cfa5)

Change-Id: I3ec1a690596b940a1fe8ae2f93d9af1cae1633b8
Reviewed-on: http://gerrit.openafs.org/4008
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
14 years agoQuickstart Guide: misc. fixes
Jason Edgecombe [Wed, 27 Oct 2010 00:32:04 +0000 (20:32 -0400)]
Quickstart Guide: misc. fixes

  * The update server is optional
  * Only worry about fsck when using inode-based storage
  * Add a space where needed

Reviewed-on: http://gerrit.openafs.org/3164
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Jason Edgecombe <jason@rampaginggeek.com>
(cherry picked from commit bd1657fb9d42e46fdc9560687aa0d360395740b2)

Change-Id: Ia5a26d636ab093b8992ee595683bac37c7085ba6
Reviewed-on: http://gerrit.openafs.org/4007
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
14 years agoQuickstart guide: use yum install from openafs repo
Jason Edgecombe [Tue, 26 Oct 2010 19:06:28 +0000 (15:06 -0400)]
Quickstart guide: use yum install from openafs repo

Reviewed-on: http://gerrit.openafs.org/3159
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
(cherry picked from commit 9c32ac52f161135e39ed60cf87bfad3d016f3c6f)

Change-Id: I837934a526d9bb5b77d42b3d8e7481e6b2e5621c
Reviewed-on: http://gerrit.openafs.org/4006
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
14 years agoIrix: Make compiler less chatty
Simon Wilkinson [Tue, 5 Oct 2010 08:01:00 +0000 (09:01 +0100)]
Irix: Make compiler less chatty

Supress a few of our errors from the Irix compiler and linker, so its
output is a little less verbose.

This change suppresses the function declared but not used and
multiple declaration errors that we get due to our static_inline fudge
and the paramater declared but not used errors.

Other error suppression is possible - you just need the number
immediately after the 'cc-' in the build logs to say which number to
add to the -woff line.

Reviewed-on: http://gerrit.openafs.org/2908
Tested-by: Simon Wilkinson <sxw@inf.ed.ac.uk>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
(cherry picked from commit e7a12d56bc3b27a3ada37e2799e1925204d23300)

Change-Id: Ifa967e9936cb3beed19b1df1e234a13ca9c95e37
Reviewed-on: http://gerrit.openafs.org/4005
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
14 years agoconfigure: Restore saved CFLAGS
Simon Wilkinson [Mon, 4 Oct 2010 11:33:24 +0000 (12:33 +0100)]
configure: Restore saved CFLAGS

When we test for whether the C compiler can take the
-fno-strength-reduce flag, we add the flag to CFLAGS to do so.
However, we were not restoring the old value of this flag when we
completed the test, and so we were always setting -fno-strength-reduce
in the userspace compile.

Previously, this was harmless, as we always overwrote CFLAGS, but if
we're moving to a world where we honour the user's setting of CFLAGS,
we need to not leak changes in this way.

Reviewed-on: http://gerrit.openafs.org/2894
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
(cherry picked from commit 907521feb1b9c7a6c816866a672c7ab84dac6abd)

Change-Id: Ie8c2a80b204754f1c17d9fa5e06903a7cdf7e4d2
Reviewed-on: http://gerrit.openafs.org/4004
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Marc Dionne <marc.c.dionne@gmail.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
14 years agoconfigure: Don't let autoconf pick our CFLAGS
Simon Wilkinson [Mon, 4 Oct 2010 12:45:53 +0000 (13:45 +0100)]
configure: Don't let autoconf pick our CFLAGS

If the user hasn't specified CFLAGS on the command line to
./configure, then autoconf will set them to -g -O2 if the compiler
supports those options.

For compatibility with what OpenAFS has always done, and to let us
manually set optimisation and debugging flags later, disable this
behaviour.

Reviewed-on: http://gerrit.openafs.org/2895
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
(cherry picked from commit b1f747c1f131fc1a9f8a5895fb06607a255a27d8)

Change-Id: Id35b288a56c8946a34b234eac1e899898d29ae65
Reviewed-on: http://gerrit.openafs.org/4003
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
14 years agoMention KRB5CCNAME in the aklog man page
Russ Allbery [Tue, 14 Sep 2010 17:12:43 +0000 (10:12 -0700)]
Mention KRB5CCNAME in the aklog man page

AFS users not otherwise familiar with Kerberos may not realize that
one sets KRB5CCNAME to use an alternative ticket cache.  Mention the
variable in the aklog man page, although defer to the Kerberos
documentation for most details.

Reviewed-on: http://gerrit.openafs.org/2761
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Rod Widdowson <rdw@steadingsoftware.com>
Reviewed-by: Russ Allbery <rra@stanford.edu>
(cherry picked from commit 089cd2c1039315fe400f85eec1c9f2152ea090c7)

Change-Id: I0428c8c4dc7f6b1f667e69b571be944777bcb057
Reviewed-on: http://gerrit.openafs.org/4002
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
14 years agoAdd additional dependencies for shlibafsrpc
Simon Wilkinson [Sun, 12 Sep 2010 17:41:21 +0000 (18:41 +0100)]
Add additional dependencies for shlibafsrpc

fsint and rxstat need to be build before shlibafsrpc, so add them
to the dependencies list.

Reviewed-on: http://gerrit.openafs.org/2755
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
(cherry picked from commit a4ec68691869deaf12a6fe405394bba2c9003fb9)

Change-Id: I5528390faf2c0ff9c85505673f4317b0c3900e0e
Reviewed-on: http://gerrit.openafs.org/4001
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
14 years agoAdd a few missing entries to our .gitignores
Simon Wilkinson [Fri, 20 Aug 2010 12:19:30 +0000 (13:19 +0100)]
Add a few missing entries to our .gitignores

Add a couple of build products to the relevant .gitignore files

Reviewed-on: http://gerrit.openafs.org/2599
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
(cherry picked from commit 9da71758f194b98e1be3dee8d588b703874ea9a6)

Change-Id: I0d81739fbadad6a1787e17863df0ee6dcdd083bf
Reviewed-on: http://gerrit.openafs.org/4000
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
14 years agoDocument dropbox permissions
Andrew Deason [Thu, 17 Feb 2011 20:33:07 +0000 (14:33 -0600)]
Document dropbox permissions

Document the behavior and potential problems with granting 'il' rights
to create dropboxes. Do this in the manpage for 'fs setacl' and
chapter 4 of the User Guide.

Change-Id: Ic4e8ee016290080d78037a5c2c3802ce4e2e342c
Reviewed-on: http://gerrit.openafs.org/3977
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
14 years agoRX: Include netinet/ip6.h before inet/ip.h
Andrew Deason [Fri, 14 Jan 2011 20:52:10 +0000 (14:52 -0600)]
RX: Include netinet/ip6.h before inet/ip.h

Some older Solaris (at least some Solaris 8) requires netinet/ip6.h to
be included before inet/ip.h, or the compiler chokes on some
ipv6-related declarations in inet/ip.h. So, include it.

Reviewed-on: http://gerrit.openafs.org/3662
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
(cherry picked from commit 9cc9b0d618ba1c787a8a684077c1d2f205b8889c)

Change-Id: Ic342a8ff9dc4c52c8f7178f103db93ba9bef6712
Reviewed-on: http://gerrit.openafs.org/3990
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
14 years agocheck for error_message
Derrick Brashear [Mon, 1 Nov 2010 01:58:37 +0000 (21:58 -0400)]
check for error_message

IRIX apparently has enough krb5 to try building aklog, but no
error_message. ok. so let's cope

Reviewed-on: http://gerrit.openafs.org/3208
Tested-by: Derrick Brashear <shadow@dementia.org>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
(cherry picked from commit 572f9baaeb626293f4db62a66db1ea9b9a373c03)

Change-Id: I44c71ffedcbe55db696db667d1941a7bdc781cff
Reviewed-on: http://gerrit.openafs.org/3987
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
14 years agoaklog: Fix some format warnings
Simon Wilkinson [Mon, 6 Sep 2010 08:38:47 +0000 (09:38 +0100)]
aklog: Fix some format warnings

Fix some format warnings (size_t vs int) which only appear when we're
building with Heimdal.

Reviewed-on: http://gerrit.openafs.org/2740
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
(cherry picked from commit 5bc4b4956509256e8cf13bd04e4615ee2cb31c65)

Change-Id: Ifac99313d96dcd3d33733ffd75db752ab3854608
Reviewed-on: http://gerrit.openafs.org/3986
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
14 years agoaklog: Fix weak_crypto tests
Simon Wilkinson [Mon, 6 Sep 2010 08:37:23 +0000 (09:37 +0100)]
aklog: Fix weak_crypto tests

The tests for the various ways of enabling weak cryptography fail
with current Heimdal master, because it defines krb5_allow_weak_crypto
but does not prototype it.

Fix this by testing for the Heimdal version (which MIT does not provide)
first, and only if that's not available, try to use allow_weak_crypto.

Reviewed-on: http://gerrit.openafs.org/2739
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
(cherry picked from commit 696e1c015eeef259451c101813b9e930e402cb49)

Change-Id: Ia69e1899f1e3d058271f147d33b58383ca35b4ec
Reviewed-on: http://gerrit.openafs.org/3985
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
14 years agoaklog weak warning
Derrick Brashear [Mon, 1 Nov 2010 02:21:19 +0000 (22:21 -0400)]
aklog weak warning

make aklog guess when you need to enable weak crypto

Reviewed-on: http://gerrit.openafs.org/3209
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
(cherry picked from commit 93ab13cbf3cfee30524f63925a11a0ab0c55d600)

Change-Id: I48b0f6c40a2a6b989bfc859267b080e31a6ffc3c
Reviewed-on: http://gerrit.openafs.org/3988
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
14 years agoRedHat packaging: Use %{dist} not %{osver}
Simon Wilkinson [Fri, 18 Feb 2011 00:36:33 +0000 (00:36 +0000)]
RedHat packaging: Use %{dist} not %{osver}

There's a standard mechanism for defining a RPMs target
distribution in the Fedora and RedHat worlds. This is to use the
%{dist} macro, and to insert it at the end (not the beginning) of
the release field.

Move over to using this standard mechanism, and modify the build
system to match. Note that this means that RPM names have now
changed slightly.

Reviewed-on: http://gerrit.openafs.org/3981
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
(cherry picked from commit 2b094cae6c39bc9e2d8f23f4654e137876b25d57)

Change-Id: I764a91e787acb2d2e3d0595cb344bc5b44465bd9
Reviewed-on: http://gerrit.openafs.org/3984
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
14 years agoRedHat packaging: Use %{dist} not %{osver}
Simon Wilkinson [Fri, 18 Feb 2011 00:36:33 +0000 (00:36 +0000)]
RedHat packaging: Use %{dist} not %{osver}

There's a standard mechanism for defining a RPMs target
distribution in the Fedora and RedHat worlds. This is to use the
%{dist} macro, and to insert it at the end (not the beginning) of
the release field.

Move over to using this standard mechanism, and modify the build
system to match. Note that this means that RPM names have now
changed slightly.

Change-Id: I5a4f1ad827223f48658f595ac424ab64fe98ed39
Reviewed-on: http://gerrit.openafs.org/3981
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
14 years agoafsd: Make mountdir check kernel-specific
Andrew Deason [Thu, 17 Feb 2011 21:47:00 +0000 (15:47 -0600)]
afsd: Make mountdir check kernel-specific

Checking if the /afs directory exists only makes sense for the kernel
afsd. The libuafs afsd does not care if the mount directory actually
exists on the machine or not, since it may not interact with the mount
directory path on the local machine at all.

So, make the mountdir check code be a new afsd function
(afsd_check_mount), and have it stat() the mount directory only in the
kernels-specific afsd.

Reviewed-on: http://gerrit.openafs.org/3980
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
(cherry picked from commit fd010651194f4c9f1324ea7aa8d84426ce9827e4)

Change-Id: Ib4f4fe3a6072f9aea4683bb1ba531da8d965b156
Reviewed-on: http://gerrit.openafs.org/3983
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
14 years agoRedHat: Change the defined initdir path to /etc/rc.d/init.d
Jonathan Billings [Fri, 7 Jan 2011 15:44:27 +0000 (10:44 -0500)]
RedHat: Change the defined initdir path to /etc/rc.d/init.d

On Red Hat systems, /etc/init.d is a symlink to /etc/rc.d/init.d.  We
should use the actual path for packaging the init scripts, to avoid
any issues with package verification.

Reviewed-on: http://gerrit.openafs.org/3625
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: BuildBot <buildbot@rampaginggeek.com>
(cherry picked from commit da912adbf1512702a17b8e381af3d0225875e67c)

Change-Id: Ib00275f873987700312b402d6fe0513ce96e9cf8
Reviewed-on: http://gerrit.openafs.org/3982
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
14 years agoafsd: Make mountdir check kernel-specific
Andrew Deason [Thu, 17 Feb 2011 21:47:00 +0000 (15:47 -0600)]
afsd: Make mountdir check kernel-specific

Checking if the /afs directory exists only makes sense for the kernel
afsd. The libuafs afsd does not care if the mount directory actually
exists on the machine or not, since it may not interact with the mount
directory path on the local machine at all.

So, make the mountdir check code be a new afsd function
(afsd_check_mount), and have it stat() the mount directory only in the
kernels-specific afsd.

Change-Id: Ic0b524e23f518c4f3c9954e6b9614bca984306a3
Reviewed-on: http://gerrit.openafs.org/3980
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
14 years agoWindows: Change GiveUpAllCallBacks default to On
Jeffrey Altman [Fri, 14 Jan 2011 15:45:06 +0000 (10:45 -0500)]
Windows: Change GiveUpAllCallBacks default to On

Change-Id: I2a87f0b22dc1d4d21eae4877f7e367a18bab4283
Reviewed-on: http://gerrit.openafs.org/3660
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
14 years agounix: giveupallcallbacks at shutdown
Derrick Brashear [Wed, 1 Dec 2010 20:23:11 +0000 (15:23 -0500)]
unix: giveupallcallbacks at shutdown

just try to give up callbacks at shutdown. at this point if
you're running 1.4.5 or older, you're sad anyway.
Change-Id: I7d9e9f1de45980f064bccaab338499789aa40646
Reviewed-on: http://gerrit.openafs.org/3404
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
14 years agoubik: Abstract common code in ContactQuorum* functions
Marc Dionne [Sat, 22 Jan 2011 21:04:47 +0000 (16:04 -0500)]
ubik: Abstract common code in ContactQuorum* functions

These functions are mostly identical except for the arguments and the
called operation.  Move as much common code as possible to an iterator
function and a return code check function.  The DISK_WriteV case is
treated a bit differently since it can fall back to using DISK_Write.

This reduces code duplication and shoud simplify maintenance and
future changes.  There should be no functional changes.

Change-Id: If2f88c670da47eaad4baa81975ecc307013f5ce8
Reviewed-on: http://gerrit.openafs.org/3970
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
14 years agoPull in 64BIT_ENV for FBSD
Ben Kaduk [Thu, 17 Feb 2011 20:00:06 +0000 (15:00 -0500)]
Pull in 64BIT_ENV for FBSD

Support for some newer FreeBSD versions was added after we killed
AFS_64BIT_ENV, but the commit to kill it was not cherry-picked
to openafs-stable-1_6_x.  Cherry-picking the new version support
thus introduced a bug, as we still need to define AFS_64BIT_ENV
for these systems on this branch.

We attempted to fix this previously, but that fix was incomplete.
Apply the full fix now.

A direct commit to openafs-stable-1_6_x, as this change is not
relevant for master.

Change-Id: If83edd51552f4719ed80179f7d7423ab15bbb0cb
Reviewed-on: http://gerrit.openafs.org/3976
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
14 years agofileserver: dropbox mode shouldn't allow readback from anonymous
Derrick Brashear [Mon, 7 Feb 2011 15:54:51 +0000 (10:54 -0500)]
fileserver: dropbox mode shouldn't allow readback from anonymous

if you're writing files as anonymous, don't let them be read back.
things which potentially need to page back in will just have to be
authenticated, or lose.

Change-Id: I71a6096239eb59b40a9df09460e8db160e9342da
Reviewed-on: http://gerrit.openafs.org/3901
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
Tested-by: Derrick Brashear <shadow@dementia.org>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
14 years agoshlib-build: Add -p option
Andrew Deason [Thu, 17 Feb 2011 18:37:49 +0000 (12:37 -0600)]
shlib-build: Add -p option

Add a -p option to shlib-build option to generate "plain" shared
objects. That is, shared objects that are intended to be e.g.
dlopen()'d, and are not intended to be libraries dynamically linked to
from other code. Such shared objects do not need a library name,
version numbers, export lists, etc.

Change-Id: I649c1b697a79936c1d580199291124398b05e56b
Reviewed-on: http://gerrit.openafs.org/3975
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
14 years agoshlib-build: Fix usage message
Andrew Deason [Thu, 17 Feb 2011 18:28:44 +0000 (12:28 -0600)]
shlib-build: Fix usage message

Change-Id: Ieb7181784f736a2295fffbea80da55d6a5c099cd
Reviewed-on: http://gerrit.openafs.org/3974
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
14 years agoafsd.fuse: Force internal mount dir to /afs
Andrew Deason [Thu, 17 Feb 2011 21:15:06 +0000 (15:15 -0600)]
afsd.fuse: Force internal mount dir to /afs

Commit 1f1545dfb708b6f70065da58b44676b8eafef772 made it so the
argument given to -mountdir sets the internal mount directory.
However, afsd.fuse assumes that the mount dir is always /afs
internally. So, use the uafs_setMountDir function to reset the
internal mount dir to "/afs", so afsd.fuse can work with non-/afs
mountpoints.

Change-Id: I985f1a25d04af4027c7adef69231e2f56e026d24
Reviewed-on: http://gerrit.openafs.org/3979
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
14 years agoUKERNEL: Add uafs_setMountDir
Andrew Deason [Thu, 17 Feb 2011 21:14:41 +0000 (15:14 -0600)]
UKERNEL: Add uafs_setMountDir

Replace the function uafs_mountWithDir with uafs_setMountDir, and
adjust the one caller. This allows libuafs users to manually set the
mount dir after e.g. the mount dir is set from afsd options.

Change-Id: I85a967ce27a72f54c1ab29b007dbb8634017c897
Reviewed-on: http://gerrit.openafs.org/3978
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
14 years agoLINUX: Fix osi_compat.h include guard
Andrew Deason [Thu, 17 Feb 2011 17:53:08 +0000 (11:53 -0600)]
LINUX: Fix osi_compat.h include guard

Change-Id: I96565ba0adef3d3be646c1ed02c7d022e216f911
Reviewed-on: http://gerrit.openafs.org/3973
Reviewed-by: Marc Dionne <marc.c.dionne@gmail.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: BuildBot <buildbot@rampaginggeek.com>
14 years agoLINUX: Define zero_user_segment
Andrew Deason [Fri, 3 Dec 2010 22:39:57 +0000 (16:39 -0600)]
LINUX: Define zero_user_segment

When the kernel does not have the zero_user_segments function, we
define it ourselves. Also define the zero_user_segment function, since
we use it, and a kernel lacking zero_user_segments will also lack
zero_user_segment.

Reviewed-on: http://gerrit.openafs.org/3432
Tested-by: Andrew Deason <adeason@sinenomine.net>
Reviewed-by: Matt Benjamin <matt@linuxbox.com>
Reviewed-by: Simon Wilkinson <sxw@inf.ed.ac.uk>
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
(cherry picked from commit fb325c3c63d844eda1da23e2ab5facba14994a6f)

Change-Id: I076fcc2e194b2d23394742a1510fd3ccbb5d7a03
Reviewed-on: http://gerrit.openafs.org/3972
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: BuildBot <buildbot@rampaginggeek.com>
14 years agoutil: Use foo_pic.o instead of pic_foo.o
Andrew Deason [Wed, 16 Feb 2011 22:24:47 +0000 (16:24 -0600)]
util: Use foo_pic.o instead of pic_foo.o

Be more consistent with the rest of the tree, and name PIC object
files with the convention foo_pic.o.

Change-Id: Ib3b9642534c51ffb10fe3c86f779b4e9df6af4c1
Reviewed-on: http://gerrit.openafs.org/3968
Reviewed-by: Simon Wilkinson <sxw@inf.ed.ac.uk>
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
14 years agoFix PIC CFLAGS
Andrew Deason [Wed, 16 Feb 2011 21:58:41 +0000 (15:58 -0600)]
Fix PIC CFLAGS

Commit 8eca6a1153eb7768c2f29ea2d48f01f6988cbfe3 just used -fPIC to
generate position-independant code. However, the flag to turn on PIC
varies depending on the compiler, and is not always -fPIC. Just use
SHD_CCRULE instead, which will get us the correct PIC flags.

Change-Id: I61d698587cc3959b35ec27abe3c3b19adab5d8f1
Reviewed-on: http://gerrit.openafs.org/3962
Reviewed-by: Simon Wilkinson <sxw@inf.ed.ac.uk>
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
14 years agoAdd CCRULE variants for each build type
Simon Wilkinson [Wed, 16 Feb 2011 20:41:02 +0000 (20:41 +0000)]
Add CCRULE variants for each build type

Add explicit LWP, PTH and SHD variants of the CCRULE variable for
LWP, pthreaded and shared-library builds respectively. This allows
Makefiles which support building more than one target type to use
these rules directly, rather than brewing their own.

Modify all of the AFS_CCRULE definitions in the build type specific
Makefiles to reference these rules, so we aren't specifying things
twice.

Change-Id: I79bb394cca8971ce71b10ef55b75d5169bf6b80c
Reviewed-on: http://gerrit.openafs.org/3966
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
14 years agoubik: remove unused OLD_URECOVERY code
Marc Dionne [Sat, 29 Jan 2011 17:31:24 +0000 (12:31 -0500)]
ubik: remove unused OLD_URECOVERY code

OLD_URECOVERY is never defined and only serves to preserve unused
code.

Change-Id: Iefc0fcfd177fa134a74cee05b0b45e6bf075ad1c
Reviewed-on: http://gerrit.openafs.org/3969
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
14 years agovol: Restore inode OS_READ/WRITE
Andrew Deason [Tue, 15 Feb 2011 23:21:49 +0000 (17:21 -0600)]
vol: Restore inode OS_READ/WRITE

Commit 335ccb4082657b7d0e4e9af1076356cf115642d2 removed the OS_READ
and OS_WRITE definitions for non-namei code. We need those definitions
to build the pread/pwrite emulation functions, so put them back in.
This allows us to build the inode fileserver backend when we do not
have native positional I/O.

Reviewed-on: http://gerrit.openafs.org/3959
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
(cherry picked from commit 0bb6170b222ee2e9a0a3d224dac890adaed945a9)

Change-Id: Ib025c1ddc9a8d09319941eefe32bd2ba1df6764b
Reviewed-on: http://gerrit.openafs.org/3965
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
14 years agoHPUX: Disable positional I/O
Andrew Deason [Mon, 14 Feb 2011 19:53:11 +0000 (13:53 -0600)]
HPUX: Disable positional I/O

Some versions of HP-UX have the pread() and pwrite() functions, but
they behave in odd ways; most notably, ignoring the offset argument
when _FILE_OFFSET_BITS is defined to 64.

This is noted in recent gnulib documentation
<http://git.savannah.gnu.org/cgit/gnulib.git/tree/doc/posix-functions/pwrite.texi>,
and slightly less clear references to pread() being broken can be
found on the development mailing list for git itself.

It is not completely clear what specific HP-UX versions are affected
by this. An autoconf run-time test may also be insufficient, because
the same binaries should be usable on machines with broken and
non-broken pread() implementations. So, to be safe, disable positional
I/O on HP-UX unconditionally.

Reviewed-on: http://gerrit.openafs.org/3949
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
(cherry picked from commit 11b2c6d6fe4dbbf5a54ae1e08e979c35ab6b7fa0)

Change-Id: Iaa27ae965482aafd0f981e70ce33df438af650e9
Reviewed-on: http://gerrit.openafs.org/3964
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
14 years agolibuafs: Allow -mountdir to override uafs_Setup
Andrew Deason [Fri, 28 Jan 2011 17:11:20 +0000 (11:11 -0600)]
libuafs: Allow -mountdir to override uafs_Setup

For some reason, uafs_Setup accepts a parameter specifying the AFS mount
point, and we effectively ignore any -mountdir option specified in the
string arguments. Allow -mountdir to override the mount point specified
in uafs_Setup, by changing afs_mountDir &co during afsd_mount_afs().

Change-Id: I4ea88923c0a8392d280c1a8f0ca4d3adf741f7f6
Reviewed-on: http://gerrit.openafs.org/3897
Tested-by: Derrick Brashear <shadow@dementia.org>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
14 years agoviced: Enforce lwps limit for -L
Andrew Deason [Mon, 7 Feb 2011 19:13:31 +0000 (13:13 -0600)]
viced: Enforce lwps limit for -L

Previously, we only enforced the calculated lwp/thread maximum when
the -p argument was specified. When -L was specified, we set lwps to
128, which can be over the max of (effectively)
MAX_FILESERVER_THREAD-FILESERVER_HELPER_THREADS, depending on the
value of MAX_FILESERVER_THREAD.

Instead, enforce the lwps min/max after all code to set the lwps has
run.

Change-Id: Ia9fc29855e74631509ea558cfe1b17fcf46e900e
Reviewed-on: http://gerrit.openafs.org/3903
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
14 years agorfc3961: Add a kernel rfc3961 implementation
Simon Wilkinson [Mon, 13 Sep 2010 12:54:32 +0000 (13:54 +0100)]
rfc3961: Add a kernel rfc3961 implementation

Add the necessary mechanisms to build Heimdal's libkrb5/crypto_*.c in
the kernel. This provides the kernel module with a RFC3961
implementation.

In theory this could also be used to provide a RFC3961 implementation
on top of an EVP-based crypto library in userspace, but at the moment
we're just using Heimdal directly for this.

Change-Id: Ie57391da0dabd2dca8b305e23f0c0faa056a4675
Reviewed-on: http://gerrit.openafs.org/3948
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
14 years agoImport of code from heimdal
Heimdal Developers [Thu, 27 Jan 2011 12:22:24 +0000 (12:22 +0000)]
Import of code from heimdal

This commit updates the code imported from heimdal to
8ce821c38744b30e226ff024f675668b991b984d (switch-from-svn-to-git-1998-g8ce821c)

New files are:
krb5/crypto-aes.c
krb5/crypto-evp.c
krb5/crypto.c
krb5/crypto.h
krb5/data.c
krb5/keyblock.c
krb5/store-int.c

Change-Id: I511d54e1353a3662babd2d12611fd31b8e3061a5
Reviewed-on: http://gerrit.openafs.org/3947
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
14 years agoAdd rfc3961 crypto files from Heimdal
Simon Wilkinson [Wed, 17 Nov 2010 21:57:42 +0000 (21:57 +0000)]
Add rfc3961 crypto files from Heimdal

Add the Heimdal files which are necessary to produce a kernel rfc3961
implementation to the import list.

Change-Id: If080207cd882b277548f503e5eb139fe9a54f495
Reviewed-on: http://gerrit.openafs.org/3946
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
14 years agohcrypto: Add hcrypto EVP support to the Unix CM
Simon Wilkinson [Sun, 12 Sep 2010 17:40:08 +0000 (18:40 +0100)]
hcrypto: Add hcrypto EVP support to the Unix CM

This commit adds the files which are necessary to support hcrypto's
EVP interface to the Unix cache manager build. Only a small number
of EVP ciphers and hashes are currently supported -
    * aes_128_cbc
    * aes_256_cbc
    * sha1

Note that the EVP interface is the only supported mechanism to use
the AES cipher - directly calling the underlying crypto functions
is not recommended and may break at any time.

Change-Id: I662073e578b29db1707c6b6433209e75e4db455d
Reviewed-on: http://gerrit.openafs.org/3945
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
14 years agoUnix CM: Add osi_crypto crypto interface
Simon Wilkinson [Sat, 11 Sep 2010 12:02:49 +0000 (13:02 +0100)]
Unix CM: Add osi_crypto crypto interface

Add a new osi file to the cache manager. This file includes functions
which interface hcrypto with the kernel's own cryptography library.

At the moment, the only such function is osi_readRandom which returns
a block of random data from the kernel's PRNG.

Change-Id: Ib728f5bb638ef634efe4822da24bb7cca723983f
Reviewed-on: http://gerrit.openafs.org/3944
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
14 years agoMakefile whitespace fixes
Andrew Deason [Wed, 16 Feb 2011 15:49:03 +0000 (09:49 -0600)]
Makefile whitespace fixes

Some "make"s get tripped up by recipe lines starting with anything but
a tab character. Most of the time we start ours with tabs, but fix a
few instances where they begin with spaces.

Change-Id: I2c17c68deb1b7641ca73e84ec0043b62ce3c54ba
Reviewed-on: http://gerrit.openafs.org/3961
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
14 years agovol: Restore inode OS_READ/WRITE
Andrew Deason [Tue, 15 Feb 2011 23:21:49 +0000 (17:21 -0600)]
vol: Restore inode OS_READ/WRITE

Commit 335ccb4082657b7d0e4e9af1076356cf115642d2 removed the OS_READ
and OS_WRITE definitions for non-namei code. We need those definitions
to build the pread/pwrite emulation functions, so put them back in.
This allows us to build the inode fileserver backend when we do not
have native positional I/O.

Change-Id: I3c066dacbee20301b38f074142cb6b6bb6b05de7
Reviewed-on: http://gerrit.openafs.org/3959
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
14 years agoAutoconf: Add GSSAPI autoconf rules
Simon Wilkinson [Thu, 2 Sep 2010 07:44:27 +0000 (08:44 +0100)]
Autoconf: Add GSSAPI autoconf rules

Add rules to autodetect the location of a system's GSSAPI libraries,
using the gssapi.m4 script from rra-c-util 2.6

Change-Id: Idabb8fdb138a2dac6983aa4d5fd8a2f558ee08be
Reviewed-on: http://gerrit.openafs.org/3943
Tested-by: Christof Hanke <christof.hanke@rzg.mpg.de>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
14 years agoImported upstream tag openafs-stable-1_6_0pre2 via tarball upstream/1.6.0.pre2
Anders Kaseorg [Tue, 15 Feb 2011 07:58:46 +0000 (02:58 -0500)]
Imported upstream tag openafs-stable-1_6_0pre2 via tarball

14 years agoHPUX: Disable positional I/O
Andrew Deason [Mon, 14 Feb 2011 19:53:11 +0000 (13:53 -0600)]
HPUX: Disable positional I/O

Some versions of HP-UX have the pread() and pwrite() functions, but
they behave in odd ways; most notably, ignoring the offset argument
when _FILE_OFFSET_BITS is defined to 64.

This is noted in recent gnulib documentation
<http://git.savannah.gnu.org/cgit/gnulib.git/tree/doc/posix-functions/pwrite.texi>,
and slightly less clear references to pread() being broken can be
found on the development mailing list for git itself.

It is not completely clear what specific HP-UX versions are affected
by this. An autoconf run-time test may also be insufficient, because
the same binaries should be usable on machines with broken and
non-broken pread() implementations. So, to be safe, disable positional
I/O on HP-UX unconditionally.

Change-Id: I09b8d9c441622c961d1df90fe27eeccaa948f5c4
Reviewed-on: http://gerrit.openafs.org/3949
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
14 years agoUpdate 1.6 NEWS entry based on 1.6.0pre2 release notes
Russ Allbery [Mon, 14 Feb 2011 20:36:18 +0000 (12:36 -0800)]
Update 1.6 NEWS entry based on 1.6.0pre2 release notes

Change-Id: Id795a74910bc881f8e93c8e80b9cb55ff48c3b15
Reviewed-on: http://gerrit.openafs.org/3950
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
14 years agoLinux: Fix RX atomics for kernel mode
Simon Wilkinson [Sun, 30 Jan 2011 19:27:17 +0000 (19:27 +0000)]
Linux: Fix RX atomics for kernel mode

Fix a mistake with the definition of rx_atomic_set, and add
the missing declaration of rx_dec_and_read for Linux kernel builds

Change-Id: Ieed7a369670c051abc02d8cc831e8736969fb67a
Reviewed-on: http://gerrit.openafs.org/3942
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
14 years ago1.6.0pre2 release notes
Derrick Brashear [Mon, 14 Feb 2011 16:03:17 +0000 (11:03 -0500)]
1.6.0pre2 release notes

add release notes for 1.6.0pre2

Change-Id: I05eb7d02b3daa9935eec6cbc7f6b8f1de78c23f0
Reviewed-on: http://gerrit.openafs.org/3940
Tested-by: Derrick Brashear <shadow@dementia.org>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
14 years agoMacOS: don't allow krb5 at login when AD plugin authenticates
Derrick Brashear [Thu, 20 Jan 2011 03:56:12 +0000 (22:56 -0500)]
MacOS: don't allow krb5 at login when AD plugin authenticates

if AD is being used to verify authentication (e.g. via builtin)
don't allow get krb5 at login to succeed. since a helper does this we can't
grey the option, but we can decline to act on it.

Reviewed-on: http://gerrit.openafs.org/3690
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
Tested-by: BuildBot <buildbot@rampaginggeek.com>
(cherry picked from commit 6f39035c92713b08065bee28ffdf06c5fe32a971)

Change-Id: I8a9fbfcfee92c333af437a925cf09cea9044adc6
Reviewed-on: http://gerrit.openafs.org/3941
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
14 years agomake 1.6.0pre2 version changes
Derrick Brashear [Mon, 14 Feb 2011 05:25:14 +0000 (00:25 -0500)]
make 1.6.0pre2 version changes

version changes for unix

Change-Id: Iadaa2f74a643faa2646897100c7528de5477a5c1
Reviewed-on: http://gerrit.openafs.org/3938
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
14 years agoRedHat: Change the defined initdir path to /etc/rc.d/init.d
Jonathan Billings [Fri, 7 Jan 2011 15:44:27 +0000 (10:44 -0500)]
RedHat: Change the defined initdir path to /etc/rc.d/init.d

On Red Hat systems, /etc/init.d is a symlink to /etc/rc.d/init.d.  We
should use the actual path for packaging the init scripts, to avoid
any issues with package verification.

Change-Id: I476193b3fd534c8aa70c67970bf2765a30f4c4d5
Reviewed-on: http://gerrit.openafs.org/3625
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: BuildBot <buildbot@rampaginggeek.com>
15 years agoAdd PIC variant for libuafs
Andrew Deason [Mon, 13 Dec 2010 19:11:02 +0000 (13:11 -0600)]
Add PIC variant for libuafs

Build a libuafs that is built with PIC, so it can be used in shared
libraries on all platforms. Also build PIC variants for libafsutil and
libcmd, since we need them for a PIC libuafs anyway.

Change-Id: I017fa22c3b4dd661123ea92da7b3e5b69ee5c170
Reviewed-on: http://gerrit.openafs.org/3896
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
15 years agoauth: Rewrite KeyFile handling code
Simon Wilkinson [Sat, 1 Jan 2011 23:41:29 +0000 (23:41 +0000)]
auth: Rewrite KeyFile handling code

Extend the KeyFile API so that we can support arbitrary numbers of
different key types, each with their own key version numbers and
sub types. Completely rewrite the KeyFile implementation with this
in mind, but implement all of the "old" API in terms of the new one.

Given that the existing KeyFile is modified by third party programs,
we retain that as the storage location for all afsconf_rxkad keys.
Only keys with a type of 1, or above are stored in the new extended
keyfile.

Change-Id: I903a1de938544541a1bfecedb2a039ba24bdfdbc
Reviewed-on: http://gerrit.openafs.org/3772
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
15 years agoWindows: Release Notes updates for 1.6pre2
Jeffrey Altman [Sun, 13 Feb 2011 02:10:44 +0000 (21:10 -0500)]
Windows: Release Notes updates for 1.6pre2

A fairly thorough review of all sections to ensure that the information
is up to date.

Significant reformatting caused by XML editor.

Change-Id: I3d4c12ee98606fa34c31132b4b0ce0d0937471af
Reviewed-on: http://gerrit.openafs.org/3937
Tested-by: Jeffrey Altman <jaltman@openafs.org>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
15 years agoWindows: ChangeLog updates for 1.6.pre2
Jeffrey Altman [Sat, 12 Feb 2011 19:24:02 +0000 (14:24 -0500)]
Windows: ChangeLog updates for 1.6.pre2

Change-Id: I19e0dda81df746b9545cb1b9c360af7d207cc665
Reviewed-on: http://gerrit.openafs.org/3926
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
Reviewed-on: http://gerrit.openafs.org/3934

15 years agoWindows: Release Notes updates for 1.6pre2
Jeffrey Altman [Sun, 13 Feb 2011 02:10:44 +0000 (21:10 -0500)]
Windows: Release Notes updates for 1.6pre2

A fairly thorough review of all sections to ensure that the information
is up to date.

Significant reformatting caused by XML editor.

Change-Id: Iad988b91091a02a7b5de2a1d1fae052fc5ee897f
Reviewed-on: http://gerrit.openafs.org/3936
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
15 years agoLinux: 2.6.38: dentry->d_count is not an atomic
Marc Dionne [Thu, 3 Feb 2011 02:55:27 +0000 (21:55 -0500)]
Linux: 2.6.38: dentry->d_count is not an atomic

d_count is now an int protected by the dentry's d_lock.
Take the lock when we use it, instead of using an atomic_*
function.

Reviewed-on: http://gerrit.openafs.org/3883
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
(cherry-picked from commit 281f5bf5fbb0a546edcce62ef4e097ae9bbdbf73)

Change-Id: I45caa6aef451a7f93bfa43dfb1ebe9b0b856fbd0
Reviewed-on: http://gerrit.openafs.org/3935
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
15 years agoWindows: 1.5.78 Change Log summary
Jeffrey Altman [Tue, 26 Oct 2010 23:02:31 +0000 (19:02 -0400)]
Windows: 1.5.78 Change Log summary

Change-Id: I6cdd2c5d2818fe69a5454c90fb6cdaeaefc2deb3
Reviewed-on: http://gerrit.openafs.org/3161
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
Reviewed-on: http://gerrit.openafs.org/3933
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
15 years agoWindows: Version 1.6pre2
Jeffrey Altman [Sat, 12 Feb 2011 18:42:29 +0000 (13:42 -0500)]
Windows: Version 1.6pre2

1.5.9902.0

Change-Id: I5095d7241bcb9ce11455e09c17bda1dec1d9edf9
Reviewed-on: http://gerrit.openafs.org/3931
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
15 years agodoc: Do not process .in files for html
Andrew Deason [Fri, 12 Nov 2010 16:32:57 +0000 (10:32 -0600)]
doc: Do not process .in files for html

We do not want to process .pod.in files when generating HTML versions
of the man pages. Change the filename filtering logic to only accept
.pod files, so we'll also skip over all other stuff we don't want,
like CVS or fragments directories.

Change-Id: I246000a9323852d0aeefd7e7357eeece4daa3346
Reviewed-on: http://gerrit.openafs.org/3302
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Reviewed-on: http://gerrit.openafs.org/3930
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
15 years agoWindows: Fix GetIoctlHandle path construction
Jeffrey Altman [Sat, 12 Feb 2011 16:52:12 +0000 (11:52 -0500)]
Windows: Fix GetIoctlHandle path construction

GetIoctlHandle() is used to construct the magic pioctl file
path used to initiate pioctl operations with the cache manager.
The first error introduced double directory separators.  The
second error was testing an uninitialized value which could
have resulted in a missing directory separator.

Change-Id: I691fde63adf295c380312772e7d320ff99e89d70
Reviewed-on: http://gerrit.openafs.org/3929
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
15 years agoWindows: Fix symlink and mount point make \\afs\xxx handling
Jeffrey Altman [Sat, 12 Feb 2011 16:45:15 +0000 (11:45 -0500)]
Windows: Fix symlink and mount point make \\afs\xxx handling

When processing a request to make a symlink or a mount point
in the afs root volume (\\AFS) the smb redirector will fail
the request because a server name by itself is not a valid path.
Therefore, we insert the "all" share component to refer to the
root volume as a valid path.  \\AFS\foobar becomes \\AFS\all\foobar.

A recent change stripped the trailing slash from the string
returned by Parent().  This broke the test that determines
whether or not the provided path that failed the IsAFS() test
is in fact referring to the \\AFS server and requires the insertion
of the "all" share name.

This patchset permits the test to work with \\AFS or \\AFS\
and removes extraneous directory separators from the generated
path containing the "all" share.

Change-Id: Idf5f934aaa22c71789ab7970a8e3cd48e1a79d44
Reviewed-on: http://gerrit.openafs.org/3928
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
15 years agoLinux: 2.6.38: dentry->d_count is not an atomic
Marc Dionne [Thu, 3 Feb 2011 02:55:27 +0000 (21:55 -0500)]
Linux: 2.6.38: dentry->d_count is not an atomic

d_count is now an int protected by the dentry's d_lock.
Take the lock when we use it, instead of using an atomic_*
function.

Change-Id: Ib70e4a5315cc343518fa983e47bc7ff925acfc7f
Reviewed-on: http://gerrit.openafs.org/3883
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
15 years agoWindows: ChangeLog updates for 1.6.pre1
Jeffrey Altman [Sat, 12 Feb 2011 19:24:02 +0000 (14:24 -0500)]
Windows: ChangeLog updates for 1.6.pre1

Change-Id: I17de717ffd597c45720a4fbd39a14c5df67f870c
Reviewed-on: http://gerrit.openafs.org/3926
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
15 years agoWindows: Fix GetIoctlHandle path construction
Jeffrey Altman [Sat, 12 Feb 2011 16:52:12 +0000 (11:52 -0500)]
Windows: Fix GetIoctlHandle path construction

GetIoctlHandle() is used to construct the magic pioctl file
path used to initiate pioctl operations with the cache manager.
The first error introduced double directory separators.  The
second error was testing an uninitialized value which could
have resulted in a missing directory separator.

Change-Id: I4e863b854ea12b69858be712455dc6b6a0d36c39
Reviewed-on: http://gerrit.openafs.org/3925
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
15 years agoWindows: Fix symlink and mount point make \\afs\xxx handling
Jeffrey Altman [Sat, 12 Feb 2011 16:45:15 +0000 (11:45 -0500)]
Windows: Fix symlink and mount point make \\afs\xxx handling

When processing a request to make a symlink or a mount point
in the afs root volume (\\AFS) the smb redirector will fail
the request because a server name by itself is not a valid path.
Therefore, we insert the "all" share component to refer to the
root volume as a valid path.  \\AFS\foobar becomes \\AFS\all\foobar.

A recent change stripped the trailing slash from the string
returned by Parent().  This broke the test that determines
whether or not the provided path that failed the IsAFS() test
is in fact referring to the \\AFS server and requires the insertion
of the "all" share name.

This patchset permits the test to work with \\AFS or \\AFS\
and removes extraneous directory separators from the generated
path containing the "all" share.

Change-Id: Ia3b28d83302d9737bd149b4a22bc3ee3a6c8da46
Reviewed-on: http://gerrit.openafs.org/3924
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
15 years agoOpenBSD: curproc has moved in OpenBSD 4.8
Antoine Verheijen [Mon, 24 Jan 2011 07:17:46 +0000 (00:17 -0700)]
OpenBSD: curproc has moved in OpenBSD 4.8

With OpenBSD 4.8, curproc has moved from h/proc.h to
h/systm.h. Fix rx_event.c to reflect this change.

Reviewed-on: http://gerrit.openafs.org/3749
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
(cherry picked from commit e4660dd8cfb314971224dac5d1d13426d56494dd)

Change-Id: Ie59100172daae48dea985749e07416daea88b8d2
Reviewed-on: http://gerrit.openafs.org/3923
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
15 years agoOpenBSD: Add support for OpenBSD 4.8
Antoine Verheijen [Mon, 24 Jan 2011 07:16:02 +0000 (00:16 -0700)]
OpenBSD: Add support for OpenBSD 4.8

Add param headers and other config info for OpenBSD 4.8
support.

Reviewed-on: http://gerrit.openafs.org/3748
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
(cherry picked from commit be0e9fb703d9ca0ae17f1117cd53796f82d7fb30)

Change-Id: I03d4474d66d015126654d6d031a1870705733a41
Reviewed-on: http://gerrit.openafs.org/3922
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
15 years agoutil: Actually install thread_pool_types.h
Simon Wilkinson [Wed, 9 Feb 2011 19:37:18 +0000 (19:37 +0000)]
util: Actually install thread_pool_types.h

The action portion of the rule for thread_pool_types.h was missing,
so the file was never installed. As that file is a dependency for the
whole of the util directory, it would result in util being completely
rebuild with every make invocation.

Add the missing installation rule, so we don't rebuild quite so often!

Change-Id: Idb201c239b6b37a25567cf231059ef05536fc258
Reviewed-on: http://gerrit.openafs.org/3921
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
15 years agoOpenBSD: Make OpenBSD 4.7 param headers consistent
Antoine Verheijen [Fri, 21 Jan 2011 16:25:22 +0000 (09:25 -0700)]
OpenBSD: Make OpenBSD 4.7 param headers consistent

OpenBSD follows the policy of using a separate common
param file (post 1.4.x). However, when introducing support
for i386 OpenBSD 4.7, this was not done and a single param
config header file was created instead. This patch changes
the param files for OpenBSD 4.7 so that they are
consistent with the other OpenBSD versions by using a
separate common param header file.

Reviewed-on: http://gerrit.openafs.org/3725
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
(cherry picked from commit cd6bd75d1c97ce87ab1597d80fcd3cee2ea18825)

Change-Id: I5845e68f3fd7fac905993a0ac7a371e058c9a618
Reviewed-on: http://gerrit.openafs.org/3920
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
15 years agoevalmountdata null pointer before use
Derrick Brashear [Mon, 31 Jan 2011 16:04:08 +0000 (11:04 -0500)]
evalmountdata null pointer before use

volnamep can be used uninitialized. fix that.

Reviewed-on: http://gerrit.openafs.org/3777
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
(cherry picked from commit bf72dbf3d5550857a8d41c910baaa722690c1eee)

Change-Id: I0d08aeed130882aeda12c0181d5b738d4c889491
Reviewed-on: http://gerrit.openafs.org/3919
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
15 years agoLinux: 2.6.38: deal with dcache_lock removal
Marc Dionne [Sat, 29 Jan 2011 01:59:17 +0000 (20:59 -0500)]
Linux: 2.6.38: deal with dcache_lock removal

dcache_lock is gone in 2.6.38, and some of the vfs locking rules
have changed.

Of interest for openafs:
- inode->i_lock protects the d_alias list
- dentry->d_lock protects d_unhashed()

Add a new configure test for dcache_lock, and replace its use by
the appropriate new lock(s).

Reviewed-on: http://gerrit.openafs.org/3771
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
(cherry picked from commit 2eca7aef7b2940e4ef5f9901ce28481af6edb6dd)

Change-Id: Ic6cff1884a55aeb2ab29518e8d160000c6254fc5
Reviewed-on: http://gerrit.openafs.org/3918
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
15 years agoLinux: 2.6.38: Adjust for permission inode operation changes
Marc Dionne [Sat, 29 Jan 2011 00:41:32 +0000 (19:41 -0500)]
Linux: 2.6.38: Adjust for permission inode operation changes

The permission i_op has a new signature with a flags argument, and
must now deal with RCU path walking.
- Fix existing configure test for this i_op, it succeeds when it
shouldn't
- Add a new configure test for the new signature
- Make our permission i_op "RCU-walk aware" - return ECHILD if
called in that mode

Reviewed-on: http://gerrit.openafs.org/3770
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
(cherry picked from commit 5bcc0ea735ea519298c98b46c66bf1326cdee5e4)

Change-Id: Ia47dfe390ea317925acfca709dbd637b68e94ca8
Reviewed-on: http://gerrit.openafs.org/3917
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
15 years agoLinux: allow compile flags to be passed to AC_CHECK_LINUX_BUILD
Marc Dionne [Sat, 29 Jan 2011 00:03:39 +0000 (19:03 -0500)]
Linux: allow compile flags to be passed to AC_CHECK_LINUX_BUILD

Some linux autoconf tests require particular compile flags such as
-Werror.  Add a parameter to the AC_CHECK_LINUX_BUILD macro that
lets the caller pass in any needed special flags.

Adapt a few existing tests that were still using AC_TRY_KBUILD
directly.

Reviewed-on: http://gerrit.openafs.org/3769
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
(cherry picked from commit ca38c9546e323b59189670b80740510fb9ec5269)

Change-Id: I421c95f4f4f0b001ac1eab400dfbabfd2008e7a5
Reviewed-on: http://gerrit.openafs.org/3916
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
15 years agoWindows: correct pthread_xxx_init semantics
Jeffrey Altman [Mon, 7 Feb 2011 21:44:09 +0000 (16:44 -0500)]
Windows: correct pthread_xxx_init semantics

pthread lock and conditional initialization semantics
do not require that the lock structure be zeroed before
pthread_xxxx_init() functions are called.  Since the Windows
CriticalSection initialization does require that the memory
be zeroed, the pthread_xxxx_init() functions must zero the
memory just in case before performing the CriticalSection
initialization.

Reviewed-on: http://gerrit.openafs.org/3904
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
(cherry picked from commit ae11ef7898ecffe8eb2a38151602572c24e32a76)

Change-Id: I71092131183daa0627c21c328bd5e5bf182a0fc2
Reviewed-on: http://gerrit.openafs.org/3915
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
15 years agoWindows: remove duplicate advapi32.lib references
Jeffrey Altman [Thu, 3 Feb 2011 00:24:00 +0000 (19:24 -0500)]
Windows: remove duplicate advapi32.lib references

advapi32.lib is included in the conlibsdll macro.
No need to include it in the link list twice.

Reviewed-on: http://gerrit.openafs.org/3882
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
(cherry picked from commit 15c497e90edc69312dba6843521ff08f0ac19248)

Change-Id: Ibcd82014ca28e8ba0bec6e184bc5ae276a0eea90
Reviewed-on: http://gerrit.openafs.org/3914
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
15 years agospelling/grammar fixes for manpages
Ken Dreyer [Thu, 3 Feb 2011 20:22:02 +0000 (15:22 -0500)]
spelling/grammar fixes for manpages

Several small fixes for spelling and grammar.

Reviewed-on: http://gerrit.openafs.org/3890
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
(cherry picked from commit dca093a17097f7e24d43afe4544e4be896b86680)

Change-Id: Id7a937572a1806f0ef812b8d7089ed5d3c5dabd9
Reviewed-on: http://gerrit.openafs.org/3913
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
15 years agospelling/grammar fixes for vos_clone manpage
Ken Dreyer [Wed, 2 Feb 2011 16:49:31 +0000 (11:49 -0500)]
spelling/grammar fixes for vos_clone manpage

Small spelling/grammar fixes for the vos_clone manpage.

Reviewed-on: http://gerrit.openafs.org/3879
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
(cherry picked from commit ad05600d86d6737f55d7b785bc7c503c4a45be00)

Change-Id: I112899208f1b556a84d20d9ea2f2542f030cbfdc
Reviewed-on: http://gerrit.openafs.org/3912
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
15 years agoWindows: No NCBRESET when probing Loopback after start
Jeffrey Altman [Mon, 31 Jan 2011 16:43:39 +0000 (11:43 -0500)]
Windows: No NCBRESET when probing Loopback after start

The Netbios NCBRESET command resets all of the Netbios state
associated with the LAN adapter including the name bindings.
In response to a detected LAN adapter IP address change, the
smb_LanAdapterChange() function is called to determine if any
Netbios LAN adapter bindings that were in use or should be in
use by afsd_service were altered.  As part of the check,
lana_GetUncServerNameEx() is called which in turn calls
lana_FindLoopback() which in turn issued a lana_IsLoopback()
for each LAN adapter with the 'reset adapter' flag set to TRUE.

Calling lana_IsLoopback() with 'reset' equal TRUE was fine
when lana_GetUncServerNameEx() was only called from smb_Init(),
but it is not fine when called after the service is processing
calls.  By resetting the adapter the binding of the netbios name
"AFS" (or "<MACHINE>-AFS") is removed and all outstanding calls
are canceled.  If the SMB redirector attempts a reconnect during
the window before NCBADDNAM is called to re-bind the name, a
negative cache entry will be placed in the netbios name lookup
table that will prevent the SMB redirector from connecting to
the client for several minutes.

If the environment is one in which frequent IP address change
events are triggered, it is possible that the SMB redirector
will never be able to reconnect to the service.

This patchset adds a flag, LANA_NETBIOS_NO_RESET, to the
lana_GetUncServerEx interface which permits smb_LanAdapterChange()
to avoid the undesirable reset.  This negative flag was selected
in order to avoid changing the current default behavior as the
lanahelper library is used by out of tree installers and it
is preferred that OpenAFS avoid breaking them unnecessarily.

Reviewed-on: http://gerrit.openafs.org/3821
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
(cherry picked from commit efe4a20c46c73c39bd979437956beddcd3057bc3)

Change-Id: Ice4380550fec8c1ac2c2c5ec76e1b73f23cd4829
Reviewed-on: http://gerrit.openafs.org/3911
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
15 years agoWindows: cleanup preprocessor definition namespace
Jeffrey Altman [Mon, 27 Dec 2010 22:57:59 +0000 (17:57 -0500)]
Windows: cleanup preprocessor definition namespace

Do not use reserved preprocessor symbol names.  Instead
use OPENAFS_<PATH>_<HEADER>_H formatted names where <PATH>
is the subdirectory path from src/ in which the header
file originates in the repository.

Reviewed-on: http://gerrit.openafs.org/3599
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
(cherry picked from commit 8e9fff9ed8d773e4a22730d485c0617c456bb0e0)

Change-Id: Ic99253b74d3d88712b1959757d294b31ad590ba0
Reviewed-on: http://gerrit.openafs.org/3806
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
15 years agoscout: restore parallel make
Marc Dionne [Wed, 9 Feb 2011 22:06:00 +0000 (17:06 -0500)]
scout: restore parallel make

Restore the + in the scout Makefile section, lost with commit
4a6a00d6.
Lets scout benefit from a parallel make and avoids a warning.

Change-Id: Ie4c35c93afae4bfefaae0a0db9d676200cb3ee7b
Reviewed-on: http://gerrit.openafs.org/3910
Reviewed-by: Simon Wilkinson <sxw@inf.ed.ac.uk>
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
15 years agoubik: always prefer a dirty cache page for write transactions
Marc Dionne [Fri, 28 Jan 2011 00:07:32 +0000 (19:07 -0500)]
ubik: always prefer a dirty cache page for write transactions

If a write transaction is running concurrently with a read transaction,
a DRead in the write transaction may return a clean cache page brought
in by the read transaction, instead of a previously written dirty page
from the same transaction.  This can result in loss of the written data.

Fix by making sure there is not a dirty version of the requested page
before returning a clean one.

Bug spotted by Jeffrey Hutzelman.

Change-Id: I20543693c98218d8ec1f791508d9404043819376
Reviewed-on: http://gerrit.openafs.org/3764
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
15 years agoEarly dispose of replies in rx_Multi
Rainer Toebbicke [Thu, 27 Jan 2011 14:03:57 +0000 (15:03 +0100)]
Early dispose of replies in rx_Multi

Handles replies as soon as they arrive in rx_Multi, limiting
strain on RX packet queues on massive rx_Multi loops.

Change-Id: I345f7dba1707beeb75bcc65bb519afb9dc741973
Reviewed-on: http://gerrit.openafs.org/3765
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
15 years agoevalmountdata null pointer before use
Derrick Brashear [Mon, 31 Jan 2011 16:04:08 +0000 (11:04 -0500)]
evalmountdata null pointer before use

volnamep can be used uninitialized. fix that.

Change-Id: I4aafb3bc56241b4cfc7ccd0a9cfa9e57bd97157a
Reviewed-on: http://gerrit.openafs.org/3777
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
15 years agoLinux: 2.6.38: deal with dcache_lock removal
Marc Dionne [Sat, 29 Jan 2011 01:59:17 +0000 (20:59 -0500)]
Linux: 2.6.38: deal with dcache_lock removal

dcache_lock is gone in 2.6.38, and some of the vfs locking rules
have changed.

Of interest for openafs:
- inode->i_lock protects the d_alias list
- dentry->d_lock protects d_unhashed()

Add a new configure test for dcache_lock, and replace its use by
the appropriate new lock(s).

Change-Id: Ic8d860d4f9f6438e966c15f5178c0d82343e3e1c
Reviewed-on: http://gerrit.openafs.org/3771
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
15 years agoLinux: 2.6.38: Adjust for permission inode operation changes
Marc Dionne [Sat, 29 Jan 2011 00:41:32 +0000 (19:41 -0500)]
Linux: 2.6.38: Adjust for permission inode operation changes

The permission i_op has a new signature with a flags argument, and
must now deal with RCU path walking.
- Fix existing configure test for this i_op, it succeeds when it
shouldn't
- Add a new configure test for the new signature
- Make our permission i_op "RCU-walk aware" - return ECHILD if
called in that mode

Change-Id: I42a171694717f4621f29f9f59e4f6049926862a3
Reviewed-on: http://gerrit.openafs.org/3770
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
15 years agoLinux: allow compile flags to be passed to AC_CHECK_LINUX_BUILD
Marc Dionne [Sat, 29 Jan 2011 00:03:39 +0000 (19:03 -0500)]
Linux: allow compile flags to be passed to AC_CHECK_LINUX_BUILD

Some linux autoconf tests require particular compile flags such as
-Werror.  Add a parameter to the AC_CHECK_LINUX_BUILD macro that
lets the caller pass in any needed special flags.

Adapt a few existing tests that were still using AC_TRY_KBUILD
directly.

Change-Id: I4a5e3db74f6fb9c35bfa7b2964a294f646e78626
Reviewed-on: http://gerrit.openafs.org/3769
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
15 years agoConvertROtoRW: Use old copyDate for creationDate
Andrew Deason [Thu, 3 Feb 2011 21:40:48 +0000 (15:40 -0600)]
ConvertROtoRW: Use old copyDate for creationDate

When we convert an RO volume to an RW, currently we just copy the
copyDate and creationDate from the RO metadata into the RW. But the
copyDate and creationDate fields have different meanings for RW and RO
volumes: for ROs, the creationDate is merely the last time the data
was updated from the RW during a release operation.

So, if the copyDate is older than the creationDate, use the copyDate
as the new RW creationDate instead. This will probably not match the
creationDate of the original RW, but it will be closer to it, and it
will more accurately represent the conceptual "created time" of the
new RW.

Doing this can avoid forcing an unnecessary full dump on a subsequent
release of the resultant RW volume, since the creationDate is more
accurate.

Change-Id: Ibfffbdc4a79a568261e9e116f6991a3af9db5e0c
Reviewed-on: http://gerrit.openafs.org/3891
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
15 years agonamei: Limit traversal when removing data dirs
Andrew Deason [Thu, 2 Sep 2010 20:05:21 +0000 (15:05 -0500)]
namei: Limit traversal when removing data dirs

namei_RemoveDataDirectories currently calls delTree with 'tree'
pointing to the part of the path immediately following n_base (i.e.
starting at the beginning of n_voldir1). This causes delTree to
traverse all of n_voldir1, trying to delete every directory it finds.

Since we are typically only trying to remove a single volume when
calling namei_RemoveDataDirectories, instead call delTree with 'tree'
pointing to immediately after n_voldir1, and beginning at n_voldir2
and try to just rmdir n_voldir1 afterwards. This way, we do not
traverse a large fraction of the entire partition when just trying to
delete a single volume, and so can significantly speed up volume
removals.

(cherry picked from commit 1ca0a24775794ba2e645854a3bbaa656f2fc8086)
Reviewed-on: http://gerrit.openafs.org/2651
Tested-by: Andrew Deason <adeason@sinenomine.net>
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Change-Id: Iadae1e231b533695af615a231e42ad8204674fe4
Reviewed-on: http://gerrit.openafs.org/3908
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
15 years agonamei: Do not remove n_voldir1
Andrew Deason [Thu, 9 Sep 2010 19:10:01 +0000 (14:10 -0500)]
namei: Do not remove n_voldir1

When removing data directories in namei_RemoveDataDirectories, do not
remove the n_voldir1 directory (directory X in /vicepa/AFSIDat/X).
Removing this directory can race against the creation of an entirely
unrelated volume, causing the create op to fail (since it tries to
create a directory in a directory that no longer exists).

We don't currently have the necessary locking to make this safe, and
since the overhead of n_voldir1 existing is pretty negligible, just
leave it there. Also add some comments briefly justifying this.

Note that other similar races probably exist for directories under
n_voldir1, but they would only be between volumes in the same VG, and
so are much less likely to occur.

(cherry picked from commit f2df207274c65b4fa8c24419150e9084a4d17fca)
Reviewed-on: http://gerrit.openafs.org/2727
Tested-by: Andrew Deason <adeason@sinenomine.net>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
Change-Id: I2df4b73dd5125da0a2de52c3011ba167dc036a8b
Reviewed-on: http://gerrit.openafs.org/3907
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
15 years agoRemove unreached lines
Andrew Deason [Mon, 22 Nov 2010 02:29:11 +0000 (21:29 -0500)]
Remove unreached lines

Fix some macros to eliminate unreached trailing empty statements (such
as: "{code = foo; goto error;};"), and other oddities causing
"statement not reached" warnings. Also eliminate a couple of code
blocks that were never reached.

(cherry picked from commit 1c45cc746e7484e72191fc8d010640692e90bc82)
Reviewed-on: http://gerrit.openafs.org/3368
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Change-Id: Ibe9a94c64d38fe102fdf4fb9c182a5eb3b2adaa5
Reviewed-on: http://gerrit.openafs.org/3906
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
15 years agovol: Always use INVALID_FD to indicate an invalid fd
Jeffrey Altman [Thu, 28 Oct 2010 04:40:32 +0000 (00:40 -0400)]
vol: Always use INVALID_FD to indicate an invalid fd

file descriptors on Windows are not ints and therefore
cannot be safely compared against -1.  Always use INVALID_FD
which is -1 on UNIX and INVALID_HANDLE_VALUE on Windows.

Reviewed-on: http://gerrit.openafs.org/3178
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
Tested-by: Derrick Brashear <shadow@dementia.org>
(cherry picked from commit d21dd16789458c07e63abe021f93f656dba4e52c)

Change-Id: I99e0ef2f0c1ff23817ffb13b270bc0f04bcf12a4
Reviewed-on: http://gerrit.openafs.org/3905
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
15 years agovol: Add VInit cond var and remove busywaits
Andrew Deason [Thu, 2 Sep 2010 16:25:27 +0000 (11:25 -0500)]
vol: Add VInit cond var and remove busywaits

In DAFS, FSYNC_sync was waiting for VInit to reach at least 2 by
looping around pthread_yield(). For a server with a large number of
volumes, it can take a while for volumes to preattach, and so we are
effectively busy-waiting for preattach to finish. This can slow
fileserver startup and peg the cpu.

So instead, add a condition variable for when VInit changes, and wait
on that. Also modify other checkers of VInit to use the cond var.

(cherry picked from commit 31bb2e5eb5feb9c8e84d17b49fe70268127cdd43)
Reviewed-on: http://gerrit.openafs.org/2648
Tested-by: Andrew Deason <adeason@sinenomine.net>
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Change-Id: I773ab01095bb0c101a34146ef9bf201946ebcf8b
Reviewed-on: http://gerrit.openafs.org/3887
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
15 years agoAvoid thread-unsafe PrintInode in threaded code
Andrew Deason [Mon, 12 Jul 2010 20:47:15 +0000 (15:47 -0500)]
Avoid thread-unsafe PrintInode in threaded code

Some potentially-threaded callers were calling PrintInode with a NULL
first argument, which is not threadsafe. Alter them to use local
storage.

(cherry picked from commit 38cf31463e3f3c675de727c1e793e117a90e6d20)
Reviewed-on: http://gerrit.openafs.org/2593
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
Change-Id: I4b6e0f8c41180c017739dbfdb4f2ecbce96df8ec
Reviewed-on: http://gerrit.openafs.org/3886
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
15 years agovol: Use OSI_NULLSOCKET and not -1 to indicate invalid fssync fd
Jeffrey Altman [Thu, 28 Oct 2010 04:43:26 +0000 (00:43 -0400)]
vol: Use OSI_NULLSOCKET and not -1 to indicate invalid fssync fd

The FSync file descriptor is an osi_socket which has an invalid
value of OSI_NULLSOCKET which is not necessarily -1.  Be sure to
compare against OSI_NULLSOCKET and not -1 when checking an invalid
value.

Reviewed-on: http://gerrit.openafs.org/3179
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
Tested-by: Derrick Brashear <shadow@dementia.org>
(cherry picked from commit e8991ff8286f151d109bb4f98d885a583e198f83)

Change-Id: I1627ce0b78d10626b7d375546b400459ff1724ca
Reviewed-on: http://gerrit.openafs.org/3885
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>