490 Commits

Author SHA1 Message Date
Jeffrey Altman
79a6d12991 STABLE14-windows-asetkey-20050612
Add asetkey.exe to the Windows distribution


(cherry picked from commit a08552748100597bea748b17a9ae1b8ddf4a9aa7)
2005-06-12 12:26:15 +00:00
Jeffrey Altman
e24ece5644 STABLE14-windows-afslogon-20050610
replace wfhile(TRUE) with while(afsAutoStart)


(cherry picked from commit a70bec720087aab99909861c346cc59d14107278)
2005-06-10 21:55:12 +00:00
Jeffrey Altman
70921404ca STABLE14-windows-syncop-waiting-20050605
Forgot to remove unneeded flag


(cherry picked from commit be6ccec728bf2cad77f5aad83a706a281baaf9d0)
2005-06-05 14:39:29 +00:00
Jeffrey Altman
bb562cedfb STABLE14-windows-buf-waiting-20050605
The function cm_SyncOp() can cause threads to wait either because there
is a state conflict on the current use of the cm_scache_t object or
a state conflict on the cm_buf_t object.  Waiting is always performed
on the cm_scache_t object.  However, if the conflict was with the cm_buf_t
object there was no method for waking up the thread when the conflict is
cleared.  Now all of the cm_buf_t waiting functions also take a cm_scache_t
and waiting threads are woken if necessary.

cm_scache_t and cm_buf_t objects now have waitCount and waitRequest fields.
The WAITING flag is now cleared by the waking thread who sets waitCount to
zero.

Many improvements to trace logging for these issues.


(cherry picked from commit dfd34687f29ea2c20c5c0438ab4dba11e077f889)
2005-06-05 07:45:31 +00:00
Jeffrey Altman
e584b7b287 STABLE14-windows-undo-20050531
undo last change


(cherry picked from commit fa00cacf48e66c275604d616112e0b74932ace44)
2005-05-31 21:34:26 +00:00
Jeffrey Altman
23eeafd5fd STABLE14-windows-more-races-20050531
a couple of more locations at which cm_SyncOpDone() either was not
called or was called without holding the scache mutex.


(cherry picked from commit 528c511aabaefcafc01361c8038766ce56fe8e45)
2005-05-31 18:36:57 +00:00
Jeffrey Altman
1522febaea STABLE14-windows-logon-cleanup-20050531
remove debugging messages


(cherry picked from commit e844445243f837f9bc2fc52b503af99ecd44427e)
2005-05-31 15:19:06 +00:00
Jeffrey Altman
eb272638c5 STABLE14-windows-stuff-20050529
(1) Replace all calls to getenv() with GetEnvironment().  getenv() does
not read from the real environment but instead from a copy created by
the C RTL.

(2) Add support for preserving Kerberos 5 tickets during the Integrated
Logon process.   Now when Integrated Logon is used, the tickets will
be stored into the default ccache within the user session.

(3) Stress testing at MIT uncovered two code paths that could leave
threads in a permanent sleep state under heavy load.   Calls to
cm_SyncOpDone were added to plug this hole.

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

Install afscpcc.exe and register the KFWLogon WinLogon Event Handler


(cherry picked from commit 96472a6b3a71d5d5ef57e2481680920a7e006ffe)
2005-05-30 04:58:34 +00:00
Asanka Herath
de570a759b STABLE14-windows-loopback-20050524
Find the loopback adapter installer by hardware ID instead of English name.


(cherry picked from commit 280e10315e00d9f3545bb5176f08c58512385571)
2005-05-24 06:13:06 +00:00
Jeffrey Altman
4223904a09 STABLE14-windows-delonclose-20050522
Fix support for the CreateFile(DELETE_ON_CLOSE) option.


(cherry picked from commit eb7ef65dfa95bbc035a54d15b594a19c1e94335a)
2005-05-22 06:54:21 +00:00
Jeffrey Altman
809edfad29 STABLE14-windows-sync-20050518
synchronize with the 1.3 tree for the 1.3.8300 release
2005-05-18 23:57:01 +00:00
Jeffrey Altman
ddb4722c93 STABLE14-windows-afssvrmgr-20050518
Link resulting executable to kerberos 5


