New async libwbclient
Stefan (metze) Metzmacher
metze at samba.org
Mon Apr 6 07:58:47 GMT 2009
> I've uploaded my current async libwbclient iteration. It's
> 1849 lines replaced by 1890 new ones, and it's almost
> midnight here. So I didn't directly push it yet.
> The core checkin is af7876587c3. I've done this as a large
> patch, you definitely don't want to see the whole history of
> this :-)
This looks really good!
> The main difference to the current in-master library is a
> better abstraction: We don't need the recv_helper anymore,
> and we don't need to expose the innards of the async
> libsmbclient engine anymore. Furthermore, it does a lot less
> memcpy ops, it relies on writev_send.
> I need to test the secondary trans things with signing, and
> we need a writev style version of the client signing
> routine. The current one makes a copy and signs that.
I assume the trans code will just work.
Calling cli_state_seqnum_persistent() and cli_state_seqnum_remove()
is only needed for the old functions which use cli_state->inbuf/outbuf,
so you should remove them from the new functions.
Then you can also avoid the goto fail in cli_trans_done().
> It's a ton of new code, and it has taken me two days to get
> my stack of 60 patches with funny gd-style checkin messages
> into something presentable, so eventually I want this in and
> promise to support it :-)
I think we can move smb_splice_chain to smbd/process.c now:-)
For me it would be nice if we could decouple
the async_smb.c code completely from struct cli_state,
but maybe we need to wait until all cli_state->inbuf users are gone.
+1 for getting this code in when it's tested enough.
-------------- next part --------------
A non-text attachment was scrubbed...
Size: 252 bytes
Desc: OpenPGP digital signature
Url : http://lists.samba.org/archive/samba-technical/attachments/20090406/01fbd958/signature.bin
More information about the samba-technical