1
0
mirror of https://github.com/samba-team/samba.git synced 2025-01-22 22:04:08 +03:00

2603 Commits

Author SHA1 Message Date
Stefan Metzmacher
f88bf54c7f r889: convert samba4 to use [u]int16_t instead of [u]int16
metze
(This used to be commit af6f1f8a01bebbecd99bc8c066519e89966e65e3)
2007-10-10 12:56:16 -05:00
Stefan Metzmacher
f9d8f8843d r884: convert samba4 to use [u]int32_t instead of [u]int32
metze
(This used to be commit 0e5517d937a2eb7cf707991d1c7498c1ab456095)
2007-10-10 12:56:15 -05:00
Andrew Bartlett
5b0ab386cb r874: This patch is a pile of work on NTLMSSP:
Samba's NTLMSSP code is now fully talloc based, which should go a long
way to cleaning up the memory leaks in this code.  This also avoids a
lot of extra copies of data, as we now allocate the 'return' blobs on
a caller-supplied context.

I have also been doing a lot of work towards NTLM2 signing and
sealing.  I have this working for sealing, but not for the verifier
(MD5 integrity check on the stream) which is still incorrect.

(I can aim a rpcecho sinkdata from a Win2k3 box to my server, and the
data arrives intact, but the signature check fails.  It does however
match the test values I have...).

The new torture test is cludged in - when we get a unit test suite
back, I'll happliy put it in the 'right' place....

Andrew Bartlett
(This used to be commit 399e2e2b1149b8d1c070aa7f0d5131c0b577d2b9)
2007-10-10 12:56:14 -05:00
Andrew Tridgell
579c13da43 r873: converted samba4 to use real 64 bit integers instead of
structures. This was suggested by metze recently.

I checked on the build farm and all the machines we have support 64
bit ints, and support the LL suffix for 64 bit constants. I suspect
some won't support strtoll() and related functions, so we will
probably need replacements for those.
(This used to be commit 9a9244a1c66654c12abe4379661cba83a73c4c21)
2007-10-10 12:56:14 -05:00
Andrew Bartlett
92dd542aa0 r754: Implement the SetPassword operation on the netlogon pipe.
This involves allowing the password set code in samdb to take an
already hashed password, and some fixes to our torture code.

Andrew Bartlett
(This used to be commit f9f581b5804a20785df06cde157b23c952edc2ce)
2007-10-10 12:53:48 -05:00
Andrew Bartlett
064e7447be r743: Start on a NETLOGON server in Samba4.
Currently this only authentiates the machine, not real users.

As a consequence of running the Samba4 NETLOGON test against Samba4, I
found a number of issues in the SAMR server, which I have addressed.
There are more templates in the provison.ldif for this reason.

I also added some debug to our credentials code, and fixed some bugs
in the auth_sam module.

The static buffer in generate_random_string() bit me badly, so I
removed it in favor of a talloc based system.

Andrew Bartlett
(This used to be commit 94624e519b66def97758b8a48a01ffe9029176f0)
2007-10-10 12:53:46 -05:00
Andrew Bartlett
6b921d1d21 r719: Follow the trend - remove more unused functions.
Andrew Bartlett
(This used to be commit 62eef851fd79b2739b93b4ed7829514a3dcbf1d0)
2007-10-10 12:53:45 -05:00
Andrew Tridgell
5767c10773 r718: removed some more unused code, and two source files
(This used to be commit a9768c25fd32e76514c837f343f2b52bf0f0824d)
2007-10-10 12:53:44 -05:00
Andrew Bartlett
c727f2ec5e r708: Clean up copyright headers, to reflect code that has come and gone
over time.

Andrew Bartlett
(This used to be commit 1a53e5c8296a7c09563abde1eb4a66ce9cf45473)
2007-10-10 12:53:44 -05:00
Stefan Metzmacher
90cde0acd1 r702: fix krb5 linking
metze
(This used to be commit d0145cec9f757d8867d54b1019a3060995a95072)
2007-10-10 12:53:43 -05:00
Stefan Metzmacher
ace1c1f816 r697: make use of SMB_EXT_LIB for LDAP and KRB5
metze
(This used to be commit b054f7d4906d1d2b96b352af09c6bdcf96553c2a)
2007-10-10 12:53:43 -05:00
Stefan Metzmacher
f236700ef6 r665: merge over the new build system from my tmp branch
to the main SAMBA_4_0 tree.

NOTE: that it's not completely ready, but it's functional:-)

metze
(This used to be commit c78a2ddb28ec50d6570a83b1f66f18a5c3621731)
2007-10-10 12:53:36 -05:00
Andrew Bartlett
59c8f48f0d r611: Fix breakage from my last commit:
Now that all session keys are DATA_BLOBs, fix the callers.

