1
// NOLINT(namespace-envoy)
2

            
3
// This file provides host-side implementations for ABI callbacks that are shared across
4
// all dynamic modules. These are the "Common Callbacks" declared in abi.h and are available
5
// regardless of which extension point is being used (HTTP/Network/Listener/UDP/Bootstrap/etc).
6

            
7
#include <string>
8

            
9
#include "envoy/server/factory_context.h"
10

            
11
#include "source/common/common/assert.h"
12
#include "source/common/common/logger.h"
13
#include "source/extensions/dynamic_modules/abi/abi.h"
14

            
15
#include "absl/container/flat_hash_map.h"
16
#include "absl/synchronization/mutex.h"
17

            
18
namespace {
19

            
20
// Process-wide function registry. Modules register function pointers by name during bootstrap,
21
// and other modules resolve them by name during configuration creation.
22
absl::Mutex function_registry_mutex;
23
absl::flat_hash_map<std::string, void*> function_registry ABSL_GUARDED_BY(function_registry_mutex);
24

            
25
// Process-wide shared data registry. Modules register opaque data pointers by name during
26
// bootstrap, and other modules resolve them by name during configuration creation. Unlike the
27
// function registry, this allows overwriting existing entries.
28
absl::Mutex shared_data_registry_mutex;
29
absl::flat_hash_map<std::string, void*>
30
    shared_data_registry ABSL_GUARDED_BY(shared_data_registry_mutex);
31

            
32
} // namespace
33

            
34
extern "C" {
35

            
36
122
bool envoy_dynamic_module_callback_log_enabled(envoy_dynamic_module_type_log_level level) {
37
122
  return Envoy::Logger::Registry::getLog(Envoy::Logger::Id::dynamic_modules).level() <=
38
122
         static_cast<spdlog::level::level_enum>(level);
39
122
}
40

            
41
void envoy_dynamic_module_callback_log(envoy_dynamic_module_type_log_level level,
42
84
                                       envoy_dynamic_module_type_module_buffer message) {
43
84
  absl::string_view message_view(message.ptr, message.length);
44
84
  spdlog::logger& logger = Envoy::Logger::Registry::getLog(Envoy::Logger::Id::dynamic_modules);
45

            
46
84
  switch (level) {
47
1
  case envoy_dynamic_module_type_log_level_Trace:
48
1
    ENVOY_LOG_TO_LOGGER(logger, trace, "{}", message_view);
49
1
    break;
50
7
  case envoy_dynamic_module_type_log_level_Debug:
51
7
    ENVOY_LOG_TO_LOGGER(logger, debug, "{}", message_view);
52
7
    break;
53
56
  case envoy_dynamic_module_type_log_level_Info:
54
56
    ENVOY_LOG_TO_LOGGER(logger, info, "{}", message_view);
55
56
    break;
56
1
  case envoy_dynamic_module_type_log_level_Warn:
57
1
    ENVOY_LOG_TO_LOGGER(logger, warn, "{}", message_view);
58
1
    break;
59
9
  case envoy_dynamic_module_type_log_level_Error:
60
9
    ENVOY_LOG_TO_LOGGER(logger, error, "{}", message_view);
61
9
    break;
62
9
  case envoy_dynamic_module_type_log_level_Critical:
63
9
    ENVOY_LOG_TO_LOGGER(logger, critical, "{}", message_view);
64
9
    break;
65
1
  default:
66
1
    break;
67
84
  }
68
84
}
69

            
70
57
uint32_t envoy_dynamic_module_callback_get_concurrency() {
71
57
  using namespace Envoy;
72
57
  ASSERT_IS_MAIN_OR_TEST_THREAD();
73
57
  auto context = Server::Configuration::ServerFactoryContextInstance::getExisting();
74
57
  return context->options().concurrency();
75
57
}
76

            
77
// ---------------------- Function registry callbacks --------------------------------
78

            
79
bool envoy_dynamic_module_callback_register_function(envoy_dynamic_module_type_module_buffer key,
80
9
                                                     void* function_ptr) {
81
9
  if (function_ptr == nullptr) {
82
1
    return false;
83
1
  }
84
8
  std::string key_str(key.ptr, key.length);
85
8
  absl::WriterMutexLock lock(function_registry_mutex);
86
8
  auto [it, inserted] = function_registry.try_emplace(key_str, function_ptr);
87
8
  return inserted;
88
9
}
89

            
90
bool envoy_dynamic_module_callback_get_function(envoy_dynamic_module_type_module_buffer key,
91
13
                                                void** function_ptr_out) {
92
13
  std::string key_str(key.ptr, key.length);
93
13
  absl::ReaderMutexLock lock(function_registry_mutex);
94
13
  auto it = function_registry.find(key_str);
95
13
  if (it != function_registry.end()) {
96
10
    *function_ptr_out = it->second;
97
10
    return true;
98
10
  }
99
3
  return false;
100
13
}
101

            
102
// ---------------------- Shared data registry callbacks --------------------------------
103

            
104
bool envoy_dynamic_module_callback_register_shared_data(envoy_dynamic_module_type_module_buffer key,
105
8
                                                        void* data_ptr) {
106
8
  if (data_ptr == nullptr) {
107
1
    return false;
108
1
  }
109
7
  std::string key_str(key.ptr, key.length);
110
7
  absl::WriterMutexLock lock(shared_data_registry_mutex);
111
7
  shared_data_registry[key_str] = data_ptr;
112
7
  return true;
113
8
}
114

            
115
bool envoy_dynamic_module_callback_get_shared_data(envoy_dynamic_module_type_module_buffer key,
116
9
                                                   void** data_ptr_out) {
117
9
  std::string key_str(key.ptr, key.length);
118
9
  absl::ReaderMutexLock lock(shared_data_registry_mutex);
119
9
  auto it = shared_data_registry.find(key_str);
120
9
  if (it != shared_data_registry.end()) {
121
6
    *data_ptr_out = it->second;
122
6
    return true;
123
6
  }
124
3
  return false;
125
9
}
126

            
127
// ---------------------- Bootstrap extension scheduler callbacks ------------------------
128
// These are weak symbols that provide default stub implementations. The actual implementations
129
// are provided in the bootstrap extension abi_impl.cc when the bootstrap extension is used.
130
// This is necessary because the Rust SDK generates bindings for all callbacks in abi.h, and
131
// these symbols must be resolvable when any Rust module is loaded.
132
//
133
// We use IS_ENVOY_BUG instead of PANIC to allow coverage collection in tests. In non-coverage
134
// debug builds, IS_ENVOY_BUG will abort; in coverage builds it logs and continues, allowing the
135
// test to verify the error path was hit.
136

            
137
__attribute__((weak)) envoy_dynamic_module_type_bootstrap_extension_config_scheduler_module_ptr
138
envoy_dynamic_module_callback_bootstrap_extension_config_scheduler_new(
139
1
    envoy_dynamic_module_type_bootstrap_extension_config_envoy_ptr) {
140
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_bootstrap_extension_config_scheduler_new: "
141
1
               "not implemented in this context");
142
1
  return nullptr;
143
1
}
144

            
145
__attribute__((weak)) void
146
envoy_dynamic_module_callback_bootstrap_extension_config_scheduler_delete(
147
1
    envoy_dynamic_module_type_bootstrap_extension_config_scheduler_module_ptr) {
148
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_bootstrap_extension_config_scheduler_delete: "
149
1
               "not implemented in this context");
150
1
}
151

            
152
__attribute__((weak)) void
153
envoy_dynamic_module_callback_bootstrap_extension_config_scheduler_commit(
154
1
    envoy_dynamic_module_type_bootstrap_extension_config_scheduler_module_ptr, uint64_t) {
155
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_bootstrap_extension_config_scheduler_commit: "
156
1
               "not implemented in this context");
157
1
}
158

            
159
__attribute__((weak)) void
160
envoy_dynamic_module_callback_bootstrap_extension_config_signal_init_complete(
161
1
    envoy_dynamic_module_type_bootstrap_extension_config_envoy_ptr) {
162
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_bootstrap_extension_config_signal_init_complete: "
163
1
               "not implemented in this context");
164
1
}
165

            
166
__attribute__((weak)) envoy_dynamic_module_type_http_callout_init_result
167
envoy_dynamic_module_callback_bootstrap_extension_http_callout(
168
    envoy_dynamic_module_type_bootstrap_extension_config_envoy_ptr, uint64_t* /* callout_id_out */,
169
    envoy_dynamic_module_type_module_buffer /* cluster_name */,
170
    envoy_dynamic_module_type_module_http_header* /* headers */, size_t /* headers_size */,
171
1
    envoy_dynamic_module_type_module_buffer /* body */, uint64_t /* timeout_milliseconds */) {
172
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_bootstrap_extension_http_callout: "
173
1
               "not implemented in this context");
174
1
  return envoy_dynamic_module_type_http_callout_init_result_CannotCreateRequest;
175
1
}
176

            
177
// ---------------------- Bootstrap extension stats access callbacks ------------------------
178
// These are weak symbols that provide default stub implementations. The actual implementations
179
// are provided in the bootstrap extension abi_impl.cc when the bootstrap extension is used.
180

            
181
__attribute__((weak)) bool envoy_dynamic_module_callback_bootstrap_extension_get_counter_value(
182
    envoy_dynamic_module_type_bootstrap_extension_envoy_ptr,
183
1
    envoy_dynamic_module_type_module_buffer, uint64_t*) {
184
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_bootstrap_extension_get_counter_value: "
185
1
               "not implemented in this context");
186
1
  return false;
187
1
}
188

            
189
__attribute__((weak)) bool envoy_dynamic_module_callback_bootstrap_extension_get_gauge_value(
190
    envoy_dynamic_module_type_bootstrap_extension_envoy_ptr,
191
1
    envoy_dynamic_module_type_module_buffer, uint64_t*) {
192
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_bootstrap_extension_get_gauge_value: "
193
1
               "not implemented in this context");
194
1
  return false;
195
1
}
196

            
197
__attribute__((weak)) bool envoy_dynamic_module_callback_bootstrap_extension_get_histogram_summary(
198
    envoy_dynamic_module_type_bootstrap_extension_envoy_ptr,
199
1
    envoy_dynamic_module_type_module_buffer, uint64_t*, double*) {
200
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_bootstrap_extension_get_histogram_summary: "
201
1
               "not implemented in this context");
202
1
  return false;
203
1
}
204

            
205
__attribute__((weak)) void envoy_dynamic_module_callback_bootstrap_extension_iterate_counters(
206
    envoy_dynamic_module_type_bootstrap_extension_envoy_ptr,
207
1
    envoy_dynamic_module_type_counter_iterator_fn, void*) {
208
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_bootstrap_extension_iterate_counters: "
209
1
               "not implemented in this context");
210
1
}
211

            
212
__attribute__((weak)) void envoy_dynamic_module_callback_bootstrap_extension_iterate_gauges(
213
    envoy_dynamic_module_type_bootstrap_extension_envoy_ptr,
214
1
    envoy_dynamic_module_type_gauge_iterator_fn, void*) {
215
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_bootstrap_extension_iterate_gauges: "
216
1
               "not implemented in this context");
217
1
}
218

            
219
// ---------------------- Bootstrap extension stats definition and update callbacks
220
// --------------------- These are weak symbols that provide default stub implementations. The
221
// actual implementations are provided in the bootstrap extension abi_impl.cc when the bootstrap
222
// extension is used.
223

            
224
__attribute__((weak)) envoy_dynamic_module_type_metrics_result
225
envoy_dynamic_module_callback_bootstrap_extension_config_define_counter(
226
    envoy_dynamic_module_type_bootstrap_extension_config_envoy_ptr,
227
    envoy_dynamic_module_type_module_buffer, envoy_dynamic_module_type_module_buffer*, size_t,
228
1
    size_t*) {
229
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_bootstrap_extension_config_define_counter: "
230
1
               "not implemented in this context");
231
1
  return envoy_dynamic_module_type_metrics_result_MetricNotFound;
232
1
}
233

            
234
__attribute__((weak)) envoy_dynamic_module_type_metrics_result
235
envoy_dynamic_module_callback_bootstrap_extension_config_increment_counter(
236
    envoy_dynamic_module_type_bootstrap_extension_config_envoy_ptr, size_t,
237
1
    envoy_dynamic_module_type_module_buffer*, size_t, uint64_t) {
238
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_bootstrap_extension_config_increment_counter: "
239
1
               "not implemented in this context");
240
1
  return envoy_dynamic_module_type_metrics_result_MetricNotFound;
241
1
}
242

            
243
__attribute__((weak)) envoy_dynamic_module_type_metrics_result
244
envoy_dynamic_module_callback_bootstrap_extension_config_define_gauge(
245
    envoy_dynamic_module_type_bootstrap_extension_config_envoy_ptr,
246
    envoy_dynamic_module_type_module_buffer, envoy_dynamic_module_type_module_buffer*, size_t,
247
1
    size_t*) {
248
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_bootstrap_extension_config_define_gauge: "
249
1
               "not implemented in this context");
250
1
  return envoy_dynamic_module_type_metrics_result_MetricNotFound;
251
1
}
252

            
253
__attribute__((weak)) envoy_dynamic_module_type_metrics_result
254
envoy_dynamic_module_callback_bootstrap_extension_config_set_gauge(
255
    envoy_dynamic_module_type_bootstrap_extension_config_envoy_ptr, size_t,
256
1
    envoy_dynamic_module_type_module_buffer*, size_t, uint64_t) {
257
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_bootstrap_extension_config_set_gauge: "
258
1
               "not implemented in this context");
259
1
  return envoy_dynamic_module_type_metrics_result_MetricNotFound;
260
1
}
261

            
262
__attribute__((weak)) envoy_dynamic_module_type_metrics_result
263
envoy_dynamic_module_callback_bootstrap_extension_config_increment_gauge(
264
    envoy_dynamic_module_type_bootstrap_extension_config_envoy_ptr, size_t,
265
1
    envoy_dynamic_module_type_module_buffer*, size_t, uint64_t) {
266
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_bootstrap_extension_config_increment_gauge: "
267
1
               "not implemented in this context");
268
1
  return envoy_dynamic_module_type_metrics_result_MetricNotFound;
269
1
}
270

            
271
__attribute__((weak)) envoy_dynamic_module_type_metrics_result
272
envoy_dynamic_module_callback_bootstrap_extension_config_decrement_gauge(
273
    envoy_dynamic_module_type_bootstrap_extension_config_envoy_ptr, size_t,
274
1
    envoy_dynamic_module_type_module_buffer*, size_t, uint64_t) {
275
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_bootstrap_extension_config_decrement_gauge: "
276
1
               "not implemented in this context");
277
1
  return envoy_dynamic_module_type_metrics_result_MetricNotFound;
278
1
}
279

            
280
__attribute__((weak)) envoy_dynamic_module_type_metrics_result
281
envoy_dynamic_module_callback_bootstrap_extension_config_define_histogram(
282
    envoy_dynamic_module_type_bootstrap_extension_config_envoy_ptr,
283
    envoy_dynamic_module_type_module_buffer, envoy_dynamic_module_type_module_buffer*, size_t,
284
1
    size_t*) {
285
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_bootstrap_extension_config_define_histogram: "
286
1
               "not implemented in this context");
287
1
  return envoy_dynamic_module_type_metrics_result_MetricNotFound;
288
1
}
289

            
290
__attribute__((weak)) envoy_dynamic_module_type_metrics_result
291
envoy_dynamic_module_callback_bootstrap_extension_config_record_histogram_value(
292
    envoy_dynamic_module_type_bootstrap_extension_config_envoy_ptr, size_t,
293
1
    envoy_dynamic_module_type_module_buffer*, size_t, uint64_t) {
294
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_bootstrap_extension_config_record_histogram_value: "
295
1
               "not implemented in this context");
296
1
  return envoy_dynamic_module_type_metrics_result_MetricNotFound;
297
1
}
298

            
299
// ---------------------- Cert Validator callbacks ------------------------
300
// These are weak symbols that provide default stub implementations. The actual implementation
301
// is provided in the cert validator config.cc when the cert validator extension is used.
302

            
303
__attribute__((weak)) void envoy_dynamic_module_callback_cert_validator_set_error_details(
304
    envoy_dynamic_module_type_cert_validator_config_envoy_ptr,
305
1
    envoy_dynamic_module_type_module_buffer) {
306
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_cert_validator_set_error_details: "
307
1
               "not implemented in this context");
308
1
}
309

            
310
__attribute__((weak)) bool envoy_dynamic_module_callback_cert_validator_set_filter_state(
311
    envoy_dynamic_module_type_cert_validator_config_envoy_ptr,
312
1
    envoy_dynamic_module_type_module_buffer, envoy_dynamic_module_type_module_buffer) {
313
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_cert_validator_set_filter_state: "
314
1
               "not implemented in this context");
315
1
  return false;
316
1
}
317

            
318
__attribute__((weak)) bool envoy_dynamic_module_callback_cert_validator_get_filter_state(
319
    envoy_dynamic_module_type_cert_validator_config_envoy_ptr,
320
1
    envoy_dynamic_module_type_module_buffer, envoy_dynamic_module_type_envoy_buffer*) {
321
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_cert_validator_get_filter_state: "
322
1
               "not implemented in this context");
323
1
  return false;
