diff options
Diffstat (limited to 'usr/src/lib/libdladm/common/libdladm.h')
| -rw-r--r-- | usr/src/lib/libdladm/common/libdladm.h | 25 | 
1 files changed, 21 insertions, 4 deletions
| diff --git a/usr/src/lib/libdladm/common/libdladm.h b/usr/src/lib/libdladm/common/libdladm.h index 36092f89a4..f5ae0e6ace 100644 --- a/usr/src/lib/libdladm/common/libdladm.h +++ b/usr/src/lib/libdladm/common/libdladm.h @@ -20,6 +20,7 @@   */  /*   * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright 2017, Joyent, Inc.   */  /* @@ -46,7 +47,7 @@ extern "C" {  #endif  #define	LINKID_STR_WIDTH	10 -#define	DLADM_STRSIZE		256 +#define	DLADM_STRSIZE		2048  /*   * option flags taken by the libdladm functions @@ -76,6 +77,10 @@ extern "C" {   *  - DLADM_OPT_BOOT:   *    Bypass check functions during boot (used by pool property since pools   *    can come up after link properties are set) + * + *  - DLADM_OPT_TRANSIENT: + *    Indicates that the link assigned to a zone is transient and will be + *    removed when the zone shuts down.   */  #define	DLADM_OPT_ACTIVE	0x00000001  #define	DLADM_OPT_PERSIST	0x00000002 @@ -86,6 +91,7 @@ extern "C" {  #define	DLADM_OPT_VLAN		0x00000040  #define	DLADM_OPT_NOREFRESH	0x00000080  #define	DLADM_OPT_BOOT		0x00000100 +#define	DLADM_OPT_TRANSIENT	0x00000200  #define	DLADM_WALK_TERMINATE	0  #define	DLADM_WALK_CONTINUE	-1 @@ -178,7 +184,8 @@ typedef enum {  	DLADM_STATUS_NO_IB_HW_RESOURCE,  	DLADM_STATUS_INVALID_PKEY_TBL_SIZE,  	DLADM_STATUS_PORT_NOPROTO, -	DLADM_STATUS_INVALID_MTU +	DLADM_STATUS_INVALID_MTU, +	DLADM_STATUS_BAD_ENCAP  } dladm_status_t;  typedef enum { @@ -232,6 +239,12 @@ typedef struct dladm_arg_list {  	char			*al_buf;  } dladm_arg_list_t; +typedef struct dladm_errlist { +	uint_t		el_count; +	uint_t		el_alloc; +	char		**el_errs; +} dladm_errlist_t; +  typedef enum {  	DLADM_LOGTYPE_LINK = 1,  	DLADM_LOGTYPE_FLOW @@ -263,6 +276,7 @@ extern dladm_status_t	dladm_str2pri(char *, mac_priority_level_t *);  extern const char	*dladm_pri2str(mac_priority_level_t, char *);  extern dladm_status_t	dladm_str2protect(char *, uint32_t *);  extern const char	*dladm_protect2str(uint32_t, char *); +extern const char	*dladm_dynamic2str(uint32_t, char *, size_t);  extern dladm_status_t	dladm_str2ipv4addr(char *, void *);  extern const char	*dladm_ipv4addr2str(void *, char *);  extern dladm_status_t	dladm_str2ipv6addr(char *, void *); @@ -293,12 +307,15 @@ extern dladm_status_t	dladm_zone_halt(dladm_handle_t, zoneid_t);  extern dladm_status_t	dladm_strs2range(char **, uint_t, mac_propval_type_t,  			    mac_propval_range_t **); -extern dladm_status_t	dladm_range2list(mac_propval_range_t *, void*, +extern dladm_status_t	dladm_range2list(const mac_propval_range_t *, void *,  			    uint_t *); -extern int		dladm_range2strs(mac_propval_range_t *, char **); +extern int		dladm_range2strs(const mac_propval_range_t *, char **);  extern dladm_status_t	dladm_list2range(void *, uint_t, mac_propval_type_t,  			    mac_propval_range_t **); +extern void		dladm_errlist_init(dladm_errlist_t *); +extern void		dladm_errlist_reset(dladm_errlist_t *); +  #ifdef	__cplusplus  }  #endif | 
