4 * The contents of this file are subject to the terms of the
5 * Common Development and Distribution License (the "License").
6 * You may not use this file except in compliance with the License.
7 *
8 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9 * or http://www.opensolaris.org/os/licensing.
10 * See the License for the specific language governing permissions
11 * and limitations under the License.
12 *
13 * When distributing Covered Code, include this CDDL HEADER in each
14 * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15 * If applicable, add the following below this CDDL HEADER, with the
16 * fields enclosed by brackets "[]" replaced with your own identifying
17 * information: Portions Copyright [yyyy] [name of copyright owner]
18 *
19 * CDDL HEADER END
20 */
21
22 /*
23 * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
24 */
25
26 #ifndef _NCU_H
27 #define _NCU_H
28
29 #include <dhcpagent_ipc.h>
30 #include <dhcpagent_util.h>
31 #include <libdladm.h>
32 #include <libdlpi.h>
33 #include <libdlwlan.h>
34 #include <libinetutil.h>
35 #include <libipadm.h>
36 #include <libnwam.h>
37 #include <libnwam_priv.h>
38 #include <libuutil.h>
39 #include <pthread.h>
40 #include <sys/mac.h>
41
42 #include "events.h"
43
208 extern boolean_t nwamd_static_addresses_configured(nwamd_ncu_t *, sa_family_t);
209 extern void nwamd_plumb_interface(nwamd_ncu_t *, sa_family_t);
210 extern void nwamd_unplumb_interface(nwamd_ncu_t *, sa_family_t);
211 extern boolean_t nwamd_dhcp_managing(int, nwamd_ncu_t *);
212 extern void nwamd_configure_interface_addresses(nwamd_ncu_t *);
213 extern char *nwamd_get_dhcpinfo_data(const char *, char *);
214 extern void nwamd_dhcp_release(const char *);
215 extern void nwamd_add_default_routes(nwamd_ncu_t *);
216 extern void nwamd_add_route(struct sockaddr *, struct sockaddr *,
217 struct sockaddr *, const char *);
218
219 /* NCU value set/get functions */
220 extern nwam_error_t nwamd_set_ncu_uint(nwam_ncu_handle_t, uint64_t *, uint_t,
221 const char *);
222 extern nwam_error_t nwamd_set_ncu_string(nwam_ncu_handle_t, char **, uint_t,
223 const char *);
224 extern nwam_error_t nwamd_get_ncu_uint(nwam_ncu_handle_t, nwam_value_t *,
225 uint64_t **, uint_t *, const char *);
226 extern nwam_error_t nwamd_get_ncu_string(nwam_ncu_handle_t, nwam_value_t *,
227 char ***, uint_t *, const char *);
228
229 extern void nwamd_walk_physical_configuration(void);
230
231 #endif /* _NCU_H */
|
4 * The contents of this file are subject to the terms of the
5 * Common Development and Distribution License (the "License").
6 * You may not use this file except in compliance with the License.
7 *
8 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9 * or http://www.opensolaris.org/os/licensing.
10 * See the License for the specific language governing permissions
11 * and limitations under the License.
12 *
13 * When distributing Covered Code, include this CDDL HEADER in each
14 * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15 * If applicable, add the following below this CDDL HEADER, with the
16 * fields enclosed by brackets "[]" replaced with your own identifying
17 * information: Portions Copyright [yyyy] [name of copyright owner]
18 *
19 * CDDL HEADER END
20 */
21
22 /*
23 * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
24 * Copyright (c) 2016, Chris Fraire <cfraire@me.com>.
25 */
26
27 #ifndef _NCU_H
28 #define _NCU_H
29
30 #include <dhcpagent_ipc.h>
31 #include <dhcpagent_util.h>
32 #include <libdladm.h>
33 #include <libdlpi.h>
34 #include <libdlwlan.h>
35 #include <libinetutil.h>
36 #include <libipadm.h>
37 #include <libnwam.h>
38 #include <libnwam_priv.h>
39 #include <libuutil.h>
40 #include <pthread.h>
41 #include <sys/mac.h>
42
43 #include "events.h"
44
209 extern boolean_t nwamd_static_addresses_configured(nwamd_ncu_t *, sa_family_t);
210 extern void nwamd_plumb_interface(nwamd_ncu_t *, sa_family_t);
211 extern void nwamd_unplumb_interface(nwamd_ncu_t *, sa_family_t);
212 extern boolean_t nwamd_dhcp_managing(int, nwamd_ncu_t *);
213 extern void nwamd_configure_interface_addresses(nwamd_ncu_t *);
214 extern char *nwamd_get_dhcpinfo_data(const char *, char *);
215 extern void nwamd_dhcp_release(const char *);
216 extern void nwamd_add_default_routes(nwamd_ncu_t *);
217 extern void nwamd_add_route(struct sockaddr *, struct sockaddr *,
218 struct sockaddr *, const char *);
219
220 /* NCU value set/get functions */
221 extern nwam_error_t nwamd_set_ncu_uint(nwam_ncu_handle_t, uint64_t *, uint_t,
222 const char *);
223 extern nwam_error_t nwamd_set_ncu_string(nwam_ncu_handle_t, char **, uint_t,
224 const char *);
225 extern nwam_error_t nwamd_get_ncu_uint(nwam_ncu_handle_t, nwam_value_t *,
226 uint64_t **, uint_t *, const char *);
227 extern nwam_error_t nwamd_get_ncu_string(nwam_ncu_handle_t, nwam_value_t *,
228 char ***, uint_t *, const char *);
229 extern nwam_error_t nwamd_get_ncu_boolean(nwam_ncu_handle_t, nwam_value_t *,
230 boolean_t **, uint_t *, const char *);
231
232 extern void nwamd_walk_physical_configuration(void);
233
234 #endif /* _NCU_H */
|