openafs.git
11 years agocomerr: no need to libl on macos
Derrick Brashear [Wed, 3 Oct 2012 14:27:37 +0000]
comerr: no need to libl on macos

libl is obsolete on macos; stop linking it

Change-Id: If6e184b6a13ccd3f6b175e9dfbfae9a595322159
Reviewed-on: http://gerrit.openafs.org/8200
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>
Tested-by: Derrick Brashear <shadow@your-file-system.com>

11 years agoconfigure: make use of native build assist tools possible
Derrick Brashear [Wed, 3 Oct 2012 11:47:06 +0000]
configure: make use of native build assist tools possible

provide a way to run native rxgen, config and compile_et

Change-Id: I9d1a2b4a1d4100fdc4a042005586e8fc40f39f7b
Reviewed-on: http://gerrit.openafs.org/8199
Tested-by: Derrick Brashear <shadow@your-file-system.com>
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>

11 years agoAdd some basic tests to check out fuse
Troy Benjegerdes [Mon, 27 Feb 2012 04:56:06 +0000]
Add some basic tests to check out fuse

Update makefiles to have 'make test' and 'make check' use the
_nolibafs build version, since there are no tests that (currently)
require the AFS kernel module to be built.

Clean up fuse test copyright notice, Alphabetize configure.ac

Change-Id: Icc95dd3393cd66f0d04fa5f6e8f806db60ca031e
Reviewed-on: http://gerrit.openafs.org/8135
Reviewed-by: Troy Benjegerdes <hozer-gerrit@hozed.org>
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>
Tested-by: BuildBot <buildbot@rampaginggeek.com>

11 years agoconfig: make makefile builder be a config tool also
Derrick Brashear [Wed, 3 Oct 2012 03:42:35 +0000]
config: make makefile builder be a config tool also

all of our helper tools should be configured in one place,
so a cross compile can override them

Change-Id: I35044832257fa3389504f79207aa423e39d1ad4a
Reviewed-on: http://gerrit.openafs.org/8198
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>

11 years agoafs: Use common cleanup code for lockctl EINVAL
Andrew Deason [Tue, 2 Oct 2012 20:04:47 +0000]
afs: Use common cleanup code for lockctl EINVAL

afs_lockctl has common cleanup code in the 'done' label. Use it here,
instead of trying to duplicate it.

Currently this code path appears to not be dropping the discon lock,
which this rectifies.

Change-Id: I136a78bc3235454db7e3d69bb79b0061cfcab265
Reviewed-on: http://gerrit.openafs.org/8196
Reviewed-by: Jeffrey Altman <jaltman@your-file-system.com>
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>
Tested-by: BuildBot <buildbot@rampaginggeek.com>

11 years agobos: convert struct bnode to use opr
Chas Williams (CONTRACTOR) [Mon, 1 Oct 2012 14:11:22 +0000]
bos: convert struct bnode to use opr

Convert struct bnode to use the common linked list code from opr.
bnode_Deactivate() was converted but is unused by the code and isn't
tested.

Change-Id: I0edec453f15cf19e82088e3d361483cc5833f897
Reviewed-on: http://gerrit.openafs.org/8168
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>
Tested-by: BuildBot <buildbot@rampaginggeek.com>

11 years agobos: convert struct bnode_proc to use opr
Chas Williams (CONTRACTOR) [Mon, 1 Oct 2012 14:10:22 +0000]
bos: convert struct bnode_proc to use opr

Convert struct bnode_proc to use the common linked list code from opr.

Change-Id: I30753ad10387b23509be0831d378772049f4be9d
Reviewed-on: http://gerrit.openafs.org/8167
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>
Tested-by: BuildBot <buildbot@rampaginggeek.com>

11 years agobos: convert struct bnode_type to use opr
Chas Williams (CONTRACTOR) [Mon, 1 Oct 2012 14:08:36 +0000]
bos: convert struct bnode_type to use opr

Convert struct bnode_type to use the common linked list code from opr.

Change-Id: I21329aff81a91a79a1fcf525f4fdd3a22b33ec92
Reviewed-on: http://gerrit.openafs.org/8166
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>

11 years agobos: split part of bnode.p.h into bnode_internal.h
Chas Williams (CONTRACTOR) [Mon, 1 Oct 2012 13:59:09 +0000]
bos: split part of bnode.p.h into bnode_internal.h

Move the bosserver specific parts of bnode.p.h into bnode_internal.h
so that inclusion of bnode.h doesn't expose bosserver's internals.

Change-Id: Id58714507211331a57c36eb71c1c3937fff0dd2a
Reviewed-on: http://gerrit.openafs.org/8169
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>
Tested-by: BuildBot <buildbot@rampaginggeek.com>

11 years agogenerated target updates
Derrick Brashear [Mon, 1 Oct 2012 20:09:09 +0000]
generated target updates

tweak what's needed to build helper binaries for cross-compile

Change-Id: Ib476716e1e32444f0b2aeb8cb8a1e91ab49471de
Reviewed-on: http://gerrit.openafs.org/8173
Tested-by: Derrick Brashear <shadow@your-file-system.com>
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>

11 years agoWindows: File Info Query Symlinks
Jeffrey Altman [Mon, 1 Oct 2012 16:03:49 +0000]
Windows: File Info Query Symlinks

For Symlinks, always set the Reparse Point attribute and
set the Directory attribute if the target is a directory.
Do not return the file attributes of the target.

Change-Id: I72dcde912c998e1ab3eea45426d019314e10e740
Reviewed-on: http://gerrit.openafs.org/8171
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Jeffrey Altman <jaltman@your-file-system.com>
Tested-by: Jeffrey Altman <jaltman@your-file-system.com>

11 years agoWindows: Dir Enum behavior for Symlinks / MPs
Jeffrey Altman [Mon, 1 Oct 2012 15:04:23 +0000]
Windows: Dir Enum behavior for Symlinks / MPs

Comparisons of the behavior of cmd.exe, powershell.exe, and tcc.exe
with regards to directory enumeration show that when Symlink file
information is returned that the "reparse point" data should be
reported along with whether or not the target is a directory.

For mount points, the reparse point file information should always
be returned and the type should always be directory.

The target timestamps, file sizes, etc. should never be returned.

Change-Id: I0f899229061a282d0d218155407ffc4ab62ad377
Reviewed-on: http://gerrit.openafs.org/8170
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Jeffrey Altman <jaltman@your-file-system.com>
Tested-by: Jeffrey Altman <jaltman@your-file-system.com>

11 years agoWindows: Move afsredir process type check
Jeffrey Altman [Thu, 27 Sep 2012 02:03:03 +0000]
Windows: Move afsredir process type check

The process type check in afsredir.sys was performed during the
Process Creation callback which is processed in the context of the
parent process which might not be the same type (32-bit or 64-bit)
as the process being created.

Change-Id: I6ae79a6dacf434a986c7bb0135b2238fcfeeb0cd
Reviewed-on: http://gerrit.openafs.org/8165
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Jeffrey Altman <jaltman@your-file-system.com>
Tested-by: Jeffrey Altman <jaltman@your-file-system.com>

