All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Data Structures | Macros | Enumerations | Functions | Variables
target/Darwin-i386/include/citrusleaf/cf_proto.h File Reference
#include <stddef.h>
#include <stdint.h>
+ Include dependency graph for target/Darwin-i386/include/citrusleaf/cf_proto.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  as_msg_s
 
struct  cl_comp_proto
 
struct  cl_msg_field_s
 
struct  cl_msg_key_s
 
struct  cl_msg_number_s
 
struct  cl_msg_op_s
 
struct  cl_msg_s
 
struct  cl_proto_s
 

Macros

#define CL_MSG_FIELD_TYPE_BIN   3
 
#define CL_MSG_FIELD_TYPE_DIGEST_RIPE   4
 
#define CL_MSG_FIELD_TYPE_DIGEST_RIPE_ARRAY   6
 
#define CL_MSG_FIELD_TYPE_GU_TID   5
 
#define CL_MSG_FIELD_TYPE_INDEX_FILTER   23
 
#define CL_MSG_FIELD_TYPE_INDEX_LIMIT   24
 
#define CL_MSG_FIELD_TYPE_INDEX_NAME   21
 
#define CL_MSG_FIELD_TYPE_INDEX_ORDER_BY   25
 
#define CL_MSG_FIELD_TYPE_INDEX_RANGE   22
 
#define CL_MSG_FIELD_TYPE_KEY   2
 
#define CL_MSG_FIELD_TYPE_NAMESPACE   0
 
#define CL_MSG_FIELD_TYPE_QUERY_BINLIST   40
 
#define CL_MSG_FIELD_TYPE_QUERY_OPTIONS   8
 
#define CL_MSG_FIELD_TYPE_SCAN_OPTIONS   8
 
#define CL_MSG_FIELD_TYPE_SET   1
 
#define CL_MSG_FIELD_TYPE_TRID   7
 
#define CL_MSG_FIELD_TYPE_UDF_ARGLIST   32
 
#define CL_MSG_FIELD_TYPE_UDF_FILENAME   30
 
#define CL_MSG_FIELD_TYPE_UDF_FUNCTION   31
 
#define CL_MSG_FIELD_TYPE_UDF_OP   33
 
#define CL_MSG_INFO1_CHECK_KEY   (1 << 6)
 
#define CL_MSG_INFO1_GET_ALL   (1 << 1)
 
#define CL_MSG_INFO1_GET_ALL_NODATA   (1 << 2)
 
#define CL_MSG_INFO1_NOBINDATA   (1 << 5)
 
#define CL_MSG_INFO1_READ   (1 << 0)
 
#define CL_MSG_INFO1_VERIFY   (1 << 3)
 
#define CL_MSG_INFO1_XDS   (1 << 4)
 
#define CL_MSG_INFO2_BIN_CREATE_ONLY   (1 << 6)
 
#define CL_MSG_INFO2_CREATE_ONLY   (1 << 5)
 
#define CL_MSG_INFO2_DELETE   (1 << 1)
 
#define CL_MSG_INFO2_GENERATION   (1 << 2)
 
#define CL_MSG_INFO2_GENERATION_DUP   (1 << 4)
 
#define CL_MSG_INFO2_GENERATION_GT   (1 << 3)
 
#define CL_MSG_INFO2_WRITE   (1 << 0)
 
#define CL_MSG_INFO2_WRITE_MERGE   (1 << 7)
 
#define CL_MSG_INFO3_BIN_REPLACE_ONLY   (1 << 6)
 
#define CL_MSG_INFO3_CREATE_OR_REPLACE   (1 << 4)
 
#define CL_MSG_INFO3_LAST   (1 << 0)
 
#define CL_MSG_INFO3_REPLACE_ONLY   (1 << 5)
 
#define CL_MSG_INFO3_TOMBSTONE   (1 << 2)
 
#define CL_MSG_INFO3_TRACE   (1 << 1)
 
#define CL_MSG_INFO3_UPDATE_ONLY   (1 << 3)
 