(cherry picked from commit 5b6865886258ea102c90dfb3af65b68d979ef936)
2005-05-18 23:22:41 +00:00
Jeffrey Altman
5e07f578f4 STABLE14-windows-no-gateway-20050429
Remove the AFS gateway option
2005-04-29 20:56:03 +00:00
Jeffrey Altman
1fe1831849 STABLE14-windows-afslogon-20050428
Add new "logon" event handler in order to establish a smb connection
to the AFS client service with the true logon name as early as possible.

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

Add new "logon" event handler in order to establish a smb connection
to the AFS client service with the true logon name as early as possible.

Add "replace_afs.cmd" file
2005-04-28 13:05:45 +00:00
Jeffrey Altman
7ab9e26efe STABLE14-windows-cvsignore-20050428
new file
2005-04-28 13:00:53 +00:00
Jeffrey Altman
935d7009cf STABLE14-windows-callback-race-20050427
cm_EndCallbackGrantingCall contained a race condition due to the release
of the cm_callbackLock in the middle of the for() loop.  The race was
removed by optimizing out the call to cm_CallbackNotifyChange().  There
is no reason this needed to be called once per callback revoke in the
list.


(cherry picked from commit 8085bc4d476a2e77b26454929cdfa1d034c754f7)
2005-04-27 16:32:52 +00:00
Jeffrey Altman
f0462a681a STABLE14-windows-shell-ext-remove-mtpt-20050420
Conditionalize the AFS->Mount Point->Remove menu item based upon whether
or not the selected item(s) contain mount points


(cherry picked from commit 9198f00b19d0ba793d62241973403d7d1e8acfab)
2005-04-21 03:20:05 +00:00
Jeffrey Altman
bc8db180cc STABLE14-windows-hookdll-20050419
Some more tweaks for hook dll processing.


(cherry picked from commit 5dd44b7a0f04ea43ca8ddea97ae7f1591de9fd54)
2005-04-19 22:07:14 +00:00
Jeffrey Altman
4d1a168275 STABLE14-windows-hooks-20050418
Add new hooks from "AfsdHook.dll" to the afsd_service.exe

   AfsdInitHook - where you currently have one

   AfsdRxStartedHook - after RxInit but before SmbInit

   AfsdSmbStartedHook - after SmbInit

   AfsdBkDaemonHook - called by the BkDaemon thread and is executed once per
                      cycle

   AfsdStoppingHook - called just after a shutdown event has been
                      received but before any shutdown has been performed

   AfsdStoppedHook - called just after all shutdown operations after
                     completed but before the service terminates

The type of the function is

   BOOL ( APIENTRY * AfsdHook )(void)

in all cases.  Returning FALSE will cause the service to shutdown.


(cherry picked from commit c0753e9ee7ff61ecd162cebbb30da7f0a8ca0bb6)
2005-04-19 07:27:57 +00:00
Jeffrey Altman
e8fffe63e6 STABLE14-windows-formatting-20050418
keep formatting consistent


(cherry picked from commit 66b82d3c10101b70abcbcc6933b439aa1904600f)
2005-04-19 06:13:01 +00:00
Jeffrey Altman
d727ca2d4c STABLE14-windows-free-lib-20050418
call FreeLibrary not CloseHandle


(cherry picked from commit ebf2022608aa239756a3a43e18ece02f3e512abc)
2005-04-19 06:12:41 +00:00
Jeffrey Altman
6e06e55f04 STABLE14-windows-misc-20050418
Support for WinLogon "logon" event handler to allow use in multi-domain
forests with a cross-realm trust between a MIT realm and a root domain
with workstations in a sub-domain.

Add support for rx_StartClientThread

Prepare for allowing maxVolumes and maxCells to be configurable via
the registry.
2005-04-19 06:11:17 +00:00
Jeffrey Altman
2fa91ba9a5 STABLE14-windows-syscfg-20050418
GetAdaptersAddressess -> GetAdaptersAddresses


