1
0
mirror of https://github.com/samba-team/samba.git synced 2025-01-08 21:18:16 +03:00
Commit Graph

2133 Commits

Author SHA1 Message Date
Tim Potter
985abd104d r2801: Wrapped functions that return a DOS error code can return DCERPC
faults if they are badly formed.  Handle this by checking the value of
NTSTATUS as well as WERROR.
(This used to be commit bb1be78197)
2007-10-10 12:59:35 -05:00
Andrew Tridgell
a56c984df4 r2800: removed the warning about using the posix ntvfs handler, as it is now
considerably more complete than the simple handler
(This used to be commit e6ecd31be8)
2007-10-10 12:59:35 -05:00
Andrew Tridgell
ae30c7c5e6 r2799: removed one last occurance of torture_ldb_alloc()
(This used to be commit 5045482b14)
2007-10-10 12:59:35 -05:00
Andrew Tridgell
9a415b723c r2798: get rid of a unnecessary static
(This used to be commit c3dfa7e828)
2007-10-10 12:59:35 -05:00
Andrew Tridgell
c4bf8c5b2c r2797: don't free the server_info before using it for anonymous connections
(This used to be commit 5f5b04196c)
2007-10-10 12:59:35 -05:00
Andrew Tridgell
c5722fb81b r2796: - changed ldap attributes "UnixID" to "unixID" and "UnixName" to "unixName" to be more ldap traditional
- register the unixuid module as all 3 ntvfs backend types, as it doesn't care what type of backend
  it filters
(This used to be commit cd43def6ce)
2007-10-10 12:59:34 -05:00
Tim Potter
68d2ce3320 r2795: Split status code constants into a separate file.
(This used to be commit 12a3f75c1c)
2007-10-10 12:59:34 -05:00
Andrew Tridgell
5a872512b0 r2794: a very simple version of the unixuid NTVFS pass-thru module. In
conjunction with the posix backend this gives us a way to correctly
setup the unix security context in Samba4.

I chose the following method to determine the unix uid's and gid's to
use given the list of SIDs from the login process

 - look for a "UnixID" field in the sam record. If present, then use it
   (check if the record is of the right type as well)

 - if UnixID is not present, then look for the "UnixName" sam
   field. If it is present then use getpwnam() or getgrnam() to find
   the unix id.

 - if UnixID and UnixName are not present, then look for a unix
   account of the right type called by the same name as the sAMAccountName field.

 - if none of the above work then fail the operation with NT_STATUS_ACCESS_DENIED

obviously these steps only work well with a local SAM. It will need to
be more sophisticated in future.

I did not put any cache in place at all. That will need to be added
for decent performance.
(This used to be commit 78b67d19b9)
2007-10-10 12:59:34 -05:00
Andrew Tridgell
6b481af7f2 r2793: fixed the handling of primaryGroupID in auth_sam. There were two bugs,
the first was it didn't pass primaryGroupID as an attributed it
wanted, the second was it didn't cope with primaryGroupID not being
present.
(This used to be commit 8373bfcdec)
2007-10-10 12:59:34 -05:00
Andrew Tridgell
1429ed54f1 r2792: got rid of talloc_ldb_alloc() and instead created talloc_realloc_fn(),
so talloc now doesn't contain any ldb specific functions.

