Subject: | Error when callback snac_error is triggered: Can't use string ("1") as a subroutine ref.... |
Date: | Tue, 10 Dec 2013 20:59:26 -0800 |
To: | bug-Net-OSCAR [...] rt.cpan.org |
From: | Todd A <starman617 [...] gmail.com> |
Hello,
Software versions:
Perl (v5.16.0) built for darwin-2level
Net-OSCAR-1.928
Mac OS X 10.7.5
uname -a gives: Darwin Stormwind.private 11.4.2 Darwin Kernel
Version 11.4.2: Thu Aug 23 16:25:48 PDT 2012;
root:xnu-1699.32.7~1/RELEASE_X86_64 x86_64
_THE GOAL_
I'm attempting to trap the following error:
OSCAR session: Unknown SNAC 1/21:
00 03 00 1E 68 74 74 70 3A 2F 2F 61 70 69 2E 61 ....
http ://a pi.a
69 6D 2E 6E 65 74 2F 6C 69 66 65 73 74 72 65 61 im.n
et/l ifes trea
6D 2F 00 04 00 2A 68 74 74 70 3A 2F 2F 6F 2E 61 m/..
.*ht tp:/ /o.a
6F 6C 63 64 6E 2E 63 6F 6D 2F 6C 69 66 65 73 74 olcd
n.co m/li fest
72 65 61 6D 2F 63 6C 69 65 6E 74 2F 66 75 6C 6C ream
/cli ent/ full
00 05 00 28 68 74 74 70 3A 2F 2F 6F 2E 61 6F 6C ...(
http ://o .aol
63 64 6E 2E 63 6F 6D 2F 6C 69 66 65 73 74 72 65 cdn.
com/ life stre
61 6D 2F 63 6C 69 65 6E 74 2F 6D 65 00 07 00 25 am/c
lien t/me ...%
68 74 74 70 3A 2F 2F 6F 2E 61 6F 6C 63 64 6E 2E http
://o .aol cdn.
63 6F 6D 2F 6C 69 66 65 73 74 72 65 61 6D 2F 70 com/
life stre am/p
68 6F 74 6F 2F 00 08 00 27 68 74 74 70 3A 2F 2F hoto
/... 'htt p://
6C 69 66 65 73 74 72 65 61 6D 2E 61 6F 6C 2E 63 life
stre am.a ol.c
6F 6D 2F 70 68 6F 74 6F 2F 75 70 6C 6F 61 64 3F om/p
hoto /upl oad?
00 09 00 13 68 74 74 70 3A 2F 2F 61 70 69 2E 61 ....
http ://a pi.a
69 6D 2E 6E 65 74 2F 00 0A 00 22 68 74 74 70 3A im.n
et/. .."h ttp:
2F 2F 6C 69 66 65 73 74 72 65 61 6D 2E 61 6F 6C //li
fest ream .aol
2E 63 6F 6D 2F 73 65 74 74 69 6E 67 73 00 0B 00 .com
/set ting s...
21 68 74 74 70 3A 2F 2F 6C 69 66 65 73 74 72 65 !htt
p:// life stre
61 6D 2E 61 6F 6C 2E 63 6F 6D 2F 73 74 72 65 61 am.a
ol.c om/s trea
6D 2F 00 0C 00 1D 68 74 74 70 73 3A 2F 2F 6D 79 m/..
..ht tps: //my
2E 73 63 72 65 65 6E 6E 61 6D 65 2E 61 6F 6C 2E .scr
eenn ame. aol.
63 6F 6D 00 0D 00 24 68 74 74 70 3A 2F 2F 61 62 com.
..$h ttp: //ab
61 70 69 2E 61 62 77 65 62 2E 61 6F 6C 2E 63 6F api.
abwe b.ao l.co
6D 2F 41 42 57 65 62 41 70 69 2F 00 0E 00 1D 68 m/AB
WebA pi/. ...h
74 74 70 73 3A 2F 2F 64 62 72 2E 73 65 72 76 69 ttps
://d br.s ervi
63 65 73 2E 61 6F 6C 2E 63 6F 6D 2F 00 0F 00 1A ces.
aol. com/ ....
68 74 74 70 3A 2F 2F 6C 69 66 65 73 74 72 65 61 http
://l ifes trea
6D 2E 61 6F 6C 2E 63 6F 6D 2F 00 10 00 2B 68 74 m.ao
l.co m/.. .+ht
74 70 3A 2F 2F 6C 69 66 65 73 74 72 65 61 6D 2E tp:/
/lif estr eam.
61 6F 6C 2E 63 6F 6D 2F 70 68 6F 74 6F 2F 6C 69 aol.
com/ phot o/li
66 65 73 74 72 65 61 6D 2F 00 11 00 1F 68 74 74 fest
ream /... .htt
70 3A 2F 2F 77 77 77 2E 61 69 6D 2E 63 6F 6D 2F p://
www. aim. com/
69 6D 5F 6E 65 74 77 6F 72 6B 73 3F 00 12 00 19 im_n
etwo rks? ....
68 74 74 70 3A 2F 2F 61 70 69 2E 61 69 6D 2E 6E http
://a pi.a im.n
65 74 2F 69 6D 6C 6F 67 2F 00 13 00 2E 68 74 74 et/i
mlog /... .htt
70 3A 2F 2F 6F 2E 61 6F 6C 63 64 6E 2E 63 6F 6D p://
o.ao lcdn .com
2F 6C 69 66 65 73 74 72 65 61 6D 2F 63 6C 69 65 /lif
estr eam/ clie
6E 74 2F 77 61 74 63 68 65 72 73 00 14 00 14 68 nt/w
atch ers. ...h
74 74 70 73 3A 2F 2F 61 70 69 2E 61 69 6D 2E 6E ttps
://a pi.a im.n
65 74 2F 00 15 00 1F 68 74 74 70 73 3A 2F 2F 61 et/.
...h ttps ://a
70 69 2E 61 69 6D 2E 6E 65 74 2F 6C 69 66 65 73 pi.a
im.n et/l ifes
74 72 65 61 6D 2F 00 16 00 2D 68 74 74 70 3A 2F trea
m/.. .-ht tp:/
2F 61 69 6D 2E 63 6F 6D 2F 2E 73 65 74 74 69 6E /aim
.com /.se ttin
67 73 2F 6D 6F 62 69 6C 65 2F 6E 6F 74 69 66 69 gs/m
obil e/no tifi
63 61 74 69 6F 6E 73 00 17 00 28 68 74 74 70 3A cati
ons. ..(h ttp:
2F 2F 61 69 6D 2E 63 6F 6D 2F 2E 73 65 74 74 69 //ai
m.co m/.s etti
6E 67 73 2F 6D 6F 62 69 6C 65 2F 61 63 63 6F 75 ngs/
mobi le/a ccou
6E 74 73 00 18 00 1B 68 74 74 70 3A 2F 2F 73 74 nts.
...h ttp: //st
61 67 69 6E 67 2E 61 70 69 2E 61 69 6D 2E 6E 65 agin
g.ap i.ai m.ne
74 2F t/
_THE PROBLEM_
I get:
$ ./oscar-bug.pl
Executing callback: got_snac_error
Done executing callback: got_snac_error
Can't use string ("1") as a subroutine ref while "strict refs" in
use at
/Users/taa/perl5/perlbrew/perls/perl-5.16.0/lib/site_perl/5.16.0/Net/OSCAR.pm
line 2456.
$
Here is the minimal code to duplicate the problem (also including as an
attachment to this email):
#!/usr/bin/perl -w
use strict;
use warnings;
#12-09-2003, 02:07 AM http://tinyurl.com/q2zv6an: "Re:newbie perl
question using Net::OSCAR module"
use Net::OSCAR qw(:standard);
# Set configuration params --------------------------------
my $aim = Net::OSCAR->new();
$aim->signon(screenname => "screenname", password => "password",
OSCAR_SVC_AIM);
$aim->set_callback_snac_unknown(&got_snac_error);
# ------------------------------------------------------------
# Main Loop
while(1) {
$aim->do_one_loop();
}
sub got_snac_error {
print "Executing callback: got_snac_error\n";
my ($aim, $connection, %snac, $data) = @_;
print "Done executing callback: got_snac_error\n";
}
In my testing, by process of elimination, the error only happens if I've
registered set_callback_snac_unknown.
Message body is not shown because it is too large.
Message body is not shown because sender requested not to inline it.