bdn
struct bdn bdn;
#define BDN_SIZE (sizeof(struct bdn))
#define BDN_CODEC_INFO() (ASN1_P->bdn_addr + OFFSETOF(struct bdn, codec_info))
#define BDN_CODEC_DATA() (ASN1_P->bdn_addr + OFFSETOF(struct bdn, codec))
#define BDN_NETPORT_NOW(papo) (ASN1_P->bdn_addr + OFFSETOF(struct bdn, netport[(papo.path << 1) + papo.port].now))
#define BDN_NETPORT_ON_PORT_RESET(papo) (ASN1_P->bdn_addr + OFFSETOF(struct bdn, netport[(papo.path << 1) + papo.port].on_port_reset))
#define BDN_NETPORT_NEXT_OS_BOOT(papo) (ASN1_P->bdn_addr + OFFSETOF(struct bdn, netport[(papo.path << 1) + papo.port].next_os_boot))
#define BDN_FLEXFUNC_NOW(pf_num) (ASN1_P->bdn_addr + OFFSETOF(struct bdn, flexfunc[pf_num].now))
#define BDN_FLEXFUNC_NEXT_OS_BOOT(pf_num) (ASN1_P->bdn_addr + OFFSETOF(struct bdn, flexfunc[pf_num].next_os_boot))
struct bdn bdn;
#define BDN_SIZE (sizeof(struct bdn))
#define BDN_SERVER_INFO() (ASN1_P->bdn_addr + OFFSETOF(struct bdn, server_info))
#define BDN_BASE_DEV_NEXT_OS() (ASN1_P->bdn_addr + OFFSETOF(struct bdn, base_dev.next_os))
#define BDN_BASE_DEV_NOW() (ASN1_P->bdn_addr + OFFSETOF(struct bdn, base_dev.now))
#define BDN_NETPORT_NOW(papo) (ASN1_P->bdn_addr + OFFSETOF(struct bdn, netport[(papo.path << 1) + papo.port].now))
#define BDN_NETPORT_ON_PORT_RESET(papo) (ASN1_P->bdn_addr + OFFSETOF(struct bdn, netport[(papo.path << 1) + papo.port].on_port_reset))
#define BDN_NETPORT_NEXT_OS_BOOT(papo) (ASN1_P->bdn_addr + OFFSETOF(struct bdn, netport[(papo.path << 1) + papo.port].next_os_boot))
#define BDN_NETPORT_DIAG_CTRL(papo) (ASN1_P->bdn_addr + OFFSETOF(struct bdn, netport[(papo.path << 1) + papo.port].diag_ctrl))
#define BDN_FLEXFUNC_NOW(pf_num) (ASN1_P->bdn_addr + OFFSETOF(struct bdn, flexfunc[pf_num].now))
#define BDN_FLEXFUNC_NEXT_OS_BOOT(pf_num) (ASN1_P->bdn_addr + OFFSETOF(struct bdn, flexfunc[pf_num].next_os_boot))
#define BDN_FLEXFUNC_DIAG_CTRL(pf_num) (ASN1_P->bdn_addr + OFFSETOF(struct bdn, flexfunc[pf_num].diag_ctrl))
#define BDN_FC_NPIV_NOW(papo) (ASN1_P->bdn_addr + OFFSETOF(struct bdn, fc_npiv[(papo.path << 1) + papo.port].now))
#define BDN_FC_NPIV_NOW_CFG(papo) (ASN1_P->bdn_addr + OFFSETOF(struct bdn, fc_npiv[(papo.path << 1) + papo.port].now.fc_npiv_cfg))
#define BDN_FC_NPIV_NOW_SETTINGS(papo, idx) (ASN1_P->bdn_addr + OFFSETOF(struct bdn, fc_npiv[(papo.path << 1) + papo.port].now.settings[idx]))
#define BDN_ISCSI_BOOT_NEXT_DLR_CFG(papo) (ASN1_P->bdn_addr + OFFSETOF(struct bdn, iscsi_boot[(papo.path << 1) + papo.port].next_dlr.cfg))
#define BDN_ISCSI_BOOT_NEXT_DLR_INITIATOR(papo) (ASN1_P->bdn_addr + OFFSETOF(struct bdn, iscsi_boot[(papo.path << 1) + papo.port].next_dlr.initiator_cfg))
#define BDN_ISCSI_BOOT_NEXT_DLR_TARGET(papo) (ASN1_P->bdn_addr + OFFSETOF(struct bdn, iscsi_boot[(papo.path << 1) + papo.port].next_dlr.target_params))
#define BDN_ISCSI_BOOT_NEXT_DLR_AUTHENTICATION(papo) (ASN1_P->bdn_addr + OFFSETOF(struct bdn, iscsi_boot[(papo.path << 1) + papo.port].next_dlr.authentication))
#define BDN_FCOE_BOOT_NEXT_DLR_CFG(papo) (ASN1_P->bdn_addr + OFFSETOF(struct bdn, fcoe_boot[(papo.path << 1) + papo.port].next_dlr.cfg))
#define BDN_FCOE_BOOT_NEXT_DLR_TARGET(papo, idx) (ASN1_P->bdn_addr + OFFSETOF(struct bdn, fcoe_boot[(papo.path << 1) + papo.port].next_dlr.fcoe_targets[idx]))
#define BDN_NCSI_NEXT_DLR() (ASN1_P->bdn_addr + OFFSETOF(struct bdn, ncsi.bdn_ncsi_next_dlr))
#define BDN_RAPID_RESPONSE (ASN1_P->bdn_addr + OFFSETOF(struct bdn, rpp_stc))
#define BDN_SERV_INFO_ENC_ID() (ASN1_P->bdn_addr + OFFSETOF(struct bdn, serv_info_enc_id))
#define BDN_OFFSET_GLOB(x) (OFFSETOF(struct bdn, glob.x) & 0xffff)
#define BDN_OFFSET_BASE(x) (OFFSETOF(struct bdn, glob.base.x) & 0xffff)
#define BDN_OFFSET_NCSI(x) (OFFSETOF(struct bdn, glob.ncsi.x) & 0xffff)
#define BDN_OFFSET_PORT(x, y) (OFFSETOF(struct bdn, port[(x)].y) & 0xffff)
#define BDN_OFFSET_NPORT(x, y) (OFFSETOF(struct bdn, port[(x)].port.y) & 0xffff)
#define BDN_OFFSET_NPIV(x, y) (OFFSETOF(struct bdn, port[(x)].npiv.y) & 0xffff)
#define BDN_OFFSET_IBOOT(x, y) (OFFSETOF(struct bdn, port[(x)].iboot.y) & 0xffff)
#define BDN_OFFSET_FBOOT(x, y) (OFFSETOF(struct bdn, port[(x)].fboot.y) & 0xffff)
#define BDN_OFFSET_FUNC(x, y) (OFFSETOF(struct bdn, func[(x)].y) & 0xffff)
#define BDN_OFFSET_FLEX(x, y) (OFFSETOF(struct bdn, func[(x)].flex.y) & 0xffff)
struct bdn bdn;