Before attempting to get honeyd running on the WL-500g (if that's even possible), I wanted to try some of the perl scripts it uses. There may be more problems with microperl than this, but I noticed that "alarm" (though I don't know the perl language, exactly) works unexpectedly. It doesn't work. Hehe.
Code:
local $SIG{ALRM} = sub { $alarmed = 1; die; };
alarm 30;
There's a brief except from router-telnet.pl. Supposedly, that should cause the function to die after 30 seconds. Rather, when alarm is called, the whole sub dies (the snippet is part of a larger sub) without even REACHING the subsub for $SIG{ALRM}... hehe, subsub. (One way I tested this was by putting: syswrite STDOUT, "test"; as part of the $SIG{ALRM} sub and I did not see it.)
I think it would be nice to fix that and other problems with microperl so that it could be used semi-normally. Any suggestions? I'm going (to attempt) to recompile microperl later, with perl 5.8.7, if possible.
UPDATE: I know too little about perl. It was extremely easy to compile microperl, but no improvement. I wonder why cross-compiling perl is so difficult. I read somewhere that it must be compiled on the platform it will run on... why can't we do that anyway? Why can't we get some compilation tools going on the router itself?