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

132 Commits

Author SHA1 Message Date
Günther Deschner
2d5e0eadb8 s3-auth: use full 16byte session key in make_user_info_netlogon_interactive().
Patch from Jeremy.

With this patch, I was able to join Windows 7 RC to a Samba3 DC, and login into a
Samba 3 Domain.

There are still two registry settings required:

        HKLM\System\CCS\Services\LanmanWorkstation\Parameters
	            DWORD  DomainCompatibilityMode = 1
		    DWORD  DNSNameResolutionRequired = 0

Do *not* modify the other netlogon registry parameters that were passed around,
they weaken security.

Guenther
(cherry picked from commit b5097d54cb)
2009-05-07 19:25:46 +02:00
Volker Lendecke
9b3f2e69f7 Make "struct policy" private to srv_lsa_hnd.c 2009-04-19 09:27:14 +02:00
Günther Deschner
531af136f9 s3: remove POLICY_HND.
Guenther
2009-03-18 23:22:29 +01:00
Günther Deschner
77d2cd1ff7 s3-spoolss: remove unused RPC_BUFFER definition.
Guenther
2009-03-17 19:07:38 +01:00
Volker Lendecke
3a4c8cd492 Make prs_struct->out_data.current_pdu dynamically allocated
Another 4k per open pipe
2009-02-08 13:53:50 +01:00
Volker Lendecke
51dc7b9d82 Make current_in_pdu in pipes_struct allocated
This makes an open pipe about 4K cheaper
2009-02-07 19:25:34 +01:00
Volker Lendecke
53394980ad Replace pipe names in pipes_struct by ndr_syntax_id
This was mainly used for debugging output
2009-02-01 14:34:23 +01:00
Volker Lendecke
84292022bf Now that all policy_handle free_fn's are just TALLOC_FREE, dump free_fn 2009-01-08 22:29:54 +01:00
Volker Lendecke
ef54ad52e0 Move the "rid_name" typedef to the only place where it might be used 2009-01-06 11:24:59 +01:00
Volker Lendecke
f340ed1348 Fix nonempty blank lines 2008-11-24 11:39:03 +01:00
Volker Lendecke
907f126d3e Get rid of pipes_struct->pipe_user, we have server_info now --- YESSS! 2008-11-24 11:39:03 +01:00
Volker Lendecke
a781b78417 Remove smb_np_struct 2008-10-13 20:59:33 +02:00
Volker Lendecke
ac126ea818 Use "struct files_struct" for pipes instead of smb_np_struct 2008-10-13 20:59:32 +02:00
Volker Lendecke
33cbe2f88c make read/write to internal pipes available externally
(This used to be commit e11b5cb1e0)
2008-07-26 13:20:10 +02:00
Volker Lendecke
a803f0a920 Refactoring: Make close_internal_rpc_pipe_hnd a talloc destructor
(This used to be commit 10b47a0c2c)
2008-07-26 13:20:10 +02:00
Volker Lendecke
1ee37bc9c3 Refactor make_internal_rpc_pipe_p: connection_struct is not needed
(This used to be commit defcf0eecf)
2008-07-26 13:20:10 +02:00
Volker Lendecke
bcb652451b Simplify the RPC servers: remove get_pipe_fns
The per-server xxx_get_pipe_fns functions can go once all the RPC servers are
converted
(This used to be commit 6aa2391cbe)
2008-07-18 15:04:05 +02:00
Volker Lendecke
aa02c3fcd5 Remove p->vuid
The users can use p->server_info.

