Commit Graph

3948 Commits

Author SHA1 Message Date
Asanka Herath
a57531592b windows-optimize-smb-dir-search-if-no-wildcard-20061217
When performing a SMB FindFirst/FindNext/FindClose operation if there
are no wildcards involved, we can optimize the case and turn it from
O(n) to O(1) where 'n' is the number of entries in the directory.
This can be done by performing a cm_Lookup() and if it succeeds,
constructing the appropriate response instead of parsing the contents
of each buffer associated with the directory looking for matches.

Without this optimization, FindFirst operations on directories containing
thousands of entries can take a large number of seconds to complete.
2006-12-17 21:05:28 +00:00
Jeffrey Altman
5b56a0b8eb rx-fix-lock-init-20061216
When rxBind was added it made an assumption that rx_GetIFInfo could be
called before rx_InitXYZ.  This is true on non-Windows platforms, but
on Windows rxGetIFInfo relies on an initialized mutex.  This patch adds
a DllMain for Windows in order to initialize the mutex object upon DLL
load.
2006-12-17 01:21:52 +00:00
Derrick Brashear
d5583808e8 vldb-repair-tool-20061216
make vldb_check able to repair at least some kinds of damage

run it on a vldb which does not have a server operating live on it
verify the result with vldb_check before using.
2006-12-16 06:25:24 +00:00
Derrick Brashear
35fae890e2 ubik-better-debug-logging-in-remote-20061215
log when we get errors doing remote sync what it was, rather than covering it up
2006-12-15 16:37:03 +00:00
Jeffrey Altman
04daebb95e windows-custom-control-subclassing-bis-20061212
Do not link to both talocale.lib and taafsapplib.lib.

If you do, then there are duplicate functions in both the .EXE and
the TaAfsAppLib.DLL.
2006-12-13 00:25:23 +00:00
Jeffrey Altman
70c350c6d0 windows-custom-control-subclassing-20061212
While investigating the reasons behind the Drive Mapping listbox
failing to permit entries 2 or above to be edited or removed and
the text string being truncated to two characters (on some systems)
I discovered that the subclasses were being recompiled into each
application instead of linking against the DLL that contains the
controls.

The custom controls have been renamed to address name space issues.

The "Drive X:" label changed to "X:" to permit single character item
selection within the listbox.

Still have no idea what is really going on.  Spy++ shows the Windows
messages being sent to the correct Windows.  However, the getcount
message never obtains a value other than 0 or 1.  This is probably
why the selection code is broken.  Still working on it.
2006-12-12 20:37:44 +00:00
Jeffrey Altman
f126802236 windows-sleep-when-out-of-buffers-20061212
When there are no free buffers, don't loop continuously.
Sleep so that the other threads that are holding the buffers
can grab the global buffer lock and release them.
2006-12-12 17:02:37 +00:00
Jeffrey Altman
0919636307 windows-afsd-20061211
(1) Power Management improvements.  Maintain a global flag that
    specifies whether or not the service is in a suspend state.
    Do not panic if Netbios() returns NRC_BRIDGE meaning that the
    lana is no longer valid.  Instead, stop the listener threads
    and if all listener threads are stopped, reset the lana_list.
    Allow the cm_Daemon() thread to periodically check the state
    of the smb listeners.  If they are all stopped and the service
    is not suspended, attempt to restart them.  If there are no valid
    lanas, return to the stopped state.

(2) CreateX and NTCreateX use cm_CheckNTOpen() to test whether or not
    the user is permitted to obtain read or write locks.  This function
    would obtain the lock and then drop it returning whether or not
    the lock could be obtained.  If the lock was in fact required,
    CreateX/NTCreateX would then obtain it with cm_Lock().  The problem
    of course being that this pattern results in three RPCs to the
    file server (lock, unlock, lock).  This is reduced to one RPC by
    implementing cm_CheckNTOpenDone() which frees the allocated byte
    range lock from cm_CheckNTOpen() after the cm_Lock() call is
    performed.

(3) Remove unused code.

(4) Add debugging to SMB Directory Search functions.

(5) Increase the SMB Ioctl MaxData size
2006-12-12 04:00:40 +00:00
Russ Allbery
08bb3f6391 kaserver-log-tgtreq-20061206
Separately log TGT requests in addition to logging the authentication so
that one can distinguish in the logs between Kerberos v4 clients and uses
of klog.
2006-12-06 20:00:48 +00:00
Derrick Brashear
112604e9c3 rx-preparesendpacket-avoid-double-free-20061205
wow, this is special

existed forever but only when we stopped leaking packets did it become a problem

anyway, don't free packets and forget to reduce the number of packets in play
2006-12-05 19:38:44 +00:00
Russ Allbery
71a1d8a025 docbook-quickguide-cleanup-20061201
Remove generated files from CVS.

====================
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.
====================

Some initial obvious cleanup.  Removed all the sections on Digital UNIX,
changed IBM AFS to OpenAFS throughout, and reformatted and cleaned up the
front matter and some of the first few pages.
2006-12-02 03:56:17 +00:00
Russ Allbery
f544468443 docbook-quickguide-makefile-20061201
Add some comments to the makefile, set up dependencies to build the index
automatically, remove a bunch of unnecessary @-signs in front of commands,
and add a clean target.
2006-12-02 02:22:34 +00:00
Russ Allbery
ddc66bbff0 pam-aklog-now-external-20061201
Remove pam_aklog.  pam_afs_session will be developed and distributed as an
external project instead.
2006-12-02 01:44:50 +00:00
Derrick Brashear
b81763506f give-s390x-syscall-table-the-big-hammer-20061201
Neale Ferguson contributed the assembler.

The false illusion of security some people want to play under is usually good for wasting a few hours; it was here. making the sys_call_table read nly for real of course fixes it, let's just hope keyrings come along before then on such platforms.
2006-12-01 18:48:26 +00:00
Derrick Brashear
9ba1d32b4b redhat-packaging-updates-20061201
updates from derek

updates for s390x

updates to handle suse
2006-12-01 18:32:49 +00:00
Derrick Brashear
af6af0bbc4 redhat-initscripts-update-for-suse-20061201
suse lacks /etc/init.d/functions
2006-12-01 12:52:38 +00:00
Derrick Brashear
45425b2f22 cprivate-ticketlen-is-32-not-16-20061129
everyone else thinks ticketLen is 32 bits. contrary to what arby's says, different is not necessarily better.
2006-11-29 21:22:38 +00:00
Jeffrey Altman
d253bde457 windows-dirty-buffer-optimization-20061128
The old dirty buffer synchronization algorithm had a buf_IncrSyncer
thread walking the all buffer list periodically searching for dirty
buffers to write to the file server.  This had several negative
results.  The alogirithm ate up ever increasing amounts of CPU time
even when AFS is idle as the size of the cache increases.  Also,
buffers were written to the file server in an order based upon the
original buffer allocation which has nothing to do with the order
in which the buffers became dirty.

The new algorithm maintains a dirty buffer list.  Items are added
when the buffer is originally marked dirty.  A buffer is only
removed from the list by the buf_IncrSyncer when the buffer is no
longer dirty.  If the list is empty the thread goes back to thread
immediately without additional processing requirements.
2006-11-29 06:23:00 +00:00
Jeffrey Altman
1c661a198e volser-cleanup-xx-20061128
cleanup the return code handling from

  DELTA volser-dump-validate-input-20060417
2006-11-28 09:30:58 +00:00
Jeffrey Altman
1ed0460435 windows-smb-dont-crash-vista-20061128
Unlike previous versions of the OS, Vista performs a shutdown on
the Microsoft Loopback adapter just like it would on a real adapter.
This causes the smb_Listener threads to trigger a panic during a
suspend/hibernate power event.

The fix is to unbind from the network adapters in response to a
suspend/hibernate power event and then rebind to the adapters
when a resume power event is received.  Note that the resume events
are not reliably delivered so it is possible the afs service will
not be accessible.  However, this is the best we can do.
2006-11-28 09:16:36 +00:00
Jeffrey Altman
cb1997aad8 windows-conn-analyze-20061128
force an rx connection reset if VICECONNBAD or VICETOKENDEAD are
received
2006-11-28 09:05:10 +00:00
Jeffrey Altman
97733f8dcf windows-afslogon-dont-modify-environment-20061128
don't allow environment variables we set to be inherited by child
processes
2006-11-28 08:59:43 +00:00
Russ Allbery
769f4e49b6 thiscell-whitespace-20061120
Be more liberal when parsing ThisCell.  Accept and ignore leading and
trailing whitespace and anything after the first whitespace character on
the first line.  Return an error for a read error or for an empty cell
name.
2006-11-21 00:56:14 +00:00
Russ Allbery
40976a1f88 param-common-fix-20061120
Rather than setting AFS_PARAM_COMMON as part of the sysname guessing code,
guess the sysname first and then sent AFS_PARAM_COMMON in a separate case
statement based on the results.  Otherwise, it isn't set when
--with-afs-sysname is used explicitly, resulting in a broken Linux build.
2006-11-20 23:50:42 +00:00
Russ Allbery
778e2d5f18 relative-path-canonicalization-20061120
Path canonicalization for commands such as bos getlog was only applied for
absolute paths; relative paths were still constructed relative to the
canonical directory.  Modify the path canonicalization routines to also
canonicalize the base directory for relative paths.
2006-11-20 23:33:33 +00:00
Jeffrey Altman
848d2f1caa windows-netidmgr-plugin-vista-vs2005-20061120
Define _USE_32BIT_TIME_T since that is what tokens contain.

Use cflagsdll instead of cflagsmt to avoid multiply defined entry points
2006-11-20 18:53:28 +00:00
Jeffrey Altman
4a3482f9e6 windows-remove-unused-libs-20061120
rpcndr.lib and largeint.lib are no longer used.
rpcndr.lib no longer exists in the Vista SDK.
2006-11-20 18:03:03 +00:00
Jeffrey Altman
7fff96e0cf windows-smb-rename-offline-folders-20061111
FIXES 45692

