LICENSE IPL10
FIXES 104698, 104699, 104305
make cellname get init'd right. correct startup argument order to match
what afsd does. call lookupname correctly (when did this break?)
at the same time, move the lookupname define out of afs_osi.h and into each
osi_machdep.h
(cherry picked from commit c61a8f37c9957034961aed8abc2a1adb046247d3)
LICENSE IPL10
FIXES 105231
update specfile for new manpages.
update patch for 1.5.x/head
update makesrpm to quote some arguments to system so perl doesn't eat them
some rewriting from shadow@dementia.org including the patch update
(cherry picked from commit 0d343077ac1ca8bd35921de2a2b19cac4eb75496)
LICENSE IPL10
return 0 and not tbuffer on success since tbuffer is already returned via
a pointer
(cherry picked from commit 19551ae3a541644013f6e9e92d9354ec14cbc00e)
LICENSE IPL10
FIXES 105109
exportfs - NFS translator:
- The exportfs code is updated for the new export ops. The changes are made
conditional on a new configure test that detects the new ops. fh_to_dentry()
basically replaces decode_fh and uses our own get_dentry function instead of the
now defunct find_exported_dentry.
- A check for fh_len=4 is removed - in testing this value is always 6, possibly
because of changes in the kernel code.
- The check for authtab in osi_nfssrv.c assumes that an undefined weak symbol is
0. On my system, an unresolved weak symbol in a loaded module gets the value
0xfffffffe (-2 or -ENOENT) - again, probably a change on the kernel side. Check
that the pointer is not an error constant using IS_ERR().
- In osi_vfsops.c, only use the export_ops bits if building the translator
afspag: the problem here was dealing with unresolved symbols
- afs_showflags is redefined in afs_pag_call.c so it's available for the afspag
module
- A new source file afs_warn.c gets the afs_warn* functions from afs_util.c.
This allows the afspag module to get the afs_warnuser function without dragging
in too many symbols. The new file is attached separately.
other:
- d_path() now takes a struct path argument - includes a new configure test
- osi_vfsmnt -> osi_vfsmount in osi_misc.c Looked like a typo?
- reorder the remove_proc_entry() calls - we need to remove the children before
the parent (introduced with my earlier patch)
(cherry picked from commit daf6b1cf282c895bb7cd3cb090e5bee06648cd16)
LICENSE IPL10
FIXES 104732
use NULL and not (void *)0 to avoid issues on 64 bit platforms
(cherry picked from commit e22a5cc8afe889d5d76ecf44a63860e12f1effbf)
LICENSE MIT
When an SMB virtual circuit is prematurely closed due to an error
condition by one thread it is possible that there are still several
other threads still using the VC which will determine that the VC
is dead shortly. As a result we maintain a dead vc list to ensure
that dead vcs are not destroyed while still in use.
With the addition of locking though this causes a problem because the
locks allocated to the virtual circuit are not freed until the vc is
destroyed.
This patch reworks the cleanup routine to make the freeing of resources
the responsibility of the release routine when the refcount hits 0
and the VC is marked dead.
(cherry picked from commit 49db6afe0aeb646d712a5319a7ea1a511f66f298)
LICENSE MIT
When constructing the shortname keyed entry in the tree, make
sure that the original long name is preserved.
(cherry picked from commit b5d888ed404840e5a25a26880daaf47ab415b282)
LICENSE MIT
It is frequently the case that rx_getAllAddr() is called before
rx_Init() or rx_InitHost(). rx_getAllAddr() obtains the list of
interfaces by using rx_GetIFInfo() which in turn computes and
allocates the number of addition rx packets. Unfortunately,
rxi_MorePackets() relies on the existence of an initialized mutex
and the mutex is not initialized (on Windows) until the rx_InitHost()
call. Therefore, we must delay the rxi_MorePackets() call until
after rx_InitHost() if rx_getAllAddr() is called previously.
Failure to do so results in a panic.
(cherry picked from commit 749ae65481ebc70f310fdd79d2cb0139a636f27e)
LICENSE MIT
Add lock assertions to various functions.
Obtain a missing lock around a call to cm_RemoveSCacheFromHashTable().
Correct an abstraction layer violation. cm_scache_t objects should
be marked deleted in cm_Unlink() and cm_RemoveDir() and not in
smb_CloseFID(). Cleanup of deleted cm_scache_t objects should be
performed in cm_ReleaseSCache() when the reference count hits zero.
Prototype cm_AdjustScacheLRU() and re-implement it using osi_QAddH().
(cherry picked from commit 52490d7968c2008912ab0887bdcde7fbba43b837)
LICENSE MIT
Use afsd_logp instead of smb_logp in osi_LogX() calls.
Do not violate layer abstraction.
(cherry picked from commit 3306c0887b62ca940808174906c2579b3b7d939a)
LICENSE MIT
If the attempt to write the buffer returns access denied, store that
in the cm_buf_t object so that the error can be propagated.
(cherry picked from commit 15ff831e4dfa8d2942536d002b86579f6128a5df)
LICENSE MIT
Prevent corruption of the cm_data.scacheHashTablep lists when removing
and then re-adding entries to the hash table. The cm_scache_t nextp
fields were not being reset to NULL which permitted loops to be created.
(cherry picked from commit ef48d6343d9ac929a4a2ae88184f7801ace1e3d1)
LICENSE MIT
when deleting entries from a directory for items with non-8.3 names
memory for the longname field would be leaked. don't do that.
(cherry picked from commit 39d2ac1438c5708dc64098e5de10cd55efd6e93b)
LICENSE MIT
%T is not portable to Windows. Replace it with the equivalent %H:%M:%S
format string.
(cherry picked from commit 11350e8024c8413dab5f91cfcd2155d26356329f)
LICENSE IPL10
protects against direct loops, which we have seen in the wild, but not more (yet)
(cherry picked from commit e2ce8710efc93f7172b9d4daaf685c6f2669f7c3)
LICENSE BSD
Add documentation of foreign realm user registration and cross-realm PTS
groups. Add documentation of missing ptserver flags. Add some additional
to-do entries for the man pages.
(cherry picked from commit 1fdfac7065b85feafcfa3f9fc382cfd90680d67f)
LICENSE IPL10
FIXES 100836
official mountpoints end in a .; treat others as symlinks to avoid creating
files which can't be removed
(cherry picked from commit 0da0a9d4d2e5b2d39495e57b9840ce0acdd961e2)
LICENSE MIT
lastYesHost is already in network byte order. do not reorder it again
when displaying it.
(cherry picked from commit b5dc1903a4bca5bae099beec0b95840df7282250)
LICENSE IPL10
FIXES 20727
not our bug, but, previous code refactoring broke rx. put back keepalives in cli
ent rx connections while they are turned around.
(cherry picked from commit c34822d6105cef7f68423e4ebbf485b2d11b9635)