Package: libnet-jabber-perl
Version: 2.0-3
The RPC code in Net::Jabber does not work properly in server mode
because the handlers for "jabber:iq:rpc" and other xmlns entries are
never populated. This is due to Net::Jabber::Protocol::callbackInit()
never been called during the creation of the Net::Jabber::Client
object.
I think the changes required are as follows:
- Remove the call to
$self->SUPER::callbackInit();
on line 2813 of /usr/share/perl5/Net/Jabber/Protocol.pm
(The "SUPER" seems to not make sense anyhow because
Net::Jabber::Protocol does not seem to inherit from
Net::XMPP::Protocol .)
- Add
sub callbackInit()
{
my $self = shift;
$self->Net::XMPP::Client::callbackInit();
$self->Net::Jabber::Protocol::callbackInit();
}
to /usr/share/perl5/Net/Jabber/Client.pm
I suspect this bug is also present in the parent on CPAN.
A work around (to work around a broken Net::Jabber::Client in a
program) is to copy the definition of sub callbackInit() from
/usr/share/perl5/Net/Jabber/Protocol.pm in your application, remove
the line with "SUPER", and call it manually after the connection
object is create with new(), using for example:
callbackInit($Connection);
Since the callbackInit for Net::XMPP::Client is called properly it
does not have to be called manually in this workaround.
--
http://carrierclass.net/
http://www.linkedin.com/in/stephalnet
--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]