]> git.michaelhowe.org Git - packages/o/openafs.git/log
packages/o/openafs.git
14 years agovolser: log host address of caller in extra logging
Michael Meffie [Fri, 12 Aug 2011 12:25:30 +0000 (08:25 -0400)]
volser: log host address of caller in extra logging

When the volserver is running with extra logging (-log),
log the address of the host running vos in addition
to the user name.

Change-Id: I040be71a84dede255e43c30dd7d8ae56f767f721
Reviewed-on: http://gerrit.openafs.org/5234
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
14 years agomacos: axe static vfs_fsentry
Derrick Brashear [Thu, 11 Aug 2011 14:43:16 +0000 (10:43 -0400)]
macos: axe static vfs_fsentry

for whatever reason, lion 32 bit doesn't like it when this is static.
fine, so it's not static now.

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

Change-Id: I3949fcb69e14c00e0ade2826345be489426d7a04
Reviewed-on: http://gerrit.openafs.org/5220
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
14 years agoviced: avoid aborting on host table exhaustion
Derrick Brashear [Thu, 11 Aug 2011 15:11:01 +0000 (11:11 -0400)]
viced: avoid aborting on host table exhaustion

if we exhaust the host table, instead of aborting, return VBUSY at
the client, to defer until hopefully hosts are freed.

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

Change-Id: Ic761e487ef0cfe402103bf06bd051958b07641b9
Reviewed-on: http://gerrit.openafs.org/5219
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
14 years agoviced: avoid aborting on host table exhaustion
Derrick Brashear [Thu, 11 Aug 2011 15:11:01 +0000 (11:11 -0400)]
viced: avoid aborting on host table exhaustion

if we exhaust the host table, instead of aborting, return VBUSY at
the client, to defer until hopefully hosts are freed.

Change-Id: Ie8b026992bdde1b46117e6f592f9cf0ea4c85a7e
Reviewed-on: http://gerrit.openafs.org/5181
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
14 years agorx: make queue macros easier to follow
Garrett Wollman [Thu, 11 Aug 2011 03:20:57 +0000 (23:20 -0400)]
rx: make queue macros easier to follow

Nothing depends on the queue-manipulation macros having the expression
nature, so make them proper statements and unpack the comma-expressions
to make it easier to read and understand how they work.  This should
not change the object code.

Change-Id: Icf14537f902768429aa27f67f8acfe39ac996214
Reviewed-on: http://gerrit.openafs.org/5200
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
Reviewed-by: Simon Wilkinson <sxw@inf.ed.ac.uk>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
14 years agomacos: axe static vfs_fsentry
Derrick Brashear [Thu, 11 Aug 2011 14:43:16 +0000 (10:43 -0400)]
macos: axe static vfs_fsentry

for whatever reason, lion 32 bit doesn't like it when this is static.
fine, so it's not static now.

Change-Id: Ia9fe6d96615c7fa816f4a88b794faa6ee7e1d010
Reviewed-on: http://gerrit.openafs.org/5206
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: BuildBot <buildbot@rampaginggeek.com>
14 years agorpm: Set executable bits on installed libraries
Jonathan Billings [Thu, 11 Aug 2011 12:48:48 +0000 (13:48 +0100)]
rpm: Set executable bits on installed libraries

Set the executable bits on the libraries installed in libdir.  This
change is important because it causes 'rpmbuild' to generate Provide
tag metadata for the libraries in the package, which is necessary now
that some binaries in other packages have generated Requires tags for
libraries packaged in the base package.  'rpmbuild' will not generate
the Provides tag if the libraries lack executable permission.

