Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages


home | help
HCSECD(8)		FreeBSD	System Manager's Manual		     HCSECD(8)

     hcsecd -- control link keys and PIN codes for Bluetooth devices

     hcsecd [-dh] -f configfile

     The hcsecd	daemon controls	link keys and PIN codes	for Bluetooth devices.
     It	opens a	raw HCI	socket and listens for Link_Key_Request,
     PIN_Code_Request and Link_Key_Notification	HCI events.

     Once a Link_Key_Request or	PIN_Code_Request HCI event is received,	the
     daemon scans the configuration file for a matching	entry.	The remote de-
     vice BD_ADDR is used as a key.  If	no matching entry was found, the de-
     fault entry will be used.	If no default entry was	found then it is as-
     sumed that	no link	key and	no PIN code exists.  For any given entry, the
     link key takes precedence over the	PIN code.  If a	link key was not spec-
     ified, the	device must generate the link key from the PIN code.  If an
     entry was found and the link key (or PIN code) exists, the
     Link_Key_Request_Reply (or	PIN_Code_Request_Reply)	command	will be	sent
     back to the device.  Otherwise, the Link_Key_Request_Negative_Reply (or
     PIN_Code_Request_Negative_Reply) command will be sent back	to the device.

     The hcsecd	daemon also handles HCI	Link_Key_Notification events and
     caches link keys created from the PIN codes in memory.  To	preserve link
     keys between restarts the hcsecd daemon dumps link	keys for all entries
     in	the /var/db/hcsecd.keys	link keys file.	 If it exists, the link	keys
     file gets processed by the	hcsecd daemon after it processes its main con-
     figuration	file.  The link	keys file gets written every time the hcsecd
     daemon shuts down gracefully.  It is possible to force the	hcsecd daemon
     to	re-read	its main configuration file and	dump the link keys file	by
     sending the HUP signal to the hcsecd process.  The	user is	expected to
     not modify	the link keys file by hand.

     The command line options are as follows:

     -d	     Do	not detach from	the controlling	terminal.

     -f	configfile
	     Specify the name of the configuration file.  The default is

     -h	     Display usage message and exit.


     ng_btsocket(4), ng_hci(4),	hcsecd.conf(5),	hccontrol(8), hcseriald(8)

     Maksim Yevmenkin <>

     Currently there is	no way to select the link key or the PIN code based on
     which local device	received the request.  Everything is based on the re-
     mote device BD_ADDR.  An interface	for external helpers to	obtain link
     keys and PIN codes	is missing.

FreeBSD	13.0		       November	16, 2002		  FreeBSD 13.0


Want to link to this manual page? Use this URL:

home | help