1
0
mirror of https://github.com/samba-team/samba.git synced 2025-02-23 09:57:40 +03:00

952 Commits

Author SHA1 Message Date
Gerald Carter
4a090ba06a trying to get HEAD building again. If you want the code
prior to this merge, checkout HEAD_PRE_3_0_0_BETA_3_MERGE
(This used to be commit adb98e7b7cd0f025b52c570e4034eebf4047b1ad)
2003-07-16 05:34:56 +00:00
Andrew Bartlett
456f51bcbe Jeremy requested that I get my NTLMSSP patch into CVS. He didn't request
the schannel code, but I've included that anyway. :-)

This patch revives the client-side NTLMSSP support for RPC named pipes
in Samba, and cleans up the client and server schannel code.  The use of the
new code is enabled by the 'sign', 'seal' and 'schannel' commands in
rpcclient.

The aim was to prove that our separate NTLMSSP client library actually
implements NTLMSSP signing and sealing as per Microsoft's NTLMv1 implementation,
in the hope that knowing this will assist us in correctly implementing
NTLMSSP signing for SMB packets.  (Still not yet functional)

This patch replaces the NTLMSSP implementation in rpc_client/cli_pipe.c with
calls to libsmb/ntlmssp.c.  In the process, we have gained the ability to
use the more secure NT password, and the ability to sign-only, instead of
having to seal the pipe connection.  (Previously we were limited to sealing,
and could only use the LM-password derived key).

Our new client-side NTLMSSP code also needed alteration to cope with our
comparatively simple server-side implementation.  A future step is to replace
it with calls to the same NTLMSSP library.

Also included in this patch is the schannel 'sign only' patch I submitted to
the team earlier.  While not enabled (and not functional, at this stage) the
work in this patch makes the code paths *much* easier to follow.  I have also
included similar hooks in rpccleint to allow the use of schannel on *any* pipe.

rpcclient now defaults to not using schannel (or any other extra per-pipe
authenticiation) for any connection.  The 'schannel' command enables schannel
for all pipes until disabled.

This code is also much more secure than the previous code, as changes to our
cli_pipe routines ensure that the authentication footer cannot be removed
by an attacker, and more error states are correctly handled.

(The same needs to be done to our server)

Andrew Bartlett
(This used to be commit 5472ddc9eaf4e79c5b2e1c8ee8c7f190dc285f19)
2003-07-14 08:46:32 +00:00
Tim Potter
9e51951e6e Don't bomb out when trying to unmarshall a zero length printerdata value.
Fixes remote printer publishing of shared printers from a Samba server.
(This used to be commit 7f363fa32d3b660567fc87d5d0b1e1d4dd58461a)
2003-07-14 05:13:30 +00:00
Jeremy Allison
4072006fec Get rid of DISP_USER_INFO/DISP_GROUP_INFO as they serve no useful
purpose. Replace with an array of SAM_ACCOUNT/DOMAIN_GRP entries.
ZERO struct's in smbd/uid.c stops core dumps when sid_to_XX
functions fail. Getting ready to add caching.
Jeremy.
(This used to be commit 9d0692a54fe2cb087f25796ec2ab5e1d8433e388)
2003-07-09 00:23:42 +00:00
Jeremy Allison
ce72beb2b5 Removed strupper/strlower macros that automatically map to strupper_m/strlower_m.
I really want people to think about when they're using multibyte strings.
Jeremy.
(This used to be commit ff222716a08af65d26ad842ce4c2841cc6540959)
2003-07-03 19:11:31 +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 85f88191b9927cc434645ef4c1eaf5ec0e8af2ec)
2003-07-03 14:36:42 +00:00
Gerald Carter
a31a2c159c well this was easy...
When winbindd is running on a PDC the SAM_ACCOUNT for a trusted user
has a username of DOMAIN\user.  Make sure to trim the domain part
from the username when filling in the net_sam_logon reply.
This fixes the browsing issues i was seen across domain trusts.
(This used to be commit 62e36e6ede067ace23f5473d04917c7eeedf07e2)
2003-07-03 03:56:16 +00:00
Jeremy Allison
58fca50742 Adding jcmd's share ACL on XP patch. Thanks Jim !
Jeremy.
(This used to be commit 7ed1118ae61a13de2c781a94fc2394090efd1f9b)
2003-07-01 21:47:13 +00:00
Jeremy Allison
9fda812d01 Finally ! Fixed the ACL ordering bug reported by jcmd. I realised we were
not sorting returned ACE's correctly w.r.t. W2K - implemented the correct
algorithm.
Jeremy.
(This used to be commit fa23a4158ec23c0b8dbdc6c53f29958243107dee)
2003-06-30 18:53:48 +00:00
Gerald Carter
fb82535d1f fix bug #178; available space in devmode should be int
(This used to be commit 944480b89a829f159cabff100d83a72400aa6b6c)
2003-06-23 17:47:25 +00:00
Jeremy Allison
bf50387f49 Never second guess tridge.... (always talloc an internal pointer... ).
Jeremy.
(This used to be commit 72ecdb387db60a4afab4d4fabf76f4c1d7ecbeeb)
2003-06-05 02:44:24 +00:00
Jeremy Allison
bcf59e2575 Fix for previous checkin. Only use talloc on unmarshalling or we'll
leak memory.
Jeremy.
(This used to be commit 07a76eb2e01833d5e2e447391cffeda712118c20)
2003-06-04 06:22:44 +00:00
Andrew Tridgell
894b003ce6 fixed the arbitrary 256 limit on the size of aliases in parse_samr
(This used to be commit 7f8634c35aed0d8c3fe8f7700ca1175c10b6e031)
2003-06-04 04:42:33 +00:00
Gerald Carter
e1e363e4e9 * set winbind cache time to 5 minutes
* quit obsessing over the sequence number so much
* share the updated sequence number between parent
  and child winbindd processes in dual mode
