[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-devel
Subject:    Re: SSL support
From:       Thomas McGuire <mcguire () kde ! org>
Date:       2010-02-20 12:28:20
Message-ID: 201002201328.26627.mcguire () kde ! org
[Download RAW message or body]

[Attachment #2 (multipart/signed)]


Hi Ulrich,

On Saturday 20 February 2010 12:53:23 kuddel-fl wrote:
> Am Dienstag, 16. Februar 2010 15:22:40 schrieb Andreas Hartmetz:
> > On Tuesday 16 February 2010 13:05:23 Kevin Krammer wrote:
> > > On Saturday, 2010-02-13, kuddel-fl wrote:
> > > > Hi!
> > > > 
> > > > I'm developing a POP3 mail client (KShowmail). Now I want to add ssl
> > > > 
> > > >  support to it.
> > > > 
> > > > I have found some classes with ssl (KSSL, QSslSocket, ...) But I need
> > > > more know-how about this.
> > > > Does anybody know a nice tutorial?
> > > 
> > > Andreas or Thiago can probably answer this better, but I guess you
> > > could check the code of KIO slaved which support SSL, e.g. kio_http ot
> > > kio_pop3
> > 
> > I am ashamed about the current state of things...
> > Look at KTcpSocket and pretend that it's a kind of QSslSocket for
> > documentation :/, and also look at KIO::SslUi for some user
> > interface-related helpers.
> > I'm currently picking up work on the SSL stuff again, so I should be able
> > to answer any specific questions, preferably on IRC (#kde-devel on
> > freenode) because there will be long e-mail threads otherwise.
> 
> Very thanks.
> 
> I use it like QSslSocket and it works. In  the  majority  of  cases.
> It works at the provider Freenet with and without SSL. It works at the
> provider GMX without SSL but it doesn't work with SSL. In the midst of the
> POP3 dialog the byte stream breaking off an i get a timeout error.
> 
> This is my code to read from the socket:
> 
> [..]
>
> Is there any better way to read the socket? Because KMail works with GMX
> using SSL.

It is better to use KTcpSocket for KDE applications, as that will give you the 
standard KDE SSL certificate handling, so you don't have to code that 
manually.

KMail currently uses the POP3 KIO slave in kdepimlibs/kioslave/pop3, which is 
based on KIO::TCPSlaveBase, which also uses KTcpSocket. The slave has some 
custom line reading code which seems to work ok, so maybe you should have a 
look at the POP3 KIO slave and at TCPSlaveBase.

It would be great if we could share the POP3 code. Currently, there is POP3 
code in the KIO slave in kdepimlibs, and probably similar code in KShowMail. 
If we could share this code by putting in in a library, we could get rid of 
the duplicate effort, which saves both of us maintenance effort in the long 
term.

I imagine something similar to the KIMAP library in kdepimlibs, which provides 
a nice job-based API.

For KMail 2, we have an Akonadi POP3 resource, which currently uses the KIO 
slave. It would be much nicer to use a POP3 library, without the need to 
fiddle around with KIO slaves, so that's why I would appreciate a POP3 
library.

If you are interested in collaborating on such a library, please contact me or 
find me on the #kontact channel on IRC.

I had a quick look at the sources of the KDE3 version of KShowMail. It 
implements mail parsing by itself, for example in showrecordelem.cpp and in 
decodeRFC2047.cpp. That is now all available in the KDE MIME library KMime, 
which can be found in kdepimlibs. Using this would save you a lot of effort as 
well. Again, please join #kontact if you have any questions about KMime.
The documentation on KMime is a bit sparse, I plan on improving that in the 
next days.

Regards,
Thomas McGuire
KMail Maintainer

["signature.asc" (application/pgp-signature)]

>> Visit http://mail.kde.org/mailman/listinfo/kde-devel#unsub to unsubscribe <<


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic