# Configure the MTU for the interface

mtu_dir="$state_dir/mtu"

set_mtu()
{
	local mtu=$1

	if [ -w /sys/class/net/$interface/mtu ]; then
		echo "$mtu" >/sys/class/net/$interface/mtu
	else
		ifconfig "$interface" mtu "$mtu"
	fi
}

if [ "$reason" = PREINIT -a -e "$mtu_dir/$interface" ]; then
	rm "$mtu_dir/$interface"
elif [ -n "$new_interface_mtu" ] && $if_up; then
	# The smalled MTU dhcpcd can work with is 576
	if [ "$new_interface_mtu" -ge 576 ]; then
		if set_mtu "$new_interface_mtu"; then
			syslog info "MTU set to $new_interface_mtu"
			# Save the MTU so we can restore it later
			if [ ! -e "$mtu_dir/$interface" ]; then
				mkdir -p "$mtu_dir"
				echo "$ifmtu" > "$mtu_dir/$interface"
			fi
		fi
	fi
elif [ -e "$mtu_dir/$interface" ]; then
	if $if_up || $if_down; then
		# No MTU in this state, so restore the prior MTU
		mtu=$(cat "$mtu_dir/$interface")
		syslog info "MTU restored to $mtu"
		set_mtu "$mtu"
		rm "$mtu_dir/$interface"
	fi
fi