11 years agoWindows: Fix memory leak SRXAFSCB_GetCellServ
Jeffrey Altman [Tue, 25 Sep 2012 17:01:53 +0000]
Windows: Fix memory leak SRXAFSCB_GetCellServ

In commit 19f1e0f7cf40c3da1d49c789358bd814f7e3b3eb strdup()
was replaced by xdr_alloc() and memcpy().  Unfortunately,
the patch was wrong and the pointer to which the result of
xdr_alloc() was assigned was overwritten with zero.

Change-Id: I0a9e6c03d67e2a1c811e84808fbbdd39f782ba87
Reviewed-on: http://gerrit.openafs.org/8162
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>
Reviewed-by: Jeffrey Altman <jaltman@your-file-system.com>
Tested-by: Jeffrey Altman <jaltman@your-file-system.com>

11 years agoWindows: duplicate ExtentsResource hold
Jeffrey Altman [Tue, 25 Sep 2012 16:59:04 +0000]
Windows: duplicate ExtentsResource hold

All callers to AFSDoExtentsMapRegion() hold the ExtentsResource
so there is no need to obtain it again within the function.  Instead
add an ASSERT to confirm that the resource is held.

Change-Id: Id34a3d650062d6e519a66732d248c136a92e4be3
Reviewed-on: http://gerrit.openafs.org/8161
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>
Reviewed-by: Jeffrey Altman <jaltman@your-file-system.com>
Tested-by: Jeffrey Altman <jaltman@your-file-system.com>

11 years agoWindows: make static RDR_ParseIoctlPath[Parent]
Jeffrey Altman [Tue, 25 Sep 2012 18:32:06 +0000]
Windows: make static RDR_ParseIoctlPath[Parent]

The RDR_ParseIoctlPath and RDR_ParseIoctlPathParent functions
are helper functions within RDRIoctl.cpp.   Make them static
and remove them from the header.

Change-Id: I5f3b68f87701e2d8423a01c236c7cb598c3ff743
Reviewed-on: http://gerrit.openafs.org/8160
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>
Reviewed-by: Jeffrey Altman <jaltman@your-file-system.com>
Tested-by: Jeffrey Altman <jaltman@your-file-system.com>

11 years agoWindows: remove reqp param RDR_IoctlWrite/Read
Jeffrey Altman [Tue, 25 Sep 2012 18:31:11 +0000]
Windows: remove reqp param RDR_IoctlWrite/Read

The RDR_IoctlWrite and RDR_IoctlRead functions no longer
use the cm_req_t parameter so remove it.

Change-Id: I1c6f09da9e4a386f79dae1c15b0b2ccdce944d51
Reviewed-on: http://gerrit.openafs.org/8159
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>
Reviewed-by: Jeffrey Altman <jaltman@your-file-system.com>
Tested-by: Jeffrey Altman <jaltman@your-file-system.com>

11 years agoWindows: add cm_req_t to RDR_ioctl_t
Jeffrey Altman [Tue, 25 Sep 2012 18:18:39 +0000]
Windows: add cm_req_t to RDR_ioctl_t

The cm_req_t structure flags store information related to
the source of the request and whether the process is WOW64 or not.
This information is required for proper pioctl processing.  Add
a cm_req_t structure to the RDR_ioctl_t structure and initialize
it in RDR_SetupIoctl() which is called from RDR_PioctlOpen().

Change-Id: I351101f036f63bbb1f0d7b19e9b092b18a3e070e
Reviewed-on: http://gerrit.openafs.org/8158
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>
Reviewed-by: Jeffrey Altman <jaltman@your-file-system.com>
Tested-by: Jeffrey Altman <jaltman@your-file-system.com>

11 years agoWindows: Add bWow64 param to RDR_InitReq
Jeffrey Altman [Tue, 25 Sep 2012 18:16:10 +0000]
Windows: Add bWow64 param to RDR_InitReq

Instead of using the pattern

  RDR_InitReq(&req);
  if (bWow64)
     req.flags |= CM_REQ_WOW64;

add bWow64 as a parameter to RDR_InitReq().

Change-Id: I2c02683ab857c6743b46e83dc3f9defa660263d0
Reviewed-on: http://gerrit.openafs.org/8157
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>
Reviewed-by: Jeffrey Altman <jaltman@your-file-system.com>
Tested-by: Jeffrey Altman <jaltman@your-file-system.com>

11 years agoWindows: cm_ExpandSysName for 64-bit processes
Jeffrey Altman [Sun, 23 Sep 2012 18:03:19 +0000]
Windows: cm_ExpandSysName for 64-bit processes

on 64-bit Windows, only 32-bit processes have the WOW64 request
type flag set.   Reverse the conditional to permit proper evaluation
of the 64-bit sysname list.

Change-Id: I0bbad7b275b836ecaff73c69afdde08e17f310a7
Reviewed-on: http://gerrit.openafs.org/8147
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>
Reviewed-by: Jeffrey Altman <jaltman@your-file-system.com>
Tested-by: Jeffrey Altman <jaltman@your-file-system.com>

11 years agoRedHat: Avoid the DKMS escaping silliness
Andrew Deason [Tue, 25 Sep 2012 16:16:35 +0000]
RedHat: Avoid the DKMS escaping silliness

Depending on the version of DKMS, the current MAKE[0] variable in the
dkms.conf needs different numbers of backslashes. Commit 81a9a33e
tried to address this by changing the contents of dkms.conf depending
on whether or not we were on Fedora. However, the change occurred in
DKMS 2.2, so if someone running RHEL tries to use a newer DKMS, this
will fail.

So instead of trying to guess at the level of escaping we need, just
avoid needing to escape anything with backslashes. We can quote the
heredoc marker to avoid variable expansion inside the heredoc, we can
use a case statement instead of using backticks and local variables
and such, and we can use single quotes for the outer MAKE assignment.
With this, we should not need any backslashes when writing dkms.conf,
so we should work with any DKMS version.

Change-Id: I5484826c37da13ee383e08bbfeb473aa993e245e
Reviewed-on: http://gerrit.openafs.org/8156
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Tested-by: Andrew Deason <adeason@sinenomine.net>
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>

11 years agoafs: casting NULL is generally unnecessary
Chas Williams (CONTRACTOR) [Mon, 24 Sep 2012 19:06:10 +0000]
afs: casting NULL is generally unnecessary

Casting NULL shouldn't be necessary in most cases.  Eliminate this
in favor of shorter lines and consistency.  Function pointers, variadic
arguments should still be cast.

Change-Id: Ibcd67378556e45c2b24f7aa85a4d73c72cd88e02
Reviewed-on: http://gerrit.openafs.org/8151
Reviewed-by: Garrett Wollman <wollman@csail.mit.edu>
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>

11 years agoviced: Remove unused gettimeofday calls
Marc Dionne [Thu, 27 Sep 2012 01:37:33 +0000]
viced: Remove unused gettimeofday calls

StartTime and EndTime are set with gettimeofday(), but are not
used for any calcualtions or statistics, and appear to never have
been used.  There are platforms where gettimeofday is expensive,
so remove the variables and the calls.

