openafs.git
14 years agoMake tests/afcp compile cleanly
Rod Widdowson [Wed, 7 Apr 2010 10:14:32 +0000]
Make tests/afcp compile cleanly

It didn't compile because it includes <afs/afs_const.h> changing that
to afs_consts.h makes it happy.

Change-Id: I3a21e6ab2b99d8f4ebbc55922163b0695a6187f3
Reviewed-on: http://gerrit.openafs.org/1708
Reviewed-by: Simon Wilkinson <sxw@inf.ed.ac.uk>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

14 years agoReallocate memory in aklog for the AFS ID string
Russ Allbery [Tue, 6 Apr 2010 23:31:37 +0000]
Reallocate memory in aklog for the AFS ID string

aklog was previously writing the magic AFS ID string into previously
alloated memory with sprintf, but the variable in question was only
as long as the username, so this code could overwrite memory and lead
to heap corruption.  Free previously allocated memory and use
afs_asprintf to format the AFS ID string instead.

Change-Id: I7649864817340764c39c176606a9a543c10983c9
Reviewed-on: http://gerrit.openafs.org/1706
Tested-by: Russ Allbery <rra@stanford.edu>
Reviewed-by: Simon Wilkinson <sxw@inf.ed.ac.uk>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

14 years agoMake src/rx/rx.c not executable
Russ Allbery [Tue, 6 Apr 2010 22:27:51 +0000]
Make src/rx/rx.c not executable

Change-Id: If471b579e6f1bf4f69a37f6edcc34e9546766df2
Reviewed-on: http://gerrit.openafs.org/1704
Tested-by: Russ Allbery <rra@stanford.edu>
Reviewed-by: Simon Wilkinson <sxw@inf.ed.ac.uk>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

14 years agoImprove demand-attach fileserver bos documentation
Russ Allbery [Wed, 7 Apr 2010 00:46:13 +0000]
Improve demand-attach fileserver bos documentation

Add a caution to the fileserver man page explaining that traditional
and demand-attach require different configurations, and also mention
that there are two different server implementations.  Add an example
of a bos create command for creating a demand-attach File Server to
the fileserver man page.

Add a caution to the bos create man page that a traditional fs node
won't work with demand-attach and vice versa.  Document the necessary
arguments for the dafs type.  Clarify in EXAMPLES which bos create
commands are traditional and which are demand-attach.  Add an example
of changing from a traditional to a demand-attach configuration.

Change kaserver to ptserver in the example of a simple process.

Change-Id: I4077246b69edf6e1ddc7c0761ac8e1006d471c24
Reviewed-on: http://gerrit.openafs.org/1707
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

14 years agoWindows: WinTorture Verbose mode display all logged messages
Jeffrey Altman [Mon, 5 Apr 2010 15:24:16 +0000]
Windows: WinTorture Verbose mode display all logged messages

In verbose mode, wintorture should send to stdout all logged
messages.

LICENSE MIT

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

14 years agoWindows: Support new Cygwin docbook stylesheet location
Jeffrey Altman [Tue, 6 Apr 2010 19:07:47 +0000]
Windows: Support new Cygwin docbook stylesheet location

Make the computation of the docbook stylesheet location
based upon testing for directory existence now that versions
of cygwin 1.7.2 and place the stylesheets in a new location.

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

14 years agoWindows: permit documentation to be built without binaries
Jeffrey Altman [Tue, 6 Apr 2010 19:06:55 +0000]
Windows: permit documentation to be built without binaries

Add a dependency to the documentation rule on config so that
the documentation can be built without the entire source tree

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

14 years agoWindows: tag is listitem not llstitem
Jeffrey Altman [Tue, 6 Apr 2010 18:29:26 +0000]
Windows: tag is listitem not llstitem

Latest version of docbook picked this error up.

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

14 years agomake openafs 1.5.73.3 openafs-devel-1_5_73_3
Derrick Brashear [Tue, 6 Apr 2010 18:42:44 +0000]
make openafs 1.5.73.3

another point release

Change-Id: I3430d62a4088e0b6f930b0b6cd2507f96226adea
Reviewed-on: http://gerrit.openafs.org/1700
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

14 years agomacos bulkstat avoid reclaiming vnodes
Derrick Brashear [Tue, 6 Apr 2010 13:57:24 +0000]
macos bulkstat avoid reclaiming vnodes

when a vnode has gone CVInit, don't use it as a vlru pivot.

Change-Id: I0b874c141069a23a9724d360a7864b0271c36e15
Reviewed-on: http://gerrit.openafs.org/1698
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

14 years agoavoid macos bulkstat vlru when no non-dead vnodes exist
Derrick Brashear [Sun, 4 Apr 2010 14:37:48 +0000]
avoid macos bulkstat vlru when no non-dead vnodes exist

if we can't find a candidate to be the vlru item to manipulate past,
simply don't do the vlru update

FIXES 126868

Change-Id: I5c053d1934b0787ab7f2021c70a776e54208d345
Reviewed-on: http://gerrit.openafs.org/1690
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

14 years agopanic generation update
Derrick Brashear [Mon, 5 Apr 2010 04:42:04 +0000]
panic generation update

something weird, e.g.
panic(cpu 0 caller 0x5c91c3d0): buf@/Users/shadow/Source/openafs/src/rx/rx_kcommon.c:1348

which came from an osi_Assert. not sure yet what the deal is, but attempt to
make this less ambiguous and less likely to conflict with other macros.

Change-Id: Iac27e89fc655d2b1ba6d04936e137060d8abd9c4
Reviewed-on: http://gerrit.openafs.org/1693
Tested-by: Derrick Brashear <shadow@dementia.org>
Reviewed-by: Derrick Brashear <shadow@dementia.org>

14 years agoWindows: cm_UpdateVolumeLocation !append exts to num vol names
Jeffrey Altman [Mon, 5 Apr 2010 17:19:49 +0000]
Windows: cm_UpdateVolumeLocation !append exts to num vol names

cm_UpdateVolumeLocation will append ".readonly" to a volume
name if the base name cannot be located.  However, this should
not be done if the base name is numeric.

LICENSE MIT

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

14 years agoRx: Remove conn_call_lock contention between rx_NewCall and rx_EndCall
Jeffrey Altman [Mon, 5 Apr 2010 17:35:42 +0000]
Rx: Remove conn_call_lock contention between rx_NewCall and rx_EndCall

Add a new call state, RX_STATE_RESET, which permits us to
remove the conn_call_lock contention between rx_NewCall
and rx_EndCall.  It is no longer necessary for rx_NewCall
to hold conn_call_lock across rxi_ResetCall which can block.
rx_EndCall is therefore always free to complete without
unnecessary delays caused by rx_NewCall.