(This used to be commit 6fb5bdb30e2b1341ba600ce0dfd397394f7a831c)
2003-06-03 16:19:31 +00:00
Jeremy Allison
ead7ad7f80 Fix debug message merge.
Jeremy.
(This used to be commit d6f23166420d89ea7d3d5433e3234529681cb330)
2003-06-03 07:21:09 +00:00
Jeremy Allison
545e8d4999 Change get_nt_acl() to include security_info wanted. Only return this.
This gets us closer to W2k+ in what we return for file ACLs. Fix horribly
broken make_sec_desc() that screwed up the size when given a SD with no
owner or group (how did it get this bad... ?).
Jeremy.
(This used to be commit 183c9ed4052ab14e269ed1234ca557053f77e77a)
2003-05-29 23:49:31 +00:00
Tim Potter
0842573b51 Merge of secchan fix from 3.0 that was eaten by CVS yesterday. I think
it was becuase I ran out of disk quota.
(This used to be commit 10cbec05a7bfe2fab54940329c5b348d5e524f29)
2003-05-27 00:30:29 +00:00
John Terpstra
b311be4a01 Metze's patches:
here's a small patch which renames the symbol 'log' to some better names
to avoid compiler warnings about shodow global var 'log'
in proto.h

we now have a GLOBAL_SECTION_SNUM -1

so we should use it in swat too:-)
(This used to be commit a4733a0748b4d24457558304ad47852c69905cb2)
2003-05-26 16:54:39 +00:00
Tim Potter
0d3097c135 This fixes net rpc vampire when talking to win2k (<sp3). win2k sends
back a different sized blob of encrypted password data then we were
expecting.  There's an extra 32 bytes of unknown stuff.
(This used to be commit 285952fd626b02362fb6732f90c5a3ce0d2d5ae0)
2003-05-26 06:59:38 +00:00
Volker Lendecke
42954dc084 Fix an insufficient alloc when querying alias members.
Volker
(This used to be commit 9d2d570caa4dad194534249cd5e4dc4984b4002e)
2003-05-24 14:53:15 +00:00
Volker Lendecke
169a42b249 Fix an insufficient alloc when querying alias members.
Volker
(This used to be commit 47c36290db5e1f84ddf78913b3971aea04d243ab)
2003-05-24 14:52:48 +00:00
Tim Potter
03412f056d Whitespace syncup.
(This used to be commit 7fd7af121ee8ba4f9540394f64fe3c78e2e96cd2)
2003-04-28 05:47:07 +00:00
Andrew Bartlett
ca103a076a This function is a duplicate.
(This used to be commit fd0cd6200b4b9b4b002dc5b640620c3fb533873b)
2003-04-25 05:29:55 +00:00
Andrew Bartlett
2a3a9f0bf4 Merge the 'safe' parts of my StrnCpy patch - many of the users really wanted
a pstrcpy/fstrcpy or at most a safe_strcpy().

