[openib-general] Re: [PATCH] osm: ibmgtsim changes

Hal Rosenstock halr at voltaire.com
Wed Mar 1 08:07:43 PST 2006


Hi Ofer,

On Wed, 2006-03-01 at 10:46, Ofer Gigi wrote:
> Hi Hal,
> 
> Please add the following changes to ibmgtsim:
> 1. sim.i - Exposing setLinkStatus function
> 2. mads.i - Adding traps 128,129,144 and adding madPathRec and madServiceRec
> 3. Makefile.am - small change in SWIG_IFC_FILES
> 4. ibmssh_wrap.cpp - was changed because of the changes

ibmgtsim is over in utils right now. Eitan is the maintainer. Please
send patches to him and continue to copy the list. Thanks.

-- Hal

> Thanks
> 
> Ofer G.
> 
> Signed-off-by:  Ofer Gigi <oferg at mellanox.co.il>
> 
> Index: sim.i
> ===================================================================
> --- sim.i	(revision 5446)
> +++ sim.i	(working copy)
> @@ -440,6 +440,9 @@ class IBMSNode {
>    ib_port_info_t * getPortInfo(uint8_t portNum);
>    /* get a specific port info */
>  
> +  int setLinkStatus(uint8_t portNum, uint8_t newState);
> +  /* set the Link status including sending trap128 */  
> +
>    ib_node_info_t * getNodeInfo();
>    /* get the node info */
>  
> Index: mads.i
> ===================================================================
> --- mads.i	(revision 5446)
> +++ mads.i	(working copy)
> @@ -203,3 +203,310 @@ struct madMcMemberRec
>                );
>      }
>  }
> +
> +
> +%{
> +#define madPathRec ib_path_rec_t
> +%}
> +
> +struct madPathRec
> +{
> +  madPathRec();
> +  ~madPathRec();
> +
> +   uint8_array_t			resv0[8];
> +   ib_gid_t				dgid;
> +   ib_gid_t				sgid;
> +   ib_net16_t				dlid;
> +   ib_net16_t				slid;
> +   ib_net32_t				hop_flow_raw;
> +   uint8_t				tclass;
> +   uint8_t				num_path; 
> +   ib_net16_t				pkey;
> +   ib_net16_t				sl;
> +   uint8_t				mtu;
> +   uint8_t				rate;
> +   uint8_t				pkt_life;
> +   uint8_t				preference;
> +   uint8_array_t			resv2[6];
> +}
> +
> +%addmethods madPathRec {
> +  int send_get(
> +    IBMSNode *pFromNode,
> +    uint8_t   fromPort,  
> +    uint16_t  destLid,
> +    uint64_t  comp_mask)
> +    {
> +      return( send_sa_mad(
> +                pFromNode, 
> +                fromPort, 
> +                destLid,
> +                IB_MCLASS_SUBN_ADM,
> +                IB_MAD_METHOD_GET,
> +                cl_ntoh16(IB_MAD_ATTR_PATH_RECORD),
> +                comp_mask,
> +                (uint8_t*)self,
> +                sizeof(madPathRec)
> +                )
> +              );
> +    }
> +}
> +
> +%{
> +#define madServiceRec ib_service_record_t
> +%}
> +
> +struct madServiceRec
> +{
> +  madServiceRec();
> +  ~madServiceRec();
> +
> +  ib_net64_t		service_id;
> +  ib_gid_t		service_gid;
> +  ib_net16_t		service_pkey;
> +  ib_net16_t		resv;
> +  ib_net32_t		service_lease;
> +  uint8_array_t	        service_key[16];
> +  uint8_array_t	        service_name[64]; 
> +  uint8_array_t		service_data8[16];
> +  uint16_array_t	service_data16[8];
> +  uint32_array_t	service_data32[4];
> +  uint64_array_t	service_data64[2];
> +}
> +
> +%addmethods madServiceRec {
> +  int send_set(
> +    IBMSNode *pFromNode,
> +    uint8_t   fromPort,  
> +    uint16_t  destLid,
> +    uint64_t  comp_mask)
> +    {
> +      return( send_sa_mad(
> +                pFromNode, 
> +                fromPort, 
> +                destLid,
> +                IB_MCLASS_SUBN_ADM,
> +                IB_MAD_METHOD_SET,
> +                cl_ntoh16(IB_MAD_ATTR_SERVICE_RECORD),
> +                comp_mask,
> +                (uint8_t*)self,
> +                sizeof(madServiceRec)
> +                )
> +              );
> +    }
> +  
> +  int send_get(
> +    IBMSNode *pFromNode,
> +    uint8_t   fromPort,  
> +    uint16_t  destLid,
> +    uint64_t  comp_mask)
> +    {
> +      return( send_sa_mad(
> +                pFromNode, 
> +                fromPort, 
> +                destLid,
> +                IB_MCLASS_SUBN_ADM,
> +                IB_MAD_METHOD_GET,
> +                cl_ntoh16(IB_MAD_ATTR_SERVICE_RECORD),
> +                comp_mask,
> +                (uint8_t*)self,
> +                sizeof(madServiceRec)
> +                )
> +              );
> +    }
> +
> +  int send_del(
> +    IBMSNode *pFromNode,
> +    uint8_t   fromPort,  
> +    uint16_t  destLid,
> +    uint64_t  comp_mask)
> +    {
> +      return( send_sa_mad(
> +                pFromNode, 
> +                fromPort, 
> +                destLid,
> +                IB_MCLASS_SUBN_ADM,
> +                IB_MAD_METHOD_DELETE,
> +                cl_ntoh16(IB_MAD_ATTR_SERVICE_RECORD),
> +                comp_mask,
> +                (uint8_t*)self,
> +                sizeof(madServiceRec)
> +                )
> +              );
> +    }
> +}
> +
> +
> +%{
> +#include <complib/cl_packon.h>
> +typedef struct _ib_mad_notice_attr128    
> +{
> +  uint8_t	        generic_type;      
> +  uint8_t		prod_type_msb;
> +  ib_net16_t	        prod_type_lsb;
> +  ib_net16_t	        trap_num; 
> +  ib_net16_t		issuer_lid;    
> +  ib_net16_t		toggle_count;  
> +  ib_net16_t            sw_lid; // the sw lid of which link state changed - for 128 only
> +  ib_gid_t		issuer_gid;    
> +}	PACK_SUFFIX ib_mad_notice_attr128_t;
> +#include <complib/cl_packoff.h>
> +
> +#define madNotice128 ib_mad_notice_attr128_t
> +%}
> +
> +struct madNotice128
> +{
> +  madNotice128();
> +  ~madNotice128();
> +
> +  uint8_t	        generic_type;      
> +  uint8_t		prod_type_msb;
> +  ib_net16_t	        prod_type_lsb;
> +  ib_net16_t	        trap_num; 
> +  ib_net16_t		issuer_lid;    
> +  ib_net16_t		toggle_count;  
> +  ib_net16_t            sw_lid; // the sw lid of which link state changed - for 128 only
> +  ib_gid_t		issuer_gid;    
> +}
> +
> +%addmethods madNotice128 {
> +  int send_set(
> +    IBMSNode *pFromNode,
> +    uint8_t   fromPort,  
> +    uint16_t  destLid)
> +    {
> +      return( send_mad(
> +                pFromNode, 
> +                fromPort, 
> +                destLid,
> +                IB_MCLASS_SUBN_LID,
> +                IB_MAD_METHOD_SET,
> +                cl_ntoh16(IB_MAD_ATTR_NOTICE),
> +		0,
> +                (uint8_t*)self,
> +                sizeof(madNotice128)
> +                )
> +              );
> +    }
> +}
> +
> +%{
> +#include <complib/cl_packon.h>
> +typedef struct _ib_mad_notice_attr129    
> +{
> +  uint8_t	        generic_type;      
> +  uint8_t		prod_type_msb;
> +  ib_net16_t	        prod_type_lsb;
> +  ib_net16_t	        trap_num; 
> +  ib_net16_t		issuer_lid;    
> +  ib_net16_t		toggle_count;  
> +  ib_net16_t            pad;      //129
> +  ib_net16_t            lid;	  // 129 lid and port number of the violation
> +  uint8_t               port_num; //129  
> +  ib_gid_t		issuer_gid;    
> +}	PACK_SUFFIX ib_mad_notice_attr129_t;
> +#include <complib/cl_packoff.h>
> +
> +#define madNotice129 ib_mad_notice_attr129_t
> +%}
> +
> +struct madNotice129
> +{
> +  madNotice129();
> +  ~madNotice129();
> +  uint8_t	        generic_type;      
> +  uint8_t		prod_type_msb;
> +  ib_net16_t	        prod_type_lsb;
> +  ib_net16_t	        trap_num; 
> +  ib_net16_t		issuer_lid;    
> +  ib_net16_t		toggle_count;  
> +  ib_net16_t            pad;      //129
> +  ib_net16_t            lid;	  // 129 lid and port number of the violation
> +  uint8_t               port_num; //129  
> +  ib_gid_t		issuer_gid;    
> +}
> +
> +%addmethods madNotice129 {
> +  int send_set(
> +    IBMSNode *pFromNode,
> +    uint8_t   fromPort,  
> +    uint16_t  destLid)
> +    {
> +      return( send_mad(
> +                pFromNode, 
> +                fromPort, 
> +                destLid,
> +                IB_MCLASS_SUBN_LID,
> +                IB_MAD_METHOD_SET,
> +                cl_ntoh16(IB_MAD_ATTR_NOTICE),
> +		0,
> +                (uint8_t*)self,
> +                sizeof(madNotice129)
> +                )
> +              );
> +    }
> +}
> +
> +%{
> +#include <complib/cl_packon.h>
> +typedef struct _ib_mad_notice_attr144    
> +{
> +  uint8_t	        generic_type;      
> +  uint8_t		prod_type_msb;
> +  ib_net16_t	        prod_type_lsb;
> +  ib_net16_t	        trap_num; 
> +  ib_net16_t		issuer_lid;    
> +  ib_net16_t		toggle_count;  
> +  ib_net16_t            pad1;         // 144
> +  ib_net16_t            lid;	      // 144 lid where capability mask changed
> +  ib_net16_t            pad2;         // 144
> +  ib_net32_t            new_cap_mask; // 144 new capability mask
> +  ib_gid_t		issuer_gid;    
> +}	PACK_SUFFIX ib_mad_notice_attr144_t;
> +#include <complib/cl_packoff.h>
> +
> +#define madNotice144 ib_mad_notice_attr144_t
> +%}
> +
> +struct madNotice144
> +{
> +  madNotice144();
> +  ~madNotice144();
> +
> +  uint8_t	        generic_type;      
> +  uint8_t		prod_type_msb;
> +  ib_net16_t	        prod_type_lsb;
> +  ib_net16_t	        trap_num; 
> +  ib_net16_t		issuer_lid;    
> +  ib_net16_t		toggle_count;  
> +  ib_net16_t            pad1;         // 144
> +  ib_net16_t            lid;	      // 144 lid where capability mask changed
> +  ib_net16_t            pad2;         // 144
> +  ib_net32_t            new_cap_mask; // 144 new capability mask
> +  ib_gid_t		issuer_gid;     
> +}
> +
> +%addmethods madNotice144 {
> +  int send_set(
> +    IBMSNode *pFromNode,
> +    uint8_t   fromPort,  
> +    uint16_t  destLid)
> +    {
> +      return( send_mad(
> +                pFromNode, 
> +                fromPort, 
> +                destLid,
> +                IB_MCLASS_SUBN_LID,
> +                IB_MAD_METHOD_SET,
> +                cl_ntoh16(IB_MAD_ATTR_NOTICE),
> +		0,
> +                (uint8_t*)self,
> +                sizeof(madNotice144)
> +                )
> +              );
> +    }
> +}
> +
> +
> Index: ibmssh_wrap.cpp
> ===================================================================
> --- ibmssh_wrap.cpp	(revision 5446)
> +++ ibmssh_wrap.cpp	(working copy)
> @@ -862,6 +862,63 @@ static string MsgAllModules("");
>  
>  #define madMcMemberRec ib_member_rec_t
>  
> +#define madPathRec ib_path_rec_t
> +
> +#define madServiceRec ib_service_record_t
> +
> +#include <complib/cl_packon.h>
> +typedef struct _ib_mad_notice_attr128    
> +{
> +  uint8_t	        generic_type;      
> +  uint8_t		prod_type_msb;
> +  ib_net16_t	        prod_type_lsb;
> +  ib_net16_t	        trap_num; 
> +  ib_net16_t		issuer_lid;    
> +  ib_net16_t		toggle_count;  
> +  ib_net16_t            sw_lid; // the sw lid of which link state changed - for 128 only
> +  ib_gid_t		issuer_gid;    
> +}	PACK_SUFFIX ib_mad_notice_attr128_t;
> +#include <complib/cl_packoff.h>
> +
> +#define madNotice128 ib_mad_notice_attr128_t
> +
> +#include <complib/cl_packon.h>
> +typedef struct _ib_mad_notice_attr129    
> +{
> +  uint8_t	        generic_type;      
> +  uint8_t		prod_type_msb;
> +  ib_net16_t	        prod_type_lsb;
> +  ib_net16_t	        trap_num; 
> +  ib_net16_t		issuer_lid;    
> +  ib_net16_t		toggle_count;  
> +  ib_net16_t            pad;      //129
> +  ib_net16_t            lid;	  // 129 lid and port number of the violation
> +  uint8_t               port_num; //129  
> +  ib_gid_t		issuer_gid;    
> +}	PACK_SUFFIX ib_mad_notice_attr129_t;
> +#include <complib/cl_packoff.h>
> +
> +#define madNotice129 ib_mad_notice_attr129_t
> +
> +#include <complib/cl_packon.h>
> +typedef struct _ib_mad_notice_attr144    
> +{
> +  uint8_t	        generic_type;      
> +  uint8_t		prod_type_msb;
> +  ib_net16_t	        prod_type_lsb;
> +  ib_net16_t	        trap_num; 
> +  ib_net16_t		issuer_lid;    
> +  ib_net16_t		toggle_count;  
> +  ib_net16_t            pad1;         // 144
> +  ib_net16_t            lid;	      // 144 lid where capability mask changed
> +  ib_net16_t            pad2;         // 144
> +  ib_net32_t            new_cap_mask; // 144 new capability mask
> +  ib_gid_t		issuer_gid;    
> +}	PACK_SUFFIX ib_mad_notice_attr144_t;
> +#include <complib/cl_packoff.h>
> +
> +#define madNotice144 ib_mad_notice_attr144_t
> +
>    /* we need to explicitly exit complib if we explictly started it if static linked */
>    void ibmssh_exit(ClientData clientData ) {
>      complib_exit();
> @@ -24619,6 +24676,84 @@ static int _wrap_IBMSNode_getPortInfo(Cl
>      SWIG_SetPointerObj(tcl_result,(void *) _result,"_ib_port_info_t_p");
>      return TCL_OK;
>  }
> +#define IBMSNode_setLinkStatus(_swigobj,_swigarg0,_swigarg1)  (_swigobj->setLinkStatus(_swigarg0,_swigarg1))
> +static int _wrap_IBMSNode_setLinkStatus(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    int  _result;
> +    IBMSNode * _arg0;
> +    uint8_t * _arg1;
> +    uint8_t * _arg2;
> +    Tcl_Obj * tcl_result;
> +    uint8_t  temp;
> +    uint8_t  temp0;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 4) || (objc > 4)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. IBMSNode_setLinkStatus { IBMSNode * } portNum newState ",-1);
> +        return TCL_ERROR;
> +    }
> +{
> +  
> +  void *ptr;
> +  if (ibmsGetSimNodePtrByTclName(objv[1], &ptr) != TCL_OK) {
> +	 char err[128];
> +	 sprintf(err, "-E- fail to find ibdm obj by id:%s",Tcl_GetString(objv[1]) );
> +	 // Tcl_SetStringObj(tcl_result, err, strlen(err));
> +	 return TCL_ERROR;	 
> +  }
> +	 
> +  _arg0 = (IBMSNode *)ptr;
> +}
> +{
> +  /* the format is always: <type>:<idx>[:<name>] */
> +  
> +  // get the type from the given source 
> +  char buf[128];
> +  strcpy(buf, Tcl_GetStringFromObj(objv[1],0));
> +  char *colonIdx = index(buf,':');
> +  if (!colonIdx) {
> +	 char err[128];
> +	 sprintf(err, "-E- Bad formatted ibdm object:%s", buf);
> +	 Tcl_SetStringObj(tcl_result, err, strlen(err));
> +	 return TCL_ERROR;
> +  }
> +  *colonIdx = '\0';
> +
> +  if (!strcmp("IBMSNode ", "IBMSNode ")) {
> +    if (strcmp(buf, "simnode")) {
> +      char err[256];
> +      sprintf(err, "-E- basetype is IBMSNode  but received obj of type %s", buf);
> +      Tcl_SetStringObj(tcl_result, err, strlen(err));
> +      return TCL_ERROR;	 
> +    }
> +  } else {
> +	 char err[256];
> +	 sprintf(err, "-E- basetype 'IBMSNode ' is unknown");
> +	 Tcl_SetStringObj(tcl_result, err, strlen(err));
> +	 return TCL_ERROR;	 
> +  }
> +}
> +{
> +  temp = strtoul(Tcl_GetStringFromObj(objv[2],NULL), NULL, 0);
> +  _arg1 = &temp;
> +}
> +{
> +  temp0 = strtoul(Tcl_GetStringFromObj(objv[3],NULL), NULL, 0);
> +  _arg2 = &temp0;
> +}
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (int )IBMSNode_setLinkStatus(_arg0,*_arg1,*_arg2);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +    Tcl_SetIntObj(tcl_result,(long) _result);
> +    return TCL_OK;
> +}
>  #define IBMSNode_getNodeInfo(_swigobj)  (_swigobj->getNodeInfo())
>  static int _wrap_IBMSNode_getNodeInfo(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
>  
> @@ -25326,7 +25461,7 @@ static int TclIBMSNodeMethodCmd(ClientDa
>    tcl_result = Tcl_GetObjResult(interp);
>    objv = (Tcl_Obj **) _objv; 
>    if (objc < 2) {
> -    Tcl_SetStringObj(tcl_result,"IBMSNode methods : { dump cget configure getIBNode getLinkStatus setPhyPortErrProfile getPhyPortErrProfile setPhyPortPMCounter getPhyPortPMCounter getPortInfo getNodeInfo getSwitchInfo getPKeyTblBlock setPKeyTblBlock setCrSpace getCrSpace getMFTBlock setMFTBlock  }",-1);
> +    Tcl_SetStringObj(tcl_result,"IBMSNode methods : { dump cget configure getIBNode getLinkStatus setPhyPortErrProfile getPhyPortErrProfile setPhyPortPMCounter getPhyPortPMCounter getPortInfo setLinkStatus getNodeInfo getSwitchInfo getPKeyTblBlock setPKeyTblBlock setCrSpace getCrSpace getMFTBlock setMFTBlock  }",-1);
>      return TCL_ERROR;
>    }
>    obj = Tcl_NewObj();
> @@ -25348,6 +25483,8 @@ static int TclIBMSNodeMethodCmd(ClientDa
>          cmd = _wrap_IBMSNode_getPhyPortPMCounter;
>      }    else if (strcmp(_str,"getPortInfo") == 0) {
>          cmd = _wrap_IBMSNode_getPortInfo;
> +    }    else if (strcmp(_str,"setLinkStatus") == 0) {
> +        cmd = _wrap_IBMSNode_setLinkStatus;
>      }    else if (strcmp(_str,"getNodeInfo") == 0) {
>          cmd = _wrap_IBMSNode_getNodeInfo;
>      }    else if (strcmp(_str,"getSwitchInfo") == 0) {
> @@ -25426,7 +25563,7 @@ static int TclIBMSNodeMethodCmd(ClientDa
>        }
>      }
>    if (!cmd) {
> -    Tcl_SetStringObj(tcl_result,"Invalid Method. Must be { dump cget configure getIBNode getLinkStatus setPhyPortErrProfile getPhyPortErrProfile setPhyPortPMCounter getPhyPortPMCounter getPortInfo getNodeInfo getSwitchInfo getPKeyTblBlock setPKeyTblBlock setCrSpace getCrSpace getMFTBlock setMFTBlock }",-1);
> +    Tcl_SetStringObj(tcl_result,"Invalid Method. Must be { dump cget configure getIBNode getLinkStatus setPhyPortErrProfile getPhyPortErrProfile setPhyPortPMCounter getPhyPortPMCounter getPortInfo setLinkStatus getNodeInfo getSwitchInfo getPKeyTblBlock setPKeyTblBlock setCrSpace getCrSpace getMFTBlock setMFTBlock }",-1);
>      return TCL_ERROR;
>    }
>    oldarg = objv[1];
> @@ -27068,6 +27205,7103 @@ static int TclmadMcMemberRecCmd(ClientDa
>  }
>  
> 
> +#define new_madPathRec() (new madPathRec())
> +static int _wrap_new_madPathRec(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    madPathRec * _result;
> +    Tcl_Obj * tcl_result;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 1) || (objc > 1)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. new_madPathRec ",-1);
> +        return TCL_ERROR;
> +    }
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (madPathRec *)new_madPathRec();
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +    SWIG_SetPointerObj(tcl_result,(void *) _result,"_madPathRec_p");
> +    return TCL_OK;
> +}
> +#define delete_madPathRec(_swigobj) (delete _swigobj)
> +static int _wrap_delete_madPathRec(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    madPathRec * _arg0;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 2) || (objc > 2)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. delete_madPathRec { madPathRec * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madPathRec_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of delete_madPathRec. Expected _madPathRec_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{ 
> +  ibms_tcl_error = 0;
> +      delete_madPathRec(_arg0);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +    return TCL_OK;
> +}
> +static uint8_array_t * madPathRec_resv0_set(madPathRec *obj, uint8_array_t val[8]) {
> +{
> +	int i;
> +	for (i=0; i <8 ; i++) {
> +		obj->resv0[i] = *(val+i);
> +	}
> +}
> +    return (uint8_array_t *) val;
> +}
> +static int _wrap_madPathRec_resv0_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    uint8_array_t * _result;
> +    madPathRec * _arg0;
> +    uint8_array_t * _arg1;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +    uint8_t  entrys[8];
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 3) || (objc > 3)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madPathRec_resv0_set { madPathRec * } { uint8_array_t * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madPathRec_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madPathRec_resv0_set. Expected _madPathRec_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{
> +  char *buff;
> +  char *p_ch;
> +  char *last;
> +  long int entry;
> +
> +  int i = 0;
> +  buff = (char *)malloc((strlen(Tcl_GetStringFromObj(objv[2],NULL))+1)*sizeof(char));
> +  strcpy(buff, Tcl_GetStringFromObj(objv[2],NULL));
> +  p_ch = strtok_r(buff, " \t",&last);
> +  while (p_ch && (i < 8)) 
> +  {    
> +    entry = strtol(p_ch, NULL, 0);
> +    if (entry > 0xff)
> +    {
> +      printf("Error: wrong format or out of range value for expected uint8_t entry: %s\n", p_ch);
> +      return TCL_ERROR;
> +    }
> +    entrys[i++] = entry;
> +    p_ch = strtok_r(NULL, " \t", &last);
> +  }
> +  for (; i < 8; i++) entrys[i] = 0;
> +
> +  free(buff);
> +  _arg1 = entrys;
> +}
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (uint8_array_t *)madPathRec_resv0_set(_arg0,_arg1);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  int i;
> +  char buff[8];
> +  for (i=0; i <8 ; i++) {
> +    sprintf(buff, "0x%02x ", *(_result+i));
> +    Tcl_AppendResult(interp, buff, NULL);
> +  }
> +}
> +    return TCL_OK;
> +}
> +#define madPathRec_resv0_get(_swigobj) ((uint8_array_t *) _swigobj->resv0)
> +static int _wrap_madPathRec_resv0_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    uint8_array_t * _result;
> +    madPathRec * _arg0;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 2) || (objc > 2)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madPathRec_resv0_get { madPathRec * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madPathRec_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madPathRec_resv0_get. Expected _madPathRec_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (uint8_array_t *)madPathRec_resv0_get(_arg0);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  int i;
> +  char buff[8];
> +  for (i=0; i <8 ; i++) {
> +    sprintf(buff, "0x%02x ", *(_result+i));
> +    Tcl_AppendResult(interp, buff, NULL);
> +  }
> +}
> +    return TCL_OK;
> +}
> +#define madPathRec_dgid_set(_swigobj,_swigval) (_swigobj->dgid = *(_swigval),_swigval)
> +static int _wrap_madPathRec_dgid_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    ib_gid_t * _result;
> +    madPathRec * _arg0;
> +    ib_gid_t * _arg1;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +    ib_gid_t  temp;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 3) || (objc > 3)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madPathRec_dgid_set { madPathRec * } { ib_gid_t * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madPathRec_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madPathRec_dgid_set. Expected _madPathRec_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{
> +  char buf[36];
> +  char *p_prefix, *p_guid;
> +  char *str_token;
> +
> +  strcpy(buf, Tcl_GetStringFromObj(objv[2],NULL));
> +  p_prefix = strtok_r(buf,":", &str_token);
> +  p_guid = strtok_r(NULL, " ", &str_token);
> +  errno = 0;
> +  temp.unicast.prefix = cl_hton64(strtoull(p_prefix, NULL, 16));
> +  if (errno) {
> +    printf("Wrong format for gid prefix:%s\n", p_prefix);
> +    return TCL_ERROR;
> +  }
> +
> +  temp.unicast.interface_id = cl_hton64(strtoull(p_guid, NULL, 16));
> +  if (errno) {
> +    printf("Wrong format for gid guid:%s\n", p_guid);
> +    return TCL_ERROR;
> +  }
> +  
> +  _arg1 = &temp;
> +}
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (ib_gid_t *)madPathRec_dgid_set(_arg0,_arg1);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[36];
> +  sprintf(buff, "0x%016" PRIx64 ":0x%016" PRIx64, 
> +          cl_ntoh64(_result->unicast.prefix), 
> +          cl_ntoh64(_result->unicast.interface_id) 
> +          );
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madPathRec_dgid_get(_swigobj) (&_swigobj->dgid)
> +static int _wrap_madPathRec_dgid_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    ib_gid_t * _result;
> +    madPathRec * _arg0;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 2) || (objc > 2)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madPathRec_dgid_get { madPathRec * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madPathRec_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madPathRec_dgid_get. Expected _madPathRec_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (ib_gid_t *)madPathRec_dgid_get(_arg0);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[36];
> +  sprintf(buff, "0x%016" PRIx64 ":0x%016" PRIx64, 
> +          cl_ntoh64(_result->unicast.prefix), 
> +          cl_ntoh64(_result->unicast.interface_id) 
> +          );
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madPathRec_sgid_set(_swigobj,_swigval) (_swigobj->sgid = *(_swigval),_swigval)
> +static int _wrap_madPathRec_sgid_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    ib_gid_t * _result;
> +    madPathRec * _arg0;
> +    ib_gid_t * _arg1;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +    ib_gid_t  temp;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 3) || (objc > 3)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madPathRec_sgid_set { madPathRec * } { ib_gid_t * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madPathRec_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madPathRec_sgid_set. Expected _madPathRec_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{
> +  char buf[36];
> +  char *p_prefix, *p_guid;
> +  char *str_token;
> +
> +  strcpy(buf, Tcl_GetStringFromObj(objv[2],NULL));
> +  p_prefix = strtok_r(buf,":", &str_token);
> +  p_guid = strtok_r(NULL, " ", &str_token);
> +  errno = 0;
> +  temp.unicast.prefix = cl_hton64(strtoull(p_prefix, NULL, 16));
> +  if (errno) {
> +    printf("Wrong format for gid prefix:%s\n", p_prefix);
> +    return TCL_ERROR;
> +  }
> +
> +  temp.unicast.interface_id = cl_hton64(strtoull(p_guid, NULL, 16));
> +  if (errno) {
> +    printf("Wrong format for gid guid:%s\n", p_guid);
> +    return TCL_ERROR;
> +  }
> +  
> +  _arg1 = &temp;
> +}
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (ib_gid_t *)madPathRec_sgid_set(_arg0,_arg1);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[36];
> +  sprintf(buff, "0x%016" PRIx64 ":0x%016" PRIx64, 
> +          cl_ntoh64(_result->unicast.prefix), 
> +          cl_ntoh64(_result->unicast.interface_id) 
> +          );
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madPathRec_sgid_get(_swigobj) (&_swigobj->sgid)
> +static int _wrap_madPathRec_sgid_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    ib_gid_t * _result;
> +    madPathRec * _arg0;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 2) || (objc > 2)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madPathRec_sgid_get { madPathRec * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madPathRec_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madPathRec_sgid_get. Expected _madPathRec_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (ib_gid_t *)madPathRec_sgid_get(_arg0);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[36];
> +  sprintf(buff, "0x%016" PRIx64 ":0x%016" PRIx64, 
> +          cl_ntoh64(_result->unicast.prefix), 
> +          cl_ntoh64(_result->unicast.interface_id) 
> +          );
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madPathRec_dlid_set(_swigobj,_swigval) (_swigobj->dlid = *(_swigval),_swigval)
> +static int _wrap_madPathRec_dlid_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    ib_net16_t * _result;
> +    madPathRec * _arg0;
> +    ib_net16_t * _arg1;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +    ib_net16_t  temp;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 3) || (objc > 3)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madPathRec_dlid_set { madPathRec * } { ib_net16_t * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madPathRec_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madPathRec_dlid_set. Expected _madPathRec_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{
> +  temp = cl_hton16(atoi(Tcl_GetStringFromObj(objv[2],NULL)));
> +  _arg1 = &temp;
> +}
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (ib_net16_t *)madPathRec_dlid_set(_arg0,_arg1);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", cl_hton16(*_result));
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madPathRec_dlid_get(_swigobj) (&_swigobj->dlid)
> +static int _wrap_madPathRec_dlid_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    ib_net16_t * _result;
> +    madPathRec * _arg0;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 2) || (objc > 2)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madPathRec_dlid_get { madPathRec * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madPathRec_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madPathRec_dlid_get. Expected _madPathRec_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (ib_net16_t *)madPathRec_dlid_get(_arg0);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", cl_hton16(*_result));
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madPathRec_slid_set(_swigobj,_swigval) (_swigobj->slid = *(_swigval),_swigval)
> +static int _wrap_madPathRec_slid_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    ib_net16_t * _result;
> +    madPathRec * _arg0;
> +    ib_net16_t * _arg1;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +    ib_net16_t  temp;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 3) || (objc > 3)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madPathRec_slid_set { madPathRec * } { ib_net16_t * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madPathRec_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madPathRec_slid_set. Expected _madPathRec_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{
> +  temp = cl_hton16(atoi(Tcl_GetStringFromObj(objv[2],NULL)));
> +  _arg1 = &temp;
> +}
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (ib_net16_t *)madPathRec_slid_set(_arg0,_arg1);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", cl_hton16(*_result));
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madPathRec_slid_get(_swigobj) (&_swigobj->slid)
> +static int _wrap_madPathRec_slid_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    ib_net16_t * _result;
> +    madPathRec * _arg0;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 2) || (objc > 2)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madPathRec_slid_get { madPathRec * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madPathRec_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madPathRec_slid_get. Expected _madPathRec_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (ib_net16_t *)madPathRec_slid_get(_arg0);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", cl_hton16(*_result));
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madPathRec_hop_flow_raw_set(_swigobj,_swigval) (_swigobj->hop_flow_raw = *(_swigval),_swigval)
> +static int _wrap_madPathRec_hop_flow_raw_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    ib_net32_t * _result;
> +    madPathRec * _arg0;
> +    ib_net32_t * _arg1;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +    ib_net32_t  temp;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 3) || (objc > 3)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madPathRec_hop_flow_raw_set { madPathRec * } { ib_net32_t * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madPathRec_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madPathRec_hop_flow_raw_set. Expected _madPathRec_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{
> +  temp = cl_hton32(strtoul(Tcl_GetStringFromObj(objv[2],NULL), NULL, 0));
> +  _arg1 = &temp;
> +}
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (ib_net32_t *)madPathRec_hop_flow_raw_set(_arg0,_arg1);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", cl_ntoh32(*_result));
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madPathRec_hop_flow_raw_get(_swigobj) (&_swigobj->hop_flow_raw)
> +static int _wrap_madPathRec_hop_flow_raw_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    ib_net32_t * _result;
> +    madPathRec * _arg0;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 2) || (objc > 2)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madPathRec_hop_flow_raw_get { madPathRec * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madPathRec_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madPathRec_hop_flow_raw_get. Expected _madPathRec_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (ib_net32_t *)madPathRec_hop_flow_raw_get(_arg0);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", cl_ntoh32(*_result));
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madPathRec_tclass_set(_swigobj,_swigval) (_swigobj->tclass = *(_swigval),_swigval)
> +static int _wrap_madPathRec_tclass_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    uint8_t * _result;
> +    madPathRec * _arg0;
> +    uint8_t * _arg1;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +    uint8_t  temp;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 3) || (objc > 3)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madPathRec_tclass_set { madPathRec * } { uint8_t * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madPathRec_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madPathRec_tclass_set. Expected _madPathRec_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{
> +  temp = strtoul(Tcl_GetStringFromObj(objv[2],NULL), NULL, 0);
> +  _arg1 = &temp;
> +}
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (uint8_t *)madPathRec_tclass_set(_arg0,_arg1);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", *_result);
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madPathRec_tclass_get(_swigobj) (&_swigobj->tclass)
> +static int _wrap_madPathRec_tclass_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    uint8_t * _result;
> +    madPathRec * _arg0;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 2) || (objc > 2)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madPathRec_tclass_get { madPathRec * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madPathRec_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madPathRec_tclass_get. Expected _madPathRec_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (uint8_t *)madPathRec_tclass_get(_arg0);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", *_result);
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madPathRec_num_path_set(_swigobj,_swigval) (_swigobj->num_path = *(_swigval),_swigval)
> +static int _wrap_madPathRec_num_path_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    uint8_t * _result;
> +    madPathRec * _arg0;
> +    uint8_t * _arg1;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +    uint8_t  temp;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 3) || (objc > 3)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madPathRec_num_path_set { madPathRec * } { uint8_t * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madPathRec_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madPathRec_num_path_set. Expected _madPathRec_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{
> +  temp = strtoul(Tcl_GetStringFromObj(objv[2],NULL), NULL, 0);
> +  _arg1 = &temp;
> +}
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (uint8_t *)madPathRec_num_path_set(_arg0,_arg1);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", *_result);
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madPathRec_num_path_get(_swigobj) (&_swigobj->num_path)
> +static int _wrap_madPathRec_num_path_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    uint8_t * _result;
> +    madPathRec * _arg0;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 2) || (objc > 2)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madPathRec_num_path_get { madPathRec * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madPathRec_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madPathRec_num_path_get. Expected _madPathRec_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (uint8_t *)madPathRec_num_path_get(_arg0);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", *_result);
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madPathRec_pkey_set(_swigobj,_swigval) (_swigobj->pkey = *(_swigval),_swigval)
> +static int _wrap_madPathRec_pkey_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    ib_net16_t * _result;
> +    madPathRec * _arg0;
> +    ib_net16_t * _arg1;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +    ib_net16_t  temp;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 3) || (objc > 3)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madPathRec_pkey_set { madPathRec * } { ib_net16_t * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madPathRec_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madPathRec_pkey_set. Expected _madPathRec_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{
> +  temp = cl_hton16(atoi(Tcl_GetStringFromObj(objv[2],NULL)));
> +  _arg1 = &temp;
> +}
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (ib_net16_t *)madPathRec_pkey_set(_arg0,_arg1);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", cl_hton16(*_result));
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madPathRec_pkey_get(_swigobj) (&_swigobj->pkey)
> +static int _wrap_madPathRec_pkey_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    ib_net16_t * _result;
> +    madPathRec * _arg0;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 2) || (objc > 2)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madPathRec_pkey_get { madPathRec * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madPathRec_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madPathRec_pkey_get. Expected _madPathRec_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (ib_net16_t *)madPathRec_pkey_get(_arg0);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", cl_hton16(*_result));
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madPathRec_sl_set(_swigobj,_swigval) (_swigobj->sl = *(_swigval),_swigval)
> +static int _wrap_madPathRec_sl_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    ib_net16_t * _result;
> +    madPathRec * _arg0;
> +    ib_net16_t * _arg1;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +    ib_net16_t  temp;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 3) || (objc > 3)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madPathRec_sl_set { madPathRec * } { ib_net16_t * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madPathRec_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madPathRec_sl_set. Expected _madPathRec_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{
> +  temp = cl_hton16(atoi(Tcl_GetStringFromObj(objv[2],NULL)));
> +  _arg1 = &temp;
> +}
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (ib_net16_t *)madPathRec_sl_set(_arg0,_arg1);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", cl_hton16(*_result));
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madPathRec_sl_get(_swigobj) (&_swigobj->sl)
> +static int _wrap_madPathRec_sl_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    ib_net16_t * _result;
> +    madPathRec * _arg0;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 2) || (objc > 2)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madPathRec_sl_get { madPathRec * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madPathRec_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madPathRec_sl_get. Expected _madPathRec_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (ib_net16_t *)madPathRec_sl_get(_arg0);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", cl_hton16(*_result));
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madPathRec_mtu_set(_swigobj,_swigval) (_swigobj->mtu = *(_swigval),_swigval)
> +static int _wrap_madPathRec_mtu_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    uint8_t * _result;
> +    madPathRec * _arg0;
> +    uint8_t * _arg1;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +    uint8_t  temp;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 3) || (objc > 3)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madPathRec_mtu_set { madPathRec * } { uint8_t * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madPathRec_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madPathRec_mtu_set. Expected _madPathRec_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{
> +  temp = strtoul(Tcl_GetStringFromObj(objv[2],NULL), NULL, 0);
> +  _arg1 = &temp;
> +}
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (uint8_t *)madPathRec_mtu_set(_arg0,_arg1);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", *_result);
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madPathRec_mtu_get(_swigobj) (&_swigobj->mtu)
> +static int _wrap_madPathRec_mtu_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    uint8_t * _result;
> +    madPathRec * _arg0;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 2) || (objc > 2)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madPathRec_mtu_get { madPathRec * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madPathRec_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madPathRec_mtu_get. Expected _madPathRec_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (uint8_t *)madPathRec_mtu_get(_arg0);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", *_result);
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madPathRec_rate_set(_swigobj,_swigval) (_swigobj->rate = *(_swigval),_swigval)
> +static int _wrap_madPathRec_rate_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    uint8_t * _result;
> +    madPathRec * _arg0;
> +    uint8_t * _arg1;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +    uint8_t  temp;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 3) || (objc > 3)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madPathRec_rate_set { madPathRec * } { uint8_t * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madPathRec_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madPathRec_rate_set. Expected _madPathRec_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{
> +  temp = strtoul(Tcl_GetStringFromObj(objv[2],NULL), NULL, 0);
> +  _arg1 = &temp;
> +}
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (uint8_t *)madPathRec_rate_set(_arg0,_arg1);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", *_result);
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madPathRec_rate_get(_swigobj) (&_swigobj->rate)
> +static int _wrap_madPathRec_rate_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    uint8_t * _result;
> +    madPathRec * _arg0;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 2) || (objc > 2)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madPathRec_rate_get { madPathRec * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madPathRec_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madPathRec_rate_get. Expected _madPathRec_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (uint8_t *)madPathRec_rate_get(_arg0);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", *_result);
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madPathRec_pkt_life_set(_swigobj,_swigval) (_swigobj->pkt_life = *(_swigval),_swigval)
> +static int _wrap_madPathRec_pkt_life_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    uint8_t * _result;
> +    madPathRec * _arg0;
> +    uint8_t * _arg1;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +    uint8_t  temp;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 3) || (objc > 3)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madPathRec_pkt_life_set { madPathRec * } { uint8_t * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madPathRec_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madPathRec_pkt_life_set. Expected _madPathRec_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{
> +  temp = strtoul(Tcl_GetStringFromObj(objv[2],NULL), NULL, 0);
> +  _arg1 = &temp;
> +}
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (uint8_t *)madPathRec_pkt_life_set(_arg0,_arg1);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", *_result);
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madPathRec_pkt_life_get(_swigobj) (&_swigobj->pkt_life)
> +static int _wrap_madPathRec_pkt_life_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    uint8_t * _result;
> +    madPathRec * _arg0;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 2) || (objc > 2)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madPathRec_pkt_life_get { madPathRec * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madPathRec_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madPathRec_pkt_life_get. Expected _madPathRec_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (uint8_t *)madPathRec_pkt_life_get(_arg0);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", *_result);
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madPathRec_preference_set(_swigobj,_swigval) (_swigobj->preference = *(_swigval),_swigval)
> +static int _wrap_madPathRec_preference_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    uint8_t * _result;
> +    madPathRec * _arg0;
> +    uint8_t * _arg1;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +    uint8_t  temp;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 3) || (objc > 3)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madPathRec_preference_set { madPathRec * } { uint8_t * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madPathRec_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madPathRec_preference_set. Expected _madPathRec_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{
> +  temp = strtoul(Tcl_GetStringFromObj(objv[2],NULL), NULL, 0);
> +  _arg1 = &temp;
> +}
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (uint8_t *)madPathRec_preference_set(_arg0,_arg1);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", *_result);
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madPathRec_preference_get(_swigobj) (&_swigobj->preference)
> +static int _wrap_madPathRec_preference_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    uint8_t * _result;
> +    madPathRec * _arg0;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 2) || (objc > 2)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madPathRec_preference_get { madPathRec * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madPathRec_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madPathRec_preference_get. Expected _madPathRec_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (uint8_t *)madPathRec_preference_get(_arg0);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", *_result);
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +static uint8_array_t * madPathRec_resv2_set(madPathRec *obj, uint8_array_t val[6]) {
> +{
> +	int i;
> +	for (i=0; i <6 ; i++) {
> +		obj->resv2[i] = *(val+i);
> +	}
> +}
> +    return (uint8_array_t *) val;
> +}
> +static int _wrap_madPathRec_resv2_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    uint8_array_t * _result;
> +    madPathRec * _arg0;
> +    uint8_array_t * _arg1;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +    uint8_t  entrys[6];
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 3) || (objc > 3)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madPathRec_resv2_set { madPathRec * } { uint8_array_t * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madPathRec_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madPathRec_resv2_set. Expected _madPathRec_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{
> +  char *buff;
> +  char *p_ch;
> +  char *last;
> +  long int entry;
> +
> +  int i = 0;
> +  buff = (char *)malloc((strlen(Tcl_GetStringFromObj(objv[2],NULL))+1)*sizeof(char));
> +  strcpy(buff, Tcl_GetStringFromObj(objv[2],NULL));
> +  p_ch = strtok_r(buff, " \t",&last);
> +  while (p_ch && (i < 6)) 
> +  {    
> +    entry = strtol(p_ch, NULL, 0);
> +    if (entry > 0xff)
> +    {
> +      printf("Error: wrong format or out of range value for expected uint8_t entry: %s\n", p_ch);
> +      return TCL_ERROR;
> +    }
> +    entrys[i++] = entry;
> +    p_ch = strtok_r(NULL, " \t", &last);
> +  }
> +  for (; i < 6; i++) entrys[i] = 0;
> +
> +  free(buff);
> +  _arg1 = entrys;
> +}
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (uint8_array_t *)madPathRec_resv2_set(_arg0,_arg1);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  int i;
> +  char buff[8];
> +  for (i=0; i <6 ; i++) {
> +    sprintf(buff, "0x%02x ", *(_result+i));
> +    Tcl_AppendResult(interp, buff, NULL);
> +  }
> +}
> +    return TCL_OK;
> +}
> +#define madPathRec_resv2_get(_swigobj) ((uint8_array_t *) _swigobj->resv2)
> +static int _wrap_madPathRec_resv2_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    uint8_array_t * _result;
> +    madPathRec * _arg0;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 2) || (objc > 2)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madPathRec_resv2_get { madPathRec * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madPathRec_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madPathRec_resv2_get. Expected _madPathRec_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (uint8_array_t *)madPathRec_resv2_get(_arg0);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  int i;
> +  char buff[8];
> +  for (i=0; i <6 ; i++) {
> +    sprintf(buff, "0x%02x ", *(_result+i));
> +    Tcl_AppendResult(interp, buff, NULL);
> +  }
> +}
> +    return TCL_OK;
> +}
> +static int  madPathRec_send_get(madPathRec *self,IBMSNode * pFromNode,uint8_t  fromPort,uint16_t  destLid,uint64_t  comp_mask) {
> +      return( send_sa_mad(
> +                pFromNode, 
> +                fromPort, 
> +                destLid,
> +                IB_MCLASS_SUBN_ADM,
> +                IB_MAD_METHOD_GET,
> +                cl_ntoh16(IB_MAD_ATTR_PATH_RECORD),
> +                comp_mask,
> +                (uint8_t*)self,
> +                sizeof(madPathRec)
> +                )
> +              );
> +    }
> +static int _wrap_madPathRec_send_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    int  _result;
> +    madPathRec * _arg0;
> +    IBMSNode * _arg1;
> +    uint8_t * _arg2;
> +    uint16_t * _arg3;
> +    uint64_t * _arg4;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +    uint8_t  temp;
> +    uint16_t  temp0;
> +    uint64_t  temp1;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 6) || (objc > 6)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madPathRec_send_get { madPathRec * } pFromNode fromPort destLid comp_mask ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madPathRec_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madPathRec_send_get. Expected _madPathRec_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{
> +  
> +  void *ptr;
> +  if (ibmsGetSimNodePtrByTclName(objv[2], &ptr) != TCL_OK) {
> +	 char err[128];
> +	 sprintf(err, "-E- fail to find ibdm obj by id:%s",Tcl_GetString(objv[2]) );
> +	 // Tcl_SetStringObj(tcl_result, err, strlen(err));
> +	 return TCL_ERROR;	 
> +  }
> +	 
> +  _arg1 = (IBMSNode *)ptr;
> +}
> +{
> +  /* the format is always: <type>:<idx>[:<name>] */
> +  
> +  // get the type from the given source 
> +  char buf[128];
> +  strcpy(buf, Tcl_GetStringFromObj(objv[2],0));
> +  char *colonIdx = index(buf,':');
> +  if (!colonIdx) {
> +	 char err[128];
> +	 sprintf(err, "-E- Bad formatted ibdm object:%s", buf);
> +	 Tcl_SetStringObj(tcl_result, err, strlen(err));
> +	 return TCL_ERROR;
> +  }
> +  *colonIdx = '\0';
> +
> +  if (!strcmp("IBMSNode ", "IBMSNode ")) {
> +    if (strcmp(buf, "simnode")) {
> +      char err[256];
> +      sprintf(err, "-E- basetype is IBMSNode  but received obj of type %s", buf);
> +      Tcl_SetStringObj(tcl_result, err, strlen(err));
> +      return TCL_ERROR;	 
> +    }
> +  } else {
> +	 char err[256];
> +	 sprintf(err, "-E- basetype 'IBMSNode ' is unknown");
> +	 Tcl_SetStringObj(tcl_result, err, strlen(err));
> +	 return TCL_ERROR;	 
> +  }
> +}
> +{
> +  temp = strtoul(Tcl_GetStringFromObj(objv[3],NULL), NULL, 0);
> +  _arg2 = &temp;
> +}
> +{
> +  temp0 = strtoul(Tcl_GetStringFromObj(objv[4],NULL), NULL, 0);
> +  _arg3 = &temp0;
> +}
> +{
> +  temp1 = strtoull(Tcl_GetStringFromObj(objv[5],NULL), NULL,16);
> +  _arg4 = &temp1;
> +}
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (int )madPathRec_send_get(_arg0,_arg1,*_arg2,*_arg3,*_arg4);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +    Tcl_SetIntObj(tcl_result,(long) _result);
> +    return TCL_OK;
> +}
> +/* delcmd.swg : Tcl object deletion method */
> +
> +static void TclDeletemadPathRec(ClientData clientData) {
> +    delete_madPathRec((madPathRec *) clientData);
> +}
> +
> +/* methodcmd8.swg : Tcl8.x method invocation */
> +
> +static int TclmadPathRecMethodCmd(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST _objv[]) {
> +  int (*cmd)(ClientData, Tcl_Interp *, int, Tcl_Obj *CONST*) = 0;
> +  char *_str;
> +  int rcode;
> +  Tcl_Obj **objv;
> +  Tcl_Obj *oldarg,*tcl_result,*obj;
> +  int length;
> +  char c;
> +
> +  tcl_result = Tcl_GetObjResult(interp);
> +  objv = (Tcl_Obj **) _objv; 
> +  if (objc < 2) {
> +    Tcl_SetStringObj(tcl_result,"madPathRec methods : { dump cget configure send_get  }",-1);
> +    return TCL_ERROR;
> +  }
> +  obj = Tcl_NewObj();
> +  SWIG_SetPointerObj(obj,(void *) clientData,"_madPathRec_p");
> +  _str = Tcl_GetStringFromObj(objv[1],&length);
> +  c = *_str;
> +  if (0);
> +      if (strcmp(_str,"send_get") == 0) {
> +        cmd = _wrap_madPathRec_send_get;
> +    }
> +    else if ((c == 'c') && (strncmp(_str,"configure",length) == 0) && (length >= 2)) {
> +      int i = 2;
> +      cmd = 0;
> +      while (i+1 < objc) {
> +        _str = Tcl_GetStringFromObj(objv[i],&length);
> +                        if (strcmp(_str,"-resv0") == 0) {
> +                    cmd = _wrap_madPathRec_resv0_set;
> +                }  else if (strcmp(_str,"-dgid") == 0) {
> +                    cmd = _wrap_madPathRec_dgid_set;
> +                }  else if (strcmp(_str,"-sgid") == 0) {
> +                    cmd = _wrap_madPathRec_sgid_set;
> +                }  else if (strcmp(_str,"-dlid") == 0) {
> +                    cmd = _wrap_madPathRec_dlid_set;
> +                }  else if (strcmp(_str,"-slid") == 0) {
> +                    cmd = _wrap_madPathRec_slid_set;
> +                }  else if (strcmp(_str,"-hop_flow_raw") == 0) {
> +                    cmd = _wrap_madPathRec_hop_flow_raw_set;
> +                }  else if (strcmp(_str,"-tclass") == 0) {
> +                    cmd = _wrap_madPathRec_tclass_set;
> +                }  else if (strcmp(_str,"-num_path") == 0) {
> +                    cmd = _wrap_madPathRec_num_path_set;
> +                }  else if (strcmp(_str,"-pkey") == 0) {
> +                    cmd = _wrap_madPathRec_pkey_set;
> +                }  else if (strcmp(_str,"-sl") == 0) {
> +                    cmd = _wrap_madPathRec_sl_set;
> +                }  else if (strcmp(_str,"-mtu") == 0) {
> +                    cmd = _wrap_madPathRec_mtu_set;
> +                }  else if (strcmp(_str,"-rate") == 0) {
> +                    cmd = _wrap_madPathRec_rate_set;
> +                }  else if (strcmp(_str,"-pkt_life") == 0) {
> +                    cmd = _wrap_madPathRec_pkt_life_set;
> +                }  else if (strcmp(_str,"-preference") == 0) {
> +                    cmd = _wrap_madPathRec_preference_set;
> +                }  else if (strcmp(_str,"-resv2") == 0) {
> +                    cmd = _wrap_madPathRec_resv2_set;
> +                } 
> +          if (cmd) {
> +            oldarg = objv[i];
> +            objv[i] = obj;
> +            rcode = (*cmd)(clientData,interp,3,&objv[i-1]);
> +            objv[i] = oldarg;
> +            if (rcode == TCL_ERROR) return rcode;
> +            cmd = 0;
> +          } else {
> +            Tcl_SetStringObj(tcl_result,"Invalid configure option. Must be { -resv0 -dgid -sgid -dlid -slid -hop_flow_raw -tclass -num_path -pkey -sl -mtu -rate -pkt_life -preference -resv2  }",-1);
> +            return TCL_ERROR;
> +          }
> +        i+=2;
> +      }
> +      if ((i < objc) || (i == 2)) {
> +        Tcl_SetStringObj(tcl_result,"{ -resv0 -dgid -sgid -dlid -slid -hop_flow_raw -tclass -num_path -pkey -sl -mtu -rate -pkt_life -preference -resv2  }",-1);
> +        return TCL_ERROR;
> +      }
> +      return TCL_OK;
> +    } else if ((c == 'c') && (strncmp(_str,"cget",length) == 0) && (length >= 2)) {
> +      if (objc == 3) {
> +        _str = Tcl_GetStringFromObj(objv[2],&length);
> +        if (0) {}
> +                        if (strcmp(_str,"-resv0") == 0) {
> +                    cmd = _wrap_madPathRec_resv0_get;
> +                }  else if (strcmp(_str,"-dgid") == 0) {
> +                    cmd = _wrap_madPathRec_dgid_get;
> +                }  else if (strcmp(_str,"-sgid") == 0) {
> +                    cmd = _wrap_madPathRec_sgid_get;
> +                }  else if (strcmp(_str,"-dlid") == 0) {
> +                    cmd = _wrap_madPathRec_dlid_get;
> +                }  else if (strcmp(_str,"-slid") == 0) {
> +                    cmd = _wrap_madPathRec_slid_get;
> +                }  else if (strcmp(_str,"-hop_flow_raw") == 0) {
> +                    cmd = _wrap_madPathRec_hop_flow_raw_get;
> +                }  else if (strcmp(_str,"-tclass") == 0) {
> +                    cmd = _wrap_madPathRec_tclass_get;
> +                }  else if (strcmp(_str,"-num_path") == 0) {
> +                    cmd = _wrap_madPathRec_num_path_get;
> +                }  else if (strcmp(_str,"-pkey") == 0) {
> +                    cmd = _wrap_madPathRec_pkey_get;
> +                }  else if (strcmp(_str,"-sl") == 0) {
> +                    cmd = _wrap_madPathRec_sl_get;
> +                }  else if (strcmp(_str,"-mtu") == 0) {
> +                    cmd = _wrap_madPathRec_mtu_get;
> +                }  else if (strcmp(_str,"-rate") == 0) {
> +                    cmd = _wrap_madPathRec_rate_get;
> +                }  else if (strcmp(_str,"-pkt_life") == 0) {
> +                    cmd = _wrap_madPathRec_pkt_life_get;
> +                }  else if (strcmp(_str,"-preference") == 0) {
> +                    cmd = _wrap_madPathRec_preference_get;
> +                }  else if (strcmp(_str,"-resv2") == 0) {
> +                    cmd = _wrap_madPathRec_resv2_get;
> +                } 
> +          else if (strcmp(_str,"-this") == 0) {
> +            SWIG_SetPointerObj(tcl_result,(void *) clientData, "_madPathRec_p");
> +            return TCL_OK;
> +          }
> +        if (cmd) {
> +          oldarg = objv[2];
> +          objv[2] = obj;
> +          rcode = (*cmd)(clientData,interp,objc-1,&objv[1]);
> +          objv[2] = oldarg;
> +          return rcode;
> +        } else {
> +          Tcl_SetStringObj(tcl_result,"Invalid cget option. Must be { -this -resv0 -dgid -sgid -dlid -slid -hop_flow_raw -tclass -num_path -pkey -sl -mtu -rate -pkt_life -preference -resv2  }",-1);
> +          return TCL_ERROR;
> +        }
> +      } else {
> +        Tcl_SetStringObj(tcl_result,"{ -this -resv0 -dgid -sgid -dlid -slid -hop_flow_raw -tclass -num_path -pkey -sl -mtu -rate -pkt_life -preference -resv2  }", -1);
> +        return TCL_ERROR;
> +      }
> +    } else if ((c == 'd') && (strncmp(_str,"dump",length) == 0) && (length >= 2)) {
> +      if (objc == 2) {
> +        Tcl_Obj *pDumpObj;
> +        pDumpObj = Tcl_NewStringObj("",-1);
> +        Tcl_IncrRefCount(pDumpObj);
> +                cmd = _wrap_madPathRec_resv0_get;
> +        oldarg = objv[2];
> +        objv[2] = obj;
> +        rcode = (*cmd)(clientData,interp,objc,&objv[1]);
> +        objv[2] = oldarg;
> +        Tcl_AppendStringsToObj(pDumpObj, "-resv0 ", Tcl_GetStringFromObj(tcl_result, NULL), " ", NULL);
> +        Tcl_SetStringObj(tcl_result, Tcl_GetStringFromObj(pDumpObj, NULL), -1);
> +        cmd = _wrap_madPathRec_dgid_get;
> +        oldarg = objv[2];
> +        objv[2] = obj;
> +        rcode = (*cmd)(clientData,interp,objc,&objv[1]);
> +        objv[2] = oldarg;
> +        Tcl_AppendStringsToObj(pDumpObj, "-dgid ", Tcl_GetStringFromObj(tcl_result, NULL), " ", NULL);
> +        Tcl_SetStringObj(tcl_result, Tcl_GetStringFromObj(pDumpObj, NULL), -1);
> +        cmd = _wrap_madPathRec_sgid_get;
> +        oldarg = objv[2];
> +        objv[2] = obj;
> +        rcode = (*cmd)(clientData,interp,objc,&objv[1]);
> +        objv[2] = oldarg;
> +        Tcl_AppendStringsToObj(pDumpObj, "-sgid ", Tcl_GetStringFromObj(tcl_result, NULL), " ", NULL);
> +        Tcl_SetStringObj(tcl_result, Tcl_GetStringFromObj(pDumpObj, NULL), -1);
> +        cmd = _wrap_madPathRec_dlid_get;
> +        oldarg = objv[2];
> +        objv[2] = obj;
> +        rcode = (*cmd)(clientData,interp,objc,&objv[1]);
> +        objv[2] = oldarg;
> +        Tcl_AppendStringsToObj(pDumpObj, "-dlid ", Tcl_GetStringFromObj(tcl_result, NULL), " ", NULL);
> +        Tcl_SetStringObj(tcl_result, Tcl_GetStringFromObj(pDumpObj, NULL), -1);
> +        cmd = _wrap_madPathRec_slid_get;
> +        oldarg = objv[2];
> +        objv[2] = obj;
> +        rcode = (*cmd)(clientData,interp,objc,&objv[1]);
> +        objv[2] = oldarg;
> +        Tcl_AppendStringsToObj(pDumpObj, "-slid ", Tcl_GetStringFromObj(tcl_result, NULL), " ", NULL);
> +        Tcl_SetStringObj(tcl_result, Tcl_GetStringFromObj(pDumpObj, NULL), -1);
> +        cmd = _wrap_madPathRec_hop_flow_raw_get;
> +        oldarg = objv[2];
> +        objv[2] = obj;
> +        rcode = (*cmd)(clientData,interp,objc,&objv[1]);
> +        objv[2] = oldarg;
> +        Tcl_AppendStringsToObj(pDumpObj, "-hop_flow_raw ", Tcl_GetStringFromObj(tcl_result, NULL), " ", NULL);
> +        Tcl_SetStringObj(tcl_result, Tcl_GetStringFromObj(pDumpObj, NULL), -1);
> +        cmd = _wrap_madPathRec_tclass_get;
> +        oldarg = objv[2];
> +        objv[2] = obj;
> +        rcode = (*cmd)(clientData,interp,objc,&objv[1]);
> +        objv[2] = oldarg;
> +        Tcl_AppendStringsToObj(pDumpObj, "-tclass ", Tcl_GetStringFromObj(tcl_result, NULL), " ", NULL);
> +        Tcl_SetStringObj(tcl_result, Tcl_GetStringFromObj(pDumpObj, NULL), -1);
> +        cmd = _wrap_madPathRec_num_path_get;
> +        oldarg = objv[2];
> +        objv[2] = obj;
> +        rcode = (*cmd)(clientData,interp,objc,&objv[1]);
> +        objv[2] = oldarg;
> +        Tcl_AppendStringsToObj(pDumpObj, "-num_path ", Tcl_GetStringFromObj(tcl_result, NULL), " ", NULL);
> +        Tcl_SetStringObj(tcl_result, Tcl_GetStringFromObj(pDumpObj, NULL), -1);
> +        cmd = _wrap_madPathRec_pkey_get;
> +        oldarg = objv[2];
> +        objv[2] = obj;
> +        rcode = (*cmd)(clientData,interp,objc,&objv[1]);
> +        objv[2] = oldarg;
> +        Tcl_AppendStringsToObj(pDumpObj, "-pkey ", Tcl_GetStringFromObj(tcl_result, NULL), " ", NULL);
> +        Tcl_SetStringObj(tcl_result, Tcl_GetStringFromObj(pDumpObj, NULL), -1);
> +        cmd = _wrap_madPathRec_sl_get;
> +        oldarg = objv[2];
> +        objv[2] = obj;
> +        rcode = (*cmd)(clientData,interp,objc,&objv[1]);
> +        objv[2] = oldarg;
> +        Tcl_AppendStringsToObj(pDumpObj, "-sl ", Tcl_GetStringFromObj(tcl_result, NULL), " ", NULL);
> +        Tcl_SetStringObj(tcl_result, Tcl_GetStringFromObj(pDumpObj, NULL), -1);
> +        cmd = _wrap_madPathRec_mtu_get;
> +        oldarg = objv[2];
> +        objv[2] = obj;
> +        rcode = (*cmd)(clientData,interp,objc,&objv[1]);
> +        objv[2] = oldarg;
> +        Tcl_AppendStringsToObj(pDumpObj, "-mtu ", Tcl_GetStringFromObj(tcl_result, NULL), " ", NULL);
> +        Tcl_SetStringObj(tcl_result, Tcl_GetStringFromObj(pDumpObj, NULL), -1);
> +        cmd = _wrap_madPathRec_rate_get;
> +        oldarg = objv[2];
> +        objv[2] = obj;
> +        rcode = (*cmd)(clientData,interp,objc,&objv[1]);
> +        objv[2] = oldarg;
> +        Tcl_AppendStringsToObj(pDumpObj, "-rate ", Tcl_GetStringFromObj(tcl_result, NULL), " ", NULL);
> +        Tcl_SetStringObj(tcl_result, Tcl_GetStringFromObj(pDumpObj, NULL), -1);
> +        cmd = _wrap_madPathRec_pkt_life_get;
> +        oldarg = objv[2];
> +        objv[2] = obj;
> +        rcode = (*cmd)(clientData,interp,objc,&objv[1]);
> +        objv[2] = oldarg;
> +        Tcl_AppendStringsToObj(pDumpObj, "-pkt_life ", Tcl_GetStringFromObj(tcl_result, NULL), " ", NULL);
> +        Tcl_SetStringObj(tcl_result, Tcl_GetStringFromObj(pDumpObj, NULL), -1);
> +        cmd = _wrap_madPathRec_preference_get;
> +        oldarg = objv[2];
> +        objv[2] = obj;
> +        rcode = (*cmd)(clientData,interp,objc,&objv[1]);
> +        objv[2] = oldarg;
> +        Tcl_AppendStringsToObj(pDumpObj, "-preference ", Tcl_GetStringFromObj(tcl_result, NULL), " ", NULL);
> +        Tcl_SetStringObj(tcl_result, Tcl_GetStringFromObj(pDumpObj, NULL), -1);
> +        cmd = _wrap_madPathRec_resv2_get;
> +        oldarg = objv[2];
> +        objv[2] = obj;
> +        rcode = (*cmd)(clientData,interp,objc,&objv[1]);
> +        objv[2] = oldarg;
> +        Tcl_AppendStringsToObj(pDumpObj, "-resv2 ", Tcl_GetStringFromObj(tcl_result, NULL), " ", NULL);
> +        Tcl_SetStringObj(tcl_result, Tcl_GetStringFromObj(pDumpObj, NULL), -1);
> +
> +        Tcl_DecrRefCount(pDumpObj);
> +        return TCL_OK;
> +      } else {
> +        Tcl_SetStringObj(tcl_result,"no parameters are allowed for dump", -1);
> +        return TCL_ERROR;
> +      }
> +    }
> +  if (!cmd) {
> +    Tcl_SetStringObj(tcl_result,"Invalid Method. Must be { dump cget configure send_get }",-1);
> +    return TCL_ERROR;
> +  }
> +  oldarg = objv[1];
> +  objv[1] = obj;
> +  rcode = (*cmd)(clientData,interp,objc,objv);
> +  objv[1] = oldarg;
> +  return rcode;
> +}
> +
> +
> +
> +/* objcmd8.swg : Tcl 8.x object creation */
> +
> +static int TclmadPathRecCmd(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +    void (*del)(ClientData) = 0;
> +    char *name = 0;
> +    int (*cmd)(ClientData, Tcl_Interp *, int, Tcl_Obj *CONST*) = 0;
> +    madPathRec * newObj = 0;
> +    int firstarg = 0;
> +    int thisarg = 0;
> +    int length;
> +    char *_str;
> +    Tcl_Obj *tcl_result;
> +
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if (objc == 1) {
> +        cmd = _wrap_new_madPathRec;
> +    } else {
> +      _str = Tcl_GetStringFromObj(objv[1],&length);
> +      if (strcmp(_str,"-this") == 0) thisarg = 2;
> +      else if (strcmp(_str,"-args") == 0) {
> +	firstarg = 1;
> +	cmd = _wrap_new_madPathRec;
> +      } else if (objc == 2) {
> +	firstarg = 1;
> +	name = _str;
> +	cmd = _wrap_new_madPathRec;
> +      } else if (objc >= 3) {
> +	name = _str;
> +	_str = Tcl_GetStringFromObj(objv[2],&length);
> +	if (strcmp(_str,"-this") == 0) thisarg = 3;
> +	else {
> +	  firstarg = 1;
> +	  cmd = _wrap_new_madPathRec;
> +	}
> +      }
> +    }
> +    if (cmd) {
> +        int result;
> +        result = (*cmd)(clientData,interp,objc-firstarg,&objv[firstarg]);
> +        if (result == TCL_OK) {
> +            SWIG_GetPointerObj(interp,tcl_result,(void **) &newObj,"_madPathRec_p");
> +        } else { return result; }
> +        if (!name) name = Tcl_GetStringFromObj(tcl_result,&length);
> +        del = TclDeletemadPathRec;
> +    } else if (thisarg > 0) { 
> +        if (thisarg < objc) {
> +            char *r;
> +            r = SWIG_GetPointerObj(interp,objv[thisarg],(void **) &newObj,"_madPathRec_p");
> +            if (r) {
> +	      Tcl_SetStringObj(tcl_result,"Type error. not a madPathRec object.",-1);
> +	      return TCL_ERROR;
> +            }
> +        if (!name) name = Tcl_GetStringFromObj(objv[thisarg],&length);
> +	Tcl_SetStringObj(tcl_result,name,-1);
> +        } else {
> +            Tcl_SetStringObj(tcl_result,"wrong # args.",-1);
> +            return TCL_ERROR;
> +        }
> +    } else {
> +        Tcl_SetStringObj(tcl_result,"No constructor available.",-1);
> +        return TCL_ERROR;
> +    }
> +    {
> +      Tcl_CmdInfo dummy;
> +      if (!Tcl_GetCommandInfo(interp,name,&dummy)) {
> +	Tcl_CreateObjCommand(interp,name, TclmadPathRecMethodCmd, (ClientData) newObj, del);
> +	return TCL_OK;
> +      } else {
> +	Tcl_SetStringObj(tcl_result,"Object name already exists!",-1);
> +	return TCL_ERROR;
> +      }
> +    }
> +}
> +
> +
> +#define new_madServiceRec() (new madServiceRec())
> +static int _wrap_new_madServiceRec(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    madServiceRec * _result;
> +    Tcl_Obj * tcl_result;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 1) || (objc > 1)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. new_madServiceRec ",-1);
> +        return TCL_ERROR;
> +    }
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (madServiceRec *)new_madServiceRec();
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +    SWIG_SetPointerObj(tcl_result,(void *) _result,"_madServiceRec_p");
> +    return TCL_OK;
> +}
> +#define delete_madServiceRec(_swigobj) (delete _swigobj)
> +static int _wrap_delete_madServiceRec(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    madServiceRec * _arg0;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 2) || (objc > 2)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. delete_madServiceRec { madServiceRec * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madServiceRec_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of delete_madServiceRec. Expected _madServiceRec_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{ 
> +  ibms_tcl_error = 0;
> +      delete_madServiceRec(_arg0);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +    return TCL_OK;
> +}
> +#define madServiceRec_service_id_set(_swigobj,_swigval) (_swigobj->service_id = *(_swigval),_swigval)
> +static int _wrap_madServiceRec_service_id_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    ib_net64_t * _result;
> +    madServiceRec * _arg0;
> +    ib_net64_t * _arg1;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +    uint64_t  temp;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 3) || (objc > 3)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madServiceRec_service_id_set { madServiceRec * } { ib_net64_t * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madServiceRec_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madServiceRec_service_id_set. Expected _madServiceRec_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{
> +  temp = cl_hton64(strtoull(Tcl_GetStringFromObj(objv[2],NULL), NULL, 16));
> +  _arg1 = &temp;
> +}
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (ib_net64_t *)madServiceRec_service_id_set(_arg0,_arg1);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "0x%016" PRIx64, cl_ntoh64(*_result));
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madServiceRec_service_id_get(_swigobj) (&_swigobj->service_id)
> +static int _wrap_madServiceRec_service_id_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    ib_net64_t * _result;
> +    madServiceRec * _arg0;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 2) || (objc > 2)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madServiceRec_service_id_get { madServiceRec * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madServiceRec_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madServiceRec_service_id_get. Expected _madServiceRec_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (ib_net64_t *)madServiceRec_service_id_get(_arg0);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "0x%016" PRIx64, cl_ntoh64(*_result));
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madServiceRec_service_gid_set(_swigobj,_swigval) (_swigobj->service_gid = *(_swigval),_swigval)
> +static int _wrap_madServiceRec_service_gid_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    ib_gid_t * _result;
> +    madServiceRec * _arg0;
> +    ib_gid_t * _arg1;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +    ib_gid_t  temp;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 3) || (objc > 3)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madServiceRec_service_gid_set { madServiceRec * } { ib_gid_t * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madServiceRec_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madServiceRec_service_gid_set. Expected _madServiceRec_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{
> +  char buf[36];
> +  char *p_prefix, *p_guid;
> +  char *str_token;
> +
> +  strcpy(buf, Tcl_GetStringFromObj(objv[2],NULL));
> +  p_prefix = strtok_r(buf,":", &str_token);
> +  p_guid = strtok_r(NULL, " ", &str_token);
> +  errno = 0;
> +  temp.unicast.prefix = cl_hton64(strtoull(p_prefix, NULL, 16));
> +  if (errno) {
> +    printf("Wrong format for gid prefix:%s\n", p_prefix);
> +    return TCL_ERROR;
> +  }
> +
> +  temp.unicast.interface_id = cl_hton64(strtoull(p_guid, NULL, 16));
> +  if (errno) {
> +    printf("Wrong format for gid guid:%s\n", p_guid);
> +    return TCL_ERROR;
> +  }
> +  
> +  _arg1 = &temp;
> +}
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (ib_gid_t *)madServiceRec_service_gid_set(_arg0,_arg1);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[36];
> +  sprintf(buff, "0x%016" PRIx64 ":0x%016" PRIx64, 
> +          cl_ntoh64(_result->unicast.prefix), 
> +          cl_ntoh64(_result->unicast.interface_id) 
> +          );
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madServiceRec_service_gid_get(_swigobj) (&_swigobj->service_gid)
> +static int _wrap_madServiceRec_service_gid_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    ib_gid_t * _result;
> +    madServiceRec * _arg0;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 2) || (objc > 2)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madServiceRec_service_gid_get { madServiceRec * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madServiceRec_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madServiceRec_service_gid_get. Expected _madServiceRec_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (ib_gid_t *)madServiceRec_service_gid_get(_arg0);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[36];
> +  sprintf(buff, "0x%016" PRIx64 ":0x%016" PRIx64, 
> +          cl_ntoh64(_result->unicast.prefix), 
> +          cl_ntoh64(_result->unicast.interface_id) 
> +          );
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madServiceRec_service_pkey_set(_swigobj,_swigval) (_swigobj->service_pkey = *(_swigval),_swigval)
> +static int _wrap_madServiceRec_service_pkey_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    ib_net16_t * _result;
> +    madServiceRec * _arg0;
> +    ib_net16_t * _arg1;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +    ib_net16_t  temp;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 3) || (objc > 3)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madServiceRec_service_pkey_set { madServiceRec * } { ib_net16_t * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madServiceRec_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madServiceRec_service_pkey_set. Expected _madServiceRec_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{
> +  temp = cl_hton16(atoi(Tcl_GetStringFromObj(objv[2],NULL)));
> +  _arg1 = &temp;
> +}
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (ib_net16_t *)madServiceRec_service_pkey_set(_arg0,_arg1);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", cl_hton16(*_result));
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madServiceRec_service_pkey_get(_swigobj) (&_swigobj->service_pkey)
> +static int _wrap_madServiceRec_service_pkey_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    ib_net16_t * _result;
> +    madServiceRec * _arg0;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 2) || (objc > 2)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madServiceRec_service_pkey_get { madServiceRec * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madServiceRec_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madServiceRec_service_pkey_get. Expected _madServiceRec_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (ib_net16_t *)madServiceRec_service_pkey_get(_arg0);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", cl_hton16(*_result));
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madServiceRec_resv_set(_swigobj,_swigval) (_swigobj->resv = *(_swigval),_swigval)
> +static int _wrap_madServiceRec_resv_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    ib_net16_t * _result;
> +    madServiceRec * _arg0;
> +    ib_net16_t * _arg1;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +    ib_net16_t  temp;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 3) || (objc > 3)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madServiceRec_resv_set { madServiceRec * } { ib_net16_t * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madServiceRec_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madServiceRec_resv_set. Expected _madServiceRec_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{
> +  temp = cl_hton16(atoi(Tcl_GetStringFromObj(objv[2],NULL)));
> +  _arg1 = &temp;
> +}
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (ib_net16_t *)madServiceRec_resv_set(_arg0,_arg1);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", cl_hton16(*_result));
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madServiceRec_resv_get(_swigobj) (&_swigobj->resv)
> +static int _wrap_madServiceRec_resv_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    ib_net16_t * _result;
> +    madServiceRec * _arg0;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 2) || (objc > 2)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madServiceRec_resv_get { madServiceRec * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madServiceRec_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madServiceRec_resv_get. Expected _madServiceRec_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (ib_net16_t *)madServiceRec_resv_get(_arg0);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", cl_hton16(*_result));
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madServiceRec_service_lease_set(_swigobj,_swigval) (_swigobj->service_lease = *(_swigval),_swigval)
> +static int _wrap_madServiceRec_service_lease_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    ib_net32_t * _result;
> +    madServiceRec * _arg0;
> +    ib_net32_t * _arg1;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +    ib_net32_t  temp;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 3) || (objc > 3)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madServiceRec_service_lease_set { madServiceRec * } { ib_net32_t * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madServiceRec_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madServiceRec_service_lease_set. Expected _madServiceRec_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{
> +  temp = cl_hton32(strtoul(Tcl_GetStringFromObj(objv[2],NULL), NULL, 0));
> +  _arg1 = &temp;
> +}
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (ib_net32_t *)madServiceRec_service_lease_set(_arg0,_arg1);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", cl_ntoh32(*_result));
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madServiceRec_service_lease_get(_swigobj) (&_swigobj->service_lease)
> +static int _wrap_madServiceRec_service_lease_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    ib_net32_t * _result;
> +    madServiceRec * _arg0;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 2) || (objc > 2)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madServiceRec_service_lease_get { madServiceRec * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madServiceRec_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madServiceRec_service_lease_get. Expected _madServiceRec_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (ib_net32_t *)madServiceRec_service_lease_get(_arg0);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", cl_ntoh32(*_result));
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +static uint8_array_t * madServiceRec_service_key_set(madServiceRec *obj, uint8_array_t val[16]) {
> +{
> +	int i;
> +	for (i=0; i <16 ; i++) {
> +		obj->service_key[i] = *(val+i);
> +	}
> +}
> +    return (uint8_array_t *) val;
> +}
> +static int _wrap_madServiceRec_service_key_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    uint8_array_t * _result;
> +    madServiceRec * _arg0;
> +    uint8_array_t * _arg1;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +    uint8_t  entrys[16];
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 3) || (objc > 3)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madServiceRec_service_key_set { madServiceRec * } { uint8_array_t * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madServiceRec_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madServiceRec_service_key_set. Expected _madServiceRec_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{
> +  char *buff;
> +  char *p_ch;
> +  char *last;
> +  long int entry;
> +
> +  int i = 0;
> +  buff = (char *)malloc((strlen(Tcl_GetStringFromObj(objv[2],NULL))+1)*sizeof(char));
> +  strcpy(buff, Tcl_GetStringFromObj(objv[2],NULL));
> +  p_ch = strtok_r(buff, " \t",&last);
> +  while (p_ch && (i < 16)) 
> +  {    
> +    entry = strtol(p_ch, NULL, 0);
> +    if (entry > 0xff)
> +    {
> +      printf("Error: wrong format or out of range value for expected uint8_t entry: %s\n", p_ch);
> +      return TCL_ERROR;
> +    }
> +    entrys[i++] = entry;
> +    p_ch = strtok_r(NULL, " \t", &last);
> +  }
> +  for (; i < 16; i++) entrys[i] = 0;
> +
> +  free(buff);
> +  _arg1 = entrys;
> +}
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (uint8_array_t *)madServiceRec_service_key_set(_arg0,_arg1);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  int i;
> +  char buff[8];
> +  for (i=0; i <16 ; i++) {
> +    sprintf(buff, "0x%02x ", *(_result+i));
> +    Tcl_AppendResult(interp, buff, NULL);
> +  }
> +}
> +    return TCL_OK;
> +}
> +#define madServiceRec_service_key_get(_swigobj) ((uint8_array_t *) _swigobj->service_key)
> +static int _wrap_madServiceRec_service_key_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    uint8_array_t * _result;
> +    madServiceRec * _arg0;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 2) || (objc > 2)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madServiceRec_service_key_get { madServiceRec * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madServiceRec_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madServiceRec_service_key_get. Expected _madServiceRec_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (uint8_array_t *)madServiceRec_service_key_get(_arg0);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  int i;
> +  char buff[8];
> +  for (i=0; i <16 ; i++) {
> +    sprintf(buff, "0x%02x ", *(_result+i));
> +    Tcl_AppendResult(interp, buff, NULL);
> +  }
> +}
> +    return TCL_OK;
> +}
> +static uint8_array_t * madServiceRec_service_name_set(madServiceRec *obj, uint8_array_t val[64]) {
> +{
> +	int i;
> +	for (i=0; i <64 ; i++) {
> +		obj->service_name[i] = *(val+i);
> +	}
> +}
> +    return (uint8_array_t *) val;
> +}
> +static int _wrap_madServiceRec_service_name_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    uint8_array_t * _result;
> +    madServiceRec * _arg0;
> +    uint8_array_t * _arg1;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +    uint8_t  entrys[64];
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 3) || (objc > 3)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madServiceRec_service_name_set { madServiceRec * } { uint8_array_t * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madServiceRec_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madServiceRec_service_name_set. Expected _madServiceRec_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{
> +  char *buff;
> +  char *p_ch;
> +  char *last;
> +  long int entry;
> +
> +  int i = 0;
> +  buff = (char *)malloc((strlen(Tcl_GetStringFromObj(objv[2],NULL))+1)*sizeof(char));
> +  strcpy(buff, Tcl_GetStringFromObj(objv[2],NULL));
> +  p_ch = strtok_r(buff, " \t",&last);
> +  while (p_ch && (i < 64)) 
> +  {    
> +    entry = strtol(p_ch, NULL, 0);
> +    if (entry > 0xff)
> +    {
> +      printf("Error: wrong format or out of range value for expected uint8_t entry: %s\n", p_ch);
> +      return TCL_ERROR;
> +    }
> +    entrys[i++] = entry;
> +    p_ch = strtok_r(NULL, " \t", &last);
> +  }
> +  for (; i < 64; i++) entrys[i] = 0;
> +
> +  free(buff);
> +  _arg1 = entrys;
> +}
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (uint8_array_t *)madServiceRec_service_name_set(_arg0,_arg1);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  int i;
> +  char buff[8];
> +  for (i=0; i <64 ; i++) {
> +    sprintf(buff, "0x%02x ", *(_result+i));
> +    Tcl_AppendResult(interp, buff, NULL);
> +  }
> +}
> +    return TCL_OK;
> +}
> +#define madServiceRec_service_name_get(_swigobj) ((uint8_array_t *) _swigobj->service_name)
> +static int _wrap_madServiceRec_service_name_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    uint8_array_t * _result;
> +    madServiceRec * _arg0;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 2) || (objc > 2)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madServiceRec_service_name_get { madServiceRec * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madServiceRec_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madServiceRec_service_name_get. Expected _madServiceRec_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (uint8_array_t *)madServiceRec_service_name_get(_arg0);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  int i;
> +  char buff[8];
> +  for (i=0; i <64 ; i++) {
> +    sprintf(buff, "0x%02x ", *(_result+i));
> +    Tcl_AppendResult(interp, buff, NULL);
> +  }
> +}
> +    return TCL_OK;
> +}
> +static uint8_array_t * madServiceRec_service_data8_set(madServiceRec *obj, uint8_array_t val[16]) {
> +{
> +	int i;
> +	for (i=0; i <16 ; i++) {
> +		obj->service_data8[i] = *(val+i);
> +	}
> +}
> +    return (uint8_array_t *) val;
> +}
> +static int _wrap_madServiceRec_service_data8_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    uint8_array_t * _result;
> +    madServiceRec * _arg0;
> +    uint8_array_t * _arg1;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +    uint8_t  entrys[16];
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 3) || (objc > 3)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madServiceRec_service_data8_set { madServiceRec * } { uint8_array_t * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madServiceRec_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madServiceRec_service_data8_set. Expected _madServiceRec_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{
> +  char *buff;
> +  char *p_ch;
> +  char *last;
> +  long int entry;
> +
> +  int i = 0;
> +  buff = (char *)malloc((strlen(Tcl_GetStringFromObj(objv[2],NULL))+1)*sizeof(char));
> +  strcpy(buff, Tcl_GetStringFromObj(objv[2],NULL));
> +  p_ch = strtok_r(buff, " \t",&last);
> +  while (p_ch && (i < 16)) 
> +  {    
> +    entry = strtol(p_ch, NULL, 0);
> +    if (entry > 0xff)
> +    {
> +      printf("Error: wrong format or out of range value for expected uint8_t entry: %s\n", p_ch);
> +      return TCL_ERROR;
> +    }
> +    entrys[i++] = entry;
> +    p_ch = strtok_r(NULL, " \t", &last);
> +  }
> +  for (; i < 16; i++) entrys[i] = 0;
> +
> +  free(buff);
> +  _arg1 = entrys;
> +}
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (uint8_array_t *)madServiceRec_service_data8_set(_arg0,_arg1);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  int i;
> +  char buff[8];
> +  for (i=0; i <16 ; i++) {
> +    sprintf(buff, "0x%02x ", *(_result+i));
> +    Tcl_AppendResult(interp, buff, NULL);
> +  }
> +}
> +    return TCL_OK;
> +}
> +#define madServiceRec_service_data8_get(_swigobj) ((uint8_array_t *) _swigobj->service_data8)
> +static int _wrap_madServiceRec_service_data8_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    uint8_array_t * _result;
> +    madServiceRec * _arg0;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 2) || (objc > 2)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madServiceRec_service_data8_get { madServiceRec * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madServiceRec_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madServiceRec_service_data8_get. Expected _madServiceRec_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (uint8_array_t *)madServiceRec_service_data8_get(_arg0);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  int i;
> +  char buff[8];
> +  for (i=0; i <16 ; i++) {
> +    sprintf(buff, "0x%02x ", *(_result+i));
> +    Tcl_AppendResult(interp, buff, NULL);
> +  }
> +}
> +    return TCL_OK;
> +}
> +static uint16_array_t * madServiceRec_service_data16_set(madServiceRec *obj, uint16_array_t val[8]) {
> +{
> +	int i;
> +	for (i=0; i <8 ; i++) {
> +		obj->service_data16[i] = *(val+i);
> +	}
> +}
> +    return (uint16_array_t *) val;
> +}
> +static int _wrap_madServiceRec_service_data16_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    uint16_array_t * _result;
> +    madServiceRec * _arg0;
> +    uint16_array_t * _arg1;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +    uint16_t  entrys[8];
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 3) || (objc > 3)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madServiceRec_service_data16_set { madServiceRec * } { uint16_array_t * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madServiceRec_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madServiceRec_service_data16_set. Expected _madServiceRec_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{
> +  char *buff;
> +  char *p_ch;
> +  char *last;
> +  long int entry;
> +
> +  int i = 0;
> +  buff = (char *)malloc((strlen(Tcl_GetStringFromObj(objv[2],NULL))+1)*sizeof(char));
> +  strcpy(buff, Tcl_GetStringFromObj(objv[2],NULL));
> +  p_ch = strtok_r(buff, " \t",&last);
> +  while (p_ch && (i < 8)) 
> +  {    
> +    entry = strtol(p_ch, NULL, 0);
> +    if (entry > 0xffff)
> +    {
> +      printf("Error: wrong format or out of range value for expected uint16_t entry: %s\n", p_ch);
> +      return TCL_ERROR;
> +    }
> +    entrys[i++] = entry;
> +    p_ch = strtok_r(NULL, " \t", &last);
> +  }
> +  for (; i < 8; i++) entrys[i] = 0;
> +
> +  free(buff);
> +  _arg1 = entrys;
> +}
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (uint16_array_t *)madServiceRec_service_data16_set(_arg0,_arg1);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  int i;
> +  char buff[8];
> +  for (i=0; i <8 ; i++) {
> +    sprintf(buff, "0x%04x ", *(_result+i));
> +    Tcl_AppendResult(interp, buff, NULL);
> +  }
> +}
> +    return TCL_OK;
> +}
> +#define madServiceRec_service_data16_get(_swigobj) ((uint16_array_t *) _swigobj->service_data16)
> +static int _wrap_madServiceRec_service_data16_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    uint16_array_t * _result;
> +    madServiceRec * _arg0;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 2) || (objc > 2)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madServiceRec_service_data16_get { madServiceRec * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madServiceRec_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madServiceRec_service_data16_get. Expected _madServiceRec_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (uint16_array_t *)madServiceRec_service_data16_get(_arg0);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  int i;
> +  char buff[8];
> +  for (i=0; i <8 ; i++) {
> +    sprintf(buff, "0x%04x ", *(_result+i));
> +    Tcl_AppendResult(interp, buff, NULL);
> +  }
> +}
> +    return TCL_OK;
> +}
> +static uint32_array_t * madServiceRec_service_data32_set(madServiceRec *obj, uint32_array_t val[4]) {
> +{
> +	int i;
> +	for (i=0; i <4 ; i++) {
> +		obj->service_data32[i] = *(val+i);
> +	}
> +}
> +    return (uint32_array_t *) val;
> +}
> +static int _wrap_madServiceRec_service_data32_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    uint32_array_t * _result;
> +    madServiceRec * _arg0;
> +    uint32_array_t * _arg1;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +    uint32_t  entrys[4];
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 3) || (objc > 3)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madServiceRec_service_data32_set { madServiceRec * } { uint32_array_t * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madServiceRec_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madServiceRec_service_data32_set. Expected _madServiceRec_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{
> +  char *buff;
> +  char *p_ch;
> +  char *last;
> +  long int entry;
> +
> +  int i = 0;
> +  buff = (char *)malloc((strlen(Tcl_GetStringFromObj(objv[2],NULL))+1)*sizeof(char));
> +  strcpy(buff, Tcl_GetStringFromObj(objv[2],NULL));
> +  p_ch = strtok_r(buff, " \t",&last);
> +  while (p_ch && (i < 4)) 
> +  {    
> +    entry = strtol(p_ch, NULL, 0);
> +    if (entry > (long int)0xffffffff)
> +    {
> +      printf("Error: wrong format or out of range value for expected uint32_t entry: %s\n", p_ch);
> +      return TCL_ERROR;
> +    }
> +    entrys[i++] = entry;
> +    p_ch = strtok_r(NULL, " \t", &last);
> +  }
> +  for (; i < 4; i++) entrys[i] = 0;
> +
> +  free(buff);
> +  _arg1 = entrys;
> +}
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (uint32_array_t *)madServiceRec_service_data32_set(_arg0,_arg1);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  int i;
> +  char buff[12];
> +  for (i=0; i <4 ; i++) {
> +    sprintf(buff, "0x%08x ", *(_result+i));
> +    Tcl_AppendResult(interp, buff, NULL);
> +  }
> +}
> +    return TCL_OK;
> +}
> +#define madServiceRec_service_data32_get(_swigobj) ((uint32_array_t *) _swigobj->service_data32)
> +static int _wrap_madServiceRec_service_data32_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    uint32_array_t * _result;
> +    madServiceRec * _arg0;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 2) || (objc > 2)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madServiceRec_service_data32_get { madServiceRec * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madServiceRec_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madServiceRec_service_data32_get. Expected _madServiceRec_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (uint32_array_t *)madServiceRec_service_data32_get(_arg0);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  int i;
> +  char buff[12];
> +  for (i=0; i <4 ; i++) {
> +    sprintf(buff, "0x%08x ", *(_result+i));
> +    Tcl_AppendResult(interp, buff, NULL);
> +  }
> +}
> +    return TCL_OK;
> +}
> +static uint64_array_t * madServiceRec_service_data64_set(madServiceRec *obj, uint64_array_t val[2]) {
> +{
> +	int i;
> +	for (i=0; i <2 ; i++) {
> +		obj->service_data64[i] = *(val+i);
> +	}
> +}
> +    return (uint64_array_t *) val;
> +}
> +static int _wrap_madServiceRec_service_data64_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    uint64_array_t * _result;
> +    madServiceRec * _arg0;
> +    uint64_array_t * _arg1;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +    uint64_t  entrys[2];
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 3) || (objc > 3)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madServiceRec_service_data64_set { madServiceRec * } { uint64_array_t * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madServiceRec_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madServiceRec_service_data64_set. Expected _madServiceRec_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{
> +  char *buff;
> +  char *p_ch;
> +  char *last;
> +  uint64_t entry;
> +
> +  int i = 0;
> +  buff = (char *)malloc((strlen(Tcl_GetStringFromObj(objv[2],NULL))+1)*sizeof(char));
> +  strcpy(buff, Tcl_GetStringFromObj(objv[2],NULL));
> +  p_ch = strtok_r(buff, " \t",&last);
> +  while (p_ch && (i < 2)) 
> +  {    
> +    entry = strtol(p_ch, NULL, 0);
> +    if (entry > 0xffffffffffffffffULL )
> +    {
> +      printf("Error: wrong format or out of range value for expected uint64_t entry: %s\n", p_ch);
> +      return TCL_ERROR;
> +    }
> +    entrys[i++] = entry;
> +    p_ch = strtok_r(NULL, " \t", &last);
> +  }
> +  for (; i < 2; i++) entrys[i] = 0;
> +
> +  free(buff);
> +  _arg1 = entrys;
> +}
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (uint64_array_t *)madServiceRec_service_data64_set(_arg0,_arg1);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  int i;
> +  char buff[20];
> +  for (i=0; i <2 ; i++) {
> +    sprintf(buff, "0x%016" PRIx64 " ", *(_result+i));
> +    Tcl_AppendResult(interp, buff, NULL);
> +  }
> +}
> +    return TCL_OK;
> +}
> +#define madServiceRec_service_data64_get(_swigobj) ((uint64_array_t *) _swigobj->service_data64)
> +static int _wrap_madServiceRec_service_data64_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    uint64_array_t * _result;
> +    madServiceRec * _arg0;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 2) || (objc > 2)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madServiceRec_service_data64_get { madServiceRec * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madServiceRec_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madServiceRec_service_data64_get. Expected _madServiceRec_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (uint64_array_t *)madServiceRec_service_data64_get(_arg0);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  int i;
> +  char buff[20];
> +  for (i=0; i <2 ; i++) {
> +    sprintf(buff, "0x%016" PRIx64 " ", *(_result+i));
> +    Tcl_AppendResult(interp, buff, NULL);
> +  }
> +}
> +    return TCL_OK;
> +}
> +static int  madServiceRec_send_set(madServiceRec *self,IBMSNode * pFromNode,uint8_t  fromPort,uint16_t  destLid,uint64_t  comp_mask) {
> +      return( send_sa_mad(
> +                pFromNode, 
> +                fromPort, 
> +                destLid,
> +                IB_MCLASS_SUBN_ADM,
> +                IB_MAD_METHOD_SET,
> +                cl_ntoh16(IB_MAD_ATTR_SERVICE_RECORD),
> +                comp_mask,
> +                (uint8_t*)self,
> +                sizeof(madServiceRec)
> +                )
> +              );
> +    }
> +static int _wrap_madServiceRec_send_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    int  _result;
> +    madServiceRec * _arg0;
> +    IBMSNode * _arg1;
> +    uint8_t * _arg2;
> +    uint16_t * _arg3;
> +    uint64_t * _arg4;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +    uint8_t  temp;
> +    uint16_t  temp0;
> +    uint64_t  temp1;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 6) || (objc > 6)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madServiceRec_send_set { madServiceRec * } pFromNode fromPort destLid comp_mask ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madServiceRec_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madServiceRec_send_set. Expected _madServiceRec_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{
> +  
> +  void *ptr;
> +  if (ibmsGetSimNodePtrByTclName(objv[2], &ptr) != TCL_OK) {
> +	 char err[128];
> +	 sprintf(err, "-E- fail to find ibdm obj by id:%s",Tcl_GetString(objv[2]) );
> +	 // Tcl_SetStringObj(tcl_result, err, strlen(err));
> +	 return TCL_ERROR;	 
> +  }
> +	 
> +  _arg1 = (IBMSNode *)ptr;
> +}
> +{
> +  /* the format is always: <type>:<idx>[:<name>] */
> +  
> +  // get the type from the given source 
> +  char buf[128];
> +  strcpy(buf, Tcl_GetStringFromObj(objv[2],0));
> +  char *colonIdx = index(buf,':');
> +  if (!colonIdx) {
> +	 char err[128];
> +	 sprintf(err, "-E- Bad formatted ibdm object:%s", buf);
> +	 Tcl_SetStringObj(tcl_result, err, strlen(err));
> +	 return TCL_ERROR;
> +  }
> +  *colonIdx = '\0';
> +
> +  if (!strcmp("IBMSNode ", "IBMSNode ")) {
> +    if (strcmp(buf, "simnode")) {
> +      char err[256];
> +      sprintf(err, "-E- basetype is IBMSNode  but received obj of type %s", buf);
> +      Tcl_SetStringObj(tcl_result, err, strlen(err));
> +      return TCL_ERROR;	 
> +    }
> +  } else {
> +	 char err[256];
> +	 sprintf(err, "-E- basetype 'IBMSNode ' is unknown");
> +	 Tcl_SetStringObj(tcl_result, err, strlen(err));
> +	 return TCL_ERROR;	 
> +  }
> +}
> +{
> +  temp = strtoul(Tcl_GetStringFromObj(objv[3],NULL), NULL, 0);
> +  _arg2 = &temp;
> +}
> +{
> +  temp0 = strtoul(Tcl_GetStringFromObj(objv[4],NULL), NULL, 0);
> +  _arg3 = &temp0;
> +}
> +{
> +  temp1 = strtoull(Tcl_GetStringFromObj(objv[5],NULL), NULL,16);
> +  _arg4 = &temp1;
> +}
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (int )madServiceRec_send_set(_arg0,_arg1,*_arg2,*_arg3,*_arg4);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +    Tcl_SetIntObj(tcl_result,(long) _result);
> +    return TCL_OK;
> +}
> +static int  madServiceRec_send_get(madServiceRec *self,IBMSNode * pFromNode,uint8_t  fromPort,uint16_t  destLid,uint64_t  comp_mask) {
> +      return( send_sa_mad(
> +                pFromNode, 
> +                fromPort, 
> +                destLid,
> +                IB_MCLASS_SUBN_ADM,
> +                IB_MAD_METHOD_GET,
> +                cl_ntoh16(IB_MAD_ATTR_SERVICE_RECORD),
> +                comp_mask,
> +                (uint8_t*)self,
> +                sizeof(madServiceRec)
> +                )
> +              );
> +    }
> +static int _wrap_madServiceRec_send_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    int  _result;
> +    madServiceRec * _arg0;
> +    IBMSNode * _arg1;
> +    uint8_t * _arg2;
> +    uint16_t * _arg3;
> +    uint64_t * _arg4;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +    uint8_t  temp;
> +    uint16_t  temp0;
> +    uint64_t  temp1;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 6) || (objc > 6)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madServiceRec_send_get { madServiceRec * } pFromNode fromPort destLid comp_mask ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madServiceRec_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madServiceRec_send_get. Expected _madServiceRec_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{
> +  
> +  void *ptr;
> +  if (ibmsGetSimNodePtrByTclName(objv[2], &ptr) != TCL_OK) {
> +	 char err[128];
> +	 sprintf(err, "-E- fail to find ibdm obj by id:%s",Tcl_GetString(objv[2]) );
> +	 // Tcl_SetStringObj(tcl_result, err, strlen(err));
> +	 return TCL_ERROR;	 
> +  }
> +	 
> +  _arg1 = (IBMSNode *)ptr;
> +}
> +{
> +  /* the format is always: <type>:<idx>[:<name>] */
> +  
> +  // get the type from the given source 
> +  char buf[128];
> +  strcpy(buf, Tcl_GetStringFromObj(objv[2],0));
> +  char *colonIdx = index(buf,':');
> +  if (!colonIdx) {
> +	 char err[128];
> +	 sprintf(err, "-E- Bad formatted ibdm object:%s", buf);
> +	 Tcl_SetStringObj(tcl_result, err, strlen(err));
> +	 return TCL_ERROR;
> +  }
> +  *colonIdx = '\0';
> +
> +  if (!strcmp("IBMSNode ", "IBMSNode ")) {
> +    if (strcmp(buf, "simnode")) {
> +      char err[256];
> +      sprintf(err, "-E- basetype is IBMSNode  but received obj of type %s", buf);
> +      Tcl_SetStringObj(tcl_result, err, strlen(err));
> +      return TCL_ERROR;	 
> +    }
> +  } else {
> +	 char err[256];
> +	 sprintf(err, "-E- basetype 'IBMSNode ' is unknown");
> +	 Tcl_SetStringObj(tcl_result, err, strlen(err));
> +	 return TCL_ERROR;	 
> +  }
> +}
> +{
> +  temp = strtoul(Tcl_GetStringFromObj(objv[3],NULL), NULL, 0);
> +  _arg2 = &temp;
> +}
> +{
> +  temp0 = strtoul(Tcl_GetStringFromObj(objv[4],NULL), NULL, 0);
> +  _arg3 = &temp0;
> +}
> +{
> +  temp1 = strtoull(Tcl_GetStringFromObj(objv[5],NULL), NULL,16);
> +  _arg4 = &temp1;
> +}
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (int )madServiceRec_send_get(_arg0,_arg1,*_arg2,*_arg3,*_arg4);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +    Tcl_SetIntObj(tcl_result,(long) _result);
> +    return TCL_OK;
> +}
> +static int  madServiceRec_send_del(madServiceRec *self,IBMSNode * pFromNode,uint8_t  fromPort,uint16_t  destLid,uint64_t  comp_mask) {
> +      return( send_sa_mad(
> +                pFromNode, 
> +                fromPort, 
> +                destLid,
> +                IB_MCLASS_SUBN_ADM,
> +                IB_MAD_METHOD_DELETE,
> +                cl_ntoh16(IB_MAD_ATTR_SERVICE_RECORD),
> +                comp_mask,
> +                (uint8_t*)self,
> +                sizeof(madServiceRec)
> +                )
> +              );
> +    }
> +static int _wrap_madServiceRec_send_del(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    int  _result;
> +    madServiceRec * _arg0;
> +    IBMSNode * _arg1;
> +    uint8_t * _arg2;
> +    uint16_t * _arg3;
> +    uint64_t * _arg4;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +    uint8_t  temp;
> +    uint16_t  temp0;
> +    uint64_t  temp1;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 6) || (objc > 6)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madServiceRec_send_del { madServiceRec * } pFromNode fromPort destLid comp_mask ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madServiceRec_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madServiceRec_send_del. Expected _madServiceRec_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{
> +  
> +  void *ptr;
> +  if (ibmsGetSimNodePtrByTclName(objv[2], &ptr) != TCL_OK) {
> +	 char err[128];
> +	 sprintf(err, "-E- fail to find ibdm obj by id:%s",Tcl_GetString(objv[2]) );
> +	 // Tcl_SetStringObj(tcl_result, err, strlen(err));
> +	 return TCL_ERROR;	 
> +  }
> +	 
> +  _arg1 = (IBMSNode *)ptr;
> +}
> +{
> +  /* the format is always: <type>:<idx>[:<name>] */
> +  
> +  // get the type from the given source 
> +  char buf[128];
> +  strcpy(buf, Tcl_GetStringFromObj(objv[2],0));
> +  char *colonIdx = index(buf,':');
> +  if (!colonIdx) {
> +	 char err[128];
> +	 sprintf(err, "-E- Bad formatted ibdm object:%s", buf);
> +	 Tcl_SetStringObj(tcl_result, err, strlen(err));
> +	 return TCL_ERROR;
> +  }
> +  *colonIdx = '\0';
> +
> +  if (!strcmp("IBMSNode ", "IBMSNode ")) {
> +    if (strcmp(buf, "simnode")) {
> +      char err[256];
> +      sprintf(err, "-E- basetype is IBMSNode  but received obj of type %s", buf);
> +      Tcl_SetStringObj(tcl_result, err, strlen(err));
> +      return TCL_ERROR;	 
> +    }
> +  } else {
> +	 char err[256];
> +	 sprintf(err, "-E- basetype 'IBMSNode ' is unknown");
> +	 Tcl_SetStringObj(tcl_result, err, strlen(err));
> +	 return TCL_ERROR;	 
> +  }
> +}
> +{
> +  temp = strtoul(Tcl_GetStringFromObj(objv[3],NULL), NULL, 0);
> +  _arg2 = &temp;
> +}
> +{
> +  temp0 = strtoul(Tcl_GetStringFromObj(objv[4],NULL), NULL, 0);
> +  _arg3 = &temp0;
> +}
> +{
> +  temp1 = strtoull(Tcl_GetStringFromObj(objv[5],NULL), NULL,16);
> +  _arg4 = &temp1;
> +}
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (int )madServiceRec_send_del(_arg0,_arg1,*_arg2,*_arg3,*_arg4);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +    Tcl_SetIntObj(tcl_result,(long) _result);
> +    return TCL_OK;
> +}
> +/* delcmd.swg : Tcl object deletion method */
> +
> +static void TclDeletemadServiceRec(ClientData clientData) {
> +    delete_madServiceRec((madServiceRec *) clientData);
> +}
> +
> +/* methodcmd8.swg : Tcl8.x method invocation */
> +
> +static int TclmadServiceRecMethodCmd(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST _objv[]) {
> +  int (*cmd)(ClientData, Tcl_Interp *, int, Tcl_Obj *CONST*) = 0;
> +  char *_str;
> +  int rcode;
> +  Tcl_Obj **objv;
> +  Tcl_Obj *oldarg,*tcl_result,*obj;
> +  int length;
> +  char c;
> +
> +  tcl_result = Tcl_GetObjResult(interp);
> +  objv = (Tcl_Obj **) _objv; 
> +  if (objc < 2) {
> +    Tcl_SetStringObj(tcl_result,"madServiceRec methods : { dump cget configure send_set send_get send_del  }",-1);
> +    return TCL_ERROR;
> +  }
> +  obj = Tcl_NewObj();
> +  SWIG_SetPointerObj(obj,(void *) clientData,"_madServiceRec_p");
> +  _str = Tcl_GetStringFromObj(objv[1],&length);
> +  c = *_str;
> +  if (0);
> +      if (strcmp(_str,"send_set") == 0) {
> +        cmd = _wrap_madServiceRec_send_set;
> +    }    else if (strcmp(_str,"send_get") == 0) {
> +        cmd = _wrap_madServiceRec_send_get;
> +    }    else if (strcmp(_str,"send_del") == 0) {
> +        cmd = _wrap_madServiceRec_send_del;
> +    }
> +    else if ((c == 'c') && (strncmp(_str,"configure",length) == 0) && (length >= 2)) {
> +      int i = 2;
> +      cmd = 0;
> +      while (i+1 < objc) {
> +        _str = Tcl_GetStringFromObj(objv[i],&length);
> +                        if (strcmp(_str,"-service_id") == 0) {
> +                    cmd = _wrap_madServiceRec_service_id_set;
> +                }  else if (strcmp(_str,"-service_gid") == 0) {
> +                    cmd = _wrap_madServiceRec_service_gid_set;
> +                }  else if (strcmp(_str,"-service_pkey") == 0) {
> +                    cmd = _wrap_madServiceRec_service_pkey_set;
> +                }  else if (strcmp(_str,"-resv") == 0) {
> +                    cmd = _wrap_madServiceRec_resv_set;
> +                }  else if (strcmp(_str,"-service_lease") == 0) {
> +                    cmd = _wrap_madServiceRec_service_lease_set;
> +                }  else if (strcmp(_str,"-service_key") == 0) {
> +                    cmd = _wrap_madServiceRec_service_key_set;
> +                }  else if (strcmp(_str,"-service_name") == 0) {
> +                    cmd = _wrap_madServiceRec_service_name_set;
> +                }  else if (strcmp(_str,"-service_data8") == 0) {
> +                    cmd = _wrap_madServiceRec_service_data8_set;
> +                }  else if (strcmp(_str,"-service_data16") == 0) {
> +                    cmd = _wrap_madServiceRec_service_data16_set;
> +                }  else if (strcmp(_str,"-service_data32") == 0) {
> +                    cmd = _wrap_madServiceRec_service_data32_set;
> +                }  else if (strcmp(_str,"-service_data64") == 0) {
> +                    cmd = _wrap_madServiceRec_service_data64_set;
> +                } 
> +          if (cmd) {
> +            oldarg = objv[i];
> +            objv[i] = obj;
> +            rcode = (*cmd)(clientData,interp,3,&objv[i-1]);
> +            objv[i] = oldarg;
> +            if (rcode == TCL_ERROR) return rcode;
> +            cmd = 0;
> +          } else {
> +            Tcl_SetStringObj(tcl_result,"Invalid configure option. Must be { -service_id -service_gid -service_pkey -resv -service_lease -service_key -service_name -service_data8 -service_data16 -service_data32 -service_data64  }",-1);
> +            return TCL_ERROR;
> +          }
> +        i+=2;
> +      }
> +      if ((i < objc) || (i == 2)) {
> +        Tcl_SetStringObj(tcl_result,"{ -service_id -service_gid -service_pkey -resv -service_lease -service_key -service_name -service_data8 -service_data16 -service_data32 -service_data64  }",-1);
> +        return TCL_ERROR;
> +      }
> +      return TCL_OK;
> +    } else if ((c == 'c') && (strncmp(_str,"cget",length) == 0) && (length >= 2)) {
> +      if (objc == 3) {
> +        _str = Tcl_GetStringFromObj(objv[2],&length);
> +        if (0) {}
> +                        if (strcmp(_str,"-service_id") == 0) {
> +                    cmd = _wrap_madServiceRec_service_id_get;
> +                }  else if (strcmp(_str,"-service_gid") == 0) {
> +                    cmd = _wrap_madServiceRec_service_gid_get;
> +                }  else if (strcmp(_str,"-service_pkey") == 0) {
> +                    cmd = _wrap_madServiceRec_service_pkey_get;
> +                }  else if (strcmp(_str,"-resv") == 0) {
> +                    cmd = _wrap_madServiceRec_resv_get;
> +                }  else if (strcmp(_str,"-service_lease") == 0) {
> +                    cmd = _wrap_madServiceRec_service_lease_get;
> +                }  else if (strcmp(_str,"-service_key") == 0) {
> +                    cmd = _wrap_madServiceRec_service_key_get;
> +                }  else if (strcmp(_str,"-service_name") == 0) {
> +                    cmd = _wrap_madServiceRec_service_name_get;
> +                }  else if (strcmp(_str,"-service_data8") == 0) {
> +                    cmd = _wrap_madServiceRec_service_data8_get;
> +                }  else if (strcmp(_str,"-service_data16") == 0) {
> +                    cmd = _wrap_madServiceRec_service_data16_get;
> +                }  else if (strcmp(_str,"-service_data32") == 0) {
> +                    cmd = _wrap_madServiceRec_service_data32_get;
> +                }  else if (strcmp(_str,"-service_data64") == 0) {
> +                    cmd = _wrap_madServiceRec_service_data64_get;
> +                } 
> +          else if (strcmp(_str,"-this") == 0) {
> +            SWIG_SetPointerObj(tcl_result,(void *) clientData, "_madServiceRec_p");
> +            return TCL_OK;
> +          }
> +        if (cmd) {
> +          oldarg = objv[2];
> +          objv[2] = obj;
> +          rcode = (*cmd)(clientData,interp,objc-1,&objv[1]);
> +          objv[2] = oldarg;
> +          return rcode;
> +        } else {
> +          Tcl_SetStringObj(tcl_result,"Invalid cget option. Must be { -this -service_id -service_gid -service_pkey -resv -service_lease -service_key -service_name -service_data8 -service_data16 -service_data32 -service_data64  }",-1);
> +          return TCL_ERROR;
> +        }
> +      } else {
> +        Tcl_SetStringObj(tcl_result,"{ -this -service_id -service_gid -service_pkey -resv -service_lease -service_key -service_name -service_data8 -service_data16 -service_data32 -service_data64  }", -1);
> +        return TCL_ERROR;
> +      }
> +    } else if ((c == 'd') && (strncmp(_str,"dump",length) == 0) && (length >= 2)) {
> +      if (objc == 2) {
> +        Tcl_Obj *pDumpObj;
> +        pDumpObj = Tcl_NewStringObj("",-1);
> +        Tcl_IncrRefCount(pDumpObj);
> +                cmd = _wrap_madServiceRec_service_id_get;
> +        oldarg = objv[2];
> +        objv[2] = obj;
> +        rcode = (*cmd)(clientData,interp,objc,&objv[1]);
> +        objv[2] = oldarg;
> +        Tcl_AppendStringsToObj(pDumpObj, "-service_id ", Tcl_GetStringFromObj(tcl_result, NULL), " ", NULL);
> +        Tcl_SetStringObj(tcl_result, Tcl_GetStringFromObj(pDumpObj, NULL), -1);
> +        cmd = _wrap_madServiceRec_service_gid_get;
> +        oldarg = objv[2];
> +        objv[2] = obj;
> +        rcode = (*cmd)(clientData,interp,objc,&objv[1]);
> +        objv[2] = oldarg;
> +        Tcl_AppendStringsToObj(pDumpObj, "-service_gid ", Tcl_GetStringFromObj(tcl_result, NULL), " ", NULL);
> +        Tcl_SetStringObj(tcl_result, Tcl_GetStringFromObj(pDumpObj, NULL), -1);
> +        cmd = _wrap_madServiceRec_service_pkey_get;
> +        oldarg = objv[2];
> +        objv[2] = obj;
> +        rcode = (*cmd)(clientData,interp,objc,&objv[1]);
> +        objv[2] = oldarg;
> +        Tcl_AppendStringsToObj(pDumpObj, "-service_pkey ", Tcl_GetStringFromObj(tcl_result, NULL), " ", NULL);
> +        Tcl_SetStringObj(tcl_result, Tcl_GetStringFromObj(pDumpObj, NULL), -1);
> +        cmd = _wrap_madServiceRec_resv_get;
> +        oldarg = objv[2];
> +        objv[2] = obj;
> +        rcode = (*cmd)(clientData,interp,objc,&objv[1]);
> +        objv[2] = oldarg;
> +        Tcl_AppendStringsToObj(pDumpObj, "-resv ", Tcl_GetStringFromObj(tcl_result, NULL), " ", NULL);
> +        Tcl_SetStringObj(tcl_result, Tcl_GetStringFromObj(pDumpObj, NULL), -1);
> +        cmd = _wrap_madServiceRec_service_lease_get;
> +        oldarg = objv[2];
> +        objv[2] = obj;
> +        rcode = (*cmd)(clientData,interp,objc,&objv[1]);
> +        objv[2] = oldarg;
> +        Tcl_AppendStringsToObj(pDumpObj, "-service_lease ", Tcl_GetStringFromObj(tcl_result, NULL), " ", NULL);
> +        Tcl_SetStringObj(tcl_result, Tcl_GetStringFromObj(pDumpObj, NULL), -1);
> +        cmd = _wrap_madServiceRec_service_key_get;
> +        oldarg = objv[2];
> +        objv[2] = obj;
> +        rcode = (*cmd)(clientData,interp,objc,&objv[1]);
> +        objv[2] = oldarg;
> +        Tcl_AppendStringsToObj(pDumpObj, "-service_key ", Tcl_GetStringFromObj(tcl_result, NULL), " ", NULL);
> +        Tcl_SetStringObj(tcl_result, Tcl_GetStringFromObj(pDumpObj, NULL), -1);
> +        cmd = _wrap_madServiceRec_service_name_get;
> +        oldarg = objv[2];
> +        objv[2] = obj;
> +        rcode = (*cmd)(clientData,interp,objc,&objv[1]);
> +        objv[2] = oldarg;
> +        Tcl_AppendStringsToObj(pDumpObj, "-service_name ", Tcl_GetStringFromObj(tcl_result, NULL), " ", NULL);
> +        Tcl_SetStringObj(tcl_result, Tcl_GetStringFromObj(pDumpObj, NULL), -1);
> +        cmd = _wrap_madServiceRec_service_data8_get;
> +        oldarg = objv[2];
> +        objv[2] = obj;
> +        rcode = (*cmd)(clientData,interp,objc,&objv[1]);
> +        objv[2] = oldarg;
> +        Tcl_AppendStringsToObj(pDumpObj, "-service_data8 ", Tcl_GetStringFromObj(tcl_result, NULL), " ", NULL);
> +        Tcl_SetStringObj(tcl_result, Tcl_GetStringFromObj(pDumpObj, NULL), -1);
> +        cmd = _wrap_madServiceRec_service_data16_get;
> +        oldarg = objv[2];
> +        objv[2] = obj;
> +        rcode = (*cmd)(clientData,interp,objc,&objv[1]);
> +        objv[2] = oldarg;
> +        Tcl_AppendStringsToObj(pDumpObj, "-service_data16 ", Tcl_GetStringFromObj(tcl_result, NULL), " ", NULL);
> +        Tcl_SetStringObj(tcl_result, Tcl_GetStringFromObj(pDumpObj, NULL), -1);
> +        cmd = _wrap_madServiceRec_service_data32_get;
> +        oldarg = objv[2];
> +        objv[2] = obj;
> +        rcode = (*cmd)(clientData,interp,objc,&objv[1]);
> +        objv[2] = oldarg;
> +        Tcl_AppendStringsToObj(pDumpObj, "-service_data32 ", Tcl_GetStringFromObj(tcl_result, NULL), " ", NULL);
> +        Tcl_SetStringObj(tcl_result, Tcl_GetStringFromObj(pDumpObj, NULL), -1);
> +        cmd = _wrap_madServiceRec_service_data64_get;
> +        oldarg = objv[2];
> +        objv[2] = obj;
> +        rcode = (*cmd)(clientData,interp,objc,&objv[1]);
> +        objv[2] = oldarg;
> +        Tcl_AppendStringsToObj(pDumpObj, "-service_data64 ", Tcl_GetStringFromObj(tcl_result, NULL), " ", NULL);
> +        Tcl_SetStringObj(tcl_result, Tcl_GetStringFromObj(pDumpObj, NULL), -1);
> +
> +        Tcl_DecrRefCount(pDumpObj);
> +        return TCL_OK;
> +      } else {
> +        Tcl_SetStringObj(tcl_result,"no parameters are allowed for dump", -1);
> +        return TCL_ERROR;
> +      }
> +    }
> +  if (!cmd) {
> +    Tcl_SetStringObj(tcl_result,"Invalid Method. Must be { dump cget configure send_set send_get send_del }",-1);
> +    return TCL_ERROR;
> +  }
> +  oldarg = objv[1];
> +  objv[1] = obj;
> +  rcode = (*cmd)(clientData,interp,objc,objv);
> +  objv[1] = oldarg;
> +  return rcode;
> +}
> +
> +
> +
> +/* objcmd8.swg : Tcl 8.x object creation */
> +
> +static int TclmadServiceRecCmd(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +    void (*del)(ClientData) = 0;
> +    char *name = 0;
> +    int (*cmd)(ClientData, Tcl_Interp *, int, Tcl_Obj *CONST*) = 0;
> +    madServiceRec * newObj = 0;
> +    int firstarg = 0;
> +    int thisarg = 0;
> +    int length;
> +    char *_str;
> +    Tcl_Obj *tcl_result;
> +
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if (objc == 1) {
> +        cmd = _wrap_new_madServiceRec;
> +    } else {
> +      _str = Tcl_GetStringFromObj(objv[1],&length);
> +      if (strcmp(_str,"-this") == 0) thisarg = 2;
> +      else if (strcmp(_str,"-args") == 0) {
> +	firstarg = 1;
> +	cmd = _wrap_new_madServiceRec;
> +      } else if (objc == 2) {
> +	firstarg = 1;
> +	name = _str;
> +	cmd = _wrap_new_madServiceRec;
> +      } else if (objc >= 3) {
> +	name = _str;
> +	_str = Tcl_GetStringFromObj(objv[2],&length);
> +	if (strcmp(_str,"-this") == 0) thisarg = 3;
> +	else {
> +	  firstarg = 1;
> +	  cmd = _wrap_new_madServiceRec;
> +	}
> +      }
> +    }
> +    if (cmd) {
> +        int result;
> +        result = (*cmd)(clientData,interp,objc-firstarg,&objv[firstarg]);
> +        if (result == TCL_OK) {
> +            SWIG_GetPointerObj(interp,tcl_result,(void **) &newObj,"_madServiceRec_p");
> +        } else { return result; }
> +        if (!name) name = Tcl_GetStringFromObj(tcl_result,&length);
> +        del = TclDeletemadServiceRec;
> +    } else if (thisarg > 0) { 
> +        if (thisarg < objc) {
> +            char *r;
> +            r = SWIG_GetPointerObj(interp,objv[thisarg],(void **) &newObj,"_madServiceRec_p");
> +            if (r) {
> +	      Tcl_SetStringObj(tcl_result,"Type error. not a madServiceRec object.",-1);
> +	      return TCL_ERROR;
> +            }
> +        if (!name) name = Tcl_GetStringFromObj(objv[thisarg],&length);
> +	Tcl_SetStringObj(tcl_result,name,-1);
> +        } else {
> +            Tcl_SetStringObj(tcl_result,"wrong # args.",-1);
> +            return TCL_ERROR;
> +        }
> +    } else {
> +        Tcl_SetStringObj(tcl_result,"No constructor available.",-1);
> +        return TCL_ERROR;
> +    }
> +    {
> +      Tcl_CmdInfo dummy;
> +      if (!Tcl_GetCommandInfo(interp,name,&dummy)) {
> +	Tcl_CreateObjCommand(interp,name, TclmadServiceRecMethodCmd, (ClientData) newObj, del);
> +	return TCL_OK;
> +      } else {
> +	Tcl_SetStringObj(tcl_result,"Object name already exists!",-1);
> +	return TCL_ERROR;
> +      }
> +    }
> +}
> +
> +
> +#define new_madNotice128() (new madNotice128())
> +static int _wrap_new_madNotice128(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    madNotice128 * _result;
> +    Tcl_Obj * tcl_result;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 1) || (objc > 1)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. new_madNotice128 ",-1);
> +        return TCL_ERROR;
> +    }
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (madNotice128 *)new_madNotice128();
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +    SWIG_SetPointerObj(tcl_result,(void *) _result,"_madNotice128_p");
> +    return TCL_OK;
> +}
> +#define delete_madNotice128(_swigobj) (delete _swigobj)
> +static int _wrap_delete_madNotice128(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    madNotice128 * _arg0;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 2) || (objc > 2)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. delete_madNotice128 { madNotice128 * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madNotice128_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of delete_madNotice128. Expected _madNotice128_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{ 
> +  ibms_tcl_error = 0;
> +      delete_madNotice128(_arg0);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +    return TCL_OK;
> +}
> +#define madNotice128_generic_type_set(_swigobj,_swigval) (_swigobj->generic_type = *(_swigval),_swigval)
> +static int _wrap_madNotice128_generic_type_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    uint8_t * _result;
> +    madNotice128 * _arg0;
> +    uint8_t * _arg1;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +    uint8_t  temp;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 3) || (objc > 3)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madNotice128_generic_type_set { madNotice128 * } { uint8_t * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madNotice128_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madNotice128_generic_type_set. Expected _madNotice128_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{
> +  temp = strtoul(Tcl_GetStringFromObj(objv[2],NULL), NULL, 0);
> +  _arg1 = &temp;
> +}
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (uint8_t *)madNotice128_generic_type_set(_arg0,_arg1);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", *_result);
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madNotice128_generic_type_get(_swigobj) (&_swigobj->generic_type)
> +static int _wrap_madNotice128_generic_type_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    uint8_t * _result;
> +    madNotice128 * _arg0;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 2) || (objc > 2)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madNotice128_generic_type_get { madNotice128 * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madNotice128_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madNotice128_generic_type_get. Expected _madNotice128_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (uint8_t *)madNotice128_generic_type_get(_arg0);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", *_result);
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madNotice128_prod_type_msb_set(_swigobj,_swigval) (_swigobj->prod_type_msb = *(_swigval),_swigval)
> +static int _wrap_madNotice128_prod_type_msb_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    uint8_t * _result;
> +    madNotice128 * _arg0;
> +    uint8_t * _arg1;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +    uint8_t  temp;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 3) || (objc > 3)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madNotice128_prod_type_msb_set { madNotice128 * } { uint8_t * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madNotice128_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madNotice128_prod_type_msb_set. Expected _madNotice128_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{
> +  temp = strtoul(Tcl_GetStringFromObj(objv[2],NULL), NULL, 0);
> +  _arg1 = &temp;
> +}
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (uint8_t *)madNotice128_prod_type_msb_set(_arg0,_arg1);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", *_result);
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madNotice128_prod_type_msb_get(_swigobj) (&_swigobj->prod_type_msb)
> +static int _wrap_madNotice128_prod_type_msb_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    uint8_t * _result;
> +    madNotice128 * _arg0;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 2) || (objc > 2)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madNotice128_prod_type_msb_get { madNotice128 * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madNotice128_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madNotice128_prod_type_msb_get. Expected _madNotice128_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (uint8_t *)madNotice128_prod_type_msb_get(_arg0);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", *_result);
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madNotice128_prod_type_lsb_set(_swigobj,_swigval) (_swigobj->prod_type_lsb = *(_swigval),_swigval)
> +static int _wrap_madNotice128_prod_type_lsb_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    ib_net16_t * _result;
> +    madNotice128 * _arg0;
> +    ib_net16_t * _arg1;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +    ib_net16_t  temp;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 3) || (objc > 3)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madNotice128_prod_type_lsb_set { madNotice128 * } { ib_net16_t * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madNotice128_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madNotice128_prod_type_lsb_set. Expected _madNotice128_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{
> +  temp = cl_hton16(atoi(Tcl_GetStringFromObj(objv[2],NULL)));
> +  _arg1 = &temp;
> +}
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (ib_net16_t *)madNotice128_prod_type_lsb_set(_arg0,_arg1);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", cl_hton16(*_result));
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madNotice128_prod_type_lsb_get(_swigobj) (&_swigobj->prod_type_lsb)
> +static int _wrap_madNotice128_prod_type_lsb_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    ib_net16_t * _result;
> +    madNotice128 * _arg0;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 2) || (objc > 2)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madNotice128_prod_type_lsb_get { madNotice128 * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madNotice128_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madNotice128_prod_type_lsb_get. Expected _madNotice128_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (ib_net16_t *)madNotice128_prod_type_lsb_get(_arg0);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", cl_hton16(*_result));
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madNotice128_trap_num_set(_swigobj,_swigval) (_swigobj->trap_num = *(_swigval),_swigval)
> +static int _wrap_madNotice128_trap_num_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    ib_net16_t * _result;
> +    madNotice128 * _arg0;
> +    ib_net16_t * _arg1;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +    ib_net16_t  temp;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 3) || (objc > 3)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madNotice128_trap_num_set { madNotice128 * } { ib_net16_t * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madNotice128_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madNotice128_trap_num_set. Expected _madNotice128_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{
> +  temp = cl_hton16(atoi(Tcl_GetStringFromObj(objv[2],NULL)));
> +  _arg1 = &temp;
> +}
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (ib_net16_t *)madNotice128_trap_num_set(_arg0,_arg1);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", cl_hton16(*_result));
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madNotice128_trap_num_get(_swigobj) (&_swigobj->trap_num)
> +static int _wrap_madNotice128_trap_num_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    ib_net16_t * _result;
> +    madNotice128 * _arg0;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 2) || (objc > 2)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madNotice128_trap_num_get { madNotice128 * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madNotice128_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madNotice128_trap_num_get. Expected _madNotice128_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (ib_net16_t *)madNotice128_trap_num_get(_arg0);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", cl_hton16(*_result));
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madNotice128_issuer_lid_set(_swigobj,_swigval) (_swigobj->issuer_lid = *(_swigval),_swigval)
> +static int _wrap_madNotice128_issuer_lid_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    ib_net16_t * _result;
> +    madNotice128 * _arg0;
> +    ib_net16_t * _arg1;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +    ib_net16_t  temp;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 3) || (objc > 3)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madNotice128_issuer_lid_set { madNotice128 * } { ib_net16_t * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madNotice128_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madNotice128_issuer_lid_set. Expected _madNotice128_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{
> +  temp = cl_hton16(atoi(Tcl_GetStringFromObj(objv[2],NULL)));
> +  _arg1 = &temp;
> +}
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (ib_net16_t *)madNotice128_issuer_lid_set(_arg0,_arg1);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", cl_hton16(*_result));
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madNotice128_issuer_lid_get(_swigobj) (&_swigobj->issuer_lid)
> +static int _wrap_madNotice128_issuer_lid_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    ib_net16_t * _result;
> +    madNotice128 * _arg0;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 2) || (objc > 2)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madNotice128_issuer_lid_get { madNotice128 * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madNotice128_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madNotice128_issuer_lid_get. Expected _madNotice128_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (ib_net16_t *)madNotice128_issuer_lid_get(_arg0);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", cl_hton16(*_result));
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madNotice128_toggle_count_set(_swigobj,_swigval) (_swigobj->toggle_count = *(_swigval),_swigval)
> +static int _wrap_madNotice128_toggle_count_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    ib_net16_t * _result;
> +    madNotice128 * _arg0;
> +    ib_net16_t * _arg1;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +    ib_net16_t  temp;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 3) || (objc > 3)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madNotice128_toggle_count_set { madNotice128 * } { ib_net16_t * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madNotice128_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madNotice128_toggle_count_set. Expected _madNotice128_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{
> +  temp = cl_hton16(atoi(Tcl_GetStringFromObj(objv[2],NULL)));
> +  _arg1 = &temp;
> +}
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (ib_net16_t *)madNotice128_toggle_count_set(_arg0,_arg1);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", cl_hton16(*_result));
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madNotice128_toggle_count_get(_swigobj) (&_swigobj->toggle_count)
> +static int _wrap_madNotice128_toggle_count_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    ib_net16_t * _result;
> +    madNotice128 * _arg0;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 2) || (objc > 2)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madNotice128_toggle_count_get { madNotice128 * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madNotice128_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madNotice128_toggle_count_get. Expected _madNotice128_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (ib_net16_t *)madNotice128_toggle_count_get(_arg0);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", cl_hton16(*_result));
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madNotice128_sw_lid_set(_swigobj,_swigval) (_swigobj->sw_lid = *(_swigval),_swigval)
> +static int _wrap_madNotice128_sw_lid_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    ib_net16_t * _result;
> +    madNotice128 * _arg0;
> +    ib_net16_t * _arg1;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +    ib_net16_t  temp;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 3) || (objc > 3)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madNotice128_sw_lid_set { madNotice128 * } { ib_net16_t * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madNotice128_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madNotice128_sw_lid_set. Expected _madNotice128_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{
> +  temp = cl_hton16(atoi(Tcl_GetStringFromObj(objv[2],NULL)));
> +  _arg1 = &temp;
> +}
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (ib_net16_t *)madNotice128_sw_lid_set(_arg0,_arg1);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", cl_hton16(*_result));
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madNotice128_sw_lid_get(_swigobj) (&_swigobj->sw_lid)
> +static int _wrap_madNotice128_sw_lid_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    ib_net16_t * _result;
> +    madNotice128 * _arg0;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 2) || (objc > 2)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madNotice128_sw_lid_get { madNotice128 * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madNotice128_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madNotice128_sw_lid_get. Expected _madNotice128_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (ib_net16_t *)madNotice128_sw_lid_get(_arg0);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", cl_hton16(*_result));
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madNotice128_issuer_gid_set(_swigobj,_swigval) (_swigobj->issuer_gid = *(_swigval),_swigval)
> +static int _wrap_madNotice128_issuer_gid_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    ib_gid_t * _result;
> +    madNotice128 * _arg0;
> +    ib_gid_t * _arg1;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +    ib_gid_t  temp;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 3) || (objc > 3)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madNotice128_issuer_gid_set { madNotice128 * } { ib_gid_t * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madNotice128_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madNotice128_issuer_gid_set. Expected _madNotice128_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{
> +  char buf[36];
> +  char *p_prefix, *p_guid;
> +  char *str_token;
> +
> +  strcpy(buf, Tcl_GetStringFromObj(objv[2],NULL));
> +  p_prefix = strtok_r(buf,":", &str_token);
> +  p_guid = strtok_r(NULL, " ", &str_token);
> +  errno = 0;
> +  temp.unicast.prefix = cl_hton64(strtoull(p_prefix, NULL, 16));
> +  if (errno) {
> +    printf("Wrong format for gid prefix:%s\n", p_prefix);
> +    return TCL_ERROR;
> +  }
> +
> +  temp.unicast.interface_id = cl_hton64(strtoull(p_guid, NULL, 16));
> +  if (errno) {
> +    printf("Wrong format for gid guid:%s\n", p_guid);
> +    return TCL_ERROR;
> +  }
> +  
> +  _arg1 = &temp;
> +}
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (ib_gid_t *)madNotice128_issuer_gid_set(_arg0,_arg1);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[36];
> +  sprintf(buff, "0x%016" PRIx64 ":0x%016" PRIx64, 
> +          cl_ntoh64(_result->unicast.prefix), 
> +          cl_ntoh64(_result->unicast.interface_id) 
> +          );
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madNotice128_issuer_gid_get(_swigobj) (&_swigobj->issuer_gid)
> +static int _wrap_madNotice128_issuer_gid_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    ib_gid_t * _result;
> +    madNotice128 * _arg0;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 2) || (objc > 2)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madNotice128_issuer_gid_get { madNotice128 * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madNotice128_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madNotice128_issuer_gid_get. Expected _madNotice128_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (ib_gid_t *)madNotice128_issuer_gid_get(_arg0);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[36];
> +  sprintf(buff, "0x%016" PRIx64 ":0x%016" PRIx64, 
> +          cl_ntoh64(_result->unicast.prefix), 
> +          cl_ntoh64(_result->unicast.interface_id) 
> +          );
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +static int  madNotice128_send_set(madNotice128 *self,IBMSNode * pFromNode,uint8_t  fromPort,uint16_t  destLid) {
> +      return( send_mad(
> +                pFromNode, 
> +                fromPort, 
> +                destLid,
> +                IB_MCLASS_SUBN_LID,
> +                IB_MAD_METHOD_SET,
> +                cl_ntoh16(IB_MAD_ATTR_NOTICE),
> +		0,
> +                (uint8_t*)self,
> +                sizeof(madNotice128)
> +                )
> +              );
> +    }
> +static int _wrap_madNotice128_send_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    int  _result;
> +    madNotice128 * _arg0;
> +    IBMSNode * _arg1;
> +    uint8_t * _arg2;
> +    uint16_t * _arg3;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +    uint8_t  temp;
> +    uint16_t  temp0;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 5) || (objc > 5)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madNotice128_send_set { madNotice128 * } pFromNode fromPort destLid ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madNotice128_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madNotice128_send_set. Expected _madNotice128_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{
> +  
> +  void *ptr;
> +  if (ibmsGetSimNodePtrByTclName(objv[2], &ptr) != TCL_OK) {
> +	 char err[128];
> +	 sprintf(err, "-E- fail to find ibdm obj by id:%s",Tcl_GetString(objv[2]) );
> +	 // Tcl_SetStringObj(tcl_result, err, strlen(err));
> +	 return TCL_ERROR;	 
> +  }
> +	 
> +  _arg1 = (IBMSNode *)ptr;
> +}
> +{
> +  /* the format is always: <type>:<idx>[:<name>] */
> +  
> +  // get the type from the given source 
> +  char buf[128];
> +  strcpy(buf, Tcl_GetStringFromObj(objv[2],0));
> +  char *colonIdx = index(buf,':');
> +  if (!colonIdx) {
> +	 char err[128];
> +	 sprintf(err, "-E- Bad formatted ibdm object:%s", buf);
> +	 Tcl_SetStringObj(tcl_result, err, strlen(err));
> +	 return TCL_ERROR;
> +  }
> +  *colonIdx = '\0';
> +
> +  if (!strcmp("IBMSNode ", "IBMSNode ")) {
> +    if (strcmp(buf, "simnode")) {
> +      char err[256];
> +      sprintf(err, "-E- basetype is IBMSNode  but received obj of type %s", buf);
> +      Tcl_SetStringObj(tcl_result, err, strlen(err));
> +      return TCL_ERROR;	 
> +    }
> +  } else {
> +	 char err[256];
> +	 sprintf(err, "-E- basetype 'IBMSNode ' is unknown");
> +	 Tcl_SetStringObj(tcl_result, err, strlen(err));
> +	 return TCL_ERROR;	 
> +  }
> +}
> +{
> +  temp = strtoul(Tcl_GetStringFromObj(objv[3],NULL), NULL, 0);
> +  _arg2 = &temp;
> +}
> +{
> +  temp0 = strtoul(Tcl_GetStringFromObj(objv[4],NULL), NULL, 0);
> +  _arg3 = &temp0;
> +}
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (int )madNotice128_send_set(_arg0,_arg1,*_arg2,*_arg3);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +    Tcl_SetIntObj(tcl_result,(long) _result);
> +    return TCL_OK;
> +}
> +/* delcmd.swg : Tcl object deletion method */
> +
> +static void TclDeletemadNotice128(ClientData clientData) {
> +    delete_madNotice128((madNotice128 *) clientData);
> +}
> +
> +/* methodcmd8.swg : Tcl8.x method invocation */
> +
> +static int TclmadNotice128MethodCmd(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST _objv[]) {
> +  int (*cmd)(ClientData, Tcl_Interp *, int, Tcl_Obj *CONST*) = 0;
> +  char *_str;
> +  int rcode;
> +  Tcl_Obj **objv;
> +  Tcl_Obj *oldarg,*tcl_result,*obj;
> +  int length;
> +  char c;
> +
> +  tcl_result = Tcl_GetObjResult(interp);
> +  objv = (Tcl_Obj **) _objv; 
> +  if (objc < 2) {
> +    Tcl_SetStringObj(tcl_result,"madNotice128 methods : { dump cget configure send_set  }",-1);
> +    return TCL_ERROR;
> +  }
> +  obj = Tcl_NewObj();
> +  SWIG_SetPointerObj(obj,(void *) clientData,"_madNotice128_p");
> +  _str = Tcl_GetStringFromObj(objv[1],&length);
> +  c = *_str;
> +  if (0);
> +      if (strcmp(_str,"send_set") == 0) {
> +        cmd = _wrap_madNotice128_send_set;
> +    }
> +    else if ((c == 'c') && (strncmp(_str,"configure",length) == 0) && (length >= 2)) {
> +      int i = 2;
> +      cmd = 0;
> +      while (i+1 < objc) {
> +        _str = Tcl_GetStringFromObj(objv[i],&length);
> +                        if (strcmp(_str,"-generic_type") == 0) {
> +                    cmd = _wrap_madNotice128_generic_type_set;
> +                }  else if (strcmp(_str,"-prod_type_msb") == 0) {
> +                    cmd = _wrap_madNotice128_prod_type_msb_set;
> +                }  else if (strcmp(_str,"-prod_type_lsb") == 0) {
> +                    cmd = _wrap_madNotice128_prod_type_lsb_set;
> +                }  else if (strcmp(_str,"-trap_num") == 0) {
> +                    cmd = _wrap_madNotice128_trap_num_set;
> +                }  else if (strcmp(_str,"-issuer_lid") == 0) {
> +                    cmd = _wrap_madNotice128_issuer_lid_set;
> +                }  else if (strcmp(_str,"-toggle_count") == 0) {
> +                    cmd = _wrap_madNotice128_toggle_count_set;
> +                }  else if (strcmp(_str,"-sw_lid") == 0) {
> +                    cmd = _wrap_madNotice128_sw_lid_set;
> +                }  else if (strcmp(_str,"-issuer_gid") == 0) {
> +                    cmd = _wrap_madNotice128_issuer_gid_set;
> +                } 
> +          if (cmd) {
> +            oldarg = objv[i];
> +            objv[i] = obj;
> +            rcode = (*cmd)(clientData,interp,3,&objv[i-1]);
> +            objv[i] = oldarg;
> +            if (rcode == TCL_ERROR) return rcode;
> +            cmd = 0;
> +          } else {
> +            Tcl_SetStringObj(tcl_result,"Invalid configure option. Must be { -generic_type -prod_type_msb -prod_type_lsb -trap_num -issuer_lid -toggle_count -sw_lid -issuer_gid  }",-1);
> +            return TCL_ERROR;
> +          }
> +        i+=2;
> +      }
> +      if ((i < objc) || (i == 2)) {
> +        Tcl_SetStringObj(tcl_result,"{ -generic_type -prod_type_msb -prod_type_lsb -trap_num -issuer_lid -toggle_count -sw_lid -issuer_gid  }",-1);
> +        return TCL_ERROR;
> +      }
> +      return TCL_OK;
> +    } else if ((c == 'c') && (strncmp(_str,"cget",length) == 0) && (length >= 2)) {
> +      if (objc == 3) {
> +        _str = Tcl_GetStringFromObj(objv[2],&length);
> +        if (0) {}
> +                        if (strcmp(_str,"-generic_type") == 0) {
> +                    cmd = _wrap_madNotice128_generic_type_get;
> +                }  else if (strcmp(_str,"-prod_type_msb") == 0) {
> +                    cmd = _wrap_madNotice128_prod_type_msb_get;
> +                }  else if (strcmp(_str,"-prod_type_lsb") == 0) {
> +                    cmd = _wrap_madNotice128_prod_type_lsb_get;
> +                }  else if (strcmp(_str,"-trap_num") == 0) {
> +                    cmd = _wrap_madNotice128_trap_num_get;
> +                }  else if (strcmp(_str,"-issuer_lid") == 0) {
> +                    cmd = _wrap_madNotice128_issuer_lid_get;
> +                }  else if (strcmp(_str,"-toggle_count") == 0) {
> +                    cmd = _wrap_madNotice128_toggle_count_get;
> +                }  else if (strcmp(_str,"-sw_lid") == 0) {
> +                    cmd = _wrap_madNotice128_sw_lid_get;
> +                }  else if (strcmp(_str,"-issuer_gid") == 0) {
> +                    cmd = _wrap_madNotice128_issuer_gid_get;
> +                } 
> +          else if (strcmp(_str,"-this") == 0) {
> +            SWIG_SetPointerObj(tcl_result,(void *) clientData, "_madNotice128_p");
> +            return TCL_OK;
> +          }
> +        if (cmd) {
> +          oldarg = objv[2];
> +          objv[2] = obj;
> +          rcode = (*cmd)(clientData,interp,objc-1,&objv[1]);
> +          objv[2] = oldarg;
> +          return rcode;
> +        } else {
> +          Tcl_SetStringObj(tcl_result,"Invalid cget option. Must be { -this -generic_type -prod_type_msb -prod_type_lsb -trap_num -issuer_lid -toggle_count -sw_lid -issuer_gid  }",-1);
> +          return TCL_ERROR;
> +        }
> +      } else {
> +        Tcl_SetStringObj(tcl_result,"{ -this -generic_type -prod_type_msb -prod_type_lsb -trap_num -issuer_lid -toggle_count -sw_lid -issuer_gid  }", -1);
> +        return TCL_ERROR;
> +      }
> +    } else if ((c == 'd') && (strncmp(_str,"dump",length) == 0) && (length >= 2)) {
> +      if (objc == 2) {
> +        Tcl_Obj *pDumpObj;
> +        pDumpObj = Tcl_NewStringObj("",-1);
> +        Tcl_IncrRefCount(pDumpObj);
> +                cmd = _wrap_madNotice128_generic_type_get;
> +        oldarg = objv[2];
> +        objv[2] = obj;
> +        rcode = (*cmd)(clientData,interp,objc,&objv[1]);
> +        objv[2] = oldarg;
> +        Tcl_AppendStringsToObj(pDumpObj, "-generic_type ", Tcl_GetStringFromObj(tcl_result, NULL), " ", NULL);
> +        Tcl_SetStringObj(tcl_result, Tcl_GetStringFromObj(pDumpObj, NULL), -1);
> +        cmd = _wrap_madNotice128_prod_type_msb_get;
> +        oldarg = objv[2];
> +        objv[2] = obj;
> +        rcode = (*cmd)(clientData,interp,objc,&objv[1]);
> +        objv[2] = oldarg;
> +        Tcl_AppendStringsToObj(pDumpObj, "-prod_type_msb ", Tcl_GetStringFromObj(tcl_result, NULL), " ", NULL);
> +        Tcl_SetStringObj(tcl_result, Tcl_GetStringFromObj(pDumpObj, NULL), -1);
> +        cmd = _wrap_madNotice128_prod_type_lsb_get;
> +        oldarg = objv[2];
> +        objv[2] = obj;
> +        rcode = (*cmd)(clientData,interp,objc,&objv[1]);
> +        objv[2] = oldarg;
> +        Tcl_AppendStringsToObj(pDumpObj, "-prod_type_lsb ", Tcl_GetStringFromObj(tcl_result, NULL), " ", NULL);
> +        Tcl_SetStringObj(tcl_result, Tcl_GetStringFromObj(pDumpObj, NULL), -1);
> +        cmd = _wrap_madNotice128_trap_num_get;
> +        oldarg = objv[2];
> +        objv[2] = obj;
> +        rcode = (*cmd)(clientData,interp,objc,&objv[1]);
> +        objv[2] = oldarg;
> +        Tcl_AppendStringsToObj(pDumpObj, "-trap_num ", Tcl_GetStringFromObj(tcl_result, NULL), " ", NULL);
> +        Tcl_SetStringObj(tcl_result, Tcl_GetStringFromObj(pDumpObj, NULL), -1);
> +        cmd = _wrap_madNotice128_issuer_lid_get;
> +        oldarg = objv[2];
> +        objv[2] = obj;
> +        rcode = (*cmd)(clientData,interp,objc,&objv[1]);
> +        objv[2] = oldarg;
> +        Tcl_AppendStringsToObj(pDumpObj, "-issuer_lid ", Tcl_GetStringFromObj(tcl_result, NULL), " ", NULL);
> +        Tcl_SetStringObj(tcl_result, Tcl_GetStringFromObj(pDumpObj, NULL), -1);
> +        cmd = _wrap_madNotice128_toggle_count_get;
> +        oldarg = objv[2];
> +        objv[2] = obj;
> +        rcode = (*cmd)(clientData,interp,objc,&objv[1]);
> +        objv[2] = oldarg;
> +        Tcl_AppendStringsToObj(pDumpObj, "-toggle_count ", Tcl_GetStringFromObj(tcl_result, NULL), " ", NULL);
> +        Tcl_SetStringObj(tcl_result, Tcl_GetStringFromObj(pDumpObj, NULL), -1);
> +        cmd = _wrap_madNotice128_sw_lid_get;
> +        oldarg = objv[2];
> +        objv[2] = obj;
> +        rcode = (*cmd)(clientData,interp,objc,&objv[1]);
> +        objv[2] = oldarg;
> +        Tcl_AppendStringsToObj(pDumpObj, "-sw_lid ", Tcl_GetStringFromObj(tcl_result, NULL), " ", NULL);
> +        Tcl_SetStringObj(tcl_result, Tcl_GetStringFromObj(pDumpObj, NULL), -1);
> +        cmd = _wrap_madNotice128_issuer_gid_get;
> +        oldarg = objv[2];
> +        objv[2] = obj;
> +        rcode = (*cmd)(clientData,interp,objc,&objv[1]);
> +        objv[2] = oldarg;
> +        Tcl_AppendStringsToObj(pDumpObj, "-issuer_gid ", Tcl_GetStringFromObj(tcl_result, NULL), " ", NULL);
> +        Tcl_SetStringObj(tcl_result, Tcl_GetStringFromObj(pDumpObj, NULL), -1);
> +
> +        Tcl_DecrRefCount(pDumpObj);
> +        return TCL_OK;
> +      } else {
> +        Tcl_SetStringObj(tcl_result,"no parameters are allowed for dump", -1);
> +        return TCL_ERROR;
> +      }
> +    }
> +  if (!cmd) {
> +    Tcl_SetStringObj(tcl_result,"Invalid Method. Must be { dump cget configure send_set }",-1);
> +    return TCL_ERROR;
> +  }
> +  oldarg = objv[1];
> +  objv[1] = obj;
> +  rcode = (*cmd)(clientData,interp,objc,objv);
> +  objv[1] = oldarg;
> +  return rcode;
> +}
> +
> +
> +
> +/* objcmd8.swg : Tcl 8.x object creation */
> +
> +static int TclmadNotice128Cmd(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +    void (*del)(ClientData) = 0;
> +    char *name = 0;
> +    int (*cmd)(ClientData, Tcl_Interp *, int, Tcl_Obj *CONST*) = 0;
> +    madNotice128 * newObj = 0;
> +    int firstarg = 0;
> +    int thisarg = 0;
> +    int length;
> +    char *_str;
> +    Tcl_Obj *tcl_result;
> +
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if (objc == 1) {
> +        cmd = _wrap_new_madNotice128;
> +    } else {
> +      _str = Tcl_GetStringFromObj(objv[1],&length);
> +      if (strcmp(_str,"-this") == 0) thisarg = 2;
> +      else if (strcmp(_str,"-args") == 0) {
> +	firstarg = 1;
> +	cmd = _wrap_new_madNotice128;
> +      } else if (objc == 2) {
> +	firstarg = 1;
> +	name = _str;
> +	cmd = _wrap_new_madNotice128;
> +      } else if (objc >= 3) {
> +	name = _str;
> +	_str = Tcl_GetStringFromObj(objv[2],&length);
> +	if (strcmp(_str,"-this") == 0) thisarg = 3;
> +	else {
> +	  firstarg = 1;
> +	  cmd = _wrap_new_madNotice128;
> +	}
> +      }
> +    }
> +    if (cmd) {
> +        int result;
> +        result = (*cmd)(clientData,interp,objc-firstarg,&objv[firstarg]);
> +        if (result == TCL_OK) {
> +            SWIG_GetPointerObj(interp,tcl_result,(void **) &newObj,"_madNotice128_p");
> +        } else { return result; }
> +        if (!name) name = Tcl_GetStringFromObj(tcl_result,&length);
> +        del = TclDeletemadNotice128;
> +    } else if (thisarg > 0) { 
> +        if (thisarg < objc) {
> +            char *r;
> +            r = SWIG_GetPointerObj(interp,objv[thisarg],(void **) &newObj,"_madNotice128_p");
> +            if (r) {
> +	      Tcl_SetStringObj(tcl_result,"Type error. not a madNotice128 object.",-1);
> +	      return TCL_ERROR;
> +            }
> +        if (!name) name = Tcl_GetStringFromObj(objv[thisarg],&length);
> +	Tcl_SetStringObj(tcl_result,name,-1);
> +        } else {
> +            Tcl_SetStringObj(tcl_result,"wrong # args.",-1);
> +            return TCL_ERROR;
> +        }
> +    } else {
> +        Tcl_SetStringObj(tcl_result,"No constructor available.",-1);
> +        return TCL_ERROR;
> +    }
> +    {
> +      Tcl_CmdInfo dummy;
> +      if (!Tcl_GetCommandInfo(interp,name,&dummy)) {
> +	Tcl_CreateObjCommand(interp,name, TclmadNotice128MethodCmd, (ClientData) newObj, del);
> +	return TCL_OK;
> +      } else {
> +	Tcl_SetStringObj(tcl_result,"Object name already exists!",-1);
> +	return TCL_ERROR;
> +      }
> +    }
> +}
> +
> +
> +#define new_madNotice129() (new madNotice129())
> +static int _wrap_new_madNotice129(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    madNotice129 * _result;
> +    Tcl_Obj * tcl_result;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 1) || (objc > 1)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. new_madNotice129 ",-1);
> +        return TCL_ERROR;
> +    }
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (madNotice129 *)new_madNotice129();
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +    SWIG_SetPointerObj(tcl_result,(void *) _result,"_madNotice129_p");
> +    return TCL_OK;
> +}
> +#define delete_madNotice129(_swigobj) (delete _swigobj)
> +static int _wrap_delete_madNotice129(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    madNotice129 * _arg0;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 2) || (objc > 2)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. delete_madNotice129 { madNotice129 * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madNotice129_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of delete_madNotice129. Expected _madNotice129_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{ 
> +  ibms_tcl_error = 0;
> +      delete_madNotice129(_arg0);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +    return TCL_OK;
> +}
> +#define madNotice129_generic_type_set(_swigobj,_swigval) (_swigobj->generic_type = *(_swigval),_swigval)
> +static int _wrap_madNotice129_generic_type_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    uint8_t * _result;
> +    madNotice129 * _arg0;
> +    uint8_t * _arg1;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +    uint8_t  temp;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 3) || (objc > 3)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madNotice129_generic_type_set { madNotice129 * } { uint8_t * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madNotice129_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madNotice129_generic_type_set. Expected _madNotice129_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{
> +  temp = strtoul(Tcl_GetStringFromObj(objv[2],NULL), NULL, 0);
> +  _arg1 = &temp;
> +}
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (uint8_t *)madNotice129_generic_type_set(_arg0,_arg1);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", *_result);
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madNotice129_generic_type_get(_swigobj) (&_swigobj->generic_type)
> +static int _wrap_madNotice129_generic_type_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    uint8_t * _result;
> +    madNotice129 * _arg0;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 2) || (objc > 2)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madNotice129_generic_type_get { madNotice129 * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madNotice129_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madNotice129_generic_type_get. Expected _madNotice129_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (uint8_t *)madNotice129_generic_type_get(_arg0);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", *_result);
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madNotice129_prod_type_msb_set(_swigobj,_swigval) (_swigobj->prod_type_msb = *(_swigval),_swigval)
> +static int _wrap_madNotice129_prod_type_msb_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    uint8_t * _result;
> +    madNotice129 * _arg0;
> +    uint8_t * _arg1;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +    uint8_t  temp;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 3) || (objc > 3)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madNotice129_prod_type_msb_set { madNotice129 * } { uint8_t * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madNotice129_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madNotice129_prod_type_msb_set. Expected _madNotice129_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{
> +  temp = strtoul(Tcl_GetStringFromObj(objv[2],NULL), NULL, 0);
> +  _arg1 = &temp;
> +}
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (uint8_t *)madNotice129_prod_type_msb_set(_arg0,_arg1);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", *_result);
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madNotice129_prod_type_msb_get(_swigobj) (&_swigobj->prod_type_msb)
> +static int _wrap_madNotice129_prod_type_msb_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    uint8_t * _result;
> +    madNotice129 * _arg0;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 2) || (objc > 2)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madNotice129_prod_type_msb_get { madNotice129 * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madNotice129_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madNotice129_prod_type_msb_get. Expected _madNotice129_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (uint8_t *)madNotice129_prod_type_msb_get(_arg0);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", *_result);
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madNotice129_prod_type_lsb_set(_swigobj,_swigval) (_swigobj->prod_type_lsb = *(_swigval),_swigval)
> +static int _wrap_madNotice129_prod_type_lsb_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    ib_net16_t * _result;
> +    madNotice129 * _arg0;
> +    ib_net16_t * _arg1;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +    ib_net16_t  temp;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 3) || (objc > 3)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madNotice129_prod_type_lsb_set { madNotice129 * } { ib_net16_t * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madNotice129_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madNotice129_prod_type_lsb_set. Expected _madNotice129_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{
> +  temp = cl_hton16(atoi(Tcl_GetStringFromObj(objv[2],NULL)));
> +  _arg1 = &temp;
> +}
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (ib_net16_t *)madNotice129_prod_type_lsb_set(_arg0,_arg1);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", cl_hton16(*_result));
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madNotice129_prod_type_lsb_get(_swigobj) (&_swigobj->prod_type_lsb)
> +static int _wrap_madNotice129_prod_type_lsb_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    ib_net16_t * _result;
> +    madNotice129 * _arg0;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 2) || (objc > 2)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madNotice129_prod_type_lsb_get { madNotice129 * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madNotice129_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madNotice129_prod_type_lsb_get. Expected _madNotice129_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (ib_net16_t *)madNotice129_prod_type_lsb_get(_arg0);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", cl_hton16(*_result));
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madNotice129_trap_num_set(_swigobj,_swigval) (_swigobj->trap_num = *(_swigval),_swigval)
> +static int _wrap_madNotice129_trap_num_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    ib_net16_t * _result;
> +    madNotice129 * _arg0;
> +    ib_net16_t * _arg1;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +    ib_net16_t  temp;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 3) || (objc > 3)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madNotice129_trap_num_set { madNotice129 * } { ib_net16_t * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madNotice129_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madNotice129_trap_num_set. Expected _madNotice129_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{
> +  temp = cl_hton16(atoi(Tcl_GetStringFromObj(objv[2],NULL)));
> +  _arg1 = &temp;
> +}
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (ib_net16_t *)madNotice129_trap_num_set(_arg0,_arg1);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", cl_hton16(*_result));
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madNotice129_trap_num_get(_swigobj) (&_swigobj->trap_num)
> +static int _wrap_madNotice129_trap_num_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    ib_net16_t * _result;
> +    madNotice129 * _arg0;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 2) || (objc > 2)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madNotice129_trap_num_get { madNotice129 * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madNotice129_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madNotice129_trap_num_get. Expected _madNotice129_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (ib_net16_t *)madNotice129_trap_num_get(_arg0);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", cl_hton16(*_result));
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madNotice129_issuer_lid_set(_swigobj,_swigval) (_swigobj->issuer_lid = *(_swigval),_swigval)
> +static int _wrap_madNotice129_issuer_lid_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    ib_net16_t * _result;
> +    madNotice129 * _arg0;
> +    ib_net16_t * _arg1;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +    ib_net16_t  temp;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 3) || (objc > 3)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madNotice129_issuer_lid_set { madNotice129 * } { ib_net16_t * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madNotice129_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madNotice129_issuer_lid_set. Expected _madNotice129_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{
> +  temp = cl_hton16(atoi(Tcl_GetStringFromObj(objv[2],NULL)));
> +  _arg1 = &temp;
> +}
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (ib_net16_t *)madNotice129_issuer_lid_set(_arg0,_arg1);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", cl_hton16(*_result));
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madNotice129_issuer_lid_get(_swigobj) (&_swigobj->issuer_lid)
> +static int _wrap_madNotice129_issuer_lid_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    ib_net16_t * _result;
> +    madNotice129 * _arg0;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 2) || (objc > 2)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madNotice129_issuer_lid_get { madNotice129 * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madNotice129_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madNotice129_issuer_lid_get. Expected _madNotice129_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (ib_net16_t *)madNotice129_issuer_lid_get(_arg0);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", cl_hton16(*_result));
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madNotice129_toggle_count_set(_swigobj,_swigval) (_swigobj->toggle_count = *(_swigval),_swigval)
> +static int _wrap_madNotice129_toggle_count_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    ib_net16_t * _result;
> +    madNotice129 * _arg0;
> +    ib_net16_t * _arg1;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +    ib_net16_t  temp;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 3) || (objc > 3)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madNotice129_toggle_count_set { madNotice129 * } { ib_net16_t * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madNotice129_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madNotice129_toggle_count_set. Expected _madNotice129_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{
> +  temp = cl_hton16(atoi(Tcl_GetStringFromObj(objv[2],NULL)));
> +  _arg1 = &temp;
> +}
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (ib_net16_t *)madNotice129_toggle_count_set(_arg0,_arg1);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", cl_hton16(*_result));
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madNotice129_toggle_count_get(_swigobj) (&_swigobj->toggle_count)
> +static int _wrap_madNotice129_toggle_count_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    ib_net16_t * _result;
> +    madNotice129 * _arg0;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 2) || (objc > 2)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madNotice129_toggle_count_get { madNotice129 * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madNotice129_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madNotice129_toggle_count_get. Expected _madNotice129_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (ib_net16_t *)madNotice129_toggle_count_get(_arg0);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", cl_hton16(*_result));
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madNotice129_pad_set(_swigobj,_swigval) (_swigobj->pad = *(_swigval),_swigval)
> +static int _wrap_madNotice129_pad_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    ib_net16_t * _result;
> +    madNotice129 * _arg0;
> +    ib_net16_t * _arg1;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +    ib_net16_t  temp;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 3) || (objc > 3)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madNotice129_pad_set { madNotice129 * } { ib_net16_t * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madNotice129_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madNotice129_pad_set. Expected _madNotice129_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{
> +  temp = cl_hton16(atoi(Tcl_GetStringFromObj(objv[2],NULL)));
> +  _arg1 = &temp;
> +}
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (ib_net16_t *)madNotice129_pad_set(_arg0,_arg1);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", cl_hton16(*_result));
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madNotice129_pad_get(_swigobj) (&_swigobj->pad)
> +static int _wrap_madNotice129_pad_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    ib_net16_t * _result;
> +    madNotice129 * _arg0;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 2) || (objc > 2)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madNotice129_pad_get { madNotice129 * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madNotice129_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madNotice129_pad_get. Expected _madNotice129_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (ib_net16_t *)madNotice129_pad_get(_arg0);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", cl_hton16(*_result));
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madNotice129_lid_set(_swigobj,_swigval) (_swigobj->lid = *(_swigval),_swigval)
> +static int _wrap_madNotice129_lid_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    ib_net16_t * _result;
> +    madNotice129 * _arg0;
> +    ib_net16_t * _arg1;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +    ib_net16_t  temp;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 3) || (objc > 3)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madNotice129_lid_set { madNotice129 * } { ib_net16_t * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madNotice129_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madNotice129_lid_set. Expected _madNotice129_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{
> +  temp = cl_hton16(atoi(Tcl_GetStringFromObj(objv[2],NULL)));
> +  _arg1 = &temp;
> +}
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (ib_net16_t *)madNotice129_lid_set(_arg0,_arg1);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", cl_hton16(*_result));
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madNotice129_lid_get(_swigobj) (&_swigobj->lid)
> +static int _wrap_madNotice129_lid_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    ib_net16_t * _result;
> +    madNotice129 * _arg0;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 2) || (objc > 2)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madNotice129_lid_get { madNotice129 * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madNotice129_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madNotice129_lid_get. Expected _madNotice129_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (ib_net16_t *)madNotice129_lid_get(_arg0);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", cl_hton16(*_result));
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madNotice129_port_num_set(_swigobj,_swigval) (_swigobj->port_num = *(_swigval),_swigval)
> +static int _wrap_madNotice129_port_num_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    uint8_t * _result;
> +    madNotice129 * _arg0;
> +    uint8_t * _arg1;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +    uint8_t  temp;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 3) || (objc > 3)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madNotice129_port_num_set { madNotice129 * } { uint8_t * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madNotice129_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madNotice129_port_num_set. Expected _madNotice129_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{
> +  temp = strtoul(Tcl_GetStringFromObj(objv[2],NULL), NULL, 0);
> +  _arg1 = &temp;
> +}
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (uint8_t *)madNotice129_port_num_set(_arg0,_arg1);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", *_result);
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madNotice129_port_num_get(_swigobj) (&_swigobj->port_num)
> +static int _wrap_madNotice129_port_num_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    uint8_t * _result;
> +    madNotice129 * _arg0;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 2) || (objc > 2)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madNotice129_port_num_get { madNotice129 * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madNotice129_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madNotice129_port_num_get. Expected _madNotice129_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (uint8_t *)madNotice129_port_num_get(_arg0);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", *_result);
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madNotice129_issuer_gid_set(_swigobj,_swigval) (_swigobj->issuer_gid = *(_swigval),_swigval)
> +static int _wrap_madNotice129_issuer_gid_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    ib_gid_t * _result;
> +    madNotice129 * _arg0;
> +    ib_gid_t * _arg1;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +    ib_gid_t  temp;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 3) || (objc > 3)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madNotice129_issuer_gid_set { madNotice129 * } { ib_gid_t * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madNotice129_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madNotice129_issuer_gid_set. Expected _madNotice129_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{
> +  char buf[36];
> +  char *p_prefix, *p_guid;
> +  char *str_token;
> +
> +  strcpy(buf, Tcl_GetStringFromObj(objv[2],NULL));
> +  p_prefix = strtok_r(buf,":", &str_token);
> +  p_guid = strtok_r(NULL, " ", &str_token);
> +  errno = 0;
> +  temp.unicast.prefix = cl_hton64(strtoull(p_prefix, NULL, 16));
> +  if (errno) {
> +    printf("Wrong format for gid prefix:%s\n", p_prefix);
> +    return TCL_ERROR;
> +  }
> +
> +  temp.unicast.interface_id = cl_hton64(strtoull(p_guid, NULL, 16));
> +  if (errno) {
> +    printf("Wrong format for gid guid:%s\n", p_guid);
> +    return TCL_ERROR;
> +  }
> +  
> +  _arg1 = &temp;
> +}
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (ib_gid_t *)madNotice129_issuer_gid_set(_arg0,_arg1);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[36];
> +  sprintf(buff, "0x%016" PRIx64 ":0x%016" PRIx64, 
> +          cl_ntoh64(_result->unicast.prefix), 
> +          cl_ntoh64(_result->unicast.interface_id) 
> +          );
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madNotice129_issuer_gid_get(_swigobj) (&_swigobj->issuer_gid)
> +static int _wrap_madNotice129_issuer_gid_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    ib_gid_t * _result;
> +    madNotice129 * _arg0;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 2) || (objc > 2)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madNotice129_issuer_gid_get { madNotice129 * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madNotice129_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madNotice129_issuer_gid_get. Expected _madNotice129_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (ib_gid_t *)madNotice129_issuer_gid_get(_arg0);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[36];
> +  sprintf(buff, "0x%016" PRIx64 ":0x%016" PRIx64, 
> +          cl_ntoh64(_result->unicast.prefix), 
> +          cl_ntoh64(_result->unicast.interface_id) 
> +          );
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +static int  madNotice129_send_set(madNotice129 *self,IBMSNode * pFromNode,uint8_t  fromPort,uint16_t  destLid) {
> +      return( send_mad(
> +                pFromNode, 
> +                fromPort, 
> +                destLid,
> +                IB_MCLASS_SUBN_LID,
> +                IB_MAD_METHOD_SET,
> +                cl_ntoh16(IB_MAD_ATTR_NOTICE),
> +		0,
> +                (uint8_t*)self,
> +                sizeof(madNotice129)
> +                )
> +              );
> +    }
> +static int _wrap_madNotice129_send_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    int  _result;
> +    madNotice129 * _arg0;
> +    IBMSNode * _arg1;
> +    uint8_t * _arg2;
> +    uint16_t * _arg3;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +    uint8_t  temp;
> +    uint16_t  temp0;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 5) || (objc > 5)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madNotice129_send_set { madNotice129 * } pFromNode fromPort destLid ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madNotice129_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madNotice129_send_set. Expected _madNotice129_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{
> +  
> +  void *ptr;
> +  if (ibmsGetSimNodePtrByTclName(objv[2], &ptr) != TCL_OK) {
> +	 char err[128];
> +	 sprintf(err, "-E- fail to find ibdm obj by id:%s",Tcl_GetString(objv[2]) );
> +	 // Tcl_SetStringObj(tcl_result, err, strlen(err));
> +	 return TCL_ERROR;	 
> +  }
> +	 
> +  _arg1 = (IBMSNode *)ptr;
> +}
> +{
> +  /* the format is always: <type>:<idx>[:<name>] */
> +  
> +  // get the type from the given source 
> +  char buf[128];
> +  strcpy(buf, Tcl_GetStringFromObj(objv[2],0));
> +  char *colonIdx = index(buf,':');
> +  if (!colonIdx) {
> +	 char err[128];
> +	 sprintf(err, "-E- Bad formatted ibdm object:%s", buf);
> +	 Tcl_SetStringObj(tcl_result, err, strlen(err));
> +	 return TCL_ERROR;
> +  }
> +  *colonIdx = '\0';
> +
> +  if (!strcmp("IBMSNode ", "IBMSNode ")) {
> +    if (strcmp(buf, "simnode")) {
> +      char err[256];
> +      sprintf(err, "-E- basetype is IBMSNode  but received obj of type %s", buf);
> +      Tcl_SetStringObj(tcl_result, err, strlen(err));
> +      return TCL_ERROR;	 
> +    }
> +  } else {
> +	 char err[256];
> +	 sprintf(err, "-E- basetype 'IBMSNode ' is unknown");
> +	 Tcl_SetStringObj(tcl_result, err, strlen(err));
> +	 return TCL_ERROR;	 
> +  }
> +}
> +{
> +  temp = strtoul(Tcl_GetStringFromObj(objv[3],NULL), NULL, 0);
> +  _arg2 = &temp;
> +}
> +{
> +  temp0 = strtoul(Tcl_GetStringFromObj(objv[4],NULL), NULL, 0);
> +  _arg3 = &temp0;
> +}
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (int )madNotice129_send_set(_arg0,_arg1,*_arg2,*_arg3);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +    Tcl_SetIntObj(tcl_result,(long) _result);
> +    return TCL_OK;
> +}
> +/* delcmd.swg : Tcl object deletion method */
> +
> +static void TclDeletemadNotice129(ClientData clientData) {
> +    delete_madNotice129((madNotice129 *) clientData);
> +}
> +
> +/* methodcmd8.swg : Tcl8.x method invocation */
> +
> +static int TclmadNotice129MethodCmd(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST _objv[]) {
> +  int (*cmd)(ClientData, Tcl_Interp *, int, Tcl_Obj *CONST*) = 0;
> +  char *_str;
> +  int rcode;
> +  Tcl_Obj **objv;
> +  Tcl_Obj *oldarg,*tcl_result,*obj;
> +  int length;
> +  char c;
> +
> +  tcl_result = Tcl_GetObjResult(interp);
> +  objv = (Tcl_Obj **) _objv; 
> +  if (objc < 2) {
> +    Tcl_SetStringObj(tcl_result,"madNotice129 methods : { dump cget configure send_set  }",-1);
> +    return TCL_ERROR;
> +  }
> +  obj = Tcl_NewObj();
> +  SWIG_SetPointerObj(obj,(void *) clientData,"_madNotice129_p");
> +  _str = Tcl_GetStringFromObj(objv[1],&length);
> +  c = *_str;
> +  if (0);
> +      if (strcmp(_str,"send_set") == 0) {
> +        cmd = _wrap_madNotice129_send_set;
> +    }
> +    else if ((c == 'c') && (strncmp(_str,"configure",length) == 0) && (length >= 2)) {
> +      int i = 2;
> +      cmd = 0;
> +      while (i+1 < objc) {
> +        _str = Tcl_GetStringFromObj(objv[i],&length);
> +                        if (strcmp(_str,"-generic_type") == 0) {
> +                    cmd = _wrap_madNotice129_generic_type_set;
> +                }  else if (strcmp(_str,"-prod_type_msb") == 0) {
> +                    cmd = _wrap_madNotice129_prod_type_msb_set;
> +                }  else if (strcmp(_str,"-prod_type_lsb") == 0) {
> +                    cmd = _wrap_madNotice129_prod_type_lsb_set;
> +                }  else if (strcmp(_str,"-trap_num") == 0) {
> +                    cmd = _wrap_madNotice129_trap_num_set;
> +                }  else if (strcmp(_str,"-issuer_lid") == 0) {
> +                    cmd = _wrap_madNotice129_issuer_lid_set;
> +                }  else if (strcmp(_str,"-toggle_count") == 0) {
> +                    cmd = _wrap_madNotice129_toggle_count_set;
> +                }  else if (strcmp(_str,"-pad") == 0) {
> +                    cmd = _wrap_madNotice129_pad_set;
> +                }  else if (strcmp(_str,"-lid") == 0) {
> +                    cmd = _wrap_madNotice129_lid_set;
> +                }  else if (strcmp(_str,"-port_num") == 0) {
> +                    cmd = _wrap_madNotice129_port_num_set;
> +                }  else if (strcmp(_str,"-issuer_gid") == 0) {
> +                    cmd = _wrap_madNotice129_issuer_gid_set;
> +                } 
> +          if (cmd) {
> +            oldarg = objv[i];
> +            objv[i] = obj;
> +            rcode = (*cmd)(clientData,interp,3,&objv[i-1]);
> +            objv[i] = oldarg;
> +            if (rcode == TCL_ERROR) return rcode;
> +            cmd = 0;
> +          } else {
> +            Tcl_SetStringObj(tcl_result,"Invalid configure option. Must be { -generic_type -prod_type_msb -prod_type_lsb -trap_num -issuer_lid -toggle_count -pad -lid -port_num -issuer_gid  }",-1);
> +            return TCL_ERROR;
> +          }
> +        i+=2;
> +      }
> +      if ((i < objc) || (i == 2)) {
> +        Tcl_SetStringObj(tcl_result,"{ -generic_type -prod_type_msb -prod_type_lsb -trap_num -issuer_lid -toggle_count -pad -lid -port_num -issuer_gid  }",-1);
> +        return TCL_ERROR;
> +      }
> +      return TCL_OK;
> +    } else if ((c == 'c') && (strncmp(_str,"cget",length) == 0) && (length >= 2)) {
> +      if (objc == 3) {
> +        _str = Tcl_GetStringFromObj(objv[2],&length);
> +        if (0) {}
> +                        if (strcmp(_str,"-generic_type") == 0) {
> +                    cmd = _wrap_madNotice129_generic_type_get;
> +                }  else if (strcmp(_str,"-prod_type_msb") == 0) {
> +                    cmd = _wrap_madNotice129_prod_type_msb_get;
> +                }  else if (strcmp(_str,"-prod_type_lsb") == 0) {
> +                    cmd = _wrap_madNotice129_prod_type_lsb_get;
> +                }  else if (strcmp(_str,"-trap_num") == 0) {
> +                    cmd = _wrap_madNotice129_trap_num_get;
> +                }  else if (strcmp(_str,"-issuer_lid") == 0) {
> +                    cmd = _wrap_madNotice129_issuer_lid_get;
> +                }  else if (strcmp(_str,"-toggle_count") == 0) {
> +                    cmd = _wrap_madNotice129_toggle_count_get;
> +                }  else if (strcmp(_str,"-pad") == 0) {
> +                    cmd = _wrap_madNotice129_pad_get;
> +                }  else if (strcmp(_str,"-lid") == 0) {
> +                    cmd = _wrap_madNotice129_lid_get;
> +                }  else if (strcmp(_str,"-port_num") == 0) {
> +                    cmd = _wrap_madNotice129_port_num_get;
> +                }  else if (strcmp(_str,"-issuer_gid") == 0) {
> +                    cmd = _wrap_madNotice129_issuer_gid_get;
> +                } 
> +          else if (strcmp(_str,"-this") == 0) {
> +            SWIG_SetPointerObj(tcl_result,(void *) clientData, "_madNotice129_p");
> +            return TCL_OK;
> +          }
> +        if (cmd) {
> +          oldarg = objv[2];
> +          objv[2] = obj;
> +          rcode = (*cmd)(clientData,interp,objc-1,&objv[1]);
> +          objv[2] = oldarg;
> +          return rcode;
> +        } else {
> +          Tcl_SetStringObj(tcl_result,"Invalid cget option. Must be { -this -generic_type -prod_type_msb -prod_type_lsb -trap_num -issuer_lid -toggle_count -pad -lid -port_num -issuer_gid  }",-1);
> +          return TCL_ERROR;
> +        }
> +      } else {
> +        Tcl_SetStringObj(tcl_result,"{ -this -generic_type -prod_type_msb -prod_type_lsb -trap_num -issuer_lid -toggle_count -pad -lid -port_num -issuer_gid  }", -1);
> +        return TCL_ERROR;
> +      }
> +    } else if ((c == 'd') && (strncmp(_str,"dump",length) == 0) && (length >= 2)) {
> +      if (objc == 2) {
> +        Tcl_Obj *pDumpObj;
> +        pDumpObj = Tcl_NewStringObj("",-1);
> +        Tcl_IncrRefCount(pDumpObj);
> +                cmd = _wrap_madNotice129_generic_type_get;
> +        oldarg = objv[2];
> +        objv[2] = obj;
> +        rcode = (*cmd)(clientData,interp,objc,&objv[1]);
> +        objv[2] = oldarg;
> +        Tcl_AppendStringsToObj(pDumpObj, "-generic_type ", Tcl_GetStringFromObj(tcl_result, NULL), " ", NULL);
> +        Tcl_SetStringObj(tcl_result, Tcl_GetStringFromObj(pDumpObj, NULL), -1);
> +        cmd = _wrap_madNotice129_prod_type_msb_get;
> +        oldarg = objv[2];
> +        objv[2] = obj;
> +        rcode = (*cmd)(clientData,interp,objc,&objv[1]);
> +        objv[2] = oldarg;
> +        Tcl_AppendStringsToObj(pDumpObj, "-prod_type_msb ", Tcl_GetStringFromObj(tcl_result, NULL), " ", NULL);
> +        Tcl_SetStringObj(tcl_result, Tcl_GetStringFromObj(pDumpObj, NULL), -1);
> +        cmd = _wrap_madNotice129_prod_type_lsb_get;
> +        oldarg = objv[2];
> +        objv[2] = obj;
> +        rcode = (*cmd)(clientData,interp,objc,&objv[1]);
> +        objv[2] = oldarg;
> +        Tcl_AppendStringsToObj(pDumpObj, "-prod_type_lsb ", Tcl_GetStringFromObj(tcl_result, NULL), " ", NULL);
> +        Tcl_SetStringObj(tcl_result, Tcl_GetStringFromObj(pDumpObj, NULL), -1);
> +        cmd = _wrap_madNotice129_trap_num_get;
> +        oldarg = objv[2];
> +        objv[2] = obj;
> +        rcode = (*cmd)(clientData,interp,objc,&objv[1]);
> +        objv[2] = oldarg;
> +        Tcl_AppendStringsToObj(pDumpObj, "-trap_num ", Tcl_GetStringFromObj(tcl_result, NULL), " ", NULL);
> +        Tcl_SetStringObj(tcl_result, Tcl_GetStringFromObj(pDumpObj, NULL), -1);
> +        cmd = _wrap_madNotice129_issuer_lid_get;
> +        oldarg = objv[2];
> +        objv[2] = obj;
> +        rcode = (*cmd)(clientData,interp,objc,&objv[1]);
> +        objv[2] = oldarg;
> +        Tcl_AppendStringsToObj(pDumpObj, "-issuer_lid ", Tcl_GetStringFromObj(tcl_result, NULL), " ", NULL);
> +        Tcl_SetStringObj(tcl_result, Tcl_GetStringFromObj(pDumpObj, NULL), -1);
> +        cmd = _wrap_madNotice129_toggle_count_get;
> +        oldarg = objv[2];
> +        objv[2] = obj;
> +        rcode = (*cmd)(clientData,interp,objc,&objv[1]);
> +        objv[2] = oldarg;
> +        Tcl_AppendStringsToObj(pDumpObj, "-toggle_count ", Tcl_GetStringFromObj(tcl_result, NULL), " ", NULL);
> +        Tcl_SetStringObj(tcl_result, Tcl_GetStringFromObj(pDumpObj, NULL), -1);
> +        cmd = _wrap_madNotice129_pad_get;
> +        oldarg = objv[2];
> +        objv[2] = obj;
> +        rcode = (*cmd)(clientData,interp,objc,&objv[1]);
> +        objv[2] = oldarg;
> +        Tcl_AppendStringsToObj(pDumpObj, "-pad ", Tcl_GetStringFromObj(tcl_result, NULL), " ", NULL);
> +        Tcl_SetStringObj(tcl_result, Tcl_GetStringFromObj(pDumpObj, NULL), -1);
> +        cmd = _wrap_madNotice129_lid_get;
> +        oldarg = objv[2];
> +        objv[2] = obj;
> +        rcode = (*cmd)(clientData,interp,objc,&objv[1]);
> +        objv[2] = oldarg;
> +        Tcl_AppendStringsToObj(pDumpObj, "-lid ", Tcl_GetStringFromObj(tcl_result, NULL), " ", NULL);
> +        Tcl_SetStringObj(tcl_result, Tcl_GetStringFromObj(pDumpObj, NULL), -1);
> +        cmd = _wrap_madNotice129_port_num_get;
> +        oldarg = objv[2];
> +        objv[2] = obj;
> +        rcode = (*cmd)(clientData,interp,objc,&objv[1]);
> +        objv[2] = oldarg;
> +        Tcl_AppendStringsToObj(pDumpObj, "-port_num ", Tcl_GetStringFromObj(tcl_result, NULL), " ", NULL);
> +        Tcl_SetStringObj(tcl_result, Tcl_GetStringFromObj(pDumpObj, NULL), -1);
> +        cmd = _wrap_madNotice129_issuer_gid_get;
> +        oldarg = objv[2];
> +        objv[2] = obj;
> +        rcode = (*cmd)(clientData,interp,objc,&objv[1]);
> +        objv[2] = oldarg;
> +        Tcl_AppendStringsToObj(pDumpObj, "-issuer_gid ", Tcl_GetStringFromObj(tcl_result, NULL), " ", NULL);
> +        Tcl_SetStringObj(tcl_result, Tcl_GetStringFromObj(pDumpObj, NULL), -1);
> +
> +        Tcl_DecrRefCount(pDumpObj);
> +        return TCL_OK;
> +      } else {
> +        Tcl_SetStringObj(tcl_result,"no parameters are allowed for dump", -1);
> +        return TCL_ERROR;
> +      }
> +    }
> +  if (!cmd) {
> +    Tcl_SetStringObj(tcl_result,"Invalid Method. Must be { dump cget configure send_set }",-1);
> +    return TCL_ERROR;
> +  }
> +  oldarg = objv[1];
> +  objv[1] = obj;
> +  rcode = (*cmd)(clientData,interp,objc,objv);
> +  objv[1] = oldarg;
> +  return rcode;
> +}
> +
> +
> +
> +/* objcmd8.swg : Tcl 8.x object creation */
> +
> +static int TclmadNotice129Cmd(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +    void (*del)(ClientData) = 0;
> +    char *name = 0;
> +    int (*cmd)(ClientData, Tcl_Interp *, int, Tcl_Obj *CONST*) = 0;
> +    madNotice129 * newObj = 0;
> +    int firstarg = 0;
> +    int thisarg = 0;
> +    int length;
> +    char *_str;
> +    Tcl_Obj *tcl_result;
> +
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if (objc == 1) {
> +        cmd = _wrap_new_madNotice129;
> +    } else {
> +      _str = Tcl_GetStringFromObj(objv[1],&length);
> +      if (strcmp(_str,"-this") == 0) thisarg = 2;
> +      else if (strcmp(_str,"-args") == 0) {
> +	firstarg = 1;
> +	cmd = _wrap_new_madNotice129;
> +      } else if (objc == 2) {
> +	firstarg = 1;
> +	name = _str;
> +	cmd = _wrap_new_madNotice129;
> +      } else if (objc >= 3) {
> +	name = _str;
> +	_str = Tcl_GetStringFromObj(objv[2],&length);
> +	if (strcmp(_str,"-this") == 0) thisarg = 3;
> +	else {
> +	  firstarg = 1;
> +	  cmd = _wrap_new_madNotice129;
> +	}
> +      }
> +    }
> +    if (cmd) {
> +        int result;
> +        result = (*cmd)(clientData,interp,objc-firstarg,&objv[firstarg]);
> +        if (result == TCL_OK) {
> +            SWIG_GetPointerObj(interp,tcl_result,(void **) &newObj,"_madNotice129_p");
> +        } else { return result; }
> +        if (!name) name = Tcl_GetStringFromObj(tcl_result,&length);
> +        del = TclDeletemadNotice129;
> +    } else if (thisarg > 0) { 
> +        if (thisarg < objc) {
> +            char *r;
> +            r = SWIG_GetPointerObj(interp,objv[thisarg],(void **) &newObj,"_madNotice129_p");
> +            if (r) {
> +	      Tcl_SetStringObj(tcl_result,"Type error. not a madNotice129 object.",-1);
> +	      return TCL_ERROR;
> +            }
> +        if (!name) name = Tcl_GetStringFromObj(objv[thisarg],&length);
> +	Tcl_SetStringObj(tcl_result,name,-1);
> +        } else {
> +            Tcl_SetStringObj(tcl_result,"wrong # args.",-1);
> +            return TCL_ERROR;
> +        }
> +    } else {
> +        Tcl_SetStringObj(tcl_result,"No constructor available.",-1);
> +        return TCL_ERROR;
> +    }
> +    {
> +      Tcl_CmdInfo dummy;
> +      if (!Tcl_GetCommandInfo(interp,name,&dummy)) {
> +	Tcl_CreateObjCommand(interp,name, TclmadNotice129MethodCmd, (ClientData) newObj, del);
> +	return TCL_OK;
> +      } else {
> +	Tcl_SetStringObj(tcl_result,"Object name already exists!",-1);
> +	return TCL_ERROR;
> +      }
> +    }
> +}
> +
> +
> +#define new_madNotice144() (new madNotice144())
> +static int _wrap_new_madNotice144(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    madNotice144 * _result;
> +    Tcl_Obj * tcl_result;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 1) || (objc > 1)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. new_madNotice144 ",-1);
> +        return TCL_ERROR;
> +    }
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (madNotice144 *)new_madNotice144();
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +    SWIG_SetPointerObj(tcl_result,(void *) _result,"_madNotice144_p");
> +    return TCL_OK;
> +}
> +#define delete_madNotice144(_swigobj) (delete _swigobj)
> +static int _wrap_delete_madNotice144(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    madNotice144 * _arg0;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 2) || (objc > 2)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. delete_madNotice144 { madNotice144 * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madNotice144_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of delete_madNotice144. Expected _madNotice144_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{ 
> +  ibms_tcl_error = 0;
> +      delete_madNotice144(_arg0);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +    return TCL_OK;
> +}
> +#define madNotice144_generic_type_set(_swigobj,_swigval) (_swigobj->generic_type = *(_swigval),_swigval)
> +static int _wrap_madNotice144_generic_type_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    uint8_t * _result;
> +    madNotice144 * _arg0;
> +    uint8_t * _arg1;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +    uint8_t  temp;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 3) || (objc > 3)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madNotice144_generic_type_set { madNotice144 * } { uint8_t * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madNotice144_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madNotice144_generic_type_set. Expected _madNotice144_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{
> +  temp = strtoul(Tcl_GetStringFromObj(objv[2],NULL), NULL, 0);
> +  _arg1 = &temp;
> +}
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (uint8_t *)madNotice144_generic_type_set(_arg0,_arg1);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", *_result);
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madNotice144_generic_type_get(_swigobj) (&_swigobj->generic_type)
> +static int _wrap_madNotice144_generic_type_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    uint8_t * _result;
> +    madNotice144 * _arg0;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 2) || (objc > 2)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madNotice144_generic_type_get { madNotice144 * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madNotice144_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madNotice144_generic_type_get. Expected _madNotice144_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (uint8_t *)madNotice144_generic_type_get(_arg0);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", *_result);
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madNotice144_prod_type_msb_set(_swigobj,_swigval) (_swigobj->prod_type_msb = *(_swigval),_swigval)
> +static int _wrap_madNotice144_prod_type_msb_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    uint8_t * _result;
> +    madNotice144 * _arg0;
> +    uint8_t * _arg1;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +    uint8_t  temp;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 3) || (objc > 3)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madNotice144_prod_type_msb_set { madNotice144 * } { uint8_t * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madNotice144_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madNotice144_prod_type_msb_set. Expected _madNotice144_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{
> +  temp = strtoul(Tcl_GetStringFromObj(objv[2],NULL), NULL, 0);
> +  _arg1 = &temp;
> +}
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (uint8_t *)madNotice144_prod_type_msb_set(_arg0,_arg1);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", *_result);
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madNotice144_prod_type_msb_get(_swigobj) (&_swigobj->prod_type_msb)
> +static int _wrap_madNotice144_prod_type_msb_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    uint8_t * _result;
> +    madNotice144 * _arg0;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 2) || (objc > 2)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madNotice144_prod_type_msb_get { madNotice144 * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madNotice144_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madNotice144_prod_type_msb_get. Expected _madNotice144_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (uint8_t *)madNotice144_prod_type_msb_get(_arg0);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", *_result);
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madNotice144_prod_type_lsb_set(_swigobj,_swigval) (_swigobj->prod_type_lsb = *(_swigval),_swigval)
> +static int _wrap_madNotice144_prod_type_lsb_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    ib_net16_t * _result;
> +    madNotice144 * _arg0;
> +    ib_net16_t * _arg1;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +    ib_net16_t  temp;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 3) || (objc > 3)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madNotice144_prod_type_lsb_set { madNotice144 * } { ib_net16_t * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madNotice144_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madNotice144_prod_type_lsb_set. Expected _madNotice144_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{
> +  temp = cl_hton16(atoi(Tcl_GetStringFromObj(objv[2],NULL)));
> +  _arg1 = &temp;
> +}
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (ib_net16_t *)madNotice144_prod_type_lsb_set(_arg0,_arg1);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", cl_hton16(*_result));
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madNotice144_prod_type_lsb_get(_swigobj) (&_swigobj->prod_type_lsb)
> +static int _wrap_madNotice144_prod_type_lsb_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    ib_net16_t * _result;
> +    madNotice144 * _arg0;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 2) || (objc > 2)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madNotice144_prod_type_lsb_get { madNotice144 * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madNotice144_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madNotice144_prod_type_lsb_get. Expected _madNotice144_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (ib_net16_t *)madNotice144_prod_type_lsb_get(_arg0);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", cl_hton16(*_result));
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madNotice144_trap_num_set(_swigobj,_swigval) (_swigobj->trap_num = *(_swigval),_swigval)
> +static int _wrap_madNotice144_trap_num_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    ib_net16_t * _result;
> +    madNotice144 * _arg0;
> +    ib_net16_t * _arg1;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +    ib_net16_t  temp;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 3) || (objc > 3)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madNotice144_trap_num_set { madNotice144 * } { ib_net16_t * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madNotice144_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madNotice144_trap_num_set. Expected _madNotice144_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{
> +  temp = cl_hton16(atoi(Tcl_GetStringFromObj(objv[2],NULL)));
> +  _arg1 = &temp;
> +}
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (ib_net16_t *)madNotice144_trap_num_set(_arg0,_arg1);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", cl_hton16(*_result));
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madNotice144_trap_num_get(_swigobj) (&_swigobj->trap_num)
> +static int _wrap_madNotice144_trap_num_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    ib_net16_t * _result;
> +    madNotice144 * _arg0;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 2) || (objc > 2)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madNotice144_trap_num_get { madNotice144 * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madNotice144_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madNotice144_trap_num_get. Expected _madNotice144_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (ib_net16_t *)madNotice144_trap_num_get(_arg0);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", cl_hton16(*_result));
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madNotice144_issuer_lid_set(_swigobj,_swigval) (_swigobj->issuer_lid = *(_swigval),_swigval)
> +static int _wrap_madNotice144_issuer_lid_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    ib_net16_t * _result;
> +    madNotice144 * _arg0;
> +    ib_net16_t * _arg1;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +    ib_net16_t  temp;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 3) || (objc > 3)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madNotice144_issuer_lid_set { madNotice144 * } { ib_net16_t * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madNotice144_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madNotice144_issuer_lid_set. Expected _madNotice144_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{
> +  temp = cl_hton16(atoi(Tcl_GetStringFromObj(objv[2],NULL)));
> +  _arg1 = &temp;
> +}
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (ib_net16_t *)madNotice144_issuer_lid_set(_arg0,_arg1);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", cl_hton16(*_result));
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madNotice144_issuer_lid_get(_swigobj) (&_swigobj->issuer_lid)
> +static int _wrap_madNotice144_issuer_lid_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    ib_net16_t * _result;
> +    madNotice144 * _arg0;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 2) || (objc > 2)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madNotice144_issuer_lid_get { madNotice144 * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madNotice144_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madNotice144_issuer_lid_get. Expected _madNotice144_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (ib_net16_t *)madNotice144_issuer_lid_get(_arg0);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", cl_hton16(*_result));
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madNotice144_toggle_count_set(_swigobj,_swigval) (_swigobj->toggle_count = *(_swigval),_swigval)
> +static int _wrap_madNotice144_toggle_count_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    ib_net16_t * _result;
> +    madNotice144 * _arg0;
> +    ib_net16_t * _arg1;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +    ib_net16_t  temp;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 3) || (objc > 3)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madNotice144_toggle_count_set { madNotice144 * } { ib_net16_t * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madNotice144_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madNotice144_toggle_count_set. Expected _madNotice144_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{
> +  temp = cl_hton16(atoi(Tcl_GetStringFromObj(objv[2],NULL)));
> +  _arg1 = &temp;
> +}
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (ib_net16_t *)madNotice144_toggle_count_set(_arg0,_arg1);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", cl_hton16(*_result));
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madNotice144_toggle_count_get(_swigobj) (&_swigobj->toggle_count)
> +static int _wrap_madNotice144_toggle_count_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    ib_net16_t * _result;
> +    madNotice144 * _arg0;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 2) || (objc > 2)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madNotice144_toggle_count_get { madNotice144 * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madNotice144_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madNotice144_toggle_count_get. Expected _madNotice144_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (ib_net16_t *)madNotice144_toggle_count_get(_arg0);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", cl_hton16(*_result));
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madNotice144_pad1_set(_swigobj,_swigval) (_swigobj->pad1 = *(_swigval),_swigval)
> +static int _wrap_madNotice144_pad1_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    ib_net16_t * _result;
> +    madNotice144 * _arg0;
> +    ib_net16_t * _arg1;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +    ib_net16_t  temp;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 3) || (objc > 3)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madNotice144_pad1_set { madNotice144 * } { ib_net16_t * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madNotice144_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madNotice144_pad1_set. Expected _madNotice144_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{
> +  temp = cl_hton16(atoi(Tcl_GetStringFromObj(objv[2],NULL)));
> +  _arg1 = &temp;
> +}
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (ib_net16_t *)madNotice144_pad1_set(_arg0,_arg1);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", cl_hton16(*_result));
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madNotice144_pad1_get(_swigobj) (&_swigobj->pad1)
> +static int _wrap_madNotice144_pad1_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    ib_net16_t * _result;
> +    madNotice144 * _arg0;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 2) || (objc > 2)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madNotice144_pad1_get { madNotice144 * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madNotice144_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madNotice144_pad1_get. Expected _madNotice144_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (ib_net16_t *)madNotice144_pad1_get(_arg0);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", cl_hton16(*_result));
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madNotice144_lid_set(_swigobj,_swigval) (_swigobj->lid = *(_swigval),_swigval)
> +static int _wrap_madNotice144_lid_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    ib_net16_t * _result;
> +    madNotice144 * _arg0;
> +    ib_net16_t * _arg1;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +    ib_net16_t  temp;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 3) || (objc > 3)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madNotice144_lid_set { madNotice144 * } { ib_net16_t * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madNotice144_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madNotice144_lid_set. Expected _madNotice144_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{
> +  temp = cl_hton16(atoi(Tcl_GetStringFromObj(objv[2],NULL)));
> +  _arg1 = &temp;
> +}
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (ib_net16_t *)madNotice144_lid_set(_arg0,_arg1);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", cl_hton16(*_result));
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madNotice144_lid_get(_swigobj) (&_swigobj->lid)
> +static int _wrap_madNotice144_lid_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    ib_net16_t * _result;
> +    madNotice144 * _arg0;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 2) || (objc > 2)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madNotice144_lid_get { madNotice144 * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madNotice144_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madNotice144_lid_get. Expected _madNotice144_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (ib_net16_t *)madNotice144_lid_get(_arg0);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", cl_hton16(*_result));
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madNotice144_pad2_set(_swigobj,_swigval) (_swigobj->pad2 = *(_swigval),_swigval)
> +static int _wrap_madNotice144_pad2_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    ib_net16_t * _result;
> +    madNotice144 * _arg0;
> +    ib_net16_t * _arg1;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +    ib_net16_t  temp;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 3) || (objc > 3)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madNotice144_pad2_set { madNotice144 * } { ib_net16_t * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madNotice144_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madNotice144_pad2_set. Expected _madNotice144_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{
> +  temp = cl_hton16(atoi(Tcl_GetStringFromObj(objv[2],NULL)));
> +  _arg1 = &temp;
> +}
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (ib_net16_t *)madNotice144_pad2_set(_arg0,_arg1);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", cl_hton16(*_result));
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madNotice144_pad2_get(_swigobj) (&_swigobj->pad2)
> +static int _wrap_madNotice144_pad2_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    ib_net16_t * _result;
> +    madNotice144 * _arg0;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 2) || (objc > 2)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madNotice144_pad2_get { madNotice144 * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madNotice144_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madNotice144_pad2_get. Expected _madNotice144_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (ib_net16_t *)madNotice144_pad2_get(_arg0);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", cl_hton16(*_result));
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madNotice144_new_cap_mask_set(_swigobj,_swigval) (_swigobj->new_cap_mask = *(_swigval),_swigval)
> +static int _wrap_madNotice144_new_cap_mask_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    ib_net32_t * _result;
> +    madNotice144 * _arg0;
> +    ib_net32_t * _arg1;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +    ib_net32_t  temp;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 3) || (objc > 3)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madNotice144_new_cap_mask_set { madNotice144 * } { ib_net32_t * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madNotice144_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madNotice144_new_cap_mask_set. Expected _madNotice144_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{
> +  temp = cl_hton32(strtoul(Tcl_GetStringFromObj(objv[2],NULL), NULL, 0));
> +  _arg1 = &temp;
> +}
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (ib_net32_t *)madNotice144_new_cap_mask_set(_arg0,_arg1);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", cl_ntoh32(*_result));
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madNotice144_new_cap_mask_get(_swigobj) (&_swigobj->new_cap_mask)
> +static int _wrap_madNotice144_new_cap_mask_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    ib_net32_t * _result;
> +    madNotice144 * _arg0;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 2) || (objc > 2)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madNotice144_new_cap_mask_get { madNotice144 * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madNotice144_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madNotice144_new_cap_mask_get. Expected _madNotice144_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (ib_net32_t *)madNotice144_new_cap_mask_get(_arg0);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[20];
> +  sprintf(buff, "%u", cl_ntoh32(*_result));
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madNotice144_issuer_gid_set(_swigobj,_swigval) (_swigobj->issuer_gid = *(_swigval),_swigval)
> +static int _wrap_madNotice144_issuer_gid_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    ib_gid_t * _result;
> +    madNotice144 * _arg0;
> +    ib_gid_t * _arg1;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +    ib_gid_t  temp;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 3) || (objc > 3)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madNotice144_issuer_gid_set { madNotice144 * } { ib_gid_t * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madNotice144_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madNotice144_issuer_gid_set. Expected _madNotice144_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{
> +  char buf[36];
> +  char *p_prefix, *p_guid;
> +  char *str_token;
> +
> +  strcpy(buf, Tcl_GetStringFromObj(objv[2],NULL));
> +  p_prefix = strtok_r(buf,":", &str_token);
> +  p_guid = strtok_r(NULL, " ", &str_token);
> +  errno = 0;
> +  temp.unicast.prefix = cl_hton64(strtoull(p_prefix, NULL, 16));
> +  if (errno) {
> +    printf("Wrong format for gid prefix:%s\n", p_prefix);
> +    return TCL_ERROR;
> +  }
> +
> +  temp.unicast.interface_id = cl_hton64(strtoull(p_guid, NULL, 16));
> +  if (errno) {
> +    printf("Wrong format for gid guid:%s\n", p_guid);
> +    return TCL_ERROR;
> +  }
> +  
> +  _arg1 = &temp;
> +}
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (ib_gid_t *)madNotice144_issuer_gid_set(_arg0,_arg1);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[36];
> +  sprintf(buff, "0x%016" PRIx64 ":0x%016" PRIx64, 
> +          cl_ntoh64(_result->unicast.prefix), 
> +          cl_ntoh64(_result->unicast.interface_id) 
> +          );
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +#define madNotice144_issuer_gid_get(_swigobj) (&_swigobj->issuer_gid)
> +static int _wrap_madNotice144_issuer_gid_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    ib_gid_t * _result;
> +    madNotice144 * _arg0;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 2) || (objc > 2)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madNotice144_issuer_gid_get { madNotice144 * } ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madNotice144_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madNotice144_issuer_gid_get. Expected _madNotice144_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (ib_gid_t *)madNotice144_issuer_gid_get(_arg0);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +{
> +  char buff[36];
> +  sprintf(buff, "0x%016" PRIx64 ":0x%016" PRIx64, 
> +          cl_ntoh64(_result->unicast.prefix), 
> +          cl_ntoh64(_result->unicast.interface_id) 
> +          );
> +  Tcl_SetStringObj(tcl_result,buff,strlen(buff));
> +}
> +    return TCL_OK;
> +}
> +static int  madNotice144_send_set(madNotice144 *self,IBMSNode * pFromNode,uint8_t  fromPort,uint16_t  destLid) {
> +      return( send_mad(
> +                pFromNode, 
> +                fromPort, 
> +                destLid,
> +                IB_MCLASS_SUBN_LID,
> +                IB_MAD_METHOD_SET,
> +                cl_ntoh16(IB_MAD_ATTR_NOTICE),
> +		0,
> +                (uint8_t*)self,
> +                sizeof(madNotice144)
> +                )
> +              );
> +    }
> +static int _wrap_madNotice144_send_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +
> +    int  _result;
> +    madNotice144 * _arg0;
> +    IBMSNode * _arg1;
> +    uint8_t * _arg2;
> +    uint16_t * _arg3;
> +    Tcl_Obj * tcl_result;
> +    char * rettype;
> +    uint8_t  temp;
> +    uint16_t  temp0;
> +
> +    clientData = clientData; objv = objv;
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if ((objc < 5) || (objc > 5)) {
> +        Tcl_SetStringObj(tcl_result,"Wrong # args. madNotice144_send_set { madNotice144 * } pFromNode fromPort destLid ",-1);
> +        return TCL_ERROR;
> +    }
> +    if ((rettype = SWIG_GetPointerObj(interp,objv[1],(void **) &_arg0,"_madNotice144_p"))) {
> +        Tcl_SetStringObj(tcl_result, "Type error in argument 1 of madNotice144_send_set. Expected _madNotice144_p, received ", -1);
> +        Tcl_AppendToObj(tcl_result, rettype, -1);
> +        return TCL_ERROR;
> +    }
> +{
> +  
> +  void *ptr;
> +  if (ibmsGetSimNodePtrByTclName(objv[2], &ptr) != TCL_OK) {
> +	 char err[128];
> +	 sprintf(err, "-E- fail to find ibdm obj by id:%s",Tcl_GetString(objv[2]) );
> +	 // Tcl_SetStringObj(tcl_result, err, strlen(err));
> +	 return TCL_ERROR;	 
> +  }
> +	 
> +  _arg1 = (IBMSNode *)ptr;
> +}
> +{
> +  /* the format is always: <type>:<idx>[:<name>] */
> +  
> +  // get the type from the given source 
> +  char buf[128];
> +  strcpy(buf, Tcl_GetStringFromObj(objv[2],0));
> +  char *colonIdx = index(buf,':');
> +  if (!colonIdx) {
> +	 char err[128];
> +	 sprintf(err, "-E- Bad formatted ibdm object:%s", buf);
> +	 Tcl_SetStringObj(tcl_result, err, strlen(err));
> +	 return TCL_ERROR;
> +  }
> +  *colonIdx = '\0';
> +
> +  if (!strcmp("IBMSNode ", "IBMSNode ")) {
> +    if (strcmp(buf, "simnode")) {
> +      char err[256];
> +      sprintf(err, "-E- basetype is IBMSNode  but received obj of type %s", buf);
> +      Tcl_SetStringObj(tcl_result, err, strlen(err));
> +      return TCL_ERROR;	 
> +    }
> +  } else {
> +	 char err[256];
> +	 sprintf(err, "-E- basetype 'IBMSNode ' is unknown");
> +	 Tcl_SetStringObj(tcl_result, err, strlen(err));
> +	 return TCL_ERROR;	 
> +  }
> +}
> +{
> +  temp = strtoul(Tcl_GetStringFromObj(objv[3],NULL), NULL, 0);
> +  _arg2 = &temp;
> +}
> +{
> +  temp0 = strtoul(Tcl_GetStringFromObj(objv[4],NULL), NULL, 0);
> +  _arg3 = &temp0;
> +}
> +{ 
> +  ibms_tcl_error = 0;
> +      _result = (int )madNotice144_send_set(_arg0,_arg1,*_arg2,*_arg3);
> +; 
> +  if (ibms_tcl_error) { 
> +	 Tcl_SetStringObj(Tcl_GetObjResult(interp), ibms_tcl_error_msg, -1);
> + 	 return TCL_ERROR; 
> +  }
> +}    tcl_result = Tcl_GetObjResult(interp);
> +    Tcl_SetIntObj(tcl_result,(long) _result);
> +    return TCL_OK;
> +}
> +/* delcmd.swg : Tcl object deletion method */
> +
> +static void TclDeletemadNotice144(ClientData clientData) {
> +    delete_madNotice144((madNotice144 *) clientData);
> +}
> +
> +/* methodcmd8.swg : Tcl8.x method invocation */
> +
> +static int TclmadNotice144MethodCmd(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST _objv[]) {
> +  int (*cmd)(ClientData, Tcl_Interp *, int, Tcl_Obj *CONST*) = 0;
> +  char *_str;
> +  int rcode;
> +  Tcl_Obj **objv;
> +  Tcl_Obj *oldarg,*tcl_result,*obj;
> +  int length;
> +  char c;
> +
> +  tcl_result = Tcl_GetObjResult(interp);
> +  objv = (Tcl_Obj **) _objv; 
> +  if (objc < 2) {
> +    Tcl_SetStringObj(tcl_result,"madNotice144 methods : { dump cget configure send_set  }",-1);
> +    return TCL_ERROR;
> +  }
> +  obj = Tcl_NewObj();
> +  SWIG_SetPointerObj(obj,(void *) clientData,"_madNotice144_p");
> +  _str = Tcl_GetStringFromObj(objv[1],&length);
> +  c = *_str;
> +  if (0);
> +      if (strcmp(_str,"send_set") == 0) {
> +        cmd = _wrap_madNotice144_send_set;
> +    }
> +    else if ((c == 'c') && (strncmp(_str,"configure",length) == 0) && (length >= 2)) {
> +      int i = 2;
> +      cmd = 0;
> +      while (i+1 < objc) {
> +        _str = Tcl_GetStringFromObj(objv[i],&length);
> +                        if (strcmp(_str,"-generic_type") == 0) {
> +                    cmd = _wrap_madNotice144_generic_type_set;
> +                }  else if (strcmp(_str,"-prod_type_msb") == 0) {
> +                    cmd = _wrap_madNotice144_prod_type_msb_set;
> +                }  else if (strcmp(_str,"-prod_type_lsb") == 0) {
> +                    cmd = _wrap_madNotice144_prod_type_lsb_set;
> +                }  else if (strcmp(_str,"-trap_num") == 0) {
> +                    cmd = _wrap_madNotice144_trap_num_set;
> +                }  else if (strcmp(_str,"-issuer_lid") == 0) {
> +                    cmd = _wrap_madNotice144_issuer_lid_set;
> +                }  else if (strcmp(_str,"-toggle_count") == 0) {
> +                    cmd = _wrap_madNotice144_toggle_count_set;
> +                }  else if (strcmp(_str,"-pad1") == 0) {
> +                    cmd = _wrap_madNotice144_pad1_set;
> +                }  else if (strcmp(_str,"-lid") == 0) {
> +                    cmd = _wrap_madNotice144_lid_set;
> +                }  else if (strcmp(_str,"-pad2") == 0) {
> +                    cmd = _wrap_madNotice144_pad2_set;
> +                }  else if (strcmp(_str,"-new_cap_mask") == 0) {
> +                    cmd = _wrap_madNotice144_new_cap_mask_set;
> +                }  else if (strcmp(_str,"-issuer_gid") == 0) {
> +                    cmd = _wrap_madNotice144_issuer_gid_set;
> +                } 
> +          if (cmd) {
> +            oldarg = objv[i];
> +            objv[i] = obj;
> +            rcode = (*cmd)(clientData,interp,3,&objv[i-1]);
> +            objv[i] = oldarg;
> +            if (rcode == TCL_ERROR) return rcode;
> +            cmd = 0;
> +          } else {
> +            Tcl_SetStringObj(tcl_result,"Invalid configure option. Must be { -generic_type -prod_type_msb -prod_type_lsb -trap_num -issuer_lid -toggle_count -pad1 -lid -pad2 -new_cap_mask -issuer_gid  }",-1);
> +            return TCL_ERROR;
> +          }
> +        i+=2;
> +      }
> +      if ((i < objc) || (i == 2)) {
> +        Tcl_SetStringObj(tcl_result,"{ -generic_type -prod_type_msb -prod_type_lsb -trap_num -issuer_lid -toggle_count -pad1 -lid -pad2 -new_cap_mask -issuer_gid  }",-1);
> +        return TCL_ERROR;
> +      }
> +      return TCL_OK;
> +    } else if ((c == 'c') && (strncmp(_str,"cget",length) == 0) && (length >= 2)) {
> +      if (objc == 3) {
> +        _str = Tcl_GetStringFromObj(objv[2],&length);
> +        if (0) {}
> +                        if (strcmp(_str,"-generic_type") == 0) {
> +                    cmd = _wrap_madNotice144_generic_type_get;
> +                }  else if (strcmp(_str,"-prod_type_msb") == 0) {
> +                    cmd = _wrap_madNotice144_prod_type_msb_get;
> +                }  else if (strcmp(_str,"-prod_type_lsb") == 0) {
> +                    cmd = _wrap_madNotice144_prod_type_lsb_get;
> +                }  else if (strcmp(_str,"-trap_num") == 0) {
> +                    cmd = _wrap_madNotice144_trap_num_get;
> +                }  else if (strcmp(_str,"-issuer_lid") == 0) {
> +                    cmd = _wrap_madNotice144_issuer_lid_get;
> +                }  else if (strcmp(_str,"-toggle_count") == 0) {
> +                    cmd = _wrap_madNotice144_toggle_count_get;
> +                }  else if (strcmp(_str,"-pad1") == 0) {
> +                    cmd = _wrap_madNotice144_pad1_get;
> +                }  else if (strcmp(_str,"-lid") == 0) {
> +                    cmd = _wrap_madNotice144_lid_get;
> +                }  else if (strcmp(_str,"-pad2") == 0) {
> +                    cmd = _wrap_madNotice144_pad2_get;
> +                }  else if (strcmp(_str,"-new_cap_mask") == 0) {
> +                    cmd = _wrap_madNotice144_new_cap_mask_get;
> +                }  else if (strcmp(_str,"-issuer_gid") == 0) {
> +                    cmd = _wrap_madNotice144_issuer_gid_get;
> +                } 
> +          else if (strcmp(_str,"-this") == 0) {
> +            SWIG_SetPointerObj(tcl_result,(void *) clientData, "_madNotice144_p");
> +            return TCL_OK;
> +          }
> +        if (cmd) {
> +          oldarg = objv[2];
> +          objv[2] = obj;
> +          rcode = (*cmd)(clientData,interp,objc-1,&objv[1]);
> +          objv[2] = oldarg;
> +          return rcode;
> +        } else {
> +          Tcl_SetStringObj(tcl_result,"Invalid cget option. Must be { -this -generic_type -prod_type_msb -prod_type_lsb -trap_num -issuer_lid -toggle_count -pad1 -lid -pad2 -new_cap_mask -issuer_gid  }",-1);
> +          return TCL_ERROR;
> +        }
> +      } else {
> +        Tcl_SetStringObj(tcl_result,"{ -this -generic_type -prod_type_msb -prod_type_lsb -trap_num -issuer_lid -toggle_count -pad1 -lid -pad2 -new_cap_mask -issuer_gid  }", -1);
> +        return TCL_ERROR;
> +      }
> +    } else if ((c == 'd') && (strncmp(_str,"dump",length) == 0) && (length >= 2)) {
> +      if (objc == 2) {
> +        Tcl_Obj *pDumpObj;
> +        pDumpObj = Tcl_NewStringObj("",-1);
> +        Tcl_IncrRefCount(pDumpObj);
> +                cmd = _wrap_madNotice144_generic_type_get;
> +        oldarg = objv[2];
> +        objv[2] = obj;
> +        rcode = (*cmd)(clientData,interp,objc,&objv[1]);
> +        objv[2] = oldarg;
> +        Tcl_AppendStringsToObj(pDumpObj, "-generic_type ", Tcl_GetStringFromObj(tcl_result, NULL), " ", NULL);
> +        Tcl_SetStringObj(tcl_result, Tcl_GetStringFromObj(pDumpObj, NULL), -1);
> +        cmd = _wrap_madNotice144_prod_type_msb_get;
> +        oldarg = objv[2];
> +        objv[2] = obj;
> +        rcode = (*cmd)(clientData,interp,objc,&objv[1]);
> +        objv[2] = oldarg;
> +        Tcl_AppendStringsToObj(pDumpObj, "-prod_type_msb ", Tcl_GetStringFromObj(tcl_result, NULL), " ", NULL);
> +        Tcl_SetStringObj(tcl_result, Tcl_GetStringFromObj(pDumpObj, NULL), -1);
> +        cmd = _wrap_madNotice144_prod_type_lsb_get;
> +        oldarg = objv[2];
> +        objv[2] = obj;
> +        rcode = (*cmd)(clientData,interp,objc,&objv[1]);
> +        objv[2] = oldarg;
> +        Tcl_AppendStringsToObj(pDumpObj, "-prod_type_lsb ", Tcl_GetStringFromObj(tcl_result, NULL), " ", NULL);
> +        Tcl_SetStringObj(tcl_result, Tcl_GetStringFromObj(pDumpObj, NULL), -1);
> +        cmd = _wrap_madNotice144_trap_num_get;
> +        oldarg = objv[2];
> +        objv[2] = obj;
> +        rcode = (*cmd)(clientData,interp,objc,&objv[1]);
> +        objv[2] = oldarg;
> +        Tcl_AppendStringsToObj(pDumpObj, "-trap_num ", Tcl_GetStringFromObj(tcl_result, NULL), " ", NULL);
> +        Tcl_SetStringObj(tcl_result, Tcl_GetStringFromObj(pDumpObj, NULL), -1);
> +        cmd = _wrap_madNotice144_issuer_lid_get;
> +        oldarg = objv[2];
> +        objv[2] = obj;
> +        rcode = (*cmd)(clientData,interp,objc,&objv[1]);
> +        objv[2] = oldarg;
> +        Tcl_AppendStringsToObj(pDumpObj, "-issuer_lid ", Tcl_GetStringFromObj(tcl_result, NULL), " ", NULL);
> +        Tcl_SetStringObj(tcl_result, Tcl_GetStringFromObj(pDumpObj, NULL), -1);
> +        cmd = _wrap_madNotice144_toggle_count_get;
> +        oldarg = objv[2];
> +        objv[2] = obj;
> +        rcode = (*cmd)(clientData,interp,objc,&objv[1]);
> +        objv[2] = oldarg;
> +        Tcl_AppendStringsToObj(pDumpObj, "-toggle_count ", Tcl_GetStringFromObj(tcl_result, NULL), " ", NULL);
> +        Tcl_SetStringObj(tcl_result, Tcl_GetStringFromObj(pDumpObj, NULL), -1);
> +        cmd = _wrap_madNotice144_pad1_get;
> +        oldarg = objv[2];
> +        objv[2] = obj;
> +        rcode = (*cmd)(clientData,interp,objc,&objv[1]);
> +        objv[2] = oldarg;
> +        Tcl_AppendStringsToObj(pDumpObj, "-pad1 ", Tcl_GetStringFromObj(tcl_result, NULL), " ", NULL);
> +        Tcl_SetStringObj(tcl_result, Tcl_GetStringFromObj(pDumpObj, NULL), -1);
> +        cmd = _wrap_madNotice144_lid_get;
> +        oldarg = objv[2];
> +        objv[2] = obj;
> +        rcode = (*cmd)(clientData,interp,objc,&objv[1]);
> +        objv[2] = oldarg;
> +        Tcl_AppendStringsToObj(pDumpObj, "-lid ", Tcl_GetStringFromObj(tcl_result, NULL), " ", NULL);
> +        Tcl_SetStringObj(tcl_result, Tcl_GetStringFromObj(pDumpObj, NULL), -1);
> +        cmd = _wrap_madNotice144_pad2_get;
> +        oldarg = objv[2];
> +        objv[2] = obj;
> +        rcode = (*cmd)(clientData,interp,objc,&objv[1]);
> +        objv[2] = oldarg;
> +        Tcl_AppendStringsToObj(pDumpObj, "-pad2 ", Tcl_GetStringFromObj(tcl_result, NULL), " ", NULL);
> +        Tcl_SetStringObj(tcl_result, Tcl_GetStringFromObj(pDumpObj, NULL), -1);
> +        cmd = _wrap_madNotice144_new_cap_mask_get;
> +        oldarg = objv[2];
> +        objv[2] = obj;
> +        rcode = (*cmd)(clientData,interp,objc,&objv[1]);
> +        objv[2] = oldarg;
> +        Tcl_AppendStringsToObj(pDumpObj, "-new_cap_mask ", Tcl_GetStringFromObj(tcl_result, NULL), " ", NULL);
> +        Tcl_SetStringObj(tcl_result, Tcl_GetStringFromObj(pDumpObj, NULL), -1);
> +        cmd = _wrap_madNotice144_issuer_gid_get;
> +        oldarg = objv[2];
> +        objv[2] = obj;
> +        rcode = (*cmd)(clientData,interp,objc,&objv[1]);
> +        objv[2] = oldarg;
> +        Tcl_AppendStringsToObj(pDumpObj, "-issuer_gid ", Tcl_GetStringFromObj(tcl_result, NULL), " ", NULL);
> +        Tcl_SetStringObj(tcl_result, Tcl_GetStringFromObj(pDumpObj, NULL), -1);
> +
> +        Tcl_DecrRefCount(pDumpObj);
> +        return TCL_OK;
> +      } else {
> +        Tcl_SetStringObj(tcl_result,"no parameters are allowed for dump", -1);
> +        return TCL_ERROR;
> +      }
> +    }
> +  if (!cmd) {
> +    Tcl_SetStringObj(tcl_result,"Invalid Method. Must be { dump cget configure send_set }",-1);
> +    return TCL_ERROR;
> +  }
> +  oldarg = objv[1];
> +  objv[1] = obj;
> +  rcode = (*cmd)(clientData,interp,objc,objv);
> +  objv[1] = oldarg;
> +  return rcode;
> +}
> +
> +
> +
> +/* objcmd8.swg : Tcl 8.x object creation */
> +
> +static int TclmadNotice144Cmd(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
> +    void (*del)(ClientData) = 0;
> +    char *name = 0;
> +    int (*cmd)(ClientData, Tcl_Interp *, int, Tcl_Obj *CONST*) = 0;
> +    madNotice144 * newObj = 0;
> +    int firstarg = 0;
> +    int thisarg = 0;
> +    int length;
> +    char *_str;
> +    Tcl_Obj *tcl_result;
> +
> +    tcl_result = Tcl_GetObjResult(interp);
> +    if (objc == 1) {
> +        cmd = _wrap_new_madNotice144;
> +    } else {
> +      _str = Tcl_GetStringFromObj(objv[1],&length);
> +      if (strcmp(_str,"-this") == 0) thisarg = 2;
> +      else if (strcmp(_str,"-args") == 0) {
> +	firstarg = 1;
> +	cmd = _wrap_new_madNotice144;
> +      } else if (objc == 2) {
> +	firstarg = 1;
> +	name = _str;
> +	cmd = _wrap_new_madNotice144;
> +      } else if (objc >= 3) {
> +	name = _str;
> +	_str = Tcl_GetStringFromObj(objv[2],&length);
> +	if (strcmp(_str,"-this") == 0) thisarg = 3;
> +	else {
> +	  firstarg = 1;
> +	  cmd = _wrap_new_madNotice144;
> +	}
> +      }
> +    }
> +    if (cmd) {
> +        int result;
> +        result = (*cmd)(clientData,interp,objc-firstarg,&objv[firstarg]);
> +        if (result == TCL_OK) {
> +            SWIG_GetPointerObj(interp,tcl_result,(void **) &newObj,"_madNotice144_p");
> +        } else { return result; }
> +        if (!name) name = Tcl_GetStringFromObj(tcl_result,&length);
> +        del = TclDeletemadNotice144;
> +    } else if (thisarg > 0) { 
> +        if (thisarg < objc) {
> +            char *r;
> +            r = SWIG_GetPointerObj(interp,objv[thisarg],(void **) &newObj,"_madNotice144_p");
> +            if (r) {
> +	      Tcl_SetStringObj(tcl_result,"Type error. not a madNotice144 object.",-1);
> +	      return TCL_ERROR;
> +            }
> +        if (!name) name = Tcl_GetStringFromObj(objv[thisarg],&length);
> +	Tcl_SetStringObj(tcl_result,name,-1);
> +        } else {
> +            Tcl_SetStringObj(tcl_result,"wrong # args.",-1);
> +            return TCL_ERROR;
> +        }
> +    } else {
> +        Tcl_SetStringObj(tcl_result,"No constructor available.",-1);
> +        return TCL_ERROR;
> +    }
> +    {
> +      Tcl_CmdInfo dummy;
> +      if (!Tcl_GetCommandInfo(interp,name,&dummy)) {
> +	Tcl_CreateObjCommand(interp,name, TclmadNotice144MethodCmd, (ClientData) newObj, del);
> +	return TCL_OK;
> +      } else {
> +	Tcl_SetStringObj(tcl_result,"Object name already exists!",-1);
> +	return TCL_ERROR;
> +      }
> +    }
> +}
> +
> +
>  SWIGEXPORT(int,Ibdm_Init)(Tcl_Interp *interp) {
>  	 if (interp == 0) 
>  		 return TCL_ERROR;
> @@ -27473,6 +34707,7 @@ SWIGEXPORT(int,Ibdm_Init)(Tcl_Interp *in
>  	 Tcl_CreateObjCommand(interp, SWIG_prefix "IBMSNode_setPhyPortPMCounter", _wrap_IBMSNode_setPhyPortPMCounter, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
>  	 Tcl_CreateObjCommand(interp, SWIG_prefix "IBMSNode_getPhyPortPMCounter", _wrap_IBMSNode_getPhyPortPMCounter, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
>  	 Tcl_CreateObjCommand(interp, SWIG_prefix "IBMSNode_getPortInfo", _wrap_IBMSNode_getPortInfo, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "IBMSNode_setLinkStatus", _wrap_IBMSNode_setLinkStatus, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
>  	 Tcl_CreateObjCommand(interp, SWIG_prefix "IBMSNode_getNodeInfo", _wrap_IBMSNode_getNodeInfo, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
>  	 Tcl_CreateObjCommand(interp, SWIG_prefix "IBMSNode_getSwitchInfo", _wrap_IBMSNode_getSwitchInfo, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
>  	 Tcl_CreateObjCommand(interp, SWIG_prefix "IBMSNode_getPKeyTblBlock", _wrap_IBMSNode_getPKeyTblBlock, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> @@ -27510,6 +34745,138 @@ SWIGEXPORT(int,Ibdm_Init)(Tcl_Interp *in
>  	 Tcl_CreateObjCommand(interp, SWIG_prefix "madMcMemberRec_send_get", _wrap_madMcMemberRec_send_get, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
>  	 Tcl_CreateObjCommand(interp, SWIG_prefix "madMcMemberRec_send_del", _wrap_madMcMemberRec_send_del, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
>  	 Tcl_CreateObjCommand(interp,SWIG_prefix "madMcMemberRec",TclmadMcMemberRecCmd, (ClientData) NULL, NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "new_madPathRec", _wrap_new_madPathRec, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "delete_madPathRec", _wrap_delete_madPathRec, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madPathRec_resv0_set", _wrap_madPathRec_resv0_set, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madPathRec_resv0_get", _wrap_madPathRec_resv0_get, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madPathRec_dgid_set", _wrap_madPathRec_dgid_set, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madPathRec_dgid_get", _wrap_madPathRec_dgid_get, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madPathRec_sgid_set", _wrap_madPathRec_sgid_set, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madPathRec_sgid_get", _wrap_madPathRec_sgid_get, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madPathRec_dlid_set", _wrap_madPathRec_dlid_set, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madPathRec_dlid_get", _wrap_madPathRec_dlid_get, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madPathRec_slid_set", _wrap_madPathRec_slid_set, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madPathRec_slid_get", _wrap_madPathRec_slid_get, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madPathRec_hop_flow_raw_set", _wrap_madPathRec_hop_flow_raw_set, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madPathRec_hop_flow_raw_get", _wrap_madPathRec_hop_flow_raw_get, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madPathRec_tclass_set", _wrap_madPathRec_tclass_set, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madPathRec_tclass_get", _wrap_madPathRec_tclass_get, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madPathRec_num_path_set", _wrap_madPathRec_num_path_set, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madPathRec_num_path_get", _wrap_madPathRec_num_path_get, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madPathRec_pkey_set", _wrap_madPathRec_pkey_set, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madPathRec_pkey_get", _wrap_madPathRec_pkey_get, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madPathRec_sl_set", _wrap_madPathRec_sl_set, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madPathRec_sl_get", _wrap_madPathRec_sl_get, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madPathRec_mtu_set", _wrap_madPathRec_mtu_set, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madPathRec_mtu_get", _wrap_madPathRec_mtu_get, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madPathRec_rate_set", _wrap_madPathRec_rate_set, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madPathRec_rate_get", _wrap_madPathRec_rate_get, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madPathRec_pkt_life_set", _wrap_madPathRec_pkt_life_set, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madPathRec_pkt_life_get", _wrap_madPathRec_pkt_life_get, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madPathRec_preference_set", _wrap_madPathRec_preference_set, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madPathRec_preference_get", _wrap_madPathRec_preference_get, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madPathRec_resv2_set", _wrap_madPathRec_resv2_set, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madPathRec_resv2_get", _wrap_madPathRec_resv2_get, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madPathRec_send_get", _wrap_madPathRec_send_get, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp,SWIG_prefix "madPathRec",TclmadPathRecCmd, (ClientData) NULL, NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "new_madServiceRec", _wrap_new_madServiceRec, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "delete_madServiceRec", _wrap_delete_madServiceRec, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madServiceRec_service_id_set", _wrap_madServiceRec_service_id_set, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madServiceRec_service_id_get", _wrap_madServiceRec_service_id_get, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madServiceRec_service_gid_set", _wrap_madServiceRec_service_gid_set, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madServiceRec_service_gid_get", _wrap_madServiceRec_service_gid_get, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madServiceRec_service_pkey_set", _wrap_madServiceRec_service_pkey_set, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madServiceRec_service_pkey_get", _wrap_madServiceRec_service_pkey_get, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madServiceRec_resv_set", _wrap_madServiceRec_resv_set, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madServiceRec_resv_get", _wrap_madServiceRec_resv_get, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madServiceRec_service_lease_set", _wrap_madServiceRec_service_lease_set, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madServiceRec_service_lease_get", _wrap_madServiceRec_service_lease_get, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madServiceRec_service_key_set", _wrap_madServiceRec_service_key_set, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madServiceRec_service_key_get", _wrap_madServiceRec_service_key_get, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madServiceRec_service_name_set", _wrap_madServiceRec_service_name_set, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madServiceRec_service_name_get", _wrap_madServiceRec_service_name_get, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madServiceRec_service_data8_set", _wrap_madServiceRec_service_data8_set, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madServiceRec_service_data8_get", _wrap_madServiceRec_service_data8_get, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madServiceRec_service_data16_set", _wrap_madServiceRec_service_data16_set, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madServiceRec_service_data16_get", _wrap_madServiceRec_service_data16_get, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madServiceRec_service_data32_set", _wrap_madServiceRec_service_data32_set, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madServiceRec_service_data32_get", _wrap_madServiceRec_service_data32_get, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madServiceRec_service_data64_set", _wrap_madServiceRec_service_data64_set, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madServiceRec_service_data64_get", _wrap_madServiceRec_service_data64_get, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madServiceRec_send_set", _wrap_madServiceRec_send_set, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madServiceRec_send_get", _wrap_madServiceRec_send_get, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madServiceRec_send_del", _wrap_madServiceRec_send_del, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp,SWIG_prefix "madServiceRec",TclmadServiceRecCmd, (ClientData) NULL, NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "new_madNotice128", _wrap_new_madNotice128, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "delete_madNotice128", _wrap_delete_madNotice128, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madNotice128_generic_type_set", _wrap_madNotice128_generic_type_set, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madNotice128_generic_type_get", _wrap_madNotice128_generic_type_get, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madNotice128_prod_type_msb_set", _wrap_madNotice128_prod_type_msb_set, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madNotice128_prod_type_msb_get", _wrap_madNotice128_prod_type_msb_get, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madNotice128_prod_type_lsb_set", _wrap_madNotice128_prod_type_lsb_set, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madNotice128_prod_type_lsb_get", _wrap_madNotice128_prod_type_lsb_get, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madNotice128_trap_num_set", _wrap_madNotice128_trap_num_set, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madNotice128_trap_num_get", _wrap_madNotice128_trap_num_get, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madNotice128_issuer_lid_set", _wrap_madNotice128_issuer_lid_set, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madNotice128_issuer_lid_get", _wrap_madNotice128_issuer_lid_get, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madNotice128_toggle_count_set", _wrap_madNotice128_toggle_count_set, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madNotice128_toggle_count_get", _wrap_madNotice128_toggle_count_get, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madNotice128_sw_lid_set", _wrap_madNotice128_sw_lid_set, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madNotice128_sw_lid_get", _wrap_madNotice128_sw_lid_get, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madNotice128_issuer_gid_set", _wrap_madNotice128_issuer_gid_set, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madNotice128_issuer_gid_get", _wrap_madNotice128_issuer_gid_get, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madNotice128_send_set", _wrap_madNotice128_send_set, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp,SWIG_prefix "madNotice128",TclmadNotice128Cmd, (ClientData) NULL, NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "new_madNotice129", _wrap_new_madNotice129, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "delete_madNotice129", _wrap_delete_madNotice129, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madNotice129_generic_type_set", _wrap_madNotice129_generic_type_set, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madNotice129_generic_type_get", _wrap_madNotice129_generic_type_get, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madNotice129_prod_type_msb_set", _wrap_madNotice129_prod_type_msb_set, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madNotice129_prod_type_msb_get", _wrap_madNotice129_prod_type_msb_get, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madNotice129_prod_type_lsb_set", _wrap_madNotice129_prod_type_lsb_set, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madNotice129_prod_type_lsb_get", _wrap_madNotice129_prod_type_lsb_get, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madNotice129_trap_num_set", _wrap_madNotice129_trap_num_set, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madNotice129_trap_num_get", _wrap_madNotice129_trap_num_get, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madNotice129_issuer_lid_set", _wrap_madNotice129_issuer_lid_set, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madNotice129_issuer_lid_get", _wrap_madNotice129_issuer_lid_get, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madNotice129_toggle_count_set", _wrap_madNotice129_toggle_count_set, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madNotice129_toggle_count_get", _wrap_madNotice129_toggle_count_get, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madNotice129_pad_set", _wrap_madNotice129_pad_set, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madNotice129_pad_get", _wrap_madNotice129_pad_get, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madNotice129_lid_set", _wrap_madNotice129_lid_set, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madNotice129_lid_get", _wrap_madNotice129_lid_get, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madNotice129_port_num_set", _wrap_madNotice129_port_num_set, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madNotice129_port_num_get", _wrap_madNotice129_port_num_get, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madNotice129_issuer_gid_set", _wrap_madNotice129_issuer_gid_set, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madNotice129_issuer_gid_get", _wrap_madNotice129_issuer_gid_get, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madNotice129_send_set", _wrap_madNotice129_send_set, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp,SWIG_prefix "madNotice129",TclmadNotice129Cmd, (ClientData) NULL, NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "new_madNotice144", _wrap_new_madNotice144, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "delete_madNotice144", _wrap_delete_madNotice144, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madNotice144_generic_type_set", _wrap_madNotice144_generic_type_set, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madNotice144_generic_type_get", _wrap_madNotice144_generic_type_get, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madNotice144_prod_type_msb_set", _wrap_madNotice144_prod_type_msb_set, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madNotice144_prod_type_msb_get", _wrap_madNotice144_prod_type_msb_get, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madNotice144_prod_type_lsb_set", _wrap_madNotice144_prod_type_lsb_set, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madNotice144_prod_type_lsb_get", _wrap_madNotice144_prod_type_lsb_get, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madNotice144_trap_num_set", _wrap_madNotice144_trap_num_set, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madNotice144_trap_num_get", _wrap_madNotice144_trap_num_get, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madNotice144_issuer_lid_set", _wrap_madNotice144_issuer_lid_set, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madNotice144_issuer_lid_get", _wrap_madNotice144_issuer_lid_get, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madNotice144_toggle_count_set", _wrap_madNotice144_toggle_count_set, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madNotice144_toggle_count_get", _wrap_madNotice144_toggle_count_get, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madNotice144_pad1_set", _wrap_madNotice144_pad1_set, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madNotice144_pad1_get", _wrap_madNotice144_pad1_get, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madNotice144_lid_set", _wrap_madNotice144_lid_set, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madNotice144_lid_get", _wrap_madNotice144_lid_get, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madNotice144_pad2_set", _wrap_madNotice144_pad2_set, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madNotice144_pad2_get", _wrap_madNotice144_pad2_get, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madNotice144_new_cap_mask_set", _wrap_madNotice144_new_cap_mask_set, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madNotice144_new_cap_mask_get", _wrap_madNotice144_new_cap_mask_get, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madNotice144_issuer_gid_set", _wrap_madNotice144_issuer_gid_set, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madNotice144_issuer_gid_get", _wrap_madNotice144_issuer_gid_get, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp, SWIG_prefix "madNotice144_send_set", _wrap_madNotice144_send_set, (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
> +	 Tcl_CreateObjCommand(interp,SWIG_prefix "madNotice144",TclmadNotice144Cmd, (ClientData) NULL, NULL);
>  /*
>   * These are the pointer type-equivalency mappings. 
>   * (Used by the SWIG pointer type-checker).
> @@ -27517,6 +34884,7 @@ SWIGEXPORT(int,Ibdm_Init)(Tcl_Interp *in
>  	 SWIG_RegisterMapping("_signed_long","_long",0);
>  	 SWIG_RegisterMapping("_ib_lft_record_t","_struct__ib_lft_record",0);
>  	 SWIG_RegisterMapping("_ib_lft_record_t","__ib_lft_record",0);
> +	 SWIG_RegisterMapping("_madServiceRec","_struct_madServiceRec",0);
>  	 SWIG_RegisterMapping("_struct_madMcMemberRec","_madMcMemberRec",0);
>  	 SWIG_RegisterMapping("_IBPort","_class_IBPort",0);
>  	 SWIG_RegisterMapping("_struct__ib_port_info","_ib_port_info_t",0);
> @@ -27535,17 +34903,24 @@ SWIGEXPORT(int,Ibdm_Init)(Tcl_Interp *in
>  	 SWIG_RegisterMapping("_class_IBPort","_IBPort",0);
>  	 SWIG_RegisterMapping("_struct__ib_node_desc","_ib_node_desc_t",0);
>  	 SWIG_RegisterMapping("_struct__ib_node_desc","__ib_node_desc",0);
> +	 SWIG_RegisterMapping("_madPathRec","_struct_madPathRec",0);
>  	 SWIG_RegisterMapping("_IBMgtSim","_class_IBMgtSim",0);
> +	 SWIG_RegisterMapping("_struct_madServiceRec","_madServiceRec",0);
>  	 SWIG_RegisterMapping("_class_IBFabric","_IBFabric",0);
>  	 SWIG_RegisterMapping("_ib_switch_info_t","_struct__ib_switch_info",0);
>  	 SWIG_RegisterMapping("_ib_switch_info_t","__ib_switch_info",0);
>  	 SWIG_RegisterMapping("_class_msgManager","_msgManager",0);
>  	 SWIG_RegisterMapping("_unsigned_long","_long",0);
> +	 SWIG_RegisterMapping("_struct_madNotice128","_madNotice128",0);
> +	 SWIG_RegisterMapping("_struct_madNotice129","_madNotice129",0);
>  	 SWIG_RegisterMapping("_struct__ib_lft_record","_ib_lft_record_t",0);
>  	 SWIG_RegisterMapping("_struct__ib_lft_record","__ib_lft_record",0);
>  	 SWIG_RegisterMapping("_madMcMemberRec","_struct_madMcMemberRec",0);
> +	 SWIG_RegisterMapping("_struct_madPathRec","_madPathRec",0);
>  	 SWIG_RegisterMapping("_signed_int","_int",0);
> +	 SWIG_RegisterMapping("_madNotice128","_struct_madNotice128",0);
>  	 SWIG_RegisterMapping("_IBMSNode","_class_IBMSNode",0);
> +	 SWIG_RegisterMapping("_madNotice129","_struct_madNotice129",0);
>  	 SWIG_RegisterMapping("_IBSysPort","_class_IBSysPort",0);
>  	 SWIG_RegisterMapping("_ib_pm_counters_t","_struct__ib_pm_counters",0);
>  	 SWIG_RegisterMapping("_ib_pm_counters_t","__ib_pm_counters",0);
> @@ -27554,10 +34929,12 @@ SWIGEXPORT(int,Ibdm_Init)(Tcl_Interp *in
>  	 SWIG_RegisterMapping("_ib_port_info_t","__ib_port_info",0);
>  	 SWIG_RegisterMapping("_struct__ib_pm_counters","_ib_pm_counters_t",0);
>  	 SWIG_RegisterMapping("_struct__ib_pm_counters","__ib_pm_counters",0);
> +	 SWIG_RegisterMapping("_struct_madNotice144","_madNotice144",0);
>  	 SWIG_RegisterMapping("__ib_pm_counters","_ib_pm_counters_t",0);
>  	 SWIG_RegisterMapping("__ib_pm_counters","_struct__ib_pm_counters",0);
>  	 SWIG_RegisterMapping("_signed_short","_short",0);
>  	 SWIG_RegisterMapping("_IBNode","_class_IBNode",0);
> +	 SWIG_RegisterMapping("_madNotice144","_struct_madNotice144",0);
>  	 SWIG_RegisterMapping("_unsigned_int","_int",0);
>  	 SWIG_RegisterMapping("_class_IBSysPort","_IBSysPort",0);
>  	 SWIG_RegisterMapping("_class_IBSystem","_IBSystem",0);
> Index: Makefile.am
> ===================================================================
> --- Makefile.am	(revision 5446)
> +++ Makefile.am	(working copy)
> @@ -87,7 +87,8 @@ endif
>  ibmssh_LDADD = -libmscli $(IBDM_LIB) $(OSM_LDFLAGS) $(TCL_LIBS)
>  
>  # SWIG FILES:
> -SWIG_IFC_FILES= $(srcdir)/sim.i $(srcdir)/ib_types.i $(srcdir)/ibdm.i
> +SWIG_IFC_FILES= $(srcdir)/sim.i $(srcdir)/ib_types.i $(srcdir)/ibdm.i \
> +   $(srcdir)/inttypes.i $(srcdir)/mads.i
>  
>  # only generate the swig wrappers if they do not exist...
>  # so we avoid un-needed swig dependency
> 
> 




More information about the general mailing list