Okay, I glanced at the code and read through the ml archives regarding
sslpoe and how there seems to be a dilema revolving around where to put
this working code. Everyone is concerned since it isn't a wheel, filter,
driver, component, etc etc. Well let's look at what it is doing. It is
directly working on the socket. In the ClientTCP example code, the
socket is tied to bits before it even gets to the wheel... but nothing
happens inbetween that. What do wheels do? Manage the socket given to
them through filters and drivers. If they manage the socket why not push
this SSL functionality (the tied class) into ReadWrite? Have it be a
hidden class because there is no need to expose this functionality
outside of the wheel. And you could even do it two ways: have it be an
extra argument passed at creation time or even a simple
$wheel->toggle_ssl() for midstream negotiation to kick in. Ideally the
end developer shouldn't need to worry about the SSL stuff at all, so
let's just put it into the wheel and let the poor developer get back to
worrying about handling the data coming down the pipe.
- Of sslpoe Nicholas Perez
- Re: Of sslpoe Rocco Caputo
