(null)
     �ÃÂÆ      File not found.
     �Ãa–Ým_J*j"Tâ�ràp/©‹FÿÇ      File not found.
     �Ä¾Ç      File not found.
     ˆÂÊ„ û_Á¾Ç 'n    #!/usr/bin/sh

PATH=/usr/sbin:/usr/bin:/sbin:/bin

type getarg > /dev/null 2>&1 || . /lib/dracut-lib.sh
type ip_to_var > /dev/null 2>&1 || . /lib/net-lib.sh

# We already need a set netif here
netif=$interface

setup_interface() {
    ip=$new_ip_address
    mtu=$new_interface_mtu
    mask=$new_subnet_mask
    bcast=$new_broadcast_address
    gw=${new_routers%%,*}
    domain=$new_domain_name
    # get rid of control chars
    search=$(printf -- "%s" "$new_domain_search" | tr -d '[:cntrl:]')
    namesrv=$new_domain_name_servers
    hostname=$new_host_name
    [ -n "$new_dhcp_lease_time" ] && lease_time=$new_dhcp_lease_time
    [ -n "$new_max_life" ] && lease_time=$new_max_life
    preferred_lft=$lease_time
    [ -n "$new_preferred_life" ] && preferred_lft=$new_preferred_life

    # shellcheck disable=SC1090
    [ -f /tmp/net."$netif".override ] && . /tmp/net."$netif".override

    # Taken from debian dhclient-script:
    # The 576 MTU is only used for X.25 and dialup connections
    # where the admin wants low latency.  Such a low MTU can cause
    # problems with UDP traffic, among other things.  As such,
    # disallow MTUs from 576 and below by default, so that broken
    # MTUs are ignored, but higher stuff is allowed (1492, 1500, etc).
    if [ -n "$mtu" ] && [ "$mtu" -gt 576 ]; then
        if ! ip link set "$netif" mtu "$mtu"; then
            ip link set "$netif" down
            ip link set "$netif" mtu "$mtu"
            linkup "$netif"
        fi
    fi

    ip addr add "$ip"${mask:+/$mask} ${bcast:+broadcast $bcast} dev "$netif" \
        ${lease_time:+valid_lft $lease_time} \
        ${preferred_lft:+preferred_lft ${preferred_lft}}

    if [ -n "$gw" ]; then
        if [ "$mask" = "255.255.255.255" ]; then
            # point-to-point connection => set explicit route to gateway
            printf 'ip route add %q dev %q\n' "$gw" "$netif" > /tmp/net."$netif".gw
        fi

        echo "$gw" | {
            IFS=' ' read -r main_gw other_gw
            printf 'ip route replace default via %q dev %q\n' "$main_gw" "$netif" >> /tmp/net."$netif".gw
            if [ -n "$other_gw" ]; then
                for g in $other_gw; do
                    printf 'ip route add default via %q dev %q\n' "$g" "$netif" >> /tmp/net."$netif".gw
                done
            fi
        }
    fi

    if getargbool 1 rd.peerdns; then
        if [ -n "${search}${domain}" ]; then
            echo "search $search $domain" > /tmp/net."$netif".resolv.conf
        fi
        if [ -n "$namesrv" ]; then
            for s in $namesrv; do
                echo nameserver "$s"
            done
        fi >> /tmp/net."$netif".resolv.conf
    fi
    # Note: hostname can be fqdn OR short hostname, so chop off any
    # trailing domain name and explicity add any domain if set.
    if [ -n "$hostname" ]; then
        safe_hostname=$(printf '%s' "${hostname%."$domain"}${domain:+.$domain}")
        printf 'echo %q > /proc/sys/kernel/hostname\n' "$safe_hostname" > /tmp/net."$netif".hostname
    fi
}

setup_interface6() {
    domain=$new_domain_name
    # get rid of control chars
    search=$(printf -- "%s" "$new_dhcp6_domain_search" | tr -d '[:cntrl:]')
    namesrv=$new_dhcp6_name_servers
    hostname=$new_host_name
    [ -n "$new_dhcp_lease_time" ] && lease_time=$new_dhcp_lease_time
    [ -n "$new_max_life" ] && lease_time=$new_max_life
    preferred_lft=$lease_time
    [ -n "$new_preferred_life" ] && preferred_lft=$new_preferred_life

    # shellcheck disable=SC1090
    [ -f /tmp/net."$netif".override ] && . /tmp/net."$netif".override

    ip -6 addr add "${new_ip6_address}"/"${new_ip6_prefixlen}" \
        dev "${netif}" scope global \
        ${lease_time:+valid_lft $lease_time} \
        ${preferred_lft:+preferred_lft ${preferred_lft}}

    if getargbool 1 rd.peerdns; then
        if [ -n "${search}${domain}" ]; then
            echo "search $search $domain" > /tmp/net."$neti