; "transport" specifies Face's default transport connection.
; The value is a unix or tcp4 scheme Face URI.
;
; For example:
;
;   unix:///var/run/nfd.sock
;   tcp://192.0.2.1
;   tcp4://example.com:6363

transport=unix:///var/run/nfd.sock

; "pib" determines which Public Info Base (PIB) should used by default in applications.
; If "pib" is not specified, the default PIB will be used.
; Note that default PIB could be different on different system.
; If "pib" is specified, it may have a value of:
;   pib-sqlite3
; pib=pib-sqlite3

; "tpm" determines which Trusted Platform Module (TPM) should used by default in applications.
; If "tpm" is not specified, the default TPM will be used.
; Note that default TPM could be different on different system.
; If "tpm" is specified, it may have a value of:
;   tpm-osxkeychain (default in OS X)
;   tpm-file (default in operating systems other than OS X)
; tpm=tpm-file