1
0
mirror of https://github.com/samba-team/samba.git synced 2024-12-25 23:21:54 +03:00
Commit Graph

222 Commits

Author SHA1 Message Date
Günther Deschner
99b45f71cc s3-netlogon: implement _netr_ServerAuthenticate3.
Guenther
2009-02-13 01:47:58 +01:00
Günther Deschner
076f15f54e s3: refactor _netr_LogonControl{2,2Ex} server side.
Guenther
2008-12-17 23:23:56 +01:00
Günther Deschner
3c66ba0b3c s3: fix netlogon rpc_server build after idl change.
Guenther
2008-12-13 00:28:00 +01:00
Günther Deschner
b431406357 s3-netlogon: fix netlogon server build.
Guenther
2008-12-10 11:58:28 +01:00
Stefan Metzmacher
6815fd1730 s3: rpc: let serverinfo_to_SamInfo3() work with no pipe_session_key
metze
2008-11-06 21:39:14 +01:00
Günther Deschner
f5269ff182 s3-netlogon: kill an fstring in rpc_server.
Guenther
2008-10-28 00:13:50 +01:00
Günther Deschner
3b9a03a7c3 s3: fix samlogon client and server calls.
Guenther
2008-10-15 16:14:20 +02:00
Günther Deschner
efbb8c189d rpc_server: make it a little more obvious what flags we send to a client.
Guenther
(This used to be commit f3791e03ab)
2008-08-22 00:21:31 +02:00
Volker Lendecke
8a9881c30b Remove a check on p->vuid in _netr_LogonSamLogon/off
This is in preparation of removing p->vuid completely. I don't think this check
here makes any sort of sense, it only proves that the user having done the
session setup on its way to the schannel bind (ususally anonymous) did not do a
logoff in between. But this would have been caught way before this in
reply_pipe_write_and_X.
(This used to be commit fbc00460f8)
2008-06-26 13:13:23 +02:00
Volker Lendecke
df905a5d77 Make pipes_struct its own talloc ctx
(This used to be commit 829b1ad469)
2008-06-21 10:34:34 +02:00
Volker Lendecke
968a006555 Factor out generation of an info3 struct from a serversupplied_info
(This used to be commit e60faccc1b)
2008-05-17 23:17:40 +02:00
Günther Deschner
7a6f33e3d8 _netr_LogonSamLogon: fix lm session key length.
Thanks Volker for pointing this out.

Guenther
(This used to be commit 7ccca9a004)
2008-04-29 20:22:02 +02:00
Günther Deschner
b1198fc9fd Fix samlogon rpc client & server.
Guenther
(This used to be commit 0aaf975560)
2008-03-27 13:06:43 +01:00
Günther Deschner
63b49e1f6e Fix _netr_LogonControl2(). Return talloced dcname.
Guenther
(This used to be commit 42971b71ac)
2008-03-26 19:18:08 +01:00
Günther Deschner
7269a504fd Add my copyright.
Guenther
(This used to be commit d078a87571)
2008-02-27 19:38:48 +01:00
Günther Deschner
185842df52 Use pidl for _netr_LogonSamLogon() and _netr_LogonSamLogonEx().
Guenther
(This used to be commit 0d0b939953)
2008-02-16 14:28:55 +01:00
Günther Deschner
3f24ef1848 Replace DOM_CHAL with "struct netr_Credential" where we can right now.
This allows to remove some more old netlogon client calls.

