diff options
Diffstat (limited to 'usr/src/uts/common/sys/bootprops.h')
| -rw-r--r-- | usr/src/uts/common/sys/bootprops.h | 84 |
1 files changed, 81 insertions, 3 deletions
diff --git a/usr/src/uts/common/sys/bootprops.h b/usr/src/uts/common/sys/bootprops.h index f337777172..ed6dd8bd7a 100644 --- a/usr/src/uts/common/sys/bootprops.h +++ b/usr/src/uts/common/sys/bootprops.h @@ -19,16 +19,16 @@ * CDDL HEADER END */ /* - * Copyright 2007 Sun Microsystems, Inc. All rights reserved. + * Copyright 2008 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ #ifndef _BOOTPROPS_H #define _BOOTPROPS_H -#pragma ident "%Z%%M% %I% %E% SMI" - #include <sys/types.h> +#include <netinet/in.h> +#include <sys/t_kuser.h> #ifdef __cplusplus extern "C" { @@ -48,6 +48,84 @@ extern "C" { #define BP_BOOTP_RESPONSE "bootp-response" #define BP_NETWORK_INTERFACE "network-interface" +/* + * kifconf prototypes + */ +int +kdlifconfig(TIUSER *tiptr, int af, void *myIPaddr, void *mymask, + struct in_addr *mybraddr, struct in_addr *gateway, char *ifname); +int +ksetifflags(TIUSER *tiptr, uint_t value, char *ifname); +int +kifioctl(TIUSER *tiptr, int cmd, struct netbuf *nbuf, char *ifname); + +/* + * Boot properties related to iscsi boot: + */ +#define IB_BOOT_MACLEN 6 +#define IB_IP_BUFLEN 16 + +/* + * iSCSI boot initiator's properties + */ +typedef struct _ib_ini_prop { + uchar_t *ini_name; + uchar_t *ini_chap_name; + uchar_t *ini_chap_sec; +} ib_ini_prop_t; + +/* + * iSCSI boot nic's properties + */ +typedef struct _ib_nic_prop { + uchar_t nic_mac[6]; + uchar_t nic_vlan[2]; + union { + struct in_addr u_in4; + struct in6_addr u_in6; + } nic_ip_u; + union { + struct in_addr u_in4; + struct in6_addr u_in6; + } nic_gw_u; + union { + struct in_addr u_in4; + struct in6_addr u_in6; + } nic_dhcp_u; + int sin_family; + uchar_t sub_mask_prefix; + +} ib_nic_prop_t; + +/* + * iSCSI boot target's properties + */ +typedef struct _ib_tgt_prop { + union { + struct in_addr u_in4; + struct in6_addr u_in6; + }tgt_ip_u; + int sin_family; + uint32_t tgt_port; + uchar_t tgt_boot_lun[8]; + uchar_t *tgt_name; + uchar_t *tgt_chap_name; + uchar_t *tgt_chap_sec; + int lun_online; +} ib_tgt_prop_t; + +/* + * iSCSI boot properties + */ +typedef struct _ib_boot_prop { + ib_ini_prop_t boot_init; + ib_nic_prop_t boot_nic; + ib_tgt_prop_t boot_tgt; +} ib_boot_prop_t; + +void +ld_ib_prop(); + #ifdef __cplusplus } #endif |
