1
0
mirror of https://github.com/samba-team/samba.git synced 2025-02-28 01:58:17 +03:00

6681 Commits

Author SHA1 Message Date
Jelmer Vernooij
f72dee9e39 r10737: Fix some alignment issues
(This used to be commit 2b4270a2e965eb5c6fe0b25d22d2977e60bb7d43)
2007-10-10 13:39:25 -05:00
Jelmer Vernooij
4bbb584ff0 r10734: Generate ptr, size, offset, and length elements in unions just once.
(This used to be commit 12bfa5d01bcb4cb9dad5167e1a3721fd68f06275)
2007-10-10 13:39:25 -05:00
Jelmer Vernooij
5df3b426ee r10732: Generate _ctr structures for unions
(This used to be commit bd8fcb05003ad75f521783ad9603c923eacafc1a)
2007-10-10 13:39:25 -05:00
Andrew Tridgell
7838e13e91 r10726: fix to talloc_parent() from Michael O'Brien
(This used to be commit f31a2376f3fef1cc2b40b37fb4d94a4b67eec6d4)
2007-10-10 13:39:25 -05:00
Jelmer Vernooij
d220237b19 r10721: Handle allocations and primitive / deferred data correctly. In theory,
the generated output for DFS should work now (it compiles cleanly, but
I haven't tested it yet).

Not supported:
 - subcontexts()
 - relative pointers
 - unions of pointers
 - DATA_BLOB
 - several other things

Also still need to do:
 - Remove some spurious spaces in the output
 - Do range() checking

Example output is still available at http://samba.org/~jelmer/pidl_samba3/
(This used to be commit e2d7e382bb645f1bddd2047669bed10f121b59d2)
2007-10-10 13:39:24 -05:00
Jelmer Vernooij
1e0823d0a5 r10719: Remove __FUNCTION__ macro as it might not be available at all systems
(pointed out by John E. Malmberg)
(This used to be commit 3169bbc15703b39943a11939e9dcccb2a9b4ad5d)
2007-10-10 13:39:24 -05:00
Jelmer Vernooij
3d6279402c r10718: Another large set of small improvements. All generated files compile
without warnings now. The only things left to do that are
required for DFS:
 - add allocation of arrays in marshalling phase
 - handling primitive and deferred data in embedded structures / unions.

Example output is again available from http://samba.org/~jelmer/pidl_samba3/
(This used to be commit 9fe724f6fb026d95306587f696c065f348aaf219)
2007-10-10 13:39:24 -05:00
Jelmer Vernooij
9879bc6aa6 r10717: Another bunch of small updates. All generated files except parse_dfs.c
compile now when generated from Samba4's dfs.idl.
(This used to be commit 2b315b1942e77640eca8e0a3347b2a9ed1920f6a)
2007-10-10 13:39:24 -05:00
Jelmer Vernooij
eea74cde05 r10716: Use correct Samba3 data types for strings. Also use Samba3 types
for a couple of other types (policy handles, SIDs, times)
(This used to be commit c2527217b4b4c120d82044e65b979dd3b7d2609e)
2007-10-10 13:39:24 -05:00
Jelmer Vernooij
81c306472a r10715: More Samba3 parser generator improvements:
- Actually generate parsers for unions and structs.
- Support some more builtin types.
- Some more work on supporting arrays.
- Several other small fixes.

I've updated the example output at http://samba.org/~jelmer/
(This used to be commit b229c033ebc7ec972b32f1b75b60a9c68a36db97)
2007-10-10 13:39:23 -05:00
Jelmer Vernooij
55065d27ce r10713: Couple more updates to the Samba3 parser generators.
Unions and enums have been improved, init functions are now generated
properly, some other small improvements.
(This used to be commit 8a60e79175eb27ef9fa4b8dea72a518bbaab900f)
2007-10-10 13:39:23 -05:00
Andrew Bartlett
49dd5e4b1d r10712: Use data_blob_talloc, thanks to valgrind for finding the errors.
Andrew Bartlett
(This used to be commit 1f6fec8e6b0845ae6000eeda65641435fb18c9e3)
2007-10-10 13:39:23 -05:00
Andrew Bartlett
c690be462d r10711: An error of 'user exists' is not an error, just an indication of how
the join was processed.

Andrew Bartlett
(This used to be commit 0d93f11c894927a9ab69f7a31b9fbedde9d698b6)
2007-10-10 13:39:23 -05:00
Andrew Tridgell
a04f65b1c7 r10709: fixed a crash bug rather similar to the one volker found in the dcerpc
code, where a stream_terminate_connection() while processing a request
can cause a later defererence of the connection structure to die.
(This used to be commit efbcb0f74176058a74d7134dae4658b891fc6f16)
2007-10-10 13:39:23 -05:00
Andrew Tridgell
63d4cb4802 r10708: a bit more error checking in the idap ldb backend
(This used to be commit 63ebaad393e38b28c8f97f33e2b22f2445733405)
2007-10-10 13:39:22 -05:00
Andrew Tridgell
7b38c1db1b r10706: split out the irpc server functions in the NBT server, so the mainline
NBT server code remains reabable. Also fixed the copyright header to
include Volker, as he wrote the getdc server function
(This used to be commit a973197d3e0045a76a2f14153f5541b9e36e6c8a)
2007-10-10 13:39:22 -05:00
Andrew Tridgell
3a7e251f27 r10705: fixed a crash bug in the getdcname irpc server for winbind. The
problem was that the return string was declared as:

	[out] astring dcname

which means "this is a non-NULL string". The server code sometimes
returned NULL however (on getdc lookup failure), which caused the NDR
marshalling code to crash. When you declare a non-pointer return value
you are promising that the value can never be NULL.

The trivial fix is to use:

	[out] astring *dcname

which leaves the API alone, but includes a pointer in the wire format,
which in turn means it is valid to send a NULL string as a response.
(This used to be commit e39bac61960f6ce8957f148a482e39499a8e9096)
2007-10-10 13:39:22 -05:00
Andrew Tridgell
2c3e4bdadf r10704: don't try to free the netlogon pipe twice
(This used to be commit 2c3a9f04db5d61305f4eca8b44e33c2dd15a6dc4)
2007-10-10 13:39:22 -05:00
Andrew Bartlett
c8bec9dd3a r10703: Add a new user account, change the password and test it in the SAMLOGON test.
The semantics for the user account are very odd, the old password is
still valid, but the session keys appear to be blanked out.

Andrew Bartlett
(This used to be commit bbfaf4821d81116efa91313655acb75d6f577953)
2007-10-10 13:39:21 -05:00
Andrew Bartlett
582595c215 r10702: Fix a silly error that caused a rejoin/delete in the torture code to fault...
Andrew Bartlett
(This used to be commit 0fa6d040f287dbf6b0588e3507d53037a04f85d4)
2007-10-10 13:39:21 -05:00
Andrew Bartlett
2e3c917957 r10701: Ensure we return the right user handle.
Andrew Bartlett
(This used to be commit 732b247a498e0b90b9f0c711baaac51ad6402496)
2007-10-10 13:39:21 -05:00
Andrew Tridgell
6bc8d37c20 r10700: removed volkers temporary timer hack now that freeing the netlogon
pipe is safe while inside a rpc callback
(This used to be commit 5d752a519416c7a0c8c7d166f43eadc75cb5c37f)
2007-10-10 13:39:21 -05:00
Andrew Tridgell
a872005c1c r10699: fixed the dcerpc code so that you can shutdown the pipe safely from
within a callback on the pipe. This should fix a problem volker
encountered with winbind. The fix invoolves making the recv_data
handler free the memory for a packet, instead of having the transport
layer free it after calling recv_data. When the transport layer freed
it, it had no way of knowing if the callback had shutdown the pipe, so
it had no way of knowing if it could safely use the pointer.

Also changed the pipe shutdown hook for the smb transport to use an
async SMB close. This ensures that when you shutdown the pipe, you
don't block waiting for the server to ack the close of the pipe fnum.
(This used to be commit c87d7f580e39245db181605f50883de07dd9632e)
2007-10-10 13:39:21 -05:00
Jelmer Vernooij
e0040ff537 r10698: Fix support of enums in switch_type() in the ethereal parser generator
(This used to be commit 9fac8dfeb393212e16be7156de466077bc90232d)
2007-10-10 13:39:20 -05:00
Andrew Bartlett
099c3d5327 r10697: Change the torture join code to return a credentials structure, as
that is what most of the callers want anyway.

Remove and re-add the account for the torture case, rather than just
modify it.

Test with a user account (needs work to change the password).

Andrew Bartlett
(This used to be commit 38bebef02454164cbe882347d80e03abee656205)
2007-10-10 13:39:20 -05:00
Andrew Bartlett
b7a47635ca r10696: Return the realm to the caller, not NULL...
Also return an indication of if the join was of a new account, or
reworking an existing account.

Andrew Bartlett
(This used to be commit b6e4b36c4f1f90e42dd0543538956a1d89e3724b)
2007-10-10 13:39:20 -05:00
Andrew Bartlett
1a36516935 r10695: strupper() of NULL should be NULL, not panic.
Andrew Bartlett
(This used to be commit b1bcc0dc0b3c6d4d931100dee21ba16cb5521978)
2007-10-10 13:39:20 -05:00
Jelmer Vernooij
f9a4167434 r10694: Add some work I did this afternoon on getting pidl to output Samba3
RPC parsers. Currently the following files can be generated:

- include/rpc_BASENAME.h
- rpc_server/srv_BASENAME.c
- rpc_server/srv_BASENAME_nt.c (template only, user has to fill in functions)
- rpc_client/cli_BASENAME.c
- rpc_parse/parse_BASENAME.c

So far, I have been working on getting DFS working. Currently still to do
(all in rpc_parse/parse_BASENAME.c):
 - Proper handling of declarations
 - Proper handling of scalar/buffer parts of structs and unions
 - Subcontexts
 - Proper handling of arrays
 - Support for custom (non-scalar) types

I hope to have a somewhat more working version later this week.

Some files as currently generated are available from:
http://samba.org/~jelmer/pidl_samba3/
(This used to be commit 8af8eaeeef6d46f4d25ccb1d25890e1eef063e4f)
2007-10-10 13:39:20 -05:00
Volker Lendecke
012893cb42 r10691: This gets half-way to wbinfo -n. It acquires an lsa pipe, and does a
queryinfopolicy. Idea is to get a consistency check between that and our
notion of the domain name and sid, and take the lsa pipe as the holder of the
central smbcli_tree that netlogon and samr use as well.

Volker
(This used to be commit 126c80aefc4f53c4ba79afc12d70602ef9055ddb)
2007-10-10 13:39:19 -05:00
Volker Lendecke
4a34e81ccc r10690: Fix a bug that metze pointed out: Leaving the "rejecting" destructor around
prevents the memory from being freed.

Thanks,

Volker
(This used to be commit df8eeb01f498568207a4a8d5d12348c473f41799)
2007-10-10 13:39:19 -05:00
Volker Lendecke
3fece92b9d r10687: Another one...
(This used to be commit d18f7edf92e8420f30cae01649d18f0ae20a80aa)
2007-10-10 13:39:19 -05:00
Volker Lendecke
788129610b r10686: Fix the build
(This used to be commit a7137fd3ec2e484c8feb73fa228031c8b75107bf)
2007-10-10 13:39:19 -05:00
Volker Lendecke
ea262d130b r10685: Why wait 5 seconds...
(This used to be commit 820b4180dd3c1d07dd529fcb654ea01407a481cb)
2007-10-10 13:39:18 -05:00
Volker Lendecke
faf2ad667a r10684: Add a nasty hack for the failure case of wbinfo -t. Tridge has a proper fix
for it pending.

Also fix a bug with timed events: Don't call the same event recursively in the
handler's inner semi-async event loop.

Volker
(This used to be commit e38e50127a3414461578421e676a9c58c106c272)
2007-10-10 13:39:18 -05:00
Volker Lendecke
e5c6a3e361 r10683: Samba3's wbinfo -t should give the correct answer now.
Tridge, if you have time, you might want to look at the segfault I was still
seeing. Now I store the handle to the netlogon pipe in the global winbind
state and free it on the next entry into check_machacc. The problem seems to
be that talloc_free()ing a pipe struct from within a callback function on that
pipe is not possible. I think I can live with that, but it has been not really
obvious. To reproduce the segfault you might want to look at putting a
talloc_free(state->getcreds->out.netlogon) into
wbsrv_samba3_check_machacc_receive_creds. This is called from a dcerpc
callback function.

In particular if the check failed it would be nice if I could delete the pipe
directly and not post a different event to some winbind queue.

I tried to delete the pipe from a timed event triggered immediately, but this
also fails because the inner loop seems to hit the same event again, calling
it twice.

Volker
(This used to be commit 5436d7764812bb632ba865e633005ed07923b57f)
2007-10-10 13:39:18 -05:00
Andrew Tridgell
28bc38de2a r10682: force the free of the fd event first when a stream terminates. That ensures
destructors hanging off the stream connection don't trip more socket
events.

this should help with the problem volker described
(This used to be commit fd8eccd5bf0c742a7809f3991101f4ac75b5e037)
2007-10-10 13:39:18 -05:00
Volker Lendecke
aea73c168b r10681: Convert dcerpc_open_smb to a composite function.
Volker
(This used to be commit 42ff218ac98fab00bd58c4f50f11843ef32b4698)
2007-10-10 13:39:18 -05:00
Rafal Szczesniak
0b9d6306d5 r10680: Fix a warning.
rafal
(This used to be commit b3b4059efeb7f5d2795b4bb93cf8ab95aad54c8e)
2007-10-10 13:39:17 -05:00
Rafal Szczesniak
bc651bd7a4 r10679: Monitor messages should be issued from usermod functions.
Also a bit of formatting.

rafal
(This used to be commit 1fefca2c172085d6bc05bfac1c10e52066e42606)
2007-10-10 13:39:17 -05:00
Jelmer Vernooij
e264c8b6dd r10678: Add debug helper
Fix push for non-fixed length strings
(This used to be commit 821b0bb56f6d6b9df7bbdeeddc206505f3f0a7c2)
2007-10-10 13:39:17 -05:00
Volker Lendecke
68c70ef396 r10677: Add smb_composite_connectmulti: Send out multiple SYN packets at once, use the
first one that replies correctly.

Add a talloc context to smb_composite_connect()

Volker
(This used to be commit 6b88de182e40cb00a833c085f801fd47c92bbe94)
2007-10-10 13:39:17 -05:00
Volker Lendecke
33834e2dda r10675: Connect to the DC's IPC$
Volker
(This used to be commit c7557884843a5b2bac9e21ec81cafcaadf436bca)
2007-10-10 13:39:17 -05:00
Andrew Bartlett
3223cd45ee r10670: Add notes on things that are TODO in Samba4 kerberos land.
Andrew Bartlett
(This used to be commit 5b2114bb9c604e8d36887e1131175da327eabc84)
2007-10-10 13:39:16 -05:00
Andrew Tridgell
69c7cd98ce r10669: reverted jelmers commit 10663 as it was causing lots of panics in 'make test'
I also think the method of getting rid of pstring isn't the right
one. I certainly do want to get rid of pstring/fstring, but the reason
for removing them is the use of arbitrary sized fixed length strings
on the stack and in structures. Changing to another fixed length stack
string format isn't really a win, and moving to use strncpy() is
actually worse than pstrcpy() as strncpy() has the absolutely awful
semantics of always zeroing all remaining bytes, so it ends up taking
a lot of cpu doing pointless memory writes.

I'd rather move to more use of asprintf()/talloc_asprintf() and
similar functions for dynamic string allocation.

You also have to be very careful about some of these system defined
string limits. One some systems PATH_MAX could be 64k or even larger,
which can quickly blow the stack out when you allocate a few of them.
(This used to be commit 194efd26e42d621b239052ed1fec8da916bd2144)
2007-10-10 13:39:16 -05:00
Andrew Tridgell
67762d7965 r10668: added a ildap_search_bytree() function
(This used to be commit fd6d895ebdb201ac6afaf5c8ec84d003765cdff6)
2007-10-10 13:39:16 -05:00
Andrew Tridgell
5ed07022b0 r10667: cope with a NULL tree for base searches in ldb_search()
(This used to be commit 26ff53857802ae4a63f2b6e46c9caa7ca2fbbe89)
2007-10-10 13:39:16 -05:00
Andrew Tridgell
a788d01b87 r10666: - reverse the ildap ldb backend so tree based searches go through
directly, and expression based searches are converted to trees. This
makes for less conversions.

- allow the caller to supply a set of credentials via the ldb opaque
name 'credentials'. I will be using this in my ldb proxy module.
(This used to be commit af24f3d7faac6ef74feef73a23345d8c484da07c)
2007-10-10 13:39:16 -05:00
Andrew Tridgell
b1ee0c2fa4 r10665: fixed some crash errors and an error encoding AND and OR operations in the expression parsing code
(This used to be commit 0d4a900ce5705856d61c6dd4ccb8fdbd049d22b7)
2007-10-10 13:39:15 -05:00
Jelmer Vernooij
ecbf28630e r10664: Include limits.h in replace.h for HOST_NAME_MAX
(This used to be commit dc3dc796746de672dbf3ad0e4715e8b30ae4afb7)
2007-10-10 13:39:15 -05:00
Jelmer Vernooij
819eeaef32 r10663: Eliminate use of pstring
(This used to be commit 57cfbe51e61e27098fad3f9b1113c6f8f69f9a55)
2007-10-10 13:39:15 -05:00