Change-Id: Ie169708681eb1bbbb31951b95f68e861a4b01c7e
Reviewed-on: http://gerrit.openafs.org/1697
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
Reviewed-by: Derrick Brashear <shadow@dementia.org>

14 years ago Replace kmodstat by kldstat
Aditya Sarawgi [Mon, 5 Apr 2010 17:25:48 +0000]
Replace kmodstat by kldstat

FreeBSD uses kldstat instead of kmodstat to get the
stats of the dynamically loaded kernel modules.

Change-Id: I3f658469e60f48b50a81e6ab5bcc507186fd8c5a
Reviewed-on: http://gerrit.openafs.org/1694
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

14 years agoFix usage of RX_CALL_TQ_WAIT flag
Jeffrey Altman [Fri, 2 Apr 2010 03:33:16 +0000]
Fix usage of RX_CALL_TQ_WAIT flag

The usage of RX_CALL_TQ_WAIT flag was not consistent within both
rx.c and rx_rdwr.c.  When a thread is waiting on the transmit
queue it must not only set the RX_CALL_TQ_WAIT flag but also
increment the call->tqWaiters count.  Upon waking up, it must
decrement call->tqWaiters and only clear RX_CALL_TQ_WAIT if
the tqWaiters count reaches zero.

Change-Id: I7de01d27f073cddd9651fbcd9cd2038e56ac35cf
Reviewed-on: http://gerrit.openafs.org/1685
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

14 years agorx_ClearTransmitQueue should signal waiters when flushing
Derrick Brashear [Fri, 2 Apr 2010 01:33:49 +0000]
rx_ClearTransmitQueue should signal waiters when flushing

if we flush, play it safe and signal tq waiters.

Change-Id: I945649c2e440c78c5c5a62da70236a67dc190228
Reviewed-on: http://gerrit.openafs.org/1682
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
Reviewed-by: Derrick Brashear <shadow@dementia.org>

14 years agomacos panic decoder update
Derrick Brashear [Mon, 5 Apr 2010 04:41:28 +0000]
macos panic decoder update

make it able to decode prerelease and point release panics

Change-Id: Ibf28a7df7f0a21ff8f297d548a6b853a5e296064
Reviewed-on: http://gerrit.openafs.org/1692
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

14 years agomacos 32 bit platform user address transform openafs-devel-1_5_73_2
Derrick Brashear [Fri, 2 Apr 2010 05:29:22 +0000]
macos 32 bit platform user address transform

make the ioctl32 translator work as expected, e.g., create
proper user addresses.

Change-Id: Ia690dee5f9978d679e942a9954f2123df4a96bc2
Reviewed-on: http://gerrit.openafs.org/1687
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

14 years agomake 1.5.73.2
Derrick Brashear [Fri, 2 Apr 2010 05:32:06 +0000]
make 1.5.73.2

fix aklog for 32 bit macos, make freebsd vaguely more useful

Change-Id: I53bb88f11eedb365e4430aed468cb9c84442d44b
Reviewed-on: http://gerrit.openafs.org/1688
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

14 years agofreebsd switch back to condvar-based sleep
Derrick Brashear [Fri, 2 Apr 2010 03:17:53 +0000]
freebsd switch back to condvar-based sleep

add TimedSleep for condvar-based sleep. this should be revisited;
mac and freebsd should be able to share this. possibly several other
platforms.

Change-Id: I918f45a689dd129119477cc63820f5c802e182d2
Reviewed-on: http://gerrit.openafs.org/1684
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

14 years agomacos installer pane warning fix
Derrick Brashear [Fri, 2 Apr 2010 05:01:23 +0000]
macos installer pane warning fix

didEnterInstallerPane is void, not BOOL. make it so.

Change-Id: I934129684c839fa304bbfb7745833f5a7739e111
Reviewed-on: http://gerrit.openafs.org/1686
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

14 years agotubik: Correct use of flags_cond and version_cond
Andrew Deason [Thu, 1 Apr 2010 21:42:25 +0000]
tubik: Correct use of flags_cond and version_cond

Waiters of flags_cond and version_cond were not doing so correctly;
the correct way is to acquire a lock prior to their respective checks,
and atomically drop/acquire that lock with pthread_cond_wait.
Otherwise, we could miss a wakeup if a flag changed between our check
and when we wait.

To make this possible, make versionLock a normal pthread mutex in
AFS_PTHREAD_ENV, so it is a lock we can pass to pthread_cond_wait.
Make the waiters pass versionLock to pthread_cond_wait, and eliminate
flags_mutex and version_mutex.

Change-Id: Id33a72182b907d069e342cb049e23868ab2f7eb9
Reviewed-on: http://gerrit.openafs.org/1681
Tested-by: Andrew Deason <adeason@sinenomine.net>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

14 years agoKill afs_inet_ntoa
Andrew Deason [Thu, 1 Apr 2010 20:33:24 +0000]
Kill afs_inet_ntoa

Replace all calls to afs_inet_ntoa with the threadsafe
afs_inet_ntoa_r. afs_inet_ntoa was being used in a few places that may
be threaded (ubik), and in general should be avoided in case the
relevant code becomes threaded. Remove the definition of afs_inet_ntoa
to prevent anyone from using it.

Change-Id: I163d3f58fdd3d28077780963ced9995247682d78
Reviewed-on: http://gerrit.openafs.org/1680
Tested-by: Andrew Deason <adeason@sinenomine.net>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

14 years agofreebsd glock assertions
Derrick Brashear [Fri, 2 Apr 2010 03:11:42 +0000]
freebsd glock assertions

assert we don't try to recurse on the glock

Change-Id: Iecf0f869e4a541a0b5322def47c944dec310ae3e
Reviewed-on: http://gerrit.openafs.org/1683
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

14 years agofssync-debug: fix strict-aliasing problems
Andrew Deason [Thu, 1 Apr 2010 18:18:41 +0000]
fssync-debug: fix strict-aliasing problems

We cannot type-pun pointers like that. Instead, declare a new struct
on the stack, and copy the memory into it. Remove the CFLAGS_NOSTRICT
suppression on fssync-debug.o.

Change-Id: I25b48399417e009dc94bfebd513c0ee6feea282a
Reviewed-on: http://gerrit.openafs.org/1678
Tested-by: Andrew Deason <adeason@sinenomine.net>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

14 years agoFix formatting issues in src/afs
Simon Wilkinson [Wed, 24 Mar 2010 12:40:35 +0000]
Fix formatting issues in src/afs

This patch changes formatting in src/afs to be

return_type
fn_name(args)
{
}

... as in the rest of the code.