#define CL_MSG_OP_APPEND   9
 
#define CL_MSG_OP_APPEND_SEGMENT   6
 
#define CL_MSG_OP_APPEND_SEGMENT_EXT   7
 
#define CL_MSG_OP_APPEND_SEGMENT_QUERY   8
 
#define CL_MSG_OP_INCR   5
 
#define CL_MSG_OP_MC_APPEND   130
 
#define CL_MSG_OP_MC_INCR   129
 
#define CL_MSG_OP_MC_PREPEND   131
 
#define CL_MSG_OP_MC_TOUCH   132
 
#define CL_MSG_OP_PREPEND   10
 
#define CL_MSG_OP_READ   1
 
#define CL_MSG_OP_TOUCH   11
 
#define CL_MSG_OP_WRITE   2
 
#define CL_MSG_OP_WRITE_NOW   4
 
#define CL_MSG_OP_WRITE_UNIQUE   3
 
#define CL_PROTO_RESULT_FAIL_BIN_EXISTS   6
 
#define CL_PROTO_RESULT_FAIL_BIN_NOT_FOUND   17
 
#define CL_PROTO_RESULT_FAIL_CLUSTER_KEY_MISMATCH   7
 
#define CL_PROTO_RESULT_FAIL_GENERATION   3
 
#define CL_PROTO_RESULT_FAIL_INCOMPATIBLE_TYPE   12
 
#define CL_PROTO_RESULT_FAIL_KEY_BUSY   14
 
#define CL_PROTO_RESULT_FAIL_KEY_EXISTS   5
 
#define CL_PROTO_RESULT_FAIL_NOTFOUND   2
 
#define CL_PROTO_RESULT_FAIL_NOXDS   10
 
#define CL_PROTO_RESULT_FAIL_PARAMETER   4
 
#define CL_PROTO_RESULT_FAIL_PARTITION_OUT_OF_SPACE   8
 
#define CL_PROTO_RESULT_FAIL_RECORD_TOO_BIG   13
 
#define CL_PROTO_RESULT_FAIL_TIMEOUT   9
 
#define CL_PROTO_RESULT_FAIL_UNAVAILABLE   11
 
#define CL_PROTO_RESULT_FAIL_UNKNOWN   1
 
#define CL_PROTO_RESULT_OK   0
 
#define CL_PROTO_TYPE_CL_MSG   3
 
#define CL_PROTO_TYPE_CL_MSG_COMPRESSED   4
 
#define CL_PROTO_TYPE_INFO   1
 
#define CL_PROTO_VERSION   2
 
#define CL_RESULT_FAIL   1
 
#define CL_RESULT_NOTFOUND   2
 
#define CL_RESULT_OK   0
 
#define CL_UDF_MSG_VAL_RECORD   0
 
#define CL_UDF_MSG_VAL_STREAM   1
 

Enumerations

enum  cl_particle_type {
  CL_PARTICLE_TYPE_NULL = 0, CL_PARTICLE_TYPE_INTEGER = 1, CL_PARTICLE_TYPE_FLOAT = 2, CL_PARTICLE_TYPE_STRING = 3,
  CL_PARTICLE_TYPE_BLOB = 4, CL_PARTICLE_TYPE_TIMESTAMP = 5, CL_PARTICLE_TYPE_DIGEST = 6, CL_PARTICLE_TYPE_JAVA_BLOB = 7,
  CL_PARTICLE_TYPE_CSHARP_BLOB = 8, CL_PARTICLE_TYPE_PYTHON_BLOB = 9, CL_PARTICLE_TYPE_RUBY_BLOB = 10, CL_PARTICLE_TYPE_MAX = 11,
  CL_PARTICLE_TYPE_NULL = 0, CL_PARTICLE_TYPE_INTEGER = 1, CL_PARTICLE_TYPE_FLOAT = 2, CL_PARTICLE_TYPE_STRING = 3,
  CL_PARTICLE_TYPE_BLOB = 4, CL_PARTICLE_TYPE_TIMESTAMP = 5, CL_PARTICLE_TYPE_DIGEST = 6, CL_PARTICLE_TYPE_JAVA_BLOB = 7,
  CL_PARTICLE_TYPE_CSHARP_BLOB = 8, CL_PARTICLE_TYPE_PYTHON_BLOB = 9, CL_PARTICLE_TYPE_RUBY_BLOB = 10, CL_PARTICLE_TYPE_MAX = 11
}
 