This assumes some things about the behaviour of certain crypto
algorithms, without the ability to test it on session keys != 16 bytes
in length.  We will just need to retest when we get the KRB5 support
in (DES keys are 8 bytes).

Andrew Bartlett
(This used to be commit e4355a7ec1eba92bdecef8cc478272897276dbae)
2007-10-10 12:51:51 -05:00
Andrew Bartlett
dce84ffd37 r610: - Merge the Samba3 'ntlm_auth --diagnostics' testsuite to Samba4.
- This required using NETLOGON_NEG_AUTH2_FLAGS for the
    SetupCredentials2 negotiation flags, which is what Samba3 does,
    because otherwise the server uses different crypto.
  - This tests the returned session keys, which we decrypt.

 - Update the Samba4 notion of a 'session key' to be a DATA_BLOB in
   most places.

 - Fix session key code to return NT_STATUS_NO_SESSION_KEY if none is
   available.

 - Remove a useless argument to SMBsesskeygen_ntv1

 - move netr_CredentialState from the .idl to the new credentials.h

Andrew Bartlett
(This used to be commit 44f8b5b53e6abd4de8a676f78d729988fadff320)
2007-10-10 12:51:51 -05:00
Andrew Bartlett
d8bb3d81a6 r451: More NTLMSSP work.
The work here is trying to get the LM_KEY option for NLTMSSP
operating, however until that functions properly, it is now controlled
by some new smb.conf options, defaulting off.

Andrew Bartlett
(This used to be commit c63eb35b45c6db6e4c5302d1832bb5cef49a14f6)
2007-10-10 12:51:43 -05:00
Andrew Bartlett
9f084101dd r443: Update Samba4 to the auth and NTLMSSP code from Samba3.
Not all the auth code is merged - only those parts that are actually
being used in Samba4.

There is a lot more work to do in the NTLMSSP area, and I hope to
develop that work here.  There is a start on this here - splitting
NTLMSSP into two parts that my operate in an async fashion (before and
after the actual authentication)

Andrew Bartlett
(This used to be commit 5876c78806e6a6c44613a1354e8d564b427d0c9f)
2007-10-10 12:51:42 -05:00
Andrew Tridgell
493a37ba66 r335: added much better handling of servers that die unexpectedly during a
request (a dead socket). I discovered this when testing against Sun's
PC-NetLink.

cleaned up the naming of some of the samr requests

add IDL and test code for samr_QueryGroupMember(),
samr_SetMemberAttributesOfGroup() and samr_Shutdown().  (actually, I
didn't leave the samr_Shutdown() test in, as its fatal to windows
servers due to doing exactly what it says it does).
(This used to be commit 925bc2622c105dee4ffff809c6c35cd209a839f8)
2007-10-10 12:51:33 -05:00
Andrew Tridgell
2b9fb9618a r324: - don't reseed on every password generate
- check for overflow (very unlikely) in random buffer generation
(This used to be commit 548ec1efefa6f337a362cbadae74f177774e9e29)
2007-10-10 12:51:32 -05:00
Andrew Tridgell
5f545543f0 r305: - added IDL and test code for samr_RidToSid()
- completed the IDL and test code for the various set user password
  mechanisms in samr. Three password mechanisms are now working, the
  UserInfo24 method, the OemChangePasswordUser2() method (which only
  sets the LM password) and the ChangePasswordUser2() method which sets
  both the LM and NT passwords.

- updated some crypto routines to support the password change tests
(This used to be commit 051efa2abf9d1fbbf783df411c02f2714027f813)
2007-10-10 12:51:19 -05:00
Andrew Tridgell
8fce9e3c54 r275: added IDL and test code for samr_QueryDisplayInfo3(),
samr_AddMultipleMembersToAlias(),
samr_RemoveMultipleMembersFromAlias(), samr_OemChangePasswordUser2(),
and samr_ChangePasswordUser2()

