fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte/*
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte * CDDL HEADER START
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte *
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte * The contents of this file are subject to the terms of the
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte * Common Development and Distribution License (the "License").
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte * You may not use this file except in compliance with the License.
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte *
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte * or http://www.opensolaris.org/os/licensing.
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte * See the License for the specific language governing permissions
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte * and limitations under the License.
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte *
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte * When distributing Covered Code, include this CDDL HEADER in each
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte * If applicable, add the following below this CDDL HEADER, with the
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte * fields enclosed by brackets "[]" replaced with your own identifying
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte * information: Portions Copyright [yyyy] [name of copyright owner]
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte *
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte * CDDL HEADER END
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte */
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte/*
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte * Copyright 2008 Sun Microsystems, Inc. All rights reserved.
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte * Use is subject to license terms.
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte */
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#ifndef _ISNS_MGMT_H
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define _ISNS_MGMT_H
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#ifdef __cplusplus
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forteextern "C" {
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#endif
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#include <pthread.h>
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#include <libxml/xmlstring.h>
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define ISNS_DOOR_NAME "/var/run/isns_server_door"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define ISNS_ADMIN_WRITE_AUTH "solaris.isnsmgr.write"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define ISNS_MAX_LABEL_LEN 50
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define ISNS_MAX_NAME_LEN 256
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define DOOR_DEFAULT_BUF_SIZE 4096
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define MAX_DATA_COUNT 100
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte/* macro */
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define XMLNCMP(x, y) (xmlStrncasecmp(xmlTextReaderConstName(x), \
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte (const xmlChar *)y, xmlStrlen(xmlTextReaderConstName(x))))
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define XMLNCMPVAL(x, y) (xmlStrncasecmp(xmlTextReaderConstValue(x), \
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte (const xmlChar *)y, xmlStrlen(xmlTextReaderConstName(x))))
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte/* operation element names */
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define ISNSREQUEST "isnsRequest"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define ISNSRESPONSE "isnsResponse"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define RESULT "result"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define GET "get"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define ENUMERATE "enumerate"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define GETASSOCIATED "getAssociated"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define CREATEMODIFY "createModify"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define DELETE "delete"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte/* object element names */
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define ISNSOBJECT "isnsObject"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define ASSOCIATION "Association"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define ISNSSERVER "isnsServer"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define NODEOBJECT "Node"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define DDOBJECT "DiscoveryDomain"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define DDSETOBJECT "DiscoveryDomainSet"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define DDOBJECTMEMBER "DiscoveryDomainMember"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define DDSETOBJECTMEMBER "DiscoveryDomainSetMember"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte/* iSNS NODE attribute element names - Network Entity */
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define XMLNSATTR "xmlns"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define XMLNSATTRVAL "http://www.sun.com/schema/isnsmanagement"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte/* iSNS NODE attribute element names - Network Entity */
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define NETWORKENTITY "Network_Entity"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define ENTITYID "Entity_ID"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define ENTITYPROTOCOL "Entity_Protocol"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define MANAGEMENTIPADDR "Management_IP_Addr"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define ENTITYREGTIMESTAMP "Entity_Reg_Timestamp"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define PROTOCOLVERSIONRANGE "Protocol_Version_Range"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define PROTOCOLMINVERSION "minVersion"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define PROTOCOLMAXVERSION "maxVersion"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define REGISTRATIONPERIOD "Registration_Period"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte/* iSNS NODE attribute element names - Portal element names */
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define SCNSUBSCRIPTION "SCN_Subscription"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define SCNINITSELFONLY "Initiator and Self information only"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define SCNTARGETSELFONLY "Target and Self information only"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define SCNMGMTREG "Management Registration/SCN"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define SCNOBJECTREMOVED "Object Removed"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define SCNOBJECTADDED "Object Added"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define SCNOBJECTUPDATED "Object Updated"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define SCNMEMBERREMOVED "DD/DD-Set Member Removed"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define SCNMEMBERADDED "DD/DD-Set Member Added"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define PORTAL "Portal"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define REGISTRATIONPERIOD "Registration_Period"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define IPADDR "IP_Addr"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define UDPTCPPORT "UDP_TCP_port"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define PORTTYPE "Port_Type"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define UDPPORT "UDP"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define TCPPORT "TCP"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define PORTNUMBER "Port_Number"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define GROUPTAG "Group_Tag"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define SYMBOLICNAME "Symbolic_Name"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define ESIINTERVAL "ESI_Interval"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define ESIPORT "ESI_Port"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define SCNPORT "SCN_Port"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte/* iSNS DD set state element */
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define ENABLEDELEM "Enabled"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte/* iSNS DD Boot List element */
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define BOOTLISTENABLEDELEM "BootList_Enabled"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte/* iSNS server config elements */
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define DATASTORELOCATION "datastoreLocation"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define ESIRETRYTHRESHOLD "esiRetryThreshold"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define DEFAULTDDDDSETENABLED "defaultDD_DDsetEnabled"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define MANAGEMENTSCNENABLED "managementSCNEnabled"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define CANCONTROLNODEMODIFYDDDDSET "canControlNodeModifyDD_DDset"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define CANINTIATORNODEMODIFYDDDDSET "canIntiatorNodeModifyDD_DDset"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define CANTARGETNODEMODIFYDDDDSET "canTargetNodeModifyDD_DDset"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define CONTROLNODENAME "controlNodeName"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte/* object element type names */
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define ISNSOBJECTTYPE "isnsObjectType"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define ASSOCIATIONTYPE "AssociationType"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte/* attribute names */
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define NAMEATTR "name"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define IDATTR "id"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define TYPEATTR "type"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define ALIASATTR "alias"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define NODENAMEATTR "NodeName"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define DDNAMEATTR "DDName"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define DDSETNAMEATTR "DDsetName"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define EMPTYSTR ""
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte/* Node type value names */
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define INITIATORTYPE "Initiator"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define TARGETTYPE "Target"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define CONTROLNODETYPE "Control"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define CONTROLNODETARGETTYPE "Control/Target"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define CONTROLNODEINITIATORTYPE "Control/Initiator"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define UNKNOWNTYPE "Unknown"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte/* response related element names. */
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define RESULTELEMENT "result"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define STATUSELEMENT "status"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define MESSAGEELEMENT "message"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte/* response related element names. */
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define XMLTRUE "true"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#define XMLFALSE "false"
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Fortetypedef enum {
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte get_op = 100,
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte enumerate_op,
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte getAssociated_op,
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte createModify_op,
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte delete_op
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte} request_op;
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Fortetypedef enum {
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte member_to_container,
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte container_to_member
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte} association_req_t;
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Fortetypedef struct {
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte char *op_str;
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte request_op op_id;
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte} op_table_entry_t;
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Fortetypedef enum {
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte Node = 100,
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte DiscoveryDomain,
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte DiscoveryDomainSet,
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte DiscoveryDomainMember,
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte DiscoveryDomainSetMember,
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte ServerConfig
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte} object_type;
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Fortetypedef struct {
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte char *obj_str;
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte object_type obj_id;
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte} obj_table_entry_t;
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Fortetypedef struct thr_elem {
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte pthread_t thr_id;
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte xmlChar *doc;
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte struct thr_elem *next;
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte} thr_elem_t;
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte/*
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte * request entry with interger and string value
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte */
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Fortetypedef struct {
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte request_op op;
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte object_type obj;
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte} operation_t;
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Fortetypedef struct {
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte xmlChar *container;
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte xmlChar *member;
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte} assoc_pair_t;
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Fortetypedef struct {
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte xmlChar *name;
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte uint32_t *id;
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte boolean_t *enabled;
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte} object_attrlist_t;
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Fortetypedef union {
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte xmlChar **data;
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte assoc_pair_t **pair;
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte object_attrlist_t **attrlist;
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte} req_data_ut;
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Fortetypedef struct {
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte operation_t op_info;
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte association_req_t assoc_req;
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte uint_t count;
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte req_data_ut req_data;
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte} request_t;
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#ifdef __cplusplus
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte}
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#endif
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte
fcf3ce441efd61da9bb2884968af01cb7c1452ccJohn Forte#endif /* _ISNS_MGMT_H */