Functions

struct cl_proto_s __attribute__ ((__packed__)) cl_proto
 
static cl_msg_field * cl_msg_field_get (cl_msg *msg, uint8_t type)
 
static cl_msg_field * cl_msg_field_get_next (cl_msg_field *mf)
 
static uint32_t cl_msg_field_get_value_sz (cl_msg_field *f)
 
static cl_msg_op * cl_msg_op_get_next (cl_msg_op *op)
 
static uint8_t * cl_msg_op_get_value_p (cl_msg_op *op)
 
static uint32_t cl_msg_op_get_value_sz (cl_msg_op *op)
 
static cl_msg_op * cl_msg_op_iterate (cl_msg *msg, cl_msg_op *current, int *n)
 
void cl_msg_swap_field_from_be (cl_msg_field *mf)
 
void cl_msg_swap_field_to_be (cl_msg_field *mf)
 
void cl_msg_swap_header_from_be (cl_msg *m)
 
void cl_msg_swap_header_to_be (cl_msg *m)
 
void cl_msg_swap_op_from_be (cl_msg_op *op)
 
void cl_msg_swap_op_to_be (cl_msg_op *op)
 
static size_t cl_proto_size_get (cl_proto *proto)
 
void cl_proto_swap_from_be (cl_proto *m)
 
void cl_proto_swap_to_be (cl_proto *m)
 

Variables

uint8_t data []
 
cl_msg_field f
 
uint32_t field_sz
 
uint32_t generation
 
uint8_t header_sz
 
uint8_t info1
 
uint8_t info2
 
uint8_t info3
 
uint8_t key []
 
cl_msg m
 
uint16_t n_fields
 
uint16_t n_ops
 
uint8_t name []
 
uint8_t name_sz
 
uint32_t number
 
uint8_t op
 
uint32_t op_sz
 
uint8_t particle_type
 
cl_proto proto
 
uint32_t record_ttl
 
uint8_t result_code
 
uint64_t sz
 
uint32_t transaction_ttl
 
uint8_t type
 
uint8_t unused
 
uint8_t version
 

Macro Definition Documentation

