Skip Menu |
 

This queue is for tickets about the libnet CPAN distribution.

Report information
The Basics
Id: 40478
Status: open
Priority: 0/
Queue: libnet

People
Owner: Nobody in particular
Requestors: dwheeler [...] cpan.org
Cc:
AdminCc:

Bug Information
Severity: (no value)
Broken in: (no value)
Fixed in: (no value)



CC: rjbs [...] cpan.org
Subject: Add starttls to Net::Cmd
Date: Tue, 28 Oct 2008 18:08:49 -0700
To: bug-libnet [...] rt.cpan.org
From: "David E. Wheeler" <dwheeler [...] cpan.org>
Download (untitled) / with headers
text/plain 610b
Hi Graham, I'm surprised not to see anything like this in the libnet queue! I recently got a patch for SVN::Notify adding TLS support by using Net::SMTP::TLS. Since someone might also want to do auth, though, this is suboptimal. Ideally, Net::SMTP would just have a `starttls` parameter. Is this do-able? Perhaps it could be in Net::Cmd so that all of the libnet modules could use it. I'm sure it's not easy to do, and you probably don't have the tuits for it, but maybe someone out there reading this does? Maybe something could be borrowed from Net::SMTP::TLS. Thanks for listening! David
Subject: Re: [rt.cpan.org #40478] Add starttls to Net::Cmd
Date: Tue, 28 Oct 2008 21:43:19 -0500
To: bug-libnet [...] rt.cpan.org
From: Graham Barr <gbarr [...] pobox.com>
Download (untitled) / with headers
text/plain 483b
Anything is do-able. Unfortunately when Net::Cmd was written, just about a decade ago now, a design decision was made to inherit from the socket object instead of containing it as an attribute. This creates a problem for IO::Socket::SSL/starttls which mutates the socket object. I could change it to not inherit, but I know there are people out there that use Net::Cmd and treat the object as the socket. Net::SMTP::TLS re-implemented Net::SMTP from scratch :-( Graham.
Download (untitled) / with headers
text/plain 564b
On Tue Oct 28 22:43:48 2008, gbarr@pobox.com wrote: Show quoted text
> I could change it to not inherit, but I know there are people out > there that use Net::Cmd and treat the object as the socket.
Couldn't there be some sort of delegation so that the object could behave like a socket where appropriate? Or is it treated like a file handle when it's used a socket, and so it could just be a tie interface that handles that stuff? I'm not familiar with the code, just taking a stab here. Show quoted text
> Net::SMTP::TLS re-implemented Net::SMTP from scratch :-(
Yeah. Ugh. Thanks, David
Subject: Re: [rt.cpan.org #40478] Add starttls to Net::Cmd
Date: Mon, 6 Apr 2009 11:12:53 -0500
To: bug-libnet [...] rt.cpan.org
From: Graham Barr <gbarr [...] pobox.com>
On Apr 6, 2009, at 11:08 AM, David Wheeler via RT wrote: Show quoted text
> Queue: libnet > Ticket <URL: https://rt.cpan.org/Ticket/Display.html?id=40478 > > > On Tue Oct 28 22:43:48 2008, gbarr@pobox.com wrote: >
>> I could change it to not inherit, but I know there are people out >> there that use Net::Cmd and treat the object as the socket.
> > Couldn't there be some sort of delegation so that the object could > behave like a socket where appropriate? Or is it treated like a file > handle when it's used a socket, and so it could just be a tie > interface > that handles that stuff? I'm not familiar with the code, just taking a > stab here.
Yes. I think the best solution for Net::Cmd to to store the socket as an attribute and add a tie interface for backwards compatibility, but change all modules in libnet not to assume it is a socket. Patches welcome. There is a git repository at http://git.goingon.net/?p=libnet.git;a=summary I will probably place it on github sometime. Show quoted text
>> Net::SMTP::TLS re-implemented Net::SMTP from scratch :-(
> > Yeah. Ugh.
I agree. Graham.
Subject: Re: [rt.cpan.org #40478] Add starttls to Net::Cmd
Date: Mon, 6 Apr 2009 09:22:03 -0700
To: bug-libnet [...] rt.cpan.org
From: "David E. Wheeler" <dwheeler [...] cpan.org>
Download (untitled) / with headers
text/plain 529b
On Apr 6, 2009, at 9:17 AM, Graham Barr via RT wrote: Show quoted text
> I think the best solution for Net::Cmd to to store the socket as an > attribute > and add a tie interface for backwards compatibility, but change all > modules > in libnet not to assume it is a socket. > > Patches welcome. There is a git repository at http://git.goingon.net/?p=libnet.git;a=summary > > I will probably place it on github sometime.
Heh, yeah, I haven't got the tuits either. Maybe someone who wants TLS for SVN::Notify will have them. :-) Best, David


This service is sponsored and maintained by Best Practical Solutions and runs on Perl.org infrastructure.

Please report any issues with rt.cpan.org to rt-cpan-admin@bestpractical.com.