(cherry picked from commit e93bf762518b9afe91dee604e46fd8339c78360d)
2005-04-18 15:44:47 +00:00
Tom Keiser
7a811246ff STABLE14-rx-fpq-trying-again-20050413
FIXES 17805

this time we'll work it out on windows. multitier free packet queues to increase performance


(cherry picked from commit 004be0249387802cc7abe45d50c6f8b67c4832d0)
2005-04-14 03:43:36 +00:00
Jeffrey Altman
f8836a4db5 STABLE14-windows-rx_mtu-20050404
cmdebug -addr should report the rx_mtu size if it is set and less than
the actual mtu size


(cherry picked from commit d0879e78e6a8824eb745359a00b1d3170b977eaa)
2005-04-05 03:17:15 +00:00
Jeffrey Altman
4e6227a168 STABLE14-windows-deadlock-20050402
One final deadlock was discovered in cm_TryBulkStat().  Do not hold
the scp->mx while calling an RXAFS function.


(cherry picked from commit 48b2968e0a3ff5f07bd1e04f01e625b110d78482)
2005-04-02 09:35:49 +00:00
Jeffrey Altman
c8abfcb1c8 STABLE14-windows-time-20050331
Replace the time translation hack based on smb_NowTZ with a purely
mathematical conversion from UTC based unixTime (time_t) to UTC
based FILETIME


(cherry picked from commit 9a3844a96b07ffa7b677460d0a9f0dbffd774e03)
2005-04-01 00:36:42 +00:00
Jeffrey Altman
b9e4c1bb4d STABLE14-windows-afsd-minor-20050330
Add bounds checking to the comparison of fid->vnode and cm_localMountPoints
when Freelance mode is used.

Fix typo in DJGPP section of smb.c

Use rx_connection * instead of rx_call * in previous fix to cm_dcache.c


(cherry picked from commit 0a9609d8eb599dfe11ff04d8752e15b58c3ef89d)
2005-03-31 07:05:47 +00:00
Jeffrey Altman
3ed69d2cbd STABLE14-windows-stress-test-fixes-20050330
Ran more stress tests against 1.3.80b on a dual processor machine and
found a number of additional errors which could be fixed.

cm_callback.c: correct the refCount handling of server lists when
processing registering callbacks on the scache entry

cm_conn.c: cm_Analyze was not handling the CM_ERROR_NOSUCHVOLUME case.
In this case force a retry and Force Update the Volume info

cm_dcache.c; do not hold mx locks around calls to rx_NewCall().  That is
why we have reference counting on the rx_connection objects.

cm_ioctl.c: replace references to afsdcell.ini with CellServDB

cm_utils.c: formatting

cm_vnodeops.c: improve the logging and add a missing call to
cm_EndCallbackGrantingCall()

cm_volume.c: allows cm_volume_t objects to be reused if their
ref count is 0 and we have hit the maximum number allowed.

smb.c: improve the logging and the handling of dead_vcp references.
If all of the SMB sessions and NCBs are in use, return BUSY to the
CIFS client.

smb3.c: convert constants to preprocessor symbols


(cherry picked from commit b9bf7ee01acc7f2646fbc6e09c1ca8d41cc59d55)
2005-03-30 21:50:15 +00:00
Jeffrey Altman
7851fbb01e STABLE14-windows-logon-20050323
Fix initialization error when getting domain parameters


(cherry picked from commit d33cd7595bc7afffec277d761d911b54e39f3dbf)
2005-03-23 22:31:45 +00:00
Jeffrey Altman
c9d561e321 STABLE14-windows-smb-fix-20050322
the use logon cache hack only works on xp and above. do not give up
use of smb auth simply because it fails

fix the smb_vc_t refCount fix to smb_CopyPacket.  Only hold a smb_vc_t
if there is one.