when offline folders are enabled, the old file name sent in a rename
operation is sent in all uppercase even when the file name is not.
this patch attempts a case insensitive match after the case sensitive
match fails.
2006-11-11 07:12:10 +00:00
Derrick Brashear
1d6da37c59 revert-inactivevcache-hold-lock-20061109
fails verification. come back to it
2006-11-10 04:33:59 +00:00
Derrick Brashear
6766285fc2 macos-preupgrade-script-20061109
update the preupgrade script
2006-11-10 04:09:16 +00:00
Chas Williams
2110d5e843 kill-stat-blksize-20061109
FIXES 42663

don't provide a bogus hint
2006-11-10 04:02:01 +00:00
Derrick Brashear
24487b5ba2 leopard-updates-20061109
make things work with current seeds
2006-11-10 00:14:16 +00:00
Chas Williams
789bf060d2 linux-blkbits-20061109
FIXES 42671

set blkbits if we have it
2006-11-10 00:06:44 +00:00
Marc Dionne
c12c958feb linux-statfs-dentry-20061109
FIXES 42788

statfs changed in recent linux kernels. cope.
2006-11-09 23:40:20 +00:00
Chas Williams
ee8ae61a4d linux-config-h-died-20061109
FIXES 42662

config.h vanished. deal.
2006-11-09 23:10:51 +00:00
Chas Williams
6975fcb202 inactivevcache-hold-lock-20061109
FIXES 42798

hold a lock while we are in InactiveVCache
2006-11-09 23:02:32 +00:00
Chas Williams
dd508cf7b4 linux26-disable-backing-readahead-20061109
FIXES 42797

disable vm readahead, we don't want it
2006-11-09 22:53:46 +00:00
Jeffrey Altman
398ceb0775 windows-buf-flush-20061109
FIXES 44330

The return value of buf_CleanAsync is not an error value but a flag
indicating whether or not the buffer was in fact dirty.  Do not treat
it as an error.  The error state is stored in the buffer itself.
2006-11-09 21:25:28 +00:00
Jeffrey Hutzelman
ea4e9f1841 bozo-avoid-garbage-in-allprocs-20061108
if we error, don't put garbage in allProcs
2006-11-09 02:13:13 +00:00
Jeffrey Hutzelman
9ea216fc98 amd64-better-range-checking-20061108
FIXES 44198

check entire mapped space
2006-11-08 18:56:08 +00:00
Russ Allbery
46cfe72898 aklog-doc-improvements-20061105
Document (at least partially) AFS's mapping of Kerberos v5 principal names
to Kerberos v4 format in the aklog man page.  Also document that -setpag
may not always work.
2006-11-06 04:24:42 +00:00
Russ Allbery
f820125521 afsd-shutdown-doc-improvement-20061105
Change the CAUTIONS about afsd -shutdown to be less dire and more accurate,
as this now mostly works on Linux.
2006-11-06 04:16:09 +00:00
Jeffrey Altman
bf5bfc0663 rxkad-server-bad-ticket-part-two-20061103
FIXES 43862

Ensure that tkt_DecodeTicket and rxkad_CheckResponse return the right
RXKAD errors for ticket expiration or invalidity.  Avoid calling
tkt_CheckTimes twice in rxkad_CheckResponse
2006-11-04 23:49:45 +00:00
Jeffrey Altman
799caa43b5 rxkad-server-bad-ticket-20061103
FIXES 43862

The file server has been returning RXKADNOAUTH when the time between
the client and server is out of sync.  tkt_CheckTimes returns -1 for
recently expired tickets and -2 for tickets that have been expired for
a while.  In the -2 case we must return RXKADBADTICKET not RXKADNOAUTH.
2006-11-04 15:34:58 +00:00
Jeffrey Altman
8dd192a8dd windows-afs-config-stat-entries-20061103
raise max stat entries in the control from 10000
to 262144
2006-11-03 07:54:22 +00:00
Jim Rees
b0ac8662ab fix-help-msg-20061031
Fix -help message, which was chopping off the "Usage: fileserver " part.
Get rid of silly private buffer and use stdio while we're at it.
2006-10-31 17:03:51 +00:00
Marcus Watts
9dc762e8e6 k5-klog-20061026
k5 version of klog
2006-10-27 00:39:15 +00:00
Marcus Watts
db4faa0656 aklog-lib-order-20061026
fix lib ordering
2006-10-26 17:49:38 +00:00
Jim Rees
c5fd006bf8 use-strdup-20061026
use strdup instead of rolling our own
2006-10-26 17:34:31 +00:00
Jim Rees
997454bd10 more-small-obsd-tweaks-20061026
Mention how to build aklog.
Don't even try to build kdump for [ofn]bsd.
2006-10-26 17:13:32 +00:00