Now pipes_struct is decoupled from the SMB transport.
(This used to be commit d4cf5a1319)
2008-06-26 13:13:23 +02:00
Volker Lendecke
747a580952 Now that we have p->server_info, use p->server_info->user_session_key
(This used to be commit aefad64e3a)
2008-06-26 13:13:23 +02:00
Volker Lendecke
d331624fdf Add server_info to pipes_struct
(This used to be commit d621867bb8)
2008-06-26 13:13:22 +02:00
Volker Lendecke
9ff4001245 Remove "conn" from pipes_struct
For spoolss, we need the client's IP address
(This used to be commit 64a4dfaa82)
2008-06-24 10:31:36 +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
6ccbc1065d pipes_struct->pipe_user_name is unused, remove it
(This used to be commit 32cd4bf34b)
2008-05-05 18:28:58 +02:00
Volker Lendecke
13a60a4005 Remove namedpipe_transact fn pointer from smb_np_struct
(This used to be commit d1f82b7e67)
2008-04-14 14:16:58 +02:00
Volker Lendecke
c751386bb8 Remove some write-only fstrings
(This used to be commit aacb07b1b0)
2008-04-11 22:21:04 +02: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
Volker Lendecke
02dd1f7f4c Make smb_np_struct talloc'ed
Convert "name" from string to a talloc'ed char *
(This used to be commit e82069f921)
2007-12-16 12:59:21 +01: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
Gerald (Jerry) Carter
e5a951325a [GLUE] Rsync SAMBA_3_2_0 SVN r25598 in order to create the v3-2-test branch.
(This used to be commit 5c6c8e1fe9)
2007-10-10 15:34:30 -05:00
Jeremy Allison
d5c9d87946 r25118: More pstring elimination.
Jeremy.
(This used to be commit 7632f8fb40)
2007-10-10 12:30:41 -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
Volker Lendecke
ced8406402 r19218: With the new RPC server infrastructure all backend functions are filled, at
least with dummy routines. We need a way to indicate that we do not support a
call, so that srv_pipe_hnd.c can return the DCE level RNG_ERROR.

This flag can be set in the backend routines for this one. I'll change pidl to
generate code to "return False" in srv_lsa.c if this flag is set.

Volker
(This used to be commit 5260657664)
2007-10-10 12:15:22 -05:00
Jeremy Allison
fbdcf2663b r16945: Sync trunk -> 3.0 for 3.0.24 code. Still need
to do the upper layer directories but this is what
everyone is waiting for....

Jeremy.
(This used to be commit 9dafb7f48c)
2007-10-10 11:19:14 -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
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
Volker Lendecke
678f13c761 r12046: Fix typo
(This used to be commit b9d1a65910)
2007-10-10 11:05:43 -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
Gerald Carter
5d1cb8e79e r6014: rather large change set....
pulling back all recent rpc changes from trunk into
3.0.  I've tested a compile and so don't think I've missed
any files.  But if so, just mail me and I'll clean backup
in a couple of hours.

Changes include \winreg, \eventlog, \svcctl, and
general parse_misc.c updates.

I am planning on bracketing the event code with an
#ifdef ENABLE_EVENTLOG until I finish merging Marcin's
changes (very soon).
(This used to be commit 4e0ac63c36)
2007-10-10 10:56:15 -05:00
Gerald Carter
61dfab9f70 r5805: merging spoolss parsing changes from trunk and cleaning up resulting segvs
(This used to be commit 25121547ca)
2007-10-10 10:56:01 -05:00
Tim Potter
a68a17a11e r2007: Fix typo in Jeremy's copyright. From the output of cvs annotate a year
in the late 1990's may be more appropriate though.
(This used to be commit 4c881b7a9e)
2007-10-10 10:52:27 -05:00
Jeremy Allison
d4ac326d46 r1412: Fix password history list in tdbsam. Fix some memory leaks. Add
my (C) to a header file that was at least 50% mine :-).
Jeremy.
(This used to be commit 8ee6060977)
2007-10-10 10:52:10 -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
Gerald Carter
7af3777ab3 r116: volker's patch for local group and group nesting
(This used to be commit b393469d95)
2007-10-10 10:51:10 -05: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
Jim McDonough
3d8e3f314b Add initshutdown pipe commands to rpcclient. Second part of fix to bug
#534
(This used to be commit 4e86243ea1)
2003-10-24 13:49:29 +00:00
Gerald Carter
11777e6a30 Attempt at fixing bug #283. There however is no solution.
There is a workaround documented in the bug report.

This patch does:

  * add server support for the LSA_DS UUID on the lsarpc pipe
  * store a list of context_ids/api_structs in the pipe_struct
    so that we don't have to lookup the function table for a pipe.
    We just match the context_id.  Note that a dce/rpc alter_context
    does not destroy the previous context so it is possible to
    have multiple bindings active on the same pipe. Observed from
    standalone win2k sp4 client.
  * added server code for DsROleGetPrimaryDOmainInfo() but disabled it
    since it causes problems enumerating users and groups from a 2ksp4
    domain member in a Samba domain.
(This used to be commit 96bc2abfcb)
2003-08-14 21:14:28 +00:00
Jim McDonough
bdaac40746 Move PAC decoding over from HEAD.
(This used to be commit b0fd4e5555)
2003-04-16 16:57:01 +00:00
Tim Potter
3b865c7398 Merge of rpcecho pipe for testing large dcerpc requests and responses.
Only compiled in when --enable-developer argument passed to configure.
(This used to be commit 017da9393b)
2003-04-14 02:08:03 +00:00