The password change functions don't actually work yet (but should
soon). At this stage I have just completed the IDL for them. Next step
is to get the hash verifiers right and the torture test should be able
to do password changes.
(This used to be commit 849d0d314a2add80f2b2be6b503fea05973f998e)
2007-10-10 12:51:19 -05:00
Andrew Tridgell
b9411f8aca r265: fixed a bug in the string to sid conversion code
(This used to be commit 117aa5cab7783ea741d4840ea5ced00cf34868a3)
2007-10-10 12:51:18 -05:00
Jeremy Allison
763c4bc9ac r204: Turns out that the string in the SEARCH unix_info level is that
rare thing, a non-length string (ie. not a WIRE_STRING) but a null
terminated char string. There wasn't a good interface to pull that
out of a blob (all the string interfaces assumed WIRE_STRINGS). Added
a new one, only used for this call. Sucks, I know - but the alternatives
suck more. Added tests for some of the unix info returned.
Jeremy.
(This used to be commit 4d0ed04c54b105789ffd32334c3b0e544f02418c)
2007-10-10 12:51:16 -05:00
Jeremy Allison
00cedc0c04 r189: Added UNIX search into tests - added client library parse code.
Jeremy.
(This used to be commit a25ae9addbb362abf67a0cbd6e62bf4cbe06d8b7)
2007-10-10 12:51:15 -05:00
Andrew Tridgell
ac193579e7 r152: a quick airport commit ....
added ldbedit, a _really_ useful command

added ldbadd, ldbdel, ldbsearch and ldbmodify to build

solved lots of timezone issues, we now pass the torture tests with
client and server in different zones

fixed several build issues

I know this breaks the no-LDAP build. Wait till I arrive in San Jose for that
fix.
(This used to be commit af34710d4da1841653624fe304b1c8d812c0fdd9)
2007-10-10 12:51:11 -05:00
Andrew Tridgell
984bfce2d9 r101: added lsa_SetSecret() and lsa_QuerySecret()
this required some crypto infrastructure and some sid utilities
(This used to be commit 37d0efa9c2af8532536bea88412f0dd3ed39ecfc)
2007-10-10 12:51:06 -05:00
Andrew Tridgell
a8a42e7f53 r100: remember the user session key during session setup so it can be used in various crypto
routines
(This used to be commit f6cf9020c8899e784385ea0e14fa465685441ee6)
2007-10-10 12:51:06 -05:00
Gerald Carter
381a903d00 r42: importing .cvsignore files
(This used to be commit 11717ae912449bde596ff6cf7d8fddcc86548f15)
2007-10-10 12:50:40 -05:00
Andrew Tridgell
b087ed4821 r23: get rid of def_finfo
(This used to be commit 25b7ec390aec3e324c4c7ad8edbc90fc8896b230)
2007-10-10 12:50:33 -05:00
Andrew Tridgell
f169d83a8b fixed the handling of level II oplocks in samba4, especially when
acting as a cifs redirectory (using the cifs backend)
(This used to be commit 06a8100e6a2f3f079af5b6ec32d87d1d25f56c3c)
2004-03-25 02:41:19 +00:00
Andrew Tridgell
14591dc0ea fixed two writex client bugs
- always use the 14 word writex varient even for small transfers as
   long as large offsets are negotiated (this matches windows
   behaviour)

 - make sure we fill in the top 16 bits of the count for large writex
   calls
(This used to be commit 9ea20d0c9a1cb4800f3f54195cbbe70c98c8e423)
2004-03-08 07:11:13 +00:00
Tim Potter
4282138ebb The file descriptor argument to cli_getattrE() is a fnum not a fd.
(This used to be commit f172b6f1d08b7de040cde4a7d88708e5af29a3a4)
2004-02-21 11:23:51 +00:00
Andrew Tridgell
6c7e231773 fixed a problem with the smb client code spinning when the connection
is lost. We now close the cli_transport when there is a socket io
error
(This used to be commit 138cb5f2f5f8ce1479ac687d18e6a0e355e55b7f)
2004-02-21 04:02:00 +00:00
Stefan Metzmacher
45e446248d move more code to the config.m4 scheme
LIBBASIC, LIBSMB are the new global subsystems

metze
(This used to be commit a25c167b3f13031ba992b2d3f74387bdfffbf5b0)
2004-02-12 06:02:32 +00:00
Tim Potter
9a6388179b Convert libcli routines to return NTSTATUS instead of BOOL. Again, the
only users are smbclient and smbtorture.
(This used to be commit 54cb508c78e5c1faa3ade46b46b165983c880d10)
2004-02-10 11:33:35 +00:00
Andrew Tridgell
078cced5ec - modified the dcerpc client security code to be generic, so ntlmssp
and schannel are both instances of possible security modules

- added schannel sign and sign/seal support to the dcerpc client
  code. You select it with binding options of "schannel,sign" or
  "schannel,seal".
(This used to be commit 05db0b9d942cad8f1dd574dc35b759e5e79d4195)
2004-02-10 10:22:12 +00:00
Tim Potter
4639eb5a58 Convert libcli routines to use cli_tree instead of cli_state. Port
smbtorture to use the new interface.