Change-Id: I9ff8035377227cb07383ffea15b7e04f155e307f
Reviewed-on: http://gerrit.openafs.org/8164
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Jeffrey Altman <jaltman@your-file-system.com>

11 years agoTESTS: Skip the volser tests if current hostname maps to the loopback network
Jason Edgecombe [Sun, 23 Sep 2012 01:07:51 +0000]
TESTS: Skip the volser tests if current hostname maps to the loopback network

Change-Id: I35d16ba418d0ecd67ffbd54d564a515bf551fe8d
Reviewed-on: http://gerrit.openafs.org/8146
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>
Tested-by: BuildBot <buildbot@rampaginggeek.com>

11 years agoauth: token jar handling should realloc correctly
Derrick Brashear [Wed, 26 Sep 2012 11:37:11 +0000]
auth: token jar handling should realloc correctly

instead of reallocing n+1 tokens, we would realloc 1 token
plus N bytes

Change-Id: Idb5a20b5b9becc9d48cb645bbc0bd26459220ccd
Reviewed-on: http://gerrit.openafs.org/8163
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>
Tested-by: BuildBot <buildbot@rampaginggeek.com>

11 years agoafsio: add -clear and -crypt option
Chas Williams (CONTRACTOR) [Thu, 22 Mar 2012 00:59:19 +0000]
afsio: add -clear and -crypt option

Allow the user to optionally not use encryption (and also allow
user to ensure that encryption is being used).

Change-Id: I3ad590e21f5139654b22c8284ea2634ce902a1b5
Reviewed-on: http://gerrit.openafs.org/8138
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>

11 years agoDOXYGEN: Move the protocol and architecture docs into their own modules
Jason Edgecombe [Mon, 17 Sep 2012 01:01:04 +0000]
DOXYGEN: Move the protocol and architecture docs into their own modules

Change-Id: I1021d99c2479f9157e5c5b1fef10e5d975b35f86
Reviewed-on: http://gerrit.openafs.org/8130
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>

11 years agoDOXYGEN: Add a simple index page
Jason Edgecombe [Mon, 17 Sep 2012 01:00:40 +0000]
DOXYGEN: Add a simple index page

Change-Id: I26dde9ae732841f04799f7b6ff79a994c450400b
Reviewed-on: http://gerrit.openafs.org/8129
Reviewed-by: Ken Dreyer <ktdreyer@ktdreyer.com>
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>

11 years agoWindows: Export a few more functions to afsauthent and afsrpc
Marc Dionne [Tue, 25 Sep 2012 00:47:00 +0000]
Windows: Export a few more functions to afsauthent and afsrpc

The following exports are added:

libafsauthent:
    afsconf_SetExtendedCellInfo
    afsconf_PickClientSecObj
    afsconf_SawCell
    ka_PrintBytes
    ka_KeyIsZero

libafsrpc:
    initialize_RXK_error_table

Those functions are referenced by the bos code.

Change-Id: I26898070c8e9dc7cac53f13c49dadf28d58457f4
Reviewed-on: http://gerrit.openafs.org/8154
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>

11 years agoTESTS: Add a library to check for the default loopback network
Jason Edgecombe [Sat, 22 Sep 2012 03:14:37 +0000]
TESTS: Add a library to check for the default loopback network

Change-Id: Id7bb92345e97309363fa5ddbff9147edf30ccd96
Reviewed-on: http://gerrit.openafs.org/8145
Reviewed-by: Marc Dionne <marc.c.dionne@gmail.com>
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>

11 years agobozo: fix typo in help text
Marc Dionne [Sat, 22 Sep 2012 00:08:58 +0000]
bozo: fix typo in help text

Fix a typo for "interface" in the help text for bosserver.

Change-Id: I042fc52e46f50dd00be9fc9bf62525a0f2755dda
Reviewed-on: http://gerrit.openafs.org/8144
Reviewed-by: Ken Dreyer <ktdreyer@ktdreyer.com>
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Jason Edgecombe <jason@rampaginggeek.com>
Reviewed-by: Jeffrey Altman <jaltman@your-file-system.com>
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>

11 years agoLINUX: Avoid 'wakeup' define
Andrew Deason [Mon, 24 Sep 2012 16:31:29 +0000]
LINUX: Avoid 'wakeup' define

Make 'wakeup' a static inline function instead of redefining 'wakeup',
so we can use the keyword 'wakeup' elsewhere.

Specifically, 'wakeup' is used in some Linux kernel structures, so
redefining it can confuse some things.

Change-Id: I462903099426b4d2e940e749dd958e03a04f7eb1
Reviewed-on: http://gerrit.openafs.org/8149
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>
Tested-by: BuildBot <buildbot@rampaginggeek.com>

11 years agoLINUX: Define printf/uprintf as variadic macros
Andrew Deason [Mon, 24 Sep 2012 18:03:34 +0000]
LINUX: Define printf/uprintf as variadic macros

Instead of defining the string 'printf' itself, make printf (and
uprintf) variadic macros. This avoids renaming printf to printk for
things like '__attribute__((format(printf,X,Y)))'.

Note that this is Linux-specific; compilers on other platforms may not
support variadic macros.

This avoids many warnings in the Linux kernel module build if we
include Linux headers after AFS headers.

Change-Id: I2b8ed67f25e93f559535e40680ecab6fe7579e9c
Reviewed-on: http://gerrit.openafs.org/8150
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>
Reviewed-by: Marc Dionne <marc.c.dionne@gmail.com>
Tested-by: BuildBot <buildbot@rampaginggeek.com>

11 years agorx: More afspag-specific objects
Andrew Deason [Thu, 30 Aug 2012 22:10:36 +0000]
rx: More afspag-specific objects

For Linux, each object in the kernel module needs to be in only one
module for KBUILD_MODNAME. For AFS_RXERRQ_ENV, we pull in some
additional headers that require KBUILD_MODNAME in rx. So, just add a
few more afspag-specific rx objects.

Change-Id: I80b4a8648141856dffce6e26d5c034dffd8dd5cf
Reviewed-on: http://gerrit.openafs.org/8113
Reviewed-by: Marc Dionne <marc.c.dionne@gmail.com>
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>
Tested-by: Andrew Deason <adeason@sinenomine.net>

11 years agorx: Do not include linux/module.h
Andrew Deason [Thu, 30 Aug 2012 21:36:48 +0000]
rx: Do not include linux/module.h

This isn't available in userspace; we don't need it, so just don't
include it at all.

This was introduced in 9cd98379. I had thought it fixed a build
failure, but I believe now I just made a mistake during build.

Change-Id: If97d8e3204b27acd053ec021ddd8cd1527dad3c5
Reviewed-on: http://gerrit.openafs.org/8112
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>
Tested-by: Andrew Deason <adeason@sinenomine.net>
Tested-by: Derrick Brashear <shadow@your-file-system.com>

11 years agorx: Save errno in LWP rxi_Sendmsg
Andrew Deason [Tue, 11 Sep 2012 23:46:42 +0000]
rx: Save errno in LWP rxi_Sendmsg