324
1
}
325

            
326
// ---------------------- Bootstrap extension admin handler callbacks ------------------------
327
// These are weak symbols that provide default stub implementations. The actual implementations
328
// are provided in the bootstrap extension abi_impl.cc when the bootstrap extension is used.
329

            
330
__attribute__((weak)) void envoy_dynamic_module_callback_bootstrap_extension_admin_set_response(
331
    envoy_dynamic_module_type_bootstrap_extension_config_envoy_ptr,
332
1
    envoy_dynamic_module_type_module_buffer) {
333
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_bootstrap_extension_admin_set_response: "
334
1
               "not implemented in this context");
335
1
}
336

            
337
__attribute__((weak)) bool envoy_dynamic_module_callback_bootstrap_extension_register_admin_handler(
338
    envoy_dynamic_module_type_bootstrap_extension_config_envoy_ptr,
339
1
    envoy_dynamic_module_type_module_buffer, envoy_dynamic_module_type_module_buffer, bool, bool) {
340
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_bootstrap_extension_register_admin_handler: "
341
1
               "not implemented in this context");
342
1
  return false;
343
1
}
344

            
345
__attribute__((weak)) bool envoy_dynamic_module_callback_bootstrap_extension_remove_admin_handler(
346
    envoy_dynamic_module_type_bootstrap_extension_config_envoy_ptr,
347
1
    envoy_dynamic_module_type_module_buffer) {
348
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_bootstrap_extension_remove_admin_handler: "
349
1
               "not implemented in this context");
350
1
  return false;
351
1
}
352

            
353
// ---------------------- Bootstrap extension timer callbacks ------------------------
354
// These are weak symbols that provide default stub implementations. The actual implementations
355
// are provided in the bootstrap extension abi_impl.cc when the bootstrap extension is used.
356

            
357
__attribute__((weak)) envoy_dynamic_module_type_bootstrap_extension_timer_module_ptr
358
envoy_dynamic_module_callback_bootstrap_extension_timer_new(
359
1
    envoy_dynamic_module_type_bootstrap_extension_config_envoy_ptr) {
360
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_bootstrap_extension_timer_new: "
361
1
               "not implemented in this context");
362
1
  return nullptr;
363
1
}
364

            
365
__attribute__((weak)) void envoy_dynamic_module_callback_bootstrap_extension_timer_enable(
366
1
    envoy_dynamic_module_type_bootstrap_extension_timer_module_ptr, uint64_t) {
367
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_bootstrap_extension_timer_enable: "
368
1
               "not implemented in this context");
369
1
}
370

            
371
__attribute__((weak)) void envoy_dynamic_module_callback_bootstrap_extension_timer_disable(
372
1
    envoy_dynamic_module_type_bootstrap_extension_timer_module_ptr) {
373
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_bootstrap_extension_timer_disable: "
374
1
               "not implemented in this context");
375
1
}
376

            
377
__attribute__((weak)) bool envoy_dynamic_module_callback_bootstrap_extension_timer_enabled(
378
1
    envoy_dynamic_module_type_bootstrap_extension_timer_module_ptr) {
379
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_bootstrap_extension_timer_enabled: "
380
1
               "not implemented in this context");
381
1
  return false;
382
1
}
383

            
384
__attribute__((weak)) void envoy_dynamic_module_callback_bootstrap_extension_timer_delete(
385
1
    envoy_dynamic_module_type_bootstrap_extension_timer_module_ptr) {
386
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_bootstrap_extension_timer_delete: "
387
1
               "not implemented in this context");
388
1
}
389

            
390
__attribute__((weak)) bool
391
envoy_dynamic_module_callback_bootstrap_extension_enable_cluster_lifecycle(
392
    envoy_dynamic_module_type_bootstrap_extension_config_envoy_ptr) {
393
  IS_ENVOY_BUG("envoy_dynamic_module_callback_bootstrap_extension_enable_cluster_lifecycle: "
394
               "not implemented in this context");
395
  return false;
396
}
397

            
398
__attribute__((weak)) bool
399
envoy_dynamic_module_callback_bootstrap_extension_enable_listener_lifecycle(
400
    envoy_dynamic_module_type_bootstrap_extension_config_envoy_ptr) {
401
  IS_ENVOY_BUG("envoy_dynamic_module_callback_bootstrap_extension_enable_listener_lifecycle: "
402
               "not implemented in this context");
403
  return false;
404
}
405

            
406
// ---------------------- Cluster extension callbacks ------------------------
407
// These are weak symbols that provide default stub implementations. The actual implementations
408
// are provided in the cluster extension abi_impl.cc when the cluster extension is used.
409

            
410
__attribute__((weak)) bool envoy_dynamic_module_callback_cluster_add_hosts(
411
    envoy_dynamic_module_type_cluster_envoy_ptr, uint32_t,
412
    const envoy_dynamic_module_type_module_buffer*, const uint32_t*,
413
    const envoy_dynamic_module_type_module_buffer*, const envoy_dynamic_module_type_module_buffer*,
414
    const envoy_dynamic_module_type_module_buffer*, const envoy_dynamic_module_type_module_buffer*,
415
1
    size_t, size_t, envoy_dynamic_module_type_cluster_host_envoy_ptr*) {
416
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_cluster_add_hosts: "
417
1
               "not implemented in this context");
418
1
  return false;
419
1
}
420

            
421
__attribute__((weak)) size_t envoy_dynamic_module_callback_cluster_remove_hosts(
422
    envoy_dynamic_module_type_cluster_envoy_ptr,
423
1
    const envoy_dynamic_module_type_cluster_host_envoy_ptr*, size_t) {
424
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_cluster_remove_hosts: "
425
1
               "not implemented in this context");
426
1
  return 0;
427
1
}
428

            
429
__attribute__((weak)) bool envoy_dynamic_module_callback_cluster_update_host_health(
430
    envoy_dynamic_module_type_cluster_envoy_ptr, envoy_dynamic_module_type_cluster_host_envoy_ptr,
431
1
    envoy_dynamic_module_type_host_health) {
432
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_cluster_update_host_health: "
433
1
               "not implemented in this context");
434
1
  return false;
435
1
}
436

            
437
__attribute__((weak)) envoy_dynamic_module_type_cluster_host_envoy_ptr
438
envoy_dynamic_module_callback_cluster_find_host_by_address(
439
1
    envoy_dynamic_module_type_cluster_envoy_ptr, envoy_dynamic_module_type_module_buffer) {
440
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_cluster_find_host_by_address: "
441
1
               "not implemented in this context");
442
1
  return nullptr;
443
1
}
444

            
445
__attribute__((weak)) envoy_dynamic_module_type_cluster_host_envoy_ptr
446
envoy_dynamic_module_callback_cluster_lb_find_host_by_address(
447
1
    envoy_dynamic_module_type_cluster_lb_envoy_ptr, envoy_dynamic_module_type_module_buffer) {
448
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_cluster_lb_find_host_by_address: "
449
1
               "not implemented in this context");
450
1
  return nullptr;
451
1
}
452

            
453
__attribute__((weak)) envoy_dynamic_module_type_cluster_host_envoy_ptr
454
envoy_dynamic_module_callback_cluster_lb_get_host(envoy_dynamic_module_type_cluster_lb_envoy_ptr,
455
1
                                                  uint32_t, size_t) {
456
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_cluster_lb_get_host: "
457
1
               "not implemented in this context");
458
1
  return nullptr;
459
1
}
460

            
461
__attribute__((weak)) bool envoy_dynamic_module_callback_cluster_lb_get_member_update_host_address(
462
    envoy_dynamic_module_type_cluster_lb_envoy_ptr, size_t, bool,
463
1
    envoy_dynamic_module_type_envoy_buffer*) {
464
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_cluster_lb_get_member_update_host_address: "
465
1
               "not implemented in this context");
466
1
  return false;
467
1
}
468

            
469
__attribute__((weak)) void envoy_dynamic_module_callback_cluster_pre_init_complete(
470
1
    envoy_dynamic_module_type_cluster_envoy_ptr) {
471
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_cluster_pre_init_complete: "
472
1
               "not implemented in this context");
473
1
}
474

            
475
__attribute__((weak)) size_t envoy_dynamic_module_callback_cluster_lb_get_healthy_host_count(
476
1
    envoy_dynamic_module_type_cluster_lb_envoy_ptr, uint32_t) {
477
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_cluster_lb_get_healthy_host_count: "
478
1
               "not implemented in this context");
479
1
  return 0;
480
1
}
481

            
482
__attribute__((weak)) envoy_dynamic_module_type_cluster_host_envoy_ptr
483
envoy_dynamic_module_callback_cluster_lb_get_healthy_host(
484
1
    envoy_dynamic_module_type_cluster_lb_envoy_ptr, uint32_t, size_t) {
485
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_cluster_lb_get_healthy_host: "
486
1
               "not implemented in this context");
487
1
  return nullptr;
488
1
}
489

            
490
__attribute__((weak)) void envoy_dynamic_module_callback_cluster_lb_get_cluster_name(
491
1
    envoy_dynamic_module_type_cluster_lb_envoy_ptr, envoy_dynamic_module_type_envoy_buffer*) {
492
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_cluster_lb_get_cluster_name: "
493
1
               "not implemented in this context");
494
1
}
495

            
496
__attribute__((weak)) size_t envoy_dynamic_module_callback_cluster_lb_get_hosts_count(
497
1
    envoy_dynamic_module_type_cluster_lb_envoy_ptr, uint32_t) {
498
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_cluster_lb_get_hosts_count: "
499
1
               "not implemented in this context");
500
1
  return 0;
501
1
}
502

            
503
__attribute__((weak)) size_t envoy_dynamic_module_callback_cluster_lb_get_degraded_hosts_count(
504
1
    envoy_dynamic_module_type_cluster_lb_envoy_ptr, uint32_t) {
505
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_cluster_lb_get_degraded_hosts_count: "
506
1
               "not implemented in this context");
507
1
  return 0;
508
1
}
509

            
510
__attribute__((weak)) size_t envoy_dynamic_module_callback_cluster_lb_get_priority_set_size(
511
1
    envoy_dynamic_module_type_cluster_lb_envoy_ptr) {
512
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_cluster_lb_get_priority_set_size: "
513
1
               "not implemented in this context");
514
1
  return 0;
515
1
}
516

            
517
__attribute__((weak)) bool envoy_dynamic_module_callback_cluster_lb_get_healthy_host_address(
518
    envoy_dynamic_module_type_cluster_lb_envoy_ptr, uint32_t, size_t,
519
1
    envoy_dynamic_module_type_envoy_buffer*) {
520
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_cluster_lb_get_healthy_host_address: "
521
1
               "not implemented in this context");
522
1
  return false;
523
1
}
524

            
525
__attribute__((weak)) uint32_t envoy_dynamic_module_callback_cluster_lb_get_healthy_host_weight(
526
1
    envoy_dynamic_module_type_cluster_lb_envoy_ptr, uint32_t, size_t) {
527
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_cluster_lb_get_healthy_host_weight: "
528
1
               "not implemented in this context");
529
1
  return 0;
530
1
}
531

            
532
__attribute__((weak)) envoy_dynamic_module_type_host_health
533
envoy_dynamic_module_callback_cluster_lb_get_host_health(
534
1
    envoy_dynamic_module_type_cluster_lb_envoy_ptr, uint32_t, size_t) {
535
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_cluster_lb_get_host_health: "
536
1
               "not implemented in this context");
537
1
  return envoy_dynamic_module_type_host_health_Unhealthy;
538
1
}
539

            
540
__attribute__((weak)) bool envoy_dynamic_module_callback_cluster_lb_get_host_health_by_address(
541
    envoy_dynamic_module_type_cluster_lb_envoy_ptr, envoy_dynamic_module_type_module_buffer,
542
1
    envoy_dynamic_module_type_host_health*) {
543
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_cluster_lb_get_host_health_by_address: "
544
1
               "not implemented in this context");
545
1
  return false;
546
1
}
547

            
548
__attribute__((weak)) bool envoy_dynamic_module_callback_cluster_lb_get_host_address(
549
    envoy_dynamic_module_type_cluster_lb_envoy_ptr, uint32_t, size_t,
550
1
    envoy_dynamic_module_type_envoy_buffer*) {
551
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_cluster_lb_get_host_address: "
552
1
               "not implemented in this context");
553
1
  return false;
554
1
}
555

            
556
__attribute__((weak)) uint32_t envoy_dynamic_module_callback_cluster_lb_get_host_weight(
557
1
    envoy_dynamic_module_type_cluster_lb_envoy_ptr, uint32_t, size_t) {
558
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_cluster_lb_get_host_weight: "
559
1
               "not implemented in this context");
560
1
  return 0;
561
1
}
562

            
563
__attribute__((weak)) uint64_t envoy_dynamic_module_callback_cluster_lb_get_host_stat(
564
    envoy_dynamic_module_type_cluster_lb_envoy_ptr, uint32_t, size_t,
565
1
    envoy_dynamic_module_type_host_stat) {
566
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_cluster_lb_get_host_stat: "
567
1
               "not implemented in this context");
568
1
  return 0;
569
1
}
570

            
571
__attribute__((weak)) bool envoy_dynamic_module_callback_cluster_lb_get_host_locality(
572
    envoy_dynamic_module_type_cluster_lb_envoy_ptr, uint32_t, size_t,
573
    envoy_dynamic_module_type_envoy_buffer*, envoy_dynamic_module_type_envoy_buffer*,
574
1
    envoy_dynamic_module_type_envoy_buffer*) {
575
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_cluster_lb_get_host_locality: "
576
1
               "not implemented in this context");
577
1
  return false;
578
1
}
579

            
580
__attribute__((weak)) bool envoy_dynamic_module_callback_cluster_lb_set_host_data(
581
1
    envoy_dynamic_module_type_cluster_lb_envoy_ptr, uint32_t, size_t, uintptr_t) {
582
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_cluster_lb_set_host_data: "
583
1
               "not implemented in this context");
584
1
  return false;
585
1
}
586

            
587
__attribute__((weak)) bool envoy_dynamic_module_callback_cluster_lb_get_host_data(
588
1
    envoy_dynamic_module_type_cluster_lb_envoy_ptr, uint32_t, size_t, uintptr_t*) {
589
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_cluster_lb_get_host_data: "
590
1
               "not implemented in this context");
591
1
  return false;
592
1
}
593

            
594
__attribute__((weak)) bool envoy_dynamic_module_callback_cluster_lb_get_host_metadata_string(
595
    envoy_dynamic_module_type_cluster_lb_envoy_ptr, uint32_t, size_t,
596
    envoy_dynamic_module_type_module_buffer, envoy_dynamic_module_type_module_buffer,
597
1
    envoy_dynamic_module_type_envoy_buffer*) {
598
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_cluster_lb_get_host_metadata_string: "
599
1
               "not implemented in this context");
600
1
  return false;
601
1
}
602

            
603
__attribute__((weak)) bool envoy_dynamic_module_callback_cluster_lb_get_host_metadata_number(
604
    envoy_dynamic_module_type_cluster_lb_envoy_ptr, uint32_t, size_t,
605
1
    envoy_dynamic_module_type_module_buffer, envoy_dynamic_module_type_module_buffer, double*) {
606
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_cluster_lb_get_host_metadata_number: "
607
1
               "not implemented in this context");
608
1
  return false;
609
1
}
610

            
611
__attribute__((weak)) bool envoy_dynamic_module_callback_cluster_lb_get_host_metadata_bool(
612
    envoy_dynamic_module_type_cluster_lb_envoy_ptr, uint32_t, size_t,
613
1
    envoy_dynamic_module_type_module_buffer, envoy_dynamic_module_type_module_buffer, bool*) {
614
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_cluster_lb_get_host_metadata_bool: "
615
1
               "not implemented in this context");
616
1
  return false;
617
1
}
618

            
619
__attribute__((weak)) size_t envoy_dynamic_module_callback_cluster_lb_get_locality_count(
620
1
    envoy_dynamic_module_type_cluster_lb_envoy_ptr, uint32_t) {
621
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_cluster_lb_get_locality_count: "
622
1
               "not implemented in this context");
623
1
  return 0;
624
1
}
625

            
626
__attribute__((weak)) size_t envoy_dynamic_module_callback_cluster_lb_get_locality_host_count(
627
1
    envoy_dynamic_module_type_cluster_lb_envoy_ptr, uint32_t, size_t) {
628
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_cluster_lb_get_locality_host_count: "
629
1
               "not implemented in this context");
630
1
  return 0;
631
1
}
632

            
633
__attribute__((weak)) bool envoy_dynamic_module_callback_cluster_lb_get_locality_host_address(
634
    envoy_dynamic_module_type_cluster_lb_envoy_ptr, uint32_t, size_t, size_t,
635
1
    envoy_dynamic_module_type_envoy_buffer*) {
636
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_cluster_lb_get_locality_host_address: "
637
1
               "not implemented in this context");
638
1
  return false;
639
1
}
640

            
641
__attribute__((weak)) uint32_t envoy_dynamic_module_callback_cluster_lb_get_locality_weight(
642
1
    envoy_dynamic_module_type_cluster_lb_envoy_ptr, uint32_t, size_t) {
643
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_cluster_lb_get_locality_weight: "
644
1
               "not implemented in this context");
645
1
  return 0;
646
1
}
647

            
648
__attribute__((weak)) bool envoy_dynamic_module_callback_cluster_lb_context_compute_hash_key(
649
1
    envoy_dynamic_module_type_cluster_lb_context_envoy_ptr, uint64_t*) {
650
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_cluster_lb_context_compute_hash_key: "
651
1
               "not implemented in this context");
