From: David Zafman Date: Wed, 3 Apr 2013 03:59:17 +0000 (-0700) Subject: librados: set SNAP_DIR on listsnaps command X-Git-Tag: v0.62~100^2~2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=65a6975014395ce7442dc17f512edb6451c869cc;p=ceph.git librados: set SNAP_DIR on listsnaps command Signed-off-by: David Zafman --- diff --git a/src/librados/librados.cc b/src/librados/librados.cc index be98341ef36..c8a25a76a7e 100644 --- a/src/librados/librados.cc +++ b/src/librados/librados.cc @@ -1092,6 +1092,8 @@ int librados::IoCtx::list_snaps(const std::string& oid, { ObjectReadOperation op; int r; + if (io_ctx_impl->snap_seq != CEPH_SNAPDIR) + return -EINVAL; op.list_snaps(out_snaps, &r); bufferlist bl; int ret = operate(oid, &op, &bl); diff --git a/src/rados.cc b/src/rados.cc index 4f02563ae10..9af6a2c823a 100644 --- a/src/rados.cc +++ b/src/rados.cc @@ -2026,6 +2026,7 @@ static int rados_tool_common(const std::map < std::string, std::string > &opts, string oid(nargs[1]); snap_set_t ls; + io_ctx.snap_set_read(LIBRADOS_SNAP_DIR); ret = io_ctx.list_snaps(oid, &ls); if (ret < 0) { cerr << "error listing snap shots " << pool_name << "/" << oid << ": " << strerror_r(-ret, buf, sizeof(buf)) << std::endl;