]> git.proxmox.com Git - ceph.git/blobdiff - ceph/src/pybind/rados/c_rados.pxd
import quincy beta 17.1.0
[ceph.git] / ceph / src / pybind / rados / c_rados.pxd
index 97ee5d0b9063c5ce846a36bbd1a91900e689b2f8..563f3ec6afbb62d280e15b219716612203d3f454 100644 (file)
@@ -31,6 +31,14 @@ cdef extern from "rados/librados.h" nogil:
         _LIBRADOS_OP_FLAG_FADVISE_NOCACHE "LIBRADOS_OP_FLAG_FADVISE_NOCACHE"
 
 
+    enum:
+        _LIBRADOS_CMPXATTR_OP_EQ "LIBRADOS_CMPXATTR_OP_EQ"
+        _LIBRADOS_CMPXATTR_OP_NE "LIBRADOS_CMPXATTR_OP_NE"
+        _LIBRADOS_CMPXATTR_OP_GT "LIBRADOS_CMPXATTR_OP_GT"
+        _LIBRADOS_CMPXATTR_OP_GTE "LIBRADOS_CMPXATTR_OP_GTE"
+        _LIBRADOS_CMPXATTR_OP_LT "LIBRADOS_CMPXATTR_OP_LT"
+        _LIBRADOS_CMPXATTR_OP_LTE "LIBRADOS_CMPXATTR_OP_LTE"
+
     enum:
         _LIBRADOS_OPERATION_NOFLAG "LIBRADOS_OPERATION_NOFLAG"
         _LIBRADOS_OPERATION_BALANCE_READS "LIBRADOS_OPERATION_BALANCE_READS"
@@ -190,7 +198,13 @@ cdef extern from "rados/librados.h" nogil:
     void rados_getxattrs_end(rados_xattrs_iter_t iter)
 
     int rados_nobjects_list_open(rados_ioctx_t io, rados_list_ctx_t *ctx)
-    int rados_nobjects_list_next(rados_list_ctx_t ctx, const char **entry, const char **key, const char **nspace)
+    int rados_nobjects_list_next2(rados_list_ctx_t ctx,
+                                  const char **entry,
+                                  const char **key,
+                                  const char **nspace,
+                                  size_t *entry_size,
+                                  size_t *key_size,
+                                  size_t *nspace)
     void rados_nobjects_list_close(rados_list_ctx_t ctx)
 
     int rados_ioctx_pool_requires_alignment2(rados_ioctx_t io, int * requires)
@@ -259,6 +273,7 @@ cdef extern from "rados/librados.h" nogil:
     int rados_write_op_operate(rados_write_op_t write_op, rados_ioctx_t io, const char * oid, time_t * mtime, int flags)
     int rados_aio_write_op_operate(rados_write_op_t write_op, rados_ioctx_t io, rados_completion_t completion, const char *oid, time_t *mtime, int flags)
     void rados_write_op_cmpext(rados_write_op_t write_op, const char *cmp_buf, size_t cmp_len, uint64_t off, int *prval)
+    void rados_write_op_omap_cmp(rados_write_op_t write_op, const char *key, uint8_t comparison_operator, const char *val, size_t val_len, int *prval)
     void rados_write_op_omap_set(rados_write_op_t write_op, const char * const* keys, const char * const* vals, const size_t * lens, size_t num)
     void rados_write_op_omap_rm_keys(rados_write_op_t write_op, const char * const* keys, size_t keys_len)
     void rados_write_op_omap_clear(rados_write_op_t write_op)