652
1
  return false;
653
1
}
654

            
655
__attribute__((weak)) size_t
656
envoy_dynamic_module_callback_cluster_lb_context_get_downstream_headers_size(
657
1
    envoy_dynamic_module_type_cluster_lb_context_envoy_ptr) {
658
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_cluster_lb_context_get_downstream_headers_size: "
659
1
               "not implemented in this context");
660
1
  return 0;
661
1
}
662

            
663
__attribute__((weak)) bool envoy_dynamic_module_callback_cluster_lb_context_get_downstream_headers(
664
    envoy_dynamic_module_type_cluster_lb_context_envoy_ptr,
665
1
    envoy_dynamic_module_type_envoy_http_header*) {
666
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_cluster_lb_context_get_downstream_headers: "
667
1
               "not implemented in this context");
668
1
  return false;
669
1
}
670

            
671
__attribute__((weak)) bool envoy_dynamic_module_callback_cluster_lb_context_get_downstream_header(
672
    envoy_dynamic_module_type_cluster_lb_context_envoy_ptr, envoy_dynamic_module_type_module_buffer,
673
1
    envoy_dynamic_module_type_envoy_buffer*, size_t, size_t*) {
674
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_cluster_lb_context_get_downstream_header: "
675
1
               "not implemented in this context");
676
1
  return false;
677
1
}
678

            
679
__attribute__((weak)) uint32_t
680
envoy_dynamic_module_callback_cluster_lb_context_get_host_selection_retry_count(
681
1
    envoy_dynamic_module_type_cluster_lb_context_envoy_ptr) {
682
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_cluster_lb_context_get_host_selection_retry_count: "
683
1
               "not implemented in this context");
684
1
  return 0;
685
1
}
686

            
687
__attribute__((weak)) bool
688
envoy_dynamic_module_callback_cluster_lb_context_should_select_another_host(
689
    envoy_dynamic_module_type_cluster_lb_envoy_ptr,
690
1
    envoy_dynamic_module_type_cluster_lb_context_envoy_ptr, uint32_t, size_t) {
691
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_cluster_lb_context_should_select_another_host: "
692
1
               "not implemented in this context");
693
1
  return false;
694
1
}
695

            
696
__attribute__((weak)) bool envoy_dynamic_module_callback_cluster_lb_context_get_override_host(
697
    envoy_dynamic_module_type_cluster_lb_context_envoy_ptr, envoy_dynamic_module_type_envoy_buffer*,
698
1
    bool*) {
699
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_cluster_lb_context_get_override_host: "
700
1
               "not implemented in this context");
701
1
  return false;
702
1
}
703

            
704
__attribute__((weak)) bool
705
envoy_dynamic_module_callback_cluster_lb_context_get_downstream_connection_sni(
706
    envoy_dynamic_module_type_cluster_lb_context_envoy_ptr,
707
1
    envoy_dynamic_module_type_envoy_buffer*) {
708
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_cluster_lb_context_get_downstream_connection_sni: "
709
1
               "not implemented in this context");
710
1
  return false;
711
1
}
712

            
713
__attribute__((weak)) envoy_dynamic_module_type_cluster_scheduler_module_ptr
714
1
envoy_dynamic_module_callback_cluster_scheduler_new(envoy_dynamic_module_type_cluster_envoy_ptr) {
715
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_cluster_scheduler_new: "
716
1
               "not implemented in this context");
717
1
  return nullptr;
718
1
}
719

            
720
__attribute__((weak)) void envoy_dynamic_module_callback_cluster_scheduler_delete(
721
1
    envoy_dynamic_module_type_cluster_scheduler_module_ptr) {
722
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_cluster_scheduler_delete: "
723
1
               "not implemented in this context");
724
1
}
725

            
726
__attribute__((weak)) void envoy_dynamic_module_callback_cluster_scheduler_commit(
727
1
    envoy_dynamic_module_type_cluster_scheduler_module_ptr, uint64_t) {
728
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_cluster_scheduler_commit: "
729
1
               "not implemented in this context");
730
1
}
731

            
732
__attribute__((weak)) envoy_dynamic_module_type_metrics_result
733
envoy_dynamic_module_callback_cluster_config_define_counter(
734
    envoy_dynamic_module_type_cluster_config_envoy_ptr, envoy_dynamic_module_type_module_buffer,
735
1
    envoy_dynamic_module_type_module_buffer*, size_t, size_t*) {
736
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_cluster_config_define_counter: "
737
1
               "not implemented in this context");
738
1
  return envoy_dynamic_module_type_metrics_result_Success;
739
1
}
740

            
741
__attribute__((weak)) envoy_dynamic_module_type_metrics_result
742
envoy_dynamic_module_callback_cluster_config_increment_counter(
743
    envoy_dynamic_module_type_cluster_config_envoy_ptr, size_t,
744
1
    envoy_dynamic_module_type_module_buffer*, size_t, uint64_t) {
745
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_cluster_config_increment_counter: "
746
1
               "not implemented in this context");
747
1
  return envoy_dynamic_module_type_metrics_result_Success;
748
1
}
749

            
750
__attribute__((weak)) envoy_dynamic_module_type_metrics_result
751
envoy_dynamic_module_callback_cluster_config_define_gauge(
752
    envoy_dynamic_module_type_cluster_config_envoy_ptr, envoy_dynamic_module_type_module_buffer,
753
1
    envoy_dynamic_module_type_module_buffer*, size_t, size_t*) {
754
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_cluster_config_define_gauge: "
755
1
               "not implemented in this context");
756
1
  return envoy_dynamic_module_type_metrics_result_Success;
757
1
}
758

            
759
__attribute__((weak)) envoy_dynamic_module_type_metrics_result
760
envoy_dynamic_module_callback_cluster_config_set_gauge(
761
    envoy_dynamic_module_type_cluster_config_envoy_ptr, size_t,
762
1
    envoy_dynamic_module_type_module_buffer*, size_t, uint64_t) {
763
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_cluster_config_set_gauge: "
764
1
               "not implemented in this context");
765
1
  return envoy_dynamic_module_type_metrics_result_Success;
766
1
}
767

            
768
__attribute__((weak)) envoy_dynamic_module_type_metrics_result
769
envoy_dynamic_module_callback_cluster_config_increment_gauge(
770
    envoy_dynamic_module_type_cluster_config_envoy_ptr, size_t,
771
1
    envoy_dynamic_module_type_module_buffer*, size_t, uint64_t) {
772
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_cluster_config_increment_gauge: "
773
1
               "not implemented in this context");
774
1
  return envoy_dynamic_module_type_metrics_result_Success;
775
1
}
776

            
777
__attribute__((weak)) envoy_dynamic_module_type_metrics_result
778
envoy_dynamic_module_callback_cluster_config_decrement_gauge(
779
    envoy_dynamic_module_type_cluster_config_envoy_ptr, size_t,
780
1
    envoy_dynamic_module_type_module_buffer*, size_t, uint64_t) {
781
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_cluster_config_decrement_gauge: "
782
1
               "not implemented in this context");
783
1
  return envoy_dynamic_module_type_metrics_result_Success;
784
1
}
785

            
786
__attribute__((weak)) envoy_dynamic_module_type_metrics_result
787
envoy_dynamic_module_callback_cluster_config_define_histogram(
788
    envoy_dynamic_module_type_cluster_config_envoy_ptr, envoy_dynamic_module_type_module_buffer,
789
1
    envoy_dynamic_module_type_module_buffer*, size_t, size_t*) {
790
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_cluster_config_define_histogram: "
791
1
               "not implemented in this context");
792
1
  return envoy_dynamic_module_type_metrics_result_Success;
793
1
}
794

            
795
__attribute__((weak)) envoy_dynamic_module_type_metrics_result
796
envoy_dynamic_module_callback_cluster_config_record_histogram_value(
797
    envoy_dynamic_module_type_cluster_config_envoy_ptr, size_t,
798
1
    envoy_dynamic_module_type_module_buffer*, size_t, uint64_t) {
799
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_cluster_config_record_histogram_value: "
800
1
               "not implemented in this context");
801
1
  return envoy_dynamic_module_type_metrics_result_Success;
802
1
}
803

            
804
__attribute__((weak)) void envoy_dynamic_module_callback_cluster_lb_async_host_selection_complete(
805
    envoy_dynamic_module_type_cluster_lb_envoy_ptr,
806
    envoy_dynamic_module_type_cluster_lb_context_envoy_ptr,
807
1
    envoy_dynamic_module_type_cluster_host_envoy_ptr, envoy_dynamic_module_type_module_buffer) {
808
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_cluster_lb_async_host_selection_complete: "
809
1
               "not implemented in this context");
810
1
}
811

            
812
__attribute__((weak)) envoy_dynamic_module_type_http_callout_init_result
813
envoy_dynamic_module_callback_cluster_http_callout(
814
    envoy_dynamic_module_type_cluster_envoy_ptr, uint64_t* /* callout_id_out */,
815
    envoy_dynamic_module_type_module_buffer /* cluster_name */,
816
    envoy_dynamic_module_type_module_http_header* /* headers */, size_t /* headers_size */,
817
    envoy_dynamic_module_type_module_buffer /* body */, uint64_t /* timeout_milliseconds */) {
818
  IS_ENVOY_BUG("envoy_dynamic_module_callback_cluster_http_callout: "
819
               "not implemented in this context");
820
  return envoy_dynamic_module_type_http_callout_init_result_CannotCreateRequest;
821
}
822

            
823
// ---------------------- Load Balancer callbacks ------------------------
824
// These are weak symbols that provide default stub implementations. The actual implementations
825
// are provided in the load balancing policy extension abi_impl.cc when the extension is used.
826

            
827
__attribute__((weak)) void
828
envoy_dynamic_module_callback_lb_get_cluster_name(envoy_dynamic_module_type_lb_envoy_ptr,
829
1
                                                  envoy_dynamic_module_type_envoy_buffer*) {
830
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_lb_get_cluster_name: "
831
1
               "not implemented in this context");
832
1
}
833

            
834
__attribute__((weak)) size_t
835
1
envoy_dynamic_module_callback_lb_get_hosts_count(envoy_dynamic_module_type_lb_envoy_ptr, uint32_t) {
836
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_lb_get_hosts_count: "
837
1
               "not implemented in this context");
838
1
  return 0;
839
1
}
840

            
841
__attribute__((weak)) size_t envoy_dynamic_module_callback_lb_get_healthy_hosts_count(
842
1
    envoy_dynamic_module_type_lb_envoy_ptr, uint32_t) {
843
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_lb_get_healthy_hosts_count: "
844
1
               "not implemented in this context");
845
1
  return 0;
846
1
}
847

            
848
__attribute__((weak)) size_t envoy_dynamic_module_callback_lb_get_degraded_hosts_count(
849
1
    envoy_dynamic_module_type_lb_envoy_ptr, uint32_t) {
850
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_lb_get_degraded_hosts_count: "
851
1
               "not implemented in this context");
852
1
  return 0;
853
1
}
854

            
855
__attribute__((weak)) size_t
856
1
envoy_dynamic_module_callback_lb_get_priority_set_size(envoy_dynamic_module_type_lb_envoy_ptr) {
857
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_lb_get_priority_set_size: "
858
1
               "not implemented in this context");
859
1
  return 0;
860
1
}
861

            
862
__attribute__((weak)) bool
863
envoy_dynamic_module_callback_lb_get_healthy_host_address(envoy_dynamic_module_type_lb_envoy_ptr,
864
                                                          uint32_t, size_t,
865
1
                                                          envoy_dynamic_module_type_envoy_buffer*) {
866
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_lb_get_healthy_host_address: "
867
1
               "not implemented in this context");
868
1
  return false;
869
1
}
870

            
871
__attribute__((weak)) uint32_t envoy_dynamic_module_callback_lb_get_healthy_host_weight(
872
1
    envoy_dynamic_module_type_lb_envoy_ptr, uint32_t, size_t) {
873
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_lb_get_healthy_host_weight: "
874
1
               "not implemented in this context");
875
1
  return 0;
876
1
}
877

            
878
__attribute__((weak)) envoy_dynamic_module_type_host_health
879
envoy_dynamic_module_callback_lb_get_host_health(envoy_dynamic_module_type_lb_envoy_ptr, uint32_t,
880
1
                                                 size_t) {
881
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_lb_get_host_health: "
882
1
               "not implemented in this context");
883
1
  return envoy_dynamic_module_type_host_health_Unhealthy;
884
1
}
885

            
886
__attribute__((weak)) bool envoy_dynamic_module_callback_lb_get_host_health_by_address(
887
    envoy_dynamic_module_type_lb_envoy_ptr, envoy_dynamic_module_type_module_buffer,
888
1
    envoy_dynamic_module_type_host_health*) {
889
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_lb_get_host_health_by_address: "
890
1
               "not implemented in this context");
891
1
  return false;
892
1
}
893

            
894
__attribute__((weak)) bool
895
envoy_dynamic_module_callback_lb_get_host_address(envoy_dynamic_module_type_lb_envoy_ptr, uint32_t,
896
1
                                                  size_t, envoy_dynamic_module_type_envoy_buffer*) {
897
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_lb_get_host_address: "
898
1
               "not implemented in this context");
899
1
  return false;
900
1
}
901

            
902
__attribute__((weak)) uint32_t envoy_dynamic_module_callback_lb_get_host_weight(
903
1
    envoy_dynamic_module_type_lb_envoy_ptr, uint32_t, size_t) {
904
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_lb_get_host_weight: "
905
1
               "not implemented in this context");
906
1
  return 0;
907
1
}
908

            
909
__attribute__((weak)) bool
910
envoy_dynamic_module_callback_lb_get_host_locality(envoy_dynamic_module_type_lb_envoy_ptr, uint32_t,
911
                                                   size_t, envoy_dynamic_module_type_envoy_buffer*,
912
                                                   envoy_dynamic_module_type_envoy_buffer*,
913
1
                                                   envoy_dynamic_module_type_envoy_buffer*) {
914
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_lb_get_host_locality: "
915
1
               "not implemented in this context");
916
1
  return false;
917
1
}
918

            
919
__attribute__((weak)) bool envoy_dynamic_module_callback_lb_context_compute_hash_key(
920
1
    envoy_dynamic_module_type_lb_context_envoy_ptr, uint64_t*) {
921
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_lb_context_compute_hash_key: "
922
1
               "not implemented in this context");
923
1
  return false;
924
1
}
925

            
926
__attribute__((weak)) size_t envoy_dynamic_module_callback_lb_context_get_downstream_headers_size(
927
1
    envoy_dynamic_module_type_lb_context_envoy_ptr) {
928
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_lb_context_get_downstream_headers_size: "
929
1
               "not implemented in this context");
930
1
  return 0;
931
1
}
932

            
933
__attribute__((weak)) bool envoy_dynamic_module_callback_lb_context_get_downstream_headers(
934
1
    envoy_dynamic_module_type_lb_context_envoy_ptr, envoy_dynamic_module_type_envoy_http_header*) {
935
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_lb_context_get_downstream_headers: "
936
1
               "not implemented in this context");
937
1
  return false;
938
1
}
939

            
940
__attribute__((weak)) bool envoy_dynamic_module_callback_lb_context_get_downstream_header(
941
    envoy_dynamic_module_type_lb_context_envoy_ptr, envoy_dynamic_module_type_module_buffer,
942
1
    envoy_dynamic_module_type_envoy_buffer*, size_t, size_t*) {
943
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_lb_context_get_downstream_header: "
944
1
               "not implemented in this context");
945
1
  return false;
946
1
}
947

            
948
__attribute__((weak)) uint32_t
949
envoy_dynamic_module_callback_lb_context_get_host_selection_retry_count(
950
1
    envoy_dynamic_module_type_lb_context_envoy_ptr) {
951
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_lb_context_get_host_selection_retry_count: "
952
1
               "not implemented in this context");
953
1
  return 0;
954
1
}
955

            
956
__attribute__((weak)) bool envoy_dynamic_module_callback_lb_context_should_select_another_host(
957
    envoy_dynamic_module_type_lb_envoy_ptr, envoy_dynamic_module_type_lb_context_envoy_ptr,
958
1
    uint32_t, size_t) {
959
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_lb_context_should_select_another_host: "
960
1
               "not implemented in this context");
961
1
  return false;
962
1
}
963

            
964
__attribute__((weak)) bool envoy_dynamic_module_callback_lb_context_get_override_host(
965
    envoy_dynamic_module_type_lb_context_envoy_ptr, envoy_dynamic_module_type_envoy_buffer*,
966
1
    bool*) {
967
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_lb_context_get_override_host: "
968
1
               "not implemented in this context");
969
1
  return false;
970
1
}
971

            
972
__attribute__((weak)) bool
973
envoy_dynamic_module_callback_lb_set_host_data(envoy_dynamic_module_type_lb_envoy_ptr, uint32_t,
974
1
                                               size_t, uintptr_t) {
975
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_lb_set_host_data: "
976
1
               "not implemented in this context");
977
1
  return false;
978
1
}
979

            
980
__attribute__((weak)) bool
981
envoy_dynamic_module_callback_lb_get_host_data(envoy_dynamic_module_type_lb_envoy_ptr, uint32_t,
982
1
                                               size_t, uintptr_t*) {
983
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_lb_get_host_data: "
984
1
               "not implemented in this context");
985
1
  return false;
