Print this page
Commit IPMP changes
*** 19,28 ****
--- 19,29 ----
* CDDL HEADER END
*/
/*
* Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
+ * Copyright 2014 Nexenta Systems, Inc. All rights reserved.
*/
#ifndef _IPMGMT_IMPL_H
#define _IPMGMT_IMPL_H
*** 47,84 ****
/* ipmgmt_util.c */
extern void ipmgmt_log(int, const char *, ...);
extern int ipmgmt_cpfile(const char *, const char *, boolean_t);
/* ipmgmt_persist.c */
/*
* following are the list of DB walker callback functions and the callback
* arguments for each of the callback functions used by the daemon
*/
/* following functions take 'ipmgmt_prop_arg_t' as the callback argument */
extern db_wfunc_t ipmgmt_db_getprop, ipmgmt_db_resetprop;
/* following functions take ipadm_dbwrite_cbarg_t as callback argument */
! extern db_wfunc_t ipmgmt_db_add, ipmgmt_db_update;
typedef struct {
char *cb_ifname;
- ipadm_if_info_t *cb_ifinfo;
- } ipmgmt_getif_cbarg_t;
- extern db_wfunc_t ipmgmt_db_getif;
-
- typedef struct {
char *cb_aobjname;
- char *cb_ifname;
nvlist_t *cb_onvl;
int cb_ocnt;
! } ipmgmt_getaddr_cbarg_t;
extern db_wfunc_t ipmgmt_db_getaddr;
typedef struct {
sa_family_t cb_family;
char *cb_ifname;
} ipmgmt_if_cbarg_t;
extern db_wfunc_t ipmgmt_db_setif, ipmgmt_db_resetif;
typedef struct {
char *cb_aobjname;
--- 48,84 ----
/* ipmgmt_util.c */
extern void ipmgmt_log(int, const char *, ...);
extern int ipmgmt_cpfile(const char *, const char *, boolean_t);
/* ipmgmt_persist.c */
+ extern boolean_t ipmgmt_persist_if_exists(const char *, sa_family_t);
+ extern void ipmgmt_get_group_interface(const char *, char *, size_t);
/*
* following are the list of DB walker callback functions and the callback
* arguments for each of the callback functions used by the daemon
*/
/* following functions take 'ipmgmt_prop_arg_t' as the callback argument */
extern db_wfunc_t ipmgmt_db_getprop, ipmgmt_db_resetprop;
/* following functions take ipadm_dbwrite_cbarg_t as callback argument */
! extern db_wfunc_t ipmgmt_db_add, ipmgmt_db_update, ipmgmt_db_update_if;
typedef struct {
char *cb_ifname;
char *cb_aobjname;
nvlist_t *cb_onvl;
int cb_ocnt;
! } ipmgmt_get_cbarg_t;
! extern db_wfunc_t ipmgmt_db_getif;
extern db_wfunc_t ipmgmt_db_getaddr;
typedef struct {
sa_family_t cb_family;
char *cb_ifname;
+ boolean_t cb_ipv4exists;
+ boolean_t cb_ipv6exists;
} ipmgmt_if_cbarg_t;
extern db_wfunc_t ipmgmt_db_setif, ipmgmt_db_resetif;
typedef struct {
char *cb_aobjname;
*** 169,178 ****
--- 169,180 ----
scf_value_t *sr_val;
scf_transaction_t *sr_tx;
scf_transaction_entry_t *sr_ent;
} scf_resources_t;
+ extern int ipmgmt_update_family_nvp(nvlist_t *,
+ sa_family_t, uint_t);
extern int ipmgmt_db_walk(db_wfunc_t *, void *, ipadm_db_op_t);
extern int ipmgmt_aobjmap_op(ipmgmt_aobjmap_t *, uint32_t);
extern boolean_t ipmgmt_aobjmap_init(void *, nvlist_t *, char *,
size_t, int *);
extern int ipmgmt_persist_aobjmap(ipmgmt_aobjmap_t *,