diff options
Diffstat (limited to 'sys-apps/busybox')
-rw-r--r-- | sys-apps/busybox/Manifest | 4 | ||||
-rw-r--r-- | sys-apps/busybox/busybox-1.36.1-r2.ebuild | 377 | ||||
-rw-r--r-- | sys-apps/busybox/busybox-9999.ebuild | 1 | ||||
-rw-r--r-- | sys-apps/busybox/files/busybox-1.36.1-kernel-6.8.patch | 53 |
4 files changed, 434 insertions, 1 deletions
diff --git a/sys-apps/busybox/Manifest b/sys-apps/busybox/Manifest index 06a1a4106948..3c06d38072c3 100644 --- a/sys-apps/busybox/Manifest +++ b/sys-apps/busybox/Manifest @@ -1,6 +1,7 @@ AUX busybox-1.26.2-bb.patch 2416 BLAKE2B 2e227c11b0fd5558bfdb91a2d8bf3fd73e348e7efff9ecc6820e9ecd92047ffe4e94fe8f2aa864db87a3f081c2e3ff599546563fff83c78fc36a44fafc559de6 SHA512 cb767a613ede504a7b1a87da3270992ffa44d3b6f76eebefceffc8a5a49119a99333c482420efab9d1e5a92a26280376c7e9ec62fcb2193d9172f4e7bc19f50e AUX busybox-1.34.1-skip-selinux-search.patch 724 BLAKE2B 068334c468bb9c2199311be836f38264df4c6fc12a410119f989e210a27ea9561190f554c17b8d29fca4b83fc2016e1211edc4b1ca7d127449381291720946f1 SHA512 bc6eb9e8cbc21e8e00f696505d88ad3c7be5a3e4f7414a2dc4c8fe98088e7602f44b1d5b58b13ae85675b635be23bee13db800b6ab639babf89b306669980b43 AUX busybox-1.36.0-fortify-source-3-fixdep.patch 1120 BLAKE2B 1064e3e57dddd2a12509a96a57f0e7fe78968405f53f005ff6a466da4531d1d93045c9397e86e3abdd20e850742a4803ab309c8f7597df972f7821343c26431d SHA512 c987935d5ca1ff5567235f4d2a7ecc6a59fc0aeab8d429413165ac37e344dff243ba40459a5d99e9f02fc7476fa04b9f9ac4201b62fa321ec2e7a9a165188308 +AUX busybox-1.36.1-kernel-6.8.patch 1768 BLAKE2B 6829a3aaeb128a47cc5a24cd3825a667aaaa9b0e8da53ce75f82d43c873f12c1962f06c7a84e5256c82c9bd0ac9b0f4d40f5276747defc759dcd114bb4148e3e SHA512 c99fb248933df4d2c9aea09b7f5adaa99ef48316d67ebbd2e85909e48c6e6776ac3bd972e93b248e79a2a17b04bab82e8cae6f7eb58a673e9fe88a1c09a0fad9 AUX crond.confd 55 BLAKE2B 23e5530472b9ea09177b8e5ea944528a0ff9ba62a8b434a547da16b2e8721c8a1500405b69af8840be3a3b3d86d2d3b7bd1fd5a27a34de874ca44caf961d5cee SHA512 10a3c88ecf7ccf0c1e0581c78433846135ee8b1092d07082e745d5371108194871c7502b4c58ad430e065c25441fea7ba0e73268c95df13cd6f8e9146ef312d7 AUX crond.initd 253 BLAKE2B 8fc898a5127eb114417c04d8b392237f8628673138bb3ce420038f58caea28c43ceb1433f05cdd238999f9faf8b22e74d540521223de31ef31f224a5a2233f93 SHA512 312e308010434200d53baf9a362c8372f48661394a7d7643e14dbbe8c8d579f43f5e38714f55ccc4ddb084f9a06804adde0acbf2a4d2bc69c8e39b91aa716bdd AUX ginit.c 3097 BLAKE2B 77a9382dfa5dabc7541fab85fe211760604c757c3f2c5e49556d0ae9e82239833d21eb8954f595ebf814925d3508a5016701344985c6ef15e6f3d23ea675f646 SHA512 8bf70f13db0fbeecedf9a9f862c5391c0d8b7aa3ddd2ec85cda9b360c3117a01e32b01017b8c30197f587e521ba360ff70d1caf8d0f69d5c3a27f37ecc252e7c @@ -19,5 +20,6 @@ AUX watchdog.confd 232 BLAKE2B 14ff3813297bc987e98bf3cabee2e7b150e23d8aa9f016303 AUX watchdog.initd 219 BLAKE2B 3726fec4551962d6e20859c52e18582fbf127e2fc2807379afe9d490ad32b19a6d10d456155fdeb0468c67816f061b1cac166db7f104dbadadf0d175082efdb4 SHA512 d329fb72ce078a95a1fb77b72321dee56d19c76b45cb78a7a57a46d9fa385b982a114be49dd8696c2d4fc2b2dd90a17ee728ef2938172cc2f8b12b5a9ebd62f5 DIST busybox-1.36.1.tar.bz2 2525473 BLAKE2B e515825cb3ab1c520e16b9c2512e9fc72947366a72a0466bff59b507fdffbc78fc9d16b44a26116175fc7a429d849ad944b1bc379d36c6d3a0eb20969997336e SHA512 8c0c754c9ae04b5e6b23596283a7d3a4ef96225fe179f92d6f6a99c69c0caa95b1aa56c267f52d7c807f6cc69e1f0b7dd29a8ac624098f601738f8c0c57980d4 EBUILD busybox-1.36.1-r1.ebuild 10681 BLAKE2B 9e56637f6098a139e7a789bb5646b63588dad38c33f3f2eb3b493a8a20adcdaa95120a5282dcd1a4faa2dd419768f440e2e93c13e6a2e55a454e055a287a0d38 SHA512 980e5449cbcad5c74001fb3ac11c5b5d636a459cf4e9f2ae6f4f92a05cae6c8add5e7c63f09b4d6e9922aa465bff0cbaddfeaa9f70f852f6c83667f59147bacc -EBUILD busybox-9999.ebuild 10689 BLAKE2B f3a4a3b986a946a737087b8741abeeb71c5765d641a5b35c4b14161232d7e0536f8c570b89f3a332e3fcee528cb3f21ad59df2389d712470281880241054900a SHA512 6ebf2660185eb4e6d8720e24601449ea923cc97a904b6a173899c454d19548adb4cfb67a98cb6290c445668ae8777dc0dbc12cd36ef0e428c799e0a2a454d425 +EBUILD busybox-1.36.1-r2.ebuild 10734 BLAKE2B 89dd7e6c1f513c6f6f21529336fd350b974b7c5b9efbc796fa15fdaed837844887682c5c07c5fd2307ca9c21671cb2a8d599cf9c021ffc9e50a095200cffc663 SHA512 d4dd190df22083b3aa1d2d1ce3f27f1b3ed7321170511383342771537024406563b7327bd9924bdc3c6ed0d7c609c0cc24c07bb116ce205a3028443c699c1ff1 +EBUILD busybox-9999.ebuild 10734 BLAKE2B 89dd7e6c1f513c6f6f21529336fd350b974b7c5b9efbc796fa15fdaed837844887682c5c07c5fd2307ca9c21671cb2a8d599cf9c021ffc9e50a095200cffc663 SHA512 d4dd190df22083b3aa1d2d1ce3f27f1b3ed7321170511383342771537024406563b7327bd9924bdc3c6ed0d7c609c0cc24c07bb116ce205a3028443c699c1ff1 MISC metadata.xml 873 BLAKE2B d9c3725e1c3587d497894761d9eda08b670522d5c1a5518ea879cb5c9f222519005d28a36d6dea0b34d4bf4a2352e54aa151177f98ac730ce5b83e87ae4d35a2 SHA512 4c74f718046b41fbcf0111c797d6cdfa1f647914bfa5ff9aaedd6844ba1367722f225ed8ac17717d7b44c5ddc3b450e130da46cc0f6e21501b66cfd267a8f9ad diff --git a/sys-apps/busybox/busybox-1.36.1-r2.ebuild b/sys-apps/busybox/busybox-1.36.1-r2.ebuild new file mode 100644 index 000000000000..74082ac77ae5 --- /dev/null +++ b/sys-apps/busybox/busybox-1.36.1-r2.ebuild @@ -0,0 +1,377 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# See `man savedconfig.eclass` for info on how to use USE=savedconfig. + +EAPI=8 + +inherit flag-o-matic readme.gentoo-r1 savedconfig toolchain-funcs + +DESCRIPTION="Utilities for rescue and embedded systems" +HOMEPAGE="https://www.busybox.net/" +if [[ ${PV} == "9999" ]] ; then + MY_P="${P}" + EGIT_REPO_URI="https://git.busybox.net/busybox" + inherit git-r3 +else + MY_P="${PN}-${PV/_/-}" + SRC_URI="https://www.busybox.net/downloads/${MY_P}.tar.bz2" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux" +fi +S="${WORKDIR}/${MY_P}" + +LICENSE="GPL-2" # GPL-2 only +SLOT="0" +IUSE="debug livecd make-symlinks math mdev pam selinux sep-usr static syslog systemd" +REQUIRED_USE="pam? ( !static )" +RESTRICT="test" + +# TODO: Could make pkgconfig conditional on selinux? bug #782829 +RDEPEND=" + !static? ( + virtual/libc + virtual/libcrypt:= + selinux? ( sys-libs/libselinux ) + ) + pam? ( sys-libs/pam ) +" +DEPEND="${RDEPEND} + static? ( + virtual/libcrypt[static-libs] + selinux? ( sys-libs/libselinux[static-libs(+)] ) + ) + sys-kernel/linux-headers" +BDEPEND="virtual/pkgconfig" + +DISABLE_AUTOFORMATTING=yes +DOC_CONTENTS=' +If you want a smaller executable, add `-Oz` to your busybox `CFLAGS`.' + +busybox_config_option() { + local flag=$1 ; shift + if [[ ${flag} != [yn] && ${flag} != \"* ]] ; then + busybox_config_option $(usex ${flag} y n) "$@" + return + fi + local expr + while [[ $# -gt 0 ]] ; do + case ${flag} in + y) expr="s:.*\<CONFIG_$1\>.*set:CONFIG_$1=y:g" ;; + n) expr="s:CONFIG_$1=y:# CONFIG_$1 is not set:g" ;; + *) expr="s:.*\<CONFIG_$1\>.*:CONFIG_$1=${flag}:g" ;; + esac + sed -i -e "${expr}" .config || die + einfo "$(grep "CONFIG_$1[= ]" .config || echo "Could not find CONFIG_$1 ...")" + shift + done +} + +busybox_config_enabled() { + local val=$(sed -n "/^CONFIG_$1=/s:^[^=]*=::p" .config) + case ${val} in + "") return 1 ;; + y) return 0 ;; + *) echo "${val}" | sed -r 's:^"(.*)"$:\1:' ;; + esac +} + +# patches go here! +PATCHES=( + "${FILESDIR}"/${PN}-1.26.2-bb.patch + "${FILESDIR}"/${PN}-1.34.1-skip-selinux-search.patch + + "${FILESDIR}"/${PN}-1.36.0-fortify-source-3-fixdep.patch + "${FILESDIR}"/${PN}-1.36.1-kernel-6.8.patch + + # "${FILESDIR}"/${P}-*.patch +) + +src_prepare() { + default + unset KBUILD_OUTPUT #88088 + append-flags -fno-strict-aliasing #310413 + use ppc64 && append-flags -mminimal-toc #130943 + + cp "${FILESDIR}"/ginit.c init/ || die + + # flag cleanup + sed -i -r \ + -e 's:[[:space:]]?-(Werror|Os|Oz|falign-(functions|jumps|loops|labels)=1|fomit-frame-pointer)\>::g' \ + Makefile.flags || die + sed -i \ + -e "/^CROSS_COMPILE/s:=.*:= ${CHOST}-:" \ + -e "/^AR\>/s:=.*:= $(tc-getAR):" \ + -e "/^CC\>/s:=.*:= $(tc-getCC):" \ + -e "/^HOSTCC/s:=.*:= $(tc-getBUILD_CC):" \ + -e "/^PKG_CONFIG\>/s:=.*:= $(tc-getPKG_CONFIG):" \ + Makefile || die + sed -i \ + -e 's:-static-libgcc::' \ + Makefile.flags || die + + # Print all link lines too + sed -i -e 's:debug=false:debug=true:' scripts/trylink || die +} + +src_configure() { + # check for a busybox config before making one of our own. + # if one exist lets return and use it. + + restore_config .config + if [ -f .config ]; then + yes "" | emake -j1 -s oldconfig >/dev/null + return 0 + else + ewarn "Could not locate user configfile, so we will save a default one" + fi + + # setting SKIP_SELINUX skips searching for selinux at this stage. We don't + # need to search now in case we end up not needing it after all. + # setup the config file + emake -j1 -s allyesconfig SKIP_SELINUX=$(usex selinux n y) >/dev/null #620918 + # nommu forces a bunch of things off which we want on #387555 + busybox_config_option n NOMMU + sed -i '/^#/d' .config + yes "" | emake -j1 -s oldconfig SKIP_SELINUX=$(usex selinux n y) >/dev/null #620918 + + # now turn off stuff we really don't want + busybox_config_option n DMALLOC + busybox_config_option n FEATURE_2_4_MODULES #607548 + busybox_config_option n FEATURE_SUID_CONFIG + busybox_config_option n BUILD_AT_ONCE + busybox_config_option n BUILD_LIBBUSYBOX + busybox_config_option n FEATURE_CLEAN_UP + busybox_config_option n MONOTONIC_SYSCALL + busybox_config_option n USE_PORTABLE_CODE + busybox_config_option n WERROR + # CONFIG_MODPROBE_SMALL=y disables depmod.c and uses a smaller one that + # does not support -b. Setting this to no creates slightly larger and + # slightly more useful modutils + busybox_config_option n MODPROBE_SMALL #472464 + # triming the BSS size may be dangerous + busybox_config_option n FEATURE_USE_BSS_TAIL + + # These cause trouble with musl. + if use elibc_musl; then + busybox_config_option n FEATURE_UTMP + busybox_config_option n EXTRA_COMPAT + busybox_config_option n FEATURE_VI_REGEX_SEARCH + fi + + # Disable standalone shell mode when using make-symlinks, else Busybox calls its + # applets by default without looking up in PATH. + # This also enables users to disable a builtin by deleting the corresponding symlink. + if use make-symlinks; then + busybox_config_option n FEATURE_PREFER_APPLETS + busybox_config_option n FEATURE_SH_STANDALONE + fi + + # If these are not set and we are using a busybox setup + # all calls to system() will fail. + busybox_config_option y ASH + busybox_config_option y SH_IS_ASH + busybox_config_option n HUSH + busybox_config_option n SH_IS_HUSH + + busybox_config_option '"/run"' PID_FILE_PATH + busybox_config_option '"/run/ifstate"' IFUPDOWN_IFSTATE_PATH + + busybox_config_option pam PAM + busybox_config_option static STATIC + busybox_config_option syslog {K,SYS}LOGD LOGGER + busybox_config_option systemd FEATURE_SYSTEMD + busybox_config_option math FEATURE_AWK_LIBM + + # all the debug options are compiler related, so punt them + busybox_config_option n DEBUG_SANITIZE + busybox_config_option n DEBUG + busybox_config_option y NO_DEBUG_LIB + busybox_config_option n DMALLOC + busybox_config_option n EFENCE + busybox_config_option $(usex debug y n) TFTP_DEBUG + + busybox_config_option selinux SELINUX + + # this opt only controls mounting with <linux-2.6.23 + busybox_config_option n FEATURE_MOUNT_NFS + + # glibc-2.26 and later does not ship RPC implientation + busybox_config_option n FEATURE_HAVE_RPC + busybox_config_option n FEATURE_INETD_RPC + + # default a bunch of uncommon options to off + local opt + for opt in \ + ADD_SHELL \ + BEEP BOOTCHARTD \ + CRONTAB \ + DC DEVFSD DNSD DPKG{,_DEB} \ + FAKEIDENTD FBSPLASH FOLD FSCK_MINIX FTP{GET,PUT} \ + FEATURE_DEVFS \ + HOSTID HUSH \ + INETD INOTIFYD IPCALC \ + LOCALE_SUPPORT LOGNAME LPD \ + MAKEMIME MKFS_MINIX MSH \ + OD \ + RDEV READPROFILE REFORMIME REMOVE_SHELL RFKILL RUN_PARTS RUNSV{,DIR} \ + SLATTACH SMEMCAP SULOGIN SV{,LOGD} \ + TASKSET TCPSVD \ + RPM RPM2CPIO \ + UDPSVD UUDECODE UUENCODE + do + busybox_config_option n ${opt} + done + + emake -j1 oldconfig > /dev/null +} + +src_compile() { + unset KBUILD_OUTPUT #88088 + export SKIP_STRIP=y + + emake V=1 busybox + + # bug #701512 + emake V=1 doc +} + +src_install() { + unset KBUILD_OUTPUT #88088 + save_config .config + + into / + dodir /bin + if use sep-usr ; then + # install /ginit to take care of mounting stuff + exeinto / + newexe busybox_unstripped ginit + dosym /ginit /bin/bb + dosym bb /bin/busybox + else + newbin busybox_unstripped busybox + dosym busybox /bin/bb + fi + if use mdev ; then + dodir /$(get_libdir)/mdev/ + use make-symlinks || dosym /bin/bb /sbin/mdev + cp "${S}"/examples/mdev_fat.conf "${ED}"/etc/mdev.conf || die + if [[ ! "$(get_libdir)" == "lib" ]]; then + #831251 - replace lib with lib64 where appropriate + sed -i -e "s:/lib/:/$(get_libdir)/:g" "${ED}"/etc/mdev.conf || die + fi + + exeinto /$(get_libdir)/mdev/ + doexe "${FILESDIR}"/mdev/* + + newinitd "${FILESDIR}"/mdev.initd mdev + fi + if use livecd ; then + dosym busybox /bin/vi + fi + + # add busybox daemon's, bug #444718 + if busybox_config_enabled FEATURE_NTPD_SERVER; then + newconfd "${FILESDIR}"/ntpd.confd busybox-ntpd + newinitd "${FILESDIR}"/ntpd.initd busybox-ntpd + fi + if busybox_config_enabled SYSLOGD; then + newconfd "${FILESDIR}"/syslogd.confd busybox-syslogd + newinitd "${FILESDIR}"/syslogd.initd busybox-syslogd + fi + if busybox_config_enabled KLOGD; then + newconfd "${FILESDIR}"/klogd.confd busybox-klogd + newinitd "${FILESDIR}"/klogd.initd busybox-klogd + fi + if busybox_config_enabled WATCHDOG; then + newconfd "${FILESDIR}"/watchdog.confd busybox-watchdog + newinitd "${FILESDIR}"/watchdog.initd busybox-watchdog + fi + if busybox_config_enabled UDHCPC; then + sed -i 's:$((metric++)):$metric; metric=$((metric + 1)):' examples/udhcp/simple.script || die #801535 + local path=$(busybox_config_enabled UDHCPC_DEFAULT_SCRIPT) + exeinto "${path%/*}" + newexe examples/udhcp/simple.script "${path##*/}" + fi + if busybox_config_enabled UDHCPD; then + insinto /etc + doins examples/udhcp/udhcpd.conf + fi + if busybox_config_enabled ASH && ! use make-symlinks; then + dosym -r /bin/busybox /bin/ash + fi + if busybox_config_enabled CROND; then + newconfd "${FILESDIR}"/crond.confd busybox-crond + newinitd "${FILESDIR}"/crond.initd busybox-crond + fi + + # bundle up the symlink files for use later + emake DESTDIR="${ED}" install + # for compatibility, provide /usr/bin/env + mkdir -p _install/usr/bin || die + if [[ ! -e _install/usr/bin/env ]]; then + ln -s /bin/env _install/usr/bin/env || die + fi + rm _install/bin/busybox || die + tar cf busybox-links.tar -C _install . || : #;die + insinto /usr/share/${PN} + use make-symlinks && doins busybox-links.tar + + dodoc AUTHORS README TODO + + cd docs || die + doman busybox.1 + docinto txt + dodoc *.txt + docinto pod + dodoc *.pod + docinto html + dodoc *.html + + cd ../examples || die + docinto examples + dodoc inittab depmod.pl *.conf *.script undeb unrpm + + cd ../networking || die + dodoc httpd_indexcgi.c httpd_post_upload.cgi + + readme.gentoo_create_doc +} + +pkg_preinst() { + if use make-symlinks ; then + mv "${ED}"/usr/share/${PN}/busybox-links.tar "${T}"/ || die + fi +} + +pkg_postinst() { + savedconfig_pkg_postinst + + if use make-symlinks ; then + cd "${T}" || die + mkdir _install + tar xf busybox-links.tar -C _install || die + # 907432: cp -n returns error if it skips any file, but that is expected here + # TODO: check if a new coreutils release has a replacement option + cp -nvpPR _install/* "${ROOT}"/ + fi + + if use sep-usr ; then + elog "In order to use the sep-usr support, you have to update your" + elog "kernel command line. Add the option:" + elog " init=/ginit" + elog "To launch a different init than /sbin/init, use:" + elog " init=/ginit /sbin/yourinit" + elog "To get a rescue shell, you may boot with:" + elog " init=/ginit bb" + fi + + if [[ ${MERGE_TYPE} != binary ]] && ! is-flagq -Oz; then + for v in ${REPLACING_VERSIONS}; do + if ver_test ${v} -le 1.36.1; then + FORCE_PRINT_ELOG=yes + fi + done + + readme.gentoo_print_elog + fi +} diff --git a/sys-apps/busybox/busybox-9999.ebuild b/sys-apps/busybox/busybox-9999.ebuild index 7b6a96b8b9cd..74082ac77ae5 100644 --- a/sys-apps/busybox/busybox-9999.ebuild +++ b/sys-apps/busybox/busybox-9999.ebuild @@ -81,6 +81,7 @@ PATCHES=( "${FILESDIR}"/${PN}-1.34.1-skip-selinux-search.patch "${FILESDIR}"/${PN}-1.36.0-fortify-source-3-fixdep.patch + "${FILESDIR}"/${PN}-1.36.1-kernel-6.8.patch # "${FILESDIR}"/${P}-*.patch ) diff --git a/sys-apps/busybox/files/busybox-1.36.1-kernel-6.8.patch b/sys-apps/busybox/files/busybox-1.36.1-kernel-6.8.patch new file mode 100644 index 000000000000..4f74d51bdcaf --- /dev/null +++ b/sys-apps/busybox/files/busybox-1.36.1-kernel-6.8.patch @@ -0,0 +1,53 @@ +http://lists.busybox.net/pipermail/busybox/2024-March/090678.html +https://bugs.gentoo.org/926872 + +Linux v6.8-rc1 removed the definitions related to CBQ making tc fail to +build. Add some #ifdefs to handle this missing support. +--- a/networking/tc.c ++++ b/networking/tc.c +@@ -231,6 +231,13 @@ static int cbq_parse_opt(int argc, char **argv, struct nlmsghdr *n) + return 0; + } + #endif ++ ++#ifndef TCA_CBQ_MAX ++/* ++ * Linux v6.8-rc1~131^2~60^2^2 removed the uapi definitions for CBQ. ++ * See <A HREF="https://git.kernel.org/linus/33241dca48626">https://git.kernel.org/linus/33241dca48626</A> ++ */ ++#else + static int cbq_print_opt(struct rtattr *opt) + { + struct rtattr *tb[TCA_CBQ_MAX+1]; +@@ -322,6 +329,7 @@ static int cbq_print_opt(struct rtattr *opt) + done: + return 0; + } ++#endif + + static FAST_FUNC int print_qdisc( + const struct sockaddr_nl *who UNUSED_PARAM, +@@ -372,8 +380,10 @@ static FAST_FUNC int print_qdisc( + int qqq = index_in_strings(_q_, name); + if (qqq == 0) { /* pfifo_fast aka prio */ + prio_print_opt(tb[TCA_OPTIONS]); ++#ifdef TCA_CBQ_MAX + } else if (qqq == 1) { /* class based queuing */ + cbq_print_opt(tb[TCA_OPTIONS]); ++#endif + } else { + /* don't know how to print options for this qdisc */ + printf("(options for %s)", name); +@@ -442,9 +452,11 @@ static FAST_FUNC int print_class( + int qqq = index_in_strings(_q_, name); + if (qqq == 0) { /* pfifo_fast aka prio */ + /* nothing. */ /*prio_print_opt(tb[TCA_OPTIONS]);*/ ++#ifdef TCA_CBQ_MAX + } else if (qqq == 1) { /* class based queuing */ + /* cbq_print_copt() is identical to cbq_print_opt(). */ + cbq_print_opt(tb[TCA_OPTIONS]); ++#endif + } else { + /* don't know how to print options for this class */ + printf("(options for %s)", name); + |