(cherry picked from commit 46f7713f16c8c96983872a801cf1ce9cf7b80530)
2005-03-22 05:43:12 +00:00
Jeffrey Altman
1bcdd1cf52 STABLE14-windows-smb_vc_t-refcounts-20050321
conditionalize the assertions on smb_vc_t refcounts as they are only
for debugging.  We know there is a problem but don't want to deal with
it for the 1.3.80 release.

added logging info for each hold and release.  perhaps that will provide
a clue in the future

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

When copying a packet we must increment the vcp refcounts


(cherry picked from commit 247a58de77004ec10c2e55451d99dd04bd982df4)
2005-03-21 16:28:33 +00:00
Jeffrey Hutzelman
7923c40656 STABLE14-CellServDB-update-20050317
Public CellServDB 16 Mar 2005


(cherry picked from commit 9055824240a1c7c5b1a13c179159922098ba0b05)
2005-03-17 17:43:00 +00:00
Jeffrey Altman
547d0e2967 STABLE14-windows-dns-crypt-20050516
Found another case in which the windows client could break connections
which should not be broken if cryptall is on.  If the connection is
unauthenticated because there are no tokens, the connections will be
broken.

If a site relies on AFSDB records and the client machine is configured
to append a domain suffix to all queries it is possible for "foo" and
"foo.bar" to appear to be separate cells.  fixed by appending a trailing
'.' to all AFSDB queries if there is not already one.


(cherry picked from commit 164d4ee959547e4791a497bc86377b269ec43dd2)
2005-03-16 21:37:52 +00:00
Jeffrey Altman
a796c890d4 STABLE14-windows-comments-20050314
Update the comments to indicate how we force authentication to be
performed against the Windows logon cache instead of a domain controller
and how BackConnectionsHostNames will work in Longhorn Beta 1.


(cherry picked from commit 80d60b9cd1275c4a4ded571c5876a1e704baf53e)
2005-03-15 00:43:54 +00:00
Jeffrey Altman
6c7121593a STABLE14-windows-mumble-20050311
Add new registry setting to force a lana to be treated as a loopback

Move hack to force use of MSV1_0 cache


(cherry picked from commit 834adacf6a65609d2d013b31ccbfba44d540abfa)
2005-03-11 18:17:34 +00:00
Jeffrey Altman
04d86d2038 STABLE14-windows-pcache-20050310
This patch applies all of the work done to add persistent cache support,
cache manager debugging, and a variety of bug fixes.  A full description
will be committed within doc/txt/winnotes as part of a later commit.


(cherry picked from commit 0b90d69f8a44e6c7ba20553cfb7d5cf7072bab57)
2005-03-11 07:22:30 +00:00
Jeffrey Altman
49e37244b2 STABLE14-windows-misc-20050207
smb3.c: another fix for pattern matching.  Patterns can include '<' and '>'
        instead of '*' and '?'.  Treat any pattern with angle bracket as
        star patterns

afslogon.c: instead of retrying the username lowercased if it is all
        uppercased.  retry the username lowercased if it was not already
        lowercased.  this captures the mixedcase username case.

afskfw.c: If Leash is configured to not import tickets from the MSLSA,
        neither should we.

cm_vnodeops.c: If the second to last component of a path is a symlink and
        the last component cannot be found, return NOSUCHPATH instead of
        FILE_NOT_FOUND.


(cherry picked from commit 641c2b17efbffa523818a950761e612e9fc6f5f7)
2005-02-21 01:16:39 +00:00
Jeffrey Altman
aa8b4a2f56 STABLE14-windows-misc-20050131
afskfw.c: fix cross-realm token acquisition in ANDREW vs CS CMU case

cm_aclent.c: when ACL's timeout, remove them from the associated
   cm_scache_t object's randomACL list and place them on the end
   of the ACL LRU queue

   correct tgtLifetime to be unsigned

smb3.c: fix case sensitive matching


(cherry picked from commit 09feb1be1711dbbe053b572915df4384f488eb0e)
2005-02-21 01:16:20 +00:00
Jeffrey Altman
e5d20a6c5e STABLE14-windows-longfilename-matching-20050203
retry pattern matching when ambiguous matches are found for long file
names


