1
0
mirror of https://github.com/samba-team/samba.git synced 2025-01-13 13:18:06 +03:00
Commit Graph

176 Commits

Author SHA1 Message Date
Volker Lendecke
7d2d4ddfa2 r24056: Another big one: This converts reply_sesssetup_and_X to the new API. As usual,
its history can be found on http://samba.org/~vlendec/sesssetup/. This very
obviously needs close review.

Volker
(This used to be commit 35675a6a33)
2007-10-10 12:29:00 -05:00
Volker Lendecke
e29325a6ce r24050: Fix a typo
(This used to be commit 53027d0ee2)
2007-10-10 12:29:00 -05:00
Volker Lendecke
cc6a41017c r23997: Check in the infrastructure for getting rid of the global InBuffer/OutBuffer
The complete history of this patch can be found under
http://www.samba.org/~vlendec/inbuf-checkin/.

Jeremy, Jerry: If possible I would like to see this in 3.2.0. I'm only
checking into 3_2 at the moment, as it currently will slow down operations for
all non-converted (i.e. all at this moment) operations, as it will copy the
talloc'ed inbuf over the global InBuffer. It will need quite a bit of effort
to convert everything necessary for the normal operations an XP box does.

I have patches for negprot, session setup, tcon_and_X, open_and_X, close. More
to come, but I would appreciate some help here.

Volker
(This used to be commit 5594af2b20)
2007-10-10 12:28:53 -05:00
Andrew Tridgell
5e54558c6d r23784: use the GPLv3 boilerplate as recommended by the FSF and the license text
(This used to be commit b0132e94fc)
2007-10-10 12:28:22 -05:00
Jeremy Allison
d824b98f80 r23779: Change from v2 or later to v3 or later.
Jeremy.
(This used to be commit 407e6e695b)
2007-10-10 12:28:20 -05:00
Jeremy Allison
d3965a2689 r23736: Use local variable of smb_flag2 instead of using the macro every time.
Jeremy.
(This used to be commit 9e1663b1f1)
2007-10-10 12:23:50 -05:00
Volker Lendecke
fcda5b5896 r23726: Explicitly pass down the FLAGS2 field to srvstr_pull_buf. The next
checkin will pull this up to srvstr_get_path. At that point we can get more
independent of the inbuf, the base_ptr in pull_string will only be used
to satisfy UCS2 alignment constraints.
(This used to be commit 836782b07b)
2007-10-10 12:23:49 -05:00
Gerald Carter
4caefdf348 r23474: Here's a small patch that disables the libkrb5.so replay cache
when verifying a ticket from winbindd_pam.c.

I've found during multiple, fast, automated SSH logins (such
as from a cron script) that the replay cache in MIT's krb5
lib will occasionally fail the krb5_rd_req() as a replay attack.

There seems to be a small window during which the MIT krb5
libs could reproduce identical time stamps for ctime and cusec
in the authenticator since Unix systems only give back
milli-seconds rather than the micro-seconds needed by the
authenticator.  Checked against MIT 1.5.1.  Have not
researched how Heimdal does it.

