1
0
mirror of https://github.com/samba-team/samba.git synced 2025-03-12 20:58:37 +03:00

622 Commits

Author SHA1 Message Date
Volker Lendecke
7b77ff3720 r2831: // style comments are not supported by pure C preprocessors. Please DONT use
them. This includes idl files.

Volker
(This used to be commit e9fa997fd7747cf78ef0ac76bf70f5e34d3d1b12)
2007-10-10 12:59:37 -05:00
Volker Lendecke
44f463d9c9 r2830: // style comments are not supported by pure C preprocessors. Please DONT use
them. This includes idl files.

Volker
(This used to be commit d9f3c4e301e52d8e7d7049e657185a66bfad29f7)
2007-10-10 12:59:37 -05:00
Volker Lendecke
6bedfa7166 r2818: On AIX, for some reason pidl fails in dcom.idl:29. The only thing
is a /* style comment. Try //.

Volker
(This used to be commit 73adc1f357bc0ac01729eb03b26f27cf28226c23)
2007-10-10 12:59:37 -05:00
Tim Potter
94ae449f33 r2817: Get winreg_GetKeySecurity() working but use data blob instead of
security descriptor.
(This used to be commit bc5165e40a716fb7c612b32c0b6f03cb2d331d11)
2007-10-10 12:59:36 -05:00
Tim Potter
263212aba5 r2807: OK I think winreg_EnumValue() finally works. The previous version
didn't work with non-NULL registry value names.

Update testsuite to enumerate all keys and values two levels deep.
(This used to be commit c09f0f355ba6a589121588492aa2db5deb7121e0)
2007-10-10 12:59:36 -05:00
Tim Potter
a1cee786f0 r2782: Reformat IDL for winreg_EnumValue()
(This used to be commit 9250f745adc22b3f179cf363a9a9a5fba1ec6fc9)
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 cc646f73b873292eaba152770be9500beff1c988)
2007-10-10 12:59:32 -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 f3adabf6896b75f5293dbde3f9de737f35d95a10)
2007-10-10 12:59:31 -05:00
Jelmer Vernooij
361f7cc31e r2741: Definition for ISystemActivator...
(This used to be commit 0bb42ba898a0d02c98bbefcfe5b9e42409658609)
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 ea0b0bfea97067118dab634efefd3115b7a0fd85)
2007-10-10 12:59:29 -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 1bb471832830d73f0c7290e2ec12878518598379)
2007-10-10 12:59:27 -05:00
Andrew Tridgell
b2f1a29e43 r2710: continue with the new style of providing a parent context whenever
possible to a structure creation routine. This makes for much easier
global cleanup.
(This used to be commit e14ee428ec357fab76a960387a9820a673786e27)
2007-10-10 12:59:25 -05:00
Jelmer Vernooij
c0af446d57 r2705: Don't try RemQueryInterface2 for now (doesn't validate)
(This used to be commit b2f4532e906e1a5bf134812072aad211ba2d01bb)
2007-10-10 12:59:24 -05:00
Jelmer Vernooij
322d1ccd9f r2699: Correct handle ServerAlive() and ServerAlive2() + add torture tests
(This used to be commit 9e74144aa8e5f9a8b6e3d5293833c4afeebeddb0)
2007-10-10 12:59:24 -05:00
Jelmer Vernooij
fc3c05e63f r2696: DCOM updates:
- Start working on OXIDResolver interface
 - Add torture test for SimplePing()
(This used to be commit b54d14a01a71082251ff926ab57974c6eb3c0a41)
2007-10-10 12:59:24 -05:00
Jelmer Vernooij
f64b8cf9cd r2687: Add ORPC flag (used by DCOM)
(This used to be commit b7ac0cb692ea373f754d7a40b44a7b0756459287)
2007-10-10 12:59:22 -05:00
Andrew Tridgell
aa12305945 r2680: switched the libcli/raw/ code over to use talloc_reference(), which simplifies things quite a bit
(This used to be commit c82a9cf750829c4f6982ca3133295c8599023c4e)
2007-10-10 12:59:21 -05:00
Andrew Tridgell
351ca44e8b r2674: I have realised that talloc() should have its context marked const, as
a const pointer really means that "the data pointed to by this pointer
won't change", and that is certainly true of talloc(). The fact that
some behind-the-scenes meta-data can change doesn't matter from the
point of view of const.

this fixes a number of const warnings caused by const data structures
being passed as talloc contexts. That will no longer generate a
warning.

also changed the talloc leak reporting option from --leak-check to
--leak-report, as all it does is generate a report on exit. A new
--leak-report-full option has been added that shows the complete tree
of memory allocations, which is is quite useful in tracking things down.

NOTE: I find it quite useful to insert talloc_report_full(ptr, stderr)
calls at strategic points in the code while debugging memory
allocation problems, particularly before freeing a major context (such
as the connection context). This allows you to see if that context has
been accumulating too much data, such as per-request data, which
should have been freed when the request finished.
(This used to be commit c60ff99c3129c26a9204bac1c6e5fb386114a923)
2007-10-10 12:59:20 -05:00
Andrew Tridgell
5b44130afa r2671: we're getting too many errors caused by the talloc_realloc() API not
taking a context (so when you pass a NULL pointer you end up with
memory in a top level context). Fixed it by changing the API to take a
context. The context is only used if the pointer you are reallocing is
NULL.
(This used to be commit 8dc23821c9f54b2f13049b5e608a0cafb81aa540)
2007-10-10 12:59:20 -05:00
Andrew Tridgell
5390daefb6 r2668: steal the cli pointer into the pipe context so a single free destroys the cli context too
(This used to be commit 417d0c0ba182aab3a3a23db76ff7ac7cbc663cb6)
2007-10-10 12:59:19 -05:00
Andrew Tridgell
e3880fa759 r2660: - converted the libcli/raw/ library to use talloc_increase_ref_count()
rather than manual reference counts

- properly support SMBexit in the cifs and posix backends

- added a logoff method to all backends

With these changes the RAW-CONTEXT test now passes against the posix backend
(This used to be commit c315d6ac1cc40546fde1474702a6d66d07ee13c8)
2007-10-10 12:59:18 -05:00
Andrew Tridgell
6bea5bea4c r2643: convert more of the auth subsyystem to the new talloc methods. This
also fixes a memory leak found with --leak-check.
(This used to be commit f19201ea274f0a542314c61c4af676197bf154ad)
2007-10-10 12:59:15 -05:00
Andrew Tridgell
6310f40448 r2634: use discard_const_p() in a few places
(This used to be commit 56ecda2178e33508c55c6195ccec41c06e099d6f)
2007-10-10 12:59:14 -05:00
Andrew Tridgell
c5f4378361 r2629: convert gensec to the new talloc model
by making our gensec structures a talloc child of the open connection
we can be sure that it will be destroyed when the connection is
dropped.
(This used to be commit f12ee2f241aab1549bc1d9ca4c35a35a1ca0d09d)
2007-10-10 12:59:14 -05:00
Andrew Tridgell
223e78990a r2628: got rid of some warnings and converted a few more places to use hierarchical memory allocation
(This used to be commit 26da45a8019a2d6c9ff2ac2a6739c7d0b42b00de)
2007-10-10 12:59:14 -05:00
Andrew Tridgell
998e8022b6 r2626: the symbol gai_error is defined in /usr/include, so don't use that name in our code
(This used to be commit 458f85328850905db8e9808d02898c69b5f9b872)
2007-10-10 12:59:13 -05:00
Andrew Tridgell
bdfc5db41d r2625: use talloc_p, not talloc when possible (when allocating a structure in particular), as it gives us type checking.
(This used to be commit dabc7ddd9f940db414d1c3c7bf3cebcd108fbf6f)
2007-10-10 12:59:13 -05:00
Andrew Tridgell
642ba4bfee r2614: support CONNECT level DCE/RPC security in both client and
server. CONNECT security uses NTLMSSP, but does not do any signing or
sealing (or equivalently, its like signing, but with a zero filled
checksum).
(This used to be commit f4660857bc708db7f5aa7487bf7ab04bffe68928)
2007-10-10 12:59:12 -05:00
Andrew Bartlett
9a9dcc7250 r2552: Character set conversion and string handling updates.
The intial motivation for this commit was to merge in some of the
bugfixes present in Samba3's chrcnv and string handling code into
Samba4.  However, along the way I found a lot of unused functions, and
decided to do a bit more...

The strlen_m code now does not use a fixed buffer, but more work is
needed to finish off other functions in str_util.c.  These fixed
length buffers hav caused very nasty, hard to chase down bugs at some
sites.

The strupper_m() function has a strupper_talloc() to replace it (we
need to go around and fix more uses, but it's a start).  Use of these
new functions will avoid bugs where the upper or lowercase version of
a string is a different length.

I have removed the push_*_allocate functions, which are replaced by
calls to push_*_talloc.  Likewise, pstring and other 'fixed length'
wrappers are removed, where possible.

I have removed the first ('base pointer') argument, used by push_ucs2,
as the Samba4 way of doing things ensures that this is always on an
even boundary anyway.  (It was used in only one place, in any case).
(This used to be commit dfecb0150627b500cb026b8a4932fe87902ca392)
2007-10-10 12:59:05 -05:00
Jelmer Vernooij
924fa2db94 r2538: Support IPv6 as transport for MSRPC. Tested against Win2k3
Implemented using the POSIX getaddrinfo() call (specified by POSIX 1003.1-2003 and 2553)
I'm not sure how portable this function is, so we might have to add a sys_getaddrinfo() later on.
(This used to be commit 0fb0530389751c6fb4ca58f5e9a0f23491699f17)
2007-10-10 12:59:04 -05:00
Jelmer Vernooij
369a5d64e4 r2518: Some long overdue changes:
- Samba4-style code in lib/registry (struct registry_key instead of REG_KEY, etc)
 - Use hives (like Windows has drives) instead of one root key (like a Unix FS)
 - usability fixes in the GTK utilities (autodetect the username,
	enable/disable options, etc)
 - fix gwsam compile
 - several bugfixes in the registry rpc code
 - do charset conversion in nt4 registry backend
(This used to be commit 2762ed3b9bf1d67dd54d63e02cddbfd71ea89892)
2007-10-10 12:59:01 -05:00
Tim Potter
cde8c60e88 r2489: Rename account_flags in EnumDomainAliases() to acct_flags.
(This used to be commit a0e571a9ddc01b8e90a93d591aec4b10c9926818)
2007-10-10 12:58:57 -05:00
Tim Potter
0e71bf8148 r2458: Rename policy handle parameters for the SAMR pipe. Parameters now
have the handle type implied by the parameter name.  There are four
types of handle: connect, domain, user and group handles.  The
various samr_Connect functions return a connect handle, and the
samr_OpenFoo functions return a foo handle.

There is one exception - the samr_{Get,Set}Security function can
take any type of handle.

Fix up all C callers.
(This used to be commit 32f0f3154a8eb63de83145cbc8806b8906ccdc3e)
2007-10-10 12:58:55 -05:00
Stefan Metzmacher
6b9b169c27 r2443: check return code of event_loop_once() to catch thet cases where the server
closes the connetion and we got EBADF from select() and event_loop_once() fails

metze
(This used to be commit 9c0e50a6f3d628156b4543d5ded89e06be696f64)
2007-10-10 12:58:54 -05:00
Tim Potter
a502c85fb1 r2399: Display text description of rpc fault in debug message.
(This used to be commit 04aec4c0a3f559f6a9ccfaf990f3a2ff2e6f48df)
2007-10-10 12:58:48 -05:00
Andrew Tridgell
8b7a6df180 r2383: fixed the handling of sending zero length dcerpc packets (I broke this
recently, and this broke the autoidl code)
(This used to be commit 01d66f68f6b21dc9b5c0702edcd4f56daeae9b9d)
2007-10-10 12:58:47 -05:00
Andrew Tridgell
df2ed66bb0 r2382: considerably improved the Bind and Unbind IDL and test code. We can
now do these two calls successfully against w2k3.

note that you must use ncacn_ip_tcp, and must enable dcerpc sealing,
otherwise w2k3 refuses the first DRSUAPI call.
(This used to be commit 7d3e34742277f264e41739721dbf08036eebb598)
2007-10-10 12:58:46 -05:00
Andrew Tridgell
cde1950aea r2304: fixed a bug in old style NTLM signing
(This used to be commit 09651b831d085345dd385bc9777f97e1c0d57c6f)
2007-10-10 12:58:41 -05:00
Andrew Tridgell
f8f2630c0d r2294: this fixes the NTLM2 sign+seal combination. I have now tested:
NTLM sign
 NTLM sign+seal
 NTLM2 sign
 NTLM2 sign+seal

and all of the above both with and without key exchange

the NTLM2 seal case is ugly and involves an extra data copy, which
some API changes in gensec or the ndr layer might avoid in future.
(This used to be commit fce7a4218b3136d880dd1a123e8525e3091bbed8)
2007-10-10 12:58:40 -05:00
Andrew Bartlett
ac2f9cc96e r2287: Add static.
Andrew Bartlett
(This used to be commit 49171e420337136d3e66300f99fa1885051e5b61)
2007-10-10 12:58:39 -05:00
Andrew Bartlett
909c9b681a r2284: Thanks to some great detective work by tridge, NTLM2 signing now works.
This means that 'require NTLMv2 session security' now works for RPC
pipe signing.  We don't yet have sealing, but it can't be much further.

This is almost all tridge's code, munged into a form that can work
with the GENSEC API.

This commit also includes more lsakey fixes - that key is used for all
DCE-RPC level authenticated connections, even over CIFS/ncacn_np.

No doubt I missed something, but I'm going to get some sleep :-)

Andrew Bartlett
(This used to be commit a1fe175eec884280fb7e9ca8f528134cf4600beb)
2007-10-10 12:58:39 -05:00
Andrew Tridgell
1512030832 r2275: don't crash on a rpc BIND_NAK response ...
(This used to be commit 22a6e5d50d2d40c2dfc5e36bce1132b92723dd81)
2007-10-10 12:58:37 -05:00
Andrew Tridgell
22275a4c2f r2266: yay! LSA session keys on TCP now work!
(This used to be commit f6ea24296acaaadcd2d59740bc88ef1a93fb1c28)
2007-10-10 12:58:35 -05:00
Tim Potter
8293df91bc r2247: talloc_destroy -> talloc_free
(This used to be commit 6c1a72c5d667245b1eec94f58e68acd22dd720ce)
2007-10-10 12:58:34 -05:00
Tim Potter
aeaec31533 r2234: Tridge, this is a patch to allow people to set the REF_ALLOC flag on
a dcerpc_pipe structure as we discussed this morning.
(This used to be commit 79969dc8daf5fdaacd26135a200ecec0b4d7663c)
2007-10-10 12:58:33 -05:00
Andrew Tridgell
13f44bbacb r2209: patch from volker to add EnumPorts spoolss IDL and test code
the ndr->offset=0; stuff is ugly. We need a better way to handle this.
(This used to be commit e909bfa708aeceeaa37faa6f6dff0274f8ac7920)
2007-10-10 12:58:31 -05:00
Volker Lendecke
0b01bdf9a3 r2208: little attempt to (almost) fix spoolss relative
(This used to be commit ef5414676ea07004aaa78d5f4c1746b3c8669d16)
2007-10-10 12:58:31 -05:00
Andrew Tridgell
54dd7bccd2 r2206: another (untested) attempt to make RELATIVE_CURRENT work for volker,
plus removed unused ndr_pull_relative() function

once volker commits a test for this I'll be able to ensure it really works as expected
(This used to be commit 8ffe136ad2be52f3504d73ead0785c9c5f5d8770)
2007-10-10 12:58:31 -05:00
Andrew Tridgell
d0aee368a1 r2205: fixed an incorrect cast that broke relative strings in spoolss
(This used to be commit d2d3433de1c1e1bc757381e9736147cc24fe8cf0)
2007-10-10 12:58:31 -05:00
Andrew Tridgell
6a2422932b r2204: added [flag(RELATIVE_CURRENT)] to change [relative] pointer behaviour
for this struct and all sub-structures to be like spoolss relative
pointers (where offset is relative to current position).

volker will test this for me :)
(This used to be commit bd45329a3fb55a5d9f006ad601ae26a80b9a563f)
2007-10-10 12:58:31 -05:00