4621 Commits

Author SHA1 Message Date
Jeffrey Altman
068233cf4a windows-fs-test_volstat-20080103
LICENSE MIT

Add a hidden command that can be used to test volume status handlers.
fs test_volstat.
2008-01-04 07:56:45 +00:00
Jeffrey Altman
23318f425c windows-fs-path-avail-20080103
LICENSE MIT

fix the reporting of volume status as a result of the VIOC_PATH_AVAIL
pioctl call. Switch on errno instead of the pioctl return value.
2008-01-04 07:51:31 +00:00
Jeffrey Altman
d851dda5b7 windows-fs-prototype-20080103
LICENSE

Fix types in prototypes to be consistent with function definitions
2008-01-04 07:48:37 +00:00
Jeffrey Altman
6034868e79 windows-smb-20080103
LICENSE MIT

ensure type consistency between 32-bit and 64-bit processes by replacing
'long' with 'afs_uint32'
2008-01-04 07:46:29 +00:00
Jeffrey Altman
ae8e701952 windows-volume-status-20080103
LICENSE MIT

when performing offline volume status checks handle CM_ERROR_NOACCESS
conditions by restoring the volume status to vl_unknown.
2008-01-04 07:44:10 +00:00
Derrick Brashear
3a541eb11d aix-lam-aklog-update-20080103
LICENSE IPL10

make the aklog lam plugin work correctly in e.g. the CDE screenlocker, which is
part of the long-running and not-run-by-user dtsession; this means we do wackiness to
1) not pag ourselves in that case
2) setuid to the user to set uid tokens if we got a username and are root
3) do not use pr_mumble get the the AFS ID to put in the tokens, as multiple
   initializations of Rx in the process space of dtsession crashes it
2008-01-03 18:02:30 +00:00
Jim Rees
dbb3f1d0b6 obsd-buf-fixes-20080103
use new b_data field in struct buf
2008-01-03 17:46:08 +00:00
Jim Rees
7793d4e518 obsd-lock-vnops-20080103
use generic vnops for lock/unlock (for obsd 4.2)
2008-01-03 17:12:21 +00:00
Jim Rees
b2a34dd35f obsd-uvm-1-20080103
long overdue fixes for uvm on openbsd
2008-01-03 17:11:22 +00:00
Jim Rees
ff21ae91b2 use-k5-klog-20080102
use k5 klog for OpenBSD
2008-01-03 02:28:29 +00:00
Jeffrey Altman
5baef6f6fe windows-64bit-20080102
LICENSE MIT

do not disable the signature verification of binaries when using
large cache sizes on 64-bit systems

cm_config_data values are unsigned and some are 64-bit.  when logging
them use the correct data format types.
2008-01-02 15:53:46 +00:00
Derrick Brashear
558acfe359 redhat-spec-cvsignore-20080101
LICENSE IPL10

as reported by mdw@umich.edu
2008-01-02 15:10:08 +00:00
Jeffrey Altman
d59d1db605 windows-nim-afscred-supports-krb4-20080102
LICENSE MIT

Do not trust the registry to determine whether or not krb4 support
is available.  In a roaming profile the user data can say 'yes' even
if the plug-in or the kerberos library does not exist.
2008-01-02 14:58:35 +00:00
Jeffrey Altman
cfcaa0be3c windows-nim-afs-krb524-20080102
LICENSE MIT

Don't call krb524_convert_creds_kdc if it doesn't exist.
64-bit KFW doesn't support krb4 and the function isn't present.
2008-01-02 07:06:58 +00:00
Derrick Brashear
2e135307b5 vgetvnode-debuglog-vio-20071228
LICENSE IPL10

provide a way to log otherwise unlogged VIO error cause
2007-12-28 22:13:42 +00:00
Jeffrey Altman
4d2c1d532b windows-syncop-20071228
LICENSE MIT

avoid a race condition between cm_SyncOpCheckContinue and cm_SyncOpDone
that can leave a request on an scp stuck in the waiting state even though
there are no other requests to wake it up.
2007-12-28 15:46:05 +00:00
Jeffrey Altman
33aeecd83f windows-get-buffer-20071228
LICENSE MIT

cm_BkgPrefetch() contained two errors.  First, the loop at the top of the
function that ensures that a cm_buf_t is allocated for each of the offset
positions failed to actually obtain the buffer for the specified offset.
Instead, it repeatedly obtained the buffer for the starting base address.

Second, cm_GetBuffer() would reserve all of the buffers associated with
the cm_scache_t even in the case where we already have a callback and the
existing buffer has the proper data version number.  In that situation
reserving the buffers simply wastes valuable time.
2007-12-28 07:24:48 +00:00
Jeffrey Altman
d942d97ed8 windows-cell-aliases-20071228
LICENSE MIT

Fix the lookup of cell aliases to:

1. avoid re-reading CellServDB each time a cell alias is specified
2. avoid reconstructing the vlserver list for the cell each time an
   alias is specified
3. permit aliases to be used when AFSDB records were used previously
   with the full cell name
2007-12-28 07:11:59 +00:00
Jeffrey Altman
7a1253d1d1 windows-bkg-daemon-threads-20071228
LICENSE MIT

Reduce the default number of background daemon threads used for prefetch and
store operations to one.  Given the current implementation when more than
one thread is allocated they step on each other's toe while fighting over
locks.

A better model might be to divide up threads based upon cells or volumes
as a means of preventing contention.
2007-12-28 07:07:53 +00:00
Jeffrey Altman
1e262e133d windows-default-chunksize-20071227
LICENSE MIT

Drop the default chunksize to 18 (256KB) from 20 (1MB) due to the increased
propensity to timeout reads on slow network connections.
2007-12-27 20:58:49 +00:00
Jeffrey Altman
56a82598b1 windows-callback-restore-multi-cell-servers-20071226
LICENSE MIT

The case of openafs.org and grand.central.org is a hideous abuse of
the AFS cell name space.  There are many negatives associated with
trying to support two different cell names pointing at overlapping
vlserver lists:

(1) The CM can store duplicate entries for all of the data simply because
    the cell name that was used is different

(2) If the CM attempts to optimize the data storage by aliasing or otherwise
    combining the cell names as part of one cm_cell_t object, then future
    attempts to separate the two cell names will require the destruction
    of the cache.

(3) If the CM does not associate a callback revoke with a particular cell,
    then the status data associated with any entry that matches the revoked
    AFSFid will be discarded.  For volume callbacks this can have a serious
    impact because volume IDs are not unique across cells and discarding
    status data for readonly volumes that are in use can result in a
    significant number of FetchStatus requests being sent to the associated
    file server.

There are other issues as well involving authentication.

The case of openafs.org advertising the vlserver addresses of
grand.central.org should be considered a hack; a hack that the Windows
client will no longer ensure will work.

Additional debugging messages have been added to assist individuals attempting
to debug why callback revokes do not appear to take affect when two cell
names share the same vlserver data.
2007-12-26 16:18:37 +00:00
Jeffrey Altman
b41b3bb52e windows-pthread-20071225
LICENSE MIT

The pthread_cond_timedwait/wait implementations were broken.  Not only
did they return the wrong error values but more importantly, they did not
always return with the mutex locked.
2007-12-25 23:05:17 +00:00
Jeffrey Altman
6b1537b246 rx-event-handler-20071225
LICENSE MIT

Update event_handler() for Windows.  The return code of
pthread_cond_timedwait() is not limited to 0 and -1 because 'errno'
cannot be set.  Instead of setting 'errno' the error code is returned
directly by the function as the return code.

This patch is only for debugging purposes to track the number of
success, timeout, and other errors experienced by the routine.
2007-12-25 22:59:06 +00:00
Jason Edgecombe
7dc4925cd3 man-page-license-change-20071225
LICENSE BSD