986
1
}
987

            
988
__attribute__((weak)) bool envoy_dynamic_module_callback_lb_get_host_metadata_string(
989
    envoy_dynamic_module_type_lb_envoy_ptr, uint32_t, size_t,
990
    envoy_dynamic_module_type_module_buffer, envoy_dynamic_module_type_module_buffer,
991
1
    envoy_dynamic_module_type_envoy_buffer*) {
992
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_lb_get_host_metadata_string: "
993
1
               "not implemented in this context");
994
1
  return false;
995
1
}
996

            
997
__attribute__((weak)) bool envoy_dynamic_module_callback_lb_get_host_metadata_number(
998
    envoy_dynamic_module_type_lb_envoy_ptr, uint32_t, size_t,
999
1
    envoy_dynamic_module_type_module_buffer, envoy_dynamic_module_type_module_buffer, double*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_lb_get_host_metadata_number: "
1
               "not implemented in this context");
1
  return false;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_lb_get_host_metadata_bool(
    envoy_dynamic_module_type_lb_envoy_ptr, uint32_t, size_t,
1
    envoy_dynamic_module_type_module_buffer, envoy_dynamic_module_type_module_buffer, bool*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_lb_get_host_metadata_bool: "
1
               "not implemented in this context");
1
  return false;
1
}
__attribute__((weak)) size_t envoy_dynamic_module_callback_lb_get_locality_count(
1
    envoy_dynamic_module_type_lb_envoy_ptr, uint32_t) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_lb_get_locality_count: "
1
               "not implemented in this context");
1
  return 0;
1
}
__attribute__((weak)) size_t envoy_dynamic_module_callback_lb_get_locality_host_count(
1
    envoy_dynamic_module_type_lb_envoy_ptr, uint32_t, size_t) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_lb_get_locality_host_count: "
1
               "not implemented in this context");
1
  return 0;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_lb_get_locality_host_address(
    envoy_dynamic_module_type_lb_envoy_ptr, uint32_t, size_t, size_t,
1
    envoy_dynamic_module_type_envoy_buffer*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_lb_get_locality_host_address: "
1
               "not implemented in this context");
1
  return false;
1
}
__attribute__((weak)) uint32_t envoy_dynamic_module_callback_lb_get_locality_weight(
1
    envoy_dynamic_module_type_lb_envoy_ptr, uint32_t, size_t) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_lb_get_locality_weight: "
1
               "not implemented in this context");
1
  return 0;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_lb_get_member_update_host_address(
1
    envoy_dynamic_module_type_lb_envoy_ptr, size_t, bool, envoy_dynamic_module_type_envoy_buffer*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_lb_get_member_update_host_address: "
1
               "not implemented in this context");
1
  return false;
1
}
__attribute__((weak)) uint64_t envoy_dynamic_module_callback_lb_get_host_stat(
1
    envoy_dynamic_module_type_lb_envoy_ptr, uint32_t, size_t, envoy_dynamic_module_type_host_stat) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_lb_get_host_stat: not implemented in this context");
1
  return 0;
1
}
__attribute__((weak)) envoy_dynamic_module_type_metrics_result
envoy_dynamic_module_callback_lb_config_define_counter(
    envoy_dynamic_module_type_lb_config_envoy_ptr, envoy_dynamic_module_type_module_buffer,
1
    envoy_dynamic_module_type_module_buffer*, size_t, size_t*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_lb_config_define_counter: "
1
               "not implemented in this context");
1
  return envoy_dynamic_module_type_metrics_result_Success;
1
}
__attribute__((weak)) envoy_dynamic_module_type_metrics_result
envoy_dynamic_module_callback_lb_config_increment_counter(
    envoy_dynamic_module_type_lb_config_envoy_ptr, size_t, envoy_dynamic_module_type_module_buffer*,
1
    size_t, uint64_t) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_lb_config_increment_counter: "
1
               "not implemented in this context");
1
  return envoy_dynamic_module_type_metrics_result_Success;
1
}
__attribute__((weak)) envoy_dynamic_module_type_metrics_result
envoy_dynamic_module_callback_lb_config_define_gauge(envoy_dynamic_module_type_lb_config_envoy_ptr,
                                                     envoy_dynamic_module_type_module_buffer,
                                                     envoy_dynamic_module_type_module_buffer*,
1
                                                     size_t, size_t*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_lb_config_define_gauge: "
1
               "not implemented in this context");
1
  return envoy_dynamic_module_type_metrics_result_Success;
1
}
__attribute__((weak)) envoy_dynamic_module_type_metrics_result
envoy_dynamic_module_callback_lb_config_set_gauge(envoy_dynamic_module_type_lb_config_envoy_ptr,
                                                  size_t, envoy_dynamic_module_type_module_buffer*,
1
                                                  size_t, uint64_t) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_lb_config_set_gauge: "
1
               "not implemented in this context");
1
  return envoy_dynamic_module_type_metrics_result_Success;
1
}
__attribute__((weak)) envoy_dynamic_module_type_metrics_result
envoy_dynamic_module_callback_lb_config_increment_gauge(
    envoy_dynamic_module_type_lb_config_envoy_ptr, size_t, envoy_dynamic_module_type_module_buffer*,
1
    size_t, uint64_t) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_lb_config_increment_gauge: "
1
               "not implemented in this context");
1
  return envoy_dynamic_module_type_metrics_result_Success;
1
}
__attribute__((weak)) envoy_dynamic_module_type_metrics_result
envoy_dynamic_module_callback_lb_config_decrement_gauge(
    envoy_dynamic_module_type_lb_config_envoy_ptr, size_t, envoy_dynamic_module_type_module_buffer*,
1
    size_t, uint64_t) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_lb_config_decrement_gauge: "
1
               "not implemented in this context");
1
  return envoy_dynamic_module_type_metrics_result_Success;
1
}
__attribute__((weak)) envoy_dynamic_module_type_metrics_result
envoy_dynamic_module_callback_lb_config_define_histogram(
    envoy_dynamic_module_type_lb_config_envoy_ptr, envoy_dynamic_module_type_module_buffer,
1
    envoy_dynamic_module_type_module_buffer*, size_t, size_t*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_lb_config_define_histogram: "
1
               "not implemented in this context");
1
  return envoy_dynamic_module_type_metrics_result_Success;
1
}
__attribute__((weak)) envoy_dynamic_module_type_metrics_result
envoy_dynamic_module_callback_lb_config_record_histogram_value(
    envoy_dynamic_module_type_lb_config_envoy_ptr, size_t, envoy_dynamic_module_type_module_buffer*,
1
    size_t, uint64_t) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_lb_config_record_histogram_value: "
1
               "not implemented in this context");
1
  return envoy_dynamic_module_type_metrics_result_Success;
1
}
// ---------------------- Matcher callbacks ------------------------
// These are weak symbols that provide default stub implementations. The actual implementations
// are provided in the matcher extension abi_impl.cc when the matcher extension is used.
__attribute__((weak)) size_t envoy_dynamic_module_callback_matcher_get_headers_size(
1
    envoy_dynamic_module_type_matcher_input_envoy_ptr, envoy_dynamic_module_type_http_header_type) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_matcher_get_headers_size: "
1
               "not implemented in this context");
1
  return 0;
1
}
__attribute__((weak)) bool
envoy_dynamic_module_callback_matcher_get_headers(envoy_dynamic_module_type_matcher_input_envoy_ptr,
                                                  envoy_dynamic_module_type_http_header_type,
1
                                                  envoy_dynamic_module_type_envoy_http_header*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_matcher_get_headers: "
1
               "not implemented in this context");
1
  return false;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_matcher_get_header_value(
    envoy_dynamic_module_type_matcher_input_envoy_ptr, envoy_dynamic_module_type_http_header_type,
    envoy_dynamic_module_type_module_buffer, envoy_dynamic_module_type_envoy_buffer*, size_t,
1
    size_t*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_matcher_get_header_value: "
1
               "not implemented in this context");
1
  return false;
1
}
// ---------------------- Network filter callbacks ------------------------
// These are weak symbols that provide default stub implementations. The actual implementations
// are provided in the network filter abi_impl.cc when the network filter extension is used.
__attribute__((weak)) size_t
envoy_dynamic_module_callback_network_filter_get_read_buffer_chunks_size(
1
    envoy_dynamic_module_type_network_filter_envoy_ptr) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_network_filter_get_read_buffer_chunks_size: "
1
               "not implemented in this context");
1
  return 0;
1
}
__attribute__((weak)) size_t envoy_dynamic_module_callback_network_filter_get_read_buffer_size(
1
    envoy_dynamic_module_type_network_filter_envoy_ptr) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_network_filter_get_read_buffer_size: "
1
               "not implemented in this context");
1
  return 0;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_network_filter_get_read_buffer_chunks(
1
    envoy_dynamic_module_type_network_filter_envoy_ptr, envoy_dynamic_module_type_envoy_buffer*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_network_filter_get_read_buffer_chunks: "
1
               "not implemented in this context");
1
  return false;
1
}
__attribute__((weak)) size_t
envoy_dynamic_module_callback_network_filter_get_write_buffer_chunks_size(
1
    envoy_dynamic_module_type_network_filter_envoy_ptr) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_network_filter_get_write_buffer_chunks_size: "
1
               "not implemented in this context");
1
  return 0;
1
}
__attribute__((weak)) size_t envoy_dynamic_module_callback_network_filter_get_write_buffer_size(
1
    envoy_dynamic_module_type_network_filter_envoy_ptr) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_network_filter_get_write_buffer_size: "
1
               "not implemented in this context");
1
  return 0;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_network_filter_get_write_buffer_chunks(
1
    envoy_dynamic_module_type_network_filter_envoy_ptr, envoy_dynamic_module_type_envoy_buffer*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_network_filter_get_write_buffer_chunks: "
1
               "not implemented in this context");
1
  return false;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_network_filter_drain_read_buffer(
1
    envoy_dynamic_module_type_network_filter_envoy_ptr, size_t) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_network_filter_drain_read_buffer: "
1
               "not implemented in this context");
1
  return false;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_network_filter_drain_write_buffer(
1
    envoy_dynamic_module_type_network_filter_envoy_ptr, size_t) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_network_filter_drain_write_buffer: "
1
               "not implemented in this context");
1
  return false;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_network_filter_prepend_read_buffer(
1
    envoy_dynamic_module_type_network_filter_envoy_ptr, envoy_dynamic_module_type_module_buffer) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_network_filter_prepend_read_buffer: "
1
               "not implemented in this context");
1
  return false;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_network_filter_append_read_buffer(
1
    envoy_dynamic_module_type_network_filter_envoy_ptr, envoy_dynamic_module_type_module_buffer) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_network_filter_append_read_buffer: "
1
               "not implemented in this context");
1
  return false;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_network_filter_prepend_write_buffer(
1
    envoy_dynamic_module_type_network_filter_envoy_ptr, envoy_dynamic_module_type_module_buffer) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_network_filter_prepend_write_buffer: "
1
               "not implemented in this context");
1
  return false;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_network_filter_append_write_buffer(
1
    envoy_dynamic_module_type_network_filter_envoy_ptr, envoy_dynamic_module_type_module_buffer) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_network_filter_append_write_buffer: "
1
               "not implemented in this context");
1
  return false;
1
}
__attribute__((weak)) void envoy_dynamic_module_callback_network_filter_write(
    envoy_dynamic_module_type_network_filter_envoy_ptr, envoy_dynamic_module_type_module_buffer,
1
    bool) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_network_filter_write: "
1
               "not implemented in this context");
1
}
__attribute__((weak)) void envoy_dynamic_module_callback_network_filter_inject_read_data(
    envoy_dynamic_module_type_network_filter_envoy_ptr, envoy_dynamic_module_type_module_buffer,
1
    bool) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_network_filter_inject_read_data: "
1
               "not implemented in this context");
1
}
__attribute__((weak)) void envoy_dynamic_module_callback_network_filter_inject_write_data(
    envoy_dynamic_module_type_network_filter_envoy_ptr, envoy_dynamic_module_type_module_buffer,
1
    bool) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_network_filter_inject_write_data: "
1
               "not implemented in this context");
1
}
__attribute__((weak)) void envoy_dynamic_module_callback_network_filter_continue_reading(
1
    envoy_dynamic_module_type_network_filter_envoy_ptr) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_network_filter_continue_reading: "
1
               "not implemented in this context");
1
}
__attribute__((weak)) void envoy_dynamic_module_callback_network_filter_close(
    envoy_dynamic_module_type_network_filter_envoy_ptr,
1
    envoy_dynamic_module_type_network_connection_close_type) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_network_filter_close: "
1
               "not implemented in this context");
1
}
__attribute__((weak)) uint64_t envoy_dynamic_module_callback_network_filter_get_connection_id(
1
    envoy_dynamic_module_type_network_filter_envoy_ptr) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_network_filter_get_connection_id: "
1
               "not implemented in this context");
1
  return 0;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_network_filter_get_remote_address(
    envoy_dynamic_module_type_network_filter_envoy_ptr, envoy_dynamic_module_type_envoy_buffer*,
1
    uint32_t*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_network_filter_get_remote_address: "
1
               "not implemented in this context");
1
  return false;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_network_filter_get_local_address(
    envoy_dynamic_module_type_network_filter_envoy_ptr, envoy_dynamic_module_type_envoy_buffer*,
1
    uint32_t*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_network_filter_get_local_address: "
1
               "not implemented in this context");
1
  return false;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_network_filter_is_ssl(
1
    envoy_dynamic_module_type_network_filter_envoy_ptr) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_network_filter_is_ssl: "
1
               "not implemented in this context");
1
  return false;
1
}
__attribute__((weak)) void envoy_dynamic_module_callback_network_filter_disable_close(
1
    envoy_dynamic_module_type_network_filter_envoy_ptr, bool) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_network_filter_disable_close: "
1
               "not implemented in this context");
1
}
__attribute__((weak)) void envoy_dynamic_module_callback_network_filter_close_with_details(
    envoy_dynamic_module_type_network_filter_envoy_ptr,
    envoy_dynamic_module_type_network_connection_close_type,
1
    envoy_dynamic_module_type_module_buffer) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_network_filter_close_with_details: "
1
               "not implemented in this context");
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_network_filter_get_requested_server_name(
1
    envoy_dynamic_module_type_network_filter_envoy_ptr, envoy_dynamic_module_type_envoy_buffer*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_network_filter_get_requested_server_name: "
1
               "not implemented in this context");
1
  return false;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_network_filter_get_direct_remote_address(
    envoy_dynamic_module_type_network_filter_envoy_ptr, envoy_dynamic_module_type_envoy_buffer*,
1
    uint32_t*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_network_filter_get_direct_remote_address: "
1
               "not implemented in this context");
1
  return false;
1
}
__attribute__((weak)) size_t envoy_dynamic_module_callback_network_filter_get_ssl_uri_sans_size(
1
    envoy_dynamic_module_type_network_filter_envoy_ptr) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_network_filter_get_ssl_uri_sans_size: "
1
               "not implemented in this context");
1
  return 0;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_network_filter_get_ssl_uri_sans(
1
    envoy_dynamic_module_type_network_filter_envoy_ptr, envoy_dynamic_module_type_envoy_buffer*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_network_filter_get_ssl_uri_sans: "
1
               "not implemented in this context");
1
  return false;
1
}
__attribute__((weak)) size_t envoy_dynamic_module_callback_network_filter_get_ssl_dns_sans_size(
1
    envoy_dynamic_module_type_network_filter_envoy_ptr) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_network_filter_get_ssl_dns_sans_size: "
1
               "not implemented in this context");
1
  return 0;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_network_filter_get_ssl_dns_sans(
1
    envoy_dynamic_module_type_network_filter_envoy_ptr, envoy_dynamic_module_type_envoy_buffer*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_network_filter_get_ssl_dns_sans: "
1
               "not implemented in this context");
1
  return false;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_network_filter_get_ssl_subject(
1
    envoy_dynamic_module_type_network_filter_envoy_ptr, envoy_dynamic_module_type_envoy_buffer*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_network_filter_get_ssl_subject: "
1
               "not implemented in this context");
1
  return false;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_network_set_filter_state_bytes(
    envoy_dynamic_module_type_network_filter_envoy_ptr, envoy_dynamic_module_type_module_buffer,
1
    envoy_dynamic_module_type_module_buffer) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_network_set_filter_state_bytes: "
1
               "not implemented in this context");
1
  return false;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_network_get_filter_state_bytes(
    envoy_dynamic_module_type_network_filter_envoy_ptr, envoy_dynamic_module_type_module_buffer,
1
    envoy_dynamic_module_type_envoy_buffer*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_network_get_filter_state_bytes: "
1
               "not implemented in this context");
1
  return false;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_network_set_filter_state_typed(
    envoy_dynamic_module_type_network_filter_envoy_ptr, envoy_dynamic_module_type_module_buffer,
1
    envoy_dynamic_module_type_module_buffer) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_network_set_filter_state_typed: "
1
               "not implemented in this context");
1
  return false;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_network_get_filter_state_typed(
    envoy_dynamic_module_type_network_filter_envoy_ptr, envoy_dynamic_module_type_module_buffer,
1
    envoy_dynamic_module_type_envoy_buffer*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_network_get_filter_state_typed: "
1
               "not implemented in this context");
1
  return false;
1
}
__attribute__((weak)) void envoy_dynamic_module_callback_network_set_dynamic_metadata_string(
    envoy_dynamic_module_type_network_filter_envoy_ptr, envoy_dynamic_module_type_module_buffer,
1
    envoy_dynamic_module_type_module_buffer, envoy_dynamic_module_type_module_buffer) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_network_set_dynamic_metadata_string: "