Guenther
(This used to be commit c0b1a87658)
2008-02-15 23:57:54 +01:00
Günther Deschner
ea1443efff Fix the netlogon rpc_server build.
Guenther
(This used to be commit 47806386e5)
2008-02-15 23:36:31 +01:00
Günther Deschner
5bce07977a Use pidl for _netr_LogonSamLogoff().
Guenther
(This used to be commit a9683cbf43)
2008-02-15 21:52:19 +01:00
Günther Deschner
c9f1f3d5ff Use pidl for _netr_ServerAuthenticate2().
Guenther
(This used to be commit 5d81cc136b)
2008-02-15 21:41:38 +01:00
Günther Deschner
55b2292aba Use pidl for _netr_ServerAuthenticate().
Guenther
(This used to be commit 943386c5dd)
2008-02-15 21:32:14 +01:00
Günther Deschner
4f0b904538 Use pidl for _netr_ServerPasswordSet().
Guenther
(This used to be commit 85b7489dd2)
2008-02-15 21:18:23 +01:00
Günther Deschner
7acdc9e8d6 Use pidl for _netr_LogonControl2.
Guenther
(This used to be commit 4bd02aa6cd)
2008-02-13 23:06:09 +01:00
Günther Deschner
3722208ddf Add some netr_NETLOGON_INFO init functions.
Guenther
(This used to be commit f0c6668858)
2008-02-13 23:01:34 +01:00
Günther Deschner
4140f3213d Use pidl for _netr_ServerReqChallenge.
Guenther
(This used to be commit ef42431941)
2008-02-13 14:18:58 +01:00
Günther Deschner
b94093173d Pure cosmetics: remove trailing whitespace in netlogon server.
Guenther
(This used to be commit 983ac0a676)
2008-02-13 14:18:23 +01:00
Günther Deschner
abba82ef5b Use pidl for _netr_LogonControl.
Guenther
(This used to be commit ec4947525e)
2008-02-13 12:19:37 +01:00
Günther Deschner
3b45ebb1b7 Use pidl for _netr_NetrEnumerateTrustedDomains().
This call is completely broken. For now, just make sure that we return the exact same
data as before the conversion to pidl.

Guenther
(This used to be commit 243bdaeea7)
2008-02-13 10:23:45 +01:00
Günther Deschner
09454362cf Enable build of pidl generated netlogon server.
Guenther
(This used to be commit cb0fad1c97)
2008-01-31 13:46:54 +01:00
Günther Deschner
8dc7fe774e Cleanup status codes inside _net_logon_ctrl2() reply structs.
Guenther
(This used to be commit 1acb9daf80)
2008-01-31 11:27:49 +01:00
Günther Deschner
1a7583dd0b Remove unused rpc_ds marshalling code that is unused now.
Guenther
(This used to be commit 153253e14f)
2008-01-29 15:51:19 +01:00
Günther Deschner
a92eb76688 Finally enable pidl generated SAMR & NETLOGON headers and clients.
Guenther
(This used to be commit f7100156a7)
2008-01-17 16:54:46 +01:00
Volker Lendecke
900288a2b8 Replace sid_string_static by sid_string_dbg in DEBUGs
(This used to be commit bb35e794ec)
2007-12-15 22:09:36 +01:00
Jeremy Allison
3a452a15b7 Remove pstring from everything in rpc_server except
srv_spoolss_nt.c and srv_srvsvc_nt.c.
They're next :-).
Jeremy.
(This used to be commit 55b4f9d003)
2007-11-27 11:22:58 -08:00
Jeremy Allison
5b0b4f23ef Remove most of the remaining globals out of lib/util_sock.c.
I have a plan for dealing with the remaining..... Watch
this space.
Jeremy.
(This used to be commit 963fc76852)
2007-11-03 23:20:10 -07:00
Jeremy Allison
25074433f4 I can't get away without a 'length' arg. :-).
Jeremy.
(This used to be commit 95d01279a5)
2007-11-03 18:41:26 -07:00
Jeremy Allison
6658165d5e Stop get_peer_addr() and client_addr() from using global
statics. Part of my library cleanups.
Jeremy.
(This used to be commit e848506c85)
2007-11-03 18:15:45 -07:00
Jeremy Allison
f88b7a076b This is a large patch (sorry). Migrate from struct in_addr
to struct sockaddr_storage in most places that matter (ie.
not the nmbd and NetBIOS lookups). This passes make test
on an IPv4 box, but I'll have to do more work/testing on
IPv6 enabled boxes. This should now give us a framework
for testing and finishing the IPv6 migration. It's at
the state where someone with a working IPv6 setup should
(theorecically) be able to type :
smbclient //ipv6-address/share
and have it work.
Jeremy.
(This used to be commit 98e154c312)
2007-10-24 14:16:54 -07:00
Jeremy Allison
30191d1a57 RIP BOOL. Convert BOOL -> bool. I found a few interesting
bugs in various places whilst doing this (places that assumed
BOOL == int). I also need to fix the Samba4 pidl generation
(next checkin).
Jeremy.
(This used to be commit f35a266b3c)
2007-10-18 17:40:25 -07:00
Andrew Tridgell
153cfb9c83 r23801: The FSF has moved around a lot. This fixes their Mass Ave address.
(This used to be commit 87c91e4362)
2007-10-10 12:28:27 -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
Volker Lendecke
ac3f08ddbe r23055: Rewrite messages.c to use auto-generated marshalling in the tdb. I'm
doing this because for the clustering the marshalling is needed in more
than one place, so I wanted a decent routine to marshall a message_rec
struct which was not there before.