allow NULL to be passed to a couple more talloc() functions
(This used to be commit 1246f80d80)
2007-10-10 12:59:34 -05:00
Andrew Tridgell
15b9736ed3 r2791: got rid of talloc_unreference() and instead created talloc_unlink(),
which is much clearer and simpler to use. It removes a specific parent
from a pointer, no matter whether that parent is a "reference" or a
direct parent. This gives complete control over the free process.
(This used to be commit 6c563887f1)
2007-10-10 12:59:34 -05:00
Tim Potter
a248164de5 r2790: Add code to generate WERROR exceptions. Arrange inclusion of autogenerated
interface files to divvy them up into pipes that return WERRORs and pipes
that return NTSTATUS values.
(This used to be commit 294d1ae35c)
2007-10-10 12:59:34 -05:00
Simo Sorce
54ae58fbcd r2789: fix compile
(This used to be commit a34ba8dafe)
2007-10-10 12:59:34 -05:00
Andrew Tridgell
421ff99f5d r2788: prevent a memory leak in the pvfs search backend
(This used to be commit 1de2207061)
2007-10-10 12:59:33 -05:00
Andrew Tridgell
d1a5683630 r2787: force masktest to use RAW_SEARCH_BOTH_DIRECTORY_INFO so it can obtain the short name
(This used to be commit ad5a5ea08d)
2007-10-10 12:59:33 -05:00
Andrew Tridgell
84bbe948f3 r2786: - match on both long and short name for search posix backend
- a final name component of . is illegal
(This used to be commit 11c852170b)
2007-10-10 12:59:33 -05:00
Andrew Tridgell
c62a988c39 r2785: call init_iconv() in smbtorture to ensure we have no memory allocated
when a test started, thus making leak detection easier
(This used to be commit 6c46e4622a)
2007-10-10 12:59:33 -05:00
Andrew Tridgell
a46270e2fa r2784: - fixed alignment of ascii directory listings
- fixed minimum parameter size for ascii qpathinfo call
(This used to be commit ee065ae7f9)
2007-10-10 12:59:32 -05:00
Andrew Tridgell
20c550d87f r2783: got rid of the unused remote architecture detection code
(This used to be commit 9a04664531)
2007-10-10 12:59:32 -05:00
Tim Potter
a1cee786f0 r2782: Reformat IDL for winreg_EnumValue()
(This used to be commit 9250f745ad)
2007-10-10 12:59:32 -05:00
Tim Potter
710ad9613b r2781: Got winreg_EnumValue() working. Check it in so I don't break it trying
to clean it up.  (-:
(This used to be commit cc646f73b8)
2007-10-10 12:59:32 -05:00
Tim Potter
7cef5fd077 r2780: Add conversion routines for DATA_BLOB. I'm not convinced that DATA_BLOB's
should be treated as scalar types though.
(This used to be commit c9e96038f8)
2007-10-10 12:59:32 -05:00
Tim Potter
91346236c2 r2777: Correctly abort if an idl file fails to parse. Bloody perl...
(This used to be commit 35ff140b43)
2007-10-10 12:59:32 -05:00
Andrew Tridgell
6185fbad47 r2776: if there are no wildcard characters then use StrCaseCmp()
note that this is not just an optimisation, it fixes a rare edge case
when LANMAN1 is negotiated
(This used to be commit 8d879cf54c)
2007-10-10 12:59:32 -05:00
Andrew Tridgell
45717794c3 r2775: rewrote our ms_fnmatch code to be much more efficient, and to exactly
match w2k behaviour for older negotiated protocols.
(This used to be commit bae2baeb02)
2007-10-10 12:59:32 -05:00
Andrew Tridgell
fe0dc25c0e r2774: get rid of the lanman specific code in masktest, and add a -l option
(This used to be commit 630fefb24a)
2007-10-10 12:59:31 -05:00
Andrew Tridgell
3c7251ee78 r2773: allow zero sized array talloc
(This used to be commit 06c58ad221)
2007-10-10 12:59:31 -05:00
Tim Potter
cc2da2ad67 r2767: Get rid of some unnecessary %s formatting.
(This used to be commit b63a0ef0d4)
2007-10-10 12:59:31 -05:00
Tim Potter
76a8fe491e r2766: Test OpenKey, QueryInfoKey, EnumKey, CloseKey functions.
The IDL for EnumValue is wrong - can't figure it out right now.
(This used to be commit 37af942d08)
2007-10-10 12:59:31 -05:00
Tim Potter
b11be587e0 r2765: Allow functions containing WERROR values to be compiled.
Add winreg.i to list of extensions.
(This used to be commit 6f3f6de058)
2007-10-10 12:59:31 -05:00
Tim Potter
db84d32d08 r2764: Use hand-written function for all occurrences of IDL strings, not just
those with a single pointer.
(This used to be commit c4c748ce63)
2007-10-10 12:59:31 -05:00
Andrew Tridgell
b2575ce665 r2763: use no-auth bind on ncacn_np unless we specify at least one of "sign", "seal" or "connect"
(This used to be commit f3adabf689)
2007-10-10 12:59:31 -05:00
Simo Sorce
338c90404f r2758: keep docos handy while developing it
(This used to be commit 5f9b58c785)
2007-10-10 12:59:31 -05:00
Stefan Metzmacher
a4a360b7fe r2757: some minor fixes
metze
(This used to be commit 991b4777c8)
2007-10-10 12:59:30 -05:00
Simo Sorce
53e5e96830 r2754: Change sldb_trim_dn() to be sldb_fix_dn() as we are not really trimming.
Make it handle all cases:
- remove spaces before and after ','
- remove spaces after '='

TODO: check if there are escape chars in the RFC, they are not handled here yet.

Simo.
(This used to be commit ba2970c3a4)
2007-10-10 12:59:30 -05:00
Stefan Metzmacher
dcad0f6fd4 r2751: this is a new ntvfs design which tries to solve:
- the stacking of modules
- finding the modules private data
- hide the ntvfs details from the calling layer
- I set NTVFS_INTERFACE_VERSION 0 till we are closer to release
  (because we need to solve some async problems with the module stacking)

metze
(This used to be commit 3ff03b5cb2)
2007-10-10 12:59:30 -05:00
Stefan Metzmacher
cd5326a44e r2750: decode AbandonRequest correct (untested:-)
metze
(This used to be commit 4233067921)
2007-10-10 12:59:30 -05:00
Stefan Metzmacher
e54cc10f16 r2749: add asn1_read_implicit_Integer()
metze
(This used to be commit a62fbcb30f)
2007-10-10 12:59:30 -05:00
Stefan Metzmacher
525dc6f089 r2748: implement sldb_Compare()
Simo: this commit should not conflict much with your changes:-)