1
               "not implemented in this context");
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_network_get_dynamic_metadata_string(
    envoy_dynamic_module_type_network_filter_envoy_ptr, envoy_dynamic_module_type_module_buffer,
1
    envoy_dynamic_module_type_module_buffer, envoy_dynamic_module_type_envoy_buffer*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_network_get_dynamic_metadata_string: "
1
               "not implemented in this context");
1
  return false;
1
}
__attribute__((weak)) void envoy_dynamic_module_callback_network_set_dynamic_metadata_number(
    envoy_dynamic_module_type_network_filter_envoy_ptr, envoy_dynamic_module_type_module_buffer,
1
    envoy_dynamic_module_type_module_buffer, double) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_network_set_dynamic_metadata_number: "
1
               "not implemented in this context");
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_network_get_dynamic_metadata_number(
    envoy_dynamic_module_type_network_filter_envoy_ptr, envoy_dynamic_module_type_module_buffer,
1
    envoy_dynamic_module_type_module_buffer, double*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_network_get_dynamic_metadata_number: "
1
               "not implemented in this context");
1
  return false;
1
}
__attribute__((weak)) void envoy_dynamic_module_callback_network_set_dynamic_metadata_bool(
    envoy_dynamic_module_type_network_filter_envoy_ptr, envoy_dynamic_module_type_module_buffer,
1
    envoy_dynamic_module_type_module_buffer, bool) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_network_set_dynamic_metadata_bool: "
1
               "not implemented in this context");
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_network_get_dynamic_metadata_bool(
    envoy_dynamic_module_type_network_filter_envoy_ptr, envoy_dynamic_module_type_module_buffer,
1
    envoy_dynamic_module_type_module_buffer, bool*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_network_get_dynamic_metadata_bool: "
1
               "not implemented in this context");
1
  return false;
1
}
__attribute__((weak)) envoy_dynamic_module_type_http_callout_init_result
envoy_dynamic_module_callback_network_filter_http_callout(
    envoy_dynamic_module_type_network_filter_envoy_ptr, uint64_t*,
    envoy_dynamic_module_type_module_buffer, envoy_dynamic_module_type_module_http_header*, size_t,
1
    envoy_dynamic_module_type_module_buffer, uint64_t) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_network_filter_http_callout: "
1
               "not implemented in this context");
1
  return envoy_dynamic_module_type_http_callout_init_result_CannotCreateRequest;
1
}
__attribute__((weak)) envoy_dynamic_module_type_metrics_result
envoy_dynamic_module_callback_network_filter_config_define_counter(
    envoy_dynamic_module_type_network_filter_config_envoy_ptr,
1
    envoy_dynamic_module_type_module_buffer, size_t*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_network_filter_config_define_counter: "
1
               "not implemented in this context");
1
  return envoy_dynamic_module_type_metrics_result_MetricNotFound;
1
}
__attribute__((weak)) envoy_dynamic_module_type_metrics_result
envoy_dynamic_module_callback_network_filter_increment_counter(
1
    envoy_dynamic_module_type_network_filter_envoy_ptr, size_t, uint64_t) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_network_filter_increment_counter: "
1
               "not implemented in this context");
1
  return envoy_dynamic_module_type_metrics_result_MetricNotFound;
1
}
__attribute__((weak)) envoy_dynamic_module_type_metrics_result
envoy_dynamic_module_callback_network_filter_config_define_gauge(
    envoy_dynamic_module_type_network_filter_config_envoy_ptr,
1
    envoy_dynamic_module_type_module_buffer, size_t*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_network_filter_config_define_gauge: "
1
               "not implemented in this context");
1
  return envoy_dynamic_module_type_metrics_result_MetricNotFound;
1
}
__attribute__((weak)) envoy_dynamic_module_type_metrics_result
envoy_dynamic_module_callback_network_filter_set_gauge(
1
    envoy_dynamic_module_type_network_filter_envoy_ptr, size_t, uint64_t) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_network_filter_set_gauge: "
1
               "not implemented in this context");
1
  return envoy_dynamic_module_type_metrics_result_MetricNotFound;
1
}
__attribute__((weak)) envoy_dynamic_module_type_metrics_result
envoy_dynamic_module_callback_network_filter_increment_gauge(
1
    envoy_dynamic_module_type_network_filter_envoy_ptr, size_t, uint64_t) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_network_filter_increment_gauge: "
1
               "not implemented in this context");
1
  return envoy_dynamic_module_type_metrics_result_MetricNotFound;
1
}
__attribute__((weak)) envoy_dynamic_module_type_metrics_result
envoy_dynamic_module_callback_network_filter_decrement_gauge(
1
    envoy_dynamic_module_type_network_filter_envoy_ptr, size_t, uint64_t) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_network_filter_decrement_gauge: "
1
               "not implemented in this context");
1
  return envoy_dynamic_module_type_metrics_result_MetricNotFound;
1
}
__attribute__((weak)) envoy_dynamic_module_type_metrics_result
envoy_dynamic_module_callback_network_filter_config_define_histogram(
    envoy_dynamic_module_type_network_filter_config_envoy_ptr,
1
    envoy_dynamic_module_type_module_buffer, size_t*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_network_filter_config_define_histogram: "
1
               "not implemented in this context");
1
  return envoy_dynamic_module_type_metrics_result_MetricNotFound;
1
}
__attribute__((weak)) envoy_dynamic_module_type_metrics_result
envoy_dynamic_module_callback_network_filter_record_histogram_value(
1
    envoy_dynamic_module_type_network_filter_envoy_ptr, size_t, uint64_t) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_network_filter_record_histogram_value: "
1
               "not implemented in this context");
1
  return envoy_dynamic_module_type_metrics_result_MetricNotFound;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_network_filter_get_cluster_host_count(
    envoy_dynamic_module_type_network_filter_envoy_ptr, envoy_dynamic_module_type_module_buffer,
1
    uint32_t, size_t*, size_t*, size_t*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_network_filter_get_cluster_host_count: "
1
               "not implemented in this context");
1
  return false;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_network_filter_get_upstream_host_address(
    envoy_dynamic_module_type_network_filter_envoy_ptr, envoy_dynamic_module_type_envoy_buffer*,
1
    uint32_t*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_network_filter_get_upstream_host_address: "
1
               "not implemented in this context");
1
  return false;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_network_filter_get_upstream_host_hostname(
1
    envoy_dynamic_module_type_network_filter_envoy_ptr, envoy_dynamic_module_type_envoy_buffer*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_network_filter_get_upstream_host_hostname: "
1
               "not implemented in this context");
1
  return false;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_network_filter_get_upstream_host_cluster(
1
    envoy_dynamic_module_type_network_filter_envoy_ptr, envoy_dynamic_module_type_envoy_buffer*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_network_filter_get_upstream_host_cluster: "
1
               "not implemented in this context");
1
  return false;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_network_filter_has_upstream_host(
1
    envoy_dynamic_module_type_network_filter_envoy_ptr) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_network_filter_has_upstream_host: "
1
               "not implemented in this context");
1
  return false;
1
}
__attribute__((weak)) bool
envoy_dynamic_module_callback_network_filter_start_upstream_secure_transport(
1
    envoy_dynamic_module_type_network_filter_envoy_ptr) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_network_filter_start_upstream_secure_transport: "
1
               "not implemented in this context");
1
  return false;
1
}
__attribute__((weak)) envoy_dynamic_module_type_network_connection_state
envoy_dynamic_module_callback_network_filter_get_connection_state(
1
    envoy_dynamic_module_type_network_filter_envoy_ptr) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_network_filter_get_connection_state: "
1
               "not implemented in this context");
1
  return envoy_dynamic_module_type_network_connection_state_Closed;
1
}
__attribute__((weak)) envoy_dynamic_module_type_network_read_disable_status
envoy_dynamic_module_callback_network_filter_read_disable(
1
    envoy_dynamic_module_type_network_filter_envoy_ptr, bool) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_network_filter_read_disable: "
1
               "not implemented in this context");
1
  return envoy_dynamic_module_type_network_read_disable_status_NoTransition;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_network_filter_read_enabled(
1
    envoy_dynamic_module_type_network_filter_envoy_ptr) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_network_filter_read_enabled: "
1
               "not implemented in this context");
1
  return false;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_network_filter_is_half_close_enabled(
1
    envoy_dynamic_module_type_network_filter_envoy_ptr) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_network_filter_is_half_close_enabled: "
1
               "not implemented in this context");
1
  return false;
1
}
__attribute__((weak)) void envoy_dynamic_module_callback_network_filter_enable_half_close(
1
    envoy_dynamic_module_type_network_filter_envoy_ptr, bool) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_network_filter_enable_half_close: "
1
               "not implemented in this context");
1
}
__attribute__((weak)) uint32_t envoy_dynamic_module_callback_network_filter_get_buffer_limit(
1
    envoy_dynamic_module_type_network_filter_envoy_ptr) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_network_filter_get_buffer_limit: "
1
               "not implemented in this context");
1
  return 0;
1
}
__attribute__((weak)) void envoy_dynamic_module_callback_network_filter_set_buffer_limits(
1
    envoy_dynamic_module_type_network_filter_envoy_ptr, uint32_t) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_network_filter_set_buffer_limits: "
1
               "not implemented in this context");
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_network_filter_above_high_watermark(
1
    envoy_dynamic_module_type_network_filter_envoy_ptr) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_network_filter_above_high_watermark: "
1
               "not implemented in this context");
1
  return false;
1
}
__attribute__((weak)) envoy_dynamic_module_type_network_filter_scheduler_module_ptr
envoy_dynamic_module_callback_network_filter_scheduler_new(
1
    envoy_dynamic_module_type_network_filter_envoy_ptr) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_network_filter_scheduler_new: "
1
               "not implemented in this context");
1
  return nullptr;
1
}
__attribute__((weak)) void envoy_dynamic_module_callback_network_filter_scheduler_commit(
1
    envoy_dynamic_module_type_network_filter_scheduler_module_ptr, uint64_t) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_network_filter_scheduler_commit: "
1
               "not implemented in this context");
1
}
__attribute__((weak)) void envoy_dynamic_module_callback_network_filter_scheduler_delete(
1
    envoy_dynamic_module_type_network_filter_scheduler_module_ptr) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_network_filter_scheduler_delete: "
1
               "not implemented in this context");
1
}
__attribute__((weak)) envoy_dynamic_module_type_network_filter_config_scheduler_module_ptr
envoy_dynamic_module_callback_network_filter_config_scheduler_new(
1
    envoy_dynamic_module_type_network_filter_config_envoy_ptr) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_network_filter_config_scheduler_new: "
1
               "not implemented in this context");
1
  return nullptr;
1
}
__attribute__((weak)) void envoy_dynamic_module_callback_network_filter_config_scheduler_delete(
1
    envoy_dynamic_module_type_network_filter_config_scheduler_module_ptr) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_network_filter_config_scheduler_delete: "
1
               "not implemented in this context");
1
}
__attribute__((weak)) void envoy_dynamic_module_callback_network_filter_config_scheduler_commit(
1
    envoy_dynamic_module_type_network_filter_config_scheduler_module_ptr, uint64_t) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_network_filter_config_scheduler_commit: "
1
               "not implemented in this context");
1
}
__attribute__((weak)) uint32_t envoy_dynamic_module_callback_network_filter_get_worker_index(
1
    envoy_dynamic_module_type_network_filter_envoy_ptr) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_network_filter_get_worker_index: "
1
               "not implemented in this context");
1
  return 0;
1
}
// ---------------------- Socket Option Callbacks (Network) --------------------
__attribute__((weak)) void envoy_dynamic_module_callback_network_set_socket_option_int(
    envoy_dynamic_module_type_network_filter_envoy_ptr, int64_t, int64_t,
1
    envoy_dynamic_module_type_socket_option_state, int64_t) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_network_set_socket_option_int: "
1
               "not implemented in this context");
1
}
__attribute__((weak)) void envoy_dynamic_module_callback_network_set_socket_option_bytes(
    envoy_dynamic_module_type_network_filter_envoy_ptr, int64_t, int64_t,
1
    envoy_dynamic_module_type_socket_option_state, envoy_dynamic_module_type_module_buffer) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_network_set_socket_option_bytes: "
1
               "not implemented in this context");
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_network_get_socket_option_int(
    envoy_dynamic_module_type_network_filter_envoy_ptr, int64_t, int64_t,
1
    envoy_dynamic_module_type_socket_option_state, int64_t*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_network_get_socket_option_int: "
1
               "not implemented in this context");
1
  return false;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_network_get_socket_option_bytes(
    envoy_dynamic_module_type_network_filter_envoy_ptr, int64_t, int64_t,
1
    envoy_dynamic_module_type_socket_option_state, envoy_dynamic_module_type_envoy_buffer*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_network_get_socket_option_bytes: "
1
               "not implemented in this context");
1
  return false;
1
}
__attribute__((weak)) size_t envoy_dynamic_module_callback_network_get_socket_options_size(
1
    envoy_dynamic_module_type_network_filter_envoy_ptr) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_network_get_socket_options_size: "
1
               "not implemented in this context");
1
  return 0;
1
}
__attribute__((weak)) void envoy_dynamic_module_callback_network_get_socket_options(
1
    envoy_dynamic_module_type_network_filter_envoy_ptr, envoy_dynamic_module_type_socket_option*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_network_get_socket_options: "
1
               "not implemented in this context");
1
}
// ---------------------- Listener Filter Callbacks ----------------------------
__attribute__((weak)) bool envoy_dynamic_module_callback_listener_filter_get_buffer_chunk(
1
    envoy_dynamic_module_type_listener_filter_envoy_ptr, envoy_dynamic_module_type_envoy_buffer*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_listener_filter_get_buffer_chunk: "
1
               "not implemented in this context");
1
  return false;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_listener_filter_drain_buffer(
1
    envoy_dynamic_module_type_listener_filter_envoy_ptr, size_t) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_listener_filter_drain_buffer: "
1
               "not implemented in this context");
1
  return false;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_listener_filter_get_remote_address(
    envoy_dynamic_module_type_listener_filter_envoy_ptr, envoy_dynamic_module_type_envoy_buffer*,
1
    uint32_t*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_listener_filter_get_remote_address: "
1
               "not implemented in this context");
1
  return false;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_listener_filter_get_direct_remote_address(
    envoy_dynamic_module_type_listener_filter_envoy_ptr, envoy_dynamic_module_type_envoy_buffer*,
1
    uint32_t*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_listener_filter_get_direct_remote_address: "
1
               "not implemented in this context");
1
  return false;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_listener_filter_get_local_address(
    envoy_dynamic_module_type_listener_filter_envoy_ptr, envoy_dynamic_module_type_envoy_buffer*,
1
    uint32_t*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_listener_filter_get_local_address: "
1
               "not implemented in this context");
1
  return false;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_listener_filter_get_direct_local_address(
    envoy_dynamic_module_type_listener_filter_envoy_ptr, envoy_dynamic_module_type_envoy_buffer*,
1
    uint32_t*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_listener_filter_get_direct_local_address: "
1
               "not implemented in this context");
1
  return false;
1
}
__attribute__((weak)) envoy_dynamic_module_type_listener_filter_scheduler_module_ptr
envoy_dynamic_module_callback_listener_filter_scheduler_new(
1
    envoy_dynamic_module_type_listener_filter_envoy_ptr) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_listener_filter_scheduler_new: "
1
               "not implemented in this context");
1
  return nullptr;
1
}
__attribute__((weak)) void envoy_dynamic_module_callback_listener_filter_scheduler_commit(
1
    envoy_dynamic_module_type_listener_filter_scheduler_module_ptr, uint64_t) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_listener_filter_scheduler_commit: "
1
               "not implemented in this context");
1
}
__attribute__((weak)) void envoy_dynamic_module_callback_listener_filter_scheduler_delete(
1
    envoy_dynamic_module_type_listener_filter_scheduler_module_ptr) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_listener_filter_scheduler_delete: "
1
               "not implemented in this context");
1
}
__attribute__((weak)) envoy_dynamic_module_type_listener_filter_config_scheduler_module_ptr
envoy_dynamic_module_callback_listener_filter_config_scheduler_new(
1
    envoy_dynamic_module_type_listener_filter_config_envoy_ptr) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_listener_filter_config_scheduler_new: "
1
               "not implemented in this context");
1
  return nullptr;
1
}
__attribute__((weak)) void envoy_dynamic_module_callback_listener_filter_config_scheduler_delete(
1
    envoy_dynamic_module_type_listener_filter_config_scheduler_module_ptr) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_listener_filter_config_scheduler_delete: "
1
               "not implemented in this context");
1
}
__attribute__((weak)) void envoy_dynamic_module_callback_listener_filter_config_scheduler_commit(
1
    envoy_dynamic_module_type_listener_filter_config_scheduler_module_ptr, uint64_t) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_listener_filter_config_scheduler_commit: "
1
               "not implemented in this context");
1
}
__attribute__((weak)) envoy_dynamic_module_type_metrics_result
envoy_dynamic_module_callback_listener_filter_config_define_counter(
    envoy_dynamic_module_type_listener_filter_config_envoy_ptr,
1
    envoy_dynamic_module_type_module_buffer, size_t*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_listener_filter_config_define_counter: "
1
               "not implemented in this context");