Part 2 will be to eliminate cli_state from smbtorture as this is now
the only place where it is used.
(This used to be commit db1cc96af62ea42837d60592877fc3f93cef143b)
2004-02-08 00:51:07 +00:00
Stefan Metzmacher
670ccc7d64 merge:
ldap and krb5 configure tests
libads/*.c and libcli/raw/clikrb5.c from 3.0

metze
(This used to be commit 64b5bfcd73d7626d6f687a641b11e64821144df7)
2004-02-01 11:26:25 +00:00
Andrew Tridgell
ff4a146168 * fixed a segv when -U is not used in smbtorture.
* fixed the handling of anonymous logins
(This used to be commit 7cbc4ad8710ad33387145bfc9974d0ed4b0fb231)
2004-01-15 23:19:07 +00:00
Tim Potter
7db3bbc048 Autodetect service_type in cli_tree_full_connection() if the caller
passes in NULL.
(This used to be commit b63ebaa770940a276ab63583a13d8cc349b6efe6)
2004-01-02 01:04:59 +00:00
Andrew Tridgell
24c22aef90 a fairly large commit!
This adds support for bigendian rpc in the client. I have installed
SUN pcnetlink locally and am using it to test the samba4 rpc
code. This allows us to easily find places where we have stuffed up
the types (such as 2 uint16 versus a uint32), as testing both
big-endian and little-endian easily shows which is correct. I have now
used this to fix several bugs like that in the samba4 IDL.

In order to make this work I also had to redefine a GUID as a true
structure, not a blob. From the pcnetlink wire it is clear that it is
indeed defined as a structure (the byte order changes). This required
changing lots of Samba code to use a GUID as a structure.

I also had to fix the if_version code in dcerpc syntax IDs, as it
turns out they are a single uint32 not two uint16s.

The big-endian support is a bit ugly at the moment, and breaks the
layering in some places. More work is needed, especially on the server
side.
(This used to be commit bb1af644a5a7b188290ce36232f255da0e5d66d2)
2003-12-16 09:02:58 +00:00
Andrew Tridgell
6a3ef87d3e make sure we allow clients to negotiate ntlmssp seal if they want it
(This used to be commit a1275c1e89462f0a3cce73066777055c3c970b76)
2003-12-15 08:59:25 +00:00
Andrew Tridgell
fcc4efd1ea the next step in the dcerpc server code. Added the link between the
IPC IO routines and the dcerpc endpoint servers.
(This used to be commit 4929c53bc8dddda8a763fdfbcf81a79776d01113)
2003-12-11 09:07:45 +00:00
Andrew Tridgell
926240428c * patch based on work by Jim Myers to unify the ioctl handling to be
more like the other major SMB functions

* added SMBntrename code
(This used to be commit f2d3dc9893fa0e089c407fa16ce9ff13587e70cd)
2003-12-04 02:03:06 +00:00
Andrew Tridgell
d65f0095c9 added netr_DatabaseSync(). It doesn't work as I haven't done schannel
yet, but at least the request is understood by w2k3

Also modified pidl to allow multiple branches in a union to have the
same element. This is used in netlogon.
(This used to be commit 983c0e9683fa9666a6e055d1776ebeef8cd2e700)
2003-12-02 03:06:21 +00:00
Andrew Tridgell
2e70035f87 another big improvement in the credentials API. I think it now
actually makes sense, and as a nice side effect it matches the debug
output of the w2k3 netlogon.log
(This used to be commit 3c7287c24e5970e5b7447ad042848505537c7d3b)
2003-12-02 02:15:33 +00:00
Andrew Tridgell
06ae424835 * netr_ServerPasswordSet() now works - the test suite changes the
machine account password.

  * neater handling on value() options in IDL. The auto-print code
    will now display the right value so you don't need to initialise
    it in your C code
(This used to be commit 3dd978b12bb5571fba4e1839c0f7ee60cf729aa2)
2003-12-02 00:31:54 +00:00
Andrew Tridgell
8b30b0071c * another small API change in the credentials code
* don't use static variables in the smbdes code
(This used to be commit e6e09064646c347169852fa162c72fc0542c6d5c)
2003-12-01 22:13:11 +00:00
Andrew Tridgell
f9e2a8af39 neater credentials handling in netlogon client code
(This used to be commit b7d748f499f79415b444e7cebe7d8de7186fbc94)
2003-12-01 12:41:54 +00:00
Andrew Tridgell
232d6480a7 fixed NTLMSSP_SIGN_VERSION (which I broke earlier today)
(This used to be commit c8ef04077413f44101ba071187554e65a8e1c8fc)
2003-12-01 10:07:24 +00:00
Andrew Tridgell
a6cf6cada9 added netr_LogonSamLogon() and test code
(This used to be commit 4fa3ad3ecbfd8f8663fcdfaba9a7db481e303f2b)
2003-12-01 09:28:10 +00:00