Change-Id: Ib6e792d0795a83ea6fcf35df4413dec6492a4cc0
Reviewed-on: http://gerrit.openafs.org/1645
Reviewed-by: Rod Widdowson <rdw@steadingsoftware.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

14 years agoSet a storeOps storeproc for the memcache case
Ben Kaduk [Thu, 1 Apr 2010 02:28:10 +0000]
Set a storeOps storeproc for the memcache case

Finish fixing the bug from 34ffc9cd that 57d8e454 only partially
fixed -- set a storeOps.storeproc element in rxfs_storeMemOps
as well as in rxfs_storeOps.  This eliminates a NULL/uninitialized
memory dereference.

Change-Id: I9fe0fb147222b8f7a5a76c9ada9ca93f53ce1fa7
Reviewed-on: http://gerrit.openafs.org/1677
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

14 years agoFix build for FBSD80
Ben Kaduk [Wed, 31 Mar 2010 15:27:38 +0000]
Fix build for FBSD80

The change to a dynamically-allocated group list came before
the change to allow the maximum size of that group list to
be set as a tuneable at boot.  The 8.0 release happened to
come between them, so we must treat both cases.
(Note that AFS_FBSD81_ENV is not yet defined anywhere; that
will come later.)

Change-Id: I87a0e2cff3c42de60d512fe5653abe0161afc789
Reviewed-on: http://gerrit.openafs.org/1676
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

14 years agoUpdate to the new thread world order for FBSD
Ben Kaduk [Wed, 31 Mar 2010 04:49:02 +0000]
Update to the new thread world order for FBSD

Since FreeBSD 5.0, system calls have taken a thread argument instead
of a proc argument.  Finish catching up.

Also remove the retval argument, which is not in the system sysent
definition, and is unused.

Since we took our sweet time getting around to it, we can also
remove large swaths of FreeBSD 4.X-only code from the area.

Fix the vop_*_args struct definition comments that had changes in
addition to proc-->thread while we're here.

Change-Id: Ib469e77655a6c04bfbfe1e5fab54f6f3a6119a85
Reviewed-on: http://gerrit.openafs.org/1675
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

14 years agoInclude limits.h for FBSD
Ben Kaduk [Wed, 31 Mar 2010 03:35:13 +0000]
Include limits.h for FBSD

Needed to pick up INT_MAX in the KERNEL case, for stopping the
XDR madness, among other things.

Change-Id: Ibcf2681b450f6a3603418991951f5144ab677d28
Reviewed-on: http://gerrit.openafs.org/1674
Reviewed-by: Simon Wilkinson <sxw@inf.ed.ac.uk>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

14 years agoopenafs 1.5.73.1 openafs-devel-1_5_73_1
Derrick Brashear [Tue, 30 Mar 2010 20:28:27 +0000]
openafs 1.5.73.1

with rpm and macos versions which hopefully work for packaging
(well, the macos does)

Change-Id: I42016db95ddaff6f76e1f0954eb06cfd743f18cf
Reviewed-on: http://gerrit.openafs.org/1670
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

14 years agoMake GCPAGs_perproc_func cleaner for FBSD case
Ben Kaduk [Wed, 31 Mar 2010 00:34:02 +0000]
Make GCPAGs_perproc_func cleaner for FBSD case

Partially rewrite 2cf1f10a to reduce code clutter.
Instead of accessing pproc->p_ucred directly in afs_GCPAGs_perproc_func(),
push this access into a FBSD-specific afs_proc2cred() function.
This is not quite right, since we do not lock the proc mutex, but
in the same way as the old version and with more reasonable preprocessor
conditionals.
This also eliminates a probably-needless call to osi_Panic.

Change-Id: Ib403132f31cc13f8c4581cb89ecc8938d0a0dd88
Reviewed-on: http://gerrit.openafs.org/1672
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

14 years agoUpdated RedHat RPM spec file to include unreferenced files
Jonathan Billings [Tue, 30 Mar 2010 20:35:50 +0000]
Updated RedHat RPM spec file to include unreferenced files

Added the libkopenafs libraries and headers to the authlib package.

Added the afs_compile_et binary to the devel package

Removed the reference to .../man5/afszcm.cat.* because it is already
caught by the earlier reference to .../man5/afs* glob.  This caused a
warning during the package build process.

Change-Id: I64a037a8534ac3d2c6b0aa22249d6827e08af9b1
Reviewed-on: http://gerrit.openafs.org/1671
Reviewed-by: Simon Wilkinson <sxw@inf.ed.ac.uk>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

14 years agoMove restorevol to bin from sbin in make dest
Jonathan Billings [Tue, 30 Mar 2010 20:06:07 +0000]
Move restorevol to bin from sbin in make dest

Adds to the changes made in d6df1a8cec39edf7c0d2598921c735ac6aca70d7
so that 'make dest' installs restorevol into bin.

Change-Id: I9c7f302ad9a2f25e9a362ea96dbbf0d91a7d9b04
Reviewed-on: http://gerrit.openafs.org/1669
Reviewed-by: Simon Wilkinson <sxw@inf.ed.ac.uk>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

14 years agodarwin notify avoid reentrant vfs context panic
Derrick Brashear [Tue, 30 Mar 2010 15:43:33 +0000]
darwin notify avoid reentrant vfs context panic

if we own the context, don't get it again.

Change-Id: I1f574bc3dda764c7a9552f1adf0f64e50afc1d7d
Reviewed-on: http://gerrit.openafs.org/1668
Tested-by: Derrick Brashear <shadow@dementia.org>
Reviewed-by: Derrick Brashear <shadow@dementia.org>

14 years agoUpdate VCS instructions for Git
Russ Allbery [Tue, 30 Mar 2010 05:17:31 +0000]
Update VCS instructions for Git

Rename README.CVS to README.GIT and update the references from CVS
to GIT.  Refer readers to the wiki for the detailed instructions and
information about Gerrit.

Change-Id: Ia1826110c4b974ab36a64555ca44e6c5ce74f7ef
Reviewed-on: http://gerrit.openafs.org/1667
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

14 years agoMinor state_analyzer manpage corrections
Davor Ocelic [Mon, 29 Mar 2010 14:54:43 +0000]
Minor state_analyzer manpage corrections

Done according to adeason's comments on http://gerrit.openafs.org/#change,1655

Change-Id: Ia5b28473fa37ad2a877a5a56b1b7f1c4893e8db1
Reviewed-on: http://gerrit.openafs.org/1666
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

14 years agoRender the IP address for the "Ubik: Lost contact with sync-site" log
Rod Widdowson [Wed, 24 Mar 2010 16:59:15 +0000]
Render the IP address for the "Ubik: Lost contact with sync-site" log
message in the same way that all other IP addresses are (via
afs_inet_ntoa, rather than stripping the buytes out in a manner which
assumes a specific endianism).

