5494 Commits

Author SHA1 Message Date
Jeffrey Altman
bd46d35b07 DEVEL15-rx-do-not-race-current-packet-20090105
LICENSE MIT

Throughout rx_rdwr.c functions allocate a register variable 'cp'
which is used to optimize access to call->currentPacket.
Unfortunately, if the call->lock is dropped (for example, CV_WAIT)
the synchronization between the two is lost.  This delta re-syncs
'cp' and call->currentPacket after each location where the call->lock
may be dropped.


(cherry picked from commit 423ab97eee35f57beeb481cac2159d28dea20577)
2009-01-05 23:13:08 +00:00
Jeffrey Altman
d97ef4b087 DEVEL15-windows-license-smgl2rtf-20090105
LICENSE MIT

Ensure that the input string is nul terminated and then instruct
WideCharToMultiByte to compute the length itself instead of passing
in a value that is very likely to be wrong.


(cherry picked from commit e7edfbbf2204641ba08d0ae5e0d085e5f913f2d2)
2009-01-05 18:17:01 +00:00
Jeffrey Altman
0ebd363f1a DEVEL15-windows-afsd-freelance-20090105
LICENSE MIT

Bring a bit more sanity to the Freelance code:

1. Add functions cm_FreelanceFetchMountPointString and
   cm_FreelanceFetchFileType to cm_freelance.c.  These functions
   permit the MountPointString and FileType to be obtained within
   cm_GetSCache without requiring knowledge of data structures
   that should be private to cm_freelance.c

2. Enforce the rule that odd vnode values are directory objects.
   The root directory is 1 and everything else must be a multiple
   of two.

3. Use the unique field as an index into the localMountPoints
   array.

4. Fix cm_GetCallback to process freelance data refreshes on
   all objects in the freelance volume not just the root directory.
   If this is not done, an access to \\afs\foo prior to \\afs\all
   being evaluated will cause an unnecessary attempt to send a
   fetch status request to a file server and produce an alldown
   error.


(cherry picked from commit 8c4b06a5b62a07d4d6733b313ad404e1cb6abe8d)
2009-01-05 16:20:20 +00:00
Jeffrey Altman
f48ad2f737 DEVEL15-rx-packet-count-debugging-20090104
LICENSE MIT

change C preprocessor symbol required for packet count debugging
to RXDEBUG_PACKET


(cherry picked from commit 02cd4c510b2b9e2293e33372c39bd8b62089236b)
2009-01-05 00:00:20 +00:00
Jeffrey Altman
6bc2bacc50 DEVEL15-windows-client-config-manifest-20090104
LICENSE MIT
FIXES 123889

reverse change from 20081226.  removing the auto-generated manifest
removes the manifest binding to the run time library.  The reason
two manifests are specified is that we are merging them.


(cherry picked from commit bf51eaca47db1bbf58490d770f1be105e69f7ea9)
2009-01-04 19:19:49 +00:00
Jeffrey Altman
dbfcaa5569 DEVEL15-windows-version-20081229
LICENSE MIT

1.5.56 == 1.5.5600.0
openafs-devel-1_5_56-ifs openafs-devel-1_5_56
2008-12-30 04:27:54 +00:00
Jeffrey Altman
95ca8ff998 DEVEL15-windows-notes-20081229
LICENSE MIT

1.5.56
2008-12-29 23:21:01 +00:00
Jeffrey Altman
ae5dc76662 DEVEL15-windows-release-notes-20081229
LICENSE MIT

1.5.56
2008-12-29 22:51:32 +00:00
Jeffrey Altman
d460596131 DEVEL15-rx-packet-count-debugging-20081229
LICENSE MIT

Validating the state of the rx library is hard.  This patch makes it
a bit easier to validate from within crash dumps (or on Windows in
"fs memdump" output) whether rx packets and calls are in a sane state.
When the library is compiled with -DDEBUG the rx_call and rx_packet
data structures are extended to include a linked list of all allocated
objects and counters are added to track the number of packets on each
of the transmit, receive, and iovec queues.