These have the advantage of being compiler-verifiable.

Get these out of the way, along with a rewrite of 'get_short_archi' in the
spoolss client and server.  (This pushes around const string pointers, rather
than copied strings).

Andrew Bartlett
(This used to be commit 32fb801ddc035e8971e9911ed4b6e51892e9d1cc)
2003-04-23 13:27:35 +00:00
Volker Lendecke
0865120fca parse_string is only used for the authentication negotiators.
It can itself determine the length of the string it has to
transfer. Andrew B., could you take a look at the length calculation?
Is that safe?

Thanks,

Volker
(This used to be commit d5f1082753f84f0e3a22739055b6b9cbde29faa9)
2003-04-22 15:55:07 +00:00
Volker Lendecke
e15dfd44c9 parse_string is only used for the authentication negotiators.
It can itself determine the length of the string it has to
transfer. Andrew B., could you take a look at the length calculation?
Is that safe?

Thanks,

Volker
(This used to be commit 0ef69b586a8f1fa11a41a3900180ea2090b60bfd)
2003-04-22 15:54:36 +00:00
Volker Lendecke
cdb197135f Survive a samdump with an alias that has no description
Volker
(This used to be commit 408a94b64d4d799f256c11a2009e161b27553cbb)
2003-04-18 08:36:12 +00:00
Volker Lendecke
e54b9d59d6 Survive a samdump with an alias that has no description
Volker
(This used to be commit 5af417a6ba24e6bb09979488511f482efa4894b8)
2003-04-18 08:35:08 +00:00
Jeremy Allison
8f25fd3d72 Fixes to make SCHANNEL work against a W2K DC. Still need to fix
multi-PDU encode/decode with SCHANNEL. Also need to test against WNT DC.
Jeremy.
(This used to be commit ec82e8e9f4a6bf807a91ac265af39a516c7ab631)
2003-04-16 15:54:00 +00:00
Jeremy Allison
09a50497d1 Fixes to make SCHANNEL work in 3.0 against a W2K DC. Still need to fix
multi-PDU encode/decode with SCHANNEL. Also need to test against WNT DC.
Jeremy.
(This used to be commit ff66d4097088409205b6bad5124a78ef9946010d)
2003-04-16 15:39:57 +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 017da9393bab276543d0d5c50df8c760780f2450)
2003-04-14 02:08:03 +00:00
cvs2svn Import User
a47d06a2c2 This commit was manufactured by cvs2svn to create branch 'SAMBA_3_0'.(This used to be commit 381649916ecbaddefbb6ee0e6137b7cc73eb54b1) 2003-04-13 13:50:46 +00:00
Tim Potter
065561932c A new RPC pipe! The \pipe\echo named pipe is for testing large RPC
requests and responses and is only compiled in when --enable-developer
is passed to configure.  It includes server and client side code for
generating and responding to functions on this pipe.  The functions are:

 - AddOne: add one to the uint32 argument and return ig
 - EchoData: echo back a variable sized char array to the caller
 - SourceData: request a variable sized char array
 - SinkData: send a variable sized char array and throw it away

There's a win32 implementation of the client and server in the
junkcode CVS repository in the rpcecho-win32 subdirectory.
(This used to be commit 4ccd34ef836eba05f81dc2da73fd7cfaac201798)
2003-04-11 04:09:14 +00:00
Volker Lendecke
7238bf5f40 This is the netlogon schannel client code. Try a
rpcclient -S pdc -U% -c "samlogon user password"

and it should work with the schannel. Needs testing against platforms
different from NT4SP6.

Volker
(This used to be commit eaef0d8aeff1aa5a067679be3f17e08d7434e1e8)
2003-04-09 15:54:17 +00:00
Volker Lendecke
803e23f403 This is the netlogon schannel client code. Try a
rpcclient -S pdc -U% -c "samlogon user password"

and it should work with the schannel. Needs testing platforms
different from NT4SP6.

