Files
Li-Wen Hsu b5fe1bc5c6 rc.d/bthidd: Correct load_kld invocations
Pass a single module name to load_kld for kbdmux and vkbd, allowing
bthidd_prestart to load both modules successfully.

Fixes:		cfe1962a19 (rc: Fix improper use of load_kld)
MFC after:	3 days
Sponsored by:	The FreeBSD Foundation
2026-08-01 02:05:03 +08:00

57 lines
955 B
Bash
Executable File

#!/bin/sh
#
#
# PROVIDE: bthidd
# REQUIRE: DAEMON hcsecd
# BEFORE: LOGIN
# KEYWORD: nojail shutdown
. /etc/rc.subr
name="bthidd"
desc="Bluetooth HID daemon"
rcvar="bthidd_enable"
command="/usr/sbin/${name}"
pidfile="/var/run/${name}.pid"
start_precmd="bthidd_prestart"
evdev_enabled()
{
case ${bthidd_evdev_support} in
[Aa][Uu][Tt][Oo])
check_kern_features evdev_support
return $?
;;
*)
checkyesno bthidd_evdev_support
return $?
;;
esac
}
bthidd_prestart()
{
if evdev_enabled; then
load_kld -m uinput uinput
fi
load_kld kbdmux
load_kld vkbd
load_kld ng_btsocket
return 0
}
load_rc_config $name
config="${bthidd_config:-/etc/bluetooth/${name}.conf}"
hids="${bthidd_hids:-/var/db/${name}.hids}"
command_args="-c ${config} -H ${hids} -p ${pidfile}"
if evdev_enabled; then
command_args="$command_args -u"
fi
required_files="${config}"
# doesn't make sense to run in a svcj: nojail keyword
bthidd_svcj="NO"
run_rc_command "$1"