xref: /freebsd/libexec/rc/rc.d/bthidd (revision b11974c250671368e1eb869ca8ce2ed70622917f)
10696600cSBjoern A. Zeeb#!/bin/sh
20696600cSBjoern A. Zeeb#
30696600cSBjoern A. Zeeb# $FreeBSD$
40696600cSBjoern A. Zeeb#
50696600cSBjoern A. Zeeb
60696600cSBjoern A. Zeeb# PROVIDE: bthidd
70696600cSBjoern A. Zeeb# REQUIRE: DAEMON hcsecd
80696600cSBjoern A. Zeeb# BEFORE: LOGIN
90696600cSBjoern A. Zeeb# KEYWORD: nojail shutdown
100696600cSBjoern A. Zeeb
110696600cSBjoern A. Zeeb. /etc/rc.subr
120696600cSBjoern A. Zeeb
130696600cSBjoern A. Zeebname="bthidd"
140696600cSBjoern A. Zeebdesc="Bluetooth HID daemon"
150696600cSBjoern A. Zeebrcvar="bthidd_enable"
160696600cSBjoern A. Zeebcommand="/usr/sbin/${name}"
170696600cSBjoern A. Zeebpidfile="/var/run/${name}.pid"
180696600cSBjoern A. Zeebstart_precmd="bthidd_prestart"
190696600cSBjoern A. Zeeb
200696600cSBjoern A. Zeebevdev_enabled()
210696600cSBjoern A. Zeeb{
220696600cSBjoern A. Zeeb	case ${bthidd_evdev_support} in
230696600cSBjoern A. Zeeb	[Aa][Uu][Tt][Oo])
240696600cSBjoern A. Zeeb		check_kern_features evdev_support
250696600cSBjoern A. Zeeb		return $?
260696600cSBjoern A. Zeeb		;;
270696600cSBjoern A. Zeeb	*)
280696600cSBjoern A. Zeeb		checkyesno bthidd_evdev_support
290696600cSBjoern A. Zeeb		return $?
300696600cSBjoern A. Zeeb		;;
310696600cSBjoern A. Zeeb	esac
320696600cSBjoern A. Zeeb}
330696600cSBjoern A. Zeeb
340696600cSBjoern A. Zeebbthidd_prestart()
350696600cSBjoern A. Zeeb{
360696600cSBjoern A. Zeeb	if evdev_enabled; then
37*b11974c2SChris Rees		load_kld -m uinput uinput
380696600cSBjoern A. Zeeb	fi
39*b11974c2SChris Rees	load_kld -m kbdmux kbdmux
40*b11974c2SChris Rees	load_kld -m vkbd vkbd
41*b11974c2SChris Rees	load_kld -m ng_btsocket ng_btsocket
420696600cSBjoern A. Zeeb	return 0
430696600cSBjoern A. Zeeb}
440696600cSBjoern A. Zeeb
450696600cSBjoern A. Zeebload_rc_config $name
460696600cSBjoern A. Zeebconfig="${bthidd_config:-/etc/bluetooth/${name}.conf}"
470696600cSBjoern A. Zeebhids="${bthidd_hids:-/var/db/${name}.hids}"
480696600cSBjoern A. Zeebcommand_args="-c ${config} -H ${hids} -p ${pidfile}"
490696600cSBjoern A. Zeebif evdev_enabled; then
500696600cSBjoern A. Zeeb	command_args="$command_args -u"
510696600cSBjoern A. Zeebfi
520696600cSBjoern A. Zeebrequired_files="${config}"
530696600cSBjoern A. Zeeb
540696600cSBjoern A. Zeebrun_rc_command "$1"
55