Commit Graph

5446 Commits

Author SHA1 Message Date
Jeffrey Altman
883683fc31 rx-readproc32-avoid-losing-currentpacket-20080925
LICENSE IPL10

when currentPacket is empty, avoid leaking it and instead free and NULL it
2008-09-25 18:06:24 +00:00
Derrick Brashear
eb875d3034 ah-verbatim-section-tweak-20080925
LICENSE IPL10

remove PACKAGE and VERSION
2008-09-25 17:59:52 +00:00
Derrick Brashear
9d09de799b acfooter-inline-20080925
LICENSE IPL10

based on work by mdw@umich.edu
2008-09-25 15:41:02 +00:00
Jeffrey Altman
8871c545e3 rx-windows-mutex-is-mine-lwp-20080925
LICENSE MIT

mutex is mine for lwp on windows
2008-09-25 13:29:50 +00:00
Jeffrey Altman
3be628e8fc rx-user-prototype-20080925
LICENSE MIT

fix prototype for rx_getAllAddr() on Windows
2008-09-25 13:04:46 +00:00
Jeffrey Altman
ec6dcda473 rx-prototypes-20080925
LICENSE MIT

fix errors introduced in rx-prototypes-20080924 on Windows
2008-09-25 12:58:45 +00:00
Jeffrey Altman
db15c2f1cb rx-windows-mutex-is-mine-20080925
LICENSE MIT

Add MUTEX_IS_MINE for Windows
2008-09-25 12:49:10 +00:00
Matt Benjamin
9d63160ccc bypasscache-20080922
LICENSE IPL10

add cache bypass support (currently linux only)
2008-09-25 12:42:02 +00:00
Derrick Brashear
84b423e932 disconnected-fix-ifdefing-20080925
LICENSE IPL10

make disconnected code not be compiled in (and break) when you don't have it enabled
2008-09-25 10:02:23 +00:00
Max Cohan
b5a6e4bf36 dafs-vol-offline-status-20080925
LICENSE IPL10
FIXES 117499

This patch makes several alterations to the DAFS volserver. The two
major changes are:

* a potential information leak whereby random heap contents could be
exported over the four listvolume rpc variants is corrected

* volume online/offline reporting correctly reports in several additional
corner cases (see the comments in FillVolInfo() in src/volser/volprocs.c
for the complete list of cases):

VOL_STATE_SALVSYNC_REQ:
exclusive state while a fileserver is busy requesting a demand
salvage over the SALVSYNC protocol

V_needsSalvaged():
volume disk header field which is asserted when the fileserver
detects that a volume needs to be salvaged

pending volume operation with command code FSYNC_VOL_OFF:
this command code indicates that a volume utility requires
exclusive access to the volume

pending volume operation and VVolOpLeaveOnline_r returned false:
this indicates that a volume operation is in-progress, and the
internal function VVolOpLeaveOnline_r has decided that the volume
cannot be served concurrently with this volume transaction
2008-09-25 09:57:39 +00:00
Steven Jenkins
1659861640 dafs-drop-volheaders-20080925
LICENSE IPL10
FIXES 117470

Under certain demand salvage scenarios, it is possible for a stale header
to remain cached with the needsSalvaged flag asserted. Although this will
not affect clients accessing the volume over afsint, it is an issue for
volser clients. VAttachVolumeByName in volser will always attempt to pull
the header over FSSYNC before doing a disk read, under the assumption that
a cached entry in the fileserver will be more current than what is on
disk. This patch causes the fileserver to aggresively invalidate disk
header cache entries when a salvage is in-progress.
2008-09-25 08:50:01 +00:00
Jeffrey Altman
f52f24d6f0 windows-remove-entraneous-commit-20080924
LICENSE MIT

remove extraneous commit.  maybe later.
2008-09-24 23:47:59 +00:00
Jeffrey Altman
dd05bd3ba7 windows-vlserver-updates-20080924
LICENSE MIT

if a vlserver returns a ubik error, skip the server and retry
2008-09-24 23:40:44 +00:00
Simon Wilkinson
8aa9d07e35 rx-varargs-20080924
LICENSE IPL10

make rx use varargs instead of a large fixed set of parms
2008-09-24 22:38:19 +00:00
Simon Wilkinson
17d45aa884 rx-prototypes-20080924
LICENSE IPL10

cut down by a few thousand the warnings we get
2008-09-24 22:36:29 +00:00
Simon Wilkinson
af4d05c3a4 generic-inline-20080924
LICENSE IPL10

move static_inline macro to generic location
2008-09-24 22:34:19 +00:00
Simon Wilkinson
2d5987ea2b rx-dpf-clarify-20080924
LICENSE IPL10

rework dpf macro slightly so there are no trailing ; issues
2008-09-24 22:31:54 +00:00
Dragos Tatulea
433afd4779 disconnected-rw-20080922
LICENSE IPL10
FIXES 114605 114606 114607