Update man pages submitted by Jason Edgecombe to the BSD license.
2007-12-25 22:22:22 +00:00
Jason Edgecombe
84ef02b0f3 man-page-misc-updates-20071225
LICENSE BSD

Add some additional cross-references, add some missing man pages, fix a
few references to the OpenAFS manuals, document the -live flag to vos
move, and add an example for rxdebug.
2007-12-25 22:15:07 +00:00
Andrew Deason
9f97c5cf74 man-page-fileserver-debug-20071225
LICENSE BSD

The file server debug flag is -d, not -debug.
2007-12-25 22:02:19 +00:00
Jeffrey Altman
69d62d5968 windows-callback-revoke-multi-cell-servers-20071225
LICENSE MIT

Remove the callback revoke optimization that prevents a (vol,vn,uniq)
tupple from invalidating entries from multiple cells.  We cannot reliably
determine the cell from the server because the server might be identified
as belonging to more than one cell.  For example, openafs.org and
grand.central.org.
2007-12-25 21:58:51 +00:00
Jeffrey Altman
b0bae13aec windows-hold-server-mutex-for-vol-list-20071223
LICENSE MIT

When walking or modifying the cm_server_vols_t associated with a given
cm_server_t the mutex must be held.  Otherwise, races can occur.
2007-12-24 05:29:15 +00:00
Jeffrey Altman
8a923a199d windows-daemon-threads-shutdown-sync-20071223
LICENSE MIT

Windows Error Reporting received crashes caused by a failure to synchronize
the shutdown of the AFS client service with the background daemon threads.
The daemon threads (cm_Daemon, cm_BkgDaemon+, cm_IPAddrDaemon) could be
accessing data structures as they were being freed or unmapped.

Add synchronization mechanisms to signal the termination of the threads
with the shutdown of the service.
2007-12-24 05:23:28 +00:00
Jeffrey Altman
815cd6f19e windows-update-volume-status-20071223
LICENSE MIT

Refactor cm_UpdateVolumeStatus.  Revise behavior to treat volid 0 as
update the volume status for all volumes in the volume group.
2007-12-24 05:17:50 +00:00
Jeffrey Altman
1b90fc5329 windows-server-lock-error-20071224
LICENSE MIT

The cm_serverLock must be write locked to modify the refCount
2007-12-24 05:14:11 +00:00
Jeffrey Altman
150919d690 windows-volstat-and-vista-dfs-support-20071222
LICENSE MIT

This patch completes the implementation of smb_ReceiveTran2GetDFSReferral()
which is called by Vista even if we do not advertise the support of DFS
referrals.  It also adds DFS link mapping notifications to the volstat
interface which can be used by volstat plug-ins to redirect requests to
the dfs target path.

Other miscellaneous items:

(1) return EAS_NOT_SUPPORTED instead of EA length 0 and silently accepting
    but not storing EA data

(2) Call cm_VolStatus_Service_Started() before smb initialization instead
    of afterwards

(3) During directory enumeration and link assembly push the UNC path into
    the lower levels by storing references to the tidPath and the relative
    paths within the cm_req_t object.

(4) During directory enumeration make absolutely sure that we do not
    reference an unallocated cm_dirEntry_t object

(5) publish a prototype for cm_FollowMountPoint()

(6) return ERROR_RETRY instead of BAD_NETWORK_PATH if the server returns
    VBUSY

(7) return PATH_NOT_COVERED instead of BADSHARENAME for DfsLinks when
    a volstat plugin is in use
2007-12-23 04:51:59 +00:00
Jeffrey Altman
bb77b085ff windows-freelance-scache-20071222
LICENSE MIT

(1) remove a race condition caused by holding and releasing the
    cm_Freelance_Lock while using a pointer into a private freelance
    data structure

(2) do not reference a localMountPoint object that is not allocated

(3) properly assign the DFSLINK file type

(4) update the buffer data versions when we update the contents of
    the stat cache object and its buffers to match the registry
    contents
2007-12-23 04:15:33 +00:00
Jeffrey Altman
111fb3a0a9 windows-pioctl-listlink-20071222
LICENSE MIT

In the error case (1) reference the mountPointString instead of the
output of cm_AssembleLink() which was not generated and (2) do not
free memory and objects that were not allocated nor reference counted.
2007-12-23 03:43:49 +00:00
Jeffrey Altman
0421cb2afc windows-freelance-20071222
LICENSE MIT

remove unused next field in cm_localMountPoint_t
2007-12-23 03:38:45 +00:00
Jeffrey Altman
89203eb706 windows-fix-cb-expiration-20071222
LICENSE MIT

corrects cb expiration that was broken by the osi_Time() -> time() change
in delta windows-readonly-volume-callbacks-20071109
2007-12-23 03:25:56 +00:00
Derrick Brashear
f54187bfc5 darwin-dont-assert-on-lock-state-in-remove-20071219
LICENSE IPL10

remove panic due to lock being grabbedin another thread can't be accurately
covered with this test on darwin, as e.g. proc_selfthread() is not in the KPI
2007-12-19 20:56:23 +00:00
Derrick Brashear
b072deb257 fix-verbose-vos-dump-20071217
LICENSE IPL10

fix verbose vos dump to not put garbage in the stream when dumping to stdout
2007-12-18 15:16:20 +00:00
Chaskiel M Grundman
49a968ab68 shlibafsrpc-export-more-20071217
LICENSE IPL10

shlibafsauthent uses these, export them
2007-12-17 21:12:45 +00:00
Derrick Brashear
c2da8a61dd put-relnotes-on-head-20071217
LICENSE IPL10

add 1.4.6 relnotes, put reast on head
2007-12-17 18:02:58 +00:00
Adam Megacz
f72145f79a java-admin-interface-updates-20071214
LICENSE IPL10

pdate java admin interface including support for 1.5
2007-12-14 21:33:56 +00:00
Jeffrey Altman
77c86d6fd3 windows-make-cleanup-20071214
LICENSE MIT

Modify the dependencies for building the cbd and file server resource
files and delete the resource files as part of 'clean'.
2007-12-14 13:33:57 +00:00
Jeffrey Altman
059031b3c6 emulate-vsyslog-20071214
LICENSE IPL10

Do not include vsyslog on Windows.

Include syslog.h for the syslog() prototype.
2007-12-14 13:06:48 +00:00
Derrick Brashear
bf26bc9486 aix-lam-aklog-set-token-name-20071213
LICENSE IPL10

so we set an afs id in the tokens here also
2007-12-13 23:04:54 +00:00
Derrick Brashear
ea3d49eaea emulate-vsyslog-20071213
LICENSE IPL10

aix 5.3 lacks vsyslog. the fixed buffer is poor, but...
2007-12-13 22:41:11 +00:00
Derrick Brashear
af3a4e7852 aix-curpag-redux-20071213
LICENSE IPL10

add curpag() support for aix, based on work by tom keiser
2007-12-13 21:21:56 +00:00
Simon Wilkinson
fcc8aa021f redhat-rpm-mockable-20071213
LICENSE IPL10

make us able to autobuild with mock. (may need krb5-devel outside the
if krb5support; if we do more thought will be involved)
2007-12-13 20:04:41 +00:00
Derrick Brashear
51d6d9cbbc vcache-track-maxvcount-accurately-20071213
LICENSE IPL10

if we can alloc more vnodes, and we are looking for vlru cycles, a legit
vnode is not indicative of a cycle.
2007-12-13 19:46:06 +00:00
Derrick Brashear
b33fb96fff shutdown-cleanup-20071213
LICENSE IPL10

get rid of cold_shutdown; it's in afs_prototypes.h.
log when we don't clean up memory
2007-12-13 19:18:06 +00:00
Jeffrey Altman
8f84815d0d windows-afslogon-null-pointer-deref-20071211
LICENSE MIT

'tokenUser' can be dereferenced when NULL if GetTokenInformation() fails.
2007-12-12 04:24:26 +00:00