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

862 Commits

Author SHA1 Message Date
Jim McDonough
1fa1e931a3 More sync between passdb on 3.0 and HEAD.
Replace unknown_3 with fields_present.  Also causes rpc_samr structure field changes.
(This used to be commit 1976843345efb6ca4f9cebd964a61acd8ae11d41)
2004-02-12 16:16:53 +00:00
Andrew Bartlett
d198c55877 Make more functions static, and remove duplication in the use of functions
in lib/smbpasswd.c that were exact duplicates of functions in passdb/passdb.c

(These should perhaps be pulled back out to smbpasswd.c, but that can occour
later).

Andrew Bartlett
(This used to be commit fcdc5efb1e245c8fa95cd031f67ec56093b9056e)
2004-02-08 08:38:42 +00:00
Andrew Bartlett
784b05c489 This adds client-side support for the unicode/SAMR password change scheme.
As well as avoiding DOS charset issues, this scheme returns useful error
codes, that we can map back via the pam interface.

This patch also cleans up the interfaces used for password buffers, to
avoid duplication of code.

Andrew Bartlett
(This used to be commit 2a2b1f0c872d154fbcce71a250e23dfad085ba1e)
2004-01-26 08:45:02 +00:00
Herb Lewis
be1b3604ef source/rpc_parse/parse_prs.c ZERO_STRUCTP(ps) not needed as it is done
in prs_init now

testsuite/printing/psec.c	cannot do a prs_mem_free() when tdb_prs_fetch fails
				as the prs structure has not been initialized
(This used to be commit a363e5d8c549861329506bd87c11d82ace5520e5)
2004-01-14 22:53:50 +00:00
Gerald Carter
500c28974d fix some warnings from the Sun compiler
(This used to be commit ebabf72a78f0165521268b73e0fcabe1ea7834fd)
2004-01-09 14:54:33 +00:00
Gerald Carter
fb1c0450f2 commiting jra's fix for Exchange clear test auth
(This used to be commit 344e113368cb46fc4d26107d1cd276e4c76a6a9b)
2004-01-07 19:57:08 +00:00
Andrew Bartlett
614c18d24b rpc_client/cli_lsarpc.c:
rpc_parse/parse_lsa.c:
nsswitch/winbindd_rpc.c:
nsswitch/winbindd.h:
 - Add const

libads/ads_ldap.c:
 - Cleanup function for use

nsswitch/winbindd_ads.c:
 - Use new utility function ads_sid_to_dn
 - Don't search for 'dn=', rather call the ads_search_retry_dn()

nsswitch/winbindd_ads.c:
include/rpc_ds.h:
rpc_client/cli_ds.c:
 - Fixup braindamage in cli_ds_enum_domain_trusts():
    - This function was returning a UNISTR2 up to the caller, and
      was doing nasty (invalid, per valgrind) things with memcpy()
    - Create a new structure that represents this informaiton in a useful way
      and use talloc.

Andrew Bartlett
(This used to be commit 06c3f15aa166bb567d8be0a8bc4b095b167ab371)
2004-01-05 02:04:37 +00:00
Andrew Bartlett
d90e416006 Add the alignment required before all 2-byte quantities in NDR. Allows us
to correctly parse plaintext netlogon calls with odd-length passwords

Andrew Bartlett
(This used to be commit de3c3cbeeb8b674ffc0dd8fe16913f15edcf9022)
2003-12-29 04:21:32 +00:00
Gerald Carter
ae8d35b2a2 Fix UNISTR2 length bug in LsaQueryInfo(3) that cause SID resolution to fail on local files on on domain members; bug 875
(This used to be commit c6594e35573186966a4d57404f1c06b98670db06)
2003-12-10 21:13:44 +00:00
Andrew Tridgell
1d4978d722 fixed a problem with "net rpc vampire" mis-parsing the alias member
info reply

Thanks to a bug report by 'musb'
(This used to be commit 310f90f3689d4acd16368a833f23ea5f9aaa0133)
2003-12-05 11:30:47 +00:00
Gerald Carter
3d929b1ce6 * fix RemoveSidForeignDomain() ; bug 252
* don't fall back to unmapped UNIX group for
  get_local_group_from_sid()