This compliments the tracking of packet states via RX_PKTFLAGs.

For Windows, rx_DumpCalls and rx_DumpPackets functions are added
that will dump the state of all allocated calls and packets (in Checked
build) in response to a "fs memdump" command.  These functions are
exported from afsrpc.dll.


(cherry picked from commit 29e3bb5838ee224e8d13bf1e680e1eb9480f1400)
2008-12-29 22:38:25 +00:00
Derrick Brashear
e1bb3fcbcb DEVEL15-openafs-1-5-56-20081229
LICENSE IPL10

make openafs 1.5.56
2008-12-29 22:08:17 +00:00
Andrew Deason
a28a2ad2c1 DEVEL15-libuafs-updates-20081229
LICENSE IPL10
FIXES 124072

adds ATTR_* constants for UKERNEL code, and makes use
of them. Without this in some cases updating file metadata will also
update unrelated metadata (e.g. truncating a file changes the mode
bits).

adds threadsafe positional i/o calls to
afs_usrops.c: uafs_pwrite and uafs_pread, allowing for threadsafe
libuafs i/o.

changes the types of some fs-related
variables to be more "correct", I think (off_t for offsets, mode_t for
file mode, etc), it fixes a bug where nDaemons is not correctly set from
the uafs_Init parameter, fixes a segfault in uafs_open when O_CREAT is
specified, initializes a couple of static vars, "#if 0"s out code that
copies tokens from kernel-space to user-space (doesn't seem to work from
what I've seen, and the current code crashes on clientless Solaris
machines from being killed by SIGSYS)


(cherry picked from commit 3d44f93f9a0b1d2d4a07b58b3104420e9c138d12)
2008-12-29 21:26:12 +00:00
Derrick Brashear
2214f2bc46 DEVEL15-macos-103-fixes-20081229
LICENSE IPL10

make macos 10.3 work again


(cherry picked from commit c11eb4c3336f66a3f0fd92c3df41eb9765de050c)
2008-12-29 17:29:17 +00:00
Jeffrey Altman
84c4e9cf73 DEVEL15-rx-rdwr-writeproc-race-20081228
LICENSE MIT
FIXES 123799

prevent rx_WriteProc() from passing a packet to rxi_PrepareSendPacket()
that has been freed and possibly allocated to another call.


(cherry picked from commit d0cc6eb2f5f0aea0a6ad88de2d847f93d07cc8b9)
2008-12-28 21:05:00 +00:00
Jeffrey Altman
b74cf71aed DEVEL15-windows-smb-fs-attr-info-20081227
LICENSE MIT

even though the docs for FILE_FS_ATTRIBUTE_INFORMATION state
that the MaximumComponentNameLength field is in bytes, it turns
out that Windows SMB servers return the value in characters.

Reduce the reported value to 255 to match NTFS.


(cherry picked from commit 8f3e660270d9c1af268ba45118ab87740fbeeef8)
2008-12-28 04:41:48 +00:00
Jeffrey Altman
a8542e4bf5 DEVEL15-windows-libafsrpc-makefile-20081227
LICENSE MIT

additional defines are to be appended to AFSDEV_AUXCDEFINES,
they are not supposed to replace the prior definition


(cherry picked from commit f70ba203206a2953a3f51b48fe3455b9cad52eae)
2008-12-27 19:22:47 +00:00
Jeffrey Altman
19ad79e853 DEVEL15-windows-afsd-fs-attr-info-20081226
LICENSE MIT

Pointed out by jason edgecombe.  the AFS SMB server failed to report
the FILE_UNICODE_ON_DISK characteristic when responding to
TRANS2_QUERY_FS_INFORMATION.


(cherry picked from commit a09a1709f646087c2ceb6f484b45b48495ea1127)
2008-12-27 06:01:19 +00:00
Jeffrey Altman
6f5532f659 DEVEL15-windows-install-nsis-20081226
LICENSE MIT

permit the location of the NSIS application to be configurable


