Clean up vm CredentialPipe
This code is needlessly complicated for what it does. Even with the
intent, which is secure buffer cleanup, it's trivial to encase all this
into a single class that accepts the strings by rvalue reference, then
cleans them up afterward.
Doing this also cleans up a potential lifetime problem, where if the
unix socket returned immediately, it would've invalidated the buffers
that were being sent. It also moves to async_write, instead of
async_write_some. The former could in theory fail if the socket blocks
(unlikely in this scenario) but it's good to handle anyway.
Tested: Need some help here. There's no backend for this, so we might
just have to rely on inspection.
Change-Id: I9032d458f8eb7a0689bee575aae611641bacee26
Signed-off-by: Ed Tanous <edtanous@google.com>
diff --git a/meson.build b/meson.build
index 9f22f23..4aa7c33 100644
--- a/meson.build
+++ b/meson.build
@@ -389,6 +389,7 @@
'test/include/http_utility_test.cpp',
'test/include/human_sort_test.cpp',
'test/include/async_resolve_test.cpp',
+ 'test/include/credential_pipe_test.cpp',
'test/include/ibm/configfile_test.cpp',
'test/include/ibm/lock_test.cpp',
'test/include/multipart_test.cpp',