This change is part of 3f7d8ec219e1aa04b6c0417ecf5e730d40b4f149
on master (the rest of that change isn't applicable to the 1.6 branch)

Change-Id: Ie95d0d5e16745cfbf0d2a733a9421f94a89216ff
Reviewed-on: http://gerrit.openafs.org/5204
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: BuildBot <buildbot@rampaginggeek.com>
14 years agorpm: remove postinstall message from openafs-client
Andy Cobaugh [Fri, 15 Jul 2011 16:06:12 +0000 (12:06 -0400)]
rpm: remove postinstall message from openafs-client

Printing out information on how to configure cacheinfo and ThisCell
is a bit noisy, and pam_afs.so is probably not what most people
want to use nowadays.

Reviewed-on: http://gerrit.openafs.org/5026
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Reviewed-by: Simon Wilkinson <sxw@inf.ed.ac.uk>
Tested-by: BuildBot <buildbot@rampaginggeek.com>
(cherry picked from commit 30cd8dafa73d90a943f00af05e4841699bc18534)

Change-Id: Ib6b7448b5e123a593d595b73f8102d82d1ae2535
Reviewed-on: http://gerrit.openafs.org/5203
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: BuildBot <buildbot@rampaginggeek.com>
14 years agorpms: Fix handling of x86 architectures
Simon Wilkinson [Tue, 12 Jul 2011 00:45:10 +0000 (01:45 +0100)]
rpms: Fix handling of x86 architectures

Once upon a time, our specfile would assume that if you were
building for i386 you were building userspace, and that i586 or i686
implied doing a kernel only build. This is no longer the case, and
now everything on modern Fedora is built for i686, so we should adapt
the spec file for this.

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

Change-Id: I16c2a4a6586e63be967b5fb019ede10a24c6cde4
Reviewed-on: http://gerrit.openafs.org/5202
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: BuildBot <buildbot@rampaginggeek.com>
14 years agorpms: Fix our %version handling
Simon Wilkinson [Mon, 11 Jul 2011 19:21:17 +0000 (20:21 +0100)]
rpms: Fix our %version handling

When we're doing version requirements in -devel package Requires:
lines, we should be using %{version}-%{release}, not just %{version}

FIXES 130137

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

Change-Id: I047f535b023a01468a3ad169d1742002abb59123
Reviewed-on: http://gerrit.openafs.org/5201
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: BuildBot <buildbot@rampaginggeek.com>
14 years agoWindows: Interlocked operations for cm_buf
Jeffrey Altman [Wed, 10 Aug 2011 20:40:35 +0000 (16:40 -0400)]
Windows: Interlocked operations for cm_buf

cm_buf flags and qFlags

Separate flags and qFlags in the cm_buf structure to improve
performance.

Change-Id: I3d9504827cb74f8770e344cea1c06a6e786785b3
Reviewed-on: http://gerrit.openafs.org/5197
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
14 years agoWindows: Interlocked for cm_buf cmFlags
Jeffrey Altman [Wed, 10 Aug 2011 15:42:59 +0000 (11:42 -0400)]
Windows: Interlocked for cm_buf cmFlags

Change-Id: I7ed2847afdcbc94c9023c6686d3c81f7863d7f61
Reviewed-on: http://gerrit.openafs.org/5196
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
14 years agoWindows: fix tptserver director creation
Jeffrey Altman [Wed, 10 Aug 2011 16:02:20 +0000 (12:02 -0400)]
Windows: fix tptserver director creation

Change-Id: Ifc2433068e1811633f4ac80d3b4a2a9d16226f16
Reviewed-on: http://gerrit.openafs.org/5195
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
14 years agoWindows: Interlocked ops for cm_volume
Jeffrey Altman [Wed, 10 Aug 2011 15:41:21 +0000 (11:41 -0400)]
Windows: Interlocked ops for cm_volume

Use Interlocked operations for protection of cm_volume flags and
qFlags as well as cm_vol_state flags.

Change-Id: I1a062a5c49d793162b83b9f4f3c32185ae596369
Reviewed-on: http://gerrit.openafs.org/5194
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
14 years agoWindows: Interlocked ops for cm_scache
Jeffrey Altman [Wed, 10 Aug 2011 15:40:35 +0000 (11:40 -0400)]
Windows: Interlocked ops for cm_scache

Use Interlocked operations for cm_scache flags and mask field
changes.

Change-Id: Ice87dc5de395b54e7e30e362d2e72caa9062120e
Reviewed-on: http://gerrit.openafs.org/5193
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
14 years agoWindows: Interlocked ops for cm_cell
Jeffrey Altman [Wed, 10 Aug 2011 15:37:51 +0000 (11:37 -0400)]
Windows: Interlocked ops for cm_cell

Use Interlocked operations for cm_cell flag updates.

Change-Id: I45c0a39ea935db2c231a30ecb02963f35b6d734c
Reviewed-on: http://gerrit.openafs.org/5192
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
14 years agoWindows: implement InterlockedAnd/Or for X86 Debug
Jeffrey Altman [Tue, 9 Aug 2011 21:25:50 +0000 (17:25 -0400)]
Windows: implement InterlockedAnd/Or for X86 Debug

Change-Id: I56b3f9534daf0cd152eeea293b1a357d062b9166
Reviewed-on: http://gerrit.openafs.org/5191
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
14 years agoWindows: correct prototype for ChangeList fs_acl.h
Jeffrey Altman [Tue, 9 Aug 2011 21:25:22 +0000 (17:25 -0400)]
Windows: correct prototype for ChangeList fs_acl.h

Change-Id: I63e3b37bd4348da0789dfa78599e513753f34a62
Reviewed-on: http://gerrit.openafs.org/5190
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
14 years agoWindows: make osi_Log macro safe for if..else
Jeffrey Altman [Sun, 7 Aug 2011 18:11:17 +0000 (14:11 -0400)]
Windows: make osi_Log macro safe for if..else

wrap the osi_Log macro's internal if statement with
a do {...} while(0) block in order to ensure that
it is safe for use in if..else controls without bracing.

Change-Id: Ica7bb95dfb1c0285a925771a9b659f85ec0e075f
Reviewed-on: http://gerrit.openafs.org/5189
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
14 years agostds.h: __nonnull__ has four underscores
Garrett Wollman [Thu, 11 Aug 2011 01:21:40 +0000 (21:21 -0400)]
stds.h: __nonnull__ has four underscores

Compile-testing AFS_NONNULL doesn't prove anything until something
actually uses it.  Fix 342be3535499c5ecd7d34b4edd43a4655559cb28
to use the spelling that the compilers actually support.

Change-Id: I4a6b965d459a90a1832f2e813e886c15d3477962
Reviewed-on: http://gerrit.openafs.org/5198
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
14 years agokdb: don't dereference a null pointer on corrupt database
Garrett Wollman [Tue, 9 Aug 2011 01:18:15 +0000 (21:18 -0400)]
kdb: don't dereference a null pointer on corrupt database

When iterating through the database, kdb would dereference a
null pointer if it encountered an error retrieving the value
or if the value was not the right length, in code that was clearly
cut-and-pasted from the other branch of an "if" statement where a
specific entry was requested on the command line.  Print the name
of the entry with the problem as was apparently intended.

Found-by: clang static analyzer
Reviewed-on: http://gerrit.openafs.org/5174
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Simon Wilkinson <sxw@inf.ed.ac.uk>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
(cherry picked from commit ae6a3929489035ddcd17785abab8900cebd22eb3)

Change-Id: I5c79189f82a636b923c074d3c69cb3b6fef732aa
Reviewed-on: http://gerrit.openafs.org/5188
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
14 years agoFBSD: catch up with the disappearance of VOP_GETVOBJECT
Garrett Wollman [Wed, 10 Aug 2011 04:18:28 +0000 (00:18 -0400)]
FBSD: catch up with the disappearance of VOP_GETVOBJECT

The vnode operation VOP_GETVOBJECT disappeared in FreeBSD 6.0, an
embarrassingly long time ago.  Six years ago, a kluge was added
to emulate its behavior, but it did not correctly emulate the
return value of the old VOP implementation.  As a result,
osi_VM_StoreAllSegments() could never actually do anything.  Since we
don't support FreeBSD before 8.0, remove all references to VOP_GETVOBJECT
and examine vp->v_object directly instead.

This has the result that osi_VM_StoreAllSegments() will actually do
something now, which may not be desirable.  (Previously, if somehow
the vnode had no associated VM object, it would crash, and otherwise
it would do nothing at all.)

Found-by: clang static analyzer
Reviewed-on: http://gerrit.openafs.org/5183
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
(cherry picked from commit 7d0cd1393ff5c69cba2f14fc76aa8f7ca588ccc3)

Change-Id: I57198967ad022f50af073ac43643f3a55b0801ef
Reviewed-on: http://gerrit.openafs.org/5187
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
14 years agomacos: reset next vcache pointer after reacquiring xvcache
Derrick Brashear [Wed, 10 Aug 2011 13:39:23 +0000 (09:39 -0400)]
macos: reset next vcache pointer after reacquiring xvcache

dropping the xvcache lock means that things can change out from under
us. in case they do, reset the next vcache pointer before looping

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

Change-Id: I2ad487e348f84cd7ced884c920230e3371fce902
Reviewed-on: http://gerrit.openafs.org/5186
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
14 years agomacos: reset next vcache pointer after reacquiring xvcache
Derrick Brashear [Wed, 10 Aug 2011 13:39:23 +0000 (09:39 -0400)]
macos: reset next vcache pointer after reacquiring xvcache

dropping the xvcache lock means that things can change out from under
us. in case they do, reset the next vcache pointer before looping

Change-Id: I71be39a2f2986804257c50b1d5b7d557b58a3573
Reviewed-on: http://gerrit.openafs.org/5184
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
14 years agoFBSD: catch up with the disappearance of VOP_GETVOBJECT
Garrett Wollman [Wed, 10 Aug 2011 04:18:28 +0000 (00:18 -0400)]
FBSD: catch up with the disappearance of VOP_GETVOBJECT

The vnode operation VOP_GETVOBJECT disappeared in FreeBSD 6.0, an
embarrassingly long time ago.  Six years ago, a kluge was added
to emulate its behavior, but it did not correctly emulate the
return value of the old VOP implementation.  As a result,
osi_VM_StoreAllSegments() could never actually do anything.  Since we
don't support FreeBSD before 8.0, remove all references to VOP_GETVOBJECT
and examine vp->v_object directly instead.

This has the result that osi_VM_StoreAllSegments() will actually do
something now, which may not be desirable.  (Previously, if somehow
the vnode had no associated VM object, it would crash, and otherwise
it would do nothing at all.)

Change-Id: Ifdad92ae8e393e85c3f97907af7119ce342b25dd
Found-by: clang static analyzer
Reviewed-on: http://gerrit.openafs.org/5183
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
14 years agostds.h: introduce AFS_NONNULL
Garrett Wollman [Wed, 10 Aug 2011 03:50:09 +0000 (23:50 -0400)]
stds.h: introduce AFS_NONNULL

AFS_NONNULL wraps the GCC/Clang function attribute __nonnull__, which
tells the compiler and the static analyzer that the pointer arguments
to a function (or specific ones, if provided) cannot be null.  Note
that GCC has only limited support for warning about violations of these
constraints.

Usage examples:
int myfunc(struct foo *a, bar_t, struct baz *c) AFS_NONNULL((1));

tells the compiler that the first argument cannot be null (but the
third one can).

int myfunc2(struct foo *a, bar_t, struct baz *c) AFS_NONNULL();

tells the compiler that both pointer arguments cannot be null.

Change-Id: Id81f0c382a6a3bdd9bf9c716eb4091b433129d69
Suggested-by: Simon Wilkinson, comment on change Ic8751737 (#5180)
Reviewed-on: http://gerrit.openafs.org/5182
Reviewed-by: Simon Wilkinson <sxw@inf.ed.ac.uk>
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
14 years agovolinfo: Include nfs.h
Andrew Deason [Wed, 10 Aug 2011 15:23:40 +0000 (10:23 -0500)]
volinfo: Include nfs.h

nfs.h is required for various types used in vol-info.c. Include it. On
namei this header gets pulled in indirectly via other means, but on
inode it does not (and we shouldn't be relying on such anyway).

Change-Id: If917f8c3b0382572d2146450116399498257ffc7
Reviewed-on: http://gerrit.openafs.org/5185
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Tested-by: Andrew Deason <adeason@sinenomine.net>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
14 years agoaklog: Add -config option
Simon Wilkinson [Sun, 31 Jul 2011 14:14:00 +0000 (15:14 +0100)]
aklog: Add -config option

Add the -config option to aklog so that a different configuration
directory location can be specified on the command line for testing
purposes.

Change-Id: Ic5f8d778304a43c823e53bf1855a3e6bf426f80c
Reviewed-on: http://gerrit.openafs.org/5170
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
14 years agopts: Add the -config option
Simon Wilkinson [Wed, 27 Jul 2011 10:30:51 +0000 (11:30 +0100)]
pts: Add the -config option

Add the -config option to all pts commands, so that the user can set
the location of the configuration directory to use. This is primarily
provided for testing purposes, to make it simpler to build fake AFS
cells with configuration in non-standard locations.

Change-Id: I90c9c95cbf99b3853bfbe93dab1ab71c3ae7e228
Reviewed-on: http://gerrit.openafs.org/5103
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
14 years agovenus depends on libafsauthent
Marc Dionne [Mon, 8 Aug 2011 20:08:25 +0000 (16:08 -0400)]
venus depends on libafsauthent

Add an explicit dependency on libafsauthent for src/venus, since it
is needed to build afsio.  This can cause parallel builds to fail.

Change-Id: Ifda59983cda0711e9e1568d5a6be25e6ea934eee
Reviewed-on: http://gerrit.openafs.org/5171
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: BuildBot <buildbot@rampaginggeek.com>
14 years agopam: fix unused but set warnings
Marc Dionne [Mon, 8 Aug 2011 21:08:34 +0000 (17:08 -0400)]
pam: fix unused but set warnings

Fix a few cases of set but unused variables.

Change-Id: I0a3e0906dbc708e2449121f3de1726d7055efc27
Reviewed-on: http://gerrit.openafs.org/5173
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: BuildBot <buildbot@rampaginggeek.com>
14 years agovolser: flag unused variable
Marc Dionne [Mon, 8 Aug 2011 20:51:53 +0000 (16:51 -0400)]
volser: flag unused variable

nearInode can be unused, flag it as such to prevent warnings and
keep enable_checking happy.

Change-Id: Ic79d101380b79c3c3d90c4c4f949abe7c3f476ff
Reviewed-on: http://gerrit.openafs.org/5172
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: BuildBot <buildbot@rampaginggeek.com>
14 years agobos: don't dereference a null pointer when printing an error message
Garrett Wollman [Tue, 9 Aug 2011 03:26:38 +0000 (23:26 -0400)]
bos: don't dereference a null pointer when printing an error message

The parameter we are interested in is at MRAFS_OFFSET + 17, not
MRAFS_OFFSET + 13.

Change-Id: Ib856ff40c5949cde95a2b277cd44253b87c3c2a4
Found-by: clang static analyzer
Reviewed-on: http://gerrit.openafs.org/5178
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Simon Wilkinson <sxw@inf.ed.ac.uk>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
14 years agodir/vol: Die() really does
Garrett Wollman [Tue, 9 Aug 2011 03:19:22 +0000 (23:19 -0400)]
dir/vol: Die() really does

Die() is an abort routine shared by the dir and vol modules.  Move its
prototype into dir.h to ensure that its declaration matches its three
different definitions, and add an AFS_NORETURN annotation so that the
static analyzer knows that it aborts.

Change-Id: If01f35fe796708f6187b9767497a32458888ec1c
Reviewed-on: http://gerrit.openafs.org/5177
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Simon Wilkinson <sxw@inf.ed.ac.uk>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
14 years agovos: eliminate unnecessary global variables
Garrett Wollman [Tue, 9 Aug 2011 02:49:24 +0000 (22:49 -0400)]
vos: eliminate unnecessary global variables

tserver is used by three different functions but not shared by them;
make it private to each one to improve static analysis.  tconn is
not used by anything, so just delete it.

Change-Id: Ic9fc4add66dbbb02170846154e44d261dcc6b061
Reviewed-on: http://gerrit.openafs.org/5176
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Simon Wilkinson <sxw@inf.ed.ac.uk>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
14 years agovolser: let it be known that Abort() really aborts
Garrett Wollman [Tue, 9 Aug 2011 01:41:57 +0000 (21:41 -0400)]
volser: let it be known that Abort() really aborts

The compiler and static checkers can do a better job if they know that
certain functions never return.  Tell it that common.c:Abort() is such
a function.  While we're at it, let volser_internal.h provide the
declarations for this function (Log() was already there).  This makes
volser parallel to the way the same functions are declared in vol.

Change-Id: I8b684bf96866edfc9edaae126d789d245a8d2356
Reviewed-on: http://gerrit.openafs.org/5175
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Simon Wilkinson <sxw@inf.ed.ac.uk>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
14 years agokdb: don't dereference a null pointer on corrupt database
Garrett Wollman [Tue, 9 Aug 2011 01:18:15 +0000 (21:18 -0400)]
kdb: don't dereference a null pointer on corrupt database

When iterating through the database, kdb would dereference a
null pointer if it encountered an error retrieving the value
or if the value was not the right length, in code that was clearly
cut-and-pasted from the other branch of an "if" statement where a
specific entry was requested on the command line.  Print the name
of the entry with the problem as was apparently intended.

Change-Id: Idc2d3c9b6049e5d3b0eb302353a68bcfdad6a90d
Found-by: clang static analyzer
Reviewed-on: http://gerrit.openafs.org/5174
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Simon Wilkinson <sxw@inf.ed.ac.uk>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
14 years agoafsd: look in the right place for -splitcache argument
Garrett Wollman [Sun, 7 Aug 2011 04:35:36 +0000 (00:35 -0400)]
afsd: look in the right place for -splitcache argument

The argument to -splitcache is in as->parms[34], not [30].

Change-Id: I4d7be16a1ad99a03025c80f9782c4f678da868ae
Found-by: clang static analyzer
Reviewed-on: http://gerrit.openafs.org/5169
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Simon Wilkinson <sxw@inf.ed.ac.uk>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
14 years agoafs_pioctl: don't use cell uninitialized in PGetTokens2
Garrett Wollman [Sun, 7 Aug 2011 04:09:33 +0000 (00:09 -0400)]
afs_pioctl: don't use cell uninitialized in PGetTokens2

An unlikely error condition could lead to the variable cell in
PGetTokens2 being passed uninitialized to afs_PutCell.  Initialize
it to NULL beforehand to avoid this.

Change-Id: Ia8ded86df9d8af2f08c02d39749252d98a6c9ffe
Found-by: clang static analyzer
Reviewed-on: http://gerrit.openafs.org/5168
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Simon Wilkinson <sxw@inf.ed.ac.uk>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
14 years agobutc: avoid freeing uninitialized pointer in writeDbDump()
Garrett Wollman [Sun, 7 Aug 2011 03:55:50 +0000 (23:55 -0400)]
butc: avoid freeing uninitialized pointer in writeDbDump()

In error conditions, charList could be freed before it is initialized.
Move the initialization up to before the error checks.

Change-Id: I678f40552590e238f494507f7410233cdbb949ac
Found-by: clang static analyzer
Reviewed-on: http://gerrit.openafs.org/5167
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Simon Wilkinson <sxw@inf.ed.ac.uk>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
14 years agopam: stop building it wrong
Derrick Brashear [Wed, 3 Aug 2011 17:05:27 +0000 (13:05 -0400)]
pam: stop building it wrong

in the new lwp/pthread/shared universe, well, we have the
opportunity to be correct. and we chose to do it entirely wrong.
we're building a shared object. use the right rules. we need
to add some CFLAGS for PAM. do that using MODULE_CFLAGS instead
of just building a whole new CCRULE

Change-Id: Ie3e3c5ba902e5364cfa99d4dbd1b5b7fd4451127
Reviewed-on: http://gerrit.openafs.org/5153
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 agopam: clean up unused variables and prototyping
Derrick Brashear [Wed, 3 Aug 2011 17:56:08 +0000 (13:56 -0400)]
pam: clean up unused variables and prototyping

don't define variables on platforms we won't use them on
do prototype functions we call. basically, we compile with warnings
enabled now, so, fix everything so we *can*.

Change-Id: I749f27c227ac70c58ccc68f1548f8274f10e3587
Reviewed-on: http://gerrit.openafs.org/5154
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
14 years agorx: avoid nat ping until connection is attached
Derrick Brashear [Mon, 1 Aug 2011 20:38:46 +0000 (16:38 -0400)]
rx: avoid nat ping until connection is attached

drop nat pings on connections we haven't talked on yet

Change-Id: Ie333d50a090f1f086c958440cc37849413442dea
Reviewed-on: http://gerrit.openafs.org/5130
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
14 years agobutc: avoid testing stack garbage; remove dead initializer
Garrett Wollman [Sun, 7 Aug 2011 03:49:10 +0000 (23:49 -0400)]
butc: avoid testing stack garbage; remove dead initializer

"code" is unconditionally set early in saveDbToTape() so there's
no need to initialize it.  On the other hand, dumpEntry.id is used
before dumpEntry is initialized, so set it to what appears to be
the expected value before any non-local exits could cause it to be
inspected.

Change-Id: I133f8e84e46d0faedf3c9683330d92158bcd8935
Found-by: clang static analyzer
Reviewed-on: http://gerrit.openafs.org/5166
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
14 years agobutc: initialize startTime before it is used
Garrett Wollman [Sun, 7 Aug 2011 03:36:14 +0000 (23:36 -0400)]
butc: initialize startTime before it is used

In some unusual error situations, startTime may be used uninitialized.
Move the initialization up above the first such error condition.
(None of the intervening code can take measurably long to execute
so this should not make any difference in the non-error case.)

Change-Id: I25bf7a5e149540593febec79f9f5111434807514
Found-by: clang static analyzer
Reviewed-on: http://gerrit.openafs.org/5165
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Simon Wilkinson <sxw@inf.ed.ac.uk>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
14 years agovos: don't free stack garbage on error
Garrett Wollman [Sun, 7 Aug 2011 03:15:14 +0000 (23:15 -0400)]
vos: don't free stack garbage on error

If wantExtendedInfo is true, then pntr is used uninitialized.
In the other case, UV_ListVolumes will have set it to NULL
before doing anything (even if it returns an error), so this
free() is dead anyway.

Change-Id: I6979a69d33ecbbdb906eb9a075bbf13180e36646
Found-by: clang static analyzer
Reviewed-on: http://gerrit.openafs.org/5164
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Simon Wilkinson <sxw@inf.ed.ac.uk>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
14 years agolibafsauthent: Add volser and vldb
Simon Wilkinson [Wed, 3 Aug 2011 18:08:20 +0000 (19:08 +0100)]
libafsauthent: Add volser and vldb

Add the volser and vldb families of functions to libafsauthent. This
allows applications such as per-AFS which are building pthreaded clients
to use a single library, rather than trying to mix LWP and pthreaded
code within the same process.

Change-Id: I3682876e91ca03311a798ac71e3a7a28f3205d42
Reviewed-on: http://gerrit.openafs.org/5157
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
14 years agovolser doesn't depend on tviced, but on vlserver
Simon Wilkinson [Wed, 3 Aug 2011 17:45:01 +0000 (18:45 +0100)]
volser doesn't depend on tviced, but on vlserver

Nothing within the volser/ directory depends on tviced, so remove the
unecessary dependency. Add an explicit dependency on vlserver, so that
libvldb is available to us.

This is required to get rid of some potential circular loops when we
start including volser objects in libafsauthent

Change-Id: Ibb6b8fb87dfe6e9eb4fa6d1dde195fd5261a8959
Reviewed-on: http://gerrit.openafs.org/5156
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
14 years agoWindows: symlink make should translate \\afs target
Jeffrey Altman [Fri, 5 Aug 2011 02:50:03 +0000 (22:50 -0400)]
Windows: symlink make should translate \\afs target

If the target is a UNC path beginning with the AFS netbios name,
convert the path to use Unix /afs mountpoint notation.

Change-Id: I01e01b70938f8eb383fd3e7458a140d9e89dd237
Reviewed-on: http://gerrit.openafs.org/5162
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
14 years agoWindows: adjust scache LRU postion upon deletion
Jeffrey Altman [Thu, 4 Aug 2011 21:25:01 +0000 (17:25 -0400)]
Windows: adjust scache LRU postion upon deletion

If the object represented by a scache object is deleted,
update the LRU position of the scache object to make it
the first object in the LRU queue to be recycled.  This
preserves the cached objects for those that might prove
useful in the future.

Change-Id: I0e862b1270e10c31f20ecde06d208f4b8c405c3a
Reviewed-on: http://gerrit.openafs.org/5161
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
14 years agoWindows: fix condition calls to osi_Log
Jeffrey Altman [Thu, 4 Aug 2011 21:21:59 +0000 (17:21 -0400)]
Windows: fix condition calls to osi_Log

The osi_Log macro is if(foo) osi_AddLog()

If osi_Log macros will be conditionally called, the conditonal
needs to have bracing.

Change-Id: I59de78a5b7b35cc822a648a51cd63a14037c1ca5
Reviewed-on: http://gerrit.openafs.org/5160
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
14 years agoWindows: LockOrderValidation memory usage optimization
Jeffrey Altman [Thu, 4 Aug 2011 21:15:16 +0000 (17:15 -0400)]
Windows: LockOrderValidation memory usage optimization

Instead of using malloc() and free() to allocation lock reference
structures, cache allocated objects in a free list.  This reduces
memory fragmentation.

Change-Id: Idffe82282c77202d0fc3a9be9123c3b7384ecd63
Reviewed-on: http://gerrit.openafs.org/5159
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
14 years agoWindows: after dir enum adjust dir scache LRU
Jeffrey Altman [Thu, 4 Aug 2011 21:08:45 +0000 (17:08 -0400)]
Windows: after dir enum adjust dir scache LRU

During a directory enumeration the directory scache object
is reference counted so it can't be recycled.  However, if
there are more directory entries than the maximum number
of cached scache objects the directory scache object will
end up being the next object to be recycled after the refcount
is dropped.  Since the directory is clearly a hot object, before
dropping the reference, adjust the scache LRU position so that
it is the last object to be recycled.

Fix the variable name for the directory scache to be 'dscp'
for consistency.

Change-Id: Ia2089fb9b47dab77abc0911ab009e5aed75ed848
Reviewed-on: http://gerrit.openafs.org/5158
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
14 years agoWindows: use %p to print cm_scache_t pointers
Jeffrey Altman [Tue, 2 Aug 2011 22:24:56 +0000 (18:24 -0400)]
Windows: use %p to print cm_scache_t pointers

Change-Id: Iee13204820b3adc4359e42d46d9f9050ab07bcb2
Reviewed-on: http://gerrit.openafs.org/5152
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
14 years agoWindows: add missing dafs man pages to wix installer
Jeffrey Altman [Tue, 2 Aug 2011 01:40:25 +0000 (21:40 -0400)]
Windows: add missing dafs man pages to wix installer

dafileserver.html
dasalvager.html
davolserver.html

Reviewed-on: http://gerrit.openafs.org/5149
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
(cherry picked from fec4e6bc595014f34c38707c0015c1f76edd770e)

Change-Id: Ied99d695c59242903d39249c1d1bb25058d40a24
Reviewed-on: http://gerrit.openafs.org/5151
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
14 years agotbudb depends on tubik ...
Simon Wilkinson [Wed, 3 Aug 2011 18:07:14 +0000 (19:07 +0100)]
tbudb depends on tubik ...

... so say so in the Makefile

Change-Id: I84f0ac3c06953eff98e0194ad375c32b3656af58
Reviewed-on: http://gerrit.openafs.org/5155
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
14 years agoWindows: add missing dafs man pages to wix installer
Jeffrey Altman [Tue, 2 Aug 2011 01:40:25 +0000 (21:40 -0400)]
Windows: add missing dafs man pages to wix installer

dafileserver.html
dasalvager.html
davolserver.html

Change-Id: I87a70b2a30701f184f7a70fbcf6ee50a4bb1d973
Reviewed-on: http://gerrit.openafs.org/5149
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
14 years agoWindows: conditionalize mappings of error values
Jeffrey Altman [Mon, 1 Aug 2011 15:05:51 +0000 (11:05 -0400)]
Windows: conditionalize mappings of error values

Visual Studio 10 adds a large number of additional POSIX C99
error values to errno.h.  Wrap each mapping with #ifndef to ensure
that we do not redefine the C runtime errno.h definition.

Reviewed-on: http://gerrit.openafs.org/5129
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
(cherry picked from f631a11f5e9ab50e62b3aaebbff9ef200ac799fe)

Change-Id: I528547f95ebbe83390924844d21a9e850dc5967d
Reviewed-on: http://gerrit.openafs.org/5148
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
14 years agoWindows: unified afs errors must use nt mapping
Jeffrey Altman [Mon, 1 Aug 2011 15:00:55 +0000 (11:00 -0400)]
Windows: unified afs errors must use nt mapping

On Windows, error.h does not provide a complete list of POSIX
C99 error values.  OpenAFS fills in the gaps with a private
error mapping table afs/errmap_nt.h (src/util/errmap_nt.h).
If errmap_nt.h is not included prior to processing unified_afs.h,
values such as ELOOP will be mapped to EIO instead of the unique
value defined by errmap_nt.h.

Reviewed-on: http://gerrit.openafs.org/5128
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
(cherry picked from 71e64b6f21817872676e74a8c67c0f0bcfb23391)

Change-Id: If6582d7242418c15eb007471199a6dfcc6732e3b
Reviewed-on: http://gerrit.openafs.org/5147
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
14 years agoWindows: Do not execute tasks on deleted files
Jeffrey Altman [Fri, 29 Jul 2011 22:09:53 +0000 (18:09 -0400)]
Windows: Do not execute tasks on deleted files

If a cm_BkgDaemon thread finds a queued request whose cm_scache_t
has the CM_SCACHEFLAG_DELETED flag set, do not execute the request
and fail it immediately with CM_ERROR_BADFD.  Any attempt to execute
the request will fail with VNOVNODE from the file server.

Reviewed-on: http://gerrit.openafs.org/5120
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
(cherry picked from afc3ded56795d30e4e0f38d11f8302568943c49b)

Change-Id: I92610c215d7d44ceb1894bb3ab7784534a66e452
Reviewed-on: http://gerrit.openafs.org/5146
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
14 years agoWindows: cm_BkgDaemon should not do cm_SyncOp's job
Jeffrey Altman [Thu, 7 Jul 2011 21:51:58 +0000 (17:51 -0400)]
Windows: cm_BkgDaemon should not do cm_SyncOp's job

cm_SyncOp is designed to synchronize operations among multiple
threads.  The background daemon threads should not filter requests
based upon cm_SyncOp states.  Doing so is racy and does not produce
better performance.

Reviewed-on: http://gerrit.openafs.org/5119
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
(cherry picked from 7e3615208d9e1b03d8eba4fb802744b2b81f8868)

Change-Id: I2293643bf708c3e87093005d95c7d1203c6f680a
Reviewed-on: http://gerrit.openafs.org/5145
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
14 years agoWindows: Do not release locks on deleted files
Jeffrey Altman [Fri, 29 Jul 2011 22:07:42 +0000 (18:07 -0400)]
Windows: Do not release locks on deleted files

If the cm_scache_t flags include CM_SCACHEFLAG_DELETED, do not
bother releasing an outstanding file lock to the file server.
The lock went away when the file was deleted.  Any attempt to
release will fail with VNOVNODE which is translated locally into
CM_ERROR_BADFD.

If a RXAFS_ReleaseLock RPC fails with VNOVNODE, treat it as
success.

Reviewed-on: http://gerrit.openafs.org/5118
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
(cherry picked from fa11f71f040b2e6856047c53fdd902109e5c6e52)

Change-Id: I4b70abab200ea50b419e215f4b3f3b4d3d7ab484
Reviewed-on: http://gerrit.openafs.org/5144
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
14 years agoWindows: permit perl command to be explicitly set
Jeffrey Altman [Thu, 28 Jul 2011 19:05:28 +0000 (15:05 -0400)]
Windows: permit perl command to be explicitly set

Add PERL variable to the build system.  If not specified
externally the variable will be set to 'perl'.  However,
ActiveState Perl should be used and not Cygwin Perl.  The build
environment should indicate that by specifying a PERL setting.

SET PERL=c:\perl64\bin\perl.exe

or similar.

Reviewed-on: http://gerrit.openafs.org/5115
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
(cherry picked from 4138a778fe821493c726826ffc4715f5f46222d9)

Change-Id: Ifd5ba10176ba1a7d6fda7506a0a4c250ad1945f6
Reviewed-on: http://gerrit.openafs.org/5143
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
14 years agoman: add missing pod files to Windows makefile
Jeffrey Altman [Thu, 28 Jul 2011 19:02:14 +0000 (15:02 -0400)]
man: add missing pod files to Windows makefile

Several of the demand attach pod files were not being processed
on Windows.

Reviewed-on: http://gerrit.openafs.org/5114
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
(cherry picked from 4a24a59d52266fcbbf92041ce3a74a455e84a25c)

Change-Id: I84663e5313d1845761ba7fe7043448ba000c9ec5
Reviewed-on: http://gerrit.openafs.org/5142
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
14 years agomerge-pod changes for cygwin and MSWin32 perl
Jeffrey Altman [Thu, 28 Jul 2011 18:59:05 +0000 (14:59 -0400)]
merge-pod changes for cygwin and MSWin32 perl

On Windows, the git repository is checked out as CR-LF.
Tell perl to open the pod file with cr-lf as the end of line.

On Windows, the input file names are of the form podX\foo.pod.in.
Cygwin perl cannot parse the directory for the file name unless
the path separator is converted from \ to /.

Reviewed-on: http://gerrit.openafs.org/5113
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
(cherry picked from 0b6247c27fcc0b8a2f307ccc545eea777a07f999)

Change-Id: Ifc4a649ee2b59115632f8d27a00b2bdb794822d1
Reviewed-on: http://gerrit.openafs.org/5141
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
14 years agoWindows: add debugging to afskfw
Jeffrey Altman [Tue, 26 Jul 2011 21:37:37 +0000 (17:37 -0400)]
Windows: add debugging to afskfw

More debugging output added when a debugger is present.

Reviewed-on: http://gerrit.openafs.org/5112
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
(cherry picked from b61bd99bce68055dc0dd53b82d1d5318c25d9051)

Change-Id: If3aaa87f648f6fd1ae21d19d05522d48928dc4ff
Reviewed-on: http://gerrit.openafs.org/5140
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
14 years agoWindows: afskfw remove TRUE conditional
Jeffrey Altman [Tue, 26 Jul 2011 21:36:25 +0000 (17:36 -0400)]
Windows: afskfw remove TRUE conditional

Simply the code by removing an if(1) conditional.

Reviewed-on: http://gerrit.openafs.org/5111
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
(cherry picked from 7c59ec8f816120c738b1da83f7db9349d912f573)

Change-Id: I332b82b24c97810074e87521c8727b5827d7b54b
Reviewed-on: http://gerrit.openafs.org/5139
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
14 years agoWindows: KFW_AFS_get_cred userrealm
Jeffrey Altman [Tue, 26 Jul 2011 21:34:52 +0000 (17:34 -0400)]
Windows: KFW_AFS_get_cred userrealm

The userrealm string in KFW_AFS_get_cred() should not include
the '@' symbol from the user principal.  Including the '@' produces
an invalid realm name.

Reviewed-on: http://gerrit.openafs.org/5110
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
(cherry picked from 214e9a6052b1dab2a0c4383632640936c3e518c6)

Change-Id: I24007935b35ac2a603486fc40a79f94b9b90fa8e
Reviewed-on: http://gerrit.openafs.org/5138
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
14 years agoWindows: afslogon start service if not started
Jeffrey Altman [Tue, 26 Jul 2011 21:32:28 +0000 (17:32 -0400)]
Windows: afslogon start service if not started

If the service is configured for auto start but has yet
to start, kick it off just in case.

Reviewed-on: http://gerrit.openafs.org/5109
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
(cherry picked from a063ecdc78cf888df2459b32b0082d4767948563)

Change-Id: I8395230328385eb8d554cc85d2e659a3b7cacfb7
Reviewed-on: http://gerrit.openafs.org/5137
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
14 years agoWindows: improve afskfw error message output
Jeffrey Altman [Tue, 26 Jul 2011 21:03:56 +0000 (17:03 -0400)]
Windows: improve afskfw error message output

Add KTC and PT error messages to those that can be
translated within afskfw.lib.  This improves the error
logging for afslogon.dll, afscreds.exe, and afssrvadm.exe

Reviewed-on: http://gerrit.openafs.org/5108
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
(cherry picked from 549737f1e7d52256f053c86116b56c3211b084b6)

Change-Id: I4eb6f23e035b0774dffce8779d680b16ea607d2e
Reviewed-on: http://gerrit.openafs.org/5136
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
14 years agoWindows: do not leak space allocation
Jeffrey Altman [Wed, 20 Jul 2011 22:31:17 +0000 (18:31 -0400)]
Windows: do not leak space allocation

smb_ReceiveNTTranCreate leaks a cm_GetSpace allocation on
error.  Don't do that.

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

Change-Id: Id706189bd0aafb0b55c58f28fff80ba841a8ef48
Reviewed-on: http://gerrit.openafs.org/5135
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
14 years agoWindows: smb_ReceiveNTTranCreate path not found
Jeffrey Altman [Wed, 20 Jul 2011 22:32:35 +0000 (18:32 -0400)]
Windows: smb_ReceiveNTTranCreate path not found

if the directory object cannot be found in the tree, return
CM_ERROR_PATHNOTFOUND instead of crashing.

Reviewed-on: http://gerrit.openafs.org/5061
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
(cherry picked from 9c2d3180aa760d2a406bb68dd84e73f7d1ec7019)

Change-Id: I3150f9d5ee1e1d548b29161086ebcea21b2351cb
Reviewed-on: http://gerrit.openafs.org/5134
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
14 years agoWindows: cm_daemonCheckOfflineVol fix
Jeffrey Altman [Wed, 20 Jul 2011 18:18:25 +0000 (14:18 -0400)]
Windows: cm_daemonCheckOfflineVol fix

When computing whether or not to perform an offline volume
check it is critical that the 'lastBusyVolCheck' variable
be assigned the current time instead of 'lastVolCheck'.
By setting the wrong variable a new offline volume check is
performed every 10 seconds which is undesireable.

Reviewed-on: http://gerrit.openafs.org/5054
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
(cherry picked from 0783b8f3821f59004146b4c34a53189ada178d70)

Change-Id: I18617371d20798a923c5712188a229633ff43519
Reviewed-on: http://gerrit.openafs.org/5133
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
14 years agoWindows: Add shutdown event log message
Jeffrey Altman [Wed, 20 Jul 2011 18:12:42 +0000 (14:12 -0400)]
Windows: Add shutdown event log message

Add an explicit message that the shutdown sequence is complete.
This is necessary because during a Windows OS shutdown, the service
is frequently killed prior to the memory mapped file is fully released.

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

Change-Id: I80685fae2b581171c580b039ae029ca69bea467c
Reviewed-on: http://gerrit.openafs.org/5132
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
14 years agoWindow: breakout CM error codes into separate header
Jeffrey Altman [Wed, 20 Jul 2011 18:04:57 +0000 (14:04 -0400)]
Window: breakout CM error codes into separate header

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

Change-Id: I82adf60bef97575d47b65561fdc2b097f8ac610a
Reviewed-on: http://gerrit.openafs.org/5131
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
14 years agoWindows: conditionalize mappings of error values
Jeffrey Altman [Mon, 1 Aug 2011 15:05:51 +0000 (11:05 -0400)]
Windows: conditionalize mappings of error values

Visual Studio 10 adds a large number of additional POSIX C99
error values to errno.h.  Wrap each mapping with #ifndef to ensure
that we do not redefine the C runtime errno.h definition.

Change-Id: Ia6929d9ff84358059efcc4a53dcc91ee2612fc5a
Reviewed-on: http://gerrit.openafs.org/5129
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
14 years agoWindows: unified afs errors must use nt mapping
Jeffrey Altman [Mon, 1 Aug 2011 15:00:55 +0000 (11:00 -0400)]
Windows: unified afs errors must use nt mapping

On Windows, error.h does not provide a complete list of POSIX
C99 error values.  OpenAFS fills in the gaps with a private
error mapping table afs/errmap_nt.h (src/util/errmap_nt.h).
If errmap_nt.h is not included prior to processing unified_afs.h,
values such as ELOOP will be mapped to EIO instead of the unique
value defined by errmap_nt.h.

Change-Id: I3d25fafb15f1b0060ad1047178cbadd5ce22edb2
Reviewed-on: http://gerrit.openafs.org/5128
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
14 years agomacos: fix vnode finalization
Derrick Brashear [Mon, 1 Aug 2011 13:58:27 +0000 (09:58 -0400)]
macos: fix vnode finalization

erroneously pushed a bad version of this. fix it now.

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

Change-Id: I10aa962b158616d7d9e9207fd0307900abda0cee
Reviewed-on: http://gerrit.openafs.org/5126
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
14 years agovos: spell "vldb" correctly
Derrick Brashear [Mon, 1 Aug 2011 14:58:28 +0000 (10:58 -0400)]
vos: spell "vldb" correctly

i'm not even going to ask.

Change-Id: I5f59177ef58d9728a516176a14e0504130f7c584
Reviewed-on: http://gerrit.openafs.org/5125
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
14 years agomacos: fix vnode finalization
Derrick Brashear [Mon, 1 Aug 2011 13:58:27 +0000 (09:58 -0400)]
macos: fix vnode finalization

erroneously pushed a bad version of this. fix it now.

Change-Id: Ic5db50473a97bd7ffb3ba34ac052da2ae8f2875b
Reviewed-on: http://gerrit.openafs.org/5124
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
14 years agoSOLARIS: Do not release NULL root vp on unmount
Andrew Deason [Fri, 29 Jul 2011 21:44:11 +0000 (16:44 -0500)]
SOLARIS: Do not release NULL root vp on unmount

When we unmount, and afs_globalVp is NULL (e.g. because root.afs was
unavailable when the client was started), we will panic the machine if
we try to release it. So, if afs_globalVp is NULL when we hit our
unmount handler, don't touch it.

Reported by Andy Cobaugh.

Change-Id: I4e5869237e24da320afc2b7edaf8edca0ab3e4e9
Reviewed-on: http://gerrit.openafs.org/5117
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: BuildBot <buildbot@rampaginggeek.com>
14 years agoRedHat: Return status values from client init
Will Maier [Sun, 31 Jul 2011 13:24:12 +0000 (14:24 +0100)]
RedHat: Return status values from client init

The init script provided with OpenAFS always returns 0 when the status
subcommand is called, even if the service is not running.

For example:

$ sudo service afs status; echo $?
afsd is stopped
0

This change makes sure the init script exits with the value returned
by the status function from /etc/init.d/functions. With this patch,
the afs init script behaves as expected when used, for example, in a
Chef service resource:

$ sudo service afs status; echo $?
afsd is stopped
3

Change-Id: If3d317fc406746f357e29e0d8d82c7ccf3c192d7
Reviewed-on: http://gerrit.openafs.org/5123
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
14 years agoWindows: Do not execute tasks on deleted files
Jeffrey Altman [Fri, 29 Jul 2011 22:09:53 +0000 (18:09 -0400)]
Windows: Do not execute tasks on deleted files

If a cm_BkgDaemon thread finds a queued request whose cm_scache_t
has the CM_SCACHEFLAG_DELETED flag set, do not execute the request
and fail it immediately with CM_ERROR_BADFD.  Any attempt to execute
the request will fail with VNOVNODE from the file server.

Change-Id: Ib74300568ac083e39506b0d106a5984e8fe5e464
Reviewed-on: http://gerrit.openafs.org/5120
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
14 years agoWindows: cm_BkgDaemon should not do cm_SyncOp's job
Jeffrey Altman [Thu, 7 Jul 2011 21:51:58 +0000 (17:51 -0400)]
Windows: cm_BkgDaemon should not do cm_SyncOp's job

cm_SyncOp is designed to synchronize operations among multiple
threads.  The background daemon threads should not filter requests
based upon cm_SyncOp states.  Doing so is racy and does not produce
better performance.

Change-Id: Ifeafd55da6e02807ed4cc3c3f2b6f1de4df2a87f
Reviewed-on: http://gerrit.openafs.org/5119
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
14 years agoWindows: Do not release locks on deleted files
Jeffrey Altman [Fri, 29 Jul 2011 22:07:42 +0000 (18:07 -0400)]
Windows: Do not release locks on deleted files

If the cm_scache_t flags include CM_SCACHEFLAG_DELETED, do not
bother releasing an outstanding file lock to the file server.
The lock went away when the file was deleted.  Any attempt to
release will fail with VNOVNODE which is translated locally into
CM_ERROR_BADFD.

If a RXAFS_ReleaseLock RPC fails with VNOVNODE, treat it as
success.

Change-Id: I15860920a224bd032256e08c9983fa31f7f1c9ee
Reviewed-on: http://gerrit.openafs.org/5118
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
14 years agoman: more changes for man.3 pod files
Jeffrey Altman [Thu, 28 Jul 2011 19:07:32 +0000 (15:07 -0400)]
man: more changes for man.3 pod files

generate-html requires a HEADER description for pod3

The Windows makefile needs to process pod.in files.

Change-Id: I5ac964cc8c1af73510d17b3a31bf1a9a5df3a58f
Reviewed-on: http://gerrit.openafs.org/5116
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
14 years agoWindows: permit perl command to be explicitly set
Jeffrey Altman [Thu, 28 Jul 2011 19:05:28 +0000 (15:05 -0400)]
Windows: permit perl command to be explicitly set

Add PERL variable to the build system.  If not specified
externally the variable will be set to 'perl'.  However,
ActiveState Perl should be used and not Cygwin Perl.  The build
environment should indicate that by specifying a PERL setting.

SET PERL=c:\perl64\bin\perl.exe

or similar.

Change-Id: Iaf14a82134cc2dcf3c23b1e5a0ed65606e2487bb
Reviewed-on: http://gerrit.openafs.org/5115
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
14 years agoman: add missing pod files to Windows makefile
Jeffrey Altman [Thu, 28 Jul 2011 19:02:14 +0000 (15:02 -0400)]
man: add missing pod files to Windows makefile

Several of the demand attach pod files were not being processed
on Windows.

Change-Id: If211f80564115bdc184181226aa0750ba1989a55
Reviewed-on: http://gerrit.openafs.org/5114
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
14 years agomerge-pod changes for cygwin and MSWin32 perl
Jeffrey Altman [Thu, 28 Jul 2011 18:59:05 +0000 (14:59 -0400)]
merge-pod changes for cygwin and MSWin32 perl

On Windows, the git repository is checked out as CR-LF.
Tell perl to open the pod file with cr-lf as the end of line.

On Windows, the input file names are of the form podX\foo.pod.in.
Cygwin perl cannot parse the directory for the file name unless
the path separator is converted from \ to /.

Change-Id: I7139bd2138573e938ea3e8386685f3b69e131c4d
Reviewed-on: http://gerrit.openafs.org/5113
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
14 years agoWindows: add debugging to afskfw
Jeffrey Altman [Tue, 26 Jul 2011 21:37:37 +0000 (17:37 -0400)]
Windows: add debugging to afskfw

More debugging output added when a debugger is present.

Change-Id: I22698ebaf3c950a5b9c9b7d6746af45603b5acf9
Reviewed-on: http://gerrit.openafs.org/5112
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
14 years agoWindows: afskfw remove TRUE conditional
Jeffrey Altman [Tue, 26 Jul 2011 21:36:25 +0000 (17:36 -0400)]
Windows: afskfw remove TRUE conditional

Simply the code by removing an if(1) conditional.

Change-Id: I2cb3f861b99686a7d14aa7f567adc5a083a08a5b
Reviewed-on: http://gerrit.openafs.org/5111
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
14 years agoWindows: KFW_AFS_get_cred userrealm
Jeffrey Altman [Tue, 26 Jul 2011 21:34:52 +0000 (17:34 -0400)]
Windows: KFW_AFS_get_cred userrealm

The userrealm string in KFW_AFS_get_cred() should not include
the '@' symbol from the user principal.  Including the '@' produces
an invalid realm name.

Change-Id: I5887ffabce93666bdbe231eaac0821573162a6ba
Reviewed-on: http://gerrit.openafs.org/5110
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
14 years agoWindows: afslogon start service if not started
Jeffrey Altman [Tue, 26 Jul 2011 21:32:28 +0000 (17:32 -0400)]
Windows: afslogon start service if not started

If the service is configured for auto start but has yet
to start, kick it off just in case.

Change-Id: I668961b17472a78ebac6744bf131dcb850d4e4a2
Reviewed-on: http://gerrit.openafs.org/5109
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
14 years agoWindows: improve afskfw error message output
Jeffrey Altman [Tue, 26 Jul 2011 21:03:56 +0000 (17:03 -0400)]
Windows: improve afskfw error message output

Add KTC and PT error messages to those that can be
translated within afskfw.lib.  This improves the error
logging for afslogon.dll, afscreds.exe, and afssrvadm.exe

Change-Id: I62aa5f1249d4d1f2d64ed068be47a5832d97f85c
Reviewed-on: http://gerrit.openafs.org/5108
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
14 years agovolinfo: clean up headers
Michael Meffie [Sat, 23 Jul 2011 03:38:36 +0000 (23:38 -0400)]
volinfo: clean up headers

Remove unneeded includes.

Change-Id: I68514d47b1ddd4ea1d79c919635f87f6670e767f
Reviewed-on: http://gerrit.openafs.org/5098
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
14 years agolibafs: Rate-limit hard-mount waiting messages
Andrew Deason [Wed, 20 Jul 2011 21:50:52 +0000 (16:50 -0500)]
libafs: Rate-limit hard-mount waiting messages

Limit how often we log "hard-mount waiting for XXX" messages. Without
this, it is possible for a client with hard-mounts enabled to spam the
kernel log rather excessively (in extreme cases this can even panic
the machine on at least some Linux).

To keep things simple, just log approximately one message per volume
per hard-mount interval.

Change-Id: Ie82f68c5eae76519fcf1491164133c1955ed9c08
Reviewed-on: http://gerrit.openafs.org/5060
Tested-by: Derrick Brashear <shadow@dementia.org>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
14 years agoutil: Don't use FT_GetTimeOfDay for MRAFS logs
Simon Wilkinson [Sun, 10 Jul 2011 12:56:21 +0000 (13:56 +0100)]
util: Don't use FT_GetTimeOfDay for MRAFS logs

FT_GetTimeOfDay creates an LWP dependency. For the purpose that we're
using it in serverLog.c, gettimeofday performs identically. So, just
use gettimeofday and reduce our dependencies.

Change-Id: I36887d725c7e93386c80c61b3b33a7cda2bfe738
Reviewed-on: http://gerrit.openafs.org/5085
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Tested-by: Derrick Brashear <shadow@dementia.org>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
14 years agopthreaded servers: set thread names
Garrett Wollman [Mon, 18 Jul 2011 01:57:20 +0000 (21:57 -0400)]
pthreaded servers: set thread names

In the startup function for each thread, set a thread name.  This
can safely be done unconditionally as LWP builds turn the call into
a no-op.  In general, the thread name parallels the name passed to
LWP_CreateProcess, but for Rx server threads, it additionally includes
the thread ID so that these threads can easily be distinguished.  (I'm
not sure yet whether doing so will prove to be useful or counterproductive.)

Change-Id: I30e012eebef4c7856084fa8b8eb1d88d9fcdf2c4
Reviewed-on: http://gerrit.openafs.org/5041
Tested-by: Derrick Brashear <shadow@dementia.org>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
14 years agolibafs: Add afs_conn refCount imbalance safeguard
Andrew Deason [Mon, 25 Jul 2011 16:12:37 +0000 (11:12 -0500)]
libafs: Add afs_conn refCount imbalance safeguard

If someone is putting back too many refs, we can detect so very
easily. If we see that such a thing is happening, give a warning and
bail out, instead of risking a panic or memory corruption.

Change-Id: I36c968f9cd7cab3f569d3f6860f41678f026fba8
Reviewed-on: http://gerrit.openafs.org/5094
Tested-by: Derrick Brashear <shadow@dementia.org>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
14 years agoFBSD: complete the build fix for 8.1 libafs
Garrett Wollman [Thu, 28 Jul 2011 04:39:52 +0000 (00:39 -0400)]
FBSD: complete the build fix for 8.1 libafs

Strangely enough, nosys() also needs a cast to sy_call_t *.

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