(cherry picked from commit f18b54bfe647cfee6a7072d11df04019161d8223)
2008-12-27 02:54:14 +00:00
Matt Benjamin
828ca0902d DEVEL15-windows-client-config-manifest-20081226
LICENSE BSD
FIXES 123889

remove extraneous reference to the output manifest file which resulted
in two manifests being generated with conflicting UAC values.


(cherry picked from commit 06468cb9393aca2c58cc75ee51bfb50f56957c52)
2008-12-27 02:27:56 +00:00
Jeffrey Altman
663abb1402 DEVEL15-windows-afsd-btree-lookups-20081226
LICENSE MIT

when performing a lookup operation it is acceptable for the data version
of the btree to be greater than the data version of the cm_dirOp_t
under which the operation is being performed.  No change to the btree
can take place and the result of the lookup will maintain consistency
without requiring an additional restart of the directory operation.


(cherry picked from commit 61aa1b199c28abc763456b35a644047cb9bafc18)
2008-12-26 23:40:23 +00:00
Jeffrey Altman
49f6f9e74b DEVEL15-windows-afsd-dir-prefetch-20081226
LICENSE MIT

when prefetching the directory buffers do not call cm_FlushFile to
discard locally modified buffers.  Instead just set the cm_scache_t
bufDataVersionLow to the current version.  out of date buffers will
therefore be ignored without requiring that locks be dropped and
reacquired and without searching all of the buffers associated with
the directory.


(cherry picked from commit 4435c4fdcc6ba21b86277cfd09b0dfa1b88989c5)
2008-12-26 23:34:37 +00:00
Jeffrey Altman
bba0427a2d DEVEL15-windows-afsd-max-daemons-20081226
LICENSE MIT

permit the number of daemon threads to be increased to 64 instead of
a maximum of 8.


(cherry picked from commit 9784a9f0cc35cf485c5f9533db9dd8247df3b7c3)
2008-12-26 23:29:32 +00:00
Jeffrey Altman
de7ba27c1d DEVEL15-windows-afsd-rename-collision-20081226
LICENSE MIT

Do not permit cm_Rename() to rename an existing object such that it
creates a case-insensitive name collision with another object.
This change in behavior is consistent with the restrictions when
creating new objects.  This change prevents the explorer shell from
getting confused when it creates a new folder.


(cherry picked from commit 9e2d9f6fa8862d33dfc7352c961f7945d0e04f4f)
2008-12-26 23:26:18 +00:00
Jeffrey Altman
574390a796 DEVEL15-windows-pioctl-drive-subst-20081226
LICENSE MIT

GetDriveType() will return "REMOTE" for drive letters that are mapped
to network devices via the SUBST command.  Recursively check drive letters
for the final substitution before checking to see if the drive letter
is in fact an AFS device.


(cherry picked from commit 238ad07e13a85366bcf49a309e3735d26ff51ff2)
2008-12-26 21:18:20 +00:00
Matt Benjamin
a0c6d134b7 DEVEL15-windows-afsd-findserverbyip-refcount-20081223
LICENSE BSD
FIXES 124054

reference count the server object returned by cm_FindServerByIP


(cherry picked from commit 411a63fb063cf24d6b9aedeb83df2eb58716e239)
2008-12-23 20:42:56 +00:00
Derrick Brashear
4d67ef3394 DEVEL15-solaris-largepartition-interface-20081222
LICENSE IPL10

add support for using statvfs64 on solaris


(cherry picked from commit 556b9780517376c688c965dd446506cac1a0353b)
2008-12-22 20:34:23 +00:00
Derrick Brashear
749efab5cf DEVEL15-ubik-serverinit-clones-correction-20081222
LICENSE IPL10

as pointed out by Simon Wilkinson


(cherry picked from commit 72cb3a5f18f0483515dd82f8c851309003cf3a2f)
2008-12-22 19:23:17 +00:00
Tom Kula
78b7f12fbd DEVEL15-vol-dump-incr-largefile-support-20081222
LICENSE IPL10
FIXES 123984

add large file support for >2gb dumps; add incremental support