1
  return envoy_dynamic_module_type_metrics_result_Success;
1
}
__attribute__((weak)) envoy_dynamic_module_type_metrics_result
envoy_dynamic_module_callback_listener_filter_config_define_gauge(
    envoy_dynamic_module_type_listener_filter_config_envoy_ptr,
1
    envoy_dynamic_module_type_module_buffer, size_t*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_listener_filter_config_define_gauge: "
1
               "not implemented in this context");
1
  return envoy_dynamic_module_type_metrics_result_Success;
1
}
__attribute__((weak)) envoy_dynamic_module_type_metrics_result
envoy_dynamic_module_callback_listener_filter_config_define_histogram(
    envoy_dynamic_module_type_listener_filter_config_envoy_ptr,
1
    envoy_dynamic_module_type_module_buffer, size_t*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_listener_filter_config_define_histogram: "
1
               "not implemented in this context");
1
  return envoy_dynamic_module_type_metrics_result_Success;
1
}
// ============================================================
// Auto-generated weak stubs for filter types not compiled in
// ============================================================
__attribute__((weak)) envoy_dynamic_module_type_metrics_result
envoy_dynamic_module_callback_access_logger_config_define_counter(
    envoy_dynamic_module_type_access_logger_config_envoy_ptr,
1
    envoy_dynamic_module_type_module_buffer, size_t*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_config_define_counter: not implemented "
1
               "in this context");
1
  return envoy_dynamic_module_type_metrics_result_Success;
1
}
__attribute__((weak)) envoy_dynamic_module_type_metrics_result
envoy_dynamic_module_callback_access_logger_config_define_gauge(
    envoy_dynamic_module_type_access_logger_config_envoy_ptr,
1
    envoy_dynamic_module_type_module_buffer, size_t*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_config_define_gauge: not implemented "
1
               "in this context");
1
  return envoy_dynamic_module_type_metrics_result_Success;
1
}
__attribute__((weak)) envoy_dynamic_module_type_metrics_result
envoy_dynamic_module_callback_access_logger_config_define_histogram(
    envoy_dynamic_module_type_access_logger_config_envoy_ptr,
1
    envoy_dynamic_module_type_module_buffer, size_t*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_config_define_histogram: not "
1
               "implemented in this context");
1
  return envoy_dynamic_module_type_metrics_result_Success;
1
}
__attribute__((weak)) envoy_dynamic_module_type_metrics_result
envoy_dynamic_module_callback_access_logger_decrement_gauge(
1
    envoy_dynamic_module_type_access_logger_config_envoy_ptr, size_t, uint64_t) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_decrement_gauge: not implemented in "
1
               "this context");
1
  return envoy_dynamic_module_type_metrics_result_Success;
1
}
__attribute__((weak)) uint32_t envoy_dynamic_module_callback_access_logger_get_attempt_count(
1
    envoy_dynamic_module_type_access_logger_envoy_ptr) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_get_attempt_count: not implemented in "
1
               "this context");
1
  return 0;
1
}
__attribute__((weak)) void envoy_dynamic_module_callback_access_logger_get_bytes_info(
1
    envoy_dynamic_module_type_access_logger_envoy_ptr, envoy_dynamic_module_type_bytes_info*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_get_bytes_info: not implemented in "
1
               "this context");
1
}
__attribute__((weak)) uint64_t envoy_dynamic_module_callback_access_logger_get_connection_id(
1
    envoy_dynamic_module_type_access_logger_envoy_ptr) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_get_connection_id: not implemented in "
1
               "this context");
1
  return 0;
1
}
__attribute__((weak)) bool
envoy_dynamic_module_callback_access_logger_get_connection_termination_details(
1
    envoy_dynamic_module_type_access_logger_envoy_ptr, envoy_dynamic_module_type_envoy_buffer*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_get_connection_termination_details: "
1
               "not implemented in this context");
1
  return false;
1
}
__attribute__((weak)) bool
envoy_dynamic_module_callback_access_logger_get_downstream_direct_local_address(
    envoy_dynamic_module_type_access_logger_envoy_ptr, envoy_dynamic_module_type_envoy_buffer*,
1
    uint32_t*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_get_downstream_direct_local_address: "
1
               "not implemented in this context");
1
  return false;
1
}
__attribute__((weak)) bool
envoy_dynamic_module_callback_access_logger_get_downstream_direct_remote_address(
    envoy_dynamic_module_type_access_logger_envoy_ptr, envoy_dynamic_module_type_envoy_buffer*,
1
    uint32_t*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_get_downstream_direct_remote_address: "
1
               "not implemented in this context");
1
  return false;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_access_logger_get_downstream_local_address(
    envoy_dynamic_module_type_access_logger_envoy_ptr, envoy_dynamic_module_type_envoy_buffer*,
1
    uint32_t*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_get_downstream_local_address: not "
1
               "implemented in this context");
1
  return false;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_access_logger_get_downstream_local_dns_san(
1
    envoy_dynamic_module_type_access_logger_envoy_ptr, envoy_dynamic_module_type_envoy_buffer*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_get_downstream_local_dns_san: not "
1
               "implemented in this context");
1
  return false;
1
}
__attribute__((weak)) size_t
envoy_dynamic_module_callback_access_logger_get_downstream_local_dns_san_size(
1
    envoy_dynamic_module_type_access_logger_envoy_ptr) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_get_downstream_local_dns_san_size: not "
1
               "implemented in this context");
1
  return 0;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_access_logger_get_downstream_local_subject(
1
    envoy_dynamic_module_type_access_logger_envoy_ptr, envoy_dynamic_module_type_envoy_buffer*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_get_downstream_local_subject: not "
1
               "implemented in this context");
1
  return false;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_access_logger_get_downstream_local_uri_san(
1
    envoy_dynamic_module_type_access_logger_envoy_ptr, envoy_dynamic_module_type_envoy_buffer*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_get_downstream_local_uri_san: not "
1
               "implemented in this context");
1
  return false;
1
}
__attribute__((weak)) size_t
envoy_dynamic_module_callback_access_logger_get_downstream_local_uri_san_size(
1
    envoy_dynamic_module_type_access_logger_envoy_ptr) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_get_downstream_local_uri_san_size: not "
1
               "implemented in this context");
1
  return 0;
1
}
__attribute__((weak)) bool
envoy_dynamic_module_callback_access_logger_get_downstream_peer_cert_digest(
1
    envoy_dynamic_module_type_access_logger_envoy_ptr, envoy_dynamic_module_type_envoy_buffer*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_get_downstream_peer_cert_digest: not "
1
               "implemented in this context");
1
  return false;
1
}
__attribute__((weak)) bool
envoy_dynamic_module_callback_access_logger_get_downstream_peer_cert_presented(
1
    envoy_dynamic_module_type_access_logger_envoy_ptr) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_get_downstream_peer_cert_presented: "
1
               "not implemented in this context");
1
  return false;
1
}
__attribute__((weak)) int64_t
envoy_dynamic_module_callback_access_logger_get_downstream_peer_cert_v_end(
1
    envoy_dynamic_module_type_access_logger_envoy_ptr) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_get_downstream_peer_cert_v_end: not "
1
               "implemented in this context");
1
  return 0;
1
}
__attribute__((weak)) int64_t
envoy_dynamic_module_callback_access_logger_get_downstream_peer_cert_v_start(
1
    envoy_dynamic_module_type_access_logger_envoy_ptr) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_get_downstream_peer_cert_v_start: not "
1
               "implemented in this context");
1
  return 0;
1
}
__attribute__((weak)) bool
envoy_dynamic_module_callback_access_logger_get_downstream_peer_cert_validated(
1
    envoy_dynamic_module_type_access_logger_envoy_ptr) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_get_downstream_peer_cert_validated: "
1
               "not implemented in this context");
1
  return false;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_access_logger_get_downstream_peer_dns_san(
1
    envoy_dynamic_module_type_access_logger_envoy_ptr, envoy_dynamic_module_type_envoy_buffer*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_get_downstream_peer_dns_san: not "
1
               "implemented in this context");
1
  return false;
1
}
__attribute__((weak)) size_t
envoy_dynamic_module_callback_access_logger_get_downstream_peer_dns_san_size(
1
    envoy_dynamic_module_type_access_logger_envoy_ptr) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_get_downstream_peer_dns_san_size: not "
1
               "implemented in this context");
1
  return 0;
1
}
__attribute__((weak)) bool
envoy_dynamic_module_callback_access_logger_get_downstream_peer_fingerprint_1(
1
    envoy_dynamic_module_type_access_logger_envoy_ptr, envoy_dynamic_module_type_envoy_buffer*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_get_downstream_peer_fingerprint_1: not "
1
               "implemented in this context");
1
  return false;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_access_logger_get_downstream_peer_issuer(
1
    envoy_dynamic_module_type_access_logger_envoy_ptr, envoy_dynamic_module_type_envoy_buffer*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_get_downstream_peer_issuer: not "
1
               "implemented in this context");
1
  return false;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_access_logger_get_downstream_peer_serial(
1
    envoy_dynamic_module_type_access_logger_envoy_ptr, envoy_dynamic_module_type_envoy_buffer*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_get_downstream_peer_serial: not "
1
               "implemented in this context");
1
  return false;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_access_logger_get_downstream_peer_subject(
1
    envoy_dynamic_module_type_access_logger_envoy_ptr, envoy_dynamic_module_type_envoy_buffer*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_get_downstream_peer_subject: not "
1
               "implemented in this context");
1
  return false;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_access_logger_get_downstream_peer_uri_san(
1
    envoy_dynamic_module_type_access_logger_envoy_ptr, envoy_dynamic_module_type_envoy_buffer*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_get_downstream_peer_uri_san: not "
1
               "implemented in this context");
1
  return false;
1
}
__attribute__((weak)) size_t
envoy_dynamic_module_callback_access_logger_get_downstream_peer_uri_san_size(
1
    envoy_dynamic_module_type_access_logger_envoy_ptr) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_get_downstream_peer_uri_san_size: not "
1
               "implemented in this context");
1
  return 0;
1
}
__attribute__((weak)) bool
envoy_dynamic_module_callback_access_logger_get_downstream_remote_address(
    envoy_dynamic_module_type_access_logger_envoy_ptr, envoy_dynamic_module_type_envoy_buffer*,
1
    uint32_t*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_get_downstream_remote_address: not "
1
               "implemented in this context");
1
  return false;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_access_logger_get_downstream_tls_cipher(
1
    envoy_dynamic_module_type_access_logger_envoy_ptr, envoy_dynamic_module_type_envoy_buffer*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_get_downstream_tls_cipher: not "
1
               "implemented in this context");
1
  return false;
1
}
__attribute__((weak)) bool
envoy_dynamic_module_callback_access_logger_get_downstream_tls_session_id(
1
    envoy_dynamic_module_type_access_logger_envoy_ptr, envoy_dynamic_module_type_envoy_buffer*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_get_downstream_tls_session_id: not "
1
               "implemented in this context");
1
  return false;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_access_logger_get_downstream_tls_version(
1
    envoy_dynamic_module_type_access_logger_envoy_ptr, envoy_dynamic_module_type_envoy_buffer*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_get_downstream_tls_version: not "
1
               "implemented in this context");
1
  return false;
1
}
__attribute__((weak)) bool
envoy_dynamic_module_callback_access_logger_get_downstream_transport_failure_reason(
1
    envoy_dynamic_module_type_access_logger_envoy_ptr, envoy_dynamic_module_type_envoy_buffer*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_get_downstream_transport_failure_"
1
               "reason: not implemented in this context");
1
  return false;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_access_logger_get_dynamic_metadata(
    envoy_dynamic_module_type_access_logger_envoy_ptr, envoy_dynamic_module_type_module_buffer,
1
    envoy_dynamic_module_type_module_buffer, envoy_dynamic_module_type_envoy_buffer*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_get_dynamic_metadata: not implemented "
1
               "in this context");
1
  return false;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_access_logger_get_filter_state(
    envoy_dynamic_module_type_access_logger_envoy_ptr, envoy_dynamic_module_type_module_buffer,
1
    envoy_dynamic_module_type_envoy_buffer*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_get_filter_state: not implemented in "
1
               "this context");
1
  return false;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_access_logger_get_header_value(
    envoy_dynamic_module_type_access_logger_envoy_ptr, envoy_dynamic_module_type_http_header_type,
    envoy_dynamic_module_type_module_buffer, envoy_dynamic_module_type_envoy_buffer*, size_t,
1
    size_t*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_get_header_value: not implemented in "
1
               "this context");
1
  return false;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_access_logger_get_headers(
    envoy_dynamic_module_type_access_logger_envoy_ptr, envoy_dynamic_module_type_http_header_type,
1
    envoy_dynamic_module_type_envoy_http_header*) {
1
  IS_ENVOY_BUG(
1
      "envoy_dynamic_module_callback_access_logger_get_headers: not implemented in this context");
1
  return false;
1
}
__attribute__((weak)) size_t envoy_dynamic_module_callback_access_logger_get_headers_size(
1
    envoy_dynamic_module_type_access_logger_envoy_ptr, envoy_dynamic_module_type_http_header_type) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_get_headers_size: not implemented in "
1
               "this context");
1
  return 0;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_access_logger_get_ja3_hash(
1
    envoy_dynamic_module_type_access_logger_envoy_ptr, envoy_dynamic_module_type_envoy_buffer*) {
1
  IS_ENVOY_BUG(
1
      "envoy_dynamic_module_callback_access_logger_get_ja3_hash: not implemented in this context");
1
  return false;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_access_logger_get_ja4_hash(
1
    envoy_dynamic_module_type_access_logger_envoy_ptr, envoy_dynamic_module_type_envoy_buffer*) {
1
  IS_ENVOY_BUG(
1
      "envoy_dynamic_module_callback_access_logger_get_ja4_hash: not implemented in this context");
1
  return false;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_access_logger_get_local_reply_body(
1
    envoy_dynamic_module_type_access_logger_envoy_ptr, envoy_dynamic_module_type_envoy_buffer*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_get_local_reply_body: not implemented "
1
               "in this context");
1
  return false;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_access_logger_get_protocol(
1
    envoy_dynamic_module_type_access_logger_envoy_ptr, envoy_dynamic_module_type_envoy_buffer*) {
1
  IS_ENVOY_BUG(
1
      "envoy_dynamic_module_callback_access_logger_get_protocol: not implemented in this context");
1
  return false;
1
}
__attribute__((weak)) uint64_t
envoy_dynamic_module_callback_access_logger_get_request_headers_bytes(
1
    envoy_dynamic_module_type_access_logger_envoy_ptr) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_get_request_headers_bytes: not "
1
               "implemented in this context");
1
  return 0;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_access_logger_get_request_id(
1
    envoy_dynamic_module_type_access_logger_envoy_ptr, envoy_dynamic_module_type_envoy_buffer*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_get_request_id: not implemented in "
1
               "this context");
1
  return false;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_access_logger_get_requested_server_name(
1
    envoy_dynamic_module_type_access_logger_envoy_ptr, envoy_dynamic_module_type_envoy_buffer*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_get_requested_server_name: not "
1
               "implemented in this context");
1
  return false;
1
}
__attribute__((weak)) uint32_t envoy_dynamic_module_callback_access_logger_get_response_code(
1
    envoy_dynamic_module_type_access_logger_envoy_ptr) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_get_response_code: not implemented in "
1
               "this context");
1
  return 0;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_access_logger_get_response_code_details(
1
    envoy_dynamic_module_type_access_logger_envoy_ptr, envoy_dynamic_module_type_envoy_buffer*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_get_response_code_details: not "
1
               "implemented in this context");
1
  return false;
1
}
__attribute__((weak)) uint64_t envoy_dynamic_module_callback_access_logger_get_response_flags(
1
    envoy_dynamic_module_type_access_logger_envoy_ptr) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_get_response_flags: not implemented in "
1
               "this context");
1
  return 0;
1
}
__attribute__((weak)) uint64_t
envoy_dynamic_module_callback_access_logger_get_response_headers_bytes(
1
    envoy_dynamic_module_type_access_logger_envoy_ptr) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_get_response_headers_bytes: not "
1
               "implemented in this context");
1
  return 0;
1
}
__attribute__((weak)) uint64_t
envoy_dynamic_module_callback_access_logger_get_response_trailers_bytes(
1
    envoy_dynamic_module_type_access_logger_envoy_ptr) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_get_response_trailers_bytes: not "
1
               "implemented in this context");
1
  return 0;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_access_logger_get_route_name(
1
    envoy_dynamic_module_type_access_logger_envoy_ptr, envoy_dynamic_module_type_envoy_buffer*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_get_route_name: not implemented in "
1
               "this context");
1
  return false;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_access_logger_get_span_id(
1
    envoy_dynamic_module_type_access_logger_envoy_ptr, envoy_dynamic_module_type_envoy_buffer*) {
1
  IS_ENVOY_BUG(
1
      "envoy_dynamic_module_callback_access_logger_get_span_id: not implemented in this context");
1
  return false;
1
}
__attribute__((weak)) void envoy_dynamic_module_callback_access_logger_get_timing_info(
1
    envoy_dynamic_module_type_access_logger_envoy_ptr, envoy_dynamic_module_type_timing_info*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_get_timing_info: not implemented in "
1
               "this context");
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_access_logger_get_trace_id(
1
    envoy_dynamic_module_type_access_logger_envoy_ptr, envoy_dynamic_module_type_envoy_buffer*) {
1
  IS_ENVOY_BUG(
1
      "envoy_dynamic_module_callback_access_logger_get_trace_id: not implemented in this context");
1
  return false;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_access_logger_get_upstream_cluster(
1
    envoy_dynamic_module_type_access_logger_envoy_ptr, envoy_dynamic_module_type_envoy_buffer*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_get_upstream_cluster: not implemented "
1
               "in this context");
1
  return false;
1
}
__attribute__((weak)) uint64_t
envoy_dynamic_module_callback_access_logger_get_upstream_connection_id(
1
    envoy_dynamic_module_type_access_logger_envoy_ptr) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_get_upstream_connection_id: not "
