diff --git a/netifd/Makefile b/netifd/Makefile deleted file mode 100644 index 2a9d4cc1b..000000000 --- a/netifd/Makefile +++ /dev/null @@ -1,53 +0,0 @@ -include $(TOPDIR)/rules.mk - -PKG_NAME:=netifd -PKG_RELEASE:=1 - -PKG_SOURCE_PROTO:=git -PKG_SOURCE_URL=$(PROJECT_GIT)/project/netifd.git -#PKG_SOURCE_DATE:=2023-11-20 -#PKG_SOURCE_VERSION:=f3e06e81b347bbdec1c6c71603328b6e442728d4 -#PKG_MIRROR_HASH:=f16dd61aede5597fd7b5ee8e7752a916494281bc981b35c16e788ddb7409584a -PKG_SOURCE_DATE:=2023-11-14 -PKG_SOURCE_VERSION:=8587c074f1eb2064c42adb0a6aa5073f695ab89d -PKG_MIRROR_HASH:=f5ceb771badd7a23cceb53537299580d4b483e2b3ec5de09b9c3c54692893dd9 -PKG_MAINTAINER:=Felix Fietkau - -PKG_LICENSE:=GPL-2.0 -PKG_LICENSE_FILES:= - -PKG_BUILD_FLAGS:=lto - -include $(INCLUDE_DIR)/package.mk -include $(INCLUDE_DIR)/cmake.mk - -define Package/netifd - SECTION:=base - CATEGORY:=Base system -# DEPENDS:=+libuci +libnl-tiny +libubus +ubus +ubusd +jshn +libubox +libudebug - DEPENDS:=+libuci +libnl-tiny +libubus +ubus +ubusd +jshn +libubox - TITLE:=OpenWrt Network Interface Configuration Daemon -endef - -define Package/netifd/conffiles -/etc/udhcpc.user -/etc/udhcpc.user.d/ -endef - -TARGET_CFLAGS += \ - -I$(STAGING_DIR)/usr/include/libnl-tiny \ - -I$(STAGING_DIR)/usr/include - -CMAKE_OPTIONS += \ - -DLIBNL_LIBS=-lnl-tiny \ - -DDEBUG=1 - -define Package/netifd/install - $(INSTALL_DIR) $(1)/sbin - $(INSTALL_BIN) $(PKG_BUILD_DIR)/netifd $(1)/sbin/ - $(CP) ./files/* $(1)/ - $(INSTALL_DIR) $(1)/etc/udhcpc.user.d/ - $(CP) $(PKG_BUILD_DIR)/scripts/* $(1)/lib/netifd/ -endef - -$(eval $(call BuildPackage,netifd)) diff --git a/netifd/files/etc/hotplug.d/iface/00-netstate b/netifd/files/etc/hotplug.d/iface/00-netstate deleted file mode 100644 index 71ccb0191..000000000 --- a/netifd/files/etc/hotplug.d/iface/00-netstate +++ /dev/null @@ -1,6 +0,0 @@ -[ ifup = "$ACTION" ] && { - uci_toggle_state network "$INTERFACE" up 1 - [ -n "$DEVICE" ] && { - uci_toggle_state network "$INTERFACE" ifname "$DEVICE" - } -} diff --git a/netifd/files/etc/init.d/network b/netifd/files/etc/init.d/network deleted file mode 100755 index dc208c4ce..000000000 --- a/netifd/files/etc/init.d/network +++ /dev/null @@ -1,144 +0,0 @@ -#!/bin/sh /etc/rc.common - -START=20 -STOP=90 - -USE_PROCD=1 - -init_switch() { - setup_switch() { return 0; } - - include /lib/network - setup_switch -} - -start_service() { - init_switch - - procd_open_instance - procd_set_param command /sbin/netifd - procd_set_param respawn - procd_set_param watch network.interface - [ -e /proc/sys/kernel/core_pattern ] && { - procd_set_param limits core="unlimited" - } - procd_close_instance -} - -reload_service() { - local rv=0 - - init_switch - ubus call network reload || rv=1 - /sbin/wifi reload_legacy - return $rv -} - -stop_service() { - /sbin/wifi down - ifdown -a - sleep 1 -} - -validate_atm_bridge_section() -{ - uci_validate_section network "atm-bridge" "${1}" \ - 'unit:uinteger:0' \ - 'vci:range(32, 65535):35' \ - 'vpi:range(0, 255):8' \ - 'atmdev:uinteger:0' \ - 'encaps:or("llc", "vc"):llc' \ - 'payload:or("bridged", "routed"):bridged' -} - -validate_route_section() -{ - uci_validate_section network route "${1}" \ - 'interface:string' \ - 'target:cidr4' \ - 'netmask:netmask4' \ - 'gateway:ip4addr' \ - 'metric:uinteger' \ - 'mtu:uinteger' \ - 'table:or(range(0,65535),string)' -} - -validate_route6_section() -{ - uci_validate_section network route6 "${1}" \ - 'interface:string' \ - 'target:cidr6' \ - 'gateway:ip6addr' \ - 'metric:uinteger' \ - 'mtu:uinteger' \ - 'table:or(range(0,65535),string)' -} - -validate_rule_section() -{ - uci_validate_section network rule "${1}" \ - 'in:string' \ - 'out:string' \ - 'src:cidr4' \ - 'dest:cidr4' \ - 'tos:range(0,31)' \ - 'mark:string' \ - 'invert:bool' \ - 'lookup:or(range(0,65535),string)' \ - 'goto:range(0,65535)' \ - 'action:or("prohibit", "unreachable", "blackhole", "throw")' -} - -validate_rule6_section() -{ - uci_validate_section network rule6 "${1}" \ - 'in:string' \ - 'out:string' \ - 'src:cidr6' \ - 'dest:cidr6' \ - 'tos:range(0,31)' \ - 'mark:string' \ - 'invert:bool' \ - 'lookup:or(range(0,65535),string)' \ - 'goto:range(0,65535)' \ - 'action:or("prohibit", "unreachable", "blackhole", "throw")' -} - -validate_switch_section() -{ - uci_validate_section network switch "${1}" \ - 'name:string' \ - 'enable:bool' \ - 'enable_vlan:bool' \ - 'reset:bool' \ - 'ar8xxx_mib_poll_interval:uinteger' \ - 'ar8xxx_mib_type:range(0,1)' -} - -validate_switch_vlan() -{ - uci_validate_section network switch_vlan "${1}" \ - 'device:string' \ - 'vlan:uinteger' \ - 'ports:list(ports)' -} - -service_triggers() -{ - procd_add_reload_trigger network wireless - - procd_open_validate - validate_atm_bridge_section - validate_route_section - [ -e /proc/sys/net/ipv6 ] && validate_route6_section - validate_rule_section - [ -e /proc/sys/net/ipv6 ] && validate_rule6_section - validate_switch_section - validate_switch_vlan - procd_close_validate -} - -shutdown() { - ifdown -a - sleep 1 -} diff --git a/netifd/files/etc/init.d/packet_steering b/netifd/files/etc/init.d/packet_steering deleted file mode 100755 index 9d8f791e2..000000000 --- a/netifd/files/etc/init.d/packet_steering +++ /dev/null @@ -1,18 +0,0 @@ -#!/bin/sh /etc/rc.common - -START=25 -USE_PROCD=1 - -start_service() { - reload_service -} - -service_triggers() { - procd_add_reload_trigger "network" - procd_add_reload_trigger "firewall" - procd_add_raw_trigger "interface.*" 1000 /etc/init.d/packet_steering reload -} - -reload_service() { - /usr/libexec/network/packet-steering.sh -} diff --git a/netifd/files/etc/uci-defaults/14_migrate-dhcp-release b/netifd/files/etc/uci-defaults/14_migrate-dhcp-release deleted file mode 100644 index f1b384eec..000000000 --- a/netifd/files/etc/uci-defaults/14_migrate-dhcp-release +++ /dev/null @@ -1,23 +0,0 @@ -. /lib/functions.sh - -migrate_release() { - local config="$1" - local proto - local release - - config_get proto "$config" proto - config_get release "$config" release - - [ "$proto" = "dhcp" ] && [ -n "$release" ] && { - norelease="$((!$release))" - uci_set network "$config" norelease "$norelease" - uci_remove network "$config" release - } - -} - -config_load network -config_foreach migrate_release interface -uci commit network - -exit 0 diff --git a/netifd/files/etc/udhcpc.user b/netifd/files/etc/udhcpc.user deleted file mode 100644 index 78e2ba5f1..000000000 --- a/netifd/files/etc/udhcpc.user +++ /dev/null @@ -1 +0,0 @@ -# This script is sourced by udhcpc's dhcp.script at every DHCP event. diff --git a/netifd/files/lib/netifd/dhcp.script b/netifd/files/lib/netifd/dhcp.script deleted file mode 100755 index 053dd75b6..000000000 --- a/netifd/files/lib/netifd/dhcp.script +++ /dev/null @@ -1,122 +0,0 @@ -#!/bin/sh -[ -z "$1" ] && echo "Error: should be run by udhcpc" && exit 1 - -. /lib/functions.sh -. /lib/netifd/netifd-proto.sh - -set_classless_routes() { - local max=128 - while [ -n "$1" -a -n "$2" -a $max -gt 0 ]; do - proto_add_ipv4_route "${1%%/*}" "${1##*/}" "$2" "$ip" - max=$(($max-1)) - shift 2 - done -} - -setup_interface() { - proto_init_update "*" 1 - proto_add_ipv4_address "$ip" "${subnet:-255.255.255.0}" - # TODO: apply $broadcast - - local ip_net - local ip_net IP PREFIX NETWORK NETMASK BROADCAST - ipcalc "$ip/$mask" && ip_net="$NETWORK" - - local i - for i in $router; do - local gw_net - ipcalc "$i/$mask" && gw_net="$NETWORK" - - [ "$ip_net" != "$gw_net" ] && proto_add_ipv4_route "$i" 32 "" "$ip" - #[ "$DEFAULTROUTE" = 0 ] || proto_add_ipv4_route 0.0.0.0 0 "$i" "$ip" - proto_add_ipv4_route 0.0.0.0 0 "$i" "$ip" - - local r - for r in $CUSTOMROUTES; do - proto_add_ipv4_route "${r%%/*}" "${r##*/}" "$i" "$ip" - done - done - - # CIDR STATIC ROUTES (rfc3442) - [ -n "$staticroutes" ] && set_classless_routes $staticroutes - [ -n "$msstaticroutes" ] && set_classless_routes $msstaticroutes - - for i in $dns; do - proto_add_dns_server "$i" - done - for i in $domain; do - proto_add_dns_search "$i" - done - - # TODO: Deprecate timesvr in favor of timesrv - if [ -n "$timesvr" -a -z "$timesrv" ]; then - timesrv="$timesvr" - echo "Environment variable 'timesvr' will be deprecated; use 'timesrv' instead." - fi - - proto_add_data - [ -n "$ZONE" ] && json_add_string zone "$ZONE" - [ -n "$ntpsrv" ] && json_add_string ntpserver "$ntpsrv" - [ -n "$timesrv" ] && json_add_string timeserver "$timesrv" - [ -n "$hostname" ] && json_add_string hostname "$hostname" - [ -n "$message" ] && json_add_string message "$message" - [ -n "$timezone" ] && json_add_int timezone "$timezone" - [ -n "$lease" ] && json_add_int leasetime "$lease" - [ -n "$serverid" ] && json_add_string dhcpserver "$serverid" - proto_close_data - - proto_send_update "$INTERFACE" - - - if [ "$IFACE6RD" != 0 -a -n "$ip6rd" ]; then - local v4mask="${ip6rd%% *}" - ip6rd="${ip6rd#* }" - local ip6rdprefixlen="${ip6rd%% *}" - ip6rd="${ip6rd#* }" - local ip6rdprefix="${ip6rd%% *}" - ip6rd="${ip6rd#* }" - local ip6rdbr="${ip6rd%% *}" - - [ -n "$ZONE" ] || ZONE=$(fw3 -q network $INTERFACE 2>/dev/null) - [ -z "$IFACE6RD" -o "$IFACE6RD" = 1 ] && IFACE6RD=${INTERFACE}_6 - - json_init - json_add_string name "$IFACE6RD" - json_add_string ifname "@$INTERFACE" - json_add_string proto "6rd" - json_add_string peeraddr "$ip6rdbr" - json_add_int ip4prefixlen "$v4mask" - json_add_string ip6prefix "$ip6rdprefix" - json_add_int ip6prefixlen "$ip6rdprefixlen" - json_add_string tunlink "$INTERFACE" - [ -n "$IFACE6RD_DELEGATE" ] && json_add_boolean delegate "$IFACE6RD_DELEGATE" - [ -n "$ZONE6RD" ] || ZONE6RD=$ZONE - [ -n "$ZONE6RD" ] && json_add_string zone "$ZONE6RD" - [ -n "$MTU6RD" ] && json_add_string mtu "$MTU6RD" - json_close_object - - ubus call network add_dynamic "$(json_dump)" - fi -} - -deconfig_interface() { - proto_init_update "*" 0 - proto_send_update "$INTERFACE" -} - -case "$1" in - deconfig) - deconfig_interface - ;; - renew|bound) - setup_interface - ;; -esac - -# user rules -[ -f /etc/udhcpc.user ] && . /etc/udhcpc.user "$@" -for f in /etc/udhcpc.user.d/*; do - [ -f "$f" ] && (. "$f" "$@") -done - -exit 0 diff --git a/netifd/files/lib/netifd/proto/dhcp.sh b/netifd/files/lib/netifd/proto/dhcp.sh deleted file mode 100755 index 0771d8a05..000000000 --- a/netifd/files/lib/netifd/proto/dhcp.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/sh - -[ -x /sbin/udhcpc ] || exit 0 - -. /lib/functions.sh -. ../netifd-proto.sh -init_proto "$@" - -proto_dhcp_init_config() { - renew_handler=1 - - proto_config_add_string 'ipaddr:ipaddr' - proto_config_add_string 'hostname:hostname' - proto_config_add_string clientid - proto_config_add_string vendorid - proto_config_add_boolean 'broadcast:bool' - proto_config_add_boolean 'norelease:bool' - proto_config_add_string 'reqopts:list(string)' - proto_config_add_boolean 'defaultreqopts:bool' - proto_config_add_string iface6rd - proto_config_add_array 'sendopts:list(string)' - proto_config_add_boolean delegate - proto_config_add_string zone6rd - proto_config_add_string zone - proto_config_add_string mtu6rd - proto_config_add_string customroutes - proto_config_add_boolean classlessroute -} - -proto_dhcp_add_sendopts() { - [ -n "$1" ] && append "$3" "-x $1" -} - -proto_dhcp_setup() { - local config="$1" - local iface="$2" - - local ipaddr hostname clientid vendorid broadcast norelease reqopts defaultreqopts iface6rd sendopts delegate zone6rd zone mtu6rd customroutes classlessroute defaultroute - json_get_vars ipaddr hostname clientid vendorid broadcast norelease reqopts defaultreqopts iface6rd delegate zone6rd zone mtu6rd customroutes classlessroute defaultroute - - local opt dhcpopts - for opt in $reqopts; do - append dhcpopts "-O $opt" - done - - json_for_each_item proto_dhcp_add_sendopts sendopts dhcpopts - - [ -z "$hostname" ] && hostname="$(cat /proc/sys/kernel/hostname)" - [ "$hostname" = "*" ] && hostname= - - [ "$defaultreqopts" = 0 ] && defaultreqopts="-o" || defaultreqopts= - [ "$broadcast" = 1 ] && broadcast="-B" || broadcast= - [ "$norelease" = 1 ] && norelease="" || norelease="-R" - [ -n "$clientid" ] && clientid="-x 0x3d:${clientid//:/}" || clientid="-C" - [ -n "$iface6rd" ] && proto_export "IFACE6RD=$iface6rd" - [ "$iface6rd" != 0 -a -f /lib/netifd/proto/6rd.sh ] && append dhcpopts "-O 212" - [ -n "$zone6rd" ] && proto_export "ZONE6RD=$zone6rd" - [ -n "$zone" ] && proto_export "ZONE=$zone" - [ -n "$mtu6rd" ] && proto_export "MTU6RD=$mtu6rd" - [ -n "$customroutes" ] && proto_export "CUSTOMROUTES=$customroutes" - [ -n "$defaultroute" ] && proto_export "DEFAULTROUTE=$defaultroute" - [ "$delegate" = "0" ] && proto_export "IFACE6RD_DELEGATE=0" - # Request classless route option (see RFC 3442) by default - [ "$classlessroute" = "0" ] || append dhcpopts "-O 121" - - proto_export "INTERFACE=$config" - proto_run_command "$config" udhcpc \ - -p /var/run/udhcpc-$iface.pid \ - -s /lib/netifd/dhcp.script \ - -f -t 0 -i "$iface" \ - ${ipaddr:+-r ${ipaddr/\/*/}} \ - ${hostname:+-x "hostname:$hostname"} \ - ${vendorid:+-V "$vendorid"} \ - $clientid $defaultreqopts $broadcast $norelease $dhcpopts -} - -proto_dhcp_renew() { - local interface="$1" - # SIGUSR1 forces udhcpc to renew its lease - local sigusr1="$(kill -l SIGUSR1)" - [ -n "$sigusr1" ] && proto_kill_command "$interface" $sigusr1 -} - -proto_dhcp_teardown() { - local interface="$1" - proto_kill_command "$interface" -} - -add_protocol dhcp diff --git a/netifd/files/lib/network/config.sh b/netifd/files/lib/network/config.sh deleted file mode 100755 index 4cd28e4ce..000000000 --- a/netifd/files/lib/network/config.sh +++ /dev/null @@ -1,76 +0,0 @@ -#!/bin/sh -# Copyright (C) 2011 OpenWrt.org - -. /usr/share/libubox/jshn.sh - -find_config() { - local device="$1" - local ifdev ifl3dev ifobj - for ifobj in $(ubus list network.interface.\*); do - interface="${ifobj##network.interface.}" - ( - json_load "$(ifstatus $interface)" - json_get_var ifdev device - json_get_var ifl3dev l3_device - if [ "$device" = "$ifdev" ] || [ "$device" = "$ifl3dev" ]; then - echo "$interface" - exit 0 - else - exit 1 - fi - ) && return - done -} - -unbridge() { - return -} - -ubus_call() { - json_init - local _data="$(ubus -S call "$1" "$2")" - [ -z "$_data" ] && return 1 - json_load "$_data" - return 0 -} - - -fixup_interface() { - local config="$1" - local ifname type device l3dev - - config_get type "$config" type - config_get ifname "$config" ifname - [ "bridge" = "$type" ] && ifname="br-$config" - ubus_call "network.interface.$config" status || return 0 - json_get_var l3dev l3_device - [ -n "$l3dev" ] && ifname="$l3dev" - json_init - config_set "$config" ifname "$ifname" -} - -scan_interfaces() { - config_load network - config_foreach fixup_interface interface -} - -prepare_interface_bridge() { - local config="$1" - - [ -n "$config" ] || return 0 - ubus call network.interface."$config" prepare -} - -setup_interface() { - local iface="$1" - local config="$2" - - [ -n "$config" ] || return 0 - ubus call network.interface."$config" add_device "{ \"name\": \"$iface\" }" -} - -do_sysctl() { - [ -n "$2" ] && \ - sysctl -n -e -w "$1=$2" >/dev/null || \ - sysctl -n -e "$1" -} diff --git a/netifd/files/sbin/devstatus b/netifd/files/sbin/devstatus deleted file mode 100755 index 3c35b26a4..000000000 --- a/netifd/files/sbin/devstatus +++ /dev/null @@ -1,12 +0,0 @@ -#!/bin/sh -. /usr/share/libubox/jshn.sh -DEVICE="$1" - -[ -n "$DEVICE" ] || { - echo "Usage: $0 " - exit 1 -} - -json_init -json_add_string name "$DEVICE" -ubus call network.device status "$(json_dump)" diff --git a/netifd/files/sbin/ifdown b/netifd/files/sbin/ifdown deleted file mode 120000 index a0e5c176a..000000000 --- a/netifd/files/sbin/ifdown +++ /dev/null @@ -1 +0,0 @@ -ifup \ No newline at end of file diff --git a/netifd/files/sbin/ifstatus b/netifd/files/sbin/ifstatus deleted file mode 100755 index 8a951e6e1..000000000 --- a/netifd/files/sbin/ifstatus +++ /dev/null @@ -1,13 +0,0 @@ -#!/bin/sh -INTERFACE="$1" - -[ -n "$INTERFACE" ] || { - echo "Usage: $0 " - exit 1 -} - -ubus -S list "network.interface.$INTERFACE" >/dev/null || { - echo "Interface $INTERFACE not found" - exit 1 -} -ubus call network.interface status "{ \"interface\" : \"$INTERFACE\" }" diff --git a/netifd/files/sbin/ifup b/netifd/files/sbin/ifup deleted file mode 100755 index 15be535bb..000000000 --- a/netifd/files/sbin/ifup +++ /dev/null @@ -1,77 +0,0 @@ -#!/bin/sh - -ifup_all= -setup_wifi= - -if_call() { - local interface="$1" - for mode in $modes; do - ubus call network.interface $mode "{ \"interface\" : \"$interface\" }" - done -} - -case "$0" in - *ifdown) modes=down;; - *ifup) - modes="down up" - setup_wifi=1 - ;; - *) echo "Invalid command: $0";; -esac - -while :; do - case "$1" in - -a) - ifup_all=1 - shift - ;; - -w) - setup_wifi= - shift - ;; - *) - break - ;; - esac -done - -[ "$modes" = "down up" ] && ubus call network reload -if [ -n "$ifup_all" ]; then - for interface in $(ubus -S list 'network.interface.*'); do - if_call "${interface##network.interface.}" - done - [ -n "$setup_wifi" ] && /sbin/wifi up - exit -else - ubus -S list "network.interface.$1" > /dev/null || { - echo "Interface $1 not found" - exit - } - if_call "$1" -fi - -if [ -n "$setup_wifi" ] && grep -sq config /etc/config/wireless; then - . /lib/functions.sh - - find_related_radios() { - local wdev wnet - config_get wdev "$1" device - config_get wnet "$1" network - - if [ -n "$wdev" ]; then - for wnet in $wnet; do - if [ "$wnet" = "$network" ]; then - append radio_devs "$wdev" "$N" - fi - done - fi - } - - network="$1" - config_load wireless - config_foreach find_related_radios wifi-iface - - for dev in $(echo "$radio_devs" | sort -u); do - /sbin/wifi up "$dev" - done -fi diff --git a/netifd/files/usr/libexec/network/packet-steering.sh b/netifd/files/usr/libexec/network/packet-steering.sh deleted file mode 100755 index 799c08080..000000000 --- a/netifd/files/usr/libexec/network/packet-steering.sh +++ /dev/null @@ -1,70 +0,0 @@ -#!/bin/sh -NPROCS="$(grep -c "^processor.*:" /proc/cpuinfo)" -[ "$NPROCS" -gt 1 ] || exit - -PROC_MASK="$(( (1 << $NPROCS) - 1 ))" - -find_irq_cpu() { - local dev="$1" - local match="$(grep -m 1 "$dev\$" /proc/interrupts)" - local cpu=0 - - [ -n "$match" ] && { - set -- $match - shift - for cur in $(seq 1 $NPROCS); do - [ "$1" -gt 0 ] && { - cpu=$(($cur - 1)) - break - } - shift - done - } - - echo "$cpu" -} - -set_hex_val() { - local file="$1" - local val="$2" - val="$(printf %x "$val")" - [ -n "$DEBUG" ] && echo "$file = $val" - echo "$val" > "$file" -} - -packet_steering="$(uci get "network.@globals[0].packet_steering")" -[ "$packet_steering" != 1 ] && exit 0 - -exec 512>/var/lock/smp_tune.lock -flock 512 || exit 1 - -[ -e "/usr/libexec/platform/packet-steering.sh" ] && { - /usr/libexec/platform/packet-steering.sh - exit 0 -} - -for dev in /sys/class/net/*; do - [ -d "$dev" ] || continue - - # ignore virtual interfaces - [ -n "$(ls "${dev}/" | grep '^lower_')" ] && continue - [ -d "${dev}/device" ] || continue - - device="$(readlink "${dev}/device")" - device="$(basename "$device")" - irq_cpu="$(find_irq_cpu "$device")" - irq_cpu_mask="$((1 << $irq_cpu))" - - for q in ${dev}/queues/tx-*; do - set_hex_val "$q/xps_cpus" "$PROC_MASK" - done - - # ignore dsa slave ports for RPS - subsys="$(readlink "${dev}/device/subsystem")" - subsys="$(basename "$subsys")" - [ "$subsys" = "mdio_bus" ] && continue - - for q in ${dev}/queues/rx-*; do - set_hex_val "$q/rps_cpus" "$PROC_MASK" - done -done diff --git a/netifd/files/usr/share/udhcpc/default.script b/netifd/files/usr/share/udhcpc/default.script deleted file mode 100755 index 0a9eb0180..000000000 --- a/netifd/files/usr/share/udhcpc/default.script +++ /dev/null @@ -1,57 +0,0 @@ -#!/bin/sh -[ -z "$1" ] && echo "Error: should be run by udhcpc" && exit 1 - -set_classless_routes() { - local max=128 - local type - while [ -n "$1" -a -n "$2" -a $max -gt 0 ]; do - [ ${1##*/} -eq 32 ] && type=host || type=net - echo "udhcpc: adding route for $type $1 via $2" - route add -$type "$1" gw "$2" dev "$interface" - max=$(($max-1)) - shift 2 - done -} - -setup_interface() { - echo "udhcpc: ip addr add $ip/${subnet:-255.255.255.0} broadcast ${broadcast:-+} dev $interface" - ip addr add $ip/${subnet:-255.255.255.0} broadcast ${broadcast:-+} dev $interface - - [ -n "$router" ] && [ "$router" != "0.0.0.0" ] && [ "$router" != "255.255.255.255" ] && { - echo "udhcpc: setting default routers: $router" - - local valid_gw="" - for i in $router ; do - route add default gw $i dev $interface - valid_gw="${valid_gw:+$valid_gw|}$i" - done - - eval $(route -n | awk ' - /^0.0.0.0\W{9}('$valid_gw')\W/ {next} - /^0.0.0.0/ {print "route del -net "$1" gw "$2";"} - ') - } - - # CIDR STATIC ROUTES (rfc3442) - [ -n "$staticroutes" ] && set_classless_routes $staticroutes - [ -n "$msstaticroutes" ] && set_classless_routes $msstaticroutes -} - - -applied= -case "$1" in - deconfig) - ip -4 addr flush dev "$interface" - ;; - renew) - setup_interface update - ;; - bound) - setup_interface ifup - ;; -esac - -# user rules -[ -f /etc/udhcpc.user ] && . /etc/udhcpc.user - -exit 0 diff --git a/netifd/patches/001-defin-RTN_POLICY_FAILED.patch b/netifd/patches/001-defin-RTN_POLICY_FAILED.patch deleted file mode 100644 index d7b530393..000000000 --- a/netifd/patches/001-defin-RTN_POLICY_FAILED.patch +++ /dev/null @@ -1,12 +0,0 @@ ---- a/system-linux.c 2023-11-24 16:49:37.715537192 +0100 -+++ b/system-linux.c 2023-11-24 16:50:23.002742488 +0100 -@@ -53,6 +53,9 @@ - #ifndef RTN_FAILED_POLICY - #define RTN_FAILED_POLICY 12 - #endif -+#ifndef RTN_POLICY_FAILED -+#define RTN_POLICY_FAILED 12 -+#endif - - #ifndef IFA_F_NOPREFIXROUTE - #define IFA_F_NOPREFIXROUTE 0x200