openafs.git
14 years agowork around finder setting modes on symlinks
Derrick Brashear [Fri, 16 Apr 2010 15:49:43 +0000]
work around finder setting modes on symlinks

we could mask the mode setting on symlinks, however, it would be nice
to change the fileserver to allow mode setting on symlinks in some
(safe) cases. preserve our ability to do so.

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

14 years agoAdd vos setaddrs command and man page
Harald Barth [Fri, 16 Apr 2010 05:45:35 +0000]
Add vos setaddrs command and man page

The vos setaddrs command sets the IP addresses for a server entry
in the Volume Location Database (VLDB). Specify one or serveral hosts.
All existing hosts in the VLDB entry are replaced with the new entries
on the command line.

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

14 years agoConvert param.rs_aix61.h EOF from CR-LF to LF
Jeffrey Altman [Fri, 16 Apr 2010 13:32:42 +0000]
Convert param.rs_aix61.h EOF from CR-LF to LF

The src/config/param.rs_aix61.h source file was stored
in the repo with CR-LF end of line.  This is causing
problems for Windows Git which converts CR-LF to LF
for storage in the repo.

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

14 years agoTidy up UKERNEL includes
Simon Wilkinson [Thu, 15 Apr 2010 19:52:11 +0000]
Tidy up UKERNEL includes

UKERNEL is just another userspace build - there's no need to
maintain completely separate header file lists in each object file
for "userspace" and "ukernel". Tidy this up to improve the
readability of these sections of code.

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

14 years agoRx: restore thread safety to rx_NewCall
Jeffrey Altman [Thu, 15 Apr 2010 03:21:37 +0000]
Rx: restore thread safety to rx_NewCall

Thread safety in rx_NewCall requires that only one thread be
actively allocating or recycling a call at a time.  Since we are
no longer holding the conn_call_lock across the entire transaction
we need to have another synchronization mechanism.  Add a new
rx_connection flag, RX_CONN_MAKECALL_ACTIVE, which when set indicates
that a thread is actively obtaining a call.  If any other threads
see this flag set, they will wait until being signalled that the
thread has completed its activity.

In addition, because the call->lock may be dropped when processing
rxi_ResetCall(), we must hold a reference to the call once we
begin using it.  Otherwise, the call may be garbage collected
behind our back.

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

14 years agomacos and bsd readdir type guessing fix
Derrick Brashear [Wed, 14 Apr 2010 16:10:31 +0000]
macos and bsd readdir type guessing fix

right now we never return a link hint. we know here it's a link. say so.

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

14 years agodarwin bulk race needs an iocount
Derrick Brashear [Thu, 15 Apr 2010 04:13:43 +0000]
darwin bulk race needs an iocount

if another user raced with us, we need an iocount back since finalize
will have dropped one.

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

14 years agosnowleopard fuse fallout
Derrick Brashear [Thu, 15 Apr 2010 05:29:31 +0000]
snowleopard fuse fallout

didn't notice in testing that 64 bit version of afsd got slaughtered.

put it back.

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

14 years agoReplace unsafe use of gets()
Marc Dionne [Tue, 13 Apr 2010 23:35:39 +0000]
Replace unsafe use of gets()

Build tools compain that this is dangerous - replace gets() with a
bounded fgets().

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

14 years agodrop afs_xserver lock during GetCapabilities
Derrick Brashear [Wed, 14 Apr 2010 22:33:47 +0000]
drop afs_xserver lock during GetCapabilities

new contact to a fileserver can trigger an InitCallBackStateN RPC
to us, which our agent will need afs_xserver to handle. don't hold it;
we only need it to fill in capabilities. racing here is ok.

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

14 years agoAutogenerate a Debian changelog for correct package versioning
Russ Allbery [Tue, 13 Apr 2010 23:32:49 +0000]
Autogenerate a Debian changelog for correct package versioning

