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
     device BD_ADDR is used as a key.  If no matching entry was	found, the
     default entry will	be used.  If no	default	entry was found	then it	is
     assumed 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
     specified,	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
     remote device BD_ADDR.  An	interface for external helpers to obtain link
     keys and PIN codes	is missing.

FreeBSD	Ports 11.2	       November	16, 2002	    FreeBSD Ports 11.2


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

home | help