From 5994e55937cbbb71b1c22ad829b77a1bcd8c3793 Mon Sep 17 00:00:00 2001 From: William Hubbs Date: Tue, 15 Nov 2011 17:06:10 -0600 Subject: [PATCH] Deprecate the network and staticroute scripts These scripts are not supported, and they have several major design issues such as not being able to stop, start or allow a dependency on a single interface. --- Makefile | 7 +------ README | 1 - README.newnet | 40 ---------------------------------------- init.d/Makefile | 14 ++++---------- init.d/network.in | 6 ++++++ init.d/staticroute.in | 5 +++++ runlevels/Makefile | 8 +++----- 7 files changed, 19 insertions(+), 62 deletions(-) delete mode 100644 README.newnet diff --git a/Makefile b/Makefile index 74cf483b..6263e7f2 100644 --- a/Makefile +++ b/Makefile @@ -4,12 +4,7 @@ include Makefile.inc -SUBDIR= conf.d etc init.d local.d man scripts sh src - -# Build our old net foo or not -ifeq (${MKOLDNET},yes) -SUBDIR+= net doc -endif +SUBDIR= conf.d doc etc init.d local.d man net scripts sh src # Build pkgconfig or not MKPKGCONFIG?= yes diff --git a/README b/README index 5f3745cc..646174e7 100644 --- a/README +++ b/README @@ -16,7 +16,6 @@ MKRCSYS=prefix MKSELINUX=yes MKTERMCAP=ncurses MKTERMCAP=termcap -MKOLDNET=yes PKG_PREFIX=/usr/pkg LOCAL_PREFIX=/usr/local PREFIX=/usr/local diff --git a/README.newnet b/README.newnet deleted file mode 100644 index 2e157e2b..00000000 --- a/README.newnet +++ /dev/null @@ -1,40 +0,0 @@ -The following applies only to the newnet stack, which is not presently -maintained in OpenRC. The oldnet stack is maintained instead. -- Robin H. Johnson , 2011/02/21 - -OpenRC Network Ideals ---------------------- - -The new style networking for OpenRC is very simplistic - provide a basic means -of configuring static interface address and routes whilst allowing the -possibility to run any command at any point. - -In a nutshell, init.d/network is a wrapper around ifconfig(8) and -init.d/staticroute is wrapper around route(8). - -In the Perfect World (TM) ifconfig should be able to configure everything -about the interface easily * . The BSD family almost get this right and Linux -epically fails. - -* Only static configuration, including link setup. -For dynamic, static, IPv4LL, arping and per ssid IPv4 setup dhcpcd-5.x -provides your needs. - -It fails because there are many tools to do the same job and often have -vastly different syntax where they could be similar. In other words, there -is no coherence. - -OpenRC-0.4.x and older (inc Gentoo baselayout-1) had a collection of scripts -for each tool and allowed a script per interface. Over the years, this design -has proven very hard to maintain as each user has their own idea of how -things should work. Also, there were (and still are) race conditions. - -So where do we go from here? -Well, it's possible to use the new network scripts using the tools -currently available. It's just harder as you have to know them and their -documentation can be lacking at times. -The correct end goal is a BSD style ifconfig tool. -I've started work on it, but the project has stalled somewhat. -It's display only right now and the source is not yet publicly available. -If you have the skills and share the vision then contact me privately and -we'll take it from there. diff --git a/init.d/Makefile b/init.d/Makefile index de8428ab..8351f3c5 100644 --- a/init.d/Makefile +++ b/init.d/Makefile @@ -4,15 +4,9 @@ SRCS= bootmisc.in fsck.in hostname.in local.in localmount.in netmount.in \ sysctl.in urandom.in ${SRCS-${OS}} BIN= ${OBJS} -# Build our old net foo or not -ifeq (${MKOLDNET},yes) -_OLDNET= net.lo -endif -_NET_LO= ${_OLDNET} - -INSTALLAFTER= _installafter_${_NET_LO} -CLEANFILES+= ${_NET_LO} -TARGETS+= ${_NET_LO} +INSTALLAFTER= _installafter_net.lo +CLEANFILES+= net.lo +TARGETS+= net.lo MK= ../mk include ${MK}/os.mk @@ -45,4 +39,4 @@ include ${MK}/scripts.mk _installafter_: realinstall _installafter_net.lo: realinstall - ${INSTALL} -m ${BINMODE} net.lo ${DESTDIR}/${INITDIR}/${NET_LO} + ${INSTALL} -m ${BINMODE} net.lo ${DESTDIR}/${INITDIR}/${NET_LO-${OS}} diff --git a/init.d/network.in b/init.d/network.in index bd683914..c9341291 100644 --- a/init.d/network.in +++ b/init.d/network.in @@ -219,6 +219,12 @@ start() eend $? fi + ewarn + ewarn "The $RC_SVCNAME script is deprecated and will be" + ewarn "removed in the future." + ewarn "Please use the net.* scripts to manage your network interfaces." + ewarn + einfo "Starting network" routeflush if [ "$RC_UNAME" = "Linux" ]; then diff --git a/init.d/staticroute.in b/init.d/staticroute.in index 213dddf6..294f890d 100644 --- a/init.d/staticroute.in +++ b/init.d/staticroute.in @@ -93,6 +93,11 @@ do_routes() start() { + ewarn + ewarn "The $RC_SVCNAME script is deprecated and will be" + ewarn "removed in the future." + ewarn "Please use the net.* scripts to manage your network interfaces." + ewarn do_routes "Adding" "add" } diff --git a/runlevels/Makefile b/runlevels/Makefile index f454950d..c1a9f096 100644 --- a/runlevels/Makefile +++ b/runlevels/Makefile @@ -1,5 +1,5 @@ -BOOT= bootmisc fsck hostname localmount network \ - root staticroute swap sysctl urandom ${BOOT-${OS}} +BOOT= bootmisc fsck hostname localmount \ + root swap sysctl urandom ${BOOT-${OS}} DEFAULT= local netmount SHUTDOWN= savecache ${SHUTDOWN-${OS}} SYSINIT= ${SYSINIT-${OS}} @@ -10,8 +10,6 @@ BOOTDIR= ${LEVELDIR}/boot DEFAULTDIR= ${LEVELDIR}/default SHUTDOWNDIR= ${LEVELDIR}/shutdown -INITDIR= ../init.d - MK= ../mk include ${MK}/sys.mk include ${MK}/os.mk @@ -28,7 +26,7 @@ BOOT-FreeBSD= hostid net.lo0 newsyslog savecore syslogd # FreeBSD specific stuff BOOT-FreeBSD+= adjkerntz dumpon syscons -BOOT-Linux= hwclock keymaps modules mtab procfs termencoding +BOOT-Linux= hwclock keymaps modules mtab net.lo procfs termencoding SHUTDOWN-Linux= killprocs mount-ro SYSINIT-Linux= devfs dmesg