The Debian packaging infrastructure takes the package version from the
most recent entry in the changelog file.  Change the changelog file to
a template and add an entry to the top that will be set to the current
version of OpenAFS, with a Debian revision that will sort before any
official package.

Change-Id: Ic7fb1d30be10210b7d032cdc49a963410997db82
Reviewed-on: http://gerrit.openafs.org/1749
Tested-by: Russ Allbery <rra@stanford.edu>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

14 years agoAdd a FUSE implementation for afsd
Andrew Deason [Thu, 8 Apr 2010 19:50:18 +0000]
Add a FUSE implementation for afsd

This adds afsd.fuse, which allows for mounting AFS via FUSE (via
libuafs), instead of via the OpenAFS kernel module.

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

14 years agoUse afsd code in libuafs
Andrew Deason [Tue, 6 Apr 2010 22:07:33 +0000]
Use afsd code in libuafs

Share the same CM code for the kernel client as in libuafs, so we
don't duplicate code for initializing the cache and other things. In
order to do this:

 - Remove some libuafs global variables that share name and
   functionality with those in afsd, and declare some static

 - Remove uafs_Init(), and move the ukernel-specific code in it to
   osi_Init(); replace with uafs_Setup(), uafs_ParseArgs(), and
   uafs_Run(), which just call into afsd functions

 - Remove libuafs' cache initialization code (CreateCacheFile,
   SweepAFSCache, etc); instead just use afsd's

 - Add uafs_mount(), to perform the 'mount'ing step that takes place
   in the normal kernel CM

 - Add afsd_uafs.c for the glue between afsd and libuafs

Note that this now requires libcmd for libuafs.

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

14 years agoRename uvldbentry spare1 to matchindex
Jeffrey Altman [Mon, 12 Apr 2010 18:45:14 +0000]
Rename uvldbentry spare1 to matchindex

In the nvldbentry structure 'spare1' was renamed to 'matchindex'.
Do the same for uvldbentry as that is what the field is used for.

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

14 years agoFix new UKERNEL warnings on 64-bit
Marc Dionne [Tue, 13 Apr 2010 22:58:11 +0000]
Fix new UKERNEL warnings on 64-bit

Commit 830cb48c enabled new warnings when building UKERNEL, which
causes builds with --enable-checking to fail.  These are 64-bit
specific warnings from int to pointer conversions and one printf
warning.

Changes:
- cast printf argument to (int) in afs_usrops.c
- use (iparmtype)(uintptrsz) to convert 32-bit integers to
pointers
- move the definition of uintptrsz to src/afs/afs.h so its
available to other source files, and remove the original definition
in afs_syscall.c

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

14 years agoAdd support for pkg-config m4 macros
Andrew Deason [Tue, 13 Apr 2010 18:53:13 +0000]
Add support for pkg-config m4 macros

Include pkg.m4, so we can use pkg-config macros in autoconf even if
pkg-config is not installed.

Change-Id: Ie81307beb84499297e251f0f90781d544044a235
Reviewed-on: http://gerrit.openafs.org/1747
Reviewed-by: Russ Allbery <rra@stanford.edu>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

14 years agoSquash afs_GenericStoreProc warning
Andrew Deason [Tue, 13 Apr 2010 17:59:30 +0000]
Squash afs_GenericStoreProc warning

code is potentially unitialized. Initialize it.

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

14 years agolibuafs: Add $(XCFLAGS) to CFLAGS on all platforms
Andrew Deason [Tue, 13 Apr 2010 17:41:31 +0000]
libuafs: Add $(XCFLAGS) to CFLAGS on all platforms

Only darwin had $(XCFLAGS) in the libuafs build for some reason. Add
it to all platforms, so they get e.g. -Wall if so configured.

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

14 years agoDAFS: avoid volume lock contention during initialization
Michael Meffie [Tue, 12 Jan 2010 02:16:06 +0000]
DAFS: avoid volume lock contention during initialization

