Couchbase C Client  2.10.7
Asynchronous C Client for Couchbase
cntl-private.h
Go to the documentation of this file.
1 /* -*- Mode: C; tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- */
2 /*
3  * Copyright 2014 Couchbase, Inc.
4  *
5  * Licensed under the Apache License, Version 2.0 (the "License");
6  * you may not use this file except in compliance with the License.
7  * You may obtain a copy of the License at
8  *
9  * http://www.apache.org/licenses/LICENSE-2.0
10  *
11  * Unless required by applicable law or agreed to in writing, software
12  * distributed under the License is distributed on an "AS IS" BASIS,
13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  * See the License for the specific language governing permissions and
15  * limitations under the License.
16  */
17 
27 #define LCB_CNTL_SERVER_COMMON_FIELDS \
28  \
29  int index; \
30  \
31  \
32  const char *host; \
33  \
34  const char *port; \
35  \
36  int connected; \
37  \
38  \
48  union { \
49  lcb_socket_t sockfd; \
50  lcb_sockdata_t *sockptr; \
51  } sock; \
52 
53 
57 typedef struct lcb_cntl_server_st {
59  int version;
60 
61  union {
62  struct {
64  } v0;
65 
67  struct {
70  const char *sasl_mech;
71  } v1;
72  } v;
73 } lcb_cntl_server_t;
74 #undef LCB_CNTL_SERVER_COMMON_FIELDS
75 
93 #define LCB_CNTL_MEMDNODE_INFO 0x08
94 
105 #define LCB_CNTL_CONFIGNODE_INFO 0x09
106 
110 struct lcb_cntl_iops_info_st {
111  int version;
112  union {
113  struct {
119  const struct lcb_create_io_ops_st *options;
120 
126  lcb_io_ops_type_t os_default;
127 
133  lcb_io_ops_type_t effective;
134  } v0;
135  } v;
136 };
137 
153 #define LCB_CNTL_IOPS_DEFAULT_TYPES 0x10
154 
174 #define LCB_CNTL_CONFIG_HTTP_NODES 0x1D
175 
186 #define LCB_CNTL_CONFIG_CCCP_NODES 0x1E
187 
204 #define LCB_CNTL_CONFIG_ALL_NODES 0x20
205 
216 #define LCB_CNTL_REINIT_CONNSTR 0x2B
217 
218 
219 struct rdb_ALLOCATOR;
220 typedef struct rdb_ALLOCATOR* (*lcb_RDBALLOCFACTORY)(void);
221 
226  lcb_RDBALLOCFACTORY factory;
227 };
239 #define LCB_CNTL_RDBALLOCFACTORY 0x27
240 
241 
250 #define LCB_CNTL_VBGUESS_PERSIST 0x32
251 
257 #define LCB_CNTL_UNSAFE_OPTIMIZE 0x33
258 
268 #define LCB_CNTL_TCP_NODELAY 0x39
269 
275 #define LCB_CNTL_KVTIMINGS 0x3C
276 
288 #define LCB_CNTL_METRICS 0x49
289 
295 #define LCB_CNTL_USE_COLLECTIONS 0x4a
296 
305 #define LCB_CNTL_VB_NOREMAP 0x5a
306 
307 
317 #define LCB_CNTL_WAIT_FOR_CONFIG 0x5c
318 
326 #define LCB_CNTL_N1QL_GRACE_PERIOD 0x5e
327 
lcb_cntl_iops_info_st
Information about the I/O plugin.
Definition: cntl-private.h:101
lcb_cntl_server_st::version
int version
Structure version.
Definition: cntl-private.h:50
LCB_CNTL_SERVER_COMMON_FIELDS
#define LCB_CNTL_SERVER_COMMON_FIELDS
Definition: cntl-private.h:27
lcb_create_io_ops_st
Definition: iops.h:1004
lcb_cntl_server_st
Information describing the server.
Definition: cntl-private.h:48
lcb_cntl_rdballocfactory
Structure being used because function pointers can't technically be cast to void*.
Definition: cntl-private.h:216
lcb_io_ops_type_t
lcb_io_ops_type_t
Built-in I/O plugins.
Definition: iops.h:978