Done more as a way to test my understanding of the GIT/GERRIT
technology with a small non-important checkin.

Change-Id: I177e1288e8e23087aeebb7abe4ed63a7c2b88ccb
Reviewed-on: http://gerrit.openafs.org/1649
Tested-by: Rod Widdowson <rdw@steadingsoftware.com>
Reviewed-by: Rod Widdowson <rdw@steadingsoftware.com>
Reviewed-by: Simon Wilkinson <sxw@inf.ed.ac.uk>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

14 years agoCatch up to dynamically-sized cr_groups in FBSD80
Ben Kaduk [Tue, 23 Mar 2010 02:35:51 +0000]
Catch up to dynamically-sized cr_groups in FBSD80

In FreeBSD 8.0 and later, (struct ucred)->cr_groups is a pointer
to a dynamically-allocated array, and NGROUPS is now 1024 by default
(tuneable at boot).
Don't put a gid_t[NGROUPS] on the stack for the FBSD80_ENV case.
Also avoid keeping a function-local ucred structure (in
afs_osi_proc2cred()), by bypassing that function entirely
(though this accesses the process credentials directly, which may
require locking; thread credentials accesses can be safely done
lock-free).  Add an osi_Panic() to ensure that it stays that way.
Don't pretend that we have a useful afs_osi_cred to export.
Don't blindly overwrite NGROUPS past cr_groups.

Change-Id: I76295164a24bddf2782ab2fa662acd0e1b4855d6
Reviewed-on: http://gerrit.openafs.org/1665
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

14 years agoInitial; add state_analyzer manpage
Davor Ocelic [Wed, 24 Mar 2010 21:45:20 +0000]
Initial; add state_analyzer manpage

Change-Id: I5dd43e6ea5764421a6e44f372f4e9c9576de627e
Reviewed-on: http://gerrit.openafs.org/1655
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

14 years agoWindows: buffers whose offsets are beyond EOF should be zero filled and locally allocated
Jeffrey Altman [Sat, 27 Mar 2010 20:13:27 +0000]
Windows: buffers whose offsets are beyond EOF should be zero filled and locally allocated

When a buffer is being allocated for an offset that exceeds the
file length as known to the file server, that buffer should be zero
filled and it does not require server validation.

Previously all buffers were populated with a FetchData call.
This is wasteful of time and server resources when there is a
valid callback registration because the serverLength is known
to be valid.

LICENSE MIT

Change-Id: I13f9a8dbd6387c3ba71638a682e995d7a7d0862f
Reviewed-on: http://gerrit.openafs.org/1664
Tested-by: Jeffrey Altman <jaltman@openafs.org>
Tested-by: Asanka Herath <asanka@secure-endpoints.com>
Reviewed-by: Asanka Herath <asanka@secure-endpoints.com>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>

14 years agoGUI Update for Kerberos Ticket Renew
Claudio Bisegni [Wed, 24 Mar 2010 22:27:05 +0000]
GUI Update for Kerberos Ticket Renew

Now the NSEditText for Renew Time is replaced by NSStepper for Days:Hours:Minutes:Seconds

Change-Id: If696f456faada6762def192ab0887539d55bc5d4
Reviewed-on: http://gerrit.openafs.org/1656
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

14 years agoaklog pt error table warning fix
Derrick Brashear [Sat, 27 Mar 2010 16:45:40 +0000]
aklog pt error table warning fix

include the header file that prototypes the pt error table

Change-Id: Ibd1a7cb04d8084a50d3a429fa69cfb2967874c9b
Reviewed-on: http://gerrit.openafs.org/1663
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

14 years agoaklog more error tables
Derrick Brashear [Thu, 25 Mar 2010 13:01:23 +0000]
aklog more error tables

initialize the rest that we might need

Change-Id: If4e02add67994ae5397c60de3e64c072c3512a2e
Reviewed-on: http://gerrit.openafs.org/1661
Reviewed-by: Simon Wilkinson <sxw@inf.ed.ac.uk>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

14 years agoLINUX: you dont need to memset() after allocating credentials
Chas Williams - CONTRACTOR [Thu, 7 Jan 2010 23:35:37 +0000]
LINUX: you dont need to memset() after allocating credentials

If you wanted to create a blank credential, you wouldn't want to make
it uid = 0.  Anyone allocating a credential SHOULD properly fill in all
fields making this blanking operation moot.  Regardless, this memset()
is before the allocation failure test and would/could panic.

Change-Id: Ia182a874a5e1bf28a2cd94898f67d81e5588d58c
Reviewed-on: http://gerrit.openafs.org/1080
Tested-by: Simon Wilkinson <sxw@inf.ed.ac.uk>
Reviewed-by: Simon Wilkinson <sxw@inf.ed.ac.uk>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

14 years agoWindows: afslogon.dll vs windows 7
Jeffrey Altman [Thu, 25 Mar 2010 05:23:23 +0000]
Windows: afslogon.dll vs windows 7

In Windows 7 the GINA is no longer used.  As a result, when a
non-Heimdal realm is used for logon, the LogonDomain field
is no longer populated during the NPLogonNotify call.  Instead
we must obtain the Kerberos realm from the UPN specified in
the Username field.

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

14 years agoWindows: aklog must reset viceId to 0 before pr_CreateUser call
Jeffrey Altman [Thu, 25 Mar 2010 04:40:29 +0000]
Windows: aklog must reset viceId to 0 before pr_CreateUser call

If the viceId is not reset to 0, the ptserver believes the
client is attempting to request the anonymous id value
and fails the registration request with permission denied.

LICENSE MIT

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

14 years agoWindows: output pt error messages as strings
Jeffrey Altman [Thu, 25 Mar 2010 02:07:29 +0000]
Windows: output pt error messages as strings

Build and link in ptserver/pterror.c so that aklog
can output pt error messages as strings.

LICENSE MIT

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

14 years agogrowl agent should handle port busy
Derrick Brashear [Wed, 24 Mar 2010 18:49:11 +0000]
growl agent should handle port busy

if the port can't be bound, die cleanly.
FIXES 126812

Change-Id: I6523f18c2b5f5bacfbd11d08736b9af14fa666e2
Reviewed-on: http://gerrit.openafs.org/1651
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

14 years agoavoid double-free cell name canonicalization
Derrick Brashear [Wed, 24 Mar 2010 21:18:24 +0000]
avoid double-free cell name canonicalization

if we free the cell name, so note it so we don't try again.

FIXES 126813

Change-Id: I4149fac057c587123f6bf6da8a42a4cd5e590716
Reviewed-on: http://gerrit.openafs.org/1654
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

14 years agoLinux : Apply more dget_parent() pixie dust
Simon Wilkinson [Wed, 24 Mar 2010 16:48:35 +0000]
Linux : Apply more dget_parent() pixie dust

Replace another dentry->d_parent->d_inode lookup with a dget_parent()
- accessing d_parent directly is potentially racy.

Change-Id: I2c21cd6ef5c1b4b601c830836590705b397915e4
Reviewed-on: http://gerrit.openafs.org/1647
Reviewed-by: Marc Dionne <marc.c.dionne@gmail.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

14 years agoafsdump warning killing
Derrick Brashear [Wed, 24 Mar 2010 16:54:30 +0000]
afsdump warning killing

a couple legit bugs here but mostly i used my parentheses shaker.

Change-Id: I645a239ca584fbb5759d885d42c058c757a35731
Reviewed-on: http://gerrit.openafs.org/1648
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

14 years agomake 1.5.73 relnotes openafs-devel-1_5_73
Derrick Brashear [Wed, 24 Mar 2010 04:19:56 +0000]
make 1.5.73 relnotes

release notes for 1.5.73

Change-Id: I4fd8d0b40f97311f42ee77f9245bd9e9cb87188f
Reviewed-on: http://gerrit.openafs.org/1642
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

14 years agoopenafs 1.5.73 version strings
Derrick Brashear [Tue, 23 Mar 2010 03:44:52 +0000]
openafs 1.5.73 version strings

make windows and unix 1.5.73

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

14 years agoUpdating UserGuide with Kerberos v5 authentication
Booker Bense [Fri, 5 Mar 2010 15:11:41 +0000]
Updating UserGuide with Kerberos v5 authentication

This patchset contains updates to the OpenAFS UserGuide that
explains how to authentication OpenAFS using kinit/aklog
and uses language describing Kerberos outside the context
of the kaserver.  References to applications such as telnet
have been replaced with more modern equivalents such as ssh.

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

14 years agoWindows: Use a timestamp for the minidump filename
Asanka Herath [Sat, 20 Mar 2010 02:13:41 +0000]
Windows: Use a timestamp for the minidump filename

Set the name of the minidump file to :
%TMP%\afsd-<yyyy>-<mm>-<dd>-<hh>_<mm>_<ss>.dmp

This prevents new minidump files from overwriting older ones.

Change-Id: I057963bedf618eb23720f17d62c8473790569273
Reviewed-on: http://gerrit.openafs.org/1633
Reviewed-by: Asanka Herath <asanka@secure-endpoints.com>
Tested-by: Asanka Herath <asanka@secure-endpoints.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
Tested-by: Jeffrey Altman <jaltman@openafs.org>

14 years agoWindows: Monitor requests and gather diagnostics before a timeout
Asanka Herath [Fri, 19 Mar 2010 01:13:35 +0000]
Windows: Monitor requests and gather diagnostics before a timeout

This patch monitors SMB requests that are being serviced and
automatically enables logging if a request takes longer than one
minute to complete.  If the requst hasn't completed by the two minute
mark, the code generates a minidump.  Once a minimump is generated, no
more minidumps will be produced for another 5 minutes.

SMB monitoring can be enabled/disabled using the new registry
parameter 'SMBRequestMonitor.'

Change-Id: I5aae22f6bfa635cec4a803089b483698641080eb
Reviewed-on: http://gerrit.openafs.org/1632
Reviewed-by: Asanka Herath <asanka@secure-endpoints.com>
Tested-by: Asanka Herath <asanka@secure-endpoints.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
Tested-by: Jeffrey Altman <jaltman@openafs.org>

14 years agoadd missed release notes
Derrick Brashear [Wed, 24 Mar 2010 01:49:26 +0000]
add missed release notes

these are the release notes available via the web but not here.

Change-Id: Ieb4af99a4d6a1dfdaabccdac79d03f7d328de675
Reviewed-on: http://gerrit.openafs.org/1641
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

14 years agoWindows: changelog for 1.5.73
Jeffrey Altman [Tue, 23 Mar 2010 22:01:45 +0000]
Windows: changelog for 1.5.73

Change-Id: I83ab533c7ec52b82e76a857f3ac4a12e1d8b1939
Reviewed-on: http://gerrit.openafs.org/1636
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

14 years agoWindows: cm_attrs_t requires inclusion of cm_vnodeops.h
Jeffrey Altman [Tue, 23 Mar 2010 23:00:27 +0000]
Windows: cm_attrs_t requires inclusion of cm_vnodeops.h

Include cm_vnodeops.h before reference to cm_attrs_t.

LICENSE MIT

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

14 years agoWindows LWP and UNIX LWP do not have the same lwp_cpptr structure
Jeffrey Altman [Tue, 23 Mar 2010 22:57:19 +0000]
Windows LWP and UNIX LWP do not have the same lwp_cpptr structure

Windows LWP uses Windows Fibers.  There is no 'stack' field.

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

14 years agoWarning fix: print burstWait fields
Marc Dionne [Tue, 23 Mar 2010 22:36:17 +0000]
Warning fix: print burstWait fields

burstWait is a struct clock with two int fields, but we
try to print it as a %u.
Print the fields separately like we do for timeout.

Change-Id: I42ab3e4557af96cacae00b89841b1fcdfa832d4b
Reviewed-on: http://gerrit.openafs.org/1637
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

14 years agoFix #ifdef typo
Marc Dionne [Tue, 23 Mar 2010 21:49:22 +0000]
Fix #ifdef typo

Fix ifdef typo.  The compiler complains that the variable
is undefined.  Not sure what effect this may have had on
the intended preprocessor output.

Change-Id: Idef3f4ac42a96a096be25d31ff416f7a23560d70
Reviewed-on: http://gerrit.openafs.org/1635
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

14 years agoDefine __USE_XOPEN conditionally
Marc Dionne [Tue, 23 Mar 2010 21:32:11 +0000]
Define __USE_XOPEN conditionally

Only define __USE_XOPEN if not already defined.
In this part of the code it might now already be defined since
we enabled AC_USE_SYSTEM_EXTENSIONS.

Change-Id: I0651658d82550ee9be593d281bf50205815f9ef7
Reviewed-on: http://gerrit.openafs.org/1634
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

14 years agoWindows: Make default mode bits configurable
Asanka Herath [Sat, 20 Mar 2010 20:46:05 +0000]
Windows: Make default mode bits configurable

Mode bits aren't directly exposed by the Win32 API. We were leaving
them to default to 0777 when creating new files and directories.

