diff options
Diffstat (limited to 'packages/avahi')
-rw-r--r-- | packages/avahi/avahi.inc | 167 | ||||
-rw-r--r-- | packages/avahi/avahi.xml | 90 |
2 files changed, 0 insertions, 257 deletions
diff --git a/packages/avahi/avahi.inc b/packages/avahi/avahi.inc deleted file mode 100644 index a95eaaf0..00000000 --- a/packages/avahi/avahi.inc +++ /dev/null @@ -1,167 +0,0 @@ -<?php - -/* - $Id$ - avahi.inc - part of pfSense (http://www.pfSense.com) - Copyright (C) 2009 Scott Ullrich - All rights reserved. - - Redistribution and use in source and binary forms, with or without - modification, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY - AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, - OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF - SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS - INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN - CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE - POSSIBILITY OF SUCH DAMAGE. -*/ - -function start_avahi() { - mwexec_bg("sh /usr/local/etc/rc.d/avahi-daemon.sh start"); -} - -function stop_avahi() { - mwexec_bg("sh /usr/local/etc/rc.d/avahi-daemon.sh stop"); -} - -function setup_avahi() { - global $g, $config; - - // Extract out libraries and avahi-daemon - if(file_exists("/tmp/avahi.tgz")) { - exec("/usr/bin/tar xzPf /tmp/avahi.tgz -C /"); - unlink("/tmp/avahi.tgz"); - } - - // Make sure everthing was extracted - if(!file_exists("/usr/local/sbin/avahi-daemon")) { - log_error("Sorry, something went wrong while extract avahi binaries. Please try the operation again"); - return; - } - - // Pull some various values out of config.xml - $hostname = $config['system']['hostname']; - $domain = $config['system']['domain']; - $enable = $config['installedpackages']['avahi']['config'][0]['enable']; - $browsedomains = $config['installedpackages']['avahi']['config'][0]['browsedomains']; - $denyif = $config['installedpackages']['avahi']['config'][0]['denyinterfaces']; - - // Is package disabled? - if(!$enable) { - delete_avahi(); - return; - } - - // Add needed users and groups - exec("/usr/sbin/pw useradd avahi"); - exec("/usr/sbin/pw groupadd avahi"); - - // No supplied domains? Use the defaults. - if(!$browsedomains) - $browsedomains = "local, 0pointer.de, zeroconf.org"; - - // Never pass along WAN. Bad. - $denyinterfaces = $config['interfaces']['wan']['if']; - - // Process interfaces defined by user to deny. - if($denyif) { - $if = split(",", $denyif); - foreach($if as $i) { - $ifreal = convert_friendly_interface_to_real_interface_name($i); - if($ifreal) - $denyinterfaces .= ", " . $ifreal; - } - } - - // Construct the avahi configuration - $avahiconfig = <<<EOF - -# avahi.conf - This file was automatically generated by the pfSense pacakge -# manager. Do not edit this file, it will be overwritten automatically. -# See /usr/local/pkg/avahi.inc to make changes to this file! - -[server] -host-name={$hostname} -domain-name={$domain} -browse-domains={$browsedomains} -deny-interfaces={$denyinterfaces} -use-ipv4=yes -use-ipv6=no -enable-dbus=no -#check-response-ttl=no -#use-iff-running=no -#disallow-other-stacks=no -#allow-point-to-point=no - -[wide-area] -enable-wide-area=yes - -[publish] -#disable-publishing=no -#disable-user-service-publishing=no -#add-service-cookie=no -#publish-addresses=yes -#publish-hinfo=yes -#publish-workstation=yes -#publish-domain=yes -#publish-dns-servers=192.168.50.1, 192.168.50.2 -#publish-resolv-conf-dns-servers=yes -#publish-aaaa-on-ipv4=yes -#publish-a-on-ipv6=no - -[reflector] -enable-reflector=yes -#reflect-ipv=no - -[rlimits] -rlimit-core=0 -rlimit-data=4194304 -rlimit-fsize=0 -rlimit-nofile=300 -rlimit-stack=4194304 -rlimit-nproc=3 -#rlimit-as= - -EOF; - - // Make image RW - conf_mount_rw(); - /* Write out .conf file */ - safe_mkdir("/usr/local/etc/avahi"); - $fd = fopen("/usr/local/etc/avahi/avahi-daemon.conf", "w"); - fwrite($fd, $avahiconfig); - fclose($fd); - /* Write out rc.d startup file */ - $start = "/etc/rc.conf_mount_rw\n"; - $start .= "if [ ! -d /proc/0 ]; then\n"; - $start .= " mkdir -p /proc\n"; - $start .= " mount -t procfs procfs /proc\n"; - $start .= "fi\n"; - $start .= "/usr/local/sbin/avahi-daemon -D\n"; - $start .= "/etc/rc.conf_mount_ro\n"; - $stop = "/usr/bin/killall avahi-daemon"; - write_rcfile(array( - "file" => "avahi-daemon.sh", - "start" => $start, - "stop" => $stop - ) - ); - // Make image RO - conf_mount_ro(); - start_avahi(); -} - -?> diff --git a/packages/avahi/avahi.xml b/packages/avahi/avahi.xml deleted file mode 100644 index 6baef60b..00000000 --- a/packages/avahi/avahi.xml +++ /dev/null @@ -1,90 +0,0 @@ -<packagegui> - <copyright> - <![CDATA[ - /* - $Id$ - avahi.xml - part of pfSense (http://www.pfSense.com) - Copyright (C) 2009 Scott Ullrich - All rights reserved. - - Redistribution and use in source and binary forms, with or without - modification, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. - - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY - AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, - OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF - SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS - INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN - CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE - POSSIBILITY OF SUCH DAMAGE. - */ - ]]> - </copyright> - <name>avahi</name> - <version>1.0</version> - <title>Services: Avahi</title> - <menu> - <name>Avahi</name> - <tooltiptext>Modify avahi settings.</tooltiptext> - <section>Services</section> - <url>pkg_edit.php?xml=avahi.xml&id=0</url> - </menu> - <service> - <name>avahi</name> - <rcfile>avahi.sh</rcfile> - <executable>avahi</executable> - </service> - <additional_files_needed> - <prefix>/tmp/</prefix> - <chmod>0755</chmod> - <item>http://www.pfsense.org/packages/config/avahi/binaries/avahi.tgz</item> - </additional_files_needed> - <additional_files_needed> - <prefix>/usr/local/pkg/</prefix> - <chmod>0755</chmod> - <item>http://www.pfsense.org/packages/config/avahi/avahi.inc</item> - </additional_files_needed> - <fields> - <field> - <fielddescr>Enable</fielddescr> - <fieldname>enable</fieldname> - <description>Enable Avahi Bonjour/Zeroconf proxy.</description> - <type>checkbox</type> - </field> - <field> - <fielddescr>Browse domains (comma separated)</fielddescr> - <fieldname>browsedomains</fieldname> - <description>Enter the domains that you would like proxied. (example: local, pfsense.org, mydomain.com)</description> - <type>input</type> - </field> - <field> - <fielddescr>Deny interfaces</fielddescr> - <fieldname>denyinterfaces</fieldname> - <description>Interfaces that you do NOT want Avahi to listen on. NOTE: WAN is disabled by default.</description> - <type>interfaces_selection</type> - <multiple>true</multiple> - </field> - </fields> - <custom_add_php_command> - setup_avahi(); - </custom_add_php_command> - <custom_php_install_command> - setup_avahi(); - </custom_php_install_command> - <custom_php_deinstall_command> - unlink_if_exists("/usr/local/etc/rc.d/avahi-daemon.sh"); - exec("killall avahi-daemon"); - </custom_php_deinstall_command> - <include_file>/usr/local/pkg/avahi.inc</include_file> -</packagegui> |