svn commit: samba r10707 - in branches/tmp/samba4-winsrepl: .
source/auth/kerberos source/include source/include/system
source/lib source/lib/events source/lib/ldb/common
source/lib/ldb/ldb_ildap source/lib/ldb/ldb_tdb
source/lib/replace source/lib/tdr source/libcli
source/libcli/ldap source/libcli/smb_composite source/libnet
source/librpc/idl source/librpc/rpc source/nbt_server
source/ntvfs/cifs source/pidl source/pidl/lib/Parse/Pidl
source/pidl/lib/Parse/Pidl/Ethereal
source/pidl/lib/Parse/Pidl/Samba3 source/smbd
source/torture/nbench source/torture/nbt source/torture/rpc
source/winbind
metze at samba.org
metze at samba.org
Tue Oct 4 04:44:25 GMT 2005
Author: metze
Date: 2005-10-04 04:40:46 +0000 (Tue, 04 Oct 2005)
New Revision: 10707
WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=10707
Log:
r13151 at SERNOX (orig r10662): jelmer | 2005-09-30 23:48:25 +0200
Eliminate pstring and friends.
r13152 at SERNOX (orig r10663): jelmer | 2005-10-01 00:08:06 +0200
Eliminate use of pstring
r13153 at SERNOX (orig r10664): jelmer | 2005-10-01 01:10:20 +0200
Include limits.h in replace.h for HOST_NAME_MAX
r13154 at SERNOX (orig r10665): tridge | 2005-10-01 01:14:30 +0200
fixed some crash errors and an error encoding AND and OR operations in the expression parsing code
r13155 at SERNOX (orig r10666): tridge | 2005-10-01 01:46:41 +0200
- 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.
r13156 at SERNOX (orig r10667): tridge | 2005-10-01 01:47:40 +0200
cope with a NULL tree for base searches in ldb_search()
r13157 at SERNOX (orig r10668): tridge | 2005-10-01 01:56:54 +0200
added a ildap_search_bytree() function
r13158 at SERNOX (orig r10669): tridge | 2005-10-01 03:04:34 +0200
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.
r13159 at SERNOX (orig r10670): abartlet | 2005-10-01 03:19:12 +0200
Add notes on things that are TODO in Samba4 kerberos land.
Andrew Bartlett
r13164 at SERNOX (orig r10675): vlendec | 2005-10-01 18:36:04 +0200
Connect to the DC's IPC$
Volker
r13166 at SERNOX (orig r10677): vlendec | 2005-10-02 12:02:35 +0200
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
r13167 at SERNOX (orig r10678): jelmer | 2005-10-02 16:29:08 +0200
Add debug helper
Fix push for non-fixed length strings
r13168 at SERNOX (orig r10679): mimir | 2005-10-02 21:59:24 +0200
Monitor messages should be issued from usermod functions.
Also a bit of formatting.
rafal
r13169 at SERNOX (orig r10680): mimir | 2005-10-03 01:01:25 +0200
Fix a warning.
rafal
r13170 at SERNOX (orig r10681): vlendec | 2005-10-03 11:00:36 +0200
Convert dcerpc_open_smb to a composite function.
Volker
r13171 at SERNOX (orig r10682): tridge | 2005-10-03 11:36:52 +0200
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
r13172 at SERNOX (orig r10683): vlendec | 2005-10-03 15:46:11 +0200
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
r13173 at SERNOX (orig r10684): vlendec | 2005-10-03 16:24:53 +0200
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
r13174 at SERNOX (orig r10685): vlendec | 2005-10-03 16:50:07 +0200
Why wait 5 seconds...
r13175 at SERNOX (orig r10686): vlendec | 2005-10-03 17:03:31 +0200
Fix the build
r13176 at SERNOX (orig r10687): vlendec | 2005-10-03 17:19:08 +0200
Another one...
r13179 at SERNOX (orig r10690): vlendec | 2005-10-03 19:36:10 +0200
Fix a bug that metze pointed out: Leaving the "rejecting" destructor around
prevents the memory from being freed.
Thanks,
Volker
r13180 at SERNOX (orig r10691): vlendec | 2005-10-03 19:36:49 +0200
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
r13183 at SERNOX (orig r10694): jelmer | 2005-10-04 01:27:33 +0200
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/
r13184 at SERNOX (orig r10695): abartlet | 2005-10-04 01:39:59 +0200
strupper() of NULL should be NULL, not panic.
Andrew Bartlett
r13185 at SERNOX (orig r10696): abartlet | 2005-10-04 01:42:59 +0200
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
r13186 at SERNOX (orig r10697): abartlet | 2005-10-04 01:46:21 +0200
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
r13187 at SERNOX (orig r10698): jelmer | 2005-10-04 01:54:44 +0200
Fix support of enums in switch_type() in the ethereal parser generator
r13188 at SERNOX (orig r10699): tridge | 2005-10-04 02:43:16 +0200
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.
r13189 at SERNOX (orig r10700): tridge | 2005-10-04 02:46:31 +0200
removed volkers temporary timer hack now that freeing the netlogon
pipe is safe while inside a rpc callback
r13190 at SERNOX (orig r10701): abartlet | 2005-10-04 02:59:59 +0200
Ensure we return the right user handle.
Andrew Bartlett
r13191 at SERNOX (orig r10702): abartlet | 2005-10-04 03:01:07 +0200
Fix a silly error that caused a rejoin/delete in the torture code to fault...
Andrew Bartlett
r13192 at SERNOX (orig r10703): abartlet | 2005-10-04 03:02:06 +0200
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
r13193 at SERNOX (orig r10704): tridge | 2005-10-04 03:35:22 +0200
don't try to free the netlogon pipe twice
r13194 at SERNOX (orig r10705): tridge | 2005-10-04 03:43:24 +0200
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.
r13195 at SERNOX (orig r10706): tridge | 2005-10-04 03:51:55 +0200
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
Added:
branches/tmp/samba4-winsrepl/source/libcli/smb_composite/connect_multi.c
branches/tmp/samba4-winsrepl/source/nbt_server/irpc.c
branches/tmp/samba4-winsrepl/source/pidl/lib/Parse/Pidl/Samba3/
branches/tmp/samba4-winsrepl/source/pidl/lib/Parse/Pidl/Samba3/Client.pm
branches/tmp/samba4-winsrepl/source/pidl/lib/Parse/Pidl/Samba3/Header.pm
branches/tmp/samba4-winsrepl/source/pidl/lib/Parse/Pidl/Samba3/Parser.pm
branches/tmp/samba4-winsrepl/source/pidl/lib/Parse/Pidl/Samba3/Server.pm
branches/tmp/samba4-winsrepl/source/pidl/lib/Parse/Pidl/Samba3/Template.pm
branches/tmp/samba4-winsrepl/source/pidl/lib/Parse/Pidl/Samba3/Util.pm
Modified:
branches/tmp/samba4-winsrepl/
branches/tmp/samba4-winsrepl/source/auth/kerberos/kerberos-notes.txt
branches/tmp/samba4-winsrepl/source/include/structs.h
branches/tmp/samba4-winsrepl/source/include/system/filesys.h
branches/tmp/samba4-winsrepl/source/lib/events/events_standard.c
branches/tmp/samba4-winsrepl/source/lib/ldb/common/ldb_parse.c
branches/tmp/samba4-winsrepl/source/lib/ldb/ldb_ildap/ldb_ildap.c
branches/tmp/samba4-winsrepl/source/lib/ldb/ldb_tdb/ldb_search.c
branches/tmp/samba4-winsrepl/source/lib/replace/replace.h
branches/tmp/samba4-winsrepl/source/lib/tdr/tdr.c
branches/tmp/samba4-winsrepl/source/lib/util_str.c
branches/tmp/samba4-winsrepl/source/libcli/config.mk
branches/tmp/samba4-winsrepl/source/libcli/ldap/ldap_ildap.c
branches/tmp/samba4-winsrepl/source/libcli/smb_composite/connect.c
branches/tmp/samba4-winsrepl/source/libcli/smb_composite/fetchfile.c
branches/tmp/samba4-winsrepl/source/libcli/smb_composite/fsinfo.c
branches/tmp/samba4-winsrepl/source/libcli/smb_composite/smb_composite.h
branches/tmp/samba4-winsrepl/source/libnet/composite.h
branches/tmp/samba4-winsrepl/source/libnet/libnet_join.c
branches/tmp/samba4-winsrepl/source/libnet/userman.c
branches/tmp/samba4-winsrepl/source/librpc/idl/irpc.idl
branches/tmp/samba4-winsrepl/source/librpc/rpc/dcerpc.c
branches/tmp/samba4-winsrepl/source/librpc/rpc/dcerpc_smb.c
branches/tmp/samba4-winsrepl/source/librpc/rpc/dcerpc_sock.c
branches/tmp/samba4-winsrepl/source/nbt_server/config.mk
branches/tmp/samba4-winsrepl/source/nbt_server/nbt_server.c
branches/tmp/samba4-winsrepl/source/ntvfs/cifs/vfs_cifs.c
branches/tmp/samba4-winsrepl/source/pidl/lib/Parse/Pidl/Ethereal/NDR.pm
branches/tmp/samba4-winsrepl/source/pidl/lib/Parse/Pidl/NDR.pm
branches/tmp/samba4-winsrepl/source/pidl/lib/Parse/Pidl/Typelist.pm
branches/tmp/samba4-winsrepl/source/pidl/pidl
branches/tmp/samba4-winsrepl/source/smbd/service_stream.c
branches/tmp/samba4-winsrepl/source/torture/nbench/nbench.c
branches/tmp/samba4-winsrepl/source/torture/nbt/dgram.c
branches/tmp/samba4-winsrepl/source/torture/rpc/join.c
branches/tmp/samba4-winsrepl/source/torture/rpc/netlogon.c
branches/tmp/samba4-winsrepl/source/torture/rpc/samlogon.c
branches/tmp/samba4-winsrepl/source/torture/rpc/samr.c
branches/tmp/samba4-winsrepl/source/torture/rpc/schannel.c
branches/tmp/samba4-winsrepl/source/torture/rpc/testjoin.c
branches/tmp/samba4-winsrepl/source/winbind/config.mk
branches/tmp/samba4-winsrepl/source/winbind/wb_async_helpers.c
branches/tmp/samba4-winsrepl/source/winbind/wb_async_helpers.h
branches/tmp/samba4-winsrepl/source/winbind/wb_samba3_cmd.c
branches/tmp/samba4-winsrepl/source/winbind/wb_samba3_protocol.c
branches/tmp/samba4-winsrepl/source/winbind/wb_server.h
Changeset:
Sorry, the patch is too large (4949 lines) to include; please use WebSVN to see it!
WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=10707
More information about the samba-cvs
mailing list