From: ms Date: Thu, 13 Dec 2007 19:43:12 +0000 (+0000) Subject: Imported the new pyfire module. X-Git-Tag: v3.0-alpha1~1135 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=b09ca36a82856de930ab1526929f52d19bb858d2;p=ipfire-3.x.git Imported the new pyfire module. Made some changes on the install-system. git-svn-id: http://svn.ipfire.org/svn/ipfire/trunk@1119 ea5c0bd1-69bd-2848-81d8-4f18e57aeed8 --- diff --git a/config/grub/installer.conf b/config/grub/installer.conf index d126ddcc8..b958df1b9 100644 --- a/config/grub/installer.conf +++ b/config/grub/installer.conf @@ -4,9 +4,6 @@ foreground = 6d6963 background = ffffff #hiddenmenu splashimage (cd)/boot/grub/ipfire.xpm.gz -title IPFire installation - kernel (cd)/boot/ipfirekernel panic=10 vga=791 - initrd (cd)/boot/initramfs.img title IPFire installtion (text mode) kernel (cd)/boot/ipfirekernel panic=10 initrd (cd)/boot/initramfs.img diff --git a/langs/de/install/lang_de.c b/langs/de/install/lang_de.c deleted file mode 100644 index b59b5d064..000000000 --- a/langs/de/install/lang_de.c +++ /dev/null @@ -1,571 +0,0 @@ -/* - * German (de) Data File - * - * This file is part of the IPCop Firewall. - * - * IPCop 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 2 of the License, or - * (at your option) any later version. - * - * IPCop 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 IPCop; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - * (c) The SmoothWall Team - * - * IPCop translation - * (c) 2003 Dirk Loss, Ludwig Steininger, Michael Knappe, Michael Linke, - * Richard Hartmann, Ufuk Altinkaynak, Gerhard Abrahams, Benjamin Kohberg, - * Samuel Wiktor - */ - -#include "libsmooth.h" - -char *de_tr[] = { - -/* TR_ISDN */ -"ISDN", -/* TR_ERROR_PROBING_ISDN */ -"Konnte ISDN Scan nicht durchführen.", -/* TR_PROBING_ISDN */ -"Suche und konfiguriere ISDN Geräte.", -/* TR_MISSING_GREEN_IP */ -"Fehlende IP auf der grünen Schnittstelle!", -/* TR_CHOOSE_FILESYSTEM */ -"Bitte wählen Sie ihr Dateisystem aus:", -/* TR_NOT_ENOUGH_INTERFACES */ -"Nicht genügend Netzwerkkarten für diese Auswahl gefunden.\n\nBenötigt: %d - Gefunden: %d\n", -/* TR_INTERFACE_CHANGE */ -"Bitte wählen Sie das Interface aus das geändert werden soll.\n\n", -/* TR_NETCARD_COLOR */ -"Zugewiesene Karten", -/* TR_REMOVE */ -"Entfernen", -/* TR_MISSING_DNS */ -"Kein DNS eingetragen\n", -/* TR_MISSING_DEFAULT */ -"Kein default Gateway eingetragen.\n", -/* TR_JOURNAL_EXT3 */ -"Erstelle Journal für Ext3...", -/* TR_CHOOSE_NETCARD */ -"Bitte wählen Sie eine der untenstehenden Netzwerkkarten für die folgene Schnittstelle aus - %s.", -/* TR_NETCARDMENU2 */ -"Erweitertes Netzwerkmenu", -/* TR_ERROR_INTERFACES */ -"Es wurden leider keine freien Netzwerkkarten für die Schnittstelle in ihrem System gefunden.", -/* TR_REMOVE_CARD */ -"Soll die Zuordnung der folgende Netzwerkkarte entfernt werden? - %s", -/* TR_JOURNAL_ERROR */ -"Konnte das Journal nicht erstelle, verwende ext2 Fallback.", -/* TR_FILESYSTEM */ -"Dateisystemauswahl", -/* TR_ADDRESS_SETTINGS */ -"Adress-Einstellungen", -/* TR_ADMIN_PASSWORD */ -"'admin'-Passwort", -/* TR_AGAIN_PROMPT */ -"Wiederholung:", -/* TR_ALL_CARDS_SUCCESSFULLY_ALLOCATED */ -"Alle Karten wurden erfolgreich zugeordnet.", -/* TR_AUTODETECT */ -"* AUTOMATISCHE ERKENNUNG *", -/* TR_BUILDING_INITRD */ -"Erzeuge Ramdisk...", -/* TR_CANCEL */ -"Abbrechen", -/* TR_CARD_ASSIGNMENT */ -"Karten-Zuordnung", -/* TR_CHECKING */ -"Überprüfe URL...", -/* TR_CHECKING_FOR */ -"Suche nach: %s", -/* TR_CHOOSE_THE_ISDN_CARD_INSTALLED */ -"Wähle die ISDN-Karte in diesem Computer aus:", -/* TR_CHOOSE_THE_ISDN_PROTOCOL */ -"Wählen Sie das benötigte ISDN-Protokoll.", -/* TR_CONFIGURE_DHCP */ -"Konfigurieren Sie den DHCP-Server durch Eingabe der Einstellungen:", -/* TR_CONFIGURE_NETWORKING */ -"Netzwerk konfigurieren", -/* TR_CONFIGURE_NETWORKING_LONG */ -"Sie sollten jetzt das Netzwerk konfigurieren. Laden Sie zunächst den richtigen Treiber für die GRÜNE Schnittstelle, indem Sie die Netzwerkkarte entweder automatisch erkennen lassen oder den richtigen Treiber aus einer Liste auswählen. Wenn Sie mehr als eine Netzwerkkarte installiert haben, können Sie die anderen später konfigurieren. Sollten Sie mehrere Karten vom gleichen Typ wie die an der GRÜNEN Schnittstelle haben und jede Karte spezielle Modulparameter benötigen, sollten Sie jetzt die Parameter für alle diese Karten eingeben, so dass alle Karten aktiv werden, wenn Sie die GRÜNE Schnittstelle konfigurieren.", -/* TR_CONFIGURE_NETWORK_DRIVERS */ -"Konfigurieren Sie die Netzwerktreiber und geben Sie an, welcher Schnittstelle jede Karte zugewiesen ist. Die aktuelle Konfiguration ist wie folgt:\n\n", -/* TR_CONFIGURE_THE_CDROM */ -"Konfigurieren Sie das CD-ROM-Laufwerk, indem Sie die richtigen Werte für IO-Adresse und/oder IRQ eingeben.", -/* TR_CONGRATULATIONS */ -"Herzlichen Glückwunsch!", -/* TR_CONGRATULATIONS_LONG */ -"%s wurde erfolgreich installiert. Entfernen Sie bitte alle eventuellen CDs aus dem Computer. Nun wird das Setup-Programm gestartet, in dem Sie ISDN, Netzwerkkarten und die Systempasswörter konfigurieren können. Wenn dies fertiggestellt ist, rufen Sie in Ihrem Webbrowser die Box mit https://%s:444 (oder welchen Namen Sie Ihrem %s auch immer gegeben haben) auf und konfigurieren die Wählverbindung und (falls nötig) die Fernwartung.", -/* TR_CONTINUE_NO_SWAP */ -"Ihre Festplatte ist sehr klein, aber sie können mit einer minimalen Auslagerungspartition weitermachen. (Mit Vorsicht benutzen).", -/* TR_CURRENT_CONFIG */ -"Aktuelle Einstellung: %s%s", -/* TR_DEFAULT_GATEWAY */ -"Standard-Gateway:", -/* TR_DEFAULT_GATEWAY_CR */ -"Standard-Gateway\n", -/* TR_DEFAULT_LEASE */ -"Voreingestellte Haltezeit (min):", -/* TR_DEFAULT_LEASE_CR */ -"Voreinstellung der Haltezeit\n", -/* TR_DETECTED */ -"Gefunden wurde: %s", -/* TR_DHCP_HOSTNAME */ -"DHCP-Hostname:", -/* TR_DHCP_HOSTNAME_CR */ -"DHCP-Hostname\n", -/* TR_DHCP_SERVER_CONFIGURATION */ -"DHCP-Konfiguration", -/* TR_DISABLED */ -"Deaktiviert", -/* TR_DISABLE_ISDN */ -"ISDN deaktivieren", -/* TR_DISK_TOO_SMALL */ -"Ihre Festplatte ist zu klein.", -/* TR_DNS_AND_GATEWAY_SETTINGS */ -"DNS- und Gateway-Einstellungen", -/* TR_DNS_AND_GATEWAY_SETTINGS_LONG */ -"Geben Sie die DNS- und Gateway-Informationen ein. Diese Einstellungen werden nur bei einer statischen IP an der ROTEN Schnittstelle benutzt (und DHCP, falls DNS eingetragen wurde).", -/* TR_DNS_GATEWAY_WITH_GREEN */ -"Ihre Konfiguration benutzt keine Ethernet-Karte für die ROTE Schnittstelle. DNS- und Gateway-Informationen für Einwahl- verbindungen werden automatisch beim Einwählen konfiguriert.", -/* TR_DOMAINNAME */ -"Domainname", -/* TR_DOMAINNAME_CANNOT_BE_EMPTY */ -"Domain Name darf nicht leer sein.", -/* TR_DOMAINNAME_CANNOT_CONTAIN_SPACES */ -"Domainname darf keine Leerzeichen enthalten.", -/* TR_DOMAINNAME_NOT_VALID_CHARS */ -"Domain Name darf nur Buchstaben, Ziffern, Bindestriche und Punkte enthalten.", -/* TR_DOMAIN_NAME_SUFFIX */ -"Domainnamen-Suffix:", -/* TR_DOMAIN_NAME_SUFFIX_CR */ -"Domainnamen-Suffix\n", -/* TR_DONE */ -"Fertig", -/* TR_DO_YOU_WISH_TO_CHANGE_THESE_SETTINGS */ -"\nMöchten Sie die Einstellungen ändern?", -/* TR_DRIVERS_AND_CARD_ASSIGNMENTS */ -"Treiber- und Karten-Zuordnungen", -/* TR_ENABLED */ -"aktiviert", -/* TR_ENABLE_ISDN */ -"ISDN aktivieren", -/* TR_END_ADDRESS */ -"Endadresse:", -/* TR_END_ADDRESS_CR */ -"Endadresse\n", -/* TR_ENTER_ADDITIONAL_MODULE_PARAMS */ -"Einige ISDN-Karten (besonders ISA-Karten) benötigen zusätzliche Modulparameter, um die IRQ- und IO-Adress-Informationen einzustellen. Wenn Sie eine solche ISDN-Karte haben, geben Sie diese Parameter hier ein (z. B. \"io=0x280 irq=9\"). Sie werden dann bei der Erkennung der Karte berücksichtigt.", -/* TR_ENTER_ADMIN_PASSWORD */ -"Geben Sie das Passwort für den %s-Administrator 'admin' ein. Das ist der Benutzer, mit dem Sie sich an den %s-Webadministrationsseiten anmelden.", -/* TR_ENTER_DOMAINNAME */ -"Bitte geben Sie den Domainnamen ein", -/* TR_ENTER_HOSTNAME */ -"Geben Sie den Hostnamen des Rechners an:", -/* TR_ENTER_IP_ADDRESS_INFO */ -"Geben Sie die IP-Adressinformationen ein", -/* TR_ENTER_NETWORK_DRIVER */ -"Kann die Netzwerkkarte nicht automatisch erkennen. Geben Sie den Modulnamen und eventuelle Parameter für die Netzwerkkarte an.", -/* TR_ENTER_ROOT_PASSWORD */ -"Geben Sie das Passwort für den Benutzer 'root' ein. Melden Sie sich als dieser Benutzer an, um Zugriff auf die Befehlszeile zu erhalten.", -/* TR_ENTER_SETUP_PASSWORD */ -"Geben Sie das Passwort für den Benutzer 'setup' ein. Melden Sie sich als dieser Benutzer an, um das Setup-Programm zu starten.", -/* TR_ENTER_THE_IP_ADDRESS_INFORMATION */ -"Geben Sie die IP-Adressinformationen für die folgende Schnittstelle ein - %s.", -/* TR_ENTER_THE_LOCAL_MSN */ -"Geben Sie Ihre lokale Telefonnummer ein (MSN/EAZ):", -/* TR_ENTER_URL */ -"Geben Sie die URL für ipcop-.tgz und die images/scsidrv-.img-Dateien ein. WARNUNG: DNS ist nicht verfügbar! Sie sollten jetzt nur etwas im Format 'http://X.X.X.X/' eingeben. ", -/* TR_ERROR */ -"Fehler", -/* TR_ERROR_PROBING_CDROM */ -"Kein CDROM-Laufwerk gefunden.", -/* TR_ERROR_WRITING_CONFIG */ -"Fehler beim Schreiben der Konfigurationsinformationen.", -/* TR_EURO_EDSS1 */ -"DSS1 (Euro-ISDN) (meist richtig)", -/* TR_EXTRACTING_MODULES */ -"Entpacke die Module...", -/* TR_FAILED_TO_FIND */ -"Konnte die URL-Datei nicht finden.", -/* TR_FOUND_NIC */ -"%s hat den folgenden NIC in Ihrer Maschine erkannt: %s", -/* TR_GERMAN_1TR6 */ -"1TR6", -/* TR_HELPLINE */ -" / wechselt zwischen Elementen | wählt aus", -/* TR_HOSTNAME */ -"Hostname", -/* TR_HOSTNAME_CANNOT_BE_EMPTY */ -"Der Hostname darf nicht leer sein.", -/* TR_HOSTNAME_CANNOT_CONTAIN_SPACES */ -"Der Hostname darf keine Leerzeichen enthalten.", -/* TR_HOSTNAME_NOT_VALID_CHARS */ -"Hostname darf nur Buchstaben, Ziffern und Bindestriche enthalten.", -/* TR_INITIALISING_ISDN */ -"Initialisiere ISDN...", -/* TR_INSERT_CDROM */ -"Legen Sie bitte die %s CD in das CD-ROM-Laufwerk ein.", -/* TR_INSERT_FLOPPY */ -"Legen Sie bitte die %s-Treiberdiskette in das Diskettenlaufwerk ein.", -/* TR_INSTALLATION_CANCELED */ -"Installation abgebrochen.", -/* TR_INSTALLING_FILES */ -"Installiere Dateien...", -/* TR_INSTALLING_GRUB */ -"Installiere GRUB...", -/* TR_INSTALLING_LANG_CACHE */ -"Installiere Sprachunterstützung...", -/* TR_INTERFACE */ -"Schnittstelle - %s", -/* TR_INTERFACE_FAILED_TO_COME_UP */ -"Schnittstelle konnte nicht aktiviert werden.", -/* TR_INVALID_FIELDS */ -"Die folgenden Felder sind ungültig:\n\n", -/* TR_INVALID_IO */ -"Die angegebenen Einstellungen für den IO-Port sind ungültig. ", -/* TR_INVALID_IRQ */ -"Die eingegebenen IRQ-Einstellungen sind ungültig.", -/* TR_IP_ADDRESS_CR */ -"IP-Adresse\n", -/* TR_IP_ADDRESS_PROMPT */ -"IP-Adresse:", -/* TR_ISDN_CARD */ -"ISDN-Karte", -/* TR_ISDN_CARD_NOT_DETECTED */ -"Keine ISDN-Karte gefunden. Möglicherweise müssen Sie zusätzliche Modulparameter angeben, wenn es sich um eine ISA-Karte handelt oder die Karte spezielle Anforderungen hat.", -/* TR_ISDN_CARD_SELECTION */ -"Auswahl der ISDN-Karte", -/* TR_ISDN_CONFIGURATION */ -"ISDN-Konfiguration", -/* TR_ISDN_CONFIGURATION_MENU */ -"ISDN-Konfigurationsmenü", -/* TR_ISDN_NOT_SETUP */ -"ISDN nicht eingestellt. Einige Parameter wurden nicht ausgewählt.", -/* TR_ISDN_NOT_YET_CONFIGURED */ -"ISDN wurde noch nicht konfiguriert. Wählen Sie aus, was Sie konfigurieren möchten.", -/* TR_ISDN_PROTOCOL_SELECTION */ -"Auswahl des ISDN-Protokolls", -/* TR_ISDN_STATUS */ -"ISDN ist momentan %s.\n\n Protokoll: %s\n Karte: %s\n Lokale Telefonnummer: %s\n\nWählen Sie aus, was Sie konfigurieren möchten, oder verwerfen Sie die aktuellen Einstellungen.", -/* TR_KEYBOARD_MAPPING */ -"Tastatur-Layout", -/* TR_KEYBOARD_MAPPING_LONG */ -"Wählen Sie aus dieser Liste den Tastatur-Typ aus, den Sie benutzen.", -/* TR_LEASED_LINE */ -"Standleitung (leased line)", -/* TR_LOADING_MODULE */ -"Lade Modul...", -/* TR_LOADING_PCMCIA */ -"PCMCIA-Module werden geladen...", -/* TR_LOOKING_FOR_NIC */ -"Suche nach: %s", -/* TR_MAKING_BOOT_FILESYSTEM */ -"Erstelle das Boot-Dateisystem...", -/* TR_MAKING_LOG_FILESYSTEM */ -"Erstelle das Log-Dateisystem...", -/* TR_MAKING_ROOT_FILESYSTEM */ -"Erstelle das Root-Dateisystem...", -/* TR_MAKING_SWAPSPACE */ -"Erstelle Swap-Partition...", -/* TR_MANUAL */ -"* MANUELL *", -/* TR_MAX_LEASE */ -"Maximale Haltezeit (min):", -/* TR_MAX_LEASE_CR */ -"Maximale Haltezeit\n", -/* TR_MISSING_BLUE_IP */ -"Fehlende IP-Information für das BLAUE Interface.", -/* TR_MISSING_ORANGE_IP */ -"IP-Informationen für die ORANGE Schnittstelle fehlen.", -/* TR_MISSING_RED_IP */ -"IP-Informationen für die ROTE Schnittstelle fehlen.", -/* TR_MODULE_NAME_CANNOT_BE_BLANK */ -"Der Modulname darf nicht leer sein.", -/* TR_MODULE_PARAMETERS */ -"Geben Sie den Modulnamen und die Parameter für den benötigten Treiber an.", -/* TR_MOUNTING_BOOT_FILESYSTEM */ -"Mounte das Boot-Dateisystem...", -/* TR_MOUNTING_LOG_FILESYSTEM */ -"Mounte das Log-Dateisystem...", -/* TR_MOUNTING_ROOT_FILESYSTEM */ -"Mounte das Root-Dateisystem...", -/* TR_MOUNTING_SWAP_PARTITION */ -"Mounte die Swap-Partition...", -/* TR_MSN_CONFIGURATION */ -"Lokale Telefonnummer (MSN/EAZ)", -/* TR_NETMASK_PROMPT */ -"Subnetzmaske:", -/* TR_NETWORKING */ -"Netzwerk", -/* TR_NETWORK_ADDRESS_CR */ -"Netzwerkadresse\n", -/* TR_NETWORK_ADDRESS_PROMPT */ -"Netzwerkadresse:", -/* TR_NETWORK_CONFIGURATION_MENU */ -"Netzwerkkonfiguration", -/* TR_NETWORK_CONFIGURATION_TYPE */ -"Typ der Netzwerkkonfiguration", -/* TR_NETWORK_CONFIGURATION_TYPE_LONG */ -"Wählen Sie die Netzwerkkonfiguration für %s aus. Die folgenden Konfigurationstypen listen diejenigen Schnittstellen auf, die am Ethernet angeschlossen sind. Wenn Sie diese Einstellung ändern, muss das Netzwerk neu gestartet werden und Sie müssen die Netzwerktreiber neu zuweisen.", -/* TR_NETWORK_MASK_CR */ -"Subnetzmaske\n", -/* TR_NETWORK_SETUP_FAILED */ -"Netzwerk-Setup fehlgeschlagen.", -/* TR_NOT_ENOUGH_CARDS_WERE_ALLOCATED */ -"Nicht genügend Karten wurden zugeordnet.", -/* TR_NO_BLUE_INTERFACE */ -"Kein BLAUES Interface zugeordnet.", -/* TR_NO_CDROM */ -"Kein CD-ROM gefunden.", -/* TR_NO_GREEN_INTERFACE */ -"Keine GRÜNE Schnittstelle zugewiesen.", -/* TR_NO_HARDDISK */ -"Keine Festplatte gefunden.", -/* TR_NO_IPCOP_TARBALL_FOUND */ -"Auf dem Webserver wurde kein ipcop-Tarball gefunden.", -/* TR_NO_ORANGE_INTERFACE */ -"Keine ORANGE Schnittstelle zugewiesen.", -/* TR_NO_RED_INTERFACE */ -"Keine ROTE Schnittstelle zugewiesen.", -/* TR_NO_SCSI_IMAGE_FOUND */ -"Auf dem Webserver wurde kein SCSI-Image gefunden.", -/* TR_NO_UNALLOCATED_CARDS */ -"Es sind keine nicht zugeteilten Karten übrig; es werden aber noch mehr benötigt. Sie könnten einen Treiber aus der Liste auswählen oder eine automatische Erkennung starten.", -/* TR_OK */ -"Ok", -/* TR_PARTITIONING_DISK */ -"Partitioniere die Festplatte...", -/* TR_PASSWORDS_DO_NOT_MATCH */ -"Die Passwörter stimmen nicht überein.", -/* TR_PASSWORD_CANNOT_BE_BLANK */ -"Die Passwörter dürfen nicht leer sein.", -/* TR_PASSWORD_CANNOT_CONTAIN_SPACES */ -"Das Passwort darf keine Leerzeichen enthalten.", -/* TR_PASSWORD_PROMPT */ -"Passwort:", -/* TR_PHONENUMBER_CANNOT_BE_EMPTY */ -"Die Telefonnummer darf nicht leer sein.", -/* TR_PREPARE_HARDDISK */ -"Das Installationsprogramm wird jetzt die Festplatte %s vorbereiten. Zunächst wird die Festplatte partitioniert. Danach wird auf den Partitionen ein Dateisystem erstellt.", -/* TR_PRESS_OK_TO_REBOOT */ -"Drücken Sie Ok, um neu zu starten.", -/* TR_PRIMARY_DNS */ -"Primärer DNS:", -/* TR_PRIMARY_DNS_CR */ -"Primärer DNS\n", -/* TR_PROBE */ -"Automatische Erkennung", -/* TR_PROBE_FAILED */ -"Automatische Erkennung fehlgeschlagen.", -/* TR_PROBING_HARDWARE */ -"Hardwareerkennung läuft...", -/* TR_PROBING_FOR_NICS */ -"Netzwerkkartenerkennung läuft...", -/* TR_PROBLEM_SETTING_ADMIN_PASSWORD */ -"Problem beim Setzen des %s Administrator-Passworts.", -/* TR_PROBLEM_SETTING_ROOT_PASSWORD */ -"Problem beim Setzen des 'root'-Passworts.", -/* TR_PROBLEM_SETTING_SETUP_PASSWORD */ -"Problem beim Setzen des 'setup'-Passworts.", -/* TR_PROTOCOL_COUNTRY */ -"Protokoll/Land", -/* TR_PULLING_NETWORK_UP */ -"Starte Netzwerk...", -/* TR_PUSHING_NETWORK_DOWN */ -"Fahre Netzwerk herunter...", -/* TR_PUSHING_NON_LOCAL_NETWORK_DOWN */ -"Fahre nicht-lokales Netzwerk herunter...", -/* TR_QUIT */ -"Beenden", -/* TR_RED_IN_USE */ -"ISDN (oder eine andere externe Verbindung) wird momentan benutzt. Sie können ISDN nicht konfigurieren, während die ROTE Schnittstelle aktiv ist.", -/* TR_RESTART_REQUIRED */ -"\n\nWenn die Konfiguration komplett ist, muss das Netzwerk neu gestartet werden.", -/* TR_RESTORE */ -"Wiederherstellen", -/* TR_RESTORE_CONFIGURATION */ -"Falls Sie eine Diskette mit %s-Systemeinstellungen haben, legen Sie die Diskette in das Floppylaufwerk und \ndrücken auf ", -/* TR_ROOT_PASSWORD */ -"'root'-Passwort", -/* TR_SECONDARY_DNS */ -"Sekundärer DNS:", -/* TR_SECONDARY_DNS_CR */ -"Sekundärer DNS\n", -/* TR_SECONDARY_WITHOUT_PRIMARY_DNS */ -"Sekundären DNS angegeben ohne primären DNS", -/* TR_SECTION_MENU */ -"Auswahlmenu", -/* TR_SELECT */ -"Auswählen", -/* TR_SELECT_CDROM_TYPE */ -"Wählen Sie den Typ des CD-ROM-Laufwerks aus", -/* TR_SELECT_CDROM_TYPE_LONG */ -"Es wurde kein CD-ROM-Laufwerk in diesem Rechner gefunden. Bitte wählen Sie aus, welchen der folgenden Treiber Sie benutzen möchten, damit %s das CD-ROM-Laufwerk ansprechen kann.", -/* TR_SELECT_INSTALLATION_MEDIA */ -"Wählen Sie das Installationsmedium", -/* TR_SELECT_INSTALLATION_MEDIA_LONG */ -"%s kann von verschiedenen Programmquellen installiert werden. Am einfachsten ist, Sie benutzen das eingebaute CD-ROM-Laufwerk. Falls der Computer kein CD-ROM-Laufwerk besitzt, können Sie von einem anderen Rechner im LAN installieren, der die Installationsdateien per HTTP oder FTP zur Verfügung stellt.", -/* TR_SELECT_NETWORK_DRIVER */ -"Wählen Sie den Netzwerktreiber aus", -/* TR_SELECT_NETWORK_DRIVER_LONG */ -"Wählen Sie den Treiber für die in diesem Rechner eingebaute Netzwerkkarte aus. Wenn Sie MANUELL auswählen, können Sie den Modulnamen des Treibers und die Parameter selbst angeben (z. B. für Treiber mit speziellen Anforderungen, wie bei ISA-Karten).", -/* TR_SELECT_THE_INTERFACE_YOU_WISH_TO_RECONFIGURE */ -"Wählen Sie die Schnittstelle aus, die Sie neu konfigurieren möchten.", -/* TR_SELECT_THE_ITEM */ -"Wählen Sie den Punkt aus, den Sie konfigurieren möchten:", -/* TR_SETTING_ADMIN_PASSWORD */ -"Setze %s-Administrator-Passwort....", -/* TR_SETTING_ROOT_PASSWORD */ -"Setze 'root'-Passwort....", -/* TR_SETTING_SETUP_PASSWORD */ -"Setze 'setup'-Passwort...", -/* TR_SETUP_FINISHED */ -"Das Setup ist vollständig beendet. Drücken Sie Ok für den Neustart.", -/* TR_SETUP_NOT_COMPLETE */ -"Das erste Setup wurde nicht vollständig durchgeführt. Sie müssen Setup vollständig beenden; dies können Sie durch Ausführen von Setup in der Shell nachholen.", -/* TR_SETUP_PASSWORD */ -"'setup'-Passwort", -/* TR_SET_ADDITIONAL_MODULE_PARAMETERS */ -"Zusätzliche Modulparameter angeben", -/* TR_SINGLE_GREEN */ -"In ihrer Konfiguration ist eine GRÜNE Schnittstelle eingestellt.", -/* TR_SKIP */ -"Überspringen", -/* TR_START_ADDRESS */ -"Anfangsadresse:", -/* TR_START_ADDRESS_CR */ -"Anfangsadressen\n", -/* TR_STATIC */ -"Statisch", -/* TR_SUGGEST_IO */ -"(schlage vor %x)", -/* TR_SUGGEST_IRQ */ -"(schlage vor %d)", -/* TR_THIS_DRIVER_MODULE_IS_ALREADY_LOADED */ -"Dieses Treibermodul ist bereits geladen.", -/* TR_TIMEZONE */ -"Zeitzone", -/* TR_TIMEZONE_LONG */ -"Wählen Sie die Zeitzone aus, in der Sie sich befinden.", -/* TR_UNABLE_TO_EJECT_CDROM */ -"Kann die CD-ROM nicht auswerfen.", -/* TR_UNABLE_TO_EXTRACT_MODULES */ -"Module können nicht extrahiert werden.", -/* TR_UNABLE_TO_FIND_ANY_ADDITIONAL_DRIVERS */ -"Kann keine weiteren Treiber finden.", -/* TR_UNABLE_TO_FIND_AN_ISDN_CARD */ -"Kann keine ISDN-Karte in diesem Computer finden. Möglicherweise müssen Sie zusätzliche Modulparameter angeben, wenn es sich um eine ISA-Karte handelt oder die Karte spezielle Anforderungen hat.", -/* TR_UNABLE_TO_INITIALISE_ISDN */ -"Kann ISDN nicht initialisieren.", -/* TR_UNABLE_TO_INSTALL_FILES */ -"Kann die Dateien nicht installieren.", -/* TR_UNABLE_TO_INSTALL_LANG_CACHE */ -"Kann Sprachunterstützung nicht installieren.", -/* TR_UNABLE_TO_INSTALL_GRUB */ -"Kann GRUB nicht installieren.", -/* TR_UNABLE_TO_LOAD_DRIVER_MODULE */ -"Kann Treibermodul nicht laden.", -/* TR_UNABLE_TO_MAKE_BOOT_FILESYSTEM */ -"Kann das Boot-Dateisystem nicht erstellen.", -/* TR_UNABLE_TO_MAKE_LOG_FILESYSTEM */ -"Kann das Log-Dateisystem nicht erstellen.", -/* TR_UNABLE_TO_MAKE_ROOT_FILESYSTEM */ -"Kann das Root-Dateisystem nicht erstellen.", -/* TR_UNABLE_TO_MAKE_SWAPSPACE */ -"Kann Swap-Partition nicht erstellen.", -/* TR_UNABLE_TO_MAKE_SYMLINK_DEV_HARDDISK */ -"Kann symbolischen Link /dev/harddisk nicht anlegen.", -/* TR_UNABLE_TO_MAKE_SYMLINK_DEV_HARDDISK1 */ -"Kann symbolischen Link /dev/harddisk1 nicht anlegen.", -/* TR_UNABLE_TO_MAKE_SYMLINK_DEV_HARDDISK2 */ -"Kann symbolischen Link /dev/harddisk2 nicht anlegen.", -/* TR_UNABLE_TO_MAKE_SYMLINK_DEV_HARDDISK3 */ -"Kann symbolischen Link /dev/harddisk3 nicht anlegen.", -/* TR_UNABLE_TO_MAKE_SYMLINK_DEV_HARDDISK4 */ -"Kann symbolischen Link /dev/harddisk4 nicht anlegen.", -/* TR_UNABLE_TO_MAKE_SYMLINK_DEV_ROOT */ -"Symlink /dev/root kann nicht erzeugt werden.", -/* TR_UNABLE_TO_MOUNT_BOOT_FILESYSTEM */ -"Kann das Root-Dateisystem nicht mounten.", -/* TR_UNABLE_TO_MOUNT_LOG_FILESYSTEM */ -"Kann das Log-Dateisystem nicht mounten.", -/* TR_UNABLE_TO_MOUNT_PROC_FILESYSTEM */ -"Das proc-Dateisystem kann nicht gemountet werden.", -/* TR_UNABLE_TO_MOUNT_ROOT_FILESYSTEM */ -"Kann das Root-Dateisystem nicht mounten.", -/* TR_UNABLE_TO_MOUNT_SWAP_PARTITION */ -"Kann die Swap-Partition nicht unmounten.", -/* TR_UNABLE_TO_OPEN_HOSTS_FILE */ -"Kann primäre hosts-Datei nicht öffnen.", -/* TR_UNABLE_TO_OPEN_SETTINGS_FILE */ -"Kann Datei mit Einstellungen nicht öffnen", -/* TR_UNABLE_TO_PARTITION */ -"Kann die Festplatte nicht partitionieren.", -/* TR_UNABLE_TO_REMOVE_TEMP_FILES */ -"Kann temporär heruntergeladene Dateien nicht löschen.", -/* TR_UNABLE_TO_SET_HOSTNAME */ -"Kann Hostnamen nicht setzen.", -/* TR_UNABLE_TO_UNMOUNT_CDROM */ -"Kann die CD-ROM bzw. Floppy nicht unmounten.", -/* TR_UNABLE_TO_UNMOUNT_HARDDISK */ -"Kann die Festplatte nicht unmounten.", -/* TR_UNABLE_TO_WRITE_ETC_FSTAB */ -"Kann /etc/fstab nicht schreiben", -/* TR_UNABLE_TO_WRITE_ETC_HOSTNAME */ -"Kann /etc/hostname nicht schreiben", -/* TR_UNABLE_TO_WRITE_ETC_HOSTS */ -"Kann /etc/hosts nicht schreiben.", -/* TR_UNABLE_TO_WRITE_ETC_HOSTS_ALLOW */ -"Kann /etc/hosts.allow nicht schreiben.", -/* TR_UNABLE_TO_WRITE_ETC_HOSTS_DENY */ -"Kann /etc/hosts.deny nicht schreiben.", -/* TR_UNABLE_TO_WRITE_VAR_SMOOTHWALL_ETHERNET_SETTINGS */ -"Kann %s/ethernet/settings nicht schreiben.", -/* TR_UNABLE_TO_WRITE_VAR_SMOOTHWALL_MAIN_HOSTNAMECONF */ -"Kann %s/main/hostname.conf nicht schreiben", -/* TR_UNABLE_TO_WRITE_VAR_SMOOTHWALL_MAIN_SETTINGS */ -"Kann %s/main/settings nicht schreiben.", -/* TR_UNCLAIMED_DRIVER */ -"Es gibt eine nicht zugeordnete Ethernet-Karte des Typs:\n%s\n\nSie können sie zuweisen an:", -/* TR_UNKNOWN */ -"UNBEKANNT", -/* TR_UNSET */ -"NICHT GESETZT", -/* TR_USB_KEY_VFAT_ERR */ -"Dieser USB-Stick ist ungültig (keine VFAT Partiton gefunden).", -/* TR_US_NI1 */ -"US NI1", -/* TR_WARNING */ -"WARNUNG", -/* TR_WARNING_LONG */ -"Wenn Sie diese IP-Adresse ändern, während Sie über den Fernwartungszugang zugreifen, wird die Verbindung zum %s-Rechner abbrechen. Sie müssen dann eine Verbindung zur neuen IP-Adresse aufbauen. Dies ist ein riskanter Vorgang, der nur versucht werden sollte, wenn Sie physikalischen Zugriff auf den Rechner haben, für den Fall, dass etwas schief geht.", -/* TR_WELCOME */ -"Willkommen zum %s Installationsprogramm. Wenn Sie auf irgendeiner der folgenden Seiten 'Abbrechen' auswählen, wird der Computer neu gestartet.", -/* TR_YOUR_CONFIGURATION_IS_SINGLE_GREEN_ALREADY_HAS_DRIVER */ -"Ihre Konfiguration ist für eine einzelne GRÜNE Schnittstelle eingestellt, der bereits ein Treiber zugewiesen ist.", -/* TR_YES */ -"Ja", -/* TR_NO */ -"Nein", -/* TR_AS */ -"als", -/* TR_IGNORE */ -"Ignorieren", -/* TR_PPP_DIALUP */ -"PPP Einwahl (PPPoE, Modem, ATM ...)", -/* TR_DHCP */ -"DHCP", -/* TR_DHCP_STARTSERVER */ -"Starte den DHCP-Server ...", -/* TR_DHCP_STOPSERVER */ -"Stoppe den DHCP-Server ...", -}; - diff --git a/langs/en/install/lang_en.c b/langs/en/install/lang_en.c deleted file mode 100644 index 939d627ad..000000000 --- a/langs/en/install/lang_en.c +++ /dev/null @@ -1,568 +0,0 @@ -/* - * English (en) Data File - * - * This file is part of the IPCop Firewall. - * - * IPCop 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 2 of the License, or - * (at your option) any later version. - * - * IPCop 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 IPCop; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - * (c) The SmoothWall Team - * - */ - -#include "libsmooth.h" - -char *en_tr[] = { - -/* TR_ISDN */ -"ISDN", -/* TR_ERROR_PROBING_ISDN */ -"Unable to scan for ISDN devices.", -/* TR_PROBING_ISDN */ -"Scanning and configuring ISDN devices.", -/* TR_MISSING_GREEN_IP */ -"Missing Green IP!", -/* TR_CHOOSE_FILESYSTEM */ -"Please choose your filesystem:", -/* TR_NOT_ENOUGH_INTERFACES */ -"Not enough netcards for your choice.\n\nNeeded: %d - Available: %d\n", -/* TR_INTERFACE_CHANGE */ -"Please choose the interface you wish to change.\n\n", -/* TR_NETCARD_COLOR */ -"Assigned Cards", -/* TR_REMOVE */ -"Remove", -/* TR_MISSING_DNS */ -"Misssing DNS.\n", -/* TR_MISSING_DEFAULT */ -"Missing Default Gateway.\n", -/* TR_JOURNAL_EXT3 */ -"Creating journal for Ext3...", -/* TR_CHOOSE_NETCARD */ -"Please choose a networkcard for the following interface - %s.", -/* TR_NETCARDMENU2 */ -"Extended Networkmenu", -/* TR_ERROR_INTERFACES */ -"There are no free interfaces on your system.", -/* TR_REMOVE_CARD */ -"Should the allocation for the networkcard be deleted? - %s", -/* TR_JOURNAL_ERROR */ -"Could not create the journal, using fallback to ext2.", -/* TR_FILESYSTEM */ -"Choose Filesystem", -/* TR_ADDRESS_SETTINGS */ -"Address settings", -/* TR_ADMIN_PASSWORD */ -"'admin' password", -/* TR_AGAIN_PROMPT */ -"Again:", -/* TR_ALL_CARDS_SUCCESSFULLY_ALLOCATED */ -"All cards successfully allocated.", -/* TR_AUTODETECT */ -"* AUTODETECT *", -/* TR_BUILDING_INITRD */ -"Building ramdisk...", -/* TR_CANCEL */ -"Cancel", -/* TR_CARD_ASSIGNMENT */ -"Card assignment", -/* TR_CHECKING */ -"Checking URL...", -/* TR_CHECKING_FOR */ -"Checking for: %s", -/* TR_CHOOSE_THE_ISDN_CARD_INSTALLED */ -"Choose the ISDN card installed in this computer.", -/* TR_CHOOSE_THE_ISDN_PROTOCOL */ -"Choose the ISDN protocol you require.", -/* TR_CONFIGURE_DHCP */ -"Configure the DHCP server by entering the settings information.", -/* TR_CONFIGURE_NETWORKING */ -"Configure networking", -/* TR_CONFIGURE_NETWORKING_LONG */ -"You should now configure networking by first loading the correct driver for the GREEN interface. You can do this by either auto-probing for a network card, or by choosing the correct driver from a list. Note that if you have more then one network card installed, you will be able to configure the others later on in the installation. Also note that if you have more then one card which is the same type as GREEN and each card requires special module parameters, you should enter parameters for all cards of this type such that all cards can become active when you configure the GREEN interface.", -/* TR_CONFIGURE_NETWORK_DRIVERS */ -"Configure network drivers, and which interface each card is assigned to. The current configuration is as follows:\n\n", -/* TR_CONFIGURE_THE_CDROM */ -"Configure the CDROM by choosing the appropriate IO address and/or IRQ.", -/* TR_CONGRATULATIONS */ -"Congratulations!", -/* TR_CONGRATULATIONS_LONG */ -"%s was successfully installed. Please remove any CDROMs in the computer. Setup will now run where you may configure ISDN, network cards, and the system passwords. After Setup has been completed, you should point your web browser at https://%s:444 (or whatever you name your %s), and configure dialup networking (if required) and remote access.", -/* TR_CONTINUE_NO_SWAP */ -"Your harddisk is very small, but you can continue with an very small swap. (Use with caution).", -/* TR_CURRENT_CONFIG */ -"Current config: %s%s", -/* TR_DEFAULT_GATEWAY */ -"Default Gateway:", -/* TR_DEFAULT_GATEWAY_CR */ -"Default Gateway\n", -/* TR_DEFAULT_LEASE */ -"Default lease (mins):", -/* TR_DEFAULT_LEASE_CR */ -"Default lease time\n", -/* TR_DETECTED */ -"Detected a: %s", -/* TR_DHCP_HOSTNAME */ -"DHCP Hostname:", -/* TR_DHCP_HOSTNAME_CR */ -"DHCP Hostname\n", -/* TR_DHCP_SERVER_CONFIGURATION */ -"DHCP server configuration", -/* TR_DISABLED */ -"Disabled", -/* TR_DISABLE_ISDN */ -"Disable ISDN", -/* TR_DISK_TOO_SMALL */ -"Your harddisk is too small.", -/* TR_DNS_AND_GATEWAY_SETTINGS */ -"DNS and Gateway settings", -/* TR_DNS_AND_GATEWAY_SETTINGS_LONG */ -"Enter the DNS and gateway information. These settings are used only with Static IP (and DHCP if DNS set) on the RED interface.", -/* TR_DNS_GATEWAY_WITH_GREEN */ -"Your configuration does not utilise an ethernet adaptor for its RED interface. DNS and Gateway information for dialup users is configured automatically at dialup time.", -/* TR_DOMAINNAME */ -"Domain name", -/* TR_DOMAINNAME_CANNOT_BE_EMPTY */ -"Domain name cannot be empty.", -/* TR_DOMAINNAME_CANNOT_CONTAIN_SPACES */ -"Domain name cannot contain spaces.", -/* TR_DOMAINNAME_NOT_VALID_CHARS */ -"Domain name may only contain letters, numbers, hyphens and periods.", -/* TR_DOMAIN_NAME_SUFFIX */ -"Domain name suffix:", -/* TR_DOMAIN_NAME_SUFFIX_CR */ -"Domain name suffix\n", -/* TR_DONE */ -"Done", -/* TR_DO_YOU_WISH_TO_CHANGE_THESE_SETTINGS */ -"\nDo you wish to change these settings?", -/* TR_DRIVERS_AND_CARD_ASSIGNMENTS */ -"Drivers and card assignments", -/* TR_ENABLED */ -"Enabled", -/* TR_ENABLE_ISDN */ -"Enable ISDN", -/* TR_END_ADDRESS */ -"End address:", -/* TR_END_ADDRESS_CR */ -"End address\n", -/* TR_ENTER_ADDITIONAL_MODULE_PARAMS */ -"Some ISDN cards (especially ISA ones) may require additional module parameters for setting IRQ and IO address information. If you have such a ISDN card, enter these extra parameters here. For example: \"io=0x280 irq=9\". They will be used during card detection.", -/* TR_ENTER_ADMIN_PASSWORD */ -"Enter %s 'admin' user password. This is the user to use for logging into the %s web administration pages.", -/* TR_ENTER_DOMAINNAME */ -"Enter Domain name", -/* TR_ENTER_HOSTNAME */ -"Enter the machine's hostname.", -/* TR_ENTER_IP_ADDRESS_INFO */ -"Enter the IP address information", -/* TR_ENTER_NETWORK_DRIVER */ -"Failed to detect a network card automatically. Enter the driver and optional parameters for the network card.", -/* TR_ENTER_ROOT_PASSWORD */ -"Enter the 'root' user password. Login as this user for commandline access.", -/* TR_ENTER_SETUP_PASSWORD */ -"TO BE REMOVED", -/* TR_ENTER_THE_IP_ADDRESS_INFORMATION */ -"Enter the IP address information for the %s interface.", -/* TR_ENTER_THE_LOCAL_MSN */ -"Enter the local phone number (MSN/EAZ).", -/* TR_ENTER_URL */ -"Enter the URL path to the ipcop-.tgz and images/scsidrv-.img files. WARNING: DNS not available! This should now just be http://X.X.X.X/", -/* TR_ERROR */ -"Error", -/* TR_ERROR_PROBING_CDROM */ -"No CDROM drive found.", -/* TR_ERROR_WRITING_CONFIG */ -"Error writing configuration information.", -/* TR_EURO_EDSS1 */ -"Euro (EDSS1)", -/* TR_EXTRACTING_MODULES */ -"Extracting modules...", -/* TR_FAILED_TO_FIND */ -"Failed to find URL file.", -/* TR_FOUND_NIC */ -"%s has detected the following NIC in your machine: %s", -/* TR_GERMAN_1TR6 */ -"German 1TR6", -/* TR_HELPLINE */ -" / between elements | selects", -/* TR_HOSTNAME */ -"Hostname", -/* TR_HOSTNAME_CANNOT_BE_EMPTY */ -"Hostname cannot be empty.", -/* TR_HOSTNAME_CANNOT_CONTAIN_SPACES */ -"Hostname cannot contain spaces.", -/* TR_HOSTNAME_NOT_VALID_CHARS */ -"Hostname may only contain letters, numbers and hyphens.", -/* TR_INITIALISING_ISDN */ -"Initialising ISDN...", -/* TR_INSERT_CDROM */ -"Please insert the %s CD in the CDROM drive.", -/* TR_INSERT_FLOPPY */ -"Please insert the %s driver diskette in the floppy drive.", -/* TR_INSTALLATION_CANCELED */ -"Installation cancelled.", -/* TR_INSTALLING_FILES */ -"Installing files...", -/* TR_INSTALLING_GRUB */ -"Installing GRUB...", -/* TR_INSTALLING_LANG_CACHE */ -"Installing language files...", -/* TR_INTERFACE */ -"Interface - %s", -/* TR_INTERFACE_FAILED_TO_COME_UP */ -"Interface failed to come up.", -/* TR_INVALID_FIELDS */ -"The following fields are invalid:\n\n", -/* TR_INVALID_IO */ -"The IO port details entered are invalid. ", -/* TR_INVALID_IRQ */ -"The IRQ details entered are invalid.", -/* TR_IP_ADDRESS_CR */ -"IP address\n", -/* TR_IP_ADDRESS_PROMPT */ -"IP address:", -/* TR_ISDN_CARD */ -"ISDN card", -/* TR_ISDN_CARD_NOT_DETECTED */ -"ISDN card not detected. You may need to specify additional module parameters if the card is an ISA type or it has special requirements.", -/* TR_ISDN_CARD_SELECTION */ -"ISDN card selection", -/* TR_ISDN_CONFIGURATION */ -"ISDN Configuration", -/* TR_ISDN_CONFIGURATION_MENU */ -"ISDN configuration menu", -/* TR_ISDN_NOT_SETUP */ -"ISDN not setup. Some items have not been selected.", -/* TR_ISDN_NOT_YET_CONFIGURED */ -"ISDN has not yet been configured. Select the item you wish to configure.", -/* TR_ISDN_PROTOCOL_SELECTION */ -"ISDN protocol selection", -/* TR_ISDN_STATUS */ -"ISDN is currently %s.\n\n Protocol: %s\n Card: %s\n Local phone number: %s\n\nSelect the item you wish to reconfigure, or choose to use the current settings.", -/* TR_KEYBOARD_MAPPING */ -"Keyboard mapping", -/* TR_KEYBOARD_MAPPING_LONG */ -"Choose the type of keyboard you are using from the list below.", -/* TR_LEASED_LINE */ -"Leased line", -/* TR_LOADING_MODULE */ -"Loading module...", -/* TR_LOADING_PCMCIA */ -"Loading PCMCIA modules...", -/* TR_LOOKING_FOR_NIC */ -"Looking for: %s", -/* TR_MAKING_BOOT_FILESYSTEM */ -"Making boot filesystem...", -/* TR_MAKING_LOG_FILESYSTEM */ -"Making log filesystem...", -/* TR_MAKING_ROOT_FILESYSTEM */ -"Making root filesystem...", -/* TR_MAKING_SWAPSPACE */ -"Making swap space...", -/* TR_MANUAL */ -"* MANUAL *", -/* TR_MAX_LEASE */ -"Max lease (mins):", -/* TR_MAX_LEASE_CR */ -"Max lease time\n", -/* TR_MISSING_BLUE_IP */ -"Missing IP information on the BLUE interface.", -/* TR_MISSING_ORANGE_IP */ -"Missing IP information on the ORANGE interface.", -/* TR_MISSING_RED_IP */ -"Missing IP information on the RED interface.", -/* TR_MODULE_NAME_CANNOT_BE_BLANK */ -"Module name cannot be blank.", -/* TR_MODULE_PARAMETERS */ -"Enter the module name and parameters for the driver you require.", -/* TR_MOUNTING_BOOT_FILESYSTEM */ -"Mounting boot filesystem...", -/* TR_MOUNTING_LOG_FILESYSTEM */ -"Mounting log filesystem...", -/* TR_MOUNTING_ROOT_FILESYSTEM */ -"Mounting root filesystem...", -/* TR_MOUNTING_SWAP_PARTITION */ -"Mounting swap partition...", -/* TR_MSN_CONFIGURATION */ -"Local phone number (MSN/EAZ)", -/* TR_NETMASK_PROMPT */ -"Network mask:", -/* TR_NETWORKING */ -"Networking", -/* TR_NETWORK_ADDRESS_CR */ -"Network address\n", -/* TR_NETWORK_ADDRESS_PROMPT */ -"Network address:", -/* TR_NETWORK_CONFIGURATION_MENU */ -"Network configuration menu", -/* TR_NETWORK_CONFIGURATION_TYPE */ -"Network configuration type", -/* TR_NETWORK_CONFIGURATION_TYPE_LONG */ -"Select the network configuration for %s. The following configuration types list those interfaces which have ethernet attached. If you change this setting, a network restart will be required, and you will have to reconfigure the network driver assignments.", -/* TR_NETWORK_MASK_CR */ -"Network mask\n", -/* TR_NETWORK_SETUP_FAILED */ -"Network setup failed.", -/* TR_NOT_ENOUGH_CARDS_WERE_ALLOCATED */ -"Not enough cards were allocated.", -/* TR_NO_BLUE_INTERFACE */ -"No BLUE interface assigned.", -/* TR_NO_CDROM */ -"No CD-ROM found.", -/* TR_NO_GREEN_INTERFACE */ -"No GREEN interface assigned.", -/* TR_NO_HARDDISK */ -"No hard disk found.", -/* TR_NO_IPCOP_TARBALL_FOUND */ -"No ipcop tarball found on Web Server.", -/* TR_NO_ORANGE_INTERFACE */ -"No ORANGE interface assigned.", -/* TR_NO_RED_INTERFACE */ -"No RED interface assigned.", -/* TR_NO_SCSI_IMAGE_FOUND */ -"No SCSI image found on Web Server.", -/* TR_NO_UNALLOCATED_CARDS */ -"No unallocated cards remaining, more are required. You may autodetect and look for more cards, or choose to select a driver from the list.", -/* TR_OK */ -"Ok", -/* TR_PARTITIONING_DISK */ -"Partitioning disk...", -/* TR_PASSWORDS_DO_NOT_MATCH */ -"Passwords do not match.", -/* TR_PASSWORD_CANNOT_BE_BLANK */ -"Password cannot be blank.", -/* TR_PASSWORD_CANNOT_CONTAIN_SPACES */ -"Password cannot contain spaces.", -/* TR_PASSWORD_PROMPT */ -"Password:", -/* TR_PHONENUMBER_CANNOT_BE_EMPTY */ -"Phone number cannot be empty.", -/* TR_PREPARE_HARDDISK */ -"The installation program will now prepare the harddisk on %s. First the disk will be partitioned, and then the partitions will have a filesystem put on them.", -/* TR_PRESS_OK_TO_REBOOT */ -"Press Ok to reboot.", -/* TR_PRIMARY_DNS */ -"Primary DNS:", -/* TR_PRIMARY_DNS_CR */ -"Primary DNS\n", -/* TR_PROBE */ -"Probe", -/* TR_PROBE_FAILED */ -"Auto detecting failed.", -/* TR_PROBING_HARDWARE */ -"Probing hardware...", -/* TR_PROBING_FOR_NICS */ -"Probing for NICs...", -/* TR_PROBLEM_SETTING_ADMIN_PASSWORD */ -"Problem setting %s 'admin' user password.", -/* TR_PROBLEM_SETTING_ROOT_PASSWORD */ -"Problem setting 'root' password.", -/* TR_PROBLEM_SETTING_SETUP_PASSWORD */ -"TO BE REMOVED", -/* TR_PROTOCOL_COUNTRY */ -"Protocol/Country", -/* TR_PULLING_NETWORK_UP */ -"Pulling network up...", -/* TR_PUSHING_NETWORK_DOWN */ -"Pushing network down...", -/* TR_PUSHING_NON_LOCAL_NETWORK_DOWN */ -"Pushing non local network down...", -/* TR_QUIT */ -"Quit", -/* TR_RED_IN_USE */ -"ISDN (or another external connection) is currently in use. You may not configure ISDN while the RED interface is active.", -/* TR_RESTART_REQUIRED */ -"\n\nWhen configuration is complete, a network restart will be required.", -/* TR_RESTORE */ -"Restore", -/* TR_RESTORE_CONFIGURATION */ -"If you have a floppy with an %s system configuration on it, place the floppy in the floppy drive and press the Restore button.", -/* TR_ROOT_PASSWORD */ -"'root' password", -/* TR_SECONDARY_DNS */ -"Secondary DNS:", -/* TR_SECONDARY_DNS_CR */ -"Secondary DNS\n", -/* TR_SECONDARY_WITHOUT_PRIMARY_DNS */ -"Secondary DNS specified without a Primary DNS", -/* TR_SECTION_MENU */ -"Section menu", -/* TR_SELECT */ -"Select", -/* TR_SELECT_CDROM_TYPE */ -"Select CDROM type", -/* TR_SELECT_CDROM_TYPE_LONG */ -"No CD-ROM was detected in this machine. Please select which of the following drivers you wish to use so that %s can access the CD-ROM.", -/* TR_SELECT_INSTALLATION_MEDIA */ -"Select installation media", -/* TR_SELECT_INSTALLATION_MEDIA_LONG */ -"%s can be installed from multiple sources. The simplest is to use the machines CDROM drive. If the computer lacks a drive, you may install via another machine on the LAN which has the installation files available via HTTP or FTP.", -/* TR_SELECT_NETWORK_DRIVER */ -"Select network driver", -/* TR_SELECT_NETWORK_DRIVER_LONG */ -"Select the network driver for the card installed in this machine. If you select MANUAL, you will be given an opportunity to enter the driver module name and parameters for drivers which have special requirements, such as ISA cards.", -/* TR_SELECT_THE_INTERFACE_YOU_WISH_TO_RECONFIGURE */ -"Select the interface you wish to reconfigure.", -/* TR_SELECT_THE_ITEM */ -"Select the item you wish to configure.", -/* TR_SETTING_ADMIN_PASSWORD */ -"Setting %s 'admin' user password...", -/* TR_SETTING_ROOT_PASSWORD */ -"Setting 'root' password....", -/* TR_SETTING_SETUP_PASSWORD */ -"TO BE REMOVED", -/* TR_SETUP_FINISHED */ -"Setup is complete. Press Ok to reboot.", -/* TR_SETUP_NOT_COMPLETE */ -"Initial setup was not entirely complete. You must ensure that Setup is properly finished by running setup again at the shell.", -/* TR_SETUP_PASSWORD */ -"TO BE REMOVED", -/* TR_SET_ADDITIONAL_MODULE_PARAMETERS */ -"Set additional module parameters", -/* TR_SINGLE_GREEN */ -"Your configuration is set for a single GREEN interface.", -/* TR_SKIP */ -"Skip", -/* TR_START_ADDRESS */ -"Start address:", -/* TR_START_ADDRESS_CR */ -"Start address\n", -/* TR_STATIC */ -"Static", -/* TR_SUGGEST_IO */ -"(suggest %x)", -/* TR_SUGGEST_IRQ */ -"(suggest %d)", -/* TR_THIS_DRIVER_MODULE_IS_ALREADY_LOADED */ -"This driver module is already loaded.", -/* TR_TIMEZONE */ -"Timezone", -/* TR_TIMEZONE_LONG */ -"Choose the timezone you are in from the list below.", -/* TR_UNABLE_TO_EJECT_CDROM */ -"Unable to eject the CDROM.", -/* TR_UNABLE_TO_EXTRACT_MODULES */ -"Unable to extract modules.", -/* TR_UNABLE_TO_FIND_ANY_ADDITIONAL_DRIVERS */ -"Unable to find any additional drivers.", -/* TR_UNABLE_TO_FIND_AN_ISDN_CARD */ -"Unable to find an ISDN card in this computer. You may need to specify additional module parameters if the card is an ISA type or it has special requirements.", -/* TR_UNABLE_TO_INITIALISE_ISDN */ -"Unable to initialise ISDN.", -/* TR_UNABLE_TO_INSTALL_FILES */ -"Unable to install files.", -/* TR_UNABLE_TO_INSTALL_LANG_CACHE */ -"Unable to install language files.", -/* TR_UNABLE_TO_INSTALL_GRUB */ -"Unable to install GRUB.", -/* TR_UNABLE_TO_LOAD_DRIVER_MODULE */ -"Unable to load driver module.", -/* TR_UNABLE_TO_MAKE_BOOT_FILESYSTEM */ -"Unable to make boot filesystem.", -/* TR_UNABLE_TO_MAKE_LOG_FILESYSTEM */ -"Unable to make log filesystem.", -/* TR_UNABLE_TO_MAKE_ROOT_FILESYSTEM */ -"Unable to make root filesystem.", -/* TR_UNABLE_TO_MAKE_SWAPSPACE */ -"Unable to make swap space.", -/* TR_UNABLE_TO_MAKE_SYMLINK_DEV_HARDDISK */ -"Unable to create symlink /dev/harddisk.", -/* TR_UNABLE_TO_MAKE_SYMLINK_DEV_HARDDISK1 */ -"Unable to create symlink /dev/harddisk1.", -/* TR_UNABLE_TO_MAKE_SYMLINK_DEV_HARDDISK2 */ -"Unable to create symlink /dev/harddisk2.", -/* TR_UNABLE_TO_MAKE_SYMLINK_DEV_HARDDISK3 */ -"Unable to create symlink /dev/harddisk3.", -/* TR_UNABLE_TO_MAKE_SYMLINK_DEV_HARDDISK4 */ -"Unable to create symlink /dev/harddisk4.", -/* TR_UNABLE_TO_MAKE_SYMLINK_DEV_ROOT */ -"Unable to create symlink /dev/root.", -/* TR_UNABLE_TO_MOUNT_BOOT_FILESYSTEM */ -"Unable to mount boot filesystem.", -/* TR_UNABLE_TO_MOUNT_LOG_FILESYSTEM */ -"Unable to mount log filesystem.", -/* TR_UNABLE_TO_MOUNT_PROC_FILESYSTEM */ -"Unable to mount proc filesystem.", -/* TR_UNABLE_TO_MOUNT_ROOT_FILESYSTEM */ -"Unable to mount root filesystem.", -/* TR_UNABLE_TO_MOUNT_SWAP_PARTITION */ -"Unable to mount the swap partition.", -/* TR_UNABLE_TO_OPEN_HOSTS_FILE */ -"Unable to open main hosts file.", -/* TR_UNABLE_TO_OPEN_SETTINGS_FILE */ -"Unable to open settings file", -/* TR_UNABLE_TO_PARTITION */ -"Unable to partition the disk.", -/* TR_UNABLE_TO_REMOVE_TEMP_FILES */ -"Unable to remove temporary downloaded files.", -/* TR_UNABLE_TO_SET_HOSTNAME */ -"Unable to set hostname.", -/* TR_UNABLE_TO_UNMOUNT_CDROM */ -"Unable to unmount the CDROM/floppydisk.", -/* TR_UNABLE_TO_UNMOUNT_HARDDISK */ -"Unable to unmount harddisk.", -/* TR_UNABLE_TO_WRITE_ETC_FSTAB */ -"Unable to write /etc/fstab", -/* TR_UNABLE_TO_WRITE_ETC_HOSTNAME */ -"Unable to write /etc/hostname", -/* TR_UNABLE_TO_WRITE_ETC_HOSTS */ -"Unable to write /etc/hosts.", -/* TR_UNABLE_TO_WRITE_ETC_HOSTS_ALLOW */ -"Unable to write /etc/hosts.allow.", -/* TR_UNABLE_TO_WRITE_ETC_HOSTS_DENY */ -"Unable to write /etc/hosts.deny.", -/* TR_UNABLE_TO_WRITE_VAR_SMOOTHWALL_ETHERNET_SETTINGS */ -"Unable to write %s/ethernet/settings.", -/* TR_UNABLE_TO_WRITE_VAR_SMOOTHWALL_MAIN_HOSTNAMECONF */ -"Unable to write %s/main/hostname.conf", -/* TR_UNABLE_TO_WRITE_VAR_SMOOTHWALL_MAIN_SETTINGS */ -"Unable to write %s/main/settings.", -/* TR_UNCLAIMED_DRIVER */ -"There is an unclaimed ethernet card of type:\n%s\n\nYou can assign this to:", -/* TR_UNKNOWN */ -"UNKNOWN", -/* TR_UNSET */ -"UNSET", -/* TR_USB_KEY_VFAT_ERR */ -"This USB key is invalid (no vfat partition found).", -/* TR_US_NI1 */ -"US NI1", -/* TR_WARNING */ -"WARNING", -/* TR_WARNING_LONG */ -"If you change this IP address, and you are logged in remotely, your connection to the %s machine will be broken, and you will have to reconnect on the new IP. This is a risky operation, and should only be attempted if you have physical access to the machine, should something go wrong.", -/* TR_WELCOME */ -"Welcome to the %s installation program. Selecting Cancel on any of the following screens will reboot the computer.", -/* TR_YOUR_CONFIGURATION_IS_SINGLE_GREEN_ALREADY_HAS_DRIVER */ -"Your configuration is set for a single GREEN interface, which already has a driver assigned.", -/* TR_YES */ -"Yes", -/* TR_NO */ -"No", -/* TR_AS */ -"as", -/* TR_IGNORE */ -"Ignore", -/* TR_PPP_DIALUP */ -"PPP DIALUP (PPPoE, Modem, ATM ...)", -/* TR_DHCP */ -"DHCP", -/* TR_DHCP_STARTSERVER */ -"Starting DHCP-Server ...", -/* TR_DHCP_STOPSERVER */ -"Stopping DHCP-Server ...", - -}; - diff --git a/lfs/initramfs b/lfs/initramfs index 887ffd095..1237178ab 100644 --- a/lfs/initramfs +++ b/lfs/initramfs @@ -122,7 +122,7 @@ $(TARGET) : ### slang # install -c -D /usr/lib/libslang.so.2.1.1 $(INSTALLER_DIR)/usr/lib/libslang.so.2.1.1 - ln -svf libslang.so.2.1.1 $(INSTALLER_DIR)/usr/lib/libslang.so.2 + ln -svf libslang.so.2.1.1 $(INSTALLER_DIR)/usr/lib/libslang.so.2 ### python # @@ -130,10 +130,14 @@ $(TARGET) : ln -svf libpython2.5.so.1.0 $(INSTALLER_DIR)/usr/lib/libpython2.5.so install -D /usr/bin/python $(INSTALLER_DIR)/usr/bin/python -mkdir -p $(INSTALLER_DIR)/usr/lib/python2.5/{site-packages,lib-dynload} - cp -avf /usr/lib/python2.5/{UserDict,cmd,copy*,os,posixpath,re,site,socket,sre*,stat,string,types}.py{,o} \ + cp -avf /usr/lib/python2.5/{encodings,logging} \ $(INSTALLER_DIR)/usr/lib/python2.5/ - cp -avf /usr/lib/python2.5/site-packages/{_{snack,kudzu}module.so,{kudzu,snack}.py} \ + cp -avf /usr/lib/python2.5/{UserDict,bdb,cmd,codecs,copy*,fnmatch,gettext,glob,gzip,linecache,locale,os,pickle,posixpath,pty,re,shlex,site,socket,sre*,stat,string,struct,subprocess,traceback,tty,types}.py{,o} \ + $(INSTALLER_DIR)/usr/lib/python2.5/ + cp -avf /usr/lib/python2.5/site-packages/{_{snack,kudzu}module.so,{kudzu,snack}.py,iconv.so} \ $(INSTALLER_DIR)/usr/lib/python2.5/site-packages + cp -avf /usr/lib/python2.5/lib-dynload/{{binascii,collections,cPickle,cStringIO,fcntl,operator,select,termios,time,zlib},_{socket,struct}}.so \ + $(INSTALLER_DIR)/usr/lib/python2.5/lib-dynload ### configuration # @@ -142,7 +146,7 @@ $(TARGET) : chmod -v 755 $(INSTALLER_DIR)/etc/{halt,rc} ln -svf etc/rc $(INSTALLER_DIR)/init cp -vf /etc/issue /etc/group $(INSTALLER_DIR)/etc/ - cp -f /usr/share/terminfo/l/linux $(INSTALLER_DIR)/usr/share/terminfo/l + cp -vf /usr/share/terminfo/l/linux $(INSTALLER_DIR)/usr/share/terminfo/l cd $(INSTALLER_DIR) && find ./bin -maxdepth 1 -type f -exec \ $(TOOLS_DIR)/bin/strip --strip-all '{}' ';' diff --git a/lfs/installer b/lfs/installer index 28645cb7e..40f7c2e26 100644 --- a/lfs/installer +++ b/lfs/installer @@ -24,11 +24,13 @@ include Config -VER = ipfire +PKG_NAME = infire +VER = ipfire -THISAPP = installer -DIR_APP = $(DIR_SRC)/$(THISAPP) -TARGET = $(DIR_INFO)/$(THISAPP) +THISAPP = $(PKG_NAME) +DIR_APP = $(DIR_SOURCE)/$(THISAPP) + +TARGET = $(DIR_INFO)/$(STAGE_ORDER)_$(STAGE)/$(THISAPP) ############################################################################### # Top-level Rules @@ -36,11 +38,8 @@ TARGET = $(DIR_INFO)/$(THISAPP) install : $(TARGET) -check : - download : -md5 : ############################################################################### # Installation Details @@ -48,18 +47,7 @@ md5 : $(TARGET) : @$(PREBUILD) - @rm -rf $(DIR_APP) && mkdir $(DIR_APP) && cp -R $(DIR_SRC)/src/install+setup/* $(DIR_APP) - for i in $(DIR_SRC)/langs/*/install/lang_*.c ; do \ - cp $$i $(DIR_APP)/libsmooth; \ - done - cd $(DIR_APP)/libsmooth && chmod 755 makelangs.pl - cd $(DIR_APP)/libsmooth && make CFLAGS="-Os -fomit-frame-pointer -Wall \ - -DNAME='\"$(NAME)\"' -DSNAME='\"$(SNAME)\"' -DVERSION='\"$(VERSION)\"' \ - -DSLOGAN='\"$(SLOGAN)\"' -DCONFIG_ROOT='\"$(CONFIG_ROOT)\"'" - cd $(DIR_APP)/install && make CFLAGS="-Os -fomit-frame-pointer -Wall \ - -DNAME='\"$(NAME)\"' -DSNAME='\"$(SNAME)\"' -DVERSION='\"$(VERSION)\"' \ - -DSLOGAN='\"$(SLOGAN)\"' -DCONFIG_ROOT='\"$(CONFIG_ROOT)\"' -DKERNEL_VERSION='\"$(KVER)\"'" - cd $(DIR_APP)/install && install -v -m 0755 install probenic.sh \ - probehw.sh mountsource.sh mountdest.sh /install/initrd/bin - @rm -rf $(DIR_APP) + cd $(DIR_APP) && make -C po update-po + cd $(DIR_APP) && make install DESTDIR=$(INSTALLER_DIR) + cd $(DIR_APP) && make clean @$(POSTBUILD) diff --git a/lfs/squid-graph b/lfs/pyfire similarity index 64% rename from lfs/squid-graph rename to lfs/pyfire index a7544c961..c2f9a4a1c 100644 --- a/lfs/squid-graph +++ b/lfs/pyfire @@ -24,13 +24,13 @@ include Config -VER = 3.2 +PKG_NAME = pyfire +VER = 0.99.1 -THISAPP = squid-graph-$(VER) -DL_FILE = $(THISAPP).tar.gz -DL_FROM = $(URL_IPFIRE) -DIR_APP = $(DIR_SRC)/squid-graph -TARGET = $(DIR_INFO)/$(THISAPP) +THISAPP = $(PKG_NAME)-$(VER) +DIR_APP = $(DIR_SOURCE)/$(PKG_NAME) + +TARGET = $(DIR_INFO)/$(STAGE_ORDER)_$(STAGE)/$(THISAPP) ############################################################################### # Top-level Rules @@ -38,45 +38,21 @@ TARGET = $(DIR_INFO)/$(THISAPP) objects = $(DL_FILE) -$(DL_FILE) = $(DL_FROM)/$(DL_FILE) - -$(DL_FILE)_MD5 = 7ed7d187f87bde1ec9dabe05f07053b5 - -install : $(TARGET) - -check : $(patsubst %,$(DIR_CHK)/%,$(objects)) +install: $(TARGET) download :$(patsubst %,$(DIR_DL)/%,$(objects)) -md5 : $(subst %,%_MD5,$(objects)) - -############################################################################### -# Downloading, checking, md5sum -############################################################################### - -$(patsubst %,$(DIR_CHK)/%,$(objects)) : - @$(CHECK) - $(patsubst %,$(DIR_DL)/%,$(objects)) : @$(LOAD) -$(subst %,%_MD5,$(objects)) : - @$(MD5) - ############################################################################### # Installation Details ############################################################################### $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) @$(PREBUILD) - @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE) - cd $(DIR_APP) && sed \ - -e "s/\$$color{'gr'} .*$$/\$$color{'gr'} = ['33','33','99']; # graph total line color/" \ - -e "s/\$$color{'hit'} .*$$/\$$color{'hit'} = ['99','33','33']; # graph hit line color/" \ - -e "s/\$$color{'miss'} .*$$/\$$color{'miss'} = ['33','99','33']; # graph miss line color/" \ - -e "s/\$$color{'ims'} .*$$/\$$color{'ims'} = ['99','33','99']; # graph ims hit line color/" \ - squid-graph > /usr/bin/squid-graph - chmod 755 /usr/bin/squid-graph - -mkdir -p /srv/web/ipfire/html/sgraph - @rm -rf $(DIR_APP) + cd $(DIR_APP) && make -C po update-po + cd $(DIR_APP) && make + cd $(DIR_APP) && make install + cd $(DIR_APP) && make clean @$(POSTBUILD) diff --git a/lfs/python b/lfs/python index 15a5b2fad..2c69da6a6 100644 --- a/lfs/python +++ b/lfs/python @@ -27,17 +27,21 @@ include Config PKG_NAME = Python VER = 2.5.1 +ICONV = iconvmodule-1.0-ipfire-1 + THISAPP = $(PKG_NAME)-$(VER) DL_FILE = $(THISAPP).tar.bz2 DIR_APP = $(DIR_SRC)/$(THISAPP) TARGET = $(DIR_INFO)/$(STAGE_ORDER)_$(STAGE)/$(THISAPP) +MODULES = "$(ICONV)" + ############################################################################### # Top-level Rules ############################################################################### -objects = $(DL_FILE) +objects = $(DL_FILE) $(ICONV).tar.bz2 install: $(TARGET) @@ -52,9 +56,15 @@ $(patsubst %,$(DIR_DL)/%,$(objects)) : $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) @$(PREBUILD) - @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar jxf $(DIR_DL)/$(DL_FILE) + @rm -rf $(DIR_APP) $(MODULES) && cd $(DIR_SRC) && tar jxf $(DIR_DL)/$(DL_FILE) cd $(DIR_APP) && OPT="$(CFLAGS)" ./configure --prefix=/usr --enable-shared cd $(DIR_APP) && make -j $(PARALLELISM) cd $(DIR_APP) && make install - @rm -rf $(DIR_APP) + + ### Building optional modules + # + cd $(DIR_SRC) && tar jxf $(DIR_DL)/$(ICONV).tar.bz2 + cd $(DIR_SRC)/$(ICONV) && make install + + @rm -rf $(DIR_APP) $(MODULES) @$(POSTBUILD) diff --git a/make.sh b/make.sh index cda8f19ea..c85736bec 100755 --- a/make.sh +++ b/make.sh @@ -201,6 +201,7 @@ ipfire_build() { ipfire_make pcre ipfire_make popt ipfire_make python + ipfire_make pyfire ipfire_make libxml2 ipfire_make libxslt ipfire_make slang @@ -303,7 +304,6 @@ misc_build() { #ipfire_make tcpdump #ipfire_make squid - #ipfire_make squid-graph ## WILL THIS BE BANISHED BY COLLECTD? #ipfire_make squidguard ## CAN THIS BE BANISHED BY ANYTHING BETTER? #ipfire_make calamaris ## CAN THIS BE BANISHED BY ANYTHING BETTER? #ipfire_make vsftpd @@ -385,7 +385,7 @@ installer_build() { ipfire_make stage5 ipfire_make busybox - #ipfire_make installer + ipfire_make installer ipfire_make initramfs } diff --git a/src/pyfire/Makefile b/src/pyfire/Makefile new file mode 100644 index 000000000..47257690e --- /dev/null +++ b/src/pyfire/Makefile @@ -0,0 +1,34 @@ +############################################################################### +# # +# IPFire.org - A linux based firewall # +# Copyright (C) 2007 Michael Tremer & Christian Schmidt # +# # +# 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 . # +# # +############################################################################### + +include Makefile.inc + +SUBDIRS = src po + +all: subdirs + +install: all + for d in $(SUBDIRS); do make PREFIX=`cd $(PREFIX); pwd` -C $$d install; [ $$? = 0 ] || exit 1; done + +clean: + for d in $(SUBDIRS); do make -C $$d clean; done + +subdirs: + for d in $(SUBDIRS); do make -C $$d; [ $$? = 0 ] || exit 1; done diff --git a/src/pyfire/Makefile.inc b/src/pyfire/Makefile.inc new file mode 100644 index 000000000..d4aef3363 --- /dev/null +++ b/src/pyfire/Makefile.inc @@ -0,0 +1,27 @@ +############################################################################### +# # +# IPFire.org - A linux based firewall # +# Copyright (C) 2007 Michael Tremer & Christian Schmidt # +# # +# 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 . # +# # +############################################################################### + +NAME = pyFire +SNAME = pyfire + +PREFIX = / + +INSTALLNLSDIR = $(PREFIX)/usr/share/locale +PYTHONLIBDIR = $(PREFIX)/usr/lib/python2.5/site-packages/$(SNAME) diff --git a/src/pyfire/po/Makefile b/src/pyfire/po/Makefile new file mode 100644 index 000000000..154b99e14 --- /dev/null +++ b/src/pyfire/po/Makefile @@ -0,0 +1,76 @@ +############################################################################### +# # +# IPFire.org - A linux based firewall # +# Copyright (C) 2007 Michael Tremer & Christian Schmidt # +# # +# 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 . # +# # +############################################################################### + +include ../Makefile.inc + +POTFILES = ../src/*.py +NONPOTFILES = + +POS = $(wildcard *.po) +FMTCATALOGS = $(patsubst %.po,%.mo,$(POS)) + +MSGMERGE = msgmerge -v + +all: $(FMTCATALOGS) + +$(SNAME).pot: $(POTFILES) $(NONPOTFILES) + xgettext --from-code=UTF-8 --default-domain=$(SNAME) \ + --keyword=_ --keyword=N_ $(POTFILES) + if cmp -s $(SNAME).po $(SNAME).pot; then \ + rm -f $(SNAME).po; \ + else \ + mv $(SNAME).po $(SNAME).pot; \ + fi + +refresh-po: + for cat in $(POS); do \ + lang=`basename $$cat .po`; \ + if $(MSGMERGE) $$lang.po $(SNAME).pot > $$lang.pot ; then \ + mv -f $$lang.pot $$lang.po ; \ + echo "$(MSGMERGE) of $$lang succeeded" ; \ + else \ + echo "$(MSGMERGE) of $$lang failed" ; \ + rm -f $$lang.pot ; \ + fi \ + done + +update-po: $(SNAME).pot refresh-po + +install: all + mkdir -p $(PREFIX)/$(INSTALLNLSDIR) + for n in $(FMTCATALOGS); do \ + l=`basename $$n .mo`; \ + $(INSTALL) -m 755 -d $(PREFIX)/$(INSTALLNLSDIR)/$$l; \ + $(INSTALL) -m 755 -d $(PREFIX)/$(INSTALLNLSDIR)/$$l/LC_MESSAGES; \ + $(INSTALL) -m 644 $$n \ + $(PREFIX)/$(INSTALLNLSDIR)/$$l/LC_MESSAGES/$(SNAME).mo; \ + done + +%.mo: %.po + msgfmt --check -o $@ $< + +report: + @for cat in $(POS); do \ + echo -n "$$cat: "; \ + msgfmt -v --statistics -o /dev/null $$cat; \ + done + +clean: + rm -f *.mo missing diff --git a/src/pyfire/po/pyfire.pot b/src/pyfire/po/pyfire.pot new file mode 100644 index 000000000..b3dfd875d --- /dev/null +++ b/src/pyfire/po/pyfire.pot @@ -0,0 +1,21 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2007-12-13 19:49+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=CHARSET\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../src/__init__.py:26 +msgid "This is a dummy" +msgstr "" diff --git a/src/pyfire/src/Makefile b/src/pyfire/src/Makefile new file mode 100644 index 000000000..1f20314ee --- /dev/null +++ b/src/pyfire/src/Makefile @@ -0,0 +1,31 @@ +############################################################################### +# # +# IPFire.org - A linux based firewall # +# Copyright (C) 2007 Michael Tremer & Christian Schmidt # +# # +# 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 . # +# # +############################################################################### + +include ../Makefile.inc + +all: + +install: all + -mkdir -p $(PYTHONLIBDIR) + cp -vf *.py $(PYTHONLIBDIR) + #sh ../py-compile $(PYTHONLIBDIR)/*.py + +clean: + rm -f *.o *.so *.pyc *.pyo diff --git a/src/pyfire/src/__init__.py b/src/pyfire/src/__init__.py new file mode 100644 index 000000000..78489dacf --- /dev/null +++ b/src/pyfire/src/__init__.py @@ -0,0 +1,26 @@ +############################################################################### +# # +# IPFire.org - A linux based firewall # +# Copyright (C) 2007 Michael Tremer & Christian Schmidt # +# # +# 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 . # +# # +############################################################################### + +# A dummy +def pyfire(): + from pyfire.translate import _, textdomain + + textdomain("pyfire") + print _("This is a dummy") diff --git a/src/pyfire/src/log.py b/src/pyfire/src/log.py new file mode 100644 index 000000000..12540bbc3 --- /dev/null +++ b/src/pyfire/src/log.py @@ -0,0 +1,103 @@ +############################################################################### +# # +# IPFire.org - A linux based firewall # +# Copyright (C) 2007 Michael Tremer & Christian Schmidt # +# # +# 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 . # +# # +############################################################################### +# Chris Lumens # +# Matt Wilson # +# Michael Fulbright # +############################################################################### + +import sys +import logging +from logging.handlers import SysLogHandler, SYSLOG_UDP_PORT + +DEFAULT_LEVEL = logging.INFO + +logFile = "/root/infire.log" + +logLevelMap = {"debug": logging.DEBUG, "info": logging.INFO, + "warning": logging.WARNING, "error": logging.ERROR, + "critical": logging.CRITICAL} + +# Base class for logger instances. This is what will be created any time +# someone calls logging.getLogger("whatever"). We need this class to +# provide the setHandlersLevel function. +class LoggerClass(logging.Logger): + # Set the level of all handlers attached to a logger, except those + # with the autoSetLevel=False attribute. + def setHandlersLevel(self, level): + map(lambda hdlr: hdlr.setLevel(level), + filter (lambda hdlr: hasattr(hdlr, "autoSetLevel") and hdlr.autoSetLevel, self.handlers)) + + # Specialized addHandler that also adds the autoSetLevel attribute. + def addHandler(self, hdlr, autoSetLevel=True): + setattr(hdlr, "autoSetLevel", autoSetLevel) + logging.Logger.addHandler(self, hdlr) + +class InstallerLog: + def __init__(self, minLevel=DEFAULT_LEVEL): + # Create the base of the logger hierarcy. + self.logger = logging.getLogger("infire") + self.logger.setLevel(logging.DEBUG) + + # Add a handler for the log file. + self.addFileHandler(logFile, logging.getLogger("infire"), + autoSetLevel=False, minLevel=logging.DEBUG) + + # Create a second logger for just the stuff we want to dup on + # stdout. Anything written here will also get passed up to the + # parent loggers for processing and possibly be written to the + # log. + self.stdoutLogger = logging.getLogger("infire.stdout") + self.stdoutLogger.setLevel(logging.INFO) + + # Add a handler for the duped stuff. No fancy formatting, thanks. + self.addFileHandler (sys.stdout, self.stdoutLogger, + fmtStr="%(message)s", minLevel=logging.INFO) + + # Add a simple handler - file or stream, depending on what we're given. + def addFileHandler(self, file, addToLogger, minLevel=DEFAULT_LEVEL, + fmtStr="%(asctime)s %(levelname)-8s: %(message)s", + autoSetLevel=True): + if type (file) == type ("string"): + logfileHandler = logging.FileHandler(file) + else: + logfileHandler = logging.StreamHandler(file) + + logfileHandler.setLevel(minLevel) + logfileHandler.setFormatter (logging.Formatter (fmtStr, "%H:%M:%S")) + addToLogger.addHandler(logfileHandler) + + # Add another logger to the hierarchy. For best results, make sure + # name falls under infire in the tree. + def addLogger(self, name, minLevel=DEFAULT_LEVEL): + newLogger = logging.getLogger(name) + newLogger.setLevel(minLevel) + + # Add a handler for remote syslogs. + def addSysLogHandler(self, logger, host, port=SYSLOG_UDP_PORT, + minLevel=DEFAULT_LEVEL): + fmt = logging.Formatter("%(levelname)-8s %(message)s") + syslogHandler = SysLogHandler((host, port)) + syslogHandler.setLevel(minLevel) + syslogHandler.setFormatter(fmt) + logger.addHandler(syslogHandler) + +# Set base class for logger instances. +logging.setLoggerClass(LoggerClass) +logger = InstallerLog() diff --git a/src/pyfire/src/translate.py b/src/pyfire/src/translate.py new file mode 100644 index 000000000..16a7d7bf4 --- /dev/null +++ b/src/pyfire/src/translate.py @@ -0,0 +1,228 @@ +############################################################################### +# # +# IPFire.org - A linux based firewall # +# Copyright (C) 2007 Michael Tremer & Christian Schmidt # +# # +# 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 . # +# # +############################################################################### + +import gettext +import iconv +import os, sys, string +import gzip +import locale +import codecs + +def _expandLang(str): + langs = [str] + # remove charset ... + if '.' in str: + langs.append(string.split(str, '.')[0]) + # also add 2 character language code ... + if len(str) > 2: + langs.append(str[:2]) + return langs + +def getDefaultLangs(): + lang = [] + for env in 'LANGUAGE', 'LC_ALL', 'LC_MESSAGES', 'LANG': + if os.environ.has_key(env): + lang = string.split(os.environ[env], ':') + lang = map(_expandLang, lang) + lang = reduce(lambda a, b: a + b, lang) + break + if 'C' not in lang: + lang.append('C') + return lang + +class i18n: + def __init__(self, langs=None, conversion=0, domain=None, paths=None): + # FIXME: legacy method names + self.utf8 = self.convert + self.setunicode = self.setconversion + self.getunicode = self.getconversion + + # do we convert to codeset or not? + self.conversion = conversion + # codeset to convert to + self.codeset = 'utf-8' + + # dictionary of catalogs. keyed by domain, val is (cat, iconv) + self.cats = {} + # list of domains in search order. setting textdomain adds + # to the front of the list + self.domains = [] + + if langs: + self.langs = langs + else: + try: + self.langs = getDefaultLangs() + except: + self.langs = ['C'] + + if paths is None: + self.paths = [ "/usr/share/locale" ] + else: + self.paths = paths + + self.setDomain(domain) + + # add a dir to our search path for po files + def addPoPath(self, path): + if path not in self.paths: + self.paths.insert(0, path) + self.updateCachedCatPaths() + + # add domain to the front of our domain list + def setDomain(self, domain): + if type(domain) == type([]): + domain.reverse() + for dom in domain: + if dom in self.domains: + self.domains.pop(self.domains.index(dom)) + self.domains.insert(0, dom) + else: + if domain in self.domains: + self.domains.pop(self.domains.index(domain)) + self.domains.insert(0, domain) + + # let's pop None out of the list if its there and special case it + if None in self.domains: + self.domains.pop(self.domains.index(None)) + + self.updateCachedCatPaths() + + def updateCachedCatPaths(self): + # should we recreate this each time? + self.cats = {} + self.iconv = None + + for domain in self.domains + [ None ]: + for mypath in self.paths: + if not domain: + path = 'po/%s.mo' + else: + path = '%s/%s/LC_MESSAGES/%s.mo' % (mypath, '%s', domain,) + + mofile = None + for lang in self.langs: + try: + file_path = path %(lang,) + f = open(file_path) + buf = f.read(2) + f.close() + + if buf == "\037\213": + mofile = gzip.open(file_path) + else: + mofile = open(file_path) + except IOError: + pass + if mofile: + break + + if mofile is None: + continue + + catalog = gettext.GNUTranslations(mofile) + try: + theiconv = iconv.open(self.codeset, catalog.charset()) + except Exception, e: + sys.stderr.write('unable to translate from %s to utf-8: %s\n' %(catalog.charset(), e)) + theiconv = iconv.open(self.codeset, 'UTF-8') + + self.cats[domain] = (catalog, theiconv) + if self.iconv is None: + self.iconv = theiconv + break + + # now let's put None at the beginning of the list as it corresponds + # to the "current" local po files for testing + self.domains.insert(0, None) + + if len(self.cats) == 0: + encoding = locale.nl_langinfo (locale.CODESET) +# sys.stderr.write("WARNING: Unable to find catalog, using %s for codeset, %s for encoding\n" %(self.codeset, encoding)) + try: + self.iconv = iconv.open(self.codeset, encoding) + except: + sys.stderr.write("FAILED to create iconv with codeset %s and encoding %s\n" %(self.codeset, encoding)); + return + + def setDomainCodeset(self, domain, codeset): + self.codeset = codeset + self.conversion = 1 + self.setDomain (domain) + + def setCodeset(self, codeset): + self.codeset = codeset + self.conversion = 1 + + def setconversion(self, value): + self.conversion = value + + def getconversion(self, value): + return self.conversion + + def getlangs(self): + return self.langs + + def setlangs(self, langs): + self.__init__(langs, self.conversion, self.domains, self.paths) + + def convert(self, string): + try: + return self.iconv.iconv(string) + except: + return string + + def gettext(self, string): + if len(self.cats) == 0: + return string + + translation = None + for domain in self.domains: + if not self.cats.has_key(domain): + continue + (cat, iconv) = self.cats[domain] + translation = cat._catalog.get(string) + if translation is not None: + if self.conversion: + return iconv.iconv(translation) + else: + return translation.encode("UTF-8") + + return string + +def N_(str): + return str + +def textdomain_codeset(domain, codeset): + global cat + cat.setDomainCodeset(domain, codeset) + +def textdomain(domain): + global cat + cat.setDomain(domain) + +def addPoPath(path): + global cat + cat.addPoPath(path) + +cat = i18n() +_ = cat.gettext +utf8 = cat.convert +convert = cat.convert diff --git a/src/scripts/dialctrl.pl b/src/scripts/dialctrl.pl deleted file mode 100644 index 81ef3dde7..000000000 --- a/src/scripts/dialctrl.pl +++ /dev/null @@ -1,199 +0,0 @@ -#!/usr/bin/perl -# -# Dialup Statistics for IPFire -# based on SilverStar's work on -# http://goodymuc.go.funpic.de -# - -require '/var/ipfire/general-functions.pl'; -require "${General::swroot}/lang.pl"; -require "${General::swroot}/header.pl"; - -($sec,$min,$hour,$mday,$mon,$year,$wday,$ydat,$isdst)=localtime(); - $jahr=$year; - $monat=$mon+1; - $tag=$mday; - $jahr=$year; - -$jahr=$year +1900; - -if (length($monat) == 1) -{ - $monat="0$monat"; -} -if(length($tag) == 1) -{ - $tag="0$tag"; -} -if(length($hour) == 1) -{ - $hour="0$hour"; -} -if(length($min) == 1) -{ - $min="0$min"; -} -if(length($sec) == 1) -{ - $sec="0$sec"; -} - -my $s_date = $tag."/".$monat."/".$jahr; -my $s_time = $hour.":".$min.":".$sec; -my $file_log = "/var/log/counter/dialup.log"; -my $file_connect = "/var/log/counter/connect"; -my $file_reset = "/var/log/counter/reset"; - -if ($ARGV[0] eq 'up') { - if (! -e "$file_log") { - &new; - } else { - open(CONNECT,">$file_connect"); - close(CONNECT); - open(COUNTER,"<$file_log"); - $line = ; - ($start,$update,$up,$down,$rec,$on,$bit) = split(/\|/,$line); - close(COUNTER); - $up++; - $update = $s_date." on ".$s_time; - open(COUNTER,">$file_log"); - print COUNTER "$start\|$update\|$up\|$down\|$rec\|$on\|$bit"; - close(COUNTER); - } -} - -if ($ARGV[0] eq 'down') { - if (! -e "$file_log") { - &new; - } else { - open(COUNTER,"<$file_log"); - $line = ; - ($start,$update,$up,$down,$rec,$on,$bit) = split(/\|/,$line); - close(COUNTER); - $on =~ /(\d+)d\s+(\d+)h\s+(\d+)m\s+(\d+)s/; - $d1 = $1; $h1 = $2; $m1 = $3; $s1 = $4; - $con = &General::age("$file_connect"); - $con =~ /(\d+)d\s+(\d+)h\s+(\d+)m\s+(\d+)s/; - $d2 = $1; $h2 = $2; $m2 = $3; $s2 = $4; - $sum_d = ($d1 + $d2) * 86400; - $sum_h = ($h1 + $h2) * 3600; - $sum_m = ($m1 + $m2) * 60; - $sum_s = ($s1 + $s2); - $sum_1 = $sum_d + $sum_h + $sum_m + $sum_s; - $d = int($sum_1 / 86400); - $totalhours = int($sum_1 / 3600); - $h = $totalhours % 24; - $totalmins = int($sum_1 / 60); - $m = $totalmins % 60; - $s = $sum_1 % 60; - $on = "${d}d ${h}h ${m}m ${s}s"; - $down++; - $update = $s_date." on ".$s_time; - open(COUNTER,">$file_log"); - print COUNTER "$start\|$update\|$up\|$down\|$rec\|$on\|$bit"; - close(COUNTER); - } -} - -if ($ARGV[0] eq 'rec') { - if (! -e "$file_log") { - &new; - } else { - open(COUNTER,"<$file_log"); - $line = ; - ($start,$update,$up,$down,$rec,$on,$bit) = split(/\|/,$line); - close(COUNTER); - $rec++; - $update = $s_date." on ".$s_time; - open(COUNTER,">$file_log"); - print COUNTER "$start\|$update\|$up\|$down\|$rec\|$on\|$bit"; - close(COUNTER); - } -} - -elsif ($ARGV[0] eq 'show') { -if (! -e "$file_log") { - &new; - } -else { - open(COUNTER,"<$file_log"); - $line = ; - ($start,$update,$up,$down,$rec,$on,$bit) = split(/\|/,$line); - $on =~ /(\d+)d\s+(\d+)h\s+(\d+)m\s+(\d+)s/; - $d1 = $1; $h1 = $2; $m1 = $3; $s1 = $4; - close(COUNTER); - if ( ! -e "${General::swroot}/red/active") { - $timecon = "0d 0h 0m 0s"; - } else { - $timecon = &General::age("$file_connect"); - } - $timecon =~ /(\d+)d\s+(\d+)h\s+(\d+)m\s+(\d+)s/; - $d2 = $1; $h2 = $2; $m2 = $3; $s2 = $4; - $timeres = &General::age("$file_reset"); - $timeres =~ /(\d+)d\s+(\d+)h\s+(\d+)m\s+(\d+)s/; - $d3 = $1; $h3 = $2; $m3 = $3; $s3 = $4; - $sum_d1 = ($d1 + $d2) * 86400; - $sum_h1 = ($h1 + $h2) * 3600; - $sum_m1 = ($m1 + $m2) * 60; - $sum_s1 = ($s1 + $s2); - $sum_1 = $sum_d1 + $sum_h1 + $sum_m1 + $sum_s1; - $sum_d2 = $d3 * 86400; - $sum_h2 = $h3 * 3600; - $sum_m2 = $m3 * 60; - $sum_s2 = $s3; - $sum_2 = $sum_d2 + $sum_h2 + $sum_m2 + $sum_s2; - $d = int($sum_1 / 86400); - $totalhours = int($sum_1 / 3600); - $h = $totalhours % 24; - $totalmins = int($sum_1 / 60); - $m = $totalmins % 60; - $s = $sum_1 % 60; - $current = "${d}d ${h}h ${m}m ${s}s"; - $ontime = ( $sum_1 * 100 ) / $sum_2; - if ($ontime >= 99.95) { - $ontime = sprintf("%.0f", $ontime); - } - elsif ($ontime <= 0.05) { - $ontime = sprintf("%.0f", $ontime); - } - else { - $ontime = sprintf("%.1f", $ontime); - } - -print <$Lang::tr{'since'} $update -$Lang::tr{'connections'}: $up | $Lang::tr{'disconnects'}: $down | $Lang::tr{'attemps'}: $rec -Verbindungszeit:$current ~ $ontime% -END -; - } -} - -elsif ($ARGV[0] eq 'reset') { - &new; -} - -elsif ($ARGV[0] eq '') { - print "\nDont run on the console...\n\n"; -} - -exit 0; - -sub new { - open(COUNTER,">$file_log"); - $start = $s_date." on ".$s_time; - $update = "‹no action since clearing›"; - $up = "0"; - $down = "0"; - $rec = "0"; - $on = "0d 0h 0m"; - $bit = "0"; - print COUNTER "$start\|$update\|$up\|$down\|$rec\|$on\|$bit"; - close(COUNTER); - open(CONNECT,">$file_connect"); - print CONNECT "0"; - close(CONNECT); - open(RESET,">$file_reset"); - print RESET "0"; - close(RESET); -} diff --git a/src/scripts/hddshutdown b/src/scripts/hddshutdown deleted file mode 100644 index 056adf375..000000000 --- a/src/scripts/hddshutdown +++ /dev/null @@ -1,61 +0,0 @@ -#!/usr/bin/perl -# -# IPFire HDD Shutdown state reader -# -# This code is distributed under the terms of the GPL -# -# 18.09.2007 Maniacikarus - IPFire.org - maniacikarus@ipfire.org -# 22.09.2007 Arne_F - fitzenreiter.de - arne@fitzenreiter.de - -# begin - -my @devices = `kudzu -qps -c HD | grep device: | cut -d" " -f2 | sort | uniq`; -my $diskstats = ""; -my $newdiskstats = ""; -my $debug = 1; -my $status = ""; - -if ($debug){print "### Searching for available Disks ###\n";} - -foreach (@devices){ - chomp $_; - my @array = split(/\//,$_); - $diskstats = `cat /tmp/hddstats-$array[$#array]`; - chomp $diskstats; - $newdiskstats = `iostat -d -t $_ | tail -2 | head -1 | awk '{ print \$5","\$6}'`; - chomp $newdiskstats; - $status = `hdparm -C /dev/$_ | tail -1 | cut -d: -f2`; - chomp $status; - - if ($debug){print "Device ".$_." IDE Power status:".$status."\n";} - if (-e "/tmp/hddshutdown-$array[$#array]" && $status !~/standby/) - { - if ($debug){print "Remove wrong standby marking\n";} - if ( -e "/tmp/hddshutdown-$array[$#array]" ) { system("unlink /tmp/hddshutdown-$array[$#array]"); } - } - - if ($debug){print "Device ".$_." has ".$newdiskstats." write and read Requests, was ".$diskstats." at last run.\n";} - if ($diskstats eq $newdiskstats && (! -e "/tmp/hddshutdown-$array[$#array]") ) - { - if ($debug){print "Setting Device ".$_." to standby ... ";} - $status = `hdparm -y /dev/$_ 2>&1`; - chomp $status; - if ($status !~/Invalid/) - { - if ($debug){print "OK\n";} - system("touch /tmp/hddshutdown-$array[$#array]"); - } - else - { - if ($debug){print "FAIL\n";} - } - } - if ($diskstats ne $newdiskstats) - { - if ($debug){print "Device ".$_." is active.\n";} - if ( -e "/tmp/hddshutdown-$array[$#array]" ) { system("unlink /tmp/hddshutdown-$array[$#array]"); } - } - system("echo $newdiskstats > /tmp/hddstats-$array[$#array]"); -} - -# end diff --git a/src/scripts/makegraphs b/src/scripts/makegraphs deleted file mode 100644 index 9cce21a93..000000000 --- a/src/scripts/makegraphs +++ /dev/null @@ -1,541 +0,0 @@ -#!/usr/bin/perl - -############################################################################ -# # -# This file is part of the IPCop Firewall. # -# # -# IPCop 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 2 of the License, or # -# (at your option) any later version. # -# # -# IPCop 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 IPCop; if not, write to the Free Software # -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA # -# # -# Copyright (C) 2004-01-19 Mark Wormgoor . # -# # -############################################################################ - -use strict; -#use warnings; - -use RRDs; -require "/var/ipfire/general-functions.pl"; -require "${General::swroot}/lang.pl"; - -my (%settings, @ipacsum, $iface, $ERROR); -&General::readhash("${General::swroot}/ethernet/settings", \%settings); -my %mbmon_settings = (); -&General::readhash("${General::swroot}/mbmon/settings", \%mbmon_settings); - -# Added for conversion of utf-8 characters -use Encode 'from_to'; -my %tr=(); - -system("chmod 777 /srv/web/ipfire/html/graphs"); - -# Force language back to English (ugly hack!) -# Modified to only force if we are unable to convert charset -# from utf-8 -if((${Lang::language} eq 'el') || - (${Lang::language} eq 'fa') || - (${Lang::language} eq 'ru') || - (${Lang::language} eq 'th') || - (${Lang::language} eq 'vi') || - (${Lang::language} eq 'zh') || - (${Lang::language} eq 'zt')) { - eval `/bin/cat "${General::swroot}/langs/en.pl"`; -} else { - #use translated version for other languages - %tr=%Lang::tr; -} - -# Settings -my $rrdlog = "/var/log/rrd"; -my $graphs = "/srv/web/ipfire/html/graphs"; -$ENV{PATH}="/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin"; -my $hdd_device = "/dev/harddisk"; -my $temp = ''; -my %mbmon_values = (); -my $key; -my $value; -my @args = (); -my $count = 0; -my $ERROR; -my $dbg = 0; -my $path_smartctl = "/usr/sbin/smartctl"; -my $path_hddtemp = "/usr/sbin/hddtemp"; - -my %color = (); -my %mainsettings = (); -&General::readhash("${General::swroot}/main/settings", \%mainsettings); -&General::readhash("/srv/web/ipfire/html/themes/".$mainsettings{'THEME'}."/include/colors.txt", \%color); - -open(MBMON_OUT, ">/var/log/mbmon-values"); -open(FD, "/usr/bin/mbmon -rc1|" ) || die "ERROR: Cannot run mbmon\n" ; - -while( $_ = ) -{ - next unless( /^([A-Za-z][^:\s]+)\s*:\s*([+\-]{0,1}[\d\.]+)/ ) ; - $key = $1 ; - $value = $2 ; - $key =~ y/A-Z/a-z/ ; - $mbmon_values{$key} = $value; - print(MBMON_OUT "$key=$value\n"); -} -close(FD); -close(MBMON_OUT); - -sub gettraffic { - my $interface = $_[0]; - - my $bytesin=0; - my $bytesout=0; - - foreach (@ipacsum){ - # Incoming... - $bytesin += $1 if (/^[\* ]\s+incoming\s+${interface}.+\:\s+(\d+)/); - # Forwarded Incoming... - $bytesin += $1 if (/^[\* ]\s+forwarded\s+incoming\s+${interface}.+\:\s+(\d+)/); - # Outgoing... - $bytesout += $1 if (/^[* ]\s+outgoing\s+${interface}.+\:\s+(\d+)/); - # Forwarded Outgoing... - $bytesout += $1 if (/^[* ]\s+forwarded\s+outgoing\s+${interface}.+\:\s+(\d+)/); - } - return "$bytesin:$bytesout"; -} - -sub updatecpudata { - if ( ! -e "$rrdlog/cpu.rrd") { - RRDs::create ("$rrdlog/cpu.rrd", "--step=300", - "DS:user:COUNTER:600:0:500000000", - "DS:system:COUNTER:600:0:500000000", - "DS:idle:COUNTER:600:0:500000000", - "DS:iowait:COUNTER:600:0:500000000", - "DS:irq:COUNTER:600:0:500000000", - "RRA:AVERAGE:0.5:1:576", - "RRA:AVERAGE:0.5:6:672", - "RRA:AVERAGE:0.5:24:732", - "RRA:AVERAGE:0.5:144:1460"); - $ERROR = RRDs::error; - print "Error in RRD::create for cpu: $ERROR\n" if $ERROR; - } - - my ($cpu, $user, $nice, $system, $idle, $iowait, $irq, $softirq); - open STAT, "/proc/stat"; - while() { - chomp; - /^cpu\s/ or next; - ($cpu, $user, $nice, $system, $idle, $iowait, $irq, $softirq) = split /\s+/; - last; - } - close STAT; - $user += $nice; - $irq += $softirq; - RRDs::update ("$rrdlog/cpu.rrd", - "-t", "user:system:idle:iowait:irq", - "N:$user:$system:$idle:$iowait:$irq"); - $ERROR = RRDs::error; - print "Error in RRD::update for cpu: $ERROR\n" if $ERROR; -} - -sub updateloaddata { - if ( ! -e "$rrdlog/load.rrd") { - RRDs::create ("$rrdlog/load.rrd", "--step=60", - "DS:load1:GAUGE:120:0:U", - "DS:load5:GAUGE:120:0:U", - "DS:load15:GAUGE:120:0:U", - "RRA:AVERAGE:0.5:1:2160", - "RRA:AVERAGE:0.5:5:2016", - "RRA:AVERAGE:0.5:15:2880", - "RRA:AVERAGE:0.5:60:8760"); - $ERROR = RRDs::error; - print "Error in RRD::create for cpu: $ERROR\n" if $ERROR; - } -} - -sub updatememdata { - my ($memused, $memfree, $memshared, $membuffers, $memcache, $swapused, $swapfree, $swaptotal); - if ( ! -e "$rrdlog/mem.rrd") { - RRDs::create ("$rrdlog/mem.rrd", "--step=300", - "DS:memused:ABSOLUTE:600:0:5000000000", - "DS:memfree:ABSOLUTE:600:0:5000000000", - "DS:memshared:ABSOLUTE:600:0:5000000000", - "DS:membuffers:ABSOLUTE:600:0:5000000000", - "DS:memcache:ABSOLUTE:600:0:5000000000", - "DS:swapused:ABSOLUTE:600:0:5000000000", - "DS:swapfree:ABSOLUTE:600:0:5000000000", - "RRA:AVERAGE:0.5:1:576", - "RRA:AVERAGE:0.5:6:672", - "RRA:AVERAGE:0.5:24:732", - "RRA:AVERAGE:0.5:144:1460"); - $ERROR = RRDs::error; - print "Error in RRD::create for mem: $ERROR\n" if $ERROR; - } - - open MEM, "/proc/meminfo"; - while() { - chomp; - if ($_ =~ /^MemTotal:/) {my @temp = split (/\s+/, $_);$memused = $temp[1]; - } elsif ($_ =~ /^MemFree:/) {my @temp = split (/\s+/, $_);$memfree = $temp[1]; - } elsif ($_ =~ /^Cached:/) {my @temp = split (/\s+/, $_);$memcache = $temp[1]; - } elsif ($_ =~ /^Buffers:/) {my @temp = split (/\s+/, $_);$membuffers = $temp[1]; - } elsif ($_ =~ /^SwapTotal:/) {my @temp = split (/\s+/, $_);$swaptotal = $temp[1]; - } elsif ($_ =~ /^SwapFree:/) {my @temp = split (/\s+/, $_);$swapfree = $temp[1];} - } - close MEM; - - system("/bin/df > /tmp/diskfree"); - open DF, "/tmp/diskfree"; - while() { - chomp; - if ($_ =~ /^shm/) {my @temp = split (/\s+/, $_);$memshared = $temp[2];} - } - close DF; - system("/bin/rm -f /tmp/diskfree"); - $swapused = $swaptotal-$swapfree; - RRDs::update ("$rrdlog/mem.rrd", - "-t", "memused:memfree:memshared:membuffers:memcache:swapused:swapfree", - "N:$memused:$memfree:$memshared:$membuffers:$memcache:$swapused:$swapfree"); - $ERROR = RRDs::error; - print "Error in RRD::update for mem: $ERROR\n" if $ERROR; -} - -sub updatediskdata { - my $disk = $_[0]; - my ($readsect, $writesect, $trash); - my @array = split(/\//,$disk); - if ( ! -e "$rrdlog/disk-".$array[$#array].".rrd") { - RRDs::create ("$rrdlog/disk-".$array[$#array].".rrd", "--step=300", - "DS:readsect:COUNTER:600:0:5000000000", - "DS:writesect:COUNTER:600:0:5000000000", - "RRA:AVERAGE:0.5:1:576", - "RRA:AVERAGE:0.5:6:672", - "RRA:AVERAGE:0.5:24:732", - "RRA:AVERAGE:0.5:144:1460"); - $ERROR = RRDs::error; - print "Error in RRD::create for disk $disk: $ERROR\n" if $ERROR; - } - my $Zeilen = `/usr/bin/iostat $disk | tail -2 | head -1`; - ($trash, $trash, $trash, $trash, $readsect, $writesect) = split(/\s+/,$Zeilen); - print "\nread:".$readsect."write:".$writesect."\n"; - if ($readsect && $writesect) { - RRDs::update ("$rrdlog/disk-".$array[$#array].".rrd", - "-t", "readsect:writesect", - "N:$readsect:$writesect"); - $ERROR = RRDs::error; - print "Error in RRD::update for disk $disk: $ERROR\n" if $ERROR; - } else {print "Error in RRD::update for disk: $disk no data available\n";} -} - -sub updateifdata { - my $interface = $_[0]; - if ( ! -e "$rrdlog/$interface.rrd") { - RRDs::create ("$rrdlog/$interface.rrd", "--step=300", - "DS:incoming:ABSOLUTE:600:0:12500000", - "DS:outgoing:ABSOLUTE:600:0:12500000", - "RRA:AVERAGE:0.5:1:576", - "RRA:AVERAGE:0.5:6:672", - "RRA:AVERAGE:0.5:24:732", - "RRA:AVERAGE:0.5:144:1460"); - $ERROR = RRDs::error; - print "Error in RRD::create for $interface: $ERROR\n" if $ERROR; - } - my $traffic = gettraffic ($interface); - RRDs::update ("$rrdlog/$interface.rrd", - "-t", "incoming:outgoing", - "N:$traffic"); - $ERROR = RRDs::error; - print "Error in RRD::update for $interface: $ERROR\n" if $ERROR; -} - -sub updatefwhitsdata { - my $portamount=0; - my $alertaktuell=0; - my $aktuell=0; - my $portaktuell=0; - my $skip=0; - if (! -e "$rrdlog/firewallhits.rrd"){ - RRDs::create ("$rrdlog/firewallhits.rrd", "--step=300", - "DS:amount:GAUGE:600:0:U", - "DS:portamount:GAUGE:600:0:U", - "RRA:AVERAGE:0.5:1:576", - "RRA:AVERAGE:0.5:6:672", - "RRA:AVERAGE:0.5:24:732", - "RRA:AVERAGE:0.5:144:1460"); - $ERROR = RRDs::error; - print "Error in RRD::create for cpu: $ERROR\n" if $ERROR; - } - system("logtailfwhits /var/log/messages /var/log/fwhits.messages.offset >/tmp/messages.fwhits"); - if (!(open (FILE,'/tmp/messages.fwhits'))) {$skip=1;} - $aktuell = 0; - if (!$skip) { - while () { - if (/kernel:.*(IN=.*)$/) {$aktuell++;} - } - close (FILE); - } - system("logtailfwhits /var/log/snort/alert /var/log/snort/fwhits.alert.offset >/tmp/snort.fwhits"); - if (!(open (FILE,'/tmp/snort.fwhits'))) {$skip=1;} - $alertaktuell = 0; - if (!$skip) { - while () { - if (/scan.*$/) {$alertaktuell++;} - } - close (FILE); - } - if (!(open (FILE,'/tmp/messages.fwhits'))) {$skip=1;} - $portaktuell = 0; - if (!$skip) { - while () { - if (/kernel:.*(Scan.*)$/) {$portaktuell++;} - } - close (FILE); - } - system("rm /tmp/messages.fwhits"); - system("rm /tmp/snort.fwhits"); - $portamount = $portaktuell + $alertaktuell; - chomp($portamount); - RRDs::update ("$rrdlog/firewallhits.rrd", - "N:$aktuell:$portamount"); - $ERROR = RRDs::error; - print "Error in RRD::update for Firewallhits: $ERROR\n" if $ERROR; -} - -# Creates and updates a link quality database -# ------------------------------------------- -sub updatelq { - if ( ! -e "$rrdlog/lq.rrd") { - RRDs::create ("$rrdlog/lq.rrd", "--step=300", - "DS:loss:GAUGE:600:0:100", - "DS:roundtrip:GAUGE:600:0:10000", - "RRA:AVERAGE:0.5:1:576", - "RRA:AVERAGE:0.5:6:672", - "RRA:AVERAGE:0.5:24:732", - "RRA:AVERAGE:0.5:144:1460"); - $ERROR = RRDs::error; - print "Error in RRD::create for link: $ERROR\n" if $ERROR; - } - my $packetloss=0; - my $roundtrip=0; - my $test=0; - #LQ_GATEWAY is the ip of your isp's public ip facing you - my $LQ_GATEWAY=`cat /var/ipfire/red/remote-ipaddress`; - chomp($LQ_GATEWAY); - my $NUMPINGS=5; - my $pingoutput = `/usr/bin/ping -w 10 -c $NUMPINGS -q $LQ_GATEWAY | tail -2`; - my @temp = split (/\/|\%|\s/, $pingoutput); - $packetloss = $temp[5]; - $roundtrip = $temp[17]; - print "Paketlos->".$packetloss."<-Roundtrip->".$roundtrip."<-\n"; - if ( $packetloss eq "100" ){ - my $pingoutput = `/usr/bin/ping -w 10 -c $NUMPINGS -q ping.ipfire.org | tail -2`; - my @temp = split (/\/|\%|\s/, $pingoutput); - $packetloss = $temp[5]; - $roundtrip = $temp[17]; - print "Paketlos->".$packetloss."<-Roundtrip->".$roundtrip."<-\n"; - } - RRDs::update ("$rrdlog/lq.rrd", "N:$packetloss:$roundtrip"); - $ERROR = RRDs::error; - print "Error in RRD::update for line quality: $ERROR\n" if $ERROR; -} - -sub updatehdddata -{ - my $disk = $_[0]; - my $standby; - my @array = split(/\//,$disk); - - if ( ! -e "$rrdlog/hddshutdown-".$array[$#array].".rrd"){ - # database did not exist -> create - RRDs::create ("$rrdlog/hddshutdown-".$array[$#array].".rrd", "--step=300", - "DS:standby:GAUGE:600:0:1", - "RRA:AVERAGE:0.5:1:576", - "RRA:AVERAGE:0.5:6:672", - "RRA:AVERAGE:0.5:24:732", - "RRA:AVERAGE:0.5:144:1460"); - $ERROR = RRDs::error; - print "Error in RRD::create for hddshutdown-".$array[$#array].": $ERROR\n" if $ERROR; - } - - if (-e "/tmp/hddshutdown-".$array[$#array]) {$standby = 1;} - else {$standby = 0;} - - RRDs::update ("$rrdlog/hddshutdown-".$array[$#array].".rrd", "-t", "standby", "N:$standby"); - $ERROR = RRDs::error; - print "Error in RRD::update for hddshutdown-".$array[$#array].": $ERROR\n" if $ERROR; - - if ( ! -e "$rrdlog/hddtemp-".$array[$#array].".rrd"){ - # database did not exist -> create - RRDs::create ("$rrdlog/hddtemp-".$array[$#array].".rrd", "--step=300", - "DS:temperature:GAUGE:600:0:100", - "RRA:AVERAGE:0.5:1:576", - "RRA:AVERAGE:0.5:6:672", - "RRA:AVERAGE:0.5:24:732", - "RRA:AVERAGE:0.5:144:1460"); - $ERROR = RRDs::error; - print "Error in RRD::create for hdd-".$array[$#array].": $ERROR\n" if $ERROR; - } - - # Temperaturlesen wÃrde die Platte aufwecken!!! - if (!$standby){ - $temp = 0; - my $hdd_output = ''; - my $smart_output = ''; - if ( -e "$path_smartctl" ){system("$path_smartctl -iHA -d ata /dev/$disk > /var/log/smartctl_out_hddtemp-$disk");} - if ( -e "/var/log/smartctl_out_hddtemp-".$array[$#array] ){ - $hdd_output = `cat /var/log/smartctl_out_hddtemp-$array[$#array] | grep Temperature_`; - my @t = split(/\s+/,$hdd_output); - $temp = $t[9]; - }else{$temp = 0;} - print "Temperature for ".$array[$#array]."->".$temp."<-\n"; - system("echo \"Temperature for $array[$#array] -> $temp <-\n\" >>/tmp/debug"); - # Nur ins RDD wenn nicht 0 (sonst klappt die min Anzeige nicht) - if ($temp){ - RRDs::update ("$rrdlog/hddtemp-".$array[$#array].".rrd", "-t", "temperature", "N:$temp"); - $ERROR = RRDs::error; - print "Error in RRD::update for hdd-".$array[$#array].": $ERROR\n" if $ERROR; - } - } -} - -sub updatembmondata -{ - if ( ! -e "$rrdlog/mbmon.rrd" ){ - # database did not exist -> create - - @args = ("$rrdlog/mbmon.rrd"); - push(@args, "--step=300"); - foreach $key ( sort(keys %mbmon_values) ){push(@args, "DS:$key:GAUGE:600:U:U");} - push(@args, "RRA:AVERAGE:0.5:1:576"); - push(@args, "RRA:AVERAGE:0.5:6:672"); - push(@args, "RRA:AVERAGE:0.5:24:732"); - push(@args, "RRA:AVERAGE:0.5:144:1460"); - - print("create ". join( ", ", @args)) if ( $dbg ); - RRDs::create (@args); - $ERROR = RRDs::error; - print("Error in RRD::create for mbmon: $ERROR\n") if $ERROR; - } - - my @ds; - my @val; - my $template; - - foreach $key ( sort(keys %mbmon_values) ){ - push(@ds, $key); - push(@val, $mbmon_values{$key}); - } - - $template = join(':', @ds); - $value = "N:".join(':', @val); - - print("update template = '$template'\n") if ( $dbg ); - print("update value = '$value'\n") if ( $dbg ); - - RRDs::update("$rrdlog/mbmon.rrd", "-t", $template, $value); - $ERROR = RRDs::error; - print("Error in RRD::update for mbmon: $ERROR\n") if $ERROR; -} - -## Update ipac logs -system ('/usr/sbin/fetchipac'); -sleep 8; - -### -### Squid Graphs -### -if ( -e "/var/log/squid/access.log") {system ("/usr/bin/squid-graph -o=/srv/web/ipfire/html/sgraph --tcp-only < /var/log/squid/access.log >/dev/null 2>&1");} - -### -### utf8 conversion -### -if ((${Lang::language} eq 'cs') || (${Lang::language} eq 'hu') || (${Lang::language} eq 'pl') || (${Lang::language} eq 'sk')) { - # Czech, Hungarian, Polish and Slovak character set - foreach my $key(keys %Lang::tr) {from_to($tr{$key}, "utf-8", "iso-8859-2");} -} elsif (${Lang::language} eq 'tr') { - # Turkish - foreach my $key(keys %Lang::tr) {from_to($tr{$key}, "utf-8", "iso-8859-9");} -} else { - foreach my $key(keys %Lang::tr) {from_to($tr{$key}, "utf-8", "iso-8859-1");} -} - -### -### System graphs -### -updatecpudata(); -updateloaddata(); -updatememdata(); - -### -### HDD graphs -### - - -my @disks = `kudzu -qps -c HD | grep device: | cut -d" " -f2 | sort | uniq`; -system("unlink /tmp/hddstatus && touch /tmp/hddstatus"); -print "\nFound following amount of disks:".@disks."\n"; -foreach (@disks){ - my $disk = $_; - chomp $disk; - print "Working on disk ".$disk.".\n"; - - my $status = ""; - my $diskstats = ""; - my $newdiskstats = ""; - my @array = split(/\//,$disk); - - $diskstats = `cat /tmp/hddstats-$array[$#array]`; - chomp $diskstats; - my $newdiskstats = `/usr/bin/iostat -d -t $disk | tail -2 | head -1 | awk '{ print \$5","\$6}'`; - chomp $newdiskstats; - my $status = `hdparm -C /dev/$disk | tail -1 | cut -d: -f2`; - chomp $status; - - if ($status !~/standby/ || $diskstats ne $newdiskstats){ - if (-e "/tmp/hddshutdown-".$array[$#array]){system("unlink /tmp/hddshutdown-".$array[$#array]);} - } - - if (-e "/tmp/hddshutdown-".$array[$#array]){$status = " standby\n";} - else{$status = " active\n";} - - open(DATEI, ">>/tmp/hddstatus") || die "Datei nicht gefunden"; - print DATEI $disk."-".$status; - close(DATEI); - - updatediskdata($disk); - updatehdddata($disk); - -} - -### -### Firewallhits -### -updatefwhitsdata(); - -### -### Link Quality -### -updatelq(); - -### -### Mbmon Data -### -updatembmondata(); - -### -### Network Graphs -### -@ipacsum = `/usr/sbin/ipacsum --exact -s 5m 2>/dev/null`; -if (@ipacsum) { - updateifdata ("GREEN"); - updateifdata ("RED"); - if ($settings{'CONFIG_TYPE'} =~ /^(2|4)$/ ) {updateifdata ("ORANGE");} - if ($settings{'CONFIG_TYPE'} =~ /^(3|4)$/ ) {updateifdata ("BLUE");} -} diff --git a/src/scripts/qosd b/src/scripts/qosd deleted file mode 100644 index 23e6678cf..000000000 --- a/src/scripts/qosd +++ /dev/null @@ -1,116 +0,0 @@ -#!/usr/bin/perl -w -use strict; - -########################################## -## -## DESCRIPTION -## -## The tc-graph daemon script: "tc-collector" -## Which is part of the ADSL-optimizer. -## -## The script will become a daemon and periodically collect data -## from the Linux traffic control system. The collected data is -## stored in some RRD-data files, which is created automatically by -## the script if they don't exist. -## -## GRAPHs -## -## How the RRD-data is displayed as graphs is not part of the -## tc-collector tool. But we recommend using the RRD-frontend 'ddraw'. -## We have included some 'ddraw' examples (which is hardcoded to use -## files from '/var/spool/rrdqueues'). -## -## drraw: http://web.taranis.org/drraw/ -## -## -## REQUIRES -## -## RRDtools Perl interface RRDs -## The "tc" command. -## -## -## AUTHOR -## Jesper Dangaard Brouer , d.16/4-2004 -## -## CHANGELOG -## 2004-04-16: Initial version. -## 2004-05-27: Daemon version. -## -## $Id: tc-collector.pl,v 1.12 2005/03/19 19:31:08 hawk Exp $ -########################################## - -# TODO: -# * Calc time used to parse, use to make time steps more precise -# * Device list support -# * Detecting the correct devices - -# Configuration options: -# -my $device = "$ARGV[0]"; -our $rrd_datadir = "/var/log/rrd/"; -our $event_datadir = $rrd_datadir; -our $STEP = 10; -our $tc_command = "/sbin/tc"; - -# A trick is to set the environment PERL5LIB to include $GRAPHDIR -# This is done by the init-script -# ($GRAPHDIR is obtained from /usr/local/etc/ADSL-optimizer.conf) -my $include_dir = '/var/ipfire/qos/bin'; - - -# Create the $rrd_datadir if it doesn't exists -if ( ! -d $rrd_datadir ) { - print "RRD-datadir not found, creating it: $rrd_datadir \n"; - my $status = system("mkdir $rrd_datadir"); - die "\nERROR cannot create \"$rrd_datadir\"\n" unless $status == 0; -} - -# use POSIX; -# -#POSIX::setsid() -# or die "Can't become a daemon: $!"; - -# The init scripts will do the right "daemon" thing... -# Become a daemon -print "Becoming a daemon...\n"; -my $pid = fork; -exit if $pid; -die "Couldn't fork: $!" unless defined($pid); - -my $time_to_die = 0; -sub signal_handler { - $time_to_die = 1; -} -# Trap signals -$SIG{INT} = $SIG{TERM} = $SIG{HUP} = \&signal_handler; -$SIG{PIPE} = 'IGNORE'; - -our %classes_data; -our %classes_info; -require "$include_dir/parse-func.pl"; -require "$include_dir/event-func.pl"; -require "$include_dir/RRD-func.pl"; - -until ($time_to_die) { - - #print "Parsing tc statistics on $device\n"; - my $res = parse_class($device); - if ( ! $res ) { - print " Error when parsing classes on $device\n"; - } - - #print "Updating RRD data-files\n"; - $res = update_rrds(); - #if ( $res ) { - # print " Error updating RRDs: \"$res\"\n"; - #} - - process_events(); - -# my $timestamp = time; -# print "$timestamp\n"; - - sleep($STEP); -} - -print "tc-collector daemon exiting ... bye bye!\n"; diff --git a/src/scripts/settime b/src/scripts/settime deleted file mode 100644 index cede5f8c1..000000000 --- a/src/scripts/settime +++ /dev/null @@ -1,68 +0,0 @@ -#!/bin/sh -# -# IPCop CGIs -# -# This file is part of the IPCop Project -# -# This code is distributed under the terms of the GPL -# -# (c) Eric Oberlander June 2002 -# (c) Eric Oberlander December 2002 - internationalisation added -# -# /usr/local/bin/settime - -ongreen=1 -green=$(cat /var/ipfire/ethernet/settings | grep GREEN_NETADDRESS) -if [ -z "$green" ]; then - : # no Green subnet -else - green=${green##*=}; green="${green%.*}.[0-9]" - if [ -n "$(cat /var/ipfire/time/settime.conf | grep $green)" ]; then - ongreen=0 # NTP on Green - fi -fi - -onorange=1 -orange=$(cat /var/ipfire/ethernet/settings | grep ORANGE_NETADDRESS) -if [ -z "$orange" ]; then - : # no Orange subnet -else - orange=${orange##*=}; orange="${orange%.*}.[0-9]" - if [ -n "$(cat /var/ipfire/time/settime.conf | grep $orange)" ]; then - onorange=0 # NTP on Orange - fi -fi - -# find out language -tlanguage=$(cat /var/ipfire/main/settings | grep LANGUAGE) -tlanguage=${tlanguage##*=} - -if [ -n "$1" ]; then - if [ -e /var/ipfire/red/active ] || [ "$ongreen" -eq 0 ] || [ "$onorange" -eq 0 ]; then - /usr/bin/ntpdate -su $1 $2 - ntpdatetest=$? - - if [ "$ntpdatetest" -eq 0 ]; then - case $tlanguage in - en ) date "+%X %Z on %d %B %Y" > /var/ipfire/time/lastset ; - logger -t ipfire "NTP synchronisation event" ;; - de ) date "+%X Uhr am %d.%m.%Y" > /var/ipfire/time/lastset ; - logger -t ipfire "NTP Synchronisierung" ;; - * ) date "+%X %Z, %Y-%m-%d" > /var/ipfire/time/lastset ; - logger -t ipfire "NTP synchronisation" ;; - esac - - /sbin/hwclock --systohc - rm -f /var/ipfire/time/settimenow - # reset counter variable - cp /var/ipfire/time/counter.conf /var/ipfire/time/counter - else - case $tlanguage in - de ) logger -t ipfire "ntpdate fehlerhaft" ;; - * ) logger -t ipfire "ntpdate error" ;; - esac - fi - fi -else - echo Missing parameter -fi diff --git a/src/scripts/timecheck b/src/scripts/timecheck deleted file mode 100644 index 9f7535826..000000000 --- a/src/scripts/timecheck +++ /dev/null @@ -1,35 +0,0 @@ -#!/bin/sh -# -# IPCop CGIs -# -# This file is part of the IPCop Project -# -# This code is distributed under the terms of the GPL -# -# (c) Eric Oberlander June 2002 -# -# /usr/local/bin/timecheck - -if [ -e /var/ipfire/time/enable ]; then - if [ $(cat /var/ipfire/time/settings | grep period) ] && [ -e /var/ipfire/time/counter ]; then - if [ $(cat /var/ipfire/time/counter) -gt 0 ]; then - echo $(($(cat /var/ipfire/time/counter)-5)) > /var/ipfire/time/counter - else - touch /var/ipfire/time/settimenow - rm -f /var/ipfire/time/counter - fi - else - # EAO added 2003-08-14 for v1.3.1 - # if settings are restored from a backup - # /var/ipfire/time/counter will not exist - if [ $(cat /var/ipfire/time/settings | grep periodic) ]; then - touch /var/ipfire/time/settimenow - fi - fi - - if [ -e /var/ipfire/time/settimenow ]; then - if [ -e /var/ipfire/time/settime.conf ]; then - /usr/local/bin/settime $(cat /var/ipfire/time/settime.conf) - fi - fi -fi diff --git a/src/scripts/vpn-watch b/src/scripts/vpn-watch old mode 100755 new mode 100644