1
               "implemented in this context");
1
  return 0;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_access_logger_get_upstream_host(
1
    envoy_dynamic_module_type_access_logger_envoy_ptr, envoy_dynamic_module_type_envoy_buffer*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_get_upstream_host: not implemented in "
1
               "this context");
1
  return false;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_access_logger_get_upstream_local_address(
    envoy_dynamic_module_type_access_logger_envoy_ptr, envoy_dynamic_module_type_envoy_buffer*,
1
    uint32_t*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_get_upstream_local_address: not "
1
               "implemented in this context");
1
  return false;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_access_logger_get_upstream_local_dns_san(
1
    envoy_dynamic_module_type_access_logger_envoy_ptr, envoy_dynamic_module_type_envoy_buffer*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_get_upstream_local_dns_san: not "
1
               "implemented in this context");
1
  return false;
1
}
__attribute__((weak)) size_t
envoy_dynamic_module_callback_access_logger_get_upstream_local_dns_san_size(
1
    envoy_dynamic_module_type_access_logger_envoy_ptr) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_get_upstream_local_dns_san_size: not "
1
               "implemented in this context");
1
  return 0;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_access_logger_get_upstream_local_subject(
1
    envoy_dynamic_module_type_access_logger_envoy_ptr, envoy_dynamic_module_type_envoy_buffer*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_get_upstream_local_subject: not "
1
               "implemented in this context");
1
  return false;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_access_logger_get_upstream_local_uri_san(
1
    envoy_dynamic_module_type_access_logger_envoy_ptr, envoy_dynamic_module_type_envoy_buffer*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_get_upstream_local_uri_san: not "
1
               "implemented in this context");
1
  return false;
1
}
__attribute__((weak)) size_t
envoy_dynamic_module_callback_access_logger_get_upstream_local_uri_san_size(
1
    envoy_dynamic_module_type_access_logger_envoy_ptr) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_get_upstream_local_uri_san_size: not "
1
               "implemented in this context");
1
  return 0;
1
}
__attribute__((weak)) bool
envoy_dynamic_module_callback_access_logger_get_upstream_peer_cert_digest(
1
    envoy_dynamic_module_type_access_logger_envoy_ptr, envoy_dynamic_module_type_envoy_buffer*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_get_upstream_peer_cert_digest: not "
1
               "implemented in this context");
1
  return false;
1
}
__attribute__((weak)) int64_t
envoy_dynamic_module_callback_access_logger_get_upstream_peer_cert_v_end(
1
    envoy_dynamic_module_type_access_logger_envoy_ptr) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_get_upstream_peer_cert_v_end: not "
1
               "implemented in this context");
1
  return 0;
1
}
__attribute__((weak)) int64_t
envoy_dynamic_module_callback_access_logger_get_upstream_peer_cert_v_start(
1
    envoy_dynamic_module_type_access_logger_envoy_ptr) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_get_upstream_peer_cert_v_start: not "
1
               "implemented in this context");
1
  return 0;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_access_logger_get_upstream_peer_dns_san(
1
    envoy_dynamic_module_type_access_logger_envoy_ptr, envoy_dynamic_module_type_envoy_buffer*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_get_upstream_peer_dns_san: not "
1
               "implemented in this context");
1
  return false;
1
}
__attribute__((weak)) size_t
envoy_dynamic_module_callback_access_logger_get_upstream_peer_dns_san_size(
1
    envoy_dynamic_module_type_access_logger_envoy_ptr) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_get_upstream_peer_dns_san_size: not "
1
               "implemented in this context");
1
  return 0;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_access_logger_get_upstream_peer_issuer(
1
    envoy_dynamic_module_type_access_logger_envoy_ptr, envoy_dynamic_module_type_envoy_buffer*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_get_upstream_peer_issuer: not "
1
               "implemented in this context");
1
  return false;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_access_logger_get_upstream_peer_subject(
1
    envoy_dynamic_module_type_access_logger_envoy_ptr, envoy_dynamic_module_type_envoy_buffer*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_get_upstream_peer_subject: not "
1
               "implemented in this context");
1
  return false;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_access_logger_get_upstream_peer_uri_san(
1
    envoy_dynamic_module_type_access_logger_envoy_ptr, envoy_dynamic_module_type_envoy_buffer*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_get_upstream_peer_uri_san: not "
1
               "implemented in this context");
1
  return false;
1
}
__attribute__((weak)) size_t
envoy_dynamic_module_callback_access_logger_get_upstream_peer_uri_san_size(
1
    envoy_dynamic_module_type_access_logger_envoy_ptr) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_get_upstream_peer_uri_san_size: not "
1
               "implemented in this context");
1
  return 0;
1
}
__attribute__((weak)) int64_t
envoy_dynamic_module_callback_access_logger_get_upstream_pool_ready_duration_ns(
1
    envoy_dynamic_module_type_access_logger_envoy_ptr) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_get_upstream_pool_ready_duration_ns: "
1
               "not implemented in this context");
1
  return 0;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_access_logger_get_upstream_protocol(
1
    envoy_dynamic_module_type_access_logger_envoy_ptr, envoy_dynamic_module_type_envoy_buffer*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_get_upstream_protocol: not implemented "
1
               "in this context");
1
  return false;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_access_logger_get_upstream_remote_address(
    envoy_dynamic_module_type_access_logger_envoy_ptr, envoy_dynamic_module_type_envoy_buffer*,
1
    uint32_t*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_get_upstream_remote_address: not "
1
               "implemented in this context");
1
  return false;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_access_logger_get_upstream_tls_cipher(
1
    envoy_dynamic_module_type_access_logger_envoy_ptr, envoy_dynamic_module_type_envoy_buffer*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_get_upstream_tls_cipher: not "
1
               "implemented in this context");
1
  return false;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_access_logger_get_upstream_tls_session_id(
1
    envoy_dynamic_module_type_access_logger_envoy_ptr, envoy_dynamic_module_type_envoy_buffer*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_get_upstream_tls_session_id: not "
1
               "implemented in this context");
1
  return false;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_access_logger_get_upstream_tls_version(
1
    envoy_dynamic_module_type_access_logger_envoy_ptr, envoy_dynamic_module_type_envoy_buffer*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_get_upstream_tls_version: not "
1
               "implemented in this context");
1
  return false;
1
}
__attribute__((weak)) bool
envoy_dynamic_module_callback_access_logger_get_upstream_transport_failure_reason(
1
    envoy_dynamic_module_type_access_logger_envoy_ptr, envoy_dynamic_module_type_envoy_buffer*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_get_upstream_transport_failure_reason: "
1
               "not implemented in this context");
1
  return false;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_access_logger_get_virtual_cluster_name(
1
    envoy_dynamic_module_type_access_logger_envoy_ptr, envoy_dynamic_module_type_envoy_buffer*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_get_virtual_cluster_name: not "
1
               "implemented in this context");
1
  return false;
1
}
__attribute__((weak)) uint32_t envoy_dynamic_module_callback_access_logger_get_worker_index(
1
    envoy_dynamic_module_type_access_logger_envoy_ptr) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_get_worker_index: not implemented in "
1
               "this context");
1
  return 0;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_access_logger_has_response_flag(
1
    envoy_dynamic_module_type_access_logger_envoy_ptr, envoy_dynamic_module_type_response_flag) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_has_response_flag: not implemented in "
1
               "this context");
1
  return false;
1
}
__attribute__((weak)) envoy_dynamic_module_type_metrics_result
envoy_dynamic_module_callback_access_logger_increment_counter(
1
    envoy_dynamic_module_type_access_logger_config_envoy_ptr, size_t, uint64_t) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_increment_counter: not implemented in "
1
               "this context");
1
  return envoy_dynamic_module_type_metrics_result_Success;
1
}
__attribute__((weak)) envoy_dynamic_module_type_metrics_result
envoy_dynamic_module_callback_access_logger_increment_gauge(
1
    envoy_dynamic_module_type_access_logger_config_envoy_ptr, size_t, uint64_t) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_increment_gauge: not implemented in "
1
               "this context");
1
  return envoy_dynamic_module_type_metrics_result_Success;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_access_logger_is_health_check(
1
    envoy_dynamic_module_type_access_logger_envoy_ptr) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_is_health_check: not implemented in "
1
               "this context");
1
  return false;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_access_logger_is_mtls(
1
    envoy_dynamic_module_type_access_logger_envoy_ptr) {
1
  IS_ENVOY_BUG(
1
      "envoy_dynamic_module_callback_access_logger_is_mtls: not implemented in this context");
1
  return false;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_access_logger_is_trace_sampled(
1
    envoy_dynamic_module_type_access_logger_envoy_ptr) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_is_trace_sampled: not implemented in "
1
               "this context");
1
  return false;
1
}
__attribute__((weak)) envoy_dynamic_module_type_metrics_result
envoy_dynamic_module_callback_access_logger_record_histogram_value(
1
    envoy_dynamic_module_type_access_logger_config_envoy_ptr, size_t, uint64_t) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_access_logger_record_histogram_value: not "
1
               "implemented in this context");
1
  return envoy_dynamic_module_type_metrics_result_Success;
1
}
__attribute__((weak)) envoy_dynamic_module_type_metrics_result
envoy_dynamic_module_callback_access_logger_set_gauge(
1
    envoy_dynamic_module_type_access_logger_config_envoy_ptr, size_t, uint64_t) {
1
  IS_ENVOY_BUG(
1
      "envoy_dynamic_module_callback_access_logger_set_gauge: not implemented in this context");
1
  return envoy_dynamic_module_type_metrics_result_Success;
1
}
__attribute__((weak)) void envoy_dynamic_module_callback_listener_filter_close_socket(
1
    envoy_dynamic_module_type_listener_filter_envoy_ptr, envoy_dynamic_module_type_module_buffer) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_listener_filter_close_socket: not implemented in "
1
               "this context");
1
}
__attribute__((weak)) envoy_dynamic_module_type_metrics_result
envoy_dynamic_module_callback_listener_filter_decrement_gauge(
1
    envoy_dynamic_module_type_listener_filter_envoy_ptr, size_t, uint64_t) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_listener_filter_decrement_gauge: not implemented in "
1
               "this context");
1
  return envoy_dynamic_module_type_metrics_result_Success;
1
}
__attribute__((weak)) envoy_dynamic_module_type_address_type
envoy_dynamic_module_callback_listener_filter_get_address_type(
1
    envoy_dynamic_module_type_listener_filter_envoy_ptr) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_listener_filter_get_address_type: not implemented in "
1
               "this context");
1
  return envoy_dynamic_module_type_address_type_Unknown;
1
}
__attribute__((weak)) uint64_t
envoy_dynamic_module_callback_listener_filter_get_connection_start_time_ms(
1
    envoy_dynamic_module_type_listener_filter_envoy_ptr) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_listener_filter_get_connection_start_time_ms: not "
1
               "implemented in this context");
1
  return 0;
1
}
__attribute__((weak)) bool
envoy_dynamic_module_callback_listener_filter_get_detected_transport_protocol(
1
    envoy_dynamic_module_type_listener_filter_envoy_ptr, envoy_dynamic_module_type_envoy_buffer*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_listener_filter_get_detected_transport_protocol: not "
1
               "implemented in this context");
1
  return false;
1
}
__attribute__((weak)) bool
envoy_dynamic_module_callback_listener_filter_get_dynamic_metadata_string(
    envoy_dynamic_module_type_listener_filter_envoy_ptr, envoy_dynamic_module_type_module_buffer,
1
    envoy_dynamic_module_type_module_buffer, envoy_dynamic_module_type_envoy_buffer*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_listener_filter_get_dynamic_metadata_string: not "
1
               "implemented in this context");
1
  return false;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_listener_filter_get_ja3_hash(
1
    envoy_dynamic_module_type_listener_filter_envoy_ptr, envoy_dynamic_module_type_envoy_buffer*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_listener_filter_get_ja3_hash: not implemented in "
1
               "this context");
1
  return false;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_listener_filter_get_ja4_hash(
1
    envoy_dynamic_module_type_listener_filter_envoy_ptr, envoy_dynamic_module_type_envoy_buffer*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_listener_filter_get_ja4_hash: not implemented in "
1
               "this context");
1
  return false;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_listener_filter_get_original_dst(
    envoy_dynamic_module_type_listener_filter_envoy_ptr, envoy_dynamic_module_type_envoy_buffer*,
1
    uint32_t*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_listener_filter_get_original_dst: not implemented in "
1
               "this context");
1
  return false;
1
}
__attribute__((weak)) bool
envoy_dynamic_module_callback_listener_filter_get_requested_application_protocols(
1
    envoy_dynamic_module_type_listener_filter_envoy_ptr, envoy_dynamic_module_type_envoy_buffer*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_listener_filter_get_requested_application_protocols: "
1
               "not implemented in this context");
1
  return false;
1
}
__attribute__((weak)) size_t
envoy_dynamic_module_callback_listener_filter_get_requested_application_protocols_size(
1
    envoy_dynamic_module_type_listener_filter_envoy_ptr) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_listener_filter_get_requested_application_protocols_"
1
               "size: not implemented in this context");
1
  return 0;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_listener_filter_get_requested_server_name(
1
    envoy_dynamic_module_type_listener_filter_envoy_ptr, envoy_dynamic_module_type_envoy_buffer*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_listener_filter_get_requested_server_name: not "
1
               "implemented in this context");
1
  return false;
1
}
__attribute__((weak)) int64_t envoy_dynamic_module_callback_listener_filter_get_socket_fd(
1
    envoy_dynamic_module_type_listener_filter_envoy_ptr) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_listener_filter_get_socket_fd: not implemented in "
1
               "this context");
1
  return 0;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_listener_filter_get_socket_option_bytes(
1
    envoy_dynamic_module_type_listener_filter_envoy_ptr, int64_t, int64_t, char*, size_t, size_t*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_listener_filter_get_socket_option_bytes: not "
1
               "implemented in this context");
1
  return false;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_listener_filter_get_socket_option_int(
1
    envoy_dynamic_module_type_listener_filter_envoy_ptr, int64_t, int64_t, int64_t*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_listener_filter_get_socket_option_int: not "
1
               "implemented in this context");
1
  return false;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_listener_filter_get_ssl_dns_sans(
1
    envoy_dynamic_module_type_listener_filter_envoy_ptr, envoy_dynamic_module_type_envoy_buffer*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_listener_filter_get_ssl_dns_sans: not implemented in "
1
               "this context");
1
  return false;
1
}
__attribute__((weak)) size_t envoy_dynamic_module_callback_listener_filter_get_ssl_dns_sans_size(
1
    envoy_dynamic_module_type_listener_filter_envoy_ptr) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_listener_filter_get_ssl_dns_sans_size: not "
1
               "implemented in this context");
1
  return 0;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_listener_filter_get_ssl_subject(
1
    envoy_dynamic_module_type_listener_filter_envoy_ptr, envoy_dynamic_module_type_envoy_buffer*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_listener_filter_get_ssl_subject: not implemented in "
1
               "this context");
1
  return false;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_listener_filter_get_ssl_uri_sans(
1
    envoy_dynamic_module_type_listener_filter_envoy_ptr, envoy_dynamic_module_type_envoy_buffer*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_listener_filter_get_ssl_uri_sans: not implemented in "
1
               "this context");
1
  return false;
1
}
__attribute__((weak)) size_t envoy_dynamic_module_callback_listener_filter_get_ssl_uri_sans_size(
1
    envoy_dynamic_module_type_listener_filter_envoy_ptr) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_listener_filter_get_ssl_uri_sans_size: not "
1
               "implemented in this context");
1
  return 0;
1
}
__attribute__((weak)) uint32_t envoy_dynamic_module_callback_listener_filter_get_worker_index(
1
    envoy_dynamic_module_type_listener_filter_envoy_ptr) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_listener_filter_get_worker_index: not implemented in "
1
               "this context");
1
  return 0;
1
}
__attribute__((weak)) envoy_dynamic_module_type_http_callout_init_result
envoy_dynamic_module_callback_listener_filter_http_callout(
    envoy_dynamic_module_type_listener_filter_envoy_ptr, uint64_t*,
    envoy_dynamic_module_type_module_buffer, envoy_dynamic_module_type_module_http_header*, size_t,
1
    envoy_dynamic_module_type_module_buffer, uint64_t) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_listener_filter_http_callout: not implemented in "
1
               "this context");
1
  return envoy_dynamic_module_type_http_callout_init_result_CannotCreateRequest;
1
}
__attribute__((weak)) envoy_dynamic_module_type_metrics_result
envoy_dynamic_module_callback_listener_filter_increment_counter(
1
    envoy_dynamic_module_type_listener_filter_envoy_ptr, size_t, uint64_t) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_listener_filter_increment_counter: not implemented "
1
               "in this context");
1
  return envoy_dynamic_module_type_metrics_result_Success;