My thinking is that if someone can spoof the KDC and TDS
services we are pretty hopeless anyways.
(This used to be commit cbd33da9f7)
2007-10-10 12:23:19 -05:00
Volker Lendecke
fff51a9af2 r23172: Change shutdown_other_smbds to use connections_traverse instead of
session_traverse.
(This used to be commit ccb5eb245e)
2007-10-10 12:22:52 -05:00
Volker Lendecke
fad7dd8a60 r22868: Replace some message_send_pid calls with messaging_send_pid calls. More
tomorrow.
(This used to be commit 74fa57ca5d)
2007-10-10 12:22:04 -05:00
Volker Lendecke
b4a7b7a888 r22844: Introduce const DATA_BLOB data_blob_null = { NULL, 0, NULL }; and
replace all data_blob(NULL, 0) calls.
(This used to be commit 3d3d61687e)
2007-10-10 12:22:01 -05:00
Volker Lendecke
76ce309234 r22751: Next step for the cluster merge: sessionid.tdb should contain a 'struct
server_id' instead of a 'uint32 pid'
(This used to be commit be7bac55c3)
2007-10-10 12:21:54 -05:00
Volker Lendecke
7192160599 r22747: Fix some C++ warnings
(This used to be commit a66a04e9f1)
2007-10-10 12:21:54 -05:00
Jeremy Allison
0829e1ad1c r22391: Looks bigger than it is. Make "inbuf" available
to all callers of smb_setlen (via set_message()
calls). This will allow the server to reflect back
the correct encryption context.
Jeremy.
(This used to be commit 2d80a96120)
2007-10-10 12:19:30 -05:00
Gerald Carter
90dc261315 r22095: BUG 4484: Add more checks to set %a for Vista clients (based on absence of native OS and Lanman strings in the session setup request)
(This used to be commit e5c9fc937d)
2007-10-10 12:19:11 -05:00
Jeremy Allison
296dcbac58 r21882: The server part of the code has to use an AUTH_NTLMSSP struct,
not just an NTLMSSP - grr. This complicates the re-use of
common client and server code but I think I've got it right.
Not turned on of valgrinded yet, but you can see it start
to take shape !
Jeremy.
(This used to be commit 60fc9c0aed)
2007-10-10 12:18:43 -05:00
Jeremy Allison
7d77dd9db6 r21847: Fix memory leaks in error paths (and in main code path in one case...)
in sasl bind. Wonder why coverity didn't find these ?
Jeremy.
(This used to be commit 89bdd30e4b)
2007-10-10 12:18:37 -05:00
Jeremy Allison
edccfc9192 r21845: Refactor the sessionsetupX code a little to allow us
to return a NT_STATUS_TIME_DIFFERENCE_AT_DC error to
a client when there's clock skew. Will help people
debug this. Prepare us for being able to return the
correct sessionsetupX "NT_STATUS_MORE_PROCESSING_REQUIRED"
error with associated krb5 clock skew error to allow
clients to re-sync time with us when we're eventually
able to be a KDC.
Jeremy.
(This used to be commit c426340fc7)
2007-10-10 12:18:37 -05:00
Jeremy Allison
ca229b0980 r21483: Fix use of uninitialized variable.
Jeremy.
(This used to be commit 4a74d042c9)
2007-10-10 12:18:08 -05:00
Jeremy Allison
cedcf06b22 r21478: Add 65k length limit for split SPNEGO blobs.
Jeremy
(This used to be commit 6be078da26)
2007-10-10 12:18:07 -05:00
Volker Lendecke
b45442e46d r21461: Not strictly necessary, as data_blob() panics if it can't allocate. But I'd
see this as a design flaw in data_blob() and it made me look in that routine.

Jeremy, revert or merge please :-)

Volker
(This used to be commit e7e6b8b5e0)
2007-10-10 12:18:06 -05:00
Jeremy Allison
f77bdcf6c7 r21460: Fix for server-side processing of SPNEGO auth
fragmented into "max xmit" size security blob
chunks. Bug #4400. Needs limits adding, and also
a client-side version.
Jeremy.
(This used to be commit aa69f2481a)
2007-10-10 12:18:06 -05:00
Jeremy Allison
685ca94ac2 r21128: Fix Vista connecting to Samba in share level security.
Vista sends the NTLMv2 blob by default in the tconX
packet. Make sure we save off the workgroup the user
was logged into on the client in the sessionsetupX
and re-use it for the NTLMv2 calc.
Jeremy.
(This used to be commit 45dcf62960)
2007-10-10 12:17:41 -05:00
Herb Lewis
791f48f167 r20124: clean up nested extern declaration warnings
(This used to be commit ac3eb7813e)
2007-10-10 12:16:26 -05:00
Simo Sorce
dc2ed4c830 r19986: ooops
(This used to be commit 97f150fbbb)
2007-10-10 12:16:17 -05:00
Simo Sorce
c81c8cb4a7 r19984: Must have been drunk yesterday.
Freeing memctx is all we need, fix double free stupidity
(This used to be commit 2a7454959e)
2007-10-10 12:16:17 -05:00
Simo Sorce
cb0402c2d3 r19980: Implement pam account stack checks when obey pam restrictions is true.
It was missing for security=server/domain/ads

