From e0f36349b08147ffe393b80b4178660ec5cc0059 Mon Sep 17 00:00:00 2001 From: ramon Date: Thu, 11 Feb 2010 12:38:39 +0000 Subject: Solución ticket:99: integrar^Ca librería Net de la rama engine-1.0 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: https://opengnsys.es/svn/trunk@752 a21b9725-9963-47de-94b9-378ad31fedc9 --- client/engine/Net.lib | 71 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 71 insertions(+) create mode 100755 client/engine/Net.lib (limited to 'client/engine/Net.lib') diff --git a/client/engine/Net.lib b/client/engine/Net.lib new file mode 100755 index 00000000..73b1b0d2 --- /dev/null +++ b/client/engine/Net.lib @@ -0,0 +1,71 @@ +#!/bin/bash +#/** +#@file Net.lib +#@brief Librería o clase Net +#@class Net +#@brief Funciones básicas de red. +#@version 1.0 +#@warning License: GNU GPLv3+ +#*/ + + +#/** +# ogGetHostname +#@brief Muestra el nombre del cliente. +#@return str_host - nombre de máquina +#@version 1.0 - Integración en OpenGnSys 1.0 +#@author Ramon Gomez, ETSII Universidad de Sevilla +#@date 2010-02-11 +#*/ ## +function ogGetHostname () +{ +local HOST +# Tomar nombre de la variable \c HOSTNAME +HOST="$HOSTNAME" +# Si no, tomar del DHCP, opción \c host-name +[ -z "$HOST" ] && HOST=$(awk -F\" '/option host-name/ {gsub(/;/,""); host=$2} + END {print host} + ' /var/lib/dhcp3/dhclient.leases) +# Si no, tomar del parámetro del kernel \c hostname +[ -z "$HOST" ] && HOST=$(awk 'BEGIN {RS=""; FS="="} + $1~/hostname/ {print $2}' /proc/cmdline) +[ "$HOSTNAME" != "$HOST" ] && export HOSTNAME="$HOST" +echo $HOST +} + + +#/** +# ogGetIpAddress +#@brief Muestra la dirección IP del sistema +#@return str_ip - Dirección IP +#@version 1.0 - Integración en OpenGnSys 1.0 +#@author Ramon Gomez, ETSII Universidad de Sevilla +#@date 2010-02-11 +#*/ ## +function ogGetIpAddress () +{ +local IP +# Obtener direcciones IP. +IP=$(ip -o addr show | awk '$2!~/lo/ && $3~/inet$/ {sub (/\/.*/, ""); printf ("%s ", $4)}') +# Mostrar sólo la primera. +echo ${IP%% *} +} + + +#/** +# ogGetMacAddress +#@brief Muestra la dirección Ethernet del cliente. +#@return str_ether - Dirección Ethernet +#@version 1.0 - Integración en OpenGnSys 1.0 +#@author Ramon Gomez, ETSII Universidad de Sevilla +#@date 2010-02-11 +#*/ ## +function ogGetMacAddress () +{ +local MAC +# Obtener direcciones Ethernet. +MAC=$(ip -o addr show | awk '$2!~/lo/ && /ether/ {printf ("%s ", toupper($11))}') +# Mostrar sólo la primera. +echo ${MAC%% *} +} + -- cgit v1.2.3-18-g5258