1
}
__attribute__((weak)) envoy_dynamic_module_type_metrics_result
envoy_dynamic_module_callback_listener_filter_increment_gauge(
1
    envoy_dynamic_module_type_listener_filter_envoy_ptr, size_t, uint64_t) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_listener_filter_increment_gauge: not implemented in "
1
               "this context");
1
  return envoy_dynamic_module_type_metrics_result_Success;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_listener_filter_is_local_address_restored(
1
    envoy_dynamic_module_type_listener_filter_envoy_ptr) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_listener_filter_is_local_address_restored: not "
1
               "implemented in this context");
1
  return false;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_listener_filter_is_ssl(
1
    envoy_dynamic_module_type_listener_filter_envoy_ptr) {
1
  IS_ENVOY_BUG(
1
      "envoy_dynamic_module_callback_listener_filter_is_ssl: not implemented in this context");
1
  return false;
1
}
__attribute__((weak)) size_t envoy_dynamic_module_callback_listener_filter_max_read_bytes(
1
    envoy_dynamic_module_type_listener_filter_envoy_ptr) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_listener_filter_max_read_bytes: not implemented in "
1
               "this context");
1
  return 0;
1
}
__attribute__((weak)) envoy_dynamic_module_type_metrics_result
envoy_dynamic_module_callback_listener_filter_record_histogram_value(
1
    envoy_dynamic_module_type_listener_filter_envoy_ptr, size_t, uint64_t) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_listener_filter_record_histogram_value: not "
1
               "implemented in this context");
1
  return envoy_dynamic_module_type_metrics_result_Success;
1
}
__attribute__((weak)) void
envoy_dynamic_module_callback_listener_filter_set_downstream_transport_failure_reason(
1
    envoy_dynamic_module_type_listener_filter_envoy_ptr, envoy_dynamic_module_type_module_buffer) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_listener_filter_set_downstream_transport_failure_"
1
               "reason: not implemented in this context");
1
}
__attribute__((weak)) void
envoy_dynamic_module_callback_listener_filter_set_dynamic_metadata_string(
    envoy_dynamic_module_type_listener_filter_envoy_ptr, envoy_dynamic_module_type_module_buffer,
1
    envoy_dynamic_module_type_module_buffer, envoy_dynamic_module_type_module_buffer) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_listener_filter_set_dynamic_metadata_string: not "
1
               "implemented in this context");
1
}
__attribute__((weak)) bool
envoy_dynamic_module_callback_listener_filter_get_dynamic_metadata_number(
    envoy_dynamic_module_type_listener_filter_envoy_ptr, envoy_dynamic_module_type_module_buffer,
1
    envoy_dynamic_module_type_module_buffer, double*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_listener_filter_get_dynamic_metadata_number: not "
1
               "implemented in this context");
1
  return false;
1
}
__attribute__((weak)) void
envoy_dynamic_module_callback_listener_filter_set_dynamic_metadata_number(
    envoy_dynamic_module_type_listener_filter_envoy_ptr, envoy_dynamic_module_type_module_buffer,
1
    envoy_dynamic_module_type_module_buffer, double) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_listener_filter_set_dynamic_metadata_number: not "
1
               "implemented in this context");
1
}
__attribute__((weak)) envoy_dynamic_module_type_metrics_result
envoy_dynamic_module_callback_listener_filter_set_gauge(
1
    envoy_dynamic_module_type_listener_filter_envoy_ptr, size_t, uint64_t) {
1
  IS_ENVOY_BUG(
1
      "envoy_dynamic_module_callback_listener_filter_set_gauge: not implemented in this context");
1
  return envoy_dynamic_module_type_metrics_result_Success;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_listener_filter_set_socket_option_bytes(
    envoy_dynamic_module_type_listener_filter_envoy_ptr, int64_t, int64_t,
1
    envoy_dynamic_module_type_module_buffer) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_listener_filter_set_socket_option_bytes: not "
1
               "implemented in this context");
1
  return false;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_listener_filter_set_socket_option_int(
1
    envoy_dynamic_module_type_listener_filter_envoy_ptr, int64_t, int64_t, int64_t) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_listener_filter_set_socket_option_int: not "
1
               "implemented in this context");
1
  return false;
1
}
__attribute__((weak)) void envoy_dynamic_module_callback_listener_filter_use_original_dst(
1
    envoy_dynamic_module_type_listener_filter_envoy_ptr, bool) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_listener_filter_use_original_dst: not implemented in "
1
               "this context");
1
}
__attribute__((weak)) int64_t envoy_dynamic_module_callback_listener_filter_write_to_socket(
1
    envoy_dynamic_module_type_listener_filter_envoy_ptr, envoy_dynamic_module_type_module_buffer) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_listener_filter_write_to_socket: not implemented in "
1
               "this context");
1
  return 0;
1
}
__attribute__((weak)) envoy_dynamic_module_type_metrics_result
envoy_dynamic_module_callback_udp_listener_filter_config_define_counter(
    envoy_dynamic_module_type_udp_listener_filter_config_envoy_ptr,
1
    envoy_dynamic_module_type_module_buffer, size_t*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_udp_listener_filter_config_define_counter: not "
1
               "implemented in this context");
1
  return envoy_dynamic_module_type_metrics_result_Success;
1
}
__attribute__((weak)) envoy_dynamic_module_type_metrics_result
envoy_dynamic_module_callback_udp_listener_filter_config_define_gauge(
    envoy_dynamic_module_type_udp_listener_filter_config_envoy_ptr,
1
    envoy_dynamic_module_type_module_buffer, size_t*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_udp_listener_filter_config_define_gauge: not "
1
               "implemented in this context");
1
  return envoy_dynamic_module_type_metrics_result_Success;
1
}
__attribute__((weak)) envoy_dynamic_module_type_metrics_result
envoy_dynamic_module_callback_udp_listener_filter_config_define_histogram(
    envoy_dynamic_module_type_udp_listener_filter_config_envoy_ptr,
1
    envoy_dynamic_module_type_module_buffer, size_t*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_udp_listener_filter_config_define_histogram: not "
1
               "implemented in this context");
1
  return envoy_dynamic_module_type_metrics_result_Success;
1
}
__attribute__((weak)) envoy_dynamic_module_type_metrics_result
envoy_dynamic_module_callback_udp_listener_filter_decrement_gauge(
1
    envoy_dynamic_module_type_udp_listener_filter_envoy_ptr, size_t, uint64_t) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_udp_listener_filter_decrement_gauge: not implemented "
1
               "in this context");
1
  return envoy_dynamic_module_type_metrics_result_Success;
1
}
__attribute__((weak)) bool
envoy_dynamic_module_callback_udp_listener_filter_get_datagram_data_chunks(
    envoy_dynamic_module_type_udp_listener_filter_envoy_ptr,
1
    envoy_dynamic_module_type_envoy_buffer*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_udp_listener_filter_get_datagram_data_chunks: not "
1
               "implemented in this context");
1
  return false;
1
}
__attribute__((weak)) size_t
envoy_dynamic_module_callback_udp_listener_filter_get_datagram_data_chunks_size(
1
    envoy_dynamic_module_type_udp_listener_filter_envoy_ptr) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_udp_listener_filter_get_datagram_data_chunks_size: "
1
               "not implemented in this context");
1
  return 0;
1
}
__attribute__((weak)) size_t
envoy_dynamic_module_callback_udp_listener_filter_get_datagram_data_size(
1
    envoy_dynamic_module_type_udp_listener_filter_envoy_ptr) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_udp_listener_filter_get_datagram_data_size: not "
1
               "implemented in this context");
1
  return 0;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_udp_listener_filter_get_local_address(
    envoy_dynamic_module_type_udp_listener_filter_envoy_ptr,
1
    envoy_dynamic_module_type_envoy_buffer*, uint32_t*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_udp_listener_filter_get_local_address: not "
1
               "implemented in this context");
1
  return false;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_udp_listener_filter_get_peer_address(
    envoy_dynamic_module_type_udp_listener_filter_envoy_ptr,
1
    envoy_dynamic_module_type_envoy_buffer*, uint32_t*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_udp_listener_filter_get_peer_address: not "
1
               "implemented in this context");
1
  return false;
1
}
__attribute__((weak)) uint32_t envoy_dynamic_module_callback_udp_listener_filter_get_worker_index(
1
    envoy_dynamic_module_type_udp_listener_filter_envoy_ptr) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_udp_listener_filter_get_worker_index: not "
1
               "implemented in this context");
1
  return 0;
1
}
__attribute__((weak)) envoy_dynamic_module_type_metrics_result
envoy_dynamic_module_callback_udp_listener_filter_increment_counter(
1
    envoy_dynamic_module_type_udp_listener_filter_envoy_ptr, size_t, uint64_t) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_udp_listener_filter_increment_counter: not "
1
               "implemented in this context");
1
  return envoy_dynamic_module_type_metrics_result_Success;
1
}
__attribute__((weak)) envoy_dynamic_module_type_metrics_result
envoy_dynamic_module_callback_udp_listener_filter_increment_gauge(
1
    envoy_dynamic_module_type_udp_listener_filter_envoy_ptr, size_t, uint64_t) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_udp_listener_filter_increment_gauge: not implemented "
1
               "in this context");
1
  return envoy_dynamic_module_type_metrics_result_Success;
1
}
__attribute__((weak)) envoy_dynamic_module_type_metrics_result
envoy_dynamic_module_callback_udp_listener_filter_record_histogram_value(
1
    envoy_dynamic_module_type_udp_listener_filter_envoy_ptr, size_t, uint64_t) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_udp_listener_filter_record_histogram_value: not "
1
               "implemented in this context");
1
  return envoy_dynamic_module_type_metrics_result_Success;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_udp_listener_filter_send_datagram(
    envoy_dynamic_module_type_udp_listener_filter_envoy_ptr,
1
    envoy_dynamic_module_type_module_buffer, envoy_dynamic_module_type_module_buffer, uint32_t) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_udp_listener_filter_send_datagram: not implemented "
1
               "in this context");
1
  return false;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_udp_listener_filter_set_datagram_data(
    envoy_dynamic_module_type_udp_listener_filter_envoy_ptr,
1
    envoy_dynamic_module_type_module_buffer) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_udp_listener_filter_set_datagram_data: not "
1
               "implemented in this context");
1
  return false;
1
}
__attribute__((weak)) envoy_dynamic_module_type_metrics_result
envoy_dynamic_module_callback_udp_listener_filter_set_gauge(
1
    envoy_dynamic_module_type_udp_listener_filter_envoy_ptr, size_t, uint64_t) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_udp_listener_filter_set_gauge: not implemented in "
1
               "this context");
1
  return envoy_dynamic_module_type_metrics_result_Success;
1
}
// ---------------------- Upstream HTTP TCP Bridge callbacks ------------------------
// These are weak symbols that provide default stub implementations. The actual implementations
// are provided in the upstream bridge abi_impl.cc when the upstream bridge extension is used.
__attribute__((weak)) bool
envoy_dynamic_module_callback_upstream_http_tcp_bridge_get_request_header(
    envoy_dynamic_module_type_upstream_http_tcp_bridge_envoy_ptr,
    envoy_dynamic_module_type_module_buffer, envoy_dynamic_module_type_envoy_buffer*, size_t,
1
    size_t*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_upstream_http_tcp_bridge_get_request_header: "
1
               "not implemented in this context");
1
  return false;
1
}
__attribute__((weak)) size_t
envoy_dynamic_module_callback_upstream_http_tcp_bridge_get_request_headers_size(
1
    envoy_dynamic_module_type_upstream_http_tcp_bridge_envoy_ptr) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_upstream_http_tcp_bridge_get_request_headers_size: "
1
               "not implemented in this context");
1
  return 0;
1
}
__attribute__((weak)) bool
envoy_dynamic_module_callback_upstream_http_tcp_bridge_get_request_headers(
    envoy_dynamic_module_type_upstream_http_tcp_bridge_envoy_ptr,
1
    envoy_dynamic_module_type_envoy_http_header*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_upstream_http_tcp_bridge_get_request_headers: "
1
               "not implemented in this context");
1
  return false;
1
}
__attribute__((weak)) void
envoy_dynamic_module_callback_upstream_http_tcp_bridge_get_request_buffer(
    envoy_dynamic_module_type_upstream_http_tcp_bridge_envoy_ptr,
1
    envoy_dynamic_module_type_envoy_buffer*, size_t*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_upstream_http_tcp_bridge_get_request_buffer: "
1
               "not implemented in this context");
1
}
__attribute__((weak)) void
envoy_dynamic_module_callback_upstream_http_tcp_bridge_get_response_buffer(
    envoy_dynamic_module_type_upstream_http_tcp_bridge_envoy_ptr,
1
    envoy_dynamic_module_type_envoy_buffer*, size_t*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_upstream_http_tcp_bridge_get_response_buffer: "
1
               "not implemented in this context");
1
}
__attribute__((weak)) void
envoy_dynamic_module_callback_upstream_http_tcp_bridge_send_upstream_data(
    envoy_dynamic_module_type_upstream_http_tcp_bridge_envoy_ptr,
1
    envoy_dynamic_module_type_module_buffer, bool) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_upstream_http_tcp_bridge_send_upstream_data: "
1
               "not implemented in this context");
1
}
__attribute__((weak)) void envoy_dynamic_module_callback_upstream_http_tcp_bridge_send_response(
    envoy_dynamic_module_type_upstream_http_tcp_bridge_envoy_ptr, uint32_t,
    envoy_dynamic_module_type_module_http_header*, size_t,
1
    envoy_dynamic_module_type_module_buffer) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_upstream_http_tcp_bridge_send_response: "
1
               "not implemented in this context");
1
}
__attribute__((weak)) void
envoy_dynamic_module_callback_upstream_http_tcp_bridge_send_response_headers(
    envoy_dynamic_module_type_upstream_http_tcp_bridge_envoy_ptr, uint32_t,
1
    envoy_dynamic_module_type_module_http_header*, size_t, bool) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_upstream_http_tcp_bridge_send_response_headers: "
1
               "not implemented in this context");
1
}
__attribute__((weak)) void
envoy_dynamic_module_callback_upstream_http_tcp_bridge_send_response_data(
    envoy_dynamic_module_type_upstream_http_tcp_bridge_envoy_ptr,
1
    envoy_dynamic_module_type_module_buffer, bool) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_upstream_http_tcp_bridge_send_response_data: "
1
               "not implemented in this context");
1
}
__attribute__((weak)) void
envoy_dynamic_module_callback_upstream_http_tcp_bridge_send_response_trailers(
    envoy_dynamic_module_type_upstream_http_tcp_bridge_envoy_ptr,
1
    envoy_dynamic_module_type_module_http_header*, size_t) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_upstream_http_tcp_bridge_send_response_trailers: "
1
               "not implemented in this context");
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_http_add_dynamic_metadata_list_number(
    envoy_dynamic_module_type_http_filter_envoy_ptr, envoy_dynamic_module_type_module_buffer,
1
    envoy_dynamic_module_type_module_buffer, double) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_http_add_dynamic_metadata_list_number: "
1
               "not implemented in this context");
1
  return false;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_http_add_dynamic_metadata_list_string(
    envoy_dynamic_module_type_http_filter_envoy_ptr, envoy_dynamic_module_type_module_buffer,
1
    envoy_dynamic_module_type_module_buffer, envoy_dynamic_module_type_module_buffer) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_http_add_dynamic_metadata_list_string: "
1
               "not implemented in this context");
1
  return false;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_http_add_dynamic_metadata_list_bool(
    envoy_dynamic_module_type_http_filter_envoy_ptr, envoy_dynamic_module_type_module_buffer,
1
    envoy_dynamic_module_type_module_buffer, bool) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_http_add_dynamic_metadata_list_bool: "
1
               "not implemented in this context");
1
  return false;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_http_get_metadata_list_size(
    envoy_dynamic_module_type_http_filter_envoy_ptr, envoy_dynamic_module_type_metadata_source,
1
    envoy_dynamic_module_type_module_buffer, envoy_dynamic_module_type_module_buffer, size_t*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_http_get_metadata_list_size: "
1
               "not implemented in this context");
1
  return false;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_http_get_metadata_list_number(
    envoy_dynamic_module_type_http_filter_envoy_ptr, envoy_dynamic_module_type_metadata_source,
    envoy_dynamic_module_type_module_buffer, envoy_dynamic_module_type_module_buffer, size_t,
1
    double*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_http_get_metadata_list_number: "
1
               "not implemented in this context");
1
  return false;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_http_get_metadata_list_string(
    envoy_dynamic_module_type_http_filter_envoy_ptr, envoy_dynamic_module_type_metadata_source,
    envoy_dynamic_module_type_module_buffer, envoy_dynamic_module_type_module_buffer, size_t,
1
    envoy_dynamic_module_type_envoy_buffer*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_http_get_metadata_list_string: "
1
               "not implemented in this context");
1
  return false;
1
}
__attribute__((weak)) bool envoy_dynamic_module_callback_http_get_metadata_list_bool(
    envoy_dynamic_module_type_http_filter_envoy_ptr, envoy_dynamic_module_type_metadata_source,
    envoy_dynamic_module_type_module_buffer, envoy_dynamic_module_type_module_buffer, size_t,
1
    bool*) {
1
  IS_ENVOY_BUG("envoy_dynamic_module_callback_http_get_metadata_list_bool: "
1
               "not implemented in this context");
1
  return false;
1
}
} // extern "C"