This patch introduces two configuration parameters;
'UnixModeFileDefault' and 'UnixModeDirDefault' which are DWORD
registry entries that are used to set the initial mode bits.

If the values are set to 0, then the behavior is identical to what we
had before.

Change-Id: I7822141aab1e12cc8e151be771f779284fa68465
Reviewed-on: http://gerrit.openafs.org/1602
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Reviewed-by: Asanka Herath <asanka@secure-endpoints.com>
Tested-by: Asanka Herath <asanka@secure-endpoints.com>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
Tested-by: Jeffrey Altman <jaltman@openafs.org>

14 years agoremove vnop needs discon lock
Derrick Brashear [Tue, 23 Mar 2010 20:06:38 +0000]
remove vnop needs discon lock

right now, the discon lock never happens over a remove.
fix that. restructure the code to allow one unlock and exit.

Change-Id: I88fefa30c9ba8ad4a4ccce1a5b02e9fb8403b99d
Reviewed-on: http://gerrit.openafs.org/1629
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

14 years agoDevelop Kerberos renew system for ticket
Claudio Bisegni [Mon, 22 Mar 2010 22:35:22 +0000]
Develop Kerberos renew system for ticket

    - In Preference pane has been added a tab called "Option" where are
      showned the option for kerberos renew
    - In AfsBackgrounder has been implemented the NSTimer that will call
      the krb5 renew action according to user preference value

Change-Id: Ica4b705018722488613ac09586e60c69303d1076
Change-Id: I79ce1334d99f926544e865fbb563a1ffecaa969c
Reviewed-on: http://gerrit.openafs.org/1606
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

14 years agokill MultiBreakVolumeCallBack too
Derrick Brashear [Tue, 23 Mar 2010 20:53:31 +0000]
kill MultiBreakVolumeCallBack too

this is also now unused. kill it.

Change-Id: Ie2f3edef4dc74ee874eb5aedaf2c0d2ee548ae6d
Reviewed-on: http://gerrit.openafs.org/1631
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

14 years agoRemove BreakVolumeCallBacks prototype
Andrew Deason [Tue, 23 Mar 2010 19:27:28 +0000]
Remove BreakVolumeCallBacks prototype

BreakVolumeCallBacks was a dead function that was removed from viced.
Remove the prototype for it.

Change-Id: I12a4d69719163d3e7be7dcae6f39df17b245c807
Reviewed-on: http://gerrit.openafs.org/1628
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

14 years agovos: correct syncvldb -verbose server byte order
Andrew Deason [Tue, 9 Mar 2010 20:48:36 +0000]
vos: correct syncvldb -verbose server byte order

'vos syncvldb -verbose' outputs the before/after VLDB entries for
altered entries, but the 'after' output shows server addresses in NBO.
EnumerateEntry expects server IPs to be in NBO, so correct one location
where they were passed in HBO.

Change-Id: I332fe83b45b2b595e091c8eb9bdc57d89d5e36a8
Reviewed-on: http://gerrit.openafs.org/1550
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

14 years agovldb_check man page should say -vheader, not -pheader
Russ Allbery [Thu, 18 Mar 2010 20:18:27 +0000]
vldb_check man page should say -vheader, not -pheader

The option was given correctly in SYNOPSIS but not in the OPTIONS section.
Thanks, Rod Widdowson.

FIXES 126771

Change-Id: Ibd9694c066b6750ad04273c22e66c84fb7b4a1c6
Reviewed-on: http://gerrit.openafs.org/1589
Reviewed-by: Rod Widdowson <rdw@steadingsoftware.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

14 years agomake tryevalfakestat really not block
Derrick Brashear [Tue, 9 Mar 2010 19:13:50 +0000]
make tryevalfakestat really not block

turns out this VerifyVCache can end up hitting other lockers. move it out
of the try path.

Change-Id: I073318a44b4da519413905b677fd439f1edd6c54
Reviewed-on: http://gerrit.openafs.org/1547
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

14 years agoviced remove dead BreakVolumeCallBacks function
Derrick Brashear [Mon, 15 Feb 2010 21:34:43 +0000]
viced remove dead BreakVolumeCallBacks function

this is no longer used. trash it.

Change-Id: I0ad5aa203924c6a16afd68bc8ef55663951917c3
Reviewed-on: http://gerrit.openafs.org/1315
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

14 years agovos: Avoid LWP stack overflow error on SIGINT
Andrew Deason [Wed, 10 Mar 2010 20:15:58 +0000]
vos: Avoid LWP stack overflow error on SIGINT

vsproc's method of longjmp'ing out of a signal handler can thoroughly
confuse LWP. At the very least, the information on our stack becomes
incorrect, since we're no longer using the stack supplied by LWP. At the
very least, we seem to (almost) always fail the sanity check checking
for stack overflow. To prevent the test from happening, NULL the stack
pointer before the longjmp so we can attempt recovery.

FIXES 33360

Change-Id: Ie910cb1cc8564ac119c3b751fd8295bf312a3ce7
Reviewed-on: http://gerrit.openafs.org/1559
Tested-by: Andrew Deason <adeason@sinenomine.net>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

14 years agovos: Use IOMGR_SoftSig for signals
Andrew Deason [Wed, 10 Mar 2010 17:58:04 +0000]
vos: Use IOMGR_SoftSig for signals

When vsprocs tries to longjmp from the signal handler, use IOMGR_SoftSig
first, so sleeping processes are woken back up. Without this, IOMGR can
bail out since it finds no processes READY when we attempt to do
anything with RX.

Change-Id: I9089bc4d003786d4a2205cd97f722fbf85fd1aa8
Reviewed-on: http://gerrit.openafs.org/1558
Tested-by: Andrew Deason <adeason@sinenomine.net>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

14 years agovos: Mark longjmp-used variables as 'volatile'
Andrew Deason [Wed, 10 Mar 2010 00:07:18 +0000]
vos: Mark longjmp-used variables as 'volatile'

vsprocs tries to do error recovery by calling longjmp from a signal
handler. Although this is quite error-prone since we call a ton of
non-async-signal-safe functions, make it a bit more likely to work by
marking variables that are used after the longjmp as volatile. This
reduces how often (depending on the platform) these values will be
completely worthless after a longjmp since they were cached in a
register or similar.

FIXES 125535

Change-Id: I8566f8cffde6cfdffd99a11d637645494e0a0514
Reviewed-on: http://gerrit.openafs.org/1557
Tested-by: Andrew Deason <adeason@sinenomine.net>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

14 years agoFix strict aliasing problems or add -fno-strict-aliasing
Russ Allbery [Mon, 22 Mar 2010 22:00:39 +0000]
Fix strict aliasing problems or add -fno-strict-aliasing