Avoid the excessive volume lock contention during startup to
improve the time to pre-attach a very large number of volumes.
The parallel attach worker threads avoid the volume lock
while scanning the partitions for volumes and send batches of
volume ids to the main thread to be preattached under the
volume lock.

FIXES 124489

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

14 years agoFileserver capabilities support for the UNIX client
Felix Frank [Thu, 4 Mar 2010 03:41:15 +0000]
Fileserver capabilities support for the UNIX client

The attached patch has the client perform a GetCapabilities RPC
on fileservers it encounters.
It uses an additional server flag bit to keep track of the servers that
have been queried already.

In the case of afs_CeckServers(), GetTime RPCs are largely replaced by
GetCapabilities. GetTime is performed on a server if and only if
afs_setTime is nonzero and either
(a) no setTimeHost has yet been determined or
(b) the server in question has been designated as setTimeHost
The GetServers() function could thus be simplified even further wrt. the
setTime mechanism, but doing so would imply more rewriting (violating
the KISS principle; a followup patch should deal with that).

When a client is asked to reset callback states, it also resets the
"capabilites known" bit.

Thanks go to Simon Wilkinson, Jeffrey Altman and Jeffrey Hutzelman for
input regarding logic and implementation details.

FIXES 124972

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

14 years agoRx: avoid out of order lock acquisition in rx_NewCall
Jeffrey Altman [Mon, 12 Apr 2010 12:58:20 +0000]
Rx: avoid out of order lock acquisition in rx_NewCall

Sha-1 33010ef25e716f2ec2df17cc113f4ef8f67e3a74 broke the lock order
conventions between the conn->conn_call_lock and the call-lock.
This patchset corrects the ordering and handles the synchronization
issues that might occur when the call->lock is dropped within
rx_NewCall.

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

14 years agoDo not turn off AFS_HAVE_STATVFS for UKERNEL
Andrew Deason [Mon, 12 Apr 2010 17:39:00 +0000]
Do not turn off AFS_HAVE_STATVFS for UKERNEL

Many param files turn off AFS_HAVE_STATVFS for UKERNEL. We obviously
still have statvfs() available whether we are running with UKERNEL or
not, so modify param files to enable it for UKERNEL if it was enabled
for non-UKERNEL.

The only places using this define are afsd and vol/partition.c, the
latter of which will not be affected.

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

14 years agoSplit afsd into afsd.c and afsd_kernel.c
Andrew Deason [Thu, 8 Apr 2010 21:37:51 +0000]
Split afsd into afsd.c and afsd_kernel.c

Move the parts of afsd.c that depend on using the kernel module into
afsd_kernel.c. Keep in afsd.c code that can be used with libuafs
drivers.

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

14 years agoFix problems from afs_osi_gcpags reorganization
Matt Smith [Sat, 10 Apr 2010 06:36:59 +0000]
Fix problems from afs_osi_gcpags reorganization

Corrections to mistakes made during the reorganization
of afs_osi_gcpags.c to per-OS directories. Includes fixes to
LINUX24 and whitespace corrections.

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

14 years agoafsmonitor: fix segv on exit
Michael Meffie [Sat, 10 Apr 2010 02:31:24 +0000]
afsmonitor: fix segv on exit

Fix crash during afsmonitor shutdown when monitoring
multiple fileserver or clients.

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

14 years agoafsmonitor: show busy counts
Michael Meffie [Sat, 10 Apr 2010 01:03:09 +0000]
afsmonitor: show busy counts

Update afsmonitor to display rx_nBusies, fs_nBusies,
sysname_ID, and fs_GetCapabilities, which where claimed from
spare fields long ago. Add a new group name called
Busies_group to show just the busy fields.

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

14 years agoFix UKERNEL build error - include afs/afs_osi.h
Marc Dionne [Sat, 10 Apr 2010 00:19:19 +0000]
Fix UKERNEL build error - include afs/afs_osi.h

Commit d0f2ffca breaks the build on my system because
afs/afs_osi.h no longer gets included for the UKERNEL + !KERNEL
case.  This causes many errors as a result of missing definitions
such as afs_kmutex_t.
Pull out this include into a separate ifdef based only on "KERNEL".

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