(cherry picked from commit d2ae1c99523ac4150a0d5536593781dbccfc1408)
2008-12-22 19:01:58 +00:00
Jeffrey Hutzelman
20cfb23d2e DEVEL15-doxygen-getfid-correction-20081222
LICENSE IPL10

correct out param description


(cherry picked from commit 0c52c9b3d900f610822249765b6a441422361888)
2008-12-22 17:31:09 +00:00
Derrick Brashear
6a9a414dbe DEVEL15-rx-idledead-only-ignore-keepalives-20081222
LICENSE IPL10

critical to not ignore e.g. other acks


(cherry picked from commit c69fa8fef4de43182d9e6ebad1d5c1db71148d6d)
2008-12-22 17:14:47 +00:00
Jeffrey Altman
505fd52f11 DEVEL15-rxgen-cpp-definition-20081221
LICENSE MIT
FIXES 124011

avoid "ologo" compilation error messages due to buffer overflow in rxgen
on Windows.  research performed by mlane@sinenomine.net.


(cherry picked from commit 992ec096332c31f64e8cff66e20d2ab87708485f)
2008-12-21 06:05:33 +00:00
Jeffrey Altman
fce5bacad4 DEVEL15-tweak-vicelog-macros-20081221
LICENSE IPL10

add missing semi-colons left out from DELTA tweak-vicelog-macros-20081218


(cherry picked from commit 46abfec0c74e6a1d4c5c76afcd24192484e2d0fa)
2008-12-21 06:00:41 +00:00
Jeffrey Altman
95625ad563 DEVEL15-audit-consolidate-open-20081221
LICENSE IPL10
FIXES 123923

fix audit-consolidate-open-20081217 which broke the Windows build.


(cherry picked from commit dbc92bde39361c9741828be7a2151e521c9aeef9)
2008-12-21 05:47:25 +00:00
Simon Wilkinson
7240f57058 DEVEL15-tweak-vicelog-macros-20081218
LICENSE IPL10

deal with macro semicolon confusion for vicelog


(cherry picked from commit 12297b95885d030e5cae6bec2543bdeb3e65b5ee)
2008-12-18 14:05:21 +00:00
Steve McIntosh
95e5fb1ebe DEVEL15-audit-consolidate-open-20081217
LICENSE IPL10
FIXES 123923

consolidate opening auditlog in one place; make opening nonblock easier


(cherry picked from commit 539dc6f501459712136f574744dba196598bee0b)
2008-12-17 18:14:59 +00:00
Steve McIntosh
dcdbb4c686 DEVEL15-auditlog-fids-20081217
LICENSE IPL10
FIXES 123922

make auditlog process multiple fids correctly


(cherry picked from commit 8271c1674f75f80804d08e0f4ed3178b61b29eff)
2008-12-17 18:12:10 +00:00
Jeffrey Altman
15a67cf887 DEVEL15-windows-afsd-smb-error-mapping-20081217
LICENSE MIT

map ENOMEM to STATUS_OUT_OF_MEMORY


(cherry picked from commit dc4429487fbfc7a41f266b36d0f86ab32eb24e75)
2008-12-17 16:19:42 +00:00
Derrick Brashear
4c013705b1 DEVEL15-irix-prototype-fixage-20081216
LICENSE IPL10

more cleanup to make prototypes match functions on irix


(cherry picked from commit df90f5510a057d77a486a1b667f91ff63ad17fd2)
2008-12-16 21:49:04 +00:00
Derrick Brashear
4e442df9ed DEVEL15-irix-close-vnop-typo-20081216
LICENSE IPL10

fix irix close vnop prototype to be correct


(cherry picked from commit dfc38ea7e950990eb4047d49892f4903b5c9b945)
2008-12-16 21:05:35 +00:00
Jeffrey Altman
3762cac6e2 DEVEL15-rxdebug-tconn-flags-20081216
LICENSE MIT