Simo.
(This used to be commit 550f651499)
2007-10-10 12:16:17 -05:00
Simo Sorce
ef8d6bf5f7 r19979: Fix memleak on pw and change talloc_destroy to TALLOC_FREE for mem_ctx
(This used to be commit defa0a352b)
2007-10-10 12:16:17 -05:00
Jeremy Allison
28800c54dc r18907: W00t. My original fix was correct after all :-).
Re-checking it in.
Fix bug #4095 - username composed into domain\user
twice in spnego path.
Jeremy.
(This used to be commit 0c77046751)
2007-10-10 12:14:45 -05:00
Jeremy Allison
68a2430c52 r18403: Revert until we get this sorted out correctly.
Jeremy.
(This used to be commit d0fdd5eb1e)
2007-10-10 11:51:22 -05:00
Jeremy Allison
c432bfc14b r18398: Fix bug #4095 - username composed into domain\user
twice in spnego path. Jerry please check.
Jeremy.
(This used to be commit e872bacf28)
2007-10-10 11:51:21 -05:00
Gerald Carter
545353b062 r17909: ensure we do not call map_username() twice on Krb5 session setups
(This used to be commit 779eba0a7c)
2007-10-10 11:38:58 -05:00
Jeremy Allison
ce61fb21d9 r16397: Fix Klocwork #11767 and drasticly simplify the
logic in smbd/process.c. All interested (Volker,
Jerry, James etc). PLEASE REVIEW THIS CHANGE.
The logic should be identical but *much* easier
to follow and change (and shouldn't confuse Klockwork :-).
Jeremy.
(This used to be commit d357f8b335)
2007-10-10 11:18:52 -05:00
Volker Lendecke
ee7b4b47cb r15589: While trying to understand the vuid code I found that security=share is broken
right now. r14112 broke it, in 3.0.22 register_vuid for security=share returns
UID_FIELD_INVALID which in current 3_0 is turned into an error condition. This
makes sure that we only call register_vuid if sec!=share and meanwhile also
fixes a little memleak.

Then I also found a crash in smbclient with sec=share and hostmsdfs=yes.

There's another crash with sec=share when coming from w2k3, but I need sleep
now.

Someone (jerry,jra?) please review the sesssetup.c change.

Thanks,

Volker
(This used to be commit 8059d0ae39)
2007-10-10 11:17:02 -05:00
Günther Deschner
f777697508 r15523: Honour the time_offset also when verifying kerberos tickets. This
prevents a nasty failure condition in winbindd's pam_auth where a tgt
and a service ticket could have been succefully retrieved, but just not
validated.

Guenther
(This used to be commit a75dd80c62)
2007-10-10 11:16:55 -05:00
Volker Lendecke
dc9f30b8b0 r15475: Ugly and disgusting patch to fix the username map problem I created by
changing the token generation. I *hate* this code!

Jerry, you have been looking at this as well, can you double-check that I did
not screw it up?

Thanks,

Volker
(This used to be commit 2765c4ff8d)
2007-10-10 11:16:52 -05:00
Volker Lendecke
83e4ea7e85 r15472: Remove an unused function parameter
(This used to be commit d2f39ae7fe)
2007-10-10 11:16:52 -05:00
Jeremy Allison
f2e788ca37 r15467: Ensure every exit error path calls nt_status_squash.
Jeremy.
(This used to be commit e9b016ced6)
2007-10-10 11:16:51 -05:00
Jeremy Allison
6ca1ba3814 r15115: Fix error return on sessionsetup. Ensure no
data blob is added if the logon call failed.
Jeremy.
(This used to be commit 71d0191c31)
2007-10-10 11:16:24 -05:00
Jeremy Allison
75c965d3a4 r14790: Fix possible null deref. Coverity #277.
Jeremy.
(This used to be commit 2454af392a)
2007-10-10 11:15:48 -05:00
Jeremy Allison
5f224c2c26 r14170: Paranioa fix for sesssetup.
Fix Coverity bug #26. Guard against NULL ref.
Jeremy.
(This used to be commit c0f906ac8d)
2007-10-10 11:15:15 -05:00
Jeremy Allison
47a11f8a4c r14168: Fix Coverity #219. I think this is a false coverity
warning as it seems to get confused with assignment
and comparison. Clarify the code anyway.
Jeremy.
(This used to be commit 754818f8cc)
2007-10-10 11:15:14 -05:00
Günther Deschner
c077d363a4 r14130: Remove make_server_info_pac alltogether, make_server_info_info3 does
already do what we need.

Guenther
(This used to be commit 773e33c971)
2007-10-10 11:11:14 -05:00
Gerald Carter
1de2983de4 r14112: * fix checks on return code from register_vuid() which could actually
fail and we would still return success in the SMBsesssetup reply :-(
* Make sure to create the local token for the server_fino struct
  in reply_spnego_kerberos() so that register_vuid() does not fail.
  (how did this ever work?)
(This used to be commit 8dafa45b97)
2007-10-10 11:11:13 -05:00
Jeremy Allison
7104002cf8 r13604: Fix for bug #3512 "use spnego=no" and "server signing=auto" cause client to disconnect after negprot"
We missed one case of ignoring "BSRSPYL ".
Merge for 3.0.21c.
Jeremy.
(This used to be commit 7d21cf420f)
2007-10-10 11:10:19 -05:00
Gerald Carter
0af1500fc0 r13316: Let the carnage begin....
Sync with trunk as off r13315
(This used to be commit 17e63ac4ed)
2007-10-10 11:06:23 -05:00
Volker Lendecke
1bfb5b734b r11909: Implement 'reset on zero vc'. This kills other connections when a session
setup comes in with the vc (virtual connection) field set to zero. This is
done by Windows, probably you can tweak that by some registry key.

	This boolean option controls whether an incoming session setup
	should kill other connections coming from the same IP. This matches
        the default Windows 2003 behaviour.

	Setting this parameter to yes becomes necessary when you have a flaky
	network and windows decides to reconnect while the old connection
	still has files with share modes open. These files become inaccessible
	over the new connection.

	The client sends a zero VC on the new connection, and Windows 2003
	kills all other connections coming from the same IP. This way the
	locked files are accessible again.

	Please be aware that enabling this option will kill connections behind
	a masquerading router.

Volker
(This used to be commit 5629ca1623)
2007-10-10 11:05:34 -05:00
Günther Deschner
90603cb3cd r11846: Destroy the TALLOC_CTX on error in the Kerberos session setup and give a
more precise inline comment why PAC verification may fail.

Guenther
(This used to be commit 43b57715e9)
2007-10-10 11:05:29 -05:00
Gerald Carter
a4d729bdfa r11661: Store the INFO3 in the PAC data into the netsamlogon_cache.
Also remove the mem_ctx from the netsamlogon_cache_store() API.

Guenther, what should we be doing with the other fields in
the PAC_LOGON_INFO?
(This used to be commit 8bead2d282)
2007-10-10 11:05:23 -05:00
Gerald Carter
9d9fe2d58d r11655: Two small fixes
* remove redundant call to sub_set_smb_name() in session setup code.
* Fix lockup when running 'wbinfo -t' on a Samba PDC.  Cause
  was new authenticated session setup from winbindd which
  resulted in a mangled username (machine_) that was not found
  in the local files and so was queiued up to nss_winbindd.
  Deadlock....
  So now make sure to keep the trailing '$' for machine account
  names when calling sub_set_smb_name().
(This used to be commit b0a2d43b60)
2007-10-10 11:05:23 -05:00