1/*
2 * Copyright (c) 2018 Cisco and/or its affiliates.
3 * Licensed under the Apache License, Version 2.0 (the "License");
4 * you may not use this file except in compliance with the License.
5 * You may obtain a copy of the License at:
6 *
7 *     http://www.apache.org/licenses/LICENSE-2.0
8 *
9 * Unless required by applicable law or agreed to in writing, software
10 * distributed under the License is distributed on an "AS IS" BASIS,
11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 * See the License for the specific language governing permissions and
13 * limitations under the License.
14 */
15
16#include <vnet/ip6-nd/rd_cp.h>
17
18#include <vlibapi/api.h>
19#include <vlibmemory/api.h>
20
21/* define message IDs */
22#include <vnet/format_fns.h>
23#include <vnet/ip6-nd/rd_cp.api_enum.h>
24#include <vnet/ip6-nd/rd_cp.api_types.h>
25
26/**
27 * Base message ID fot the plugin
28 */
29static u32 rd_cp_base_msg_id;
30#define REPLY_MSG_ID_BASE rd_cp_base_msg_id
31
32#include <vlibapi/api_helper_macros.h>
33
34
35static void
36vl_api_ip6_nd_address_autoconfig_t_handler (vl_api_ip6_nd_address_autoconfig_t
37					    * mp)
38{
39  vl_api_ip6_nd_address_autoconfig_reply_t *rmp;
40  u32 sw_if_index;
41  int rv = 0;
42
43  VALIDATE_SW_IF_INDEX (mp);
44
45  sw_if_index = ntohl (mp->sw_if_index);
46
47  rv = rd_cp_set_address_autoconfig (sw_if_index,
48				     mp->enable, mp->install_default_routes);
49
50  BAD_SW_IF_INDEX_LABEL;
51
52  REPLY_MACRO (VL_API_IP6_ND_ADDRESS_AUTOCONFIG_REPLY);
53}
54
55#include <vnet/ip6-nd/rd_cp.api.c>
56
57static clib_error_t *
58rd_cp_api_init (vlib_main_t * vm)
59{
60  rd_cp_base_msg_id = setup_message_id_table ();
61
62  return (NULL);
63}
64
65VLIB_INIT_FUNCTION (rd_cp_api_init);
66
67/*
68 * fd.io coding-style-patch-verification: ON
69 *
70 * Local Variables:
71 * eval: (c-set-style "gnu")
72 * End:
73 */
74