Create a new CFLAGS_NOSTRICT Autoconf substitution variable which
is set to -fno-strict-aliasing if we're using gcc to compile.  Add
@CFLAGS_NOSTRICT@ to the C compiler flags for source files that have
significant strict-aliasing issues.

Fix minor strict-aliasing issues elsewhere in the tree by using memcpy
to copy the data into a properly typed variable.

Change-Id: I43afdb5e33e06cb249b7db385a65daf8d2133a19
Reviewed-on: http://gerrit.openafs.org/1617
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

14 years agoUse AC_USE_SYSTEM_EXTENSIONS
Andrew Deason [Mon, 15 Mar 2010 17:41:11 +0000]
Use AC_USE_SYSTEM_EXTENSIONS

Instead of defining various symbols like _XOPEN_SOURCE, _BSD_SOURCE, and
the like, just use autoconf's AC_USE_SYSTEM_EXTENSIONS to define all of
the appropriate symbols for us. Deal with some fallout by removing some
of the existing defines.

Change-Id: I1c1968c89cc2dfda1293fd2566dac8e266325a72
Reviewed-on: http://gerrit.openafs.org/1582
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

14 years agoaix mount failure unlock and seterror
Derrick Brashear [Fri, 19 Mar 2010 00:17:02 +0000]
aix mount failure unlock and seterror

set an error usefully and drop the vfs lock

Change-Id: I9d901b50722c09e1b131077f0b19e2831e6a44c8
Reviewed-on: http://gerrit.openafs.org/1590
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

14 years agoupdate link order
Derrick Brashear [Wed, 24 Feb 2010 19:16:48 +0000]
update link order

librx needs libsys on irix to get afs_syscall
libsys needs librx for xdr_mumble for rmtsys

Change-Id: I2e4d9771807546c14f8b16b8805c222d79aab8c1
Reviewed-on: http://gerrit.openafs.org/1386
Tested-by: Derrick Brashear <shadow@dementia.org>
Reviewed-by: Derrick Brashear <shadow@dementia.org>

14 years agoXDR: Stop the madness
Simon Wilkinson [Thu, 18 Feb 2010 00:04:22 +0000]
XDR: Stop the madness

We currently attempt to align our XDR implementation with what may
be provided by the host system. This leads to a huge amount of parameter
fudging, and general pain and misfortune. However, the only place that
we still actually use the system XDR is for UKERNEL builds.

Change this so that we use our XDR everywhere. Fix all of our type and
function definitions so that they're standard. Remove the warning
inhibitions.

Change-Id: I53f4539e50eacb4e0691d8d3d6546bbfb7438358
Reviewed-on: http://gerrit.openafs.org/1340
Reviewed-by: Chaz Chandler
Tested-by: Chaz Chandler
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
Reviewed-by: Simon Wilkinson <sxw@inf.ed.ac.uk>

14 years agoUse sigset_t and sigfillset instead of memset
Russ Allbery [Mon, 22 Mar 2010 19:56:09 +0000]
Use sigset_t and sigfillset instead of memset

Rather than using an arbitrary array memset to ones as our signal
mask, use the POSIX sigfillset function and eliminate the static
variable.  Fixes strict aliasing errors with --enable-checking and
gcc 4.4.3 on Linux x86.

Change-Id: Ic3e0499d03657d94f60808ed12e090dc62cce6fc
Reviewed-on: http://gerrit.openafs.org/1616
Tested-by: Russ Allbery <rra@stanford.edu>
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
Reviewed-by: Marc Dionne <marc.c.dionne@gmail.com>
Tested-by: Marc Dionne <marc.c.dionne@gmail.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

14 years agoMove non-executable stack assembly code to end of file
Russ Allbery [Mon, 22 Mar 2010 19:42:48 +0000]
Move non-executable stack assembly code to end of file

The non-executable stack annotation used for Linux works by adding
an additional section to the generated object.  The annotation added
in 9bfd03d723a9cf17673f40513a7adde1d503bcbc was added to the beginning
of each assembly file.  This caused build failures on Linux s390
because the remainder of the assembly code was then put in that
section, which was discarded during linking.

Add the annotation to the end of each assembly file instead, following
the instructions at:

    http://www.gentoo.org/proj/en/hardened/gnu-stack.xml

Change-Id: I5bd2d8d0ac31932b59757dcec0a942c459d61cac
Reviewed-on: http://gerrit.openafs.org/1615
Tested-by: Russ Allbery <rra@stanford.edu>
Reviewed-by: Simon Wilkinson <sxw@inf.ed.ac.uk>
Reviewed-by: Derrick Brashear <shadow@dementia.org>

14 years agomultibreak callbacks add host marking
Derrick Brashear [Sat, 20 Mar 2010 14:59:20 +0000]
multibreak callbacks add host marking

to deal with refcounts, we have to mark hosts in a way other than holds.
do so. all other h_Enum callers don't use this feature.

FIXES 126497

Change-Id: I0fc008495b93d2c361d476c7fcb6b355c0dab825
Change-Id: I61128261b2e8c64fafbf7425d6a65dd48fd7e177
Reviewed-on: http://gerrit.openafs.org/1599
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

14 years agosalvage variable initialization
Derrick Brashear [Sun, 21 Mar 2010 17:49:21 +0000]
salvage variable initialization

root vnode creation change caused a new warning i missed. fix it now,
set rootvnode to NULL

Change-Id: I06fe7a60f2fcc48c498249142220f65291188baa
Reviewed-on: http://gerrit.openafs.org/1610
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

14 years agoaix vfs table entry in rc script
Derrick Brashear [Sun, 21 Mar 2010 17:48:48 +0000]
aix vfs table entry in rc script

add an entry to the aix vfs table so umount works

Change-Id: I29a27ca350b948da0283ae09df0acd30eb6384c4
Reviewed-on: http://gerrit.openafs.org/1611
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

14 years agoCreate missing root directory when ORPH_ATTACH
Andrew Deason [Wed, 3 Feb 2010 19:02:23 +0000]
Create missing root directory when ORPH_ATTACH

When we are salvaging with ORPH_ATTACH, orphans are normally attached to
a volume's root directory. If the volume is missing a root directory,
however, nothing is attached, and the volume can appear empty or
unusable.

So, to make it possible to get a useful volume out of a volume that lost
(only) its root directory, create a new root dir, and attach orphans to
that root.

FIXES 94658

Change-Id: I946a60485b5793952707f44ac369ee243e8dc076
Reviewed-on: http://gerrit.openafs.org/1235
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

14 years agocomment assumptions in lih0_r
Derrick Brashear [Sat, 20 Mar 2010 14:40:32 +0000]
comment assumptions in lih0_r

