You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
92 lines
3.1 KiB
92 lines
3.1 KiB
#!/bin/dash
|
|
##
|
|
# \file
|
|
|
|
# To each interface a set of caller functions exist, that take an instance
|
|
# of an object and then in turn call the implementation for the class of
|
|
# this object. If there is none within the class it looks into its
|
|
# parent class and so forth.
|
|
#
|
|
# This is somewhat similar to late binding in real OOP languages, but
|
|
# by far not so elaborated. This is not a real object oriented language
|
|
# and will surely never ever provide all features these have.
|
|
#
|
|
# That said it has proven very usefull for me to orgnize code and prevent
|
|
# code duplication.
|
|
#
|
|
# \author Georg Hopp
|
|
#
|
|
# \copyright
|
|
# Copyright © 2014 Georg Hopp
|
|
#
|
|
# 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, see <http://www.gnu.org/licenses/>.
|
|
#
|
|
|
|
|
|
##
|
|
# This is a first test what static informations I can gather from a
|
|
# system. The minimal requirement are the IP addresses because
|
|
# on these I build up my classes.
|
|
# The system type is also important...we might need to be running
|
|
# on variuous UNIX flavours. (But for now we focus on various linux
|
|
# flavours and maybe FreeBSD.
|
|
#
|
|
|
|
. utils/file.sh
|
|
|
|
include_once gatherer/system_information.sh
|
|
include_once utils/network_tools.sh
|
|
|
|
gather_information
|
|
|
|
##
|
|
# report everysthing
|
|
#
|
|
|
|
${PRINTF} "%15s : %s\n" "OS" "${OS}"
|
|
${PRINTF} "%15s : %s\n" "KERNEL" "${KERNEL}"
|
|
${PRINTF} "%15s : %s\n" "VERSION" "${VERSION}"
|
|
${PRINTF} "%15s : %s\n" "PLATFORM" "${PLATFORM}"
|
|
${PRINTF} "%15s : %s\n" "DIST" "${DIST}"
|
|
${PRINTF} "%15s : %s\n" "HOSTNAME" "${HOSTNAME}"
|
|
${PRINTF} "%15s : %s\n" "# CPUS" "${NCPUS}"
|
|
${PRINTF} "%15s : %s\n" "BYTE_ORDER" "${BYTE_ORDER}"
|
|
${PRINTF} "%15s : %s\n" "OP_MODES" "${OP_MODES}"
|
|
${PRINTF} "%15s : %s\n" "CPU_VIRT" "${CPU_VIRT}"
|
|
${PRINTF} "%15s : %s\n" "LOAD_1" "${LOAD_1}"
|
|
${PRINTF} "%15s : %s\n" "LOAD_5" "${LOAD_5}"
|
|
${PRINTF} "%15s : %s\n" "LOAD_15" "${LOAD_15}"
|
|
${PRINTF} "%15s : %s\n" "# INTERFACES" "${NINTERFACES}"
|
|
|
|
NO=1
|
|
while [ ${NO} -le ${NINTERFACES:=0} ]
|
|
do
|
|
eval printf \"%15s : %s\\\n\" \"IF${NO}_NAME\" \"\${IF${NO}_NAME}\"
|
|
eval printf \"%15s : %s\\\n\" \"IF${NO}_MAC\" \"\${IF${NO}_MAC}\"
|
|
eval printf \"%15s : %s\\\n\" \"IF${NO}_STATE\" \"\${IF${NO}_STATE}\"
|
|
eval printf \"%15s : %s\\\n\" \"IF${NO}_IPV4\" \"\${IF${NO}_IPV4}\"
|
|
eval printf \"%15s : %s\\\n\" \"IF${NO}_IPV6\" \"\${IF${NO}_IPV6}\"
|
|
eval printf \"%15s : %s\\\n\" \"IF${NO}_MASK\" \"\${IF${NO}_MASK}\"
|
|
eval printf \"%15s : %s\\\n\" \"IF${NO}_NETWORK\" \"\${IF${NO}_NETWORK}\"
|
|
NO=$((NO+1))
|
|
done
|
|
|
|
${PRINTF} "%15s : %s\n" "CLASSES" "${CLASSES}"
|
|
|
|
echo
|
|
echo $(mask2cidr 255.255.128.0)
|
|
echo $(cidr2mask 17)
|
|
eval echo \$\(cidr2mask $(mask2cidr 255.255.128.0)\)
|
|
|
|
# vim: set ts=4 sw=4:
|