Update the twiddle utility (for manipulating rx settings in the
Unix CM) so that it builds with error checking enabled.
Also, add the binary to the gitignore file in that directory.
Change-Id: I5c19832579db139e5c558b3488d7c49fdb7c08c4
Reviewed-on: http://gerrit.openafs.org/1222
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
Currently, code which uses xdr_mem needs to take a guess at the
buffer size required, allocate that guess, and error out if the
data being encoded actually exceeds the guess.
This adds a new XDR mechanism - xdr_len, which can return
(using xdr_getpos) the length of the buffer required to XDR
encode a given structure.
Change-Id: I6e04c051118a26441caebdbcb2b5768d3c4389b6
Reviewed-on: http://gerrit.openafs.org/1221
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
A number of forthcoming attractions require xdrmem, which is
currently not part of the Unix build. Fix it so that it builds
without warnings, and add it to the standard RX build.
Change-Id: I5a21b2c7cd837c317f16dc35bf12cdac69d10167
Reviewed-on: http://gerrit.openafs.org/1220
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
Add printf format checks to the remaining va-arg printf-style
functions in the tree. There are no error fixes required from this
change.
Change-Id: If774532a3ac5d8b611ec9f47576e933a57907185
Reviewed-on: http://gerrit.openafs.org/796
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
Add gcc printf format checks to rxi_DebugPrint() and osi_Panic()
Deal with the small amount of fallout.
Change-Id: Ic356028613087bda02beb9907886421d80a227c3
Reviewed-on: http://gerrit.openafs.org/795
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
Add a pair of interfaces to support the selection of a security
object by the client. The idea of these interfaces is to abstract
out the job of selecting an interface from the client code itself,
and into a common library. This reduces duplicated code, and makes
it easier to add new security objects in the future.
Change-Id: I2bf411e6b56534070c827d009d36fa8a618c4511
Reviewed-on: http://gerrit.openafs.org/1219
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
Add printf format checking to the afs_warn and afs_warnuser functions
and fix the fallout.
Change-Id: I81ed776308a31706bf307246c470ee409797f044
Reviewed-on: http://gerrit.openafs.org/792
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
Add gcc printf format checks to the afs_com_err() functions
Deal with the fallout, in particular change callers which pass
an empty format string to pass NULL instead - the com_err functions
already permit this alternate use.
There's a couple of real bugs here - in one case, we attempt to
print a NULL pointer, rather than a security index, and in the other
we supply a NULL format string, rather than the string we meant to
print.
Change-Id: Icd48f92a4447d4af3dba9a4caa2ff73c1657ad47
Reviewed-on: http://gerrit.openafs.org/794
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
Add gcc printf format checks to all of the logging functions
defined in src/util/afsutil.h
Deal with the fallout, in particular create cast functions to go
from VolumeId and VnodeId to (unsigned int)
Change-Id: I28181b73cfeac22cf869d34e75a8335e65125e36
Reviewed-on: http://gerrit.openafs.org/793
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
The backup system has a global ktc_token, which is used
to work out when its credentials are about to expire. This leads to
an unfortunate dependency throughout the code on the format of this
token.
Replace this with a global time_t which stores the expiry time, and
copy the required field from the token into this when we get the
token. This limits the exposure of the token, and simplifies the code.
Change-Id: Ia2929c2c0a4c1ba9ca5db881865f33af5a732d2f
Reviewed-on: http://gerrit.openafs.org/1218
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
Add an interface for creating arrays of server security objects.
This collects all of the various daemon code for initialising
security objects into one place, reducing duplication and making
it easier to add new objects in the future.
Change-Id: I9df20afccdbac4a610cb5bde32f01069272f27a2
Reviewed-on: http://gerrit.openafs.org/1177
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
Write some documentation for the -files and -excessive options to
fs getcacheparms
Change-Id: I769f8c0cf6d9d100a1687ae73a337132befb2449
Reviewed-on: http://gerrit.openafs.org/1217
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
InstallationCheck needs a strings dictionary to turn its errors
into human readable content. Add such a dictionary, and use the
correct product name and version for each Mac OS X release.
FIXES 126322
Change-Id: I8401a1163ea078e690152215c20db6970969ee04
Reviewed-on: http://gerrit.openafs.org/1208
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
Fix/ignore some warnings with --enable-pthreaded-ubik:
- ubik/ubik.c: move rx_stackSize decl to non-pthread code, since it's
only used there
- budb/db_dump.c: move 'code' decl to non-pthread code, since it's only
used there
- ubik/recovery.c: move return to outside the ifdef, so we still have a
return statement in the pthreaded case
- Add -Wno-error to beacon.c in tubik, to match the ubik case
Change-Id: I614f2425c36e77bb1a08838b45166d8edb080c73
Reviewed-on: http://gerrit.openafs.org/1211
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>
Use -A for rxgen in tvlserver and tptserver to generate ANSI code, so we
don't generate warnings. Also use -u in tubik rxgen, so we generate the
ubik_* functions that new code uses.
Change-Id: Id13168e65e36aeebf48610c28e7b3df2164fc073
Reviewed-on: http://gerrit.openafs.org/1210
Reviewed-by: Simon Wilkinson <sxw@inf.ed.ac.uk>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
Build utst_client in src/tubik, as it is in src/ubik.
Change-Id: I655445905efbaaa9e578a9e2061091679813a768
Reviewed-on: http://gerrit.openafs.org/1209
Reviewed-by: Simon Wilkinson <sxw@inf.ed.ac.uk>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
Return codes from InstallationCheck are turned into errors by
the GUI - don't echo them out to stdout as well.
Change-Id: Iee9c1ff4687ea42ab8c18566493a8a92b6d51fed
Reviewed-on: http://gerrit.openafs.org/1206
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
vldbClientInit is used by other modules in the backup suite, and is
already prototyped in bucoord_prototypes.h. So, remove it from the
internal header.
Change-Id: I2688426189c3aeaacc8db4f815ede466caa5dde0
Reviewed-on: http://gerrit.openafs.org/1205
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
be consistent about how we apply 64 bit longness. right now we were
doing 3 different things. oops.
Change-Id: Ie48816852d5db916e3023ae6e3cd2f6298802668
Reviewed-on: http://gerrit.openafs.org/1200
Tested-by: Derrick Brashear <shadow@dementia.org>
Reviewed-by: Simon Wilkinson <sxw@inf.ed.ac.uk>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
right now we have 2 copies of the same code for dealing with traced objects.
it's the same code! make a function, and call it 4 times.
Change-Id: I1c8b6d7b2cff59108eada1522ba1ec76efeba421
Reviewed-on: http://gerrit.openafs.org/1199
Tested-by: Derrick Brashear <shadow@dementia.org>
Reviewed-by: Simon Wilkinson <sxw@inf.ed.ac.uk>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Fix the uss_vol.c file to use the volser prototypes. This clears up the
list of the warnings in this file, so drop the warning supression from
the Makefile, and remove the entry from README.WARNINGS
Change-Id: I9e4ec8bdfa39e3a7adafea454a4c6d96c5fc9d0f
Reviewed-on: http://gerrit.openafs.org/1204
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
i386 Linux uses a register based calling convention within the
kernel, but uses the stack for va_args based functions. This means
that the hack of prototyping xdrproc_t as a va_args function doesn't
work, as you end up with arguments being in the wrong place.
Restore the Linux only xdrproc_t prototype that
167e1aa21f removed, add a warning to
explain why its there, and modify xdr_free() so that it works
without error.
Change-Id: I789d387b01fcb892b187fe05f961f01c2c1f55e4
Reviewed-on: http://gerrit.openafs.org/1202
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
Make the kernel module build on Mac OS stop when errors are
encountered, instead of just ploughing on regardless
Change-Id: I489357c04cb7c78663f593af2c2adbc50ebfffff
Reviewed-on: http://gerrit.openafs.org/1203
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
Cast printed variable to avoid a warning about a mismatch between
%d and long int.
Change-Id: I3245cbb5e4780a258e8756b4210c1078f4fbc51c
Reviewed-on: http://gerrit.openafs.org/1195
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
Commit 7a5cee30cc changed the way
that errors from llseek are dealt with. Unfortunately, it is missing
some all important bracing, and so we end up going down the error
path, even when the llseek succeeds.
My fault. Sorry.
Change-Id: I03061ba0663b610a8fb73a08d257f6d786795076
Reviewed-on: http://gerrit.openafs.org/1194
Reviewed-by: Marc Dionne <marc.c.dionne@gmail.com>
Tested-by: Marc Dionne <marc.c.dionne@gmail.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
we were using the wrong level of indirection on acred. fixed.
Change-Id: I00ab1a97b42717adc2d9d26e885b91c44103ab1d
Reviewed-on: http://gerrit.openafs.org/1190
Reviewed-by: Jeffrey Hutzelman <jhutz@cmu.edu>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
Always use ->storeproc() and avoid branching
"do or do not -- there is no try"
Change-Id: Idbcf0c80930d6a433b4c921b44db28cb6fbbf9bb
Reviewed-on: http://gerrit.openafs.org/1073
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
The Darwin build uses ARCHFLAGS to control the architectures it
builds binaries for. However, this causes problems for standalone
builds which just do ./configure && make. So, if ARCHFLAGS is
undefined, ask gcc which architecture it thinks that it is
building for, and use that.
Change-Id: If9e7dc3c41ded5ac0593ae20ddd741690914a699
Reviewed-on: http://gerrit.openafs.org/1181
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
don't choose 64 bit arches for the prefpane if we're not on macos 10.6
sadly, this is the best i can do to conditionalize
Change-Id: I31fb2e10fbef5c66a27e0170e8925513a1b63050
Reviewed-on: http://gerrit.openafs.org/1180
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
if we're going to oops, print a little more info about why. in this case,
knowing why dentry_open failed would help
Change-Id: I78a3c97d67c7c29110de975465cce0edd6367496
Reviewed-on: http://gerrit.openafs.org/1173
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
for some reason we prototype it differently. makes xdr_free sad.
Change-Id: Icd6060acd922314fc400aa2fe360c662ec705fa6
Reviewed-on: http://gerrit.openafs.org/1179
Reviewed-by: Simon Wilkinson <sxw@inf.ed.ac.uk>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
updating for non-c99 and for no vprintf in the irix kernel
Change-Id: Id7239dae35ff195007c615319522827d06395f8f
Reviewed-on: http://gerrit.openafs.org/1178
Tested-by: Derrick Brashear <shadow@dementia.org>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
added ignore for OpenAFS.Description.plist as it is now generated
Change-Id: Icbad9f8bbbdd5be6604838366d14f648eec05ee4
Reviewed-on: http://gerrit.openafs.org/1171
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
The cm_Freelance_Lock must not be held before calling
cm_FreelanceAddMount(). cm_InitLocalMountPoints() was violating
this requirement. It is safe to drop the lock because the only
time the lock would be dropped is if the "Freelance" registry
key does not exist. This should only be true during the initial
startup of the application the first time afsd_service.exe
executes on the machine. At this point in time there is only
one thread that is executing that could be initializing the
Freelance mount point list.
LICENSE MIT
Change-Id: Ib49cf8bc830836c8e08446073e64ccf30086d354
Reviewed-on: http://gerrit.openafs.org/1164
Reviewed-by: Asanka Herath <asanka@secure-endpoints.com>
Tested-by: Asanka Herath <asanka@secure-endpoints.com>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
Keys associated with PAGs are created with root ownership for
security reasons, which means that they count agains root's
keyring quotas. The default configuration used by most distros
restricts root to the same quotas as a regular user, so a single
user can potentially fill up the quota and prevent new pags from
getting created system-wide.
This can also be an issue for busy multi-user systems where the
default maximum number of keys (200 currently) can easily be reached.
Change-Id: I37e3f3d881facff9b14f2057b404d4b441e72305
Change-Id: Id1ef2d5a7109d8ee7c08aa81dfd98ecf951c8ba8
Reviewed-on: http://gerrit.openafs.org/1167
Reviewed-by: Marc Dionne <marc.c.dionne@gmail.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
solve the "are we built for linux fh or inode" problem: just always use path.
Change-Id: I076ee495b29e4a2dc964ce04001f86e100528fb6
Reviewed-on: http://gerrit.openafs.org/1133
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
Change the xdr_free function so that it matches in signature and
behaviour the xdr_free that is available in other xdr packages, and
update all callers.
Don't use xdr_alloc where the data we're allocating isn't freed by
xdr. The only place where xdr_alloc is required is in server stubs
when filling OUT parameters.
Change-Id: Ice231f163726afc374cb25a89302e3d82fa1e093
Reviewed-on: http://gerrit.openafs.org/1168
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
instead of worrying about ranlib versus ranlib -c, -fno-common, etc,
just initialize the variables if an initializer exists
Change-Id: I6ed28df4d2134f84359a1bc55706e75d54e6e083
Reviewed-on: http://gerrit.openafs.org/1166
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
we don't check here that no one else is working the tq *after* getting the
lock. do so.
Change-Id: I91d1ac020334b038a6a045734911335299613875
Reviewed-on: http://gerrit.openafs.org/1159
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
if we get an error reading data, don't subtract it from the length
stored statistic
Change-Id: I2fec260a9f677c0747ff2c6f975745ccb1e58447
Reviewed-on: http://gerrit.openafs.org/1165
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
fix the indirection here to be correct.
ifnet_list_get needs a pointer to a pointer for the ifnet structure
Change-Id: I81bd7c383c63cc1e312fcfd482d7162d50f6f1d3
Reviewed-on: http://gerrit.openafs.org/1158
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>