previously, we checked for  (!held && !h_OtherHolds_r(host))
now, we want to confirm only we hold it, so comment that that's how
this works

Change-Id: I98a65fbb4f2d0532054c71699dc2168e4592668b
Reviewed-on: http://gerrit.openafs.org/1598
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

14 years agoaix krb5 error message handling
Derrick Brashear [Sun, 21 Mar 2010 16:49:34 +0000]
aix krb5 error message handling

handle krb5 error messages for aix in aklog and lam plugin

Change-Id: Iac96dc62e7889d375db111d5c96d86cf09715ab6
Reviewed-on: http://gerrit.openafs.org/1609
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

14 years agopanic prototype for aix 6
Derrick Brashear [Sun, 21 Mar 2010 15:42:15 +0000]
panic prototype for aix 6

aix does need a prototype for the lame version of the function

Change-Id: I636b734bb725c425b2b4c6e4ae3e9473e087c21d
Reviewed-on: http://gerrit.openafs.org/1608
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

14 years agoDon't count root session keyrings against quota
Simon Wilkinson [Wed, 17 Mar 2010 11:56:12 +0000]
Don't count root session keyrings against quota

AFS PAM modules can call setpag() as root, regardless of the UID
being authenticated. This leads to the session keyring being created
using roots quota - on some systems (RHEL5) this quota is both small,
and of a fixed size.

Modify our keyring allocation code so that when a keyring is created
by root, we don't do any quota checks.

Change-Id: I2ee151ec1166a78475047bffd2c1d31f45e8dbdf
Reported-by: Rainer Toebbicke <rtb@pclella.cern.ch>
Reviewed-on: http://gerrit.openafs.org/1577
Tested-by: Rainer Toebbicke <rtb@pclella.cern.ch>
Reviewed-by: Derrick Brashear <shadow@dementia.org>

14 years agomacos fsevents hinting
Derrick Brashear [Thu, 18 Mar 2010 19:27:35 +0000]
macos fsevents hinting

add support for faking it. no exported interface exists, sadly.
currently does only authentication events, and is best-effort only,
however for people who get tokens after viewing directories in finder,
this is a drastic improvement.

also adds needed setting to afssettings plist

FIXES 23781

Change-Id: I46d5a6cf103c30a2134decccc929e1ef85a26726
Reviewed-on: http://gerrit.openafs.org/451
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

14 years agoafsadminutil: translate krb5 error messages on Windows
Jeffrey Altman [Sat, 6 Mar 2010 22:32:57 +0000]
afsadminutil: translate krb5 error messages on Windows

util_AdminErrorCodeTranslate() is used to translate error
code messages within the libadmin library set and is used
by translate_et.  This has in the past not translated
krb5 error codes.

This patchset conditionally adds support for using
krb5_get_error_message() or error_message() on the Windows
platform if KFW is installed.  This is accomplished by
adding new functions to afsutil.lib:

  initialize_krb5()
  fetch_krb5_error_message()

which are used within util_AdminErrorCodeTranslate()
only if AFS_KRB5_ERROR_ENV is defined.

Support for Unix is not provided at the present time
because doing this "right" will lead to a dependence on
kerberos libraries from this library, which we might want
to avoid.

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

14 years agovolume_inline.h does not need sys/file.h
Andrew Deason [Fri, 19 Mar 2010 14:31:04 +0000]
volume_inline.h does not need sys/file.h

src/vol/volume_inline.h does not need sys/file.h; at one point, it was
using macros from sys/file.h for locking constants, but now we use the
lwp/lock.h constants. So, include that instead. Also, only include it
for DAFS, since we only use the constants in the DAFS case. Thanks,
Jeffrey Altman.

Change-Id: I114b438d7fb1fbb3a35bdfa0717ac334c7f80355
Reviewed-on: http://gerrit.openafs.org/1596
Tested-by: Andrew Deason <adeason@sinenomine.net>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>

14 years agomacos uninstall redux
Derrick Brashear [Fri, 19 Mar 2010 05:13:26 +0000]
macos uninstall redux

the rest of the uninstall changes. git add, sigh

Change-Id: I69e4f4a870e08b1796b4546776e373f0a82e0e8e
Reviewed-on: http://gerrit.openafs.org/1594
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

14 years agoupdate macos uninstaller
Derrick Brashear [Fri, 19 Mar 2010 04:57:13 +0000]
update macos uninstaller

make the uninstaller cope with the new receipts format and location

FIXES 125634

Change-Id: I6cf0cd3e979a34115f391477657ec37f0c3d8faa
Reviewed-on: http://gerrit.openafs.org/1593
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

14 years agoVOL_LOCK needed when traversing DiskPartitionList
Dan Hyde [Tue, 2 Feb 2010 15:37:47 +0000]
VOL_LOCK needed when traversing DiskPartitionList

VLockPartition sets VOL_LOCK, opens (perhaps creating) the lock file
for a partition, and flock's it.  VUnlockPartition, sets VOL_LOCK, and
closes the lock file fd.

VLockPartition is called from the salvager.  Nothing ever calls
VUnlockPartition.

VPFullUnlock is called every 30 seconds, does NOT set VOL_LOCK, and
happily closes any lock file fd it finds, breaking any lock set with
flock.

Other routines use the VOL_LOCK when traversing DiskPartitionList.

Change-Id: I683547f574b1f760e72014f5d44ce3987f07b5df
Reviewed-on: http://gerrit.openafs.org/1213
Reviewed-by: Dan Hyde <drh@umich.edu>
Tested-by: Dan Hyde <drh@umich.edu>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

14 years agoCatch up with FBSD80's removal of thread argument to VFS calls
Ben Kaduk [Wed, 17 Mar 2010 05:55:41 +0000]
Catch up with FBSD80's removal of thread argument to VFS calls

FreeBSD SVN rev 191990 removed the thread argument to
filesystem-dependent VFS calls.  Curthread is always assumed.
There is a __FreeBSD_version bump that we could check if
we felt like being precise, but FBSD80_ENV is probably good enough.

Change-Id: I4534f01999b61eaeaa014c41473c693e6d432fef
Reviewed-on: http://gerrit.openafs.org/1587
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Benjamin Kaduk <kaduk@mit.edu>

14 years agoaix vnode hold simplification
Derrick Brashear [Mon, 15 Mar 2010 17:15:34 +0000]
aix vnode hold simplification

instead of special-casing aix's AFS_FAST_xxx *and* calling
VREFCOUNT_INC for AIX, make it all consistent; side effect, remove
now-superfluous AIX ifdef'd code

Change-Id: Ic6a91429aad26e17fd9e12884ba0eba86564c377
Reviewed-on: http://gerrit.openafs.org/1572
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>