* remove an extra become/unbecome_root() pair
  from group enumeration
(This used to be commit da12bbdb0dd9179b1ed457fa009679e2da4a8440)
2003-12-04 03:35:46 +00:00
Andrew Bartlett
78404434d0 Add support for variable-length session keys in our client code.
This means that we now support 'net rpc join' with KRB5 (des based)
logins.  Now, you need to hack 'net' to do that, but the principal is
important...

When we add kerberos to 'net rpc', it should be possible to still do
user management and the like over RPC.

(server-side support to follow shortly)

Andrew Bartlett
(This used to be commit 9ecf9408d98639186b283f1acf0fac46417547d0)
2003-11-22 23:38:41 +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 f3bbc87b0dac63426cda6fac7a295d3aad810ecc)
2003-11-22 13:19:38 +00:00
Jeremy Allison
e0fd9d28e9 Fix from Andrew Bartlett to fix up the munged-dial problem.
Jeremy.
(This used to be commit 703b1b76e25fc83b3b84767c0e1b64c97c21bf09)
2003-11-17 22:07:47 +00:00
Gerald Carter
281e293331 * Fix from SATOH Fumiyasu for bug 660 (failing to view print
jobs) by only enforce the 'max reported print jobs' parameter
  when it is non-zero.

* Fixed bug 338 by making sure that data values are written
  out when we are marshalling an EnumPrinterDataEx() reply.
  This probably fixes other bugs reported against point-n-print
  feature in 3.0.0
(This used to be commit fd98af75d655449a677360f6991da5caabc88b4d)
2003-11-13 20:15:17 +00:00
Gerald Carter
b64c6355b0 fix crash bug due to empyrt munged dial string; patch from metze
(This used to be commit ccd5665a65de6ccfdb9a5f490be1a7b5de486e2a)
2003-11-11 19:22:00 +00:00
Jeremy Allison
5cfe36d09d Handle munged dial string. Patch from Aur?lien Degr?mont <adegremont@idealx.com>with memory leak fixes by me.
Jeremy.
(This used to be commit e591854eda8568ed1a4ad6b9de64e523c02b4392)
2003-11-07 18:32:23 +00:00
Tim Potter
490dbaec81 Fix some uninitialised variable warnings.
(This used to be commit 68945027b5dc6b5e1aee13e4df4d11a34e42a3a9)
2003-11-03 14:21:10 +00:00
Jim McDonough
3d8e3f314b Add initshutdown pipe commands to rpcclient. Second part of fix to bug
#534
(This used to be commit 4e86243ea1d4bbe96720caaaf02300f5e15bee5a)
2003-10-24 13:49:29 +00:00
cvs2svn Import User
6440c4b34d This commit was manufactured by cvs2svn to create branch 'SAMBA_3_0'.(This used to be commit e569418861a867437cd5e2cce87ad82e752da3fb) 2003-10-24 13:38:14 +00:00
Jim McDonough
6258550534 New files for support of initshutdown pipe. Win2k doesn't respond properly
to all requests on the winreg pipe, so we need to handle this new pipe.

