Communication between plug-ins

Jurre van Bergen drwhax at 2600nl.net
Mon Aug 19 13:25:12 EDT 2013


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

What would be nice as well is working on extending certain signals.
Currently, it's an absolute pain to catch the right signals if you want
to support /me encrypted messages while in an OTR conversation.

All the best,
Jurre

On 08/19/2013 06:34 PM, Tomasz Wasilczyk wrote:
>
> Hi,
>
> I've just started working on pidgin-otr integration into Pidgin 3.0.0
tree. My idea is to extend libpurple API with some kind of
verification/encryption framework.
>
> I don't know all the aspects yet, but I guess there is a room for
improvements, just like it was in the case of keyrings. I think we will
work out some nice API together, flexible enough to support such plugins
"natively".
>
> In the meantime, you could describe, what exactly your pidgin-otr fork
does.
>
> Tomek
>
> 17 sie 2013 19:04, "Daniel Kraft" <d at domob.eu <mailto:d at domob.eu>>
napisa?(a):
>
> Hi,
>
> I've patched the Pidgin OTR plug-in to allow verification of
> fingerprints via the Namecoin identity system:
>
>   git clone -b namecoin-verify https://git.domob.eu/pidgin-otr-nmc.git
>
> This was however only a proof-of-concept implementation, because it is
> unlikely that the OTR folks will integrate Namecoin into their
> official code.  However, they indicated interest in a general
> "verification framework" for Pidgin-OTR that would allow other
> plug-ins to provide additional verification methods just like mine,
> and I want to implement that.
>
> The basic idea is like this:  Users have the official Pidgin-OTR
> plug-in installed, and additionally a separate Namecoin plug-in.  When
> the fingerprint verification process is started from the OTR plugin,
> it looks through all installed plug-ins, determines which of those
> provide fingerprint verification and then adds those as additional
> options in the UI dialog.
>
> Is something like this possible, and if so, how would I best implement
> it?  In particular, how can the communication between the OTR plug-in
> and verification plug-ins be done?  I presume that
> purple_plugins_get_loaded is a start which could be used by OTR on
> demand to get a list of all plug-ins installed (rather, active).  But
> how could verification plug-ins signal to OTR that they indeed provide
> verification features?  And how can OTR then tell those plug-ins to
> build their UI, and vice-versa those plug-ins tell OTR to mark
> fingerprints as verified?
>
> My first idea would be to use signals:  If I understand them
> correctly, one can basically connect any signal to any GObject, thus
> would it be possible to achieve what I have in mind if each
> verification plug-in connected a signal handler for, say,
> "pidgin-otr-start-verification" to its PurplePlugin, and OTR fired
> this signal on every plug-in loaded?  Then only those which are
> actually verification plug-ins would handle the signal, and could take
> appropriate action.  Via the user-data field for the signal handlers,
> pointers to data-structures could be exchanged that can then be used
> to communicate between OTR and the verifiers.
>
> What do you think, is this a possible approach?  Are there other
> (better) ways to handle my situation?  I've not much experience with
> Glib and libpurple, so any help is very much appreciated!
>
> Thanks!  Cheers,
> Daniel
>
>
>
>     _______________________________________________
>     Devel mailing list
>     Devel at pidgin.im <mailto:Devel at pidgin.im>
>     http://pidgin.im/cgi-bin/mailman/listinfo/devel
>
>
>
> _______________________________________________
> Devel mailing list
> Devel at pidgin.im
> http://pidgin.im/cgi-bin/mailman/listinfo/devel

- -- 
Give a man a fish and you feed him for a day; teach a man to fish and
you feed him for life.

http://jurrevanbergen.nl/
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.12 (GNU/Linux)

iQEcBAEBAgAGBQJSElT3AAoJELc5KWfqgB0CY7QH/37LyDQYXqnn31C/7E4pLw1V
/4tiZG6nIbTlJbNaRalpnXPIvcHHDA5SJoa4YIoY3ePsm3fQDVD1bKhg+667TALc
SLE1ZUlhVMwYlb6IwK/fE81oCrsZQPUeyH+FZTaNcnOX3M++fMgm2dsHbS3tIWlX
8uGfj5ROxlQOOo/zGlgkzqOqbr8yGJbN+t7qM6WEw+RDA19pHlbpehRX1qeqNgvn
5yNREI7XgGnwjerqc8UNPZ5kE2pjXLGJfmwOr3IA1WHWBHzDADC6JQ8h14BE37TR
PeaTXwBzbXpLYUYnvyM8SXjDbWbKF30CUs/DByaV/kUhh/UDZc6S3xYex9BxHfs=
=OLTA
-----END PGP SIGNATURE-----

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://pidgin.im/pipermail/devel/attachments/20130819/ddbe900a/attachment-0001.html>


More information about the Devel mailing list