1 /*
2 *
3 * Copyright 2016 gRPC authors.
4 *
5 * Licensed under the Apache License, Version 2.0 (the "License");
6 * you may not use this file except in compliance with the License.
7 * You may obtain a copy of the License at
8 *
9 * http://www.apache.org/licenses/LICENSE-2.0
10 *
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 *
17 */
18
19 #include <grpc/support/port_platform.h>
20
21 #include <grpc/grpc.h>
22
23 void grpc_http_filters_init(void);
24 void grpc_http_filters_shutdown(void);
25 void grpc_chttp2_plugin_init(void);
26 void grpc_chttp2_plugin_shutdown(void);
27 void grpc_deadline_filter_init(void);
28 void grpc_deadline_filter_shutdown(void);
29 void grpc_client_channel_init(void);
30 void grpc_client_channel_shutdown(void);
31 void grpc_inproc_plugin_init(void);
32 void grpc_inproc_plugin_shutdown(void);
33 void grpc_resolver_fake_init(void);
34 void grpc_resolver_fake_shutdown(void);
35 void grpc_lb_policy_grpclb_init(void);
36 void grpc_lb_policy_grpclb_shutdown(void);
37 void grpc_lb_policy_cds_init(void);
38 void grpc_lb_policy_cds_shutdown(void);
39 void grpc_lb_policy_eds_init(void);
40 void grpc_lb_policy_eds_shutdown(void);
41 void grpc_lb_policy_lrs_init(void);
42 void grpc_lb_policy_lrs_shutdown(void);
43 void grpc_lb_policy_priority_init(void);
44 void grpc_lb_policy_priority_shutdown(void);
45 void grpc_lb_policy_weighted_target_init(void);
46 void grpc_lb_policy_weighted_target_shutdown(void);
47 void grpc_lb_policy_xds_routing_init(void);
48 void grpc_lb_policy_xds_routing_shutdown(void);
49 void grpc_lb_policy_pick_first_init(void);
50 void grpc_lb_policy_pick_first_shutdown(void);
51 void grpc_lb_policy_round_robin_init(void);
52 void grpc_lb_policy_round_robin_shutdown(void);
53 void grpc_resolver_dns_ares_init(void);
54 void grpc_resolver_dns_ares_shutdown(void);
55 void grpc_resolver_dns_native_init(void);
56 void grpc_resolver_dns_native_shutdown(void);
57 void grpc_resolver_sockaddr_init(void);
58 void grpc_resolver_sockaddr_shutdown(void);
59 void grpc_resolver_xds_init(void);
60 void grpc_resolver_xds_shutdown(void);
61 void grpc_client_idle_filter_init(void);
62 void grpc_client_idle_filter_shutdown(void);
63 void grpc_max_age_filter_init(void);
64 void grpc_max_age_filter_shutdown(void);
65 void grpc_message_size_filter_init(void);
66 void grpc_message_size_filter_shutdown(void);
67 void grpc_client_authority_filter_init(void);
68 void grpc_client_authority_filter_shutdown(void);
69 void grpc_workaround_cronet_compression_filter_init(void);
70 void grpc_workaround_cronet_compression_filter_shutdown(void);
71
grpc_register_built_in_plugins(void)72 void grpc_register_built_in_plugins(void) {
73 grpc_register_plugin(grpc_http_filters_init,
74 grpc_http_filters_shutdown);
75 grpc_register_plugin(grpc_chttp2_plugin_init,
76 grpc_chttp2_plugin_shutdown);
77 grpc_register_plugin(grpc_deadline_filter_init,
78 grpc_deadline_filter_shutdown);
79 grpc_register_plugin(grpc_client_channel_init,
80 grpc_client_channel_shutdown);
81 grpc_register_plugin(grpc_inproc_plugin_init,
82 grpc_inproc_plugin_shutdown);
83 grpc_register_plugin(grpc_resolver_fake_init,
84 grpc_resolver_fake_shutdown);
85 grpc_register_plugin(grpc_lb_policy_grpclb_init,
86 grpc_lb_policy_grpclb_shutdown);
87 grpc_register_plugin(grpc_lb_policy_cds_init,
88 grpc_lb_policy_cds_shutdown);
89 grpc_register_plugin(grpc_lb_policy_eds_init,
90 grpc_lb_policy_eds_shutdown);
91 grpc_register_plugin(grpc_lb_policy_lrs_init,
92 grpc_lb_policy_lrs_shutdown);
93 grpc_register_plugin(grpc_lb_policy_priority_init,
94 grpc_lb_policy_priority_shutdown);
95 grpc_register_plugin(grpc_lb_policy_weighted_target_init,
96 grpc_lb_policy_weighted_target_shutdown);
97 grpc_register_plugin(grpc_lb_policy_xds_routing_init,
98 grpc_lb_policy_xds_routing_shutdown);
99 grpc_register_plugin(grpc_lb_policy_pick_first_init,
100 grpc_lb_policy_pick_first_shutdown);
101 grpc_register_plugin(grpc_lb_policy_round_robin_init,
102 grpc_lb_policy_round_robin_shutdown);
103 grpc_register_plugin(grpc_resolver_dns_ares_init,
104 grpc_resolver_dns_ares_shutdown);
105 grpc_register_plugin(grpc_resolver_dns_native_init,
106 grpc_resolver_dns_native_shutdown);
107 grpc_register_plugin(grpc_resolver_sockaddr_init,
108 grpc_resolver_sockaddr_shutdown);
109 grpc_register_plugin(grpc_resolver_xds_init,
110 grpc_resolver_xds_shutdown);
111 grpc_register_plugin(grpc_client_idle_filter_init,
112 grpc_client_idle_filter_shutdown);
113 grpc_register_plugin(grpc_max_age_filter_init,
114 grpc_max_age_filter_shutdown);
115 grpc_register_plugin(grpc_message_size_filter_init,
116 grpc_message_size_filter_shutdown);
117 grpc_register_plugin(grpc_client_authority_filter_init,
118 grpc_client_authority_filter_shutdown);
119 grpc_register_plugin(grpc_workaround_cronet_compression_filter_init,
120 grpc_workaround_cronet_compression_filter_shutdown);
121 }
122