mirror of
https://github.com/systemd/systemd.git
synced 2025-01-11 09:18:07 +03:00
creds: make --pretty behave in a slightly more expected manner
This commit is contained in:
parent
ee46e4d982
commit
c74e13a5c3
@ -228,7 +228,8 @@
|
||||
|
||||
<listitem><para>When specified with <command>encrypt</command> controls whether to show the encrypted
|
||||
credential as <varname>SetCredentialEncrypted=</varname> setting that may be pasted directly into a
|
||||
unit file.</para></listitem>
|
||||
unit file. Has effect only when used together with <option>--name=</option> and <literal>-</literal>
|
||||
as the output file.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
|
@ -506,20 +506,21 @@ static int verb_encrypt(int argc, char **argv, void *userdata) {
|
||||
if (base64_size < 0)
|
||||
return base64_size;
|
||||
|
||||
if (arg_pretty) {
|
||||
/* Pretty print makes sense only if we're printing stuff to stdout
|
||||
* and if a cred name is provided via --name= (since we can't use
|
||||
* the output file name as the cred name here) */
|
||||
if (arg_pretty && !output_path && name) {
|
||||
_cleanup_free_ char *escaped = NULL, *indented = NULL, *j = NULL;
|
||||
|
||||
if (name) {
|
||||
escaped = cescape(name);
|
||||
if (!escaped)
|
||||
return log_oom();
|
||||
}
|
||||
escaped = cescape(name);
|
||||
if (!escaped)
|
||||
return log_oom();
|
||||
|
||||
indented = strreplace(base64_buf, "\n", " \\\n ");
|
||||
if (!indented)
|
||||
return log_oom();
|
||||
|
||||
j = strjoin("SetCredentialEncrypted=", name, ": \\\n ", indented, "\n");
|
||||
j = strjoin("SetCredentialEncrypted=", escaped, ": \\\n ", indented, "\n");
|
||||
if (!j)
|
||||
return log_oom();
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user