Tridge, this seems about the same speed as it used to be before, the
librpc/ndr overhead in my tests was under the noise.

Volker
(This used to be commit eaefd00563)
2007-10-10 12:22:17 -05:00
Volker Lendecke
8c3f8e5697 r22911: Pass a messaging_context to message_send_all
(This used to be commit cc92ce665d)
2007-10-10 12:22:07 -05:00
Volker Lendecke
4aa44f7475 r22761: This introduces lib/conn_tdb.c with two main functions: connections_traverse
and connections_forall. This centralizes all the routines that did individual
tdb_open("connections.tdb") and direct tdb_traverse.

Volker
(This used to be commit e43e94cda1)
2007-10-10 12:21:55 -05:00
Stefan Metzmacher
56ba447668 r22001: change prototype of dump_data(), so that it takes unsigned char * now,
which matches what samba4 has.

also fix all the callers to prevent compiler warnings

metze
(This used to be commit fa322f0cc9)
2007-10-10 12:18:59 -05:00
Jim McDonough
dc1f0804dd r19058: Implement "user cannot change password", and complete "user must change
password at next logon" code.  The "password last set time" of zero now
means "user must change password", because that's how windows seems to
use it.  The "can change" and "must change" times are now calculated
based on the "last set" time and policies.

We use the "can change" field now to indicate that a user cannot change
a password by putting MAX_TIME_T in it (so long as "last set" time isn't
zero).  Based on this, we set the password-can-change bit in the
faked secdesc.
(This used to be commit 21abbeaee9)
2007-10-10 12:15:06 -05:00
Volker Lendecke
3c34f6085a r16409: Fix Klocwork ID's.
1177

In reg_perfcount.c: 1200 1202 1203 1204
In regfio.c: 1243 1245 1246 1247 1251

Jerry, the reg_perfcount and regfio.c ones, can you take a look please? This
is really your code, and I'm not sure I did the right thing to return an
error.

smbcacls.c: 1377
srv_eventlog_nt.c: 1415 1416 1417
srv_lsa_nt.c: 1420 1421
srv_netlog_nt.c: 1429
srv_samr_nt: 1458 1459 1460

Volker

Volker
(This used to be commit d6547d12b1)
2007-10-10 11:18:52 -05:00
Jeremy Allison
f9147c4e40 r16241: Fix Klocwork #106 and others like it.
Make 2 important changes. pdb_get_methods()
returning NULL is a *fatal* error. Don't try
and cope with it just call smb_panic. This
removes a *lot* of pointless "if (!pdb)" handling
code. Secondly, ensure that if samu_init()
fails we *always* back out of a function. That
way we are never in a situation where the pdb_XXX()
functions need to start with a "if (sampass)"
test - this was just bad design, not defensive
programming.
Jeremy.
(This used to be commit a0d368197d)
2007-10-10 11:17:27 -05:00
Jeremy Allison
656d8c30db r16054: Janitor for Volker ? Volker - some reason you didn't
fix this in 3.0 ?
Jeremy.

We had no way to return NT_STATUS_OK from the netlogon serverpwset,
although
we successfully set the machine password...

One thing the samba3 join test found.

Volker
(This used to be commit e5b7acc9b5)
2007-10-10 11:17:18 -05:00
Gerald Carter
36f622acea r14450: Fix more get_md4pw() breakage caused by missing "breaks"
in the switch statement which matched the schannel type
against the account type.
(This used to be commit 57c705ea63)
2007-10-10 11:15:30 -05:00
Gerald Carter
0f0ad2992e r14448: * protect against NULL cli_state* pointers in cli_rpc_pipe_open()
* Fix inverted logic check for machine accounts in get_md4pw()
(This used to be commit a36529535d)
2007-10-10 11:15:30 -05:00
Günther Deschner
24961b173b r14443: rework get_md4pw() to ease debugging. The only functional change is that
we now check wheter the sec_channel_type matches the trust account type.

