Couchbase C Client  3.3.12
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
47 \
48 union { \
49 lcb_socket_t sockfd; \
50 lcb_sockdata_t *sockptr; \
51 } sock;
52
57typedef 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
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
198#define LCB_CNTL_REINIT_CONNSTR 0x2B
199
200struct rdb_ALLOCATOR;
201typedef struct rdb_ALLOCATOR *(*lcb_RDBALLOCFACTORY)(void);
202
207 lcb_RDBALLOCFACTORY factory;
208};
220#define LCB_CNTL_RDBALLOCFACTORY 0x27
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
278#define LCB_CNTL_VB_NOREMAP 0x5a
279
289#define LCB_CNTL_WAIT_FOR_CONFIG 0x5c
299#define LCB_CNTL_QUERY_GRACE_PERIOD 0x64
300
#define LCB_CNTL_SERVER_COMMON_FIELDS
Definition cntl-private.h:27
Information about the I/O plugin.
Definition cntl-private.h:101
Structure being used because function pointers can't technically be cast to void*.
Definition cntl-private.h:197
Information describing the server.
Definition cntl-private.h:48
lcb_io_ops_type_t
Built-in I/O plugins.
Definition iops.h:897
Definition iops.h:930