Much of this code examines errno or WSAGetLastError to determine what
to do. However, some other operations between the actual sendmsg call
and code that examines errno may modify errno. So, save the value of
errno to ensure errno reflects the actual error we got from sendmsg;
this also slightly simplifies some of the logic.

Change-Id: I5a8643fce5d2e29131069743b14805bbc2428805
Reviewed-on: http://gerrit.openafs.org/8110
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>
Tested-by: BuildBot <buildbot@rampaginggeek.com>

11 years agorx: Split out rxi_NetSendError
Andrew Deason [Tue, 11 Sep 2012 17:56:22 +0000]
rx: Split out rxi_NetSendError

This logic is duplicated in a couple of places. Just extract it into
its own little function for easier modification.

Change-Id: Iebcc460698beaee6f1cee4b4fb633b9a10e37213
Reviewed-on: http://gerrit.openafs.org/8109
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>
Tested-by: Derrick Brashear <shadow@your-file-system.com>

11 years agodoc: Fix Solaris 11 kernel module path
Andrew Deason [Mon, 24 Sep 2012 19:20:07 +0000]
doc: Fix Solaris 11 kernel module path

For Solaris 11, the module goes in drv, not fs.

Change-Id: Ib297239b845977eaf7e4cdb3edaba32db6733e12
Reviewed-on: http://gerrit.openafs.org/8152
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Ken Dreyer <ktdreyer@ktdreyer.com>

11 years agodoc: solaris x86 kernel module path
Michael Meffie [Fri, 21 Sep 2012 19:58:29 +0000]
doc: solaris x86 kernel module path

Add instructions for solaris x86 kernel module installation.

Change-Id: Ib6756f609c21867f964a4ab03af322ee4eb1526d
Reviewed-on: http://gerrit.openafs.org/8143
Reviewed-by: Ken Dreyer <ktdreyer@ktdreyer.com>
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Jeffrey Altman <jaltman@your-file-system.com>
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>

11 years agodoc: fix kindle builds of documentation
Chas Williams (CONTRACTOR) [Sun, 23 Sep 2012 23:02:19 +0000]
doc: fix kindle builds of documentation

Use kindlegen located by the configure stage and test for
kindlegen and dbtoepub before building in all cases.

Change-Id: Ieb46023ddf0725a2c93f96e29f942b71343d53dd
Reviewed-on: http://gerrit.openafs.org/8148
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Jeffrey Altman <jaltman@your-file-system.com>
Reviewed-by: Ken Dreyer <ktdreyer@ktdreyer.com>

11 years agoPretty make output for tsalvaged, lib[u]afs
Andrew Deason [Fri, 31 Aug 2012 19:51:45 +0000]
Pretty make output for tsalvaged, lib[u]afs

Change-Id: I852f862c029cad60dc7871ab22367fb266314244
Reviewed-on: http://gerrit.openafs.org/8108
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>
Tested-by: BuildBot <buildbot@rampaginggeek.com>

11 years agodoc: Add quotes to bos create in DAFS QSG section
Andrew Deason [Thu, 2 Aug 2012 19:02:09 +0000]
doc: Add quotes to bos create in DAFS QSG section

In appendix C in the QSG, we give an example 'bos create'. The given
-cmd arguments should have quotes, or they will be interpreted as
individual arguments to 'bos create'.

Change-Id: Ie8b0a69908b3419af303716acce51e8d1e97837b
Reviewed-on: http://gerrit.openafs.org/7930
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Ken Dreyer <ktdreyer@ktdreyer.com>

11 years agobutc: clean xbsa shutdown on control C
Rainer Toebbicke [Wed, 19 Sep 2012 16:13:15 +0000]
butc: clean xbsa shutdown on control C

when we catch a control-c, do a clean shutdown

Change-Id: I8da28c28d0a238d3642f65c381c399a883d6d4b1
Reviewed-on: http://gerrit.openafs.org/8141
Reviewed-by: Chas Williams - CONTRACTOR <chas@cmf.nrl.navy.mil>
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>

11 years agoquiet build: Define NOQ version of LT_LDLIB_lwp
Marc Dionne [Wed, 19 Sep 2012 00:29:06 +0000]
quiet build: Define NOQ version of LT_LDLIB_lwp

When the command is invoked within a case statement, we need the
"NOQ" version of RUN_LD.  Add the LT_LDLIB_lwp_NOQ variant and use
it under src/sys where LT_LDLIB_lwp causes a build error.

Change-Id: I5af9c6cbbe9c3cf284d8e9aabb63d53bf5b056ea
Reviewed-on: http://gerrit.openafs.org/8140
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>

11 years agolibuafs: enable 64 bit mode on linux
Derrick Brashear [Tue, 18 Sep 2012 18:46:37 +0000]
libuafs: enable 64 bit mode on linux

already safe and being used on other platforms; might as well
here too.

Change-Id: I1fe4c2459caaea873e5618d0b097a142dd935791
Reviewed-on: http://gerrit.openafs.org/8139
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>
Tested-by: Derrick Brashear <shadow@your-file-system.com>

11 years agolibuafs: honor debug vs optimize setting from configure
Derrick Brashear [Tue, 18 Sep 2012 15:41:55 +0000]
libuafs: honor debug vs optimize setting from configure

OPTF should not be forced on if the user specified debugging.
side effect: use the OPTMZ setting for the platform instead
of hardcoding here.

Change-Id: Ib1cd4afebbd037938e2ee18e3bfc347b3690277b
Reviewed-on: http://gerrit.openafs.org/8136
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>

11 years agoafsd: roken.h includes dirent.h; get valid dirent defines on osx
Derrick Brashear [Tue, 18 Sep 2012 03:26:12 +0000]
afsd: roken.h includes dirent.h; get valid dirent defines on osx

our workaround for #define KERNEL didn't work on OSX because
roken.h included dirent.h before we got the chance. cope with
it.

Change-Id: I5e580aa934cec4e99d62ba105873f71b11326e2f
Reviewed-on: http://gerrit.openafs.org/8132
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Simon Wilkinson <simonxwilkinson@gmail.com>
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>

11 years agolibuafs: use the pic version of opr for perluafs
Chas Williams (CONTRACTOR) [Mon, 17 Sep 2012 19:00:06 +0000]
libuafs: use the pic version of opr for perluafs

perluafs is a shared library, therefore we need to use the PIC version
of the opr library (just like any of the other libraries that have two
flavors and get linked with perluafs).

Change-Id: I597f4f40010524d94341d343d3f54648a139f760
Reviewed-on: http://gerrit.openafs.org/8131
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Simon Wilkinson <simonxwilkinson@gmail.com>
Reviewed-by: Jeffrey Altman <jaltman@your-file-system.com>

11 years agomake install fixes for libraries
Marc Dionne [Sat, 15 Sep 2012 20:02:26 +0000]
make install fixes for libraries

Don't install several libraries that have dependencies that are
not currently installed, but install static libraries.

Fix rule for libafsauthent_pic.a to get the library from .libs