14 years agoMove contents of afs_osi_gcpags to per-OS files
Matt Smith [Fri, 9 Apr 2010 18:32:46 +0000]
Move contents of afs_osi_gcpags to per-OS files

Moved the relevant chunks from src/afs/afs_osi_gcpags.c
to osi_gcpags.c located in each of the OS subdirectories.
Also updated libafs and libuafs to reflect these changes.

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

14 years agoCorrect incorrect type-punning fixes
Andrew Deason [Thu, 1 Apr 2010 18:55:51 +0000]
Correct incorrect type-punning fixes

Commit 549002c906795f978eebf81c706995116a04a8ff attempted to resolve a
few type-punning-related warnings, but did so using unions. Unions are
not guaranteed to work correctly with type-punning on non-gcc, so
partially revert and reimplement.

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

14 years agoafsmonitor: add fs callback xstats collection
Michael Meffie [Thu, 8 Apr 2010 17:27:36 +0000]
afsmonitor: add fs callback xstats collection

Adds the capability to afsmonitor to display and process
thresholds for fileserver callback xstats collections. The
callback counters are placed to the right of the full perf
data.  When afsmonitor is started without a configuration
file, the callback xstats data is retrieved and displayed,
since by default afsmonitor will show every field.  When a
configuration file is given, poll the fileserver only for the
collections needed to display information requested by the
'show fs' commands.

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

14 years agoafsmonitor: avoid showing full perf stats garbage
Michael Meffie [Fri, 9 Apr 2010 15:46:10 +0000]
afsmonitor: avoid showing full perf stats garbage

Unfortunately, the full perf stats contain timeval structures which
do not have the same size everywhere. Avoid displaying gargbage,
but at least try to show the overall stats.

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

14 years agoukernel osi prototypes header
Derrick Brashear [Fri, 9 Apr 2010 19:21:08 +0000]
ukernel osi prototypes header

and add statvfs to it so we stop getting a warning

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

14 years agoUKERNEL: allow creation of non-detached threads
Andrew Deason [Thu, 8 Apr 2010 20:35:12 +0000]
UKERNEL: allow creation of non-detached threads

Make usr_thread_create create a non-detached thread by default, and
just have callers call usr_thread_detach if they want it detached. The
only current caller of usr_thread_create already calls
usr_thread_detach.

Also add usr_thread_join to make it possible to join a created thread.

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

14 years agoUse AFS_CACHE_VNODE_PATH for UKERNEL
Andrew Deason [Tue, 6 Apr 2010 21:57:27 +0000]
Use AFS_CACHE_VNODE_PATH for UKERNEL

Use the AFS_CACHE_VNODE_PATH cache mechanism for UKERNEL, to be
compatible with new kernel caching code, and simplify the cache code a
little bit.

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

14 years agoMake osi_GetTime work on 64-bit libuafs
Andrew Deason [Fri, 14 Aug 2009 21:17:11 +0000]
Make osi_GetTime work on 64-bit libuafs

libuafs was previously using an implementation of osi_GetTime (and
thus clock_GetTime) that required 32-bit time_t's to work properly.
Instead, just use the non-kernel osi_GetTime for UKERNEL, since we're
just in userspace either way.

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

14 years agoafsd: squash inode format warning
Andrew Deason [Thu, 8 Apr 2010 22:22:35 +0000]
afsd: squash inode format warning

Coerce the inode into an int, so we can predictably print it when we
print debug info.

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

14 years agoUKERNEL: prototype uafs_Shutdown
Andrew Deason [Thu, 8 Apr 2010 22:26:09 +0000]
UKERNEL: prototype uafs_Shutdown

Prototype uafs_Shutdown in afs_usrops.h, so users of libuafs can stop
the CM.

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

14 years agoUKERNEL: Use real vnode type constants
Andrew Deason [Thu, 8 Apr 2010 17:15:34 +0000]
UKERNEL: Use real vnode type constants

