[gnutls-devel] [PATCH] Re: TCP Fast Open
tim.ruehsen at gmx.de
Sat Jul 16 21:04:09 CEST 2016
On Friday 15 July 2016 20:54:45 Nikos Mavrogiannopoulos wrote:
> On Fri, Jul 15, 2016 at 4:52 PM, Tim Ruehsen <tim.ruehsen at gmx.de> wrote:
> >> > True, but the new writev_tfo functions need a session pointer instead
> >> > of a
> >> > transport pointer. And I didn't want to take care for user supplied
> >> > transport pointers + user defined write functions (set before or after
> >> > gnutls_transport_set_fastopen()).
> >> > But I see room for a internal refactoring, that uses session for all
> >> > system
> >> > write/writev funtions... and call user supplied functions from there.
> >> > IMO,
> >> > that should be another patch.
> >> Would you be interested in making that patch? That would really
> >> simplify any such additions in the future.
> > I can't test the non-POSIX code, so it might go into many time-wasting
> > iterations. Time is something I don't have very much of...
> If that's the only issue you can make a fork at gitlab and I'll give
> you access to the CI. This will ease things considerably.
I forked gnutls to https://gitlab.com/rockdaboot/gnutls. What do I have to do
that the CI works on the fork ?
No promise to make it - I already had a look at it. I don't see a way to
simplify code paths. It looks like _gnutls_writev_emu() is needed anyways, and
there is the need for checking the type of callback (fd or session). Moving
the code around (e.g. checks into system_writev() doesn't really help either).
So maybe my first impression was simply wrong. Without (all) the push
callbacks taking session instead of fd, we can't simplify it. Even if that
looks like a (weak) design flaw in the past, we can't change it easily without
breaking existing application code. I guess we have to live with that ugly
code in the patch. Maybe you see more and/or have a good idea about it.
But anyway - the CI would help in testing and correcting the patch for non
> btw. you didn't attach the new patch
Sorry - it lacks gnutls/socket.h from the previos patch. Got lost when
rebasing my branch onto upstream master. But anyway - with CI access I'll test
it myself and prepare a new patch (earliest on Monday).
-------------- next part --------------
A non-text attachment was scrubbed...
Size: 819 bytes
Desc: This is a digitally signed message part.
More information about the Gnutls-devel