While this was attributed to me, I actually only implemented code
modifications made by Livio (leofante at gawab dot com) with minor modifications.
Since I don't actually have any extensions that use this system, I mostly
implemented his mods, then performed some testing to make sure that those
modifications did not break the user manager functionality.
Basically, extensions were a feature that some people wanted, so a basic
framework was put into place. Extensions are not supported by Monowall in
any real fashion, though. Bringing up ideas for further extending this
functionality on the list will probably be largely ignored.
When I implemented the User Manager, it broke support for extensions that
had a web gui component. Livio was kind enough to look through the code and
came up with an alternative way for extensions to work with the user manager
feature. Here are the instructions that he sent with his code
modifications:
Now in order to have the extensions working you have to:
1) Add a new file named "extensions.inc" in /usr/local/www with the
list of all the pages and the description of your extensions:
Example:
<?php
$tmp['ext/apm/apm.php'] = "Extensions: apm";
$tmp['ext/rrd/graph_rrd.php'] = "Extensions: rrd: graph"; ?>
2) Add a new file named "menu2.inc" in every extension dir.
The first line is the label that is used in the Extensions submenu on
m0n0 web page then a list of the pages (one per line), the first line of
this list is the page associated with the label.
Example:
Apm
ext/apm/apm.php
if there are more than one extension all the lines in extensions.inc
must match with all the entries you have put in all the menu2.inc.
3)add these two links in every extension dir lrwxr-xr-x .htpasswd ->
../../.htpasswd lrwxr-xr-x gui.css -> ../../gui.css the first is
necessary because without it not all the $_SERVER variable are present and
some of the missing one are used to authenticate the user. the second is
used to access the css file from the included part of the page (fbegin.inc
etc)
(Back to Paul again)
Note that #3 above is not needed because I added code to programmatically
add these links at boot time.
Basically, to add extensions to Monowall you need to be able to build your
own Monowall installation. If extensions could be loaded at run-time and
stay across reboots.. Well, you'd be running pfSense then.. :) That's not
really what Monowall is all about, though...
Paul
-----Original Message-----
From: Sean Waite [mailto:swaite at sbn dash services dot com]
Sent: Thursday, July 20, 2006 5:58 PM
To: m0n0wall at lists dot m0n0 dot ch
Subject: [m0n0wall] 3rd party extensions?
I just saw this on the website in reference to 1.23b1
"added support for 3rd party extensions in the group management and dynamic
menu system (ptaylor)"
I can't seem to locate any information on this. I did see two references to
this in the mailing list, but alas not much information was
provided. Can someone please give me an overview of what this is? I suspect
this probably isnt much as there does not seem to be much
info (or "chatter" so to speak :).
Sean Waite
---------------------------------------------------------------------
To unsubscribe, e-mail: m0n0wall dash unsubscribe at lists dot m0n0 dot ch
For additional commands, e-mail: m0n0wall dash help at lists dot m0n0 dot ch