Change-Id: I746b111edf8a6d94ad98fcf235e34b4dac1eb050
Reviewed-on: http://gerrit.openafs.org/8123
Reviewed-by: Simon Wilkinson <simonxwilkinson@gmail.com>
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Jeffrey Altman <jaltman@your-file-system.com>

11 years agorxkad: silence unused variable warnings in v5gen.c
Marc Dionne [Sat, 15 Sep 2012 17:53:06 +0000]
rxkad: silence unused variable warnings in v5gen.c

Sprinkle AFS_UNUSED attributes where the compiler complains
about unused variables.

Note that this file is assembled from code generated by the heimdal
source.  A similar fix exists in the generator code upstream, so
when the file is re-generated in the future it should not be
necessary to re-apply this.

Change-Id: I2ef407428d90157050481d5630f6f22510d65ca3
Reviewed-on: http://gerrit.openafs.org/8122
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>
Reviewed-by: Jeffrey Altman <jaltman@your-file-system.com>

11 years agotests: Convert opr tests to use libtool
Simon Wilkinson [Sun, 16 Sep 2012 18:54:48 +0000]
tests: Convert opr tests to use libtool

Avoid the problems with libopr's dependencies by just converting
the tests to use the libtool version of the opr library. While we're
at it, make the tests pthreaded too.

Change-Id: I4e570b288ea57c758c848be1d545e5ee59771ab9
Reviewed-on: http://gerrit.openafs.org/8127
Reviewed-by: Jason Edgecombe <jason@rampaginggeek.com>
Tested-by: Jason Edgecombe <jason@rampaginggeek.com>
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>

11 years agoSplit up libtool support into LWP and pthread
Simon Wilkinson [Sun, 16 Sep 2012 14:39:25 +0000]
Split up libtool support into LWP and pthread

Currently, the type of library you build is determined by whether
the library is build in a pthread, or an lwp build directory. However,
this prevents building an LWP library in a directory that builds
pthreaded clients and servers.

As we want to continue to provide LWP libraries for backwards
compatibility, but move over to pthreaded binaries, this causes
some issues.

So, split up the libtool logic, so we have Makefile.libtool, which
you include if you want to build a pthreaded libtool library, and
Makefile.lwptool, for building a library which supports LWP and
pthreaded use. These only affect how .lo files are built - so the
.o files used for non-library objects are managed with the
Makefile.pthread and Makefile.lwp includes as before.

Change-Id: Ib1af48342253230abab9056eb15a3f79bd77a6de
Reviewed-on: http://gerrit.openafs.org/8126
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>

11 years agotests: Fix volser Makefile
Simon Wilkinson [Sun, 16 Sep 2012 16:48:08 +0000]
tests: Fix volser Makefile

The volser Makefile had a bad path for liboafs_util, and was still
directly pulling in some objects from the fileserver build. Fix it
so that it uses proper libraries.

Change-Id: Ic36c6a0f93c299bd04d48fa4238c4da5cbc571d4
Reviewed-on: http://gerrit.openafs.org/8125
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Jason Edgecombe <jason@rampaginggeek.com>
Tested-by: Jason Edgecombe <jason@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>

11 years agolibafsauthent: fix parallel build
Marc Dionne [Fri, 14 Sep 2012 23:23:55 +0000]
libafsauthent: fix parallel build

Same logic as ee18ccbe - we have to avoid building libafsauthent.la
and libafsauthent_pic.la at the same time.  Add a dependency to
force make to build them in sequence.

Change-Id: I4b341d7688a249e0067c3917909259c813f26717
Reviewed-on: http://gerrit.openafs.org/8121
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Jeffrey Altman <jaltman@your-file-system.com>

11 years agoFreeBSD major version numbers are multi-character
Ben Kaduk [Thu, 13 Sep 2012 21:28:17 +0000]
FreeBSD major version numbers are multi-character

Do not assume that there is only a single character before the dot.

Change-Id: I45169a6faa5dbeafc4f9c57deaaad96bef8de613
Reviewed-on: http://gerrit.openafs.org/8106
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>

11 years agoopr: Libtool archive should depend on symbol file
Simon Wilkinson [Fri, 14 Sep 2012 10:42:56 +0000]
opr: Libtool archive should depend on symbol file

There should be a dependency between the libtool archive
liboafs_opr.la and the symbol map for the archive
(liboafs_opr.la.sym) so the archive is rebuilt if symbols are added
to, or removed from, the map file.

Change-Id: Ifb0cd0a8abaa4c9b476c53cf186458ec0b8f8778
Reviewed-on: http://gerrit.openafs.org/8107
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>

11 years agoafsd: Add missing variable for Solaris
Simon Wilkinson [Wed, 12 Sep 2012 09:59:16 +0000]
afsd: Add missing variable for Solaris

The Solaris 11 syscall code was missing a definition for the
'error' variable

Change-Id: Ia9a678435203994e1791824954d8c28c3cdefe17
Reviewed-on: http://gerrit.openafs.org/8103
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>
Tested-by: Derrick Brashear <shadow@your-file-system.com>

11 years agolibafs*: Don't re-export opr/util functions
Simon Wilkinson [Wed, 12 Sep 2012 09:20:43 +0000]
libafs*: Don't re-export opr/util functions

On Solaris, a library can't re-export functions which come from one
of its dependencies - so libafsrpc can't easily republish the 5 opr
functions that are currently in the libafsrpc map file.
Including the bits of the opr library that define these functions
causes problems with then linking libafsrpc against libopr, which
we do in a number of places.

libafsauthent has exactly the same problem, with a few symbols that
it pulls in from util.

The affected symbols were all added relatively recently, and have
limited uses outside of the OpenAFS tree, so just remove them from
the export list so we are one step closer to building on Solaris
again.

Change-Id: If0a1105320e416ebc013ff670dddd5d247b06f6b
Reviewed-on: http://gerrit.openafs.org/8102
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>
Tested-by: Derrick Brashear <shadow@your-file-system.com>

11 years agoStop using libafsauthent
Simon Wilkinson [Fri, 31 Aug 2012 11:18:21 +0000]
Stop using libafsauthent

Change-Id: Ieead3704e3210a1d88500ad1efa15bd2cad93bf6
Reviewed-on: http://gerrit.openafs.org/8098
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>
Tested-by: Derrick Brashear <shadow@your-file-system.com>

11 years agolibafsauthent: Build with libtool
Simon Wilkinson [Fri, 31 Aug 2012 10:13:06 +0000]
libafsauthent: Build with libtool

Construct the libafsauthent library with libtool. All libraries
contributing to libafsauthent provide a libauthent_<library>.la
convenience library, which we use libtool to combine into shared
and static versions of libafsauthent.

Change-Id: I76fa61eb027862eab730c4c86ab74a7b7e03c13b
Reviewed-on: http://gerrit.openafs.org/8097
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>
Tested-by: Derrick Brashear <shadow@your-file-system.com>

11 years agoopr: Add hcrypto to the library list
Simon Wilkinson [Wed, 12 Sep 2012 05:53:24 +0000]
opr: Add hcrypto to the library list

