summaryrefslogtreecommitdiff
path: root/.gitignore
diff options
context:
space:
mode:
authorThomas Haller <thaller@redhat.com>2015-02-24 22:22:14 +0100
committerThomas Haller <thaller@redhat.com>2015-03-12 18:16:58 +0100
commitc9a8764ad2805e22e1c556679e09636550374e21 (patch)
treece9663acd234c8a9a3601e154db56a3926dbc979 /.gitignore
parenta49680dacd73549169bfad1ba3bd94e1a7bb1ac1 (diff)
downloadNetworkManager-c9a8764ad2805e22e1c556679e09636550374e21.tar.gz
keyfile: support writing certificates as blob inside the keyfile
keyfile should become our main import/export format. It is desirable, that a keyfile can contain every aspect of a connection. For blob certificates, the writer in core daemon would always write them to a file and convert the scheme to path. This behavior is not great for a (hyptetical) `nmcli connection export` command because it would have to export them somehow outside of keyfile, e.g. by writing them to temporary files. Instead, if the write handler does not handle a certificate, use a default implementation in nm_keyfile_write() which adds the blob inside the keyfile. Interestingly, keyfile reader already supported reading certificate blobs. But this legacy format accepts the blob as arbitrary binary without marking the format and without scheme prefix. Instead of writing the binary data directly, write it with a new uri scheme "data:;base64," and encode it in base64. Also go through some lengths to make sure that whatever path keyfile plugin writes, can be read back again. That is, because keyfile writer preferably writes relative paths without prefix. Add nm_keyfile_detect_unqualified_path_scheme() to encapsulate the detection of pathnames without file:// prefix and use it to check whether the path name must be fully qualified.
Diffstat (limited to '.gitignore')
-rw-r--r--.gitignore1
1 files changed, 1 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore
index 40448f92bc..397524e3f0 100644
--- a/.gitignore
+++ b/.gitignore
@@ -143,6 +143,7 @@ valgrind-*.log
/libnm-core/tests/test-crypto
/libnm-core/tests/test-settings-defaults
/libnm-core/tests/test-general
+/libnm-core/tests/test-keyfile
/libnm-core/tests/test-need-secrets
/libnm-core/tests/test-secrets
/libnm-core/tests/test-setting-8021x