Couchbase C Client  3.2.2
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-2020 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 
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;
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;
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
186 #define LCB_CNTL_CONFIG_CCCP_NODES 0x1E
187 
198 #define LCB_CNTL_REINIT_CONNSTR 0x2B
199 
200 struct rdb_ALLOCATOR;
201 typedef struct rdb_ALLOCATOR *(*lcb_RDBALLOCFACTORY)(void);
207  lcb_RDBALLOCFACTORY factory;
208 };
220 #define LCB_CNTL_RDBALLOCFACTORY 0x27
221 
230 #define LCB_CNTL_VBGUESS_PERSIST 0x32
231 
237 #define LCB_CNTL_UNSAFE_OPTIMIZE 0x33
238 
248 #define LCB_CNTL_TCP_NODELAY 0x39
249 
255 #define LCB_CNTL_KVTIMINGS 0x3C
256 
268 #define LCB_CNTL_METRICS 0x49
269 
278 #define LCB_CNTL_VB_NOREMAP 0x5a
279 
289 #define LCB_CNTL_WAIT_FOR_CONFIG 0x5c
290 
299 #define LCB_CNTL_QUERY_GRACE_PERIOD 0x64
300 
Structure being used because function pointers can't technically be cast to void*.
Definition: cntl-private.h:245
#define LCB_CNTL_SERVER_COMMON_FIELDS
Definition: cntl-private.h:29
Definition: iops.h:939
Information describing the server
Definition: cntl-private.h:60
lcb_io_ops_type_t
Built-in I/O plugins
Definition: iops.h:902
Information about the I/O plugin.
Definition: cntl-private.h:126