First part of fix for bug #534
(This used to be commit 532fab74c12d8c55872c2bad2abead2647f919d7)
2003-10-24 13:38:13 +00:00
Jim McDonough
bca9e7d325 Be sure referent ID is updated for incoming structures, too.
(This used to be commit 00e0aba2cf97e686a0b6b4d7bab50afbc5e97ac1)
2003-10-22 20:59:46 +00:00
Jim McDonough
7186340179 Fix typo
(This used to be commit 26956cdef902819f94616c33694641752f0f14e9)
2003-10-21 16:27:46 +00:00
Jim McDonough
6fe9423fc6 Update structures after ethereal showed some marshalling/unmarshalling
errors.
(This used to be commit 9d0f322a851f487cea320e57076213435e5c6481)
2003-10-20 21:10:18 +00:00
Jim McDonough
2cfb3e9b70 Several updates:
- add support for named pipe and netbios queries in parse code
- fix map request structure...unknown byte was alignment
- add sample of named pipe over netbios query in rpcclient (comment only)
(This used to be commit 71dcdf54e60204d6b499d25d8759ed20fc7a021a)
2003-10-20 18:35:12 +00:00
Jim McDonough
ba0c899510 Fix tower length calculations and add some const
(This used to be commit 2f84c6c9a1c292535e73721a8bcdb27aaa2b2b46)
2003-10-18 01:07:37 +00:00
Jim McDonough
e6900132ca uuid itself might not be aligned (as is the case in epm map requests), so
it needs to be aligned outside the smb_io_rpc_uuid() call if a specific
rpc or struct needs it that way.
(This used to be commit e9fc15d58c52c12438c1f9c69394c11f76ce72d8)
2003-10-17 19:47:06 +00:00
Jim McDonough
d807bc12fb Add epmapper pipe
(This used to be commit 041c17bd665ea5fa771b111d7008036fb3e7b72f)
2003-10-17 15:07:23 +00:00
Jim McDonough
a6ff6254da Add (un)marshalling code for endpoint mapper map operation
(This used to be commit bdd5158d9a45f4b935ea0fa495c0d83bc5ca96f8)
2003-10-17 15:03:46 +00:00
Tim Potter
58153961e4 Merge from 3.0:
>Remove duplicate function (now in rpc_parse/parse_prs.c) and fix a RPC debug
>(I renamed the element of the structure).
>
>Andrew Bartlett
(This used to be commit 2aaafa500780f7de0dec5632d53f3347b67fae4a)
2003-10-09 06:29:08 +00:00
Jeremy Allison
2c1030d755 Max warnings with gcc.
Jeremy.
(This used to be commit cdba166e31b3c611652783a2ab63e59f57f41fde)
2003-10-07 17:23:59 +00:00
Jeremy Allison
764c03b9b8 Tut tut - always run with max warnings on gcc...
Jeremy.
(This used to be commit 3ebbd67dec2044ed8022491747e65b90f1354602)
2003-10-07 05:06:58 +00:00
Simo Sorce
b1f610ebb1 split some security related functions in their own files.
(no need to include all of smbd files to use some basic sec functions)

also minor compile fixes
couldn't compile to test these due to some kerberos problems wirh 3.0,
but on HEAD they're working well, so I suppose it's ok to commit
(This used to be commit c78f2d0bd15ecd2ba643bb141cc35a3405787aa1)
2003-10-06 01:38:46 +00:00
Simo Sorce
762e7e1dff split some security related functions in their own files.
(no need to include all of smbd files to use some basic sec functions)

also minor compile fixes
(This used to be commit 66074d3b097d8cf2a231bf08c7f4db62da68189d)
2003-10-06 01:24:48 +00:00
Jeremy Allison
c81c09d66f Grrr. compile patches before you apply !
Jeremy.
(This used to be commit dfbde4be7191895d79762855b21f5c62d53d5267)
2003-10-03 20:13:11 +00:00
Gerald Carter
8ae168b46d abstract UUID parsing code to an individual function; patch from Anthony
(This used to be commit 6cbdbdf9e1e76837c8ef03e795db11caa74ccf18)
2003-10-03 15:08:16 +00:00
Gerald Carter
faca10b35d abstract UUID parsing code to an individual function; patch from Anthony
(This used to be commit 9365c619d6feb15289d963e9e70e1f947b7f8c3f)
2003-10-03 15:07:15 +00:00
Andrew Bartlett
ad12b87aeb Remove duplicate function (now in rpc_parse/parse_prs.c) and fix a RPC debug
(I renamed the element of the structure).

