blob: 4ecb1385cb73a3a4e65a2c64ae25e16098af2201 [file] [log] [blame]
Yingdi Yu4e99f532014-08-25 19:40:57 -07001client.conf
2===========
3
4System configuration of NDN platform is specified in ``client.conf``.
Alexander Afanasyev5208d0e2015-06-03 16:42:09 -07005
6The configuration file ``client.conf`` is looked up in several directories in the following order:
7
8- ``$HOME/.ndn/``: user-specific settings
9- ``@SYSCONFDIR@/ndn/`` (``/usr/local/etc/ndn``, ``/opt/local/etc/ndn``, or other, depending how the library is configured): system-wide settings
10- ``/etc/ndn``: default system-wide settings
11
Yingdi Yu4e99f532014-08-25 19:40:57 -070012Here is an example of ``client.conf`` for current ndn-cxx package:
13
Alexander Afanasyev5208d0e2015-06-03 16:42:09 -070014.. literalinclude:: ../../client.conf.sample
Yingdi Yu4e99f532014-08-25 19:40:57 -070015
Yingdi Yu4e99f532014-08-25 19:40:57 -070016
17NFD
18---
19
Alexander Afanasyev5208d0e2015-06-03 16:42:09 -070020transport
21 FaceUri for default connection toward local NDN forwarder. Only ``unix`` and ``tcp4`` FaceUri
22 can be specified here.
23
24 By default, ``unix:///var/run/nfd.sock`` is used.
Yingdi Yu4e99f532014-08-25 19:40:57 -070025
Alexander Afanasyev57e00362016-06-23 13:22:54 -070026 ..note::
27 This value can be overriden using `NDN_CLIENT_TRANSPORT` environment variable.
Yingdi Yu4e99f532014-08-25 19:40:57 -070028
29Key Management
30--------------
31
Yingdi Yu4e99f532014-08-25 19:40:57 -070032pib
Alexander Afanasyev5208d0e2015-06-03 16:42:09 -070033 The public key information for each private key stored in TPM. The format for this setting is::
Yingdi Yu4e99f532014-08-25 19:40:57 -070034
Alexander Afanasyev5208d0e2015-06-03 16:42:09 -070035 pib=[scheme]:[location]
Yingdi Yu4e99f532014-08-25 19:40:57 -070036
Alexander Afanasyev5208d0e2015-06-03 16:42:09 -070037 Possible values for ``[scheme]``:
Yingdi Yu4e99f532014-08-25 19:40:57 -070038
Alexander Afanasyev5208d0e2015-06-03 16:42:09 -070039 * ``pib-sqlite3``: local PIB implementation with SQLite3 storage engine
40
41 Possible values for ``[location]``:
42
43 * absolute path where SQLite3 database will be stored
44 * relative path (relative to ``config.conf``)
45 * empty: default path ``$HOME/.ndn`` will be used
46
47 When ``[location]`` is empty, trailing ``:`` can be omitted. For example::
48
49 pib=pib-sqlite3
50
51 Changing PIB scheme without changing location is **not** allowed. If such change is
52 necessary, the whole backend storage must be destroyed. For example, when default location
53 is used::
54
55 rm -rf ~/.ndn/ndnsec-*
56
Alexander Afanasyev57e00362016-06-23 13:22:54 -070057 ..note::
58 This value can be overriden using `NDN_CLIENT_PIB` environment variable.
59
Alexander Afanasyev5208d0e2015-06-03 16:42:09 -070060tpm
61 Trusted Platform Module (TPM) where the private keys are stored. The format for this setting
62 is::
63
64 tpm=[scheme]:[location]
65
66 Possible values for ``[scheme]``:
67
68 * ``tpm-osx-keychain`` (default on OS X platform): secure storage of private keys in OS X
69 Keychain with OS-provided access restrictions.
70
71 ``[location]`` parameter is ignored.
72
73 May not work for daemon applications, as user interaction may be required to access OS X
74 Keychain.
75
76 * ``tpm-file`` (default on all other platforms): file-based storage of private keys
77
78 Possible values for ``[location]``:
79
80 * absolute path to directory that will store private/public key files (unencrypted with
81 ``0700`` permission)
82 * relative path (relative to ``config.conf``)
83 * empty: default path ``$HOME/.ndn/ndnsec-tpm-file`` will be used
84
85 When ``[location]`` is empty, trailing ``:`` can be omitted. For example::
86
87 tpm=tpm-file
88
89 **Change of ``tpm`` setting is only possible together with ``pib`` setting. Otherwise, an
90 error will be generated during PIB/TPM access**
Alexander Afanasyev57e00362016-06-23 13:22:54 -070091
92 ..note::
93 This value can be overriden using `NDN_CLIENT_TPM` environment variable.