Volker
(This used to be commit ecd0ee4d248e750168597ccf79c389513bb0f740)
2003-04-09 15:47:06 +00:00
Volker Lendecke
42c18d5299 A little clarification in the rpc auth header struct.
Volker
(This used to be commit 36362c602ba03ae5e89956b16820d5dff580bee7)
2003-04-09 09:54:26 +00:00
Volker Lendecke
d9440df579 A little clarification in the rpc auth header struct.
Volker
(This used to be commit 9fc3e4bf9fa7845b5d4a7eb4cacfec586045ebd0)
2003-04-09 09:52:57 +00:00
Volker Lendecke
d3b8ac6f96 Put the core schannel functions to parse_prs.c. They are also used by
schannel clients.

Volker
(This used to be commit 0f348a35d09ff020837119157ef7f4b9e6f07643)
2003-04-09 09:31:29 +00:00
Volker Lendecke
425797700b Put the core schannel functions to parse_prs.c. They are also used by
schannel clients.

Volker
(This used to be commit 41e92409e1c6912db05acc80b6c0d5dccd51859b)
2003-04-09 09:29:47 +00:00
Volker Lendecke
b4d0f208fb Merge the TNG netlogon schannel from HEAD.
No more XP requiresignorseal anymore!

Thanks again to Luke :-)

Volker
(This used to be commit 6b2b55901d66cab0c0c0c90bd0585c870be6e468)
2003-04-06 07:04:09 +00:00
Volker Lendecke
02bb4e1b8a This is a merge of the NETLOGON schannel server code from Samba
TNG. Actually, it exists in the main Samba cvs tree in APPLIANCE_TNG
as I found out later :-)

It adds a new parameter: server schannel = yes/auto/no defaulting to
auto.

What does this mean to the user: No requireSignOrSeal registry patch
for XP anymore.

Many thanks for this code to Luke Leighton, Elrond and anybody else I
forgot to mention.

My next thing will be to see if this applies cleanly to 3_0.

Please test and comment!

Volker
(This used to be commit e1f953241eb020f19fe657f29afdae28dcf5a03b)
2003-04-04 15:21:04 +00:00
Jelmer Vernooij
4905ba282f - Support building all auth modules as .so's
- Change 2 variable names to avoid conflicts (patch by Stephan Kulow <coolo@kde.org>)
(This used to be commit 71b05cd14ae6df8340730e7bad1c783dc278c5d3)
2003-03-25 14:46:11 +00:00
Andrew Bartlett
e88eab35bc Merge from HEAD:
signed/unsigned (mostly i counters)

a little bit of const.

Andrew Bartlett
(This used to be commit 50f0ca752e5058c4051f42a9337361373ba1f727)
2003-03-17 23:04:03 +00:00
Andrew Bartlett
a27d434c4b Fix signed/unsigned issues - mostly 'i' counters.
Fix an inconpatible poitner type that caused the IA64 not to build

Andrew Bartlett
(This used to be commit 37436b0aae108fceace3049d3868510e1ba592ac)
2003-03-15 07:45:51 +00:00
Jeremy Allison
71e94ca904 Merge from HEAD. 'fixed the unmarshalling of the queryaliasmem SAMR call'
Jeremy.
(This used to be commit 40def80d43b14a853045a31b382226fe0381f38a)
2003-03-13 07:57:49 +00:00
Andrew Tridgell
537e4d5565 fixed the unmarshalling of the queryaliasmem SAMR call
(This used to be commit 80c45434092a881fe2c9ae7f90856deea4722cb0)
2003-03-13 04:35:15 +00:00
Andrew Bartlett
6ed6740236 Don't fault on error returns (ptr == 0) for this LSA query.
(for example, query to non-dc)

Andrew Bartlett
(This used to be commit d1dde5f684652f86e63ac6cfa34ff42a680693de)
2003-03-09 01:13:41 +00:00
Simo Sorce
8a751c019c Some progress towards gums and tdbsam2
genparser works fine, and it is a marvelous tool to store objects in tdb :)
(This used to be commit 4c6d461a8572f03cd33cba95500cc837638b732c)
2003-03-07 18:26:24 +00:00
Gerald Carter
ccb58b303a add #define for the max device name length in a DEVICEMODE
(This used to be commit 52ef84b53495db1eac6ecfb0b926ef8df7ea5cc5)
2003-03-06 16:09:11 +00:00
Gerald Carter
26b1ed7cc0 add #define for the max device name length in a DEVICEMODE
(This used to be commit 21ec2b6ba3ddba6964f6ddb53f8494e4a8b48a83)
2003-03-06 16:06:12 +00:00