Guenther
(This used to be commit c35eb44937)
2007-10-10 11:15:30 -05:00
Günther Deschner
e54786b535 r13711: * Correctly handle acb_info/acct_flags as uint32 not as uint16.
* Fix a couple of related parsing issues.
* in the info3 reply in a samlogon, return the ACB-flags (instead of
  returning zero)

Guenther
(This used to be commit 5b89e8bc24)
2007-10-10 11:10:25 -05:00
Gerald Carter
cd55919263 r13590: * replace all pdb_init_sam[_talloc]() calls with samu_new()
* replace all pdb_{init,fill}_sam_pw() calls with samu_set_unix()
(This used to be commit 6f1afa4acc)
2007-10-10 11:10:16 -05:00
Gerald Carter
2203bed32c r13576: This is the beginnings of moving the SAM_ACCOUNT data structure
to make full use of the new talloc() interface.  Discussed with Volker
and Jeremy.

* remove the internal mem_ctx and simply use the talloc()
  structure as the context.
* replace the internal free_fn() with a talloc_destructor() function
* remove the unnecessary private nested structure
* rename SAM_ACCOUNT to 'struct samu' to indicate the current an
  upcoming changes.  Groups will most likely be replaced with a
  'struct samg' in the future.

Note that there are now passbd API changes.  And for the most
part, the wrapper functions remain the same.

While this code has been tested on tdb and ldap based Samba PDC's
as well as Samba member servers, there are probably still
some bugs.  The code also needs more testing under valgrind to
ensure it's not leaking memory.