uuid needs hc_RAND_bytes, which means that liboafs_opr has a dependency
on hcrypto (and, until hcrypto is libtooled, on libroken as well). Make
this dependency explicit.

Change-Id: I748a43f7a2125c12b566502580e149ad1d9c1164
Reviewed-on: http://gerrit.openafs.org/8101
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>

11 years agoptserver: Fix parallel builds
Simon Wilkinson [Wed, 12 Sep 2012 05:51:08 +0000]
ptserver: Fix parallel builds

It's not safe to have libtool building a blah.lo at the same time as
gcc is building blah.o. A Makefile must exclusively use either the .lo
or the .o form.

Fix ptserver so that ptint.xdr.lo is the only one referenced, and just
explicitly pull in the LWP object for the ptserver.

Change-Id: I2e868d2d318c84e20bcccc0ffc462c87e4b7a2f2
Reviewed-on: http://gerrit.openafs.org/8100
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>

11 years agokauth: Use libtool
Simon Wilkinson [Thu, 30 Aug 2012 11:41:04 +0000]
kauth: Use libtool

Modify the kauth directory so that we use libtool to build its library.
Unlike most of our other directories, kauth has few pthreaded consumers
within the tree, so the libtool library itself is currently unused. The
libtool conversion is done as a stepping point for libafsauthent, which
does include kauth objects.

At the same time, we take the opportunity to modify kaserver so that it
uses libkauth, rather than referencing the library objects directly

Change-Id: I9d261686753b30c415f767603d44c7ce6e10eed1
Reviewed-on: http://gerrit.openafs.org/8095
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>

11 years agovolser: Use libtool
Simon Wilkinson [Tue, 28 Aug 2012 19:10:04 +0000]
volser: Use libtool

Change-Id: Ic70476aa7258d12aafa7b06ae380012f040c65b6
Reviewed-on: http://gerrit.openafs.org/8094
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>

11 years agovlserver: Use libtool
Simon Wilkinson [Tue, 28 Aug 2012 07:18:45 +0000]
vlserver: Use libtool

Change-Id: I030ec62db64b6dab856d520e68d5d727cd7b8bb3
Reviewed-on: http://gerrit.openafs.org/8093
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>

11 years agoacl: Use libtool
Simon Wilkinson [Thu, 23 Aug 2012 21:58:20 +0000]
acl: Use libtool

Change-Id: I589fc4d9b12bb23a34ef9145cd699e9ea2c4f496
Reviewed-on: http://gerrit.openafs.org/8092
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>

11 years agoptserver: Use libtool to build a pthreaded libprot
Simon Wilkinson [Thu, 23 Aug 2012 21:18:49 +0000]
ptserver: Use libtool to build a pthreaded libprot

Use libtool to build a pthreaded version of libprot in src/ptserver.
Make the tptserver directory just build pthreaded versions of the
client and server, and link these against libprot

Change-Id: Idc43de8c548f38584e78b35f9f1ecba3eb4b74d2
Reviewed-on: http://gerrit.openafs.org/8091
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>

11 years agoubik: Use libtool
Simon Wilkinson [Thu, 23 Aug 2012 20:35:35 +0000]
ubik: Use libtool

Use libtool to build LWP and pthreaded versions of the ubik library.
Both versions are built in the src/ubik directory. src/tubik is modified
to only build pthreaded versions of the ubik test commands.

Replace use of libubik_pthread.a with the libtool generated library.

Change-Id: Id441fe00dbe801e38a108600bfbe06c292383872
Reviewed-on: http://gerrit.openafs.org/8090
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>

11 years agolibafsrpc: avoid concurrent libtool
Marc Dionne [Tue, 11 Sep 2012 00:49:19 +0000]
libafsrpc: avoid concurrent libtool

libtool gets confused if it is running two instances in the same
directory, so make sure we build libafsrpc.la and libafsrpc_pic.la
one after the other.

Change-Id: Idfd16b1f4e1efe07822a300df798bf05e2df6bcd
Reviewed-on: http://gerrit.openafs.org/8086
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>
Tested-by: Derrick Brashear <shadow@your-file-system.com>

11 years agocmd: exit status zero from -help
Michael Meffie [Tue, 11 Sep 2012 12:59:13 +0000]
cmd: exit status zero from -help

Return of an exit status of zero when running commands with -help,
instead of returning an error. By general convention, and in
previous versions, tools do not not treat -help as an error.

The AFS::Command perl modules, use -help as an introspection
technique, and fail when commands run with the -help option returns
non-zero.

Change-Id: I6ecd95f6ccd07218a2657dbb4dbf1c13599159f4
Reviewed-on: http://gerrit.openafs.org/8087
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>
Reviewed-by: Simon Wilkinson <simonxwilkinson@gmail.com>
Tested-by: BuildBot <buildbot@rampaginggeek.com>

11 years agoauth: Use libtool
Simon Wilkinson [Thu, 23 Aug 2012 19:48:21 +0000]
auth: Use libtool

Use libtool to build a pthreaded version of the auth library

Change-Id: I452773e7fa159c278f5a7a7d21e77b6dd44c14bd
Reviewed-on: http://gerrit.openafs.org/8089
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>

11 years agoaudit: Use libtool
Simon Wilkinson [Wed, 22 Aug 2012 11:59:30 +0000]
audit: Use libtool

Convert audit into a libtool library

Change-Id: Ie95539596deb2cda2959f5c5ab822d291c08acc0
Reviewed-on: http://gerrit.openafs.org/8088
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>

11 years agoStop using libafsrpc
Simon Wilkinson [Wed, 22 Aug 2012 12:13:15 +0000]
Stop using libafsrpc

Instead of using libafsrpc.a in the pthreaded server directories,
use the libtool library variants instead.

Change-Id: I4cdbaf5a060b3e5aa82fb0d79535cb4fdc850bcf
Reviewed-on: http://gerrit.openafs.org/8074
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>

11 years agoadd a simple backport policy to README.GIT
Ken Dreyer [Mon, 10 Sep 2012 17:20:26 +0000]
add a simple backport policy to README.GIT

This will clarify where patches should go, and who can do backports.

Change-Id: Ie3efa6522382ea0cabc5847dbc1d75d59b04a403
Reviewed-on: http://gerrit.openafs.org/8075
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
Tested-by: Jeffrey Altman <jaltman@your-file-system.com>
Reviewed-by: Jeffrey Altman <jaltman@your-file-system.com>

11 years agoaix: add atomic support
Derrick Brashear [Mon, 10 Sep 2012 18:43:08 +0000]
aix: add atomic support

aix has an atomic facility. add support for it.

Change-Id: Iaf1305fbafe1c0d7f0d22f14babfbea382c0b32d
Reviewed-on: http://gerrit.openafs.org/8076
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Simon Wilkinson <simonxwilkinson@gmail.com>
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>

11 years agolibafsrpc: Assemble with libtool
Simon Wilkinson [Wed, 22 Aug 2012 08:46:24 +0000]
libafsrpc: Assemble with libtool

