Required to placate AIX compiler
====================
This delta was composed from multiple commits as part of the CVS->Git migration.
The checkin message with each commit was inconsistent.
The following are the additional commit messages.
====================
Ports used by additional MRAFS services
====================
This delta was composed from multiple commits as part of the CVS->Git migration.
The checkin message with each commit was inconsistent.
The following are the additional commit messages.
====================
mrafs port definitions
" Extensions used by MR-AFS in the client. I have added only two
pioctl-calls which are used by the "fs"-command for a large number
of MR-AFS specific subcommands. With this modification also the
data type afs_int64 is introduced because MR-AFS supports large files.
afs_int64 is either "long long" or a structure consisting of two
32-bit numbers. We are already running on rs_aix42 a fully large-file
capable AFS-client, but these changes are still in a beta test and
not yet added here."
"Problem:
During a directory scan W2K does not send the FindClose the way NT does.
When smb_ReceiveTran2SearchDir() processes FindFirst or FindNext, the
termination Flags is never set either (close search if end of search).
Since these operations don't occur smb_DeleteDirSearch() is never called;
therefore the dsp (smb_dirSearch_t) is never freed.
This problem was reproducible while trying to scan a directory (e.g. dir
*.c/s) with symbolic links.
When smb_ReceiveTran2SearchDir() processes FindFirst or FindNext the last
SMB call in a session can be indicated by checking for no more files
(filesnames==0).
Running a directory scan (DOS window) and file cache size of 5 MB:
With the memory leak patch, the program grew upto the limit of +5.3MB.
Without the patch, the program will grew +27MB before the operation was
finished, then became unstable."
First guess at this file based on master(4); I haven't
tried this yet but since it seems to be for the build-into-
kernel module I assume we don't need:
d dynamically loadable kernel module
R auto-registrable dynamically loadable kernel module
N don't allow auto-unload of dynamically loadable kernel module
and I don't know if we'd need or be able to use R, either.
Afs_ to match what previous systems seem to be doing; For
symmetry it looks like it should be e.g. afs_
". afs_dentry_iput is essentially osi_iput, so it now calls osi_iput
it wasnt locking before checking i_count (and osi_iput didnt either)
osi_iput now AFS_GLOCK's. to do this afs_delete_inode was split
into afs_delete_inode (which does the locking) and osi_clear_inode
before osi_iput called afs_delete_inode, which since it wanted
to hold AFS_GLOCK, osi_iput couldnt call AFS_GLOCK. this seems
to have cured the problem i saw (running multiple 'ls -R &' would
cause a bad iput w/o fail) and i hope it fixes it otherwise.
its possible vc->lock should be held inside osi_clear_inode.
. removed osi_notify_change (i added during 2.4.0 development) and
now i just call inode_change_ok/inode_setattr. the 2.4.0
notify_change checks the dentry parent (which doenst exist for
the cache inodes)
. moved the locks around inside writepage, writepage_sync, commit_write.
the guy next door complained about pauses while running afs. i think
this addresses those issues. apparently you only need to lock_kernel()
during commit_write(). in order to get lock_kernel() inside AFS_GLOCK()
the AFS_GLOCK() was moved out of writepage_sync and into writepage
and commit_write"
This patch causes the bosserver to use a "BosConfig.new" file if one is
found on startup, which will allow admins to prepare a new BosConfig
file to be picked up at rebozo time. (This is not possible now because
the bosserver likes overwriting the BosConfig file while it's running)
This patch enables the bosserver to be placed in a restricted mode in
which AFS superusers are only granted limited access to the server host.
The following functionality is disabled when restricted mode is in use:
bos exec
bos getlog (except for files with no '/'s in their name)*
bos create *
bos delete
bos install
bos uninstall
* specific exceptions are made for functionality that "bos salvage" uses:
a cron bnode who's name is "salvage-tmp", time is now, and command begins with
"/usr/afs/bin/salvager" may be created. This bnode deletes itself when
complete, so no special "delete" support is needed. This functionality
may be removed in the future if a "Salvage" RPC is implimented.
The file with the exact path /usr/afs/logs/SalvageLog may be fetched,
since that is how bos salvage [...] -showlog is implimented.
Restricted mode is enabled using a new bos command (bos setrestricted)
or bossever command line switch (bosserver -restricted). Restricted mode
can be disabled by a) sending the bosserver process a SIGFPE (which will
then allow restricted operations until the next restart or setrestricted
command) or b) editing /usr/afs/local/BosConfig (or BosConfig.new), and
restarting the bosserver.
"The following patch is to addresses problems with the Drive Letters tabs in
the AFS Client and AFS Control Panel when using submounts which start with
the letters afs. We had a test cell up and running with a name that started
with afs01 and this caused the afs client to misbehave."
Make krb_udp try kerberos-iv as a fallback (from the original default of
kerberos4) before going to "kerberos". "kerberos" incidentally is 88 on all
modern platforms, so lord forbid you want to run this and something which
can actually answer krb5 requests, if you're using the default services.
Also minor fix for the size of an answer packet.