metze
(This used to be commit 6825e78e01)
2007-10-10 12:59:30 -05:00
Stefan Metzmacher
88ead90b1d r2747: use DATA_BLOB for attribute values
en/decode CompareRequest/Response correct

metze
(This used to be commit 72dfea2b07)
2007-10-10 12:59:29 -05:00
Andrew Tridgell
e0aeffbc85 r2745: added some example talloc reports
(This used to be commit 10e2a4fd2b)
2007-10-10 12:59:29 -05:00
Andrew Tridgell
4f13ebef5d r2744: ben elliston taught me about gcov today, which allows you to measure
the % coverage in terms of lines of code of a test suite. I thought a
good first place to start with gcov was the talloc test suite. When I
started the test suite covered about 60% of all lines of code in
talloc.c, and now it covers about 99%. The only lines not covered are
talloc corruption errors, as that would cause smb_panic() to fire.

It will be interesting to try gcov on the main Samba test suite for
smbd. We won't achieve 100% coverage, but it would be nice to get to
90% or more.

I also modified the talloc.c sources to be able to be build standalone, using:

  gcc -c -D_STANDALONE_ -Iinlcude lib/talloc.c

that should make it much easier to re-use talloc in other projects
(This used to be commit 8d4dc99b82)
2007-10-10 12:59:29 -05:00
Andrew Tridgell
173b61817b r2743: fixed some errors in the description of talloc_reference(). Volker
told me he found the description confusing, and given that some of it
was not correct I am not surprised!

added some more docs on the reporting calls
(This used to be commit 43079cfc80)
2007-10-10 12:59:29 -05:00
Andrew Tridgell
facfe8867d r2742: - fixed a bug in talloc_unreference()
- made the LOCAL-TALLOC smbtorture test much stricter, checking that
  block counts for every pointer are correct after every operation
(This used to be commit 18d3e2647f)
2007-10-10 12:59:29 -05:00
Jelmer Vernooij
361f7cc31e r2741: Definition for ISystemActivator...
(This used to be commit 0bb42ba898)
2007-10-10 12:59:29 -05:00
Jelmer Vernooij
0aef534de9 r2740: Finish the RemoteActivation interface. Torture tests will follow
after pidl has been fixed (to be able to use input variables
inside size_is() for output variables)
(This used to be commit ea0b0bfea9)
2007-10-10 12:59:29 -05:00
Tim Potter
096d2d68de r2739: Start of torture test for winreg wrappers.
(This used to be commit cf9b984b84)
2007-10-10 12:59:29 -05:00
Andrew Tridgell
16ed45d627 r2738: free up the session information as soon as it is invalidated in the
RAW-CONTEXT test case
(This used to be commit f4a7a3282a)
2007-10-10 12:59:28 -05:00
Andrew Tridgell
da0e9d5f62 r2737: fixed up a corner case where talloc_unreference() and talloc_free()
might not place the pointer in the context specified in the docs. The
code was assuming that pointer was at the head of the child list,
which it may not be, depending on what other operations have happened
in between.
(This used to be commit e62bd7ef7e)
2007-10-10 12:59:28 -05:00
Jelmer Vernooij
b79602fab5 r2735: More DCOM updates:
- Several updates to the interface definitions after reading some more of the
 specs
  - Add Remote Activation interface
  - Add body extension uuids
 - Add oxidresolve torture test to list
 - Make pidl complain about object interfaces that don't inherit from IUnknown
(This used to be commit 1bb4718328)
2007-10-10 12:59:27 -05:00