(cherry picked from commit d5495f26ec6e02bc09ad0d6ee6a9a62f545bfd9c)
2005-02-21 01:15:44 +00:00
Jeffrey Altman
f7bb850073 STABLE14-createx-null-ptr-20050126
Don't release null scps


(cherry picked from commit 4cc0394af02a07a0000dd4ce9384398d8b03a6f4)
2005-01-31 04:24:58 +00:00
Jeffrey Altman
d82351b409 STABLE14-windows-aclent-20050126
Undo the FreeACLEnt lock as it is an automatic deadlock


(cherry picked from commit 4c27de95394d44e2066413de7eca65315b83cacb)
2005-01-31 04:24:44 +00:00
Jeffrey Altman
c0dc03d391 STABLE14-windows-misc-20050126
* The list of ACL entries was becoming corrupted because the function
    which obtained a free entry was doing so without the appropriate lock
    being held.

  * Changed the default @sys name list to "x86_win32 i386_w2k i386_nt40"
    for 32-bit x86 systems.  The default for itanium will be "ia64_win64"
    and "amd64_win64" for amd 64-bit processors.


(cherry picked from commit 516614090190f34cb74ec741cf06f86384bff4d1)
2005-01-31 04:23:57 +00:00
Jeffrey Altman
fa4b62ebb4 STABLE14-windows-misc-20050125
The list of ACL entries was being corrupted because the function
which obtains a free ACL entry was doing so without the appropriate
lock being held.

Returning Not A Directory is not the right thing to do when we are
attempting to resolve a path if the error is found on one of the
intermediary path components.  Instead return No Such Path or
No Such File as appropriate.


(cherry picked from commit ff3436446e1c8447d0f9703b088c6d65c6845aa0)
2005-01-31 04:23:45 +00:00
Jeffrey Altman
0e9de60611 STABLE14-windows-smb_vc_t-refcounts-20050117
Rework the reference counting of the smb_vc_t objects to use
smb_ReleaseVC and smb_HoldVC.  Add missing counts for references
from waiting locks.

Fix cm_ioctl.c to allow it to compile once again.


(cherry picked from commit eabe2b6f77da6913b4a6bd51220708c363762fe6)
2005-01-31 04:17:43 +00:00
Jeffrey Altman
5a8303f799 STABLE14-windows-fs-wscell-20050112
when freelance mode is in use, "fs wscell" will now return
"Freelance.Local.Root"


(cherry picked from commit b11e76ce63b6c23265d17d5597342e4aa296f6c0)
2005-01-31 04:09:42 +00:00
Jeffrey Altman
58c23d2810 STABLE14-windows-misc-20050112
New AFS Logo Icon

Fix the assignment of the dataVersion for the freelance scache entries

Fix the calling convention of the AFSD Service Main function to be
WINAPI.


(cherry picked from commit 4c861ab65683add205d062790036b27123d0fe6b)
2005-01-31 04:09:28 +00:00
Jeffrey Altman
5d309485c1 STABLE14-windows-remove-extra-parameter-20050104
aklog.c - remove extra parameter from pr_Initialize()


(cherry picked from commit 1a3e8d9e1641a301a87dd0a0f5b2ca5ef2528e58)
2005-01-31 04:09:10 +00:00
Jeffrey Altman
65f2a099f3 STABLE14-windows-cb-deadlock-20050104
afskfw.c - remove extra parameter to pr_Initialize

afsd_service.c - move SERVICE_STOP_PENDING to before we start to
                 do any work.

afsd_init.c - initialize rx and rpc after starting the cache manager

cm_callback.c - release cm_callbackLock before attempting to re-obtain
                scp->mx lock in cm_EndCallbackGrantingCall()


(cherry picked from commit ca1c67688bf92903c9803976e918266753ef0aae)
2005-01-31 04:08:57 +00:00
Jeffrey Altman
25297a74ee STABLE14-windows-misc-fix-20050102
fix typo


(cherry picked from commit 5bbfc9302503af54ecfd78450abc0b1edf88a860)
2005-01-31 04:08:49 +00:00