But it's a start......
(This used to be commit 19b7593972)
2007-10-10 11:10:15 -05:00
Gerald Carter
fb5362c069 r13571: Replace all calls to talloc_free() with thye TALLOC_FREE()
macro which sets the freed pointer to NULL.
(This used to be commit b65be8874a)
2007-10-10 11:10:14 -05:00
Jeremy Allison
0bc643620b r13557: (Hopefully) get the creds store/restore key right from
the correct part of the netlogon and schannel packets.
Jeremy.
(This used to be commit 4877f336b2)
2007-10-10 11:10:13 -05:00
Jeremy Allison
5539d3d5a8 r13556: Ensure that any potential creds operation are protected
by schannel if "server schannel = true" was set.
Jeremy.
(This used to be commit fd84d9703e)
2007-10-10 11:10:13 -05:00
Jeremy Allison
9132acff08 r13553: Fix all our warnings at -O6 on an x86_64 box.
Jeremy.
(This used to be commit ea82958349)
2007-10-10 11:10:13 -05:00
Jeremy Allison
952a631d5d r13548: Always use the get_remote_macinhe_name() as the key
for the creds store. This should fix the problems
Jerry reported (but I have still to run tests :-).
Jeremy.
(This used to be commit 43f095a38d)
2007-10-10 11:10:13 -05:00
Volker Lendecke
a2f2a1d9f8 r13544: -O1 janitor work :-)
(This used to be commit a95d7d7222)
2007-10-10 11:10:12 -05:00
Jeremy Allison
39a572e010 r13539: Add 128 bit creds processing client and server. Thanks to Andrew Bartlett's
Samba4 code.
Jeremy.
(This used to be commit a2fb436fc5)
2007-10-10 11:10:11 -05:00
Jeremy Allison
3e4cf56fa3 r13519: Fix the credentials chaining across netlogon pipe disconnects.
I mean it this time :-).
Jeremy.
(This used to be commit 80f4868944)
2007-10-10 11:10:09 -05:00
Jeremy Allison
acc4a837aa r13449: Ensure we don't crash if no dc struct on pipe.
Jeremy.
(This used to be commit a9e1d0f3b4)
2007-10-10 11:10:04 -05:00
Jeremy Allison
06cf1e18e5 r13447: Added LSA_LOOKUPSIDS2 and LSA_LOOKUPSIDS3.
Jeremy.
(This used to be commit a164cfab42)
2007-10-10 11:10:03 -05:00
Jeremy Allison
e493d32912 r13439: Fix NET_SAM_LOGON_EX.
Jeremy.
(This used to be commit 9437ffc84f)
2007-10-10 11:10:02 -05:00
Jeremy Allison
e19ae28581 r13436: Add in NET_SAM_LOGON_EX. Still needs testing.
Jeremy
(This used to be commit f58d0ebf74)
2007-10-10 11:10:02 -05:00
Jeremy Allison
4d2b4c92d2 r13434: Add stub for NET_SAM_LOGON_EX.
Jeremy.
(This used to be commit 58544eb3c8)
2007-10-10 11:10:02 -05:00
Jeremy Allison
ad8b47a2ba r13407: Change the credentials code to be more like the Samba4 structure,
makes fixes much easier to port. Fix the size of dc->sess_key to
be 16 bytes, not 8 bytes - only store 8 bytes in the inter-smbd
store in secrets.tdb though. Should fix some uses of the dc->sess_key
where we where assuming we could read 16 bytes.
Jeremy.
(This used to be commit 5b3c2e63c7)
2007-10-10 11:09:59 -05:00
Jeremy Allison
cf7c47aac9 r13399: Get closer to passing RPC-SCHANNEL test.
Jeremy.
(This used to be commit 8ae70122b7)
2007-10-10 11:09:59 -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
Jeremy Allison
60bcd1bd77 r13147: Raise creds_server_step fail log messages to debug level 2.
These can happen in normal operation (I think - not 100%
sure) and don't want to alarm admins. Jerry please add this
to 3.0.21b.
Jeremy.
(This used to be commit 47178b1b5a)
2007-10-10 11:06:15 -05:00
Volker Lendecke
4ce6499849 r11917: Move nt_token_to_group_list to srv_netlog_nt.c. srv_util.c is empty now.
Volker
(This used to be commit ae4ffc1cfb)
2007-10-10 11:05:35 -05:00
Gerald Carter
c672a17ff0 r11617: fix typo
(This used to be commit 37d2bf02f3)
2007-10-10 11:05:22 -05:00
Jeremy Allison
fcceedd67c r11573: Adding Andrew Bartlett's patch to make machine account
logons work if the client gives the MSV1_0_ALLOW_SERVER_TRUST_ACCOUNT
or MSV1_0_ALLOW_WORKSTATION_TRUST_ACCOUNT flags. This changes
the auth module interface to 2 (from 1). The effect of this is
that clients can access resources as a machine account if they
set these flags. This is the same as Windows (think of a VPN
where the vpn client authenticates itself to a VPN server
using machine account credentials - the vpn server checks
that the machine password was valid by performing a machine
account check with the PDC in the same was as it would a
user account check. I may add in a restriction (parameter)
to allow this behaviour to be turned off (as it was previously).
That may be on by default.
Andrew Bartlett please review this change carefully.
Jeremy.
(This used to be commit d1caef8663)
2007-10-10 11:05:20 -05:00
Jeremy Allison
8d7c886671 r11137: Compile with only 2 warnings (I'm still working on that code) on a gcc4
x86_64 box.
Jeremy.
(This used to be commit d720867a78)
2007-10-10 11:05:02 -05:00
Jeremy Allison
e127501d45 r10792: Fix the "schannel not stored across client disconnects" problem.
Based on the Samba4 solution - stores data in
$samba/private/schannel_store.tdb.
This tdb is not left open but open and closed on demand.
Jeremy.
(This used to be commit a6d8a4b1ff)
2007-10-10 11:04:54 -05:00
Jeremy Allison
2237bc6a42 r10724: Got a little ahead of myself...
Jeremy.
(This used to be commit 86ffef8162)
2007-10-10 11:04:51 -05:00
Jeremy Allison
ac34076306 r10722: Remove unused BOOL in struct dcinfo.
Ensure that the mach_acct and remote machine entries are
set correctly in struct dcinfo - we'll need this as a key
for a persistent schannel state later.
Jeremy.
(This used to be commit 47269b5c71)
2007-10-10 11:04:51 -05:00
Gerald Carter
54abd2aa66 r10656: BIG merge from trunk. Features not copied over
* \PIPE\unixinfo
* winbindd's {group,alias}membership new functions
* winbindd's lookupsids() functionality
* swat (trunk changes to be reverted as per discussion with Deryck)
(This used to be commit 939c3cb5d7)
2007-10-10 11:04:48 -05:00
Jeremy Allison
c2e5ce1501 r10269: Server-side fix for creds change - revert jcmd's change.
Jeremy.
(This used to be commit e1c9813d63)
2007-10-10 11:03:40 -05:00
Jim McDonough
dcf2200411 r9261: Fix #2976: windows member servers wouldn't alloc connections from users
defined locally because if we didn't find them as a DC we were marking
the response as authoritative.  Now if it's not a domain we know, we
mark the response non-authoritative.

Fix from jpjanosi@us.ibm.com
(This used to be commit d522277b86)
2007-10-10 11:00:29 -05:00
Jim McDonough
d6403e7280 r9242: Fix my fix for #2953. I'd moved too much code until after we verify the user,
causing netlogon to return an invalid response for failed interactive logons.
(This used to be commit 4deb918b68)
2007-10-10 11:00:28 -05:00
Jim McDonough
7fff6638fc r9112: Fix #2953 - credentials chain on DC gets out of sync with client when
NT_STATUS_NO_USER returned.  We were moving to the next step in the
chain when the client wasn't.  Only update when the user logs on.
(This used to be commit b01a3a4111)
2007-10-10 11:00:26 -05:00
Jim McDonough
e7c48884a5 r8432: Fix #2077 - login to trusted domain doesn't allow home drive map and login
scripts to be executed.

We were filling in our name as the server which processed the login, even
when it was done by a trusted DC.

Thanks to John Janosik <jpjanosi@us.ibm.com> for the fix.
(This used to be commit 0446319a3b)
2007-10-10 11:00:05 -05:00
Volker Lendecke
a01de91394 r7217: Only allow schannel connections if a successful Auth2 has been done
before. Things tested: Domain join and subsequent interactive and network
logon to NT4, W2kSP and XPSP2 workstations and a NT4 domain trusting us. Right
now I've got problems with my W2k3 domain trusts. So this needs testing,
although I'm really confident that this does not break.

Volker
(This used to be commit c25b4afda2)
2007-10-10 10:57:05 -05:00
Gerald Carter
f24d88cf9d r7139: trying to reduce the number of diffs between trunk and 3.0; changing version to 3.0.20pre1
(This used to be commit 9727d05241)
2007-10-10 10:57:02 -05:00
Herb Lewis
978ca84860 r6225: get rid of warnings from my compiler about nested externs
(This used to be commit efea76ac71)
2007-10-10 10:56:30 -05:00
Jeremy Allison
acf9d61421 r4088: Get medieval on our ass about malloc.... :-). Take control of all our allocation
functions so we can funnel through some well known functions. Should help greatly with
malloc checking.
HEAD patch to follow.
Jeremy.
(This used to be commit 620f2e608f)
2007-10-10 10:53:32 -05:00
Andrew Bartlett
90cd0c339c r2761: Print the decrypted, not encrypted key.
Andrew Bartlett
(This used to be commit 1833d0ab72)
2007-10-10 10:52:51 -05:00
Andrew Bartlett
0fc457be2f r2137: This is a patch I've been running at Hawker for a while.
The purpose of this patch is to avoid changing the machine account
password, when it has 'already been changed'.  This occours in
situations where the secure channel between the workstation and the DC
breaks down, such as occoured in the MS04-11 security patch.  This
avoids LDAP replication load issues, due to the client changing the
password repeatedly.

We also now set the LM password to NULL explicitly, rather than the NT
password value, as this is what we get out of a vampire, or when a
long password is set (as XP seems to do these days).

Andrew Bartlett
(This used to be commit 1ad1317a81)
2007-10-10 10:52:33 -05:00
Andrew Bartlett
9d0783bf21 r1492: Rework our random number generation system.
On systems with /dev/urandom, this avoids a change to secrets.tdb for every fork().

For other systems, we now only re-seed after a fork, and on startup.
No need to do it per-operation.  This removes the 'need_reseed'
parameter from generate_random_buffer().

Andrew Bartlett
(This used to be commit 36741d3cf5)
2007-10-10 10:52:13 -05:00
Gerald Carter
9dbf2e2419 r991: Allow winbindd to use the domain trust account password
for setting up an schannel connection.  This solves the problem
of a Samba DC running winbind, trusting a native mode AD domain,
and needing to enumerate AD users via wbinfo -u.
(This used to be commit e9f109d1b3)
2007-10-10 10:51:53 -05:00
Gerald Carter
8ad3d8c9b0 r196: merging struct uuid from trunk
(This used to be commit 911a28361b)
2007-10-10 10:51:13 -05:00
Andrew Bartlett
d17425ed52 r69: Global rename of 'nt_session_key' -> 'user_session_key'. The session key could
be anything, and may not be based on anything 'NT'.  This is also what microsoft
calls it.
(This used to be commit 724e8d3f33)
2007-10-10 10:51:06 -05:00
Volker Lendecke
60a237b0b5 Fix sambaUserWorkstations for network samlogons against us as DC. Strip
the \\ off the workstation.

Volker
(This used to be commit d01cb00aad)
2004-03-18 07:36:36 +00:00
Andrew Bartlett
fcbfc7ad06 Changes all over the shop, but all towards:
- NTLM2 support in the server
 - KEY_EXCH support in the server
 - variable length session keys.

In detail:

 - NTLM2 is an extension of NTLMv1, that is compatible with existing
domain controllers (unlike NTLMv2, which requires a DC upgrade).

 * This is known as 'NTLMv2 session security' *

(This is not yet implemented on the RPC pipes however, so there may
well still be issues for PDC setups, particuarly around password
changes.  We do not fully understand the sign/seal implications of
NTLM2 on RPC pipes.)

This requires modifications to our authentication subsystem, as we
must handle the 'challege' input into the challenge-response algorithm
being changed.  This also needs to be turned off for
'security=server', which does not support this.

- KEY_EXCH is another 'security' mechanism, whereby the session key
actually used by the server is sent by the client, rather than being
the shared-secret directly or indirectly.

- As both these methods change the session key, the auth subsystem
needed to be changed, to 'override' session keys provided by the
backend.

- There has also been a major overhaul of the NTLMSSP subsystem, to merge the 'client' and 'server' functions, so they both operate on a single structure.  This should help the SPNEGO implementation.

- The 'names blob' in NTLMSSP is always in unicode - never in ascii.
Don't make an ascii version ever.

- The other big change is to allow variable length session keys.  We
have always assumed that session keys are 16 bytes long - and padded
to this length if shorter.  However, Kerberos session keys are 8 bytes
long, when the krb5 login uses DES.

 * This fix allows SMB signging on machines not yet running MIT KRB5 1.3.1. *

- Add better DEBUG() messages to ntlm_auth, warning administrators of
misconfigurations that prevent access to the privileged pipe.  This
should help reduce some of the 'it just doesn't work' issues.

- Fix data_blob_talloc() to behave the same way data_blob() does when
passed a NULL data pointer.  (just allocate)


REMEMBER to make clean after this commit - I have changed plenty of data structures...
(This used to be commit f3bbc87b0d)
2003-11-22 13:19:38 +00:00
Andrew Bartlett
ec04a97496 Remove compleatly wrong comments. (There were correct, 2 years ago...)
Andrew Bartlett
(This used to be commit 256b85802e)
2003-11-07 08:34:43 +00:00
Tim Potter
c085ace063 Typo in comment.
(This used to be commit 6a9bfcd3b8)
2003-07-23 06:11:38 +00:00
Andrew Bartlett
61116049ca This patch takes the work the jerry did for beta2, and generalises it:
- The 'not implmented' checks are now done by all auth modules
 - the ntdomain/trustdomain/winbind modules are more presise as to
   what domain names they can and cannot handle
 - The become_root() calls are now around the winbind pipe opening only,
   not the entire auth call
 - The unix username is kept seperate from the NT username, removing the
   need for 'clean off the domain\' in parse_net.c
 - All sid->uid translations are now validated with getpwuid() to put a very
   basic stop to logins with 'half deleted' accounts.

Andrew Bartlett
(This used to be commit 85f88191b9)
2003-07-03 14:36:42 +00:00