aboutsummaryrefslogtreecommitdiffstats
path: root/fap/tools
diff options
context:
space:
mode:
Diffstat (limited to 'fap/tools')
-rw-r--r--fap/tools/create_queries/create_queries.php62
-rw-r--r--fap/tools/tools_includes/ipcalc_functions.php134
2 files changed, 0 insertions, 196 deletions
diff --git a/fap/tools/create_queries/create_queries.php b/fap/tools/create_queries/create_queries.php
deleted file mode 100644
index d579370..0000000
--- a/fap/tools/create_queries/create_queries.php
+++ /dev/null
@@ -1,62 +0,0 @@
-<?php
- /*
- Used for generating SQL queries for FAP
- Jonas Lindstad for TG15
- GPL V2
- */
-
- chdir(__DIR__); # sets the executing directory to be the path of this script - necessary for CLI require() usage
- header("Content-Type: text/plain");
-
- /*
- To get IPv4/IPv6 calculation functions
- */
- require '../tools_includes/ipcalc_functions.php';
-
- /*
- Fetch data sources
-
- $patchlist = file('../../../patchlist.txt');
- $switches = file('../../../switches.txt');
- */
- $patchlist = file('../../../patchlist_extras.txt');
- $switches = file('../../../switches_extras.txt');
-
- $dataset = array();
-
- foreach($patchlist as $lines){
- $pieces = explode(' ', trim($lines));
- $dataset[$pieces[0]] = array(
- 'hostname' => $pieces[0],
- 'distro_name' => 'rs1.' . $pieces[1], # prefix with "rs." so we get "rs1.distro0" syntax
- 'distro_phy_port' => $pieces[2]
- );
- }
-
- /*
- Assign to logical and usable names in array
- */
- foreach($switches as $lines){
- $pieces = explode(' ', trim($lines));
- $dataset[$pieces[0]]['mgmt_v4_addr'] = explode('/', $pieces[3])[0];
- $dataset[$pieces[0]]['mgmt_v4_cidr'] = explode('/', $pieces[3])[1];
- $dataset[$pieces[0]]['mgmt_v4_gw'] = net_to_gw($pieces[3]);
- $dataset[$pieces[0]]['mgmt_v6_addr'] = explode('/', $pieces[4])[0];
- $dataset[$pieces[0]]['mgmt_v6_cidr'] = explode('/', $pieces[4])[1];
- $dataset[$pieces[0]]['mgmt_v6_gw'] = net_to_gw($pieces[4]);
- $dataset[$pieces[0]]['traffic_vlan'] = $pieces[5];
- $dataset[$pieces[0]]['mgmt_vlan'] = '666';
- }
-
- /*
- Prints the query rows
- */
- $sql_query = '';
- foreach($dataset as $k => $v){
- $columns = implode(', ', array_keys($v));
- $values = "'" . implode("', '", array_values($v)) . "'";
- $sql_query .= 'INSERT INTO switches (' . $columns . ') VALUES (' . $values . ');' . "\n";
- }
-
- echo $sql_query;
-?>
diff --git a/fap/tools/tools_includes/ipcalc_functions.php b/fap/tools/tools_includes/ipcalc_functions.php
deleted file mode 100644
index e848ef1..0000000
--- a/fap/tools/tools_includes/ipcalc_functions.php
+++ /dev/null
@@ -1,134 +0,0 @@
-<?php
- /*
- Mainly copied from djamps's work - https://github.com/djamps/php-ipv6-calculator/blob/master/ipcalc.php
- Edited by Jonas Lindstad for The Gathering 2015
- Licensed under GPL
- */
-
-
-
- // Convert array of short unsigned integers to binary
- function _packBytes($array) {
- foreach ( $array as $byte ) {
- $chars .= pack('C',$byte);
- }
- return $chars;
- }
-
-
- // Convert binary to array of short integers
- function _unpackBytes($string) {
- return unpack('C*',$string);
- }
-
-
- // Add array of short unsigned integers
- function _addBytes($array1,$array2) {
- $result = array();
- $carry = 0;
- foreach ( array_reverse($array1,true) as $value1 ) {
- $value2 = array_pop($array2);
- if ( empty($result) ) { $value2++; }
- $newValue = $value1 + $value2 + $carry;
- if ( $newValue > 255 ) {
- $newValue = $newValue - 256;
- $carry = 1;
- } else {
- $carry = 0;
- }
- array_unshift($result,$newValue);
- }
- return $result;
- }
-
-
- /* Useful Functions */
- function _cdr2Bin ($cdrin,$len=4){
- if ( $len > 4 || $cdrin > 32 ) { // Are we ipv6?
- return str_pad(str_pad("", $cdrin, "1"), 128, "0");
- } else {
- return str_pad(str_pad("", $cdrin, "1"), 32, "0");
- }
- }
-
-
- function _bin2Cdr ($binin){
- return strlen(rtrim($binin,"0"));
- }
-
-
- function _cdr2Char ($cdrin,$len=4){
- $hex = _bin2Hex(_cdr2Bin($cdrin,$len));
- return _hex2Char($hex);
- }
-
-
- function _char2Cdr ($char){
- $bin = _hex2Bin(_char2Hex($char));
- return _bin2Cdr($bin);
- }
-
-
- function _hex2Char($hex){
- return pack('H*',$hex);
- }
-
-
- function _char2Hex($char){
- $hex = unpack('H*',$char);
- return array_pop($hex);
- }
-
-
- function _hex2Bin($hex){
- $bin='';
- for($i=0;$i<strlen($hex);$i++)
- $bin.=str_pad(decbin(hexdec($hex{$i})),4,'0',STR_PAD_LEFT);
- return $bin;
- }
-
-
- function _bin2Hex($bin){
- $hex='';
- for($i=strlen($bin)-4;$i>=0;$i-=4)
- $hex.=dechex(bindec(substr($bin,$i,4)));
- return strrev($hex);
- }
-
- /*
- Converts a v4/v6 subnet to the first usable IP
- */
- function net_to_gw($net){
- $maxSubNets = '2048'; // Stop memory leak from invalid input or large ranges
- $charHost = inet_pton(strtok($net, '/'));
- $charMask = _cdr2Char(strtok('/'),strlen($charHost));
- $charHostMask = substr(_cdr2Char(127),-strlen($charHost));
- $charNet = $charHost & $charMask; // Supernet network address
- $charHostMin = $charNet | ~$charHostMask;
- return inet_ntop($charHostMin);
- }
-
-
-
-
-
-
-
-
-/*
-
- $maxSubNets = '2048'; // Stop memory leak from invalid input or large ranges
- $superNet = '2a02:ed02:180a::13/64';
- if (ereg('/',$superNet)){ //if cidr type mask
- $charHost = inet_pton(strtok($superNet, '/'));
- $charMask = _cdr2Char(strtok('/'),strlen($charHost));
- }
-
- $charHostMask = substr(_cdr2Char(127),-strlen($charHost));
- $charNet = $charHost & $charMask; // Supernet network address
- $charHostMin = $charNet | ~$charHostMask;
- echo 'Første brukbare adresse i ' . $superNet . ': ';
- echo inet_ntop($charHostMin);
-*/
-
-?>