add read-write disconnected support
2008-09-22 14:36:16 +00:00
Derrick Brashear
41d5a5f7e3 macos-panic-decoder-format-fix-20080921
LICENSE IPL10

handle new panic format
2008-09-21 14:03:20 +00:00
Asanka Herath
1f68694119 windows-local-dir-updates-20080916
LICENSE MIT

When a local directory update occurs to the directory pages stored
in the dcache, there is no guarrantee that the same modifications
will be made to the cached pages as are being made by the file server.
In the situation that one or more of the cached pages are recycled,
it is not permissible to obtain the missing pages from the file server
without first invalidating the rest of the cached pages.  This is
necessary to prevent mixing of incompatible data representations.

Define a new flag CM_SCACHEFLAG_LOCAL which is used to indicate that
dcache entries were locally modified even though they are not dirty.

As the previous code could have corrupted the contents of the dcache,
bump CM_CONFIG_DATA_VERSION in order to force the rebuilding of the
cache.

Add error CM_ERROR_NOTINCACHE to indicate that a requested directory
page is not present in the cache and will not be created on the fly.

Prefetch all dcache entries for directories and ensure that a consistent
set is being used.
2008-09-16 12:45:22 +00:00
Asanka Herath
c4117f6f07 windows-dir-search-star-dot-pattern-20080916
LICENSE MIT

Replicate the FAT and NTFS behavior that the "*." pattern should match
all files without an extension.
2008-09-16 12:32:38 +00:00
Jeffrey Altman
414312a72a windows-lock-order-20080916
LICENSE MIT

do not violate lock order when freeing server reference lists
2008-09-16 12:26:45 +00:00
Jeffrey Altman
2d709220d5 windows-byte-range-locks-20080913
LICENSE MIT

Replace the int64 key with a struct because process ids on 64-bit
Windows can be 64-bit when obtained through the redirector interface.
2008-09-13 14:51:16 +00:00
Jeffrey Altman
1456a67c5c windows-vnovol-20080912
LICENSE MIT

The cm_serverRef_t list reference counts were undercounting and
prematurely freeing the server lists for volumes that experienced
VNOVOL and VMOVED errors.  cm_Analyze() must release the server
list before forcibly updating the volume location info.  Otherwise,
the list that gets freed is the old one concatenated with the new
one.

Add more trace messages.
2008-09-13 05:20:02 +00:00
Jeffrey Altman
fd55471b57 windows-service-procs-20080912
LICENSE MIT

if we are going to use hot threads it would be useful if there were
some additional server threads available to become listeners as
needed.
2008-09-12 15:32:23 +00:00
Simon Wilkinson
11b45ad09b redhat-mockbuild-dksm-20080912
LICENSE IPL10

make mockbuild do the dkms rpms also
2008-09-12 14:07:31 +00:00
Asanka Herath
7ae4174d95 windows-dir-new-pages-20080911
LICENSE MIT

A small patch to permit the directory package to allocate additional
directory pages when adding new entries that do not fit in the pages
that were obtained from the file server.
2008-09-12 05:08:00 +00:00
Jeffrey Altman
5ea02ad1e2 windows-vnovol-20080911
LICENSE MIT

Modify MSG_SERVER_REPORTS_VNOVOL to mention that the volume may
have been moved or deleted.

In cm_Analyze(), do not call cm_ForceUpdateVolume() or force a retry
when processing CM_ERROR_NOSUCHVOLUME.  This CM error value is the
result of a VNOVOL already being processed which would have forced
the update.

When a VMOVED or VNOVOL error is received, remove the volume id from
the server's volume list.

If cm_ForceUpdateVolume() returns a failure, do not retry if a
VMOVED or VNOVOL error was received.

Make sure that if a cm_serverRef_t object is marked srv_deleted
that its references not be used.

Now that cm_ForceUpdateVolume() is being called only when processing
VMOVED and VNOVOL errors, permit it to call cm_UpdateVolumeLocation()
immediately.

Refactor cm_CheckOfflineVolume() to reduce code duplication.
2008-09-11 18:24:38 +00:00
Jeffrey Altman
186f1e97d0 windows-flush-btrees-20080911
LICENSE MIT

fs flushall, fs flushvolume, and fs flush should tear down directory
B+ trees so that when the data buffers are re-read from the file server
with the same data version, the B+ trees will be rebuilt.
2008-09-11 18:09:34 +00:00
Jeffrey Altman
d85bdb4c9f windows-cell-list-validation-20080911
LICENSE MIT

correct cell list validation now that the free cell list exists
2008-09-11 18:03:52 +00:00
Jeffrey Altman
8e1b48ad0a windows-rx-jumbo-20080911
LICENSE MIT