permit rxdebug to display the RX_CONN_KNOW_WINDOW, RX_CONN_RESET,
RX_CONN_BUSY, and RX_CONN_ATTACHWAIT flags
2008-12-16 17:26:03 +00:00
Garry Zacheiss
6e6ced8aa4 DEVEL15-butc-xbsa-64bit-linux-20081215
LICENSE IPL10

use the 64 bit libraries when built for amd64


(cherry picked from commit 00d5f88fa5b09b795edf8fdf04b3a19bb577506f)
2008-12-15 22:20:48 +00:00
Derrick Brashear
ba4f26dcc8 DEVEL15-fbsd71-like-current-20081215
LICENSE IPL10
FIXES 123917

rpc is in sys now, like in current. tweaked from matt's patch to also
deal with amd64


(cherry picked from commit 1754101972ffb9b2d36c39656dac04464c5e9798)
2008-12-15 20:51:09 +00:00
Matt Benjamin
7178dd06e8 DEVEL15-amd64-fbsd-20081215
LICENSE IPL10
FIXES 123811

add support for fbsd 7.1, amd64 fbsd


(cherry picked from commit c63e2541e5879fe153238ad1d774f60fa00dc0ee)
2008-12-15 20:38:05 +00:00
Derrick Brashear
ad02e98daf DEVEL15-aix-prototype-fixes-20081215
LICENSE IPL10

make the prototyping changes work on aix


(cherry picked from commit b147521611a73d0578aca14b3252e062de1e5d8a)
2008-12-15 19:12:19 +00:00
Derrick Brashear
670557b556 DEVEL15-solaris-vnop-prototyping-20081213
LICENSE IPL10

make the head sane on solaris again


(cherry picked from commit 7714162e9abb046e67d0fc68578a2e3d68ef2156)
2008-12-13 21:31:09 +00:00
Derrick Brashear
dce4cd552a DEVEL15-eliminate-cplusplus-style-comments-20081209
LICENSE IPL10

aix compiler hates // style comments


(cherry picked from commit 1f9467f9b7e3d6bc49267a32a7e2238c6d829ef0)
2008-12-09 17:05:11 +00:00
Jeffrey Altman
4ec022d984 DEVEL15-windows-afsd-ntstatus-wouldblock-20081208
LICENSE MIT

Change the mapping of CM_ERROR_WOULDBLOCK from
STATUS_LOCK_NOT_GRANTED to STATUS_CANT_WAIT.
STATUS_LOCK_NOT_GRANTED is used to indicate
CM_ERROR_LOCK_NOT_GRANTED.


(cherry picked from commit 9123966e43bc2f708baba756530aa90fcfe5e93d)
2008-12-08 16:25:54 +00:00
Derrick Brashear
42cc904d37 DEVEL15-missing-comerr-header-includes-20081130
LICENSE IPL10
FIXES 123676

include com_err header in places where it's not so afs_error_message et al
exist


(cherry picked from commit 8166bd1d199f5a34225a49173b17e4682b5c3a84)
2008-11-30 20:24:36 +00:00
Douglas Engert
625ec1a639 DEVEL15-solaris-fs-agnostic-cache-20081130
LICENSE IPL10
FIXES 123677

make the cache able to be filesystem-agnostic so a ZFS cache is possible


(cherry picked from commit 29457b1ca71518b29bb9e9e934c58e6fa4b9877a)
2008-11-30 20:21:08 +00:00
Andrew Deason
22aa758156 DEVEL15-linux-nonfh-cache-file-handling-20081130
LICENSE IPL10
FIXES 123771

go back to referencing f.inode and not ainode when not using the fh cachefiles.
put back the dcache reference again.


(cherry picked from commit 4db6293a06ff573eb650cbf9bbf53440a7ee83a2)
2008-11-30 20:17:24 +00:00
Dragos Tatulea
f6d6bd6027 DEVEL15-disconnected-refcount-fixes-20081130
LICENSE IPL10
FIXES 123714

fix code which tweaks refcounts on disconnected vcaches to be correct


(cherry picked from commit fb549013e7bb2cf5cb3da3083349cb559c093e8f)
2008-11-30 20:11:17 +00:00