From 59de0b00db1c180965df666517765ced67509787 Mon Sep 17 00:00:00 2001 From: ms Date: Tue, 10 Apr 2007 09:32:20 +0000 Subject: [PATCH] Padlock-Modul aktiviert fuer VIA Epia Boards FAT Dateisystem fuer "Europa" angepasst Netzwerkerkennung durchgearbeitet git-svn-id: http://svn.ipfire.org/svn/ipfire/trunk@485 ea5c0bd1-69bd-2848-81d8-4f18e57aeed8 --- config/kernel/kernel.config.i586 | 7 ++++--- config/kernel/kernel.config.i586.smp | 7 ++++--- config/rootfiles/common/sysfsutils | 20 ++++++++++++++++++++ lfs/configroot | 2 +- lfs/samba | 8 ++++---- lfs/stage2 | 2 +- lfs/udev | 1 + make.sh | 6 +++--- src/initscripts/init.d/net/red/pppoe | 6 +++++- src/install+setup/install/main.c | 5 +++++ src/install+setup/install/probenic.sh | 21 +++++++++++++++++---- src/install+setup/libsmooth/netstuff.c | 5 ++--- src/install+setup/setup/networking.c | 9 +++------ 13 files changed, 70 insertions(+), 29 deletions(-) diff --git a/config/kernel/kernel.config.i586 b/config/kernel/kernel.config.i586 index 0e52911233..46f71153f5 100644 --- a/config/kernel/kernel.config.i586 +++ b/config/kernel/kernel.config.i586 @@ -1,7 +1,7 @@ # # Automatically generated make config: don't edit # Linux kernel version: 2.6.16.42-ipfire -# Sun Mar 25 17:52:03 2007 +# Sat Apr 7 18:35:00 2007 # CONFIG_X86_32=y CONFIG_SEMAPHORE_SLEEPERS=y @@ -1789,7 +1789,7 @@ CONFIG_UDF_NLS=y CONFIG_FAT_FS=m # CONFIG_MSDOS_FS is not set CONFIG_VFAT_FS=m -CONFIG_FAT_DEFAULT_CODEPAGE=437 +CONFIG_FAT_DEFAULT_CODEPAGE=850 CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1" # CONFIG_NTFS_FS is not set @@ -1977,7 +1977,8 @@ CONFIG_CRYPTO_DEFLATE=y # # Hardware crypto devices # -# CONFIG_CRYPTO_DEV_PADLOCK is not set +CONFIG_CRYPTO_DEV_PADLOCK=m +CONFIG_CRYPTO_DEV_PADLOCK_AES=y # # Library routines diff --git a/config/kernel/kernel.config.i586.smp b/config/kernel/kernel.config.i586.smp index cbd64b06f3..0e392b774e 100644 --- a/config/kernel/kernel.config.i586.smp +++ b/config/kernel/kernel.config.i586.smp @@ -1,7 +1,7 @@ # # Automatically generated make config: don't edit # Linux kernel version: 2.6.16.42-ipfire -# Sun Mar 25 17:52:32 2007 +# Sat Apr 7 18:35:28 2007 # CONFIG_X86_32=y CONFIG_SEMAPHORE_SLEEPERS=y @@ -1792,7 +1792,7 @@ CONFIG_UDF_NLS=y CONFIG_FAT_FS=m # CONFIG_MSDOS_FS is not set CONFIG_VFAT_FS=m -CONFIG_FAT_DEFAULT_CODEPAGE=437 +CONFIG_FAT_DEFAULT_CODEPAGE=850 CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1" # CONFIG_NTFS_FS is not set @@ -1982,7 +1982,8 @@ CONFIG_CRYPTO_DEFLATE=y # # Hardware crypto devices # -# CONFIG_CRYPTO_DEV_PADLOCK is not set +CONFIG_CRYPTO_DEV_PADLOCK=m +CONFIG_CRYPTO_DEV_PADLOCK_AES=y # # Library routines diff --git a/config/rootfiles/common/sysfsutils b/config/rootfiles/common/sysfsutils index ecf80d74b9..76e912e4e4 100644 --- a/config/rootfiles/common/sysfsutils +++ b/config/rootfiles/common/sysfsutils @@ -13,3 +13,23 @@ #opt/i586-uClibc/usr/include/sysfs #opt/i586-uClibc/usr/include/sysfs/dlist.h #opt/i586-uClibc/usr/include/sysfs/libsysfs.h +#bin/dlist_test +#bin/get_bus_devices_list +#bin/get_class_dev +#bin/get_classdev_parent +#bin/get_device +#bin/get_driver +#bin/systool +#bin/testlibsysfs +#bin/write_attr +#lib/libsysfs.a +#lib/libsysfs.la +lib/libsysfs.so +lib/libsysfs.so.1 +lib/libsysfs.so.1.0.3 +#man +#man/man1 +#man/man1/systool.1 +#usr/include/sysfs +#usr/include/sysfs/dlist.h +#usr/include/sysfs/libsysfs.h diff --git a/lfs/configroot b/lfs/configroot index 6bceb28bce..312c1fa158 100644 --- a/lfs/configroot +++ b/lfs/configroot @@ -64,7 +64,7 @@ $(TARGET) : # Touch empty files for i in auth/users backup/include.user backup/exclude.user \ certs/index.txt ddns/config ddns/noipsettings ddns/settings ddns/ipcache dhcp/settings \ - dhcp/fixleases dhcp/advoptions dmzholes/config ethernet/aliases ethernet/settings \ + dhcp/fixleases dhcp/advoptions dmzholes/config ethernet/aliases ethernet/settings ethernet/known_nics ethernet/scanned_nics \ extrahd/scan extrahd/devices extrahd/partitions extrahd/settings fwlogs/ipsettings fwlogs/portsettings\ isdn/settings main/hosts main/settings optionsfw/settings outgoing/settings outgoing/rules pakfire/settings \ portfw/config ppp/settings-1 ppp/settings-2 ppp/settings-3 ppp/settings-4 \ diff --git a/lfs/samba b/lfs/samba index 7ad3e0acbf..df99866f4e 100644 --- a/lfs/samba +++ b/lfs/samba @@ -100,7 +100,7 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) cd $(DIR_APP)/source && install -v -m644 ../examples/smb.conf.default /var/ipfire/samba cp -f $(DIR_CONF)/xinetd/swat /var/ipfire/xinetd/xinetd.d/ -mkdir -p /var/ipfire/samba - cp -vf $(DIR_SRC)/config/samba/* /var/ipfire/samba/ + cp -vrf $(DIR_SRC)/config/samba/* /var/ipfire/samba/ chown nobody:nobody -R /var/ipfire/samba/ cp -vfp /var/ipfire/samba/default.global /var/ipfire/samba/global cp -vfp /var/ipfire/samba/default.pdc /var/ipfire/samba/pdc @@ -108,8 +108,8 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) cp -vfp /var/ipfire/samba/default.shares /var/ipfire/samba/shares cp -vfp /var/ipfire/samba/default.printer /var/ipfire/samba/printer cat /var/ipfire/samba/global /var/ipfire/samba/shares > /var/ipfire/samba/smb.conf - useradd -c 'Samba User' -s /bin/false - groupadd sambauser - groupadd sambawks + #useradd -c 'Samba User' -s /bin/false + #groupadd sambauser + #groupadd sambawks @rm -rf $(DIR_APP) @$(POSTBUILD) diff --git a/lfs/stage2 b/lfs/stage2 index 49747d51aa..2e132f17e5 100644 --- a/lfs/stage2 +++ b/lfs/stage2 @@ -52,7 +52,7 @@ $(TARGET) : # Create directories -mkdir -pv /{bin,boot,etc/opt,etc/modprobe.d,home,lib,mnt,opt} - -mkdir -pv /{media/{floppy,cdrom},sbin,srv,var} + -mkdir -pv /{media/{floppy,cdrom,usbkey},sbin,srv,var} -install -dv -m 0750 /root -install -dv -m 1777 /tmp /var/tmp -mkdir -pv /usr/{,local/}{bin,include,lib,sbin,src} diff --git a/lfs/udev b/lfs/udev index 2deb67eb7a..91500d09ee 100644 --- a/lfs/udev +++ b/lfs/udev @@ -111,6 +111,7 @@ else extras/firmware extras/floppy extras/path_id \ extras/scsi_id extras/usb_id extras/volume_id" install cd $(DIR_APP) && cp -v udev-config-6.2/[0-9]* /etc/udev/rules.d/ + touch /etc/udev/rules.d/30-persistent-network.rules endif @rm -rf $(DIR_APP) @$(POSTBUILD) diff --git a/make.sh b/make.sh index 4af9a2e48d..ba200c6602 100644 --- a/make.sh +++ b/make.sh @@ -603,9 +603,9 @@ buildpackages() { beautify message DONE # Create images for install - if [ ! -f ipfire-$VERSION.i586-devel.iso ]; then - ipfiremake cdrom ED=devel - fi + #if [ ! -f $BASEDIR/ipfire-$VERSION.i586-devel.iso ]; then + # ipfiremake cdrom ED=devel + #fi ipfiremake cdrom ED=full # Check if there is a loop device for building in virtual environments diff --git a/src/initscripts/init.d/net/red/pppoe b/src/initscripts/init.d/net/red/pppoe index e369501baf..dff50a20a8 100644 --- a/src/initscripts/init.d/net/red/pppoe +++ b/src/initscripts/init.d/net/red/pppoe @@ -63,7 +63,9 @@ case "${2}" in fi $PPPCOMMAND "${PPPOECOMMAND}" $ARGS $DEMAND >/dev/null 2>&1 + PID=$$ evaluate_retval + echo $PID > /var/run/ppp-ipfire.pid else modprobe pppoe @@ -100,7 +102,9 @@ case "${2}" in fi $PPPCOMMAND $DEMAND >/dev/null 2>&1 + PID=$$ evaluate_retval + echo $PID > /var/run/ppp-ipfire.pid fi ;; @@ -109,7 +113,7 @@ case "${2}" in boot_mesg "Bringing down the PPPoE interface on ${1}..." modprobe -r pppoe >/dev/null 2>&1 - killall pppd + kill $(cat /var/run/pppd-ipfire.pid) sleep 2 ip addr del 1.1.1.1/24 broadcast 1.1.1.255 dev ${1} diff --git a/src/install+setup/install/main.c b/src/install+setup/install/main.c index f988a608bb..cb04955073 100644 --- a/src/install+setup/install/main.c +++ b/src/install+setup/install/main.c @@ -175,6 +175,7 @@ int main(int argc, char *argv[]) // Starting hardware detection runcommandwithstatus("/bin/probehw.sh", ctr[TR_PROBING_HARDWARE]); + runcommandwithstatus("/bin/probenic.sh install", ctr[TR_PROBING_HARDWARE]); /* CDROM INSTALL */ if (installtype == CDROM_INSTALL) { @@ -617,8 +618,12 @@ EXIT: fclose(flog); if (!unattended) { + // Copy our scanned nics to the disk and lock because scan doesn't work in chroot + system("touch /harddisk/var/ipfire/ethernet/scan_lock"); + system("cp -f /tmp/scanned_nics /harddisk/var/ipfire/ethernet/scanned_nics"); if (system("/sbin/chroot /harddisk /usr/local/sbin/setup /dev/tty2 INSTALL")) printf("Unable to run setup.\n"); + system("rm -f /harddisk/var/ipfire/ethernet/scan_lock"); } if (system("/bin/umount /harddisk/proc")) diff --git a/src/install+setup/install/probenic.sh b/src/install+setup/install/probenic.sh index 9f6173e4ab..e3de8e6586 100644 --- a/src/install+setup/install/probenic.sh +++ b/src/install+setup/install/probenic.sh @@ -1,6 +1,19 @@ #!/bin/sh -hwinfo --netcard | egrep "Model|HW Address" | \ - awk -F": " '{ print $2 }' | sed -e '/..:..:..:..:..:../a\\' -e "s/$/\;/g" | \ - tr "\n" "XX" | sed -e "s/XX/\n/g" -e "s/\;X/\;/g" | \ - sort > /var/ipfire/ethernet/scanned_nics 2>/dev/null +case "$1" in + install) + hwinfo --netcard | egrep "Model|HW Address" | \ + awk -F": " '{ print $2 }' | sed -e '/..:..:..:..:..:../a\\' | sed -e "s/$/\;/g" | \ + tr "\n" "XX" | sed -e "s/XX/\n/g" | sed -e "s/\;X/\;/g" | \ + sort > /tmp/scanned_nics 2>/dev/null + ;; + "") + if [ ! -e /var/ipfire/ethernet/scan_lock ]; then + hwinfo --netcard | egrep "Model|HW Address" | \ + awk -F": " '{ print $2 }' | sed -e '/..:..:..:..:..:../a\\' -e "s/$/\;/g" | \ + tr "\n" "XX" | sed -e "s/XX/\n/g" -e "s/\;X/\;/g" | \ + sort > /var/ipfire/ethernet/scanned_nics 2>/dev/null + fi + ;; +esac +exit 0 diff --git a/src/install+setup/libsmooth/netstuff.c b/src/install+setup/libsmooth/netstuff.c index 596e6b9bb4..6e0897c21a 100644 --- a/src/install+setup/libsmooth/netstuff.c +++ b/src/install+setup/libsmooth/netstuff.c @@ -409,12 +409,11 @@ int nicmenu(char *colour) mysystem("/bin/probenic.sh"); // Read the nics we already use - if( (fp = fopen(KNOWN_NICS, "r")) == NULL ) + if((fp = fopen(KNOWN_NICS, "r")) == NULL) { fprintf(flog,"Couldn't open " KNOWN_NICS); return 1; } - while (fgets(temp_line, STRING_SIZE, fp) != NULL) { strcpy(knics[kcount].description, strtok(temp_line,";")); @@ -495,7 +494,7 @@ int nicmenu(char *colour) return 0; } else { // We have to add here that you can manually add a device - newtWinMessage("NetcardMenu", ctr[TR_OK], "Es wurden leider keine freien Netzwerkkarten fuer die Schnittstelle \"%s\" in ihrem System gefunden.", colour); + errorbox("Es wurden leider keine freien Netzwerkkarten fuer die Schnittstelle in ihrem System gefunden."); return 1; } } diff --git a/src/install+setup/setup/networking.c b/src/install+setup/setup/networking.c index 8b9bcae8cd..ef5deb2c73 100644 --- a/src/install+setup/setup/networking.c +++ b/src/install+setup/setup/networking.c @@ -379,7 +379,7 @@ int changedrivers(void) char temp[STRING_SIZE]; int configtype; int green = 0, red = 0, blue = 0, orange = 0; - + if (!(readkeyvalues(kv, CONFIG_ROOT "/ethernet/settings"))) { freekeyvalues(kv); @@ -387,12 +387,9 @@ int changedrivers(void) return 0; } - strcpy(temp, "0"); findkey(kv, "CONFIG_TYPE", temp); - configtype = atol(temp); - runcommandwithstatus("/etc/rc.d/init.d/network stop red blue orange", ctr[TR_PUSHING_NON_LOCAL_NETWORK_DOWN]); - + if (configtype == 0) { green = 1; } else if (configtype == 1) @@ -408,7 +405,7 @@ int changedrivers(void) else if (configtype == 6) { green = 1; red = 1; blue = 1; } else if (configtype == 7) - { green = 1; red = 1; blue = 1; orange = 1;} + { green = 1; red = 1; blue = 1; orange = 1; } if (green && !cardassigned("green")) nicmenu("green"); -- 2.39.2