#define CL_MSG_FIELD_TYPE_BIN   3
#define CL_MSG_FIELD_TYPE_DIGEST_RIPE   4
#define CL_MSG_FIELD_TYPE_DIGEST_RIPE_ARRAY   6
#define CL_MSG_FIELD_TYPE_GU_TID   5
#define CL_MSG_FIELD_TYPE_INDEX_FILTER   23
#define CL_MSG_FIELD_TYPE_INDEX_LIMIT   24
#define CL_MSG_FIELD_TYPE_INDEX_NAME   21
#define CL_MSG_FIELD_TYPE_INDEX_ORDER_BY   25
#define CL_MSG_FIELD_TYPE_INDEX_RANGE   22
#define CL_MSG_FIELD_TYPE_KEY   2
#define CL_MSG_FIELD_TYPE_NAMESPACE   0
#define CL_MSG_FIELD_TYPE_QUERY_BINLIST   40
#define CL_MSG_FIELD_TYPE_QUERY_OPTIONS   8
#define CL_MSG_FIELD_TYPE_SCAN_OPTIONS   8
#define CL_MSG_FIELD_TYPE_SET   1
#define CL_MSG_FIELD_TYPE_TRID   7
#define CL_MSG_FIELD_TYPE_UDF_ARGLIST   32
#define CL_MSG_FIELD_TYPE_UDF_FILENAME   30
#define CL_MSG_FIELD_TYPE_UDF_FUNCTION   31
#define CL_MSG_FIELD_TYPE_UDF_OP   33
#define CL_MSG_INFO1_CHECK_KEY   (1 << 6)
#define CL_MSG_INFO1_GET_ALL   (1 << 1)
#define CL_MSG_INFO1_GET_ALL_NODATA   (1 << 2)
#define CL_MSG_INFO1_NOBINDATA   (1 << 5)
#define CL_MSG_INFO1_READ   (1 << 0)
#define CL_MSG_INFO1_VERIFY   (1 << 3)
#define CL_MSG_INFO1_XDS   (1 << 4)
#define CL_MSG_INFO2_BIN_CREATE_ONLY   (1 << 6)
#define CL_MSG_INFO2_CREATE_ONLY   (1 << 5)
#define CL_MSG_INFO2_DELETE   (1 << 1)
#define CL_MSG_INFO2_GENERATION   (1 << 2)
#define CL_MSG_INFO2_GENERATION_DUP   (1 << 4)
#define CL_MSG_INFO2_GENERATION_GT   (1 << 3)
#define CL_MSG_INFO2_WRITE   (1 << 0)
#define CL_MSG_INFO2_WRITE_MERGE   (1 << 7)
#define CL_MSG_INFO3_BIN_REPLACE_ONLY   (1 << 6)
#define CL_MSG_INFO3_CREATE_OR_REPLACE   (1 << 4)
#define CL_MSG_INFO3_LAST   (1 << 0)
#define CL_MSG_INFO3_REPLACE_ONLY   (1 << 5)
#define CL_MSG_INFO3_TOMBSTONE   (1 << 2)
#define CL_MSG_INFO3_TRACE   (1 << 1)
#define CL_MSG_INFO3_UPDATE_ONLY   (1 << 3)
#define CL_MSG_OP_APPEND   9
#define CL_MSG_OP_APPEND_SEGMENT   6
#define CL_MSG_OP_APPEND_SEGMENT_EXT   7
#define CL_MSG_OP_APPEND_SEGMENT_QUERY   8
#define CL_MSG_OP_INCR   5
#define CL_MSG_OP_MC_APPEND   130
#define CL_MSG_OP_MC_INCR   129
#define CL_MSG_OP_MC_PREPEND   131
#define CL_MSG_OP_MC_TOUCH   132
#define CL_MSG_OP_PREPEND   10
#define CL_MSG_OP_READ   1
#define CL_MSG_OP_TOUCH   11
#define CL_MSG_OP_WRITE   2
#define CL_MSG_OP_WRITE_NOW   4
#define CL_MSG_OP_WRITE_UNIQUE   3
#define CL_PROTO_RESULT_FAIL_BIN_EXISTS   6
#define CL_PROTO_RESULT_FAIL_BIN_NOT_FOUND   17
#define CL_PROTO_RESULT_FAIL_CLUSTER_KEY_MISMATCH   7
#define CL_PROTO_RESULT_FAIL_GENERATION   3
#define CL_PROTO_RESULT_FAIL_INCOMPATIBLE_TYPE   12
#define CL_PROTO_RESULT_FAIL_KEY_BUSY   14
#define CL_PROTO_RESULT_FAIL_KEY_EXISTS   5
#define CL_PROTO_RESULT_FAIL_NOTFOUND   2
#define CL_PROTO_RESULT_FAIL_NOXDS   10
#define CL_PROTO_RESULT_FAIL_PARAMETER   4
#define CL_PROTO_RESULT_FAIL_PARTITION_OUT_OF_SPACE   8
#define CL_PROTO_RESULT_FAIL_RECORD_TOO_BIG   13
#define CL_PROTO_RESULT_FAIL_TIMEOUT   9
#define CL_PROTO_RESULT_FAIL_UNAVAILABLE   11
#define CL_PROTO_RESULT_FAIL_UNKNOWN   1
#define CL_PROTO_RESULT_OK   0
#define CL_PROTO_TYPE_CL_MSG   3
#define CL_PROTO_TYPE_CL_MSG_COMPRESSED   4
#define CL_PROTO_TYPE_INFO   1
#define CL_PROTO_VERSION   2
#define CL_RESULT_FAIL   1
#define CL_RESULT_NOTFOUND   2
#define CL_RESULT_OK   0
#define CL_UDF_MSG_VAL_RECORD   0
#define CL_UDF_MSG_VAL_STREAM   1

