* * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software Foundation, * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ /* * Please don't edit this file! * Make changes to the configuration array in config.php. */ function set_defaults_for_routers(&$parsed_config) { $router_defaults = array( 'timeout' => 30, 'disable_ipv6' => false, 'disable_ipv4' => false ); // Loads defaults when key does not exist foreach ($parsed_config['routers'] as &$router) { foreach ($router_defaults as $key => $value) { if (!array_key_exists($key, $router)) { $router[$key] = $value; } } } } $config = array( // Release configuration 'release' => array( 'version' => '1.3.0', 'codename' => 'Convergence', 'repository' => 'https://github.com/respawner/looking-glass' ), // Frontpage configuration 'frontpage' => array( // Use Bootstrap theme 'bootstrap_theme' => true, // Custom Bootstrap theme 'custom_bootstrap_theme' => false, // CSS to use 'css' => 'css/style.css', // Title 'title' => 'Looking Glass', // Image (null for no image) 'image' => null, // Link for the title/image 'header_link' => null, // Peering Policy file (null for no peering policy) 'peering_policy_file' => null, // Disclaimer (null for no disclaimer) 'disclaimer' => 'Disclaimer example', // Display the title 'show_title' => true, // Show visitor IP address 'show_visitor_ip' => true, // Frontpage order you can use: routers, commands, parameter, buttons 'order' => array('routers', 'commands', 'parameter', 'buttons') ), // Contact (both null for no contact) 'contact' => array( // Name of the contact 'name' => 'Example Support', // Email of the contact 'mail' => 'support@example.com' ), // Output control 'output' => array( // Show or hide command in output 'show_command' => true ), // Filters 'filters' => array(), // Logs 'logs' => array( // Logs file where commands will be written 'file' => '/var/log/looking-glass.log', // Format for each logged command (%D is for the time, %R is for the // requester IP address, %H is for the host and %C is for the command) 'format' => '[%D] [client: %R] %H > %C' ), // Misc 'misc' => array( // Allow private ASN 'allow_private_asn' => false, // Allow RFC1918 IPv4 and FD/FC IPv6 as parameters 'allow_private_ip' => true, // Allow reserved IPv4 addresses (0.0.0.0/8, 169.254.0.0/16, // 192.0.2.0/24 and 224.0.0.0/4) 'allow_reserved_ip' => true ), // Tools used for some processing 'tools' => array( // Options to be used when pinging from a UNIX host (case of BIRD // and Quagga) 'ping_options' => '-A -c 10', // Source option to use when pinging 'ping_source_option' => '-I', // Traceroute tool to be used 'traceroute4' => 'traceroute -4', 'traceroute6' => 'traceroute -6', // Options to be used when tracerouting from a UNIX host (case of BIRD // and Quagga) 'traceroute_options' => '-A -q1 -N32 -w1 -m15', // Source option to use when tracerouting 'traceroute_source_option' => '-s' ), // Documentation (must be HTML) 'doc' => array( // Documentation for the 'show route' query 'bgp' => array( 'command' => 'show route IP_ADDRESS', 'description' => 'Show the best routes to a given destination.', 'parameter' => 'The parameter must be a valid destination. Destination means an IPv4/IPv6 address or a subnet. Masks are also accepted as part of a valid IPv4/IPv6 address.
RFC1918 addresses, IPv6 starting with FD or FC, and IPv4 reserved ranges (0.0.0.0/8, 169.254.0.0/16, 192.0.2.0/24 and 224.0.0.0/4) may be refused.
Please note that some routers always need a mask to be given when looking for an IPv6 address.

Example of valid arguments: