1
0
mirror of https://github.com/systemd/systemd.git synced 2025-03-31 14:50:15 +03:00

nspawn: Allow : characters in nspawn --bind paths

: characters in bind paths can be entered as the \: escape sequence.
This commit is contained in:
Richard Maw 2015-06-19 15:24:35 +00:00
parent 8adaf7bd23
commit e4a5d9edee

View File

@ -655,17 +655,22 @@ static int parse_argv(int argc, char *argv[]) {
case ARG_BIND:
case ARG_BIND_RO: {
const char *current = optarg;
_cleanup_free_ char *source = NULL, *destination = NULL;
CustomMount *m;
char *e;
_cleanup_strv_free_ char **strv = NULL;
e = strchr(optarg, ':');
if (e) {
source = strndup(optarg, e - optarg);
destination = strdup(e + 1);
} else {
source = strdup(optarg);
destination = strdup(optarg);
r = extract_many_words(&current, ":", EXTRACT_DONT_COALESCE_SEPARATORS, &source, &destination, NULL);
switch (r) {
case 1:
destination = strdup(source);
case 2:
break;
case -ENOMEM:
return log_oom();
default:
log_error("Invalid bind mount specification: %s", optarg);
return -EINVAL;
}
if (!source || !destination)