Enumeration Type Documentation

Enumerator
CL_PARTICLE_TYPE_NULL 
CL_PARTICLE_TYPE_INTEGER 
CL_PARTICLE_TYPE_FLOAT 
CL_PARTICLE_TYPE_STRING 
CL_PARTICLE_TYPE_BLOB 
CL_PARTICLE_TYPE_TIMESTAMP 
CL_PARTICLE_TYPE_DIGEST 
CL_PARTICLE_TYPE_JAVA_BLOB 
CL_PARTICLE_TYPE_CSHARP_BLOB 
CL_PARTICLE_TYPE_PYTHON_BLOB 
CL_PARTICLE_TYPE_RUBY_BLOB 
CL_PARTICLE_TYPE_MAX 
CL_PARTICLE_TYPE_NULL 
CL_PARTICLE_TYPE_INTEGER 
CL_PARTICLE_TYPE_FLOAT 
CL_PARTICLE_TYPE_STRING 
CL_PARTICLE_TYPE_BLOB 
CL_PARTICLE_TYPE_TIMESTAMP 
CL_PARTICLE_TYPE_DIGEST 
CL_PARTICLE_TYPE_JAVA_BLOB 
CL_PARTICLE_TYPE_CSHARP_BLOB 
CL_PARTICLE_TYPE_PYTHON_BLOB 
CL_PARTICLE_TYPE_RUBY_BLOB 
CL_PARTICLE_TYPE_MAX 

Definition at line 67 of file target/Darwin-i386/include/citrusleaf/cf_proto.h.

Function Documentation

struct cl_proto_s __attribute__ ( (__packed__)  )
static cl_msg_field* cl_msg_field_get ( cl_msg *  msg,
uint8_t  type 
)
inlinestatic
static cl_msg_field* cl_msg_field_get_next ( cl_msg_field *  mf)
inlinestatic
static uint32_t cl_msg_field_get_value_sz ( cl_msg_field *  f)
inlinestatic
static cl_msg_op* cl_msg_op_get_next ( cl_msg_op *  op)
inlinestatic
static uint8_t* cl_msg_op_get_value_p ( cl_msg_op *  op)
inlinestatic
static uint32_t cl_msg_op_get_value_sz ( cl_msg_op *  op)
inlinestatic
static cl_msg_op* cl_msg_op_iterate ( cl_msg *  msg,
cl_msg_op *  current,
int *  n 
)
inlinestatic
void cl_msg_swap_field_from_be ( cl_msg_field *  mf)
void cl_msg_swap_field_to_be ( cl_msg_field *  mf)
void cl_msg_swap_header_from_be ( cl_msg *  m)
void cl_msg_swap_header_to_be ( cl_msg *  m)
void cl_msg_swap_op_from_be ( cl_msg_op *  op)
void cl_msg_swap_op_to_be ( cl_msg_op *  op)
static size_t cl_proto_size_get ( cl_proto *  proto)
inlinestatic
void cl_proto_swap_from_be ( cl_proto *  m)
void cl_proto_swap_to_be ( cl_proto *  m)

Variable Documentation

uint8_t data[]
cl_msg_field f
uint32_t field_sz
uint32_t generation
uint8_t header_sz
uint8_t info1
uint8_t info2
uint8_t info3
uint8_t key[]
cl_msg m
uint16_t n_fields
uint16_t n_ops
uint8_t name[]
uint8_t name_sz
uint32_t number
uint8_t op
uint32_t op_sz
uint8_t particle_type
cl_proto proto
uint32_t record_ttl
uint8_t result_code
uint64_t sz
uint32_t transaction_ttl
uint8_t type
uint8_t unused
uint8_t version