Disable rx jumbo by default.  Permit rx jumbo to be enabled with
registry value "RxJumbo" set to 1 or "RxNoJumbo" set to 0.

RxNoJumbo has priority.
2008-09-11 17:59:18 +00:00
Jeffrey Altman
59c1c22747 windows-multi-check-server-20080911
LICENSE MIT

Permit rx_multi check server to be toggled via a registry setting
at checked prior to each invocation.  "MultiCheckServers".
Default is on.

Remove volume status updates for vldb server status changes.
2008-09-11 17:49:53 +00:00
Derrick Brashear
f51e8e7be5 aix-export-build-fix-20080906
LICENSE IPL10

add missing ; to case actions
2008-09-06 12:58:39 +00:00
Derrick Brashear
21006bb844 oops-sias-dead-20080906
LICENSE IPL10

while we should try all the auth modules, sia is tru64 only, so, no...
2008-09-06 12:52:59 +00:00
Derrick Brashear
4119d9742b syncserv-syncvldb-manpages-dryrun-20080906
LICENSE IPL10

make syncserv and syncvldb manpages reflect dryrun option
2008-09-06 12:51:01 +00:00
Jeffrey Altman
0860d5b5b1 windows-vnovol-20080905
LICENSE MIT

force a volume location update upon receipt of a VNOVOL error
in case the volume was moved.  VMOVED is only returned by the file
server if the volume is in the process of being moved.  Once it has
been deleted the file server returns VNOVOL.
2008-09-06 05:24:31 +00:00
Derrick Brashear
5c2406070f fileserver-sticky-bit-admin-only-20080905
LICENSE IPL10

do restrict the sticky bit to admins.
2008-09-05 17:57:33 +00:00
Jeffrey Altman
beef54e70c windows-smb-volname-20080904
LICENSE MIT

Advertise the correct length for the volume name.  Do not include the NUL.

Add more create option values as #defines.
2008-09-04 21:07:40 +00:00
Derrick Brashear
9689e78d71 fileserver-sticky-bit-not-admin-only-20080904
LICENSE IPL10

don't restrict the sticky bit to admins.
2008-09-04 20:41:14 +00:00
Jeffrey Altman
bbd713ad3f windows-cell-locking-20080903
LICENSE MIT

fix a lock order issue and protect the timeout and flags field
of cm_cell_t with the mutex instead of the global lock.
2008-09-03 22:03:54 +00:00
Jeffrey Altman
441cc643e0 windows-smb-lock-order-20080903
LICENSE MIT

another lock order violation to fix
2008-09-03 21:37:00 +00:00
Niklas Edmundsson
539535cf67 aix61-initial-support-20080903
LICENSE IPL10
FIXES 113638

aix 6.1 support
2008-09-03 19:26:29 +00:00
Jeffrey Altman
7f4e0dfc3e rx-mutex-init-once-20080903
LICENSE IPL10
FIXES 114555

because rx_Finalize doesn't clean up, we end up reiniting mutexes. use
pthread_once when not in the kernel.
(kernel does not now call rx_Finalize, ever)
2008-09-03 19:07:11 +00:00
Derrick Brashear
995ee981fd linux26-libafs-makefileproto-trust-kbuild-system-no-really-20080903
LICENSE IPL10

if we are really not using COMMON_KERN_CFLAGS and being trusting, let's do so.
2008-09-03 17:59:08 +00:00
Jeffrey Altman
9803e84e63 windows-afsd-dns-env-20080902
LICENSE MIT

Fix the conditionals so that the right thing happens if AFS_AFSDB_ENV
is not defined.
2008-09-02 23:34:41 +00:00
Jeffrey Altman
8bf17e7c81 windows-fs-setcrypt-auth-20080902
LICENSE MIT

fix parsing and display of fs setcrypt auth
2008-09-02 22:25:25 +00:00
Jeffrey Altman
84e10d582a smb-string-conversion-20080902
LICENSE MIT

more cases where -1 should be passed in as opposed to the strlen value
when converting between char and wchar forms
2008-09-02 22:20:58 +00:00
Jeffrey Altman
d94b9a7818 windows-rxkad-auth-20080902
LICENSE MIT

Add ability for users to select rxkad auth only mode.
"fs setcrypt auth".
2008-09-02 22:15:36 +00:00
Jeffrey Altman
21abc0e0b5 windows-afsd-init-20080902
LICENSE MIT

report state of "Rx Jumbo" and "RxExtraPackets" more often
2008-09-02 22:08:24 +00:00
Jeffrey Altman
e31826d333 windows-cell-free-list-20080902
LICENSE MIT

add a free list to the cm_cell_t structure.  if during cm_GetCellGen()
the cm_SearchCellXXX() calls fail, store the allocated cm_cell_t object
on a free list so that it can be reused for the next request.
2008-09-02 21:17:42 +00:00