Andrew Bartlett
(This used to be commit 641652cad97b761ba11d4e89b7c9ad098c7dd1c2)
2003-10-01 23:04:34 +00:00
Gerald Carter
e9568f8df2 commit sign only patch from Andrew; bug 167; tested using 2k & XP clientspreviously joined to the Samba domain
(This used to be commit 9d2e585e5e6f9066c6901aa8d8308734f8667296)
2003-10-01 22:00:19 +00:00
Gerald Carter
cbe69f65f6 commit sign only patch from Andrew; bug 167; tested using 2k & XP clientspreviously joined to the Samba domain
(This used to be commit 3802f5895ee18507c6f467bd11db0b1147a6fdfd)
2003-10-01 21:18:32 +00:00
Tim Potter
5400952f7f Merge from 3.0:
>Fix for #480. Change the interface for init_unistr2 to not take a length
>but a flags field. We were assuming that 2*strlen(mb_string) == length of ucs2-le string.
>This is not the case. Count it after conversion.
>Jeremy.
(This used to be commit e2ab9e54cd0ec0002175cf18ff364f4aebaf85a0)
2003-09-29 06:17:09 +00:00
Jeremy Allison
d3b9384308 Fix for #480. Change the interface for init_unistr2 to not take a length
but a flags field. We were assuming that 2*strlen(mb_string) == length of ucs2-le string.
This is not the case. Count it after conversion.
Jeremy.
(This used to be commit f82c273a42f930c7152cfab84394781744815e0e)
2003-09-25 21:26:16 +00:00
Jeremy Allison
8139c5fcfa Ensure that dup_sec_desc copies the 'type' field correctly. This caused
me to expose a type arguement to make_sec_desc(). We weren't copying
the SE_DESC_DACL_AUTO_INHERITED flag which could cause errors on
auto inherited checks.
Jeremy.
(This used to be commit 546b2271c08735ac1049a453abac996d794aa364)
2003-09-19 21:57:46 +00:00
Jeremy Allison
0551426657 Ensure that dup_sec_desc copies the 'type' field correctly. This caused
me to expose a type arguement to make_sec_desc(). We weren't copying
the SE_DESC_DACL_AUTO_INHERITED flag which could cause errors on
auto inherited checks.
Jeremy.
(This used to be commit 28b315a7501f42928d73efaa75f74146ba95cf2d)
2003-09-19 21:57:43 +00:00
Jeremy Allison
30fd359914 The "unknown_5" 32 bit field in the user structs is actually 2 16-bit
fields, bad_password_count and logon_count. Ensure this is stored/fetched
in the various SAMs. As it replaces the unknown_5 field this fits
exactly into the tdb SAM without any binary problems. It also is added
to the LDAP SAM as two extra attributes. It breaks compatibility with
the experimental SAMs xml and mysql. The maintainers of these SAMs must
fix them so upgrades like this can be done transparently. I will insist
on the "experimental" status until this is solved.
Jeremy.
(This used to be commit 71ecd10181cd35313b79f618c2928c2f45424812)
2003-09-18 23:54:12 +00:00
Jeremy Allison
3a48e4b287 The "unknown_5" 32 bit field in the user structs is actually 2 16-bit
fields, bad_password_count and logon_count. Ensure this is stored/fetched
in the various SAMs. As it replaces the unknown_5 field this fits
exactly into the tdb SAM without any binary problems. It also is added
to the LDAP SAM as two extra attributes. It breaks compatibility with
the experimental SAMs xml and mysql. The maintainers of these SAMs must
fix them so upgrades like this can be done transparently. I will insist
on the "experimental" status until this is solved.
Jeremy.
(This used to be commit cd7bd8c2daff3293d48f3376a7c5a708a140fd94)
2003-09-18 23:53:48 +00:00
Gerald Carter
4093bf7ff8 sync 3.0 into HEAD for the last time
(This used to be commit c17a7dc9a190156a069da3e861c18fd3f81224ad)
2003-09-09 04:07:32 +00:00
Tim Potter
b42500299c Fix for bug #334. We don't unmarshall the trusted domain or secrets
info delta correctly and thus crash when doing a net rpc samdump.

The easiest thing at the moment it to comment out these functions as
they seriously don't correspond with reality (netmon/ethereal) and the
data in the containers aren't used anyway.
(This used to be commit 695aa39c5d798b112f0a06281b499fcac8a5bf31)
2003-09-08 02:13:38 +00:00
Gerald Carter
65409a49fe Fix bug #252. Implement missing SAMR_REMOVE_USER_FOREIGN_DOMAIN
call.
(This used to be commit dd2cf4897ec3db25c24a2724ffdef4f905625f6a)
2003-08-20 16:07:19 +00:00
Herb Lewis
aa39cc37da get rid of more compiler warnings
(This used to be commit 398bd14fc6e2f8ab2f34211270e179b8928a6669)
2003-08-15 04:42:05 +00:00