bool udevadm_settle = true;
bool progress = true;
bool resize_allow_shrink = false;
+bool read_only = false;
#define dout_subsys ceph_subsys_rbd
" --pretty-format make json or xml output more readable\n"
" --no-settle do not wait for udevadm to settle on map/unmap\n"
" --no-progress do not show progress for long-running commands\n"
+" --read-only set device readonly when mapping image\n"
" --allow-shrink allow shrinking of an image when resizing\n";
}
oss << ",";
}
+ if (read_only)
+ oss << " ro";
+ else
+ oss << " rw";
+
const char *user = g_conf->name.get_id().c_str();
- oss << " name=" << user;
+ oss << ",name=" << user;
char key_name[strlen(user) + strlen("client.") + 1];
snprintf(key_name, sizeof(key_name), "client.%s", user);
lock_tag = strdup(val.c_str());
} else if (ceph_argparse_flag(args, i, "--no-settle", (char *)NULL)) {
udevadm_settle = false;
+ } else if (ceph_argparse_flag(args, i, "--read-only", (char *)NULL)) {
+ read_only = true;
} else if (ceph_argparse_flag(args, i, "--no-progress", (char *)NULL)) {
progress = false;
} else if (ceph_argparse_flag(args, i , "--allow-shrink", (char *)NULL)) {