In UKERNEL, make VDIR be S_IFDIR, VREG be S_IFREG, etc. This makes
fakestat work correctly, since the va_mode of faked mountpoints are
OR'd with VDIR.

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

14 years agoUKERNEL: check for null afs_CurrentDir on shutdown
Andrew Deason [Tue, 6 Apr 2010 22:00:58 +0000]
UKERNEL: check for null afs_CurrentDir on shutdown

During shutdown, do not release afs_CurrentDir if we don't have one.

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

14 years agoUKERNEL: add uafs_statvfs
Andrew Deason [Thu, 8 Apr 2010 19:49:53 +0000]
UKERNEL: add uafs_statvfs

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

14 years agoPrevent uafs_readdir/closedir segfault
Andrew Deason [Fri, 14 Aug 2009 21:26:16 +0000]
Prevent uafs_readdir/closedir segfault

Check for the NULL case in uafs_readdir/closedir, so we don't blindly
dereference the given pointer.

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

14 years agoUpdate Debian packaging files
Russ Allbery [Thu, 8 Apr 2010 21:54:23 +0000]
Update Debian packaging files

The Debian packaging files in the tree were ancient.  Update to the
packaging files from the just-uploaded 1.5.73.3-1 version, which should
build and correctly install the current development source.

The current packaging files no longer use a hard-coded version in
debian/rules, so remove the configure machinery for creating it.  The
correct way of handling the version number is to generate a new
changelog entry.  That work will come in a subsequent patch.

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

14 years agoAdd OpenAFS-debug.*.plist to .gitignore
Russ Allbery [Thu, 8 Apr 2010 20:23:11 +0000]
Add OpenAFS-debug.*.plist to .gitignore

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

14 years agopts mem -expandgroups option
Michael Meffie [Wed, 10 Mar 2010 14:48:38 +0000]
pts mem -expandgroups option

Improve support for supergroups in the pts membership command
with a new option called -expandgroups. This option will
recursively show the complete membership of users and groups.
The expanded members of a group are all the users which are
members of all of the group's sub-groups.  The expanded groups
of a user are all the groups which are supergroups of the
users's groups.

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

14 years agopts mem -supergroup option
Michael Meffie [Wed, 17 Mar 2010 23:16:50 +0000]
pts mem -supergroup option

Improve pts support for supergroups with an option to list the
supergroups of a group.

Change-Id: I4fe1cd131cd334386bc16ce733e01e29e0511d4f
Reviewed-on: http://gerrit.openafs.org/1600
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
Tested-by: Andrew Deason <adeason@sinenomine.net>
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: kmap() not page_address()
Simon Wilkinson [Tue, 6 Apr 2010 23:29:44 +0000]
Linux: kmap() not page_address()

Using page_address() will return NULL if the page is in highmem. To
avoid this, we must kmap() the page we're getting the address of,
and kunmap() when we are done. If the page isn't in high memory, then
kmap() is equivalent to page_address().

Change-Id: I42abfadaf3101bf5ad41bd7e5f720ba2583c4ee5
Reviewed-on: http://gerrit.openafs.org/1705
Reviewed-by: Russ Allbery <rra@stanford.edu>
Tested-by: Russ Allbery <rra@stanford.edu>
Reviewed-by: Marc Dionne <marc.c.dionne@gmail.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>

14 years agoExplain in CellServDB man page that server lines can be omitted
Russ Allbery [Wed, 7 Apr 2010 18:53:23 +0000]
Explain in CellServDB man page that server lines can be omitted

It's possible to use AFSDB records only to locate the VLDB servers but
still list the cell in the client CellServDB so that the client is
aware of it and populates it into dynroot.  Describe doing this in the
man page.

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

14 years agoFix typo in bos_create manpage
Andrew Deason [Wed, 7 Apr 2010 15:35:53 +0000]
Fix typo in bos_create manpage

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

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>