Use libtool to assemble the libafsrpc shared and static libraries
from objects built with libtool in each of the directories that
contribute to the library (fsint, rx, rxkad, comerr, util, rxstat,
sys and lwp).

Each source directory controls which objects are built into the shared
library by making a libafsrpc_<dir> libtool convenience directory. These
convenience directories are then merged together to produce the
libafsrpc library.

Change-Id: I330aeb8df4c237b408a298826363eea7357339ce
Reviewed-on: http://gerrit.openafs.org/8072
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>

11 years agoopr: build and install pic library correctly
Derrick Brashear [Mon, 10 Sep 2012 01:42:09 +0000]
opr: build and install pic library correctly

previously we installed the same library as both the normal and pic variants.
tweak to build a pic version also.

Change-Id: I6b197d43184a9aa23aa65de663f8f5f08d486912
Reviewed-on: http://gerrit.openafs.org/8073
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>

11 years agoDon't explicitly build and link rx_pthread.o
Simon Wilkinson [Wed, 22 Aug 2012 11:45:43 +0000]
Don't explicitly build and link rx_pthread.o

A number of pthreaded directories explicitly build, and link, with
rx_pthread.o, in order to be able to send RX 'dpf' debugging messages
to the server log, rather than to stderr.

However, this direct linking causes build failures on some platforms,
because we end up linking in a version of rx_pthread.o, twice and both
versions contain identical linker symbols.

As this functionality is only used for debugging, just get rid of the
additional object.

Change-Id: I6126891db2dcbc289f6a9f7b99c01d6af7a19089
Reviewed-on: http://gerrit.openafs.org/8071
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>
Tested-by: BuildBot <buildbot@rampaginggeek.com>

11 years agofsint: Move to using libtool
Simon Wilkinson [Wed, 22 Aug 2012 08:39:59 +0000]
fsint: Move to using libtool

Move the fsint directory over to building a libtool library
(liboafs_fsint). Because libtool requires that libraries have no
unresolved dependencies, we cannot include the server side stubs in
the libtool library.

Change-Id: Ia3f009680ac510f522b806366985e557cd6e4219
Reviewed-on: http://gerrit.openafs.org/8070
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>

11 years agolwp: Build a pthreaded compat library with libtool
Simon Wilkinson [Thu, 24 May 2012 21:08:45 +0000]
lwp: Build a pthreaded compat library with libtool

The majority of the LWP directory isn't used by pthreaded applications.
However, there are three files - fasttime.c, lock.c and waitkey.c which
are used within pthreaded code.

Eventually, these should live somewhere other than the LWP directory.
For now, just build a small pthreaded library to hold them, so we
can finish up with the libtool work before considering how to move
this code elsewhere.

Change-Id: I66281f7cd838c048fd982bbd0f756a16a10862d1
Reviewed-on: http://gerrit.openafs.org/8069
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>
Tested-by: BuildBot <buildbot@rampaginggeek.com>

11 years agorxstat: Use libtool
Simon Wilkinson [Thu, 24 May 2012 20:57:55 +0000]
rxstat: Use libtool

Change-Id: I4fd533691cf191b37c1f80038651b45efd142133
Reviewed-on: http://gerrit.openafs.org/8068
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>

11 years agorxkad: Add a libtool library
Simon Wilkinson [Thu, 24 May 2012 10:55:26 +0000]
rxkad: Add a libtool library

Add liboafs_rkxad.la, a libtool version of librxkad.a

Change-Id: I414dada02d202d8bdba4234f92d445b560dbb297
Reviewed-on: http://gerrit.openafs.org/8065
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>

11 years agorxkad: Use rxi_Alloc not osi_Alloc
Simon Wilkinson [Sun, 9 Sep 2012 09:19:53 +0000]
rxkad: Use rxi_Alloc not osi_Alloc

rx exposes the rxi_Alloc function to be used for memory allocation
in security classes, not osi_Alloc which is private. Using rxi_Alloc
means that allocations are counted in the general rx statistics.

Modify rxkad so that it uses rxi_Alloc. This also restores symmetry
in the allocator - the memory that's allocated by rxkad_server is
already freed using rxi_Free in rxkad_DestroyConnection

Change-Id: I3321355f2470974d3570dd911f06ea91c21d1c9d
Reviewed-on: http://gerrit.openafs.org/8067
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>

11 years agocomerr, cmd, opr: fix library install targets
Marc Dionne [Sat, 8 Sep 2012 19:43:17 +0000]
comerr, cmd, opr: fix library install targets

Fix a couple of issues in the install targets following the libtool
changes:
- don't install liboafs_comerr or liboafs_opr, they're not ready to
be exposed to the outside world
- fix the libcmd.a install target to use INSTALL_DATA and the correct
library name

Change-Id: I2bf241cfff419d51bf170fdc871248e9b0c7ab33
Reviewed-on: http://gerrit.openafs.org/8063
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Simon Wilkinson <simonxwilkinson@gmail.com>
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>

11 years agoSys doesn't depend on auth
Simon Wilkinson [Thu, 24 May 2012 10:26:51 +0000]
Sys doesn't depend on auth

Nothing in sys depends on auth headers, so remove the dependency

Change-Id: Ic7d9b8e66c03f87d2de95166865d39feab8717af
Reviewed-on: http://gerrit.openafs.org/8064
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>

11 years agosys: Use libtool for pthreaded library
Simon Wilkinson [Thu, 24 May 2012 10:24:47 +0000]
sys: Use libtool for pthreaded library

Create a pthreaded version of libsys.a, called liboafs_sys.a

On AIX, the sys library is special because it includes references to
two syscall stubs - lpioctl and lsetpag. This means that we can't link
the library with -no-undefined, as the references to these stubs are
only resolved at run time.

Change-Id: Iaae5923fe4eec7bc3f006e29df4e26e4ba8e5418
Reviewed-on: http://gerrit.openafs.org/8061
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>

11 years agorx: Build libtool library
Simon Wilkinson [Thu, 24 May 2012 10:08:48 +0000]
rx: Build libtool library

Build a pthreaded, libtool, version of librx.a called liboafs_rx.la.
librx.a remains for LWP applications to use. With this change, all RX
objects are built in both the LWP and pthread cases, so some #ifdef
guards are required to protect code that isn't relevant in a given
build.

Currently, all of our pthreaded objects use libafsrpc to get RX
functionality, so this change is fairly minimal outside of the RX
directory.

Change-Id: I8e629e2319fb1964058e70c3c0c3ed548b09b22d
Reviewed-on: http://gerrit.openafs.org/8058
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>

11 years agousd: Convert to using libtool
Simon Wilkinson [Thu, 24 May 2012 09:26:21 +0000]
usd: Convert to using libtool

Turn the libusd library into a libtool object (it has no pthread/LWP
differences, and so can just become a pthreaded library), and include
it as such in butc and the volser. liboafs_usd.la is the libtool
object, libusd.a is preserved as a static object for backwards
compatibility.

Change-Id: I25c3d0f429415527fe529c3d3e5afbad9490ea45
Reviewed-on: http://gerrit.openafs.org/8057
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>

11 years agoutil: Convert to using libtool
Simon Wilkinson [Thu, 24 May 2012 08:14:18 +0000]
util: Convert to using libtool

Create a pthreaded version of libafsutil, named liboafs_util.la,
and use this library in all of the pthreaded binaries that we build,
replacing both inclusion of libafsutil.a, and direct compliation of
pthreaded versions of the util source files.

libafsutil.a is provided for legacy LWP applications, and the
convenience library libafsutil_pic.a remains until we address the way
in which the user space cache manager is built and linked.

Change-Id: Ibdc3d6e2fe56ca6f5b882cf03991d1a2e32c62b2
Reviewed-on: http://gerrit.openafs.org/8056
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>

11 years agouuid: hashes are positive ints
Derrick Brashear [Fri, 7 Sep 2012 20:47:43 +0000]
uuid: hashes are positive ints

switch to unsigned

Change-Id: I2a2dbde211d1de2c73bcf5fd0c9ef1704d0e0000
Reviewed-on: http://gerrit.openafs.org/8060
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Jeffrey Altman <jaltman@your-file-system.com>
Tested-by: Jeffrey Altman <jaltman@your-file-system.com>

11 years agocmd: Convert to using libtool
Simon Wilkinson [Wed, 23 May 2012 20:43:57 +0000]
cmd: Convert to using libtool

Convert the libcmd and libcmd_pic libaries to being built using
libtool. Historically, these have been built as LWP code, but they
have no LWP dependencies, and no LWP-specific code within them. So,
make cmd a pthread-only library.

In addition to the libtool library liboafs_cmd.la, we build the
legacy libcmd.a and libcmd_pic.a as convenience libraries. libcmd64.a
(a 64bit variant, used solely by kdump), remains built through
"normal" means.

Update pthreaded users of libcmd to use the new liboafs_cmd.la. For
now, non-pthreaded users are left alone.

Change-Id: Id8445949754d1942f6e8752ae182b4e6f86fe94f
Reviewed-on: http://gerrit.openafs.org/8055
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>

11 years agocomerr: Fix a couple of libtool problems
Simon Wilkinson [Fri, 7 Sep 2012 12:51:29 +0000]
comerr: Fix a couple of libtool problems

The comerr libtool patch was submitted before buildbot had a chance
to verify it. Fix a couple of problems that buildbot identified:

*) On AIX liboafs_comerr needs to link against roken
*) On OpenSuSe the LWP CC command has a space in it, so needs to
   be quoted before being passed in to lwptool

Change-Id: I885099f57ef670ed58d532162b1cb70316744b28
Reviewed-on: http://gerrit.openafs.org/8059
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>

11 years agocomerr: Convert to using libtool
Simon Wilkinson [Tue, 22 May 2012 07:37:08 +0000]
comerr: Convert to using libtool

Convert the libafs_comerr library so that it uses libtool.

comerr uses a pthread lock to protect the error tables, so it needs
to be built as both an LWP, and a pthread library (previously, we've
just built it as LWP, which is probably broken on some platforms, as
it won't define -D_REENTRANT)

libafscom_err.a remains as the LWP variant, and all pthreaded code is
modified to use the libtool liboafs_comerr.la library.

Change-Id: Id421cc97ad8681b42af7a5eb3cb512e1e1ce9a90
Reviewed-on: http://gerrit.openafs.org/8054
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>
Tested-by: Derrick Brashear <shadow@your-file-system.com>

11 years agolwp: Fix stupid mistake in lock.h
Simon Wilkinson [Fri, 7 Sep 2012 10:43:21 +0000]
lwp: Fix stupid mistake in lock.h

My earlier change to lock.h got the sense of the opr_Verify test wrong,
so we would assert() whenever the lock call succeeded. Fix this, so
things work again.

Change-Id: I7e2fda473343c7b541d6ca120ef0977adcf35f62
Reviewed-on: http://gerrit.openafs.org/8053
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>
Tested-by: Derrick Brashear <shadow@your-file-system.com>

11 years agotests: deal with one more unsigned warning
Derrick Brashear [Thu, 6 Sep 2012 18:27:13 +0000]
tests: deal with one more unsigned warning

C90 wants this unsigned hint before it will dtrt

Change-Id: Ic60b0336df7e8c4373582ffa352f4042ebc021c1
Reviewed-on: http://gerrit.openafs.org/8050
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>
Tested-by: Derrick Brashear <shadow@your-file-system.com>

11 years agorx: initialize mutexes from globals
Derrick Brashear [Thu, 6 Sep 2012 18:28:04 +0000]
rx: initialize mutexes from globals

in order to work around stupidity from macos linker.

same fix as was needed in 0559a23d38f98280e2eb1c1e2fc91ae7a1798537

Change-Id: Idb78abd74eef45cb3c9b212647dd6722c98e0cd5
Reviewed-on: http://gerrit.openafs.org/8051
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>
Tested-by: Derrick Brashear <shadow@your-file-system.com>

11 years agoregen: look for glibtoolize also
Derrick Brashear [Thu, 6 Sep 2012 18:26:32 +0000]
regen: look for glibtoolize also

macos uses the g prefix to avoid conflicting with a system
tool called libtool.

Change-Id: I867f5c4aa7e7c21bf47087b05a58299e11a5b70a
Reviewed-on: http://gerrit.openafs.org/8049
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>
Tested-by: Derrick Brashear <shadow@your-file-system.com>

11 years agodoc: fix examples of direct volume access
Ken Dreyer [Thu, 6 Sep 2012 18:24:25 +0000]
doc: fix examples of direct volume access

Fix the Unix examples to use ":volume" instead of "#volume", and add
a couple more examples.

Change-Id: I2e7907b128248343d99136552ab791b9bf0246ca
Reviewed-on: http://gerrit.openafs.org/8052
Reviewed-by: Jeffrey Altman <jaltman@your-file-system.com>
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>
Tested-by: Derrick Brashear <shadow@your-file-system.com>

11 years agotests/opr: fixes for the uuid-t.c tests
Marc Dionne [Thu, 6 Sep 2012 00:45:01 +0000]
tests/opr: fixes for the uuid-t.c tests

It's always good to have a plan.

Also, use correct mask when checking for DCE bit.

Change-Id: I4ab72aeb89efbd63d2d15fdc57aea8d2c1eb13d9
Reviewed-on: http://gerrit.openafs.org/8047
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>
Tested-by: Derrick Brashear <shadow@your-file-system.com>

11 years agotests/auth: fixes for the opr libtool changes
Marc Dionne [Thu, 6 Sep 2012 00:18:09 +0000]
tests/auth: fixes for the opr libtool changes

Add a missing line continuation backslash, and use the correct
location for libafs_opr.la

Change-Id: I52e44d36d9e1a9a0b3cd81c463f952072d4cbb48
Reviewed-on: http://gerrit.openafs.org/8045
Tested-by: Jeffrey Altman <jaltman@your-file-system.com>
Reviewed-by: Simon Wilkinson <simonxwilkinson@gmail.com>
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>