Refreshing of the modules signatures does not work

I found this bug while was trying to install FreePBX on Gentoo.

There is an error in an xml file that the code downloads from freepbx.org when it (the code) tries to refresh the signatures of modules: the downloaded file contains no information about them (the signatures).

If you want to proof what I say, modify /var/www/html/admin/libraries/Console/Moduleadmin.class.php in such way: search for the definition of refreshsignatures function and replace

        $this->writeln(_("Checking Signatures of Modules..."));
        $modules = array();

with

        $this->writeln(_("Checking Signatures of Modules..."));
        $modules = array();

        foreach($modules_online as $qwe) {
                $this->writeln("\t".sprintf(_("%s %s"),$qwe['rawname'],isset($qwe['rawname']['signed'])?1:0));
        }

Save the file and run the command fwconsole moduleadmin refreshsignatures. At the beginning of its output you’ll see a list of stings ended by zeros. Zeros at the end of these strings mean that we do not get any data about the signed field. This means “no data about signatures”.

To developers: fix it, please. Yes, I know that I may disable signature checking. But it’s not the choice I’d prefer.

We have a bug tracker at issues.freepbx.org please use that.

This is now fixed…

No it isn’t. XML file still contains no data about signatures so if a module for some reason becomes tampered it will never become normal. I checked this right now.

Yes it’s fine. I checked this earlier by damaging a modules signature then running refresh signatures and it worked fine.

You are right. It works although I’m sure the XML file doesn’t contain information about signatures :-).

My problem was that one of necessary public keys was missing.

Thank you.