What I said in my reply is that there is no need for the value. It was not used 
in 3.0 so what is the need now?
Thanks,
Hans

On 09/23/2013 01:52 PM, Nagendra Kumar wrote:
> HI Hans,
>               Amf sets NCS_ENV_COMPONENT_ERROR_SRC with value of enums. So, I 
> can't mention numeric like 9 or 10 in AMF PR.
>
> Thanks
> -Nagu
>
> -----Original Message-----
> From: Hans Feldt [mailto:[email protected]]
> Sent: 23 September 2013 17:10
> To: Nagendra Kumar
> Cc: Mathivanan Naickan Palanivelu; Praveen Malviya; 
> [email protected]; UABHANO
> Subject: Re: [devel] [PATCH 1 of 1] Amf: Change NCS_ENV_COMPONENT_ERROR_SRC 
> to OSAF_COMPONENT_ERROR_SOURCE [#429]
>
> On 09/23/2013 01:26 PM, Nagendra Kumar wrote:
>> Hi Hans,
>>
>>>> In order to complete #429 I would expect some patches that change the CLC 
>>>> CLI scripts for OpenSAF components. Is that pending?
>>
>> It is not pending from my side. After the information provided in PR doc, 
>> individual service owner can do it.
>>
>>>> changing an external interface (name of env var)
>> So, you mean, in AMF PR, I can give name as AVND_ERR_ for all enums ?
>
> No! As I read #428 it is about generating core dumps for for opensaf 
> components when they have failed. In order to do that you need to change the 
> CLEANUP scripts to use the special environment variable previously known as 
> NCS_ENV_COMPONENT_ERROR_SRC. In 3.x no script used the actual value of such 
> variable. Thus it is more the existence of the variable that means anything. 
> Its value can be set 1/YES/TRUE, does not really matter. Which means 
> documenting this is not hard.
>
> And you don't have to change any interal constants because there are 
> internal...
>
> Thanks,
> Hans
>
>
>>
>> Thanks
>> -Nagu
>>
>> -----Original Message-----
>> From: Hans Feldt [mailto:[email protected]]
>> Sent: 23 September 2013 16:44
>> To: Nagendra Kumar
>> Cc: Mathivanan Naickan Palanivelu; Praveen Malviya;
>> [email protected]; UABHANO
>> Subject: Re: [devel] [PATCH 1 of 1] Amf: Change
>> NCS_ENV_COMPONENT_ERROR_SRC to OSAF_COMPONENT_ERROR_SOURCE [#429]
>>
>> Hi,
>>
>> First I think Hans Nordebäcks C++ changes to amfnd are first in the pipe. 
>> You should ack those so that his work not gets wasted. I think Praveen was 
>> reviewer. I have already acked with a small comment.
>>
>> Second you are doing two things in this patch. Refactoring the name of amfnd 
>> internal constants and changing an external interface (name of env var). 
>> Should be in separate patches. There is not much point in changing the name 
>> of internal constants now. There are so many of them that we should rather 
>> have a strategy instead. So I suggest you remove that part.
>>
>> In order to complete #429 I would expect some patches that change the CLC 
>> CLI scripts for OpenSAF components. Is that pending?
>>
>> Thanks,
>> Hans
>>
>>
>> On 09/23/2013 09:02 AM, Nagendra Kumar wrote:
>>> Will get committed tomorrow. Please review.
>>>
>>>
>>> Thanks
>>> -Nagu
>>>
>>> -----Original Message-----
>>> From: Nagendra Kumar
>>> Sent: 17 September 2013 16:52
>>> To: [email protected]; [email protected]; Mathivanan
>>> Naickan Palanivelu; Praveen Malviya
>>> Cc: [email protected]
>>> Subject: [devel] [PATCH 1 of 1] Amf: Change
>>> NCS_ENV_COMPONENT_ERROR_SRC to OSAF_COMPONENT_ERROR_SOURCE [#429]
>>>
>>>     osaf/services/saf/amf/amfnd/avnd_cam.c         |   4 +-
>>>     osaf/services/saf/amf/amfnd/avnd_cbq.c         |  18 ++++++------
>>>     osaf/services/saf/amf/amfnd/avnd_chc.c         |   4 +-
>>>     osaf/services/saf/amf/amfnd/avnd_clc.c         |   8 ++--
>>>     osaf/services/saf/amf/amfnd/avnd_comp.c        |   2 +-
>>>     osaf/services/saf/amf/amfnd/avnd_err.c         |  10 +++---
>>>     osaf/services/saf/amf/amfnd/avnd_mon.c         |   2 +-
>>>     osaf/services/saf/amf/amfnd/include/avnd_err.h |  38 
>>> +++++++++++++-------------
>>>     8 files changed, 43 insertions(+), 43 deletions(-)
>>>
>>>
>>> diff --git a/osaf/services/saf/amf/amfnd/avnd_cam.c
>>> b/osaf/services/saf/amf/amfnd/avnd_cam.c
>>> --- a/osaf/services/saf/amf/amfnd/avnd_cam.c
>>> +++ b/osaf/services/saf/amf/amfnd/avnd_cam.c
>>> @@ -66,7 +66,7 @@ uint32_t avnd_comp_am_start(AVND_CB *cb,
>>>                     rc = avnd_comp_clc_cmd_execute(cb, comp, 
>>> AVND_COMP_CLC_CMD_TYPE_AMSTART);
>>>             } else {
>>>           /*** comp error  processing  ***/
>>> -           err.src = AVND_ERR_SRC_AM;
>>> +           err.src = OSAF_ERR_SRC_AM;
>>>                     err.rec_rcvr.avsv_ext = comp->err_info.def_rec;
>>>                     rc = avnd_err_process(cb, comp, &err);
>>>             }
>>> @@ -167,7 +167,7 @@ uint32_t avnd_comp_amstop_clc_res_proces
>>>                     if (!m_AVND_COMP_IS_FAILED(comp)) {
>>>
>>>             /*** process error ***/
>>> -                   err.src = AVND_ERR_SRC_AM;
>>> +                   err.src = OSAF_ERR_SRC_AM;
>>>                             err.rec_rcvr.avsv_ext = comp->err_info.def_rec;
>>>                             rc = avnd_err_process(cb, comp, &err);
>>>                     }
>>> diff --git a/osaf/services/saf/amf/amfnd/avnd_cbq.c
>>> b/osaf/services/saf/amf/amfnd/avnd_cbq.c
>>> --- a/osaf/services/saf/amf/amfnd/avnd_cbq.c
>>> +++ b/osaf/services/saf/amf/amfnd/avnd_cbq.c
>>> @@ -155,7 +155,7 @@ uint32_t avnd_evt_ava_csi_quiescing_comp
>>>
>>>             if (SA_AIS_OK != qsc->err) {
>>>                     /* process comp-failure */
>>> -           err_info.src = AVND_ERR_SRC_CBK_CSI_SET_FAILED;
>>> +           err_info.src = OSAF_ERR_SRC_CBK_CSI_SET_FAILED;
>>>                     err_info.rec_rcvr.avsv_ext = comp->err_info.def_rec;
>>>                     rc = avnd_err_process(cb, comp, &err_info);
>>>             } else {
>>> @@ -203,7 +203,7 @@ uint32_t avnd_evt_tmr_qscing_cmpl_evh(st
>>>                     goto done;
>>>             }
>>>             ncshm_give_hdl(tmr->opq_hdl);
>>> -   err_info.src = AVND_ERR_SRC_QSCING_COMPL_TIMEOUT;
>>> +   err_info.src = OSAF_ERR_SRC_QSCING_COMPL_TIMEOUT;
>>>             err_info.rec_rcvr.avsv_ext = comp->err_info.def_rec;
>>>
>>>             rc = avnd_err_process(cb, comp, &err_info); @@ -347,7 +347,7 @@ 
>>> uint32_t avnd_evt_ava_resp_evh(AVND_CB *
>>>                                     /* process comp-failure */
>>>                                     if (hc_rec) {
>>>                                             err_info.rec_rcvr.raw = 
>>> hc_rec->rec_rcvr.raw;
>>> -                                   err_info.src = 
>>> AVND_ERR_SRC_CBK_HC_FAILED;
>>> +                                   err_info.src = 
>>> OSAF_ERR_SRC_CBK_HC_FAILED;
>>>                                             rc = avnd_err_process(cb, comp, 
>>> &err_info);
>>>                                     }
>>>                             } else {
>>> @@ -423,7 +423,7 @@ uint32_t avnd_evt_ava_resp_evh(AVND_CB *
>>>
>>>                     if (SA_AIS_OK != resp->err) {
>>>                             /* process comp-failure */
>>> -                   err_info.src = AVND_ERR_SRC_CBK_CSI_SET_FAILED;
>>> +                   err_info.src = OSAF_ERR_SRC_CBK_CSI_SET_FAILED;
>>>                             err_info.rec_rcvr.avsv_ext = 
>>> comp->err_info.def_rec;
>>>                             rc = avnd_err_process(cb, comp, &err_info);
>>>                     } else {
>>> @@ -466,7 +466,7 @@ uint32_t avnd_evt_ava_resp_evh(AVND_CB *
>>>
>>>                     /* perform err prc if resp fails */
>>>                     if (SA_AIS_OK != resp->err) {
>>> -                   err_info.src = AVND_ERR_SRC_CBK_CSI_REM_FAILED;
>>> +                   err_info.src = OSAF_ERR_SRC_CBK_CSI_REM_FAILED;
>>>                             err_info.rec_rcvr.avsv_ext = 
>>> comp->err_info.def_rec;
>>>                             rc = avnd_err_process(cb, comp, &err_info);
>>>                     }
>>> @@ -554,17 +554,17 @@ uint32_t avnd_evt_tmr_cbk_resp_evh(AVND_
>>>             } else {
>>>                     switch (rec->cbk_info->type) {
>>>                     case AVSV_AMF_HC:
>>> -                   err_info.src = AVND_ERR_SRC_CBK_HC_TIMEOUT;
>>> +                   err_info.src = OSAF_ERR_SRC_CBK_HC_TIMEOUT;
>>>                             break;
>>>                     case AVSV_AMF_CSI_SET:
>>> -                   err_info.src = AVND_ERR_SRC_CBK_CSI_SET_TIMEOUT;
>>> +                   err_info.src = OSAF_ERR_SRC_CBK_CSI_SET_TIMEOUT;
>>>                             break;
>>>                     case AVSV_AMF_CSI_REM:
>>> -                   err_info.src = AVND_ERR_SRC_CBK_CSI_REM_TIMEOUT;
>>> +                   err_info.src = OSAF_ERR_SRC_CBK_CSI_REM_TIMEOUT;
>>>                             break;
>>>                     default:
>>>                             
>>> LOG_ER("%s,%u,type=%u",__FUNCTION__,__LINE__,rec->cbk_info->type);
>>> -                   err_info.src = AVND_ERR_SRC_CBK_CSI_SET_TIMEOUT;
>>> +                   err_info.src = OSAF_ERR_SRC_CBK_CSI_SET_TIMEOUT;
>>>                             break;
>>>                     }
>>>                     /* treat it as comp failure (determine the recommended 
>>> recovery)
>>> */ diff --git a/osaf/services/saf/amf/amfnd/avnd_chc.c
>>> b/osaf/services/saf/amf/amfnd/avnd_chc.c
>>> --- a/osaf/services/saf/amf/amfnd/avnd_chc.c
>>> +++ b/osaf/services/saf/amf/amfnd/avnd_chc.c
>>> @@ -874,7 +874,7 @@ uint32_t avnd_comp_hc_rec_confirm(AVND_C
>>>                     m_AVND_SEND_CKPT_UPDT_ASYNC_UPDT(cb, rec, 
>>> AVND_CKPT_COMP_HC_REC_TMR);
>>>             } else {
>>>                     /* process comp failure */
>>> -           err_info.src = AVND_ERR_SRC_HC;
>>> +           err_info.src = OSAF_ERR_SRC_HC;
>>>                     err_info.rec_rcvr.raw = rec->rec_rcvr.raw;
>>>                     rc = avnd_err_process(cb, comp, &err_info);
>>>             }
>>> @@ -922,7 +922,7 @@ uint32_t avnd_comp_hc_rec_tmr_exp(AVND_C
>>>                     }
>>>             } else {
>>>                     /* process comp failure */
>>> -           err_info.src = AVND_ERR_SRC_HC;
>>> +           err_info.src = OSAF_ERR_SRC_HC;
>>>                     err_info.rec_rcvr.raw = rec->rec_rcvr.raw;
>>>                     rc = avnd_err_process(cb, comp, &err_info);
>>>             }
>>> diff --git a/osaf/services/saf/amf/amfnd/avnd_clc.c
>>> b/osaf/services/saf/amf/amfnd/avnd_clc.c
>>> --- a/osaf/services/saf/amf/amfnd/avnd_clc.c
>>> +++ b/osaf/services/saf/amf/amfnd/avnd_clc.c
>>> @@ -398,7 +398,7 @@ uint32_t avnd_evt_clc_resp_evh(AVND_CB *
>>>                             AVND_ERR_INFO err_info;
>>>                             LOG_NO("Healthcheck failed for '%s'", 
>>> comp->name.value);
>>>                             log_failed_exec(&clc_evt->exec_stat, comp, 
>>> clc_evt->cmd_type);
>>> -                   err_info.src = AVND_ERR_SRC_HC;
>>> +                   err_info.src = OSAF_ERR_SRC_HC;
>>>                             err_info.rec_rcvr.avsv_ext = 
>>> comp->err_info.def_rec;
>>>                             rc = avnd_err_process(cb, comp, &err_info);
>>>                             goto done;
>>> @@ -581,7 +581,7 @@ uint32_t avnd_evt_tmr_clc_pxied_comp_reg
>>>             m_AVND_SEND_CKPT_UPDT_ASYNC_UPDT(cb, comp,
>>> AVND_CKPT_COMP_ORPH_TMR);
>>>
>>>             /* process comp failure */
>>> -   err_info.src = AVND_ERR_SRC_PXIED_REG_TIMEOUT;
>>> +   err_info.src = OSAF_ERR_SRC_PXIED_REG_TIMEOUT;
>>>             err_info.rec_rcvr.saf_amf = SA_AMF_COMPONENT_FAILOVER;
>>>             rc = avnd_err_process(cb, comp, &err_info);
>>>
>>> @@ -2478,7 +2478,7 @@ uint32_t avnd_comp_clc_cmd_execute(AVND_
>>>             char env_val_comp_err[11];      /*we req only 10 */
>>>             char env_var_name[] = "SA_AMF_COMPONENT_NAME";
>>>             char env_var_nodeid[] = "NCS_ENV_NODE_ID";
>>> -   char env_var_comp_err[] = "NCS_ENV_COMPONENT_ERROR_SRC";
>>> +   char env_var_comp_err[] = "OSAF_COMPONENT_ERROR_SOURCE";
>>>             char *env_attr_val = 0;
>>>             AVND_CLC_EVT *clc_evt;
>>>             AVND_EVT *evt = 0;
>>> @@ -2576,7 +2576,7 @@ uint32_t avnd_comp_clc_cmd_execute(AVND_
>>>             arg.num_args++;
>>>             env_counter++;
>>>
>>> -   /* Note:- we will set NCS_ENV_COMPONENT_ERROR_SRC only for
>>> +   /* Note:- we will set OSAF_COMPONENT_ERROR_SOURCE only for
>>>              * cleanup script
>>>              */
>>>
>>> diff --git a/osaf/services/saf/amf/amfnd/avnd_comp.c
>>> b/osaf/services/saf/amf/amfnd/avnd_comp.c
>>> --- a/osaf/services/saf/amf/amfnd/avnd_comp.c
>>> +++ b/osaf/services/saf/amf/amfnd/avnd_comp.c
>>> @@ -390,7 +390,7 @@ uint32_t avnd_evt_mds_ava_dn_evh(AVND_CB
>>>
>>>             if (comp) {
>>>                     /* found the matching comp; trigger error processing */
>>> -           err_info.src = AVND_ERR_SRC_AVA_DN;
>>> +           err_info.src = OSAF_ERR_SRC_AVA_DN;
>>>                     err_info.rec_rcvr.avsv_ext = comp->err_info.def_rec;
>>>                     rc = avnd_err_process(cb, comp, &err_info);
>>>             }
>>> diff --git a/osaf/services/saf/amf/amfnd/avnd_err.c
>>> b/osaf/services/saf/amf/amfnd/avnd_err.c
>>> --- a/osaf/services/saf/amf/amfnd/avnd_err.c
>>> +++ b/osaf/services/saf/amf/amfnd/avnd_err.c
>>> @@ -194,7 +194,7 @@ uint32_t avnd_evt_ava_err_rep_evh(AVND_C
>>>                     m_AVND_SEND_CKPT_UPDT_ASYNC_UPDT(cb, comp,
>>> AVND_CKPT_COMP_ERR_INFO);
>>>
>>>           /*** process the error ***/
>>> -           err.src = AVND_ERR_SRC_REP;
>>> +           err.src = OSAF_ERR_SRC_REP;
>>>                     err.rec_rcvr.raw = err_rep->rec_rcvr.raw;
>>>                     rc = avnd_err_process(cb, comp, &err);
>>>             }
>>> @@ -315,16 +315,16 @@ uint32_t avnd_err_process(AVND_CB *cb, A
>>>
>>>             /* Level3 escalation is node failover. we dont expect any
>>>              ** more errors from application as the node is already failed 
>>> over.
>>> -    ** Except AVND_ERR_SRC_AVA_DN, AvSv will ignore any error which happens
>>> +    ** Except OSAF_ERR_SRC_AVA_DN, AvSv will ignore any error which
>>> +happens
>>>              ** in level3 escalation
>>>              */
>>> -   /* (AVND_ERR_SRC_AVA_DN != err_info->src) check is added so that comp 
>>> state is marked as failed
>>> +   /* (OSAF_ERR_SRC_AVA_DN != err_info->src) check is added so that
>>> +comp state is marked as failed
>>>              * and error cleanup (Clearing pending assignments, deleting 
>>> dynamic info associated with the
>>>              * component) is done for components which goes down after 
>>> AVND_ERR_ESC_LEVEL_3 is set
>>>              */
>>>             if ((cb->node_err_esc_level == AVND_ERR_ESC_LEVEL_3) &&
>>>                 (comp->su->is_ncs == SA_FALSE) && (esc_rcvr != 
>>> SA_AMF_NODE_FAILFAST) &&
>>> -                                   (AVND_ERR_SRC_AVA_DN != err_info->src)) 
>>> {
>>> +                                   (OSAF_ERR_SRC_AVA_DN != err_info->src)) 
>>> {
>>>                     /* For external component, comp->su->is_ncs is false, 
>>> so no need to
>>>                        put a check here for external component explicitely. 
>>> */
>>>                     goto done;
>>> @@ -343,7 +343,7 @@ uint32_t avnd_err_process(AVND_CB *cb, A
>>>             comp->err_info.src = err_info->src;
>>>
>>>             /* if time's not specified, use current time TBD */
>>> -   if (err_info->src != AVND_ERR_SRC_REP)
>>> +   if (err_info->src != OSAF_ERR_SRC_REP)
>>>                     m_GET_TIME_STAMP(comp->err_info.detect_time);
>>>
>>>             m_AVND_SEND_CKPT_UPDT_ASYNC_UPDT(cb, comp,
>>> AVND_CKPT_COMP_ERR_INFO); diff --git
>>> a/osaf/services/saf/amf/amfnd/avnd_mon.c
>>> b/osaf/services/saf/amf/amfnd/avnd_mon.c
>>> --- a/osaf/services/saf/amf/amfnd/avnd_mon.c
>>> +++ b/osaf/services/saf/amf/amfnd/avnd_mon.c
>>> @@ -437,7 +437,7 @@ uint32_t avnd_evt_pid_exit_evh(AVND_CB *
>>>                     return NCSCC_RC_FAILURE;
>>>
>>>             /* store the info */
>>> -   err.src = AVND_ERR_SRC_PM;
>>> +   err.src = OSAF_ERR_SRC_PM;
>>>             err.rec_rcvr.raw = pm_rec->rec_rcvr.raw;
>>>             comp = pm_rec->comp;
>>>
>>> diff --git a/osaf/services/saf/amf/amfnd/include/avnd_err.h
>>> b/osaf/services/saf/amf/amfnd/include/avnd_err.h
>>> --- a/osaf/services/saf/amf/amfnd/include/avnd_err.h
>>> +++ b/osaf/services/saf/amf/amfnd/include/avnd_err.h
>>> @@ -50,31 +50,31 @@ typedef enum avnd_err_esc_level {  }
>>> AVND_ERR_ESC_LEVEL;
>>>
>>>     /* component error source enums */ -typedef enum avnd_err_src {
>>> -   AVND_ERR_SRC_REP = 1,   /* comp reports an error */
>>> -   AVND_ERR_SRC_HC,        /* healthcheck failure */
>>> -   AVND_ERR_SRC_PM,        /* passive monitoring failure */
>>> -   AVND_ERR_SRC_AM,        /* active monitoring failure (AM_START/STOP
>>> +typedef enum osaf_err_src {
>>> +   OSAF_ERR_SRC_REP = 1,   /* comp reports an error */
>>> +   OSAF_ERR_SRC_HC,        /* healthcheck failure */
>>> +   OSAF_ERR_SRC_PM,        /* passive monitoring failure */
>>> +   OSAF_ERR_SRC_AM,        /* active monitoring failure (AM_START/STOP
>>>                                        execution failed) */
>>> -   AVND_ERR_SRC_CMD_FAILED,        /* AMF command fails (INSTANTIATE cmd 
>>> fails for NPI
>>> +   OSAF_ERR_SRC_CMD_FAILED,        /* AMF command fails (INSTANTIATE cmd 
>>> fails for NPI
>>>                                                comp as a result of CSI 
>>> assignment) */
>>> -   AVND_ERR_SRC_CBK_HC_TIMEOUT,    /* AMF health check callback times out 
>>> */
>>> -   AVND_ERR_SRC_CBK_HC_FAILED,     /* AMF callback failed */
>>> -   AVND_ERR_SRC_AVA_DN,    /* AvA down */
>>> -   AVND_ERR_SRC_PXIED_REG_TIMEOUT, /* orphaned state timed out */
>>> -   AVND_ERR_SRC_CBK_CSI_SET_TIMEOUT,       /* AMF csi set callback times 
>>> out */
>>> -   AVND_ERR_SRC_CBK_CSI_REM_TIMEOUT,       /* AMF csi rem callback times 
>>> out */
>>> -   AVND_ERR_SRC_CBK_CSI_SET_FAILED,        /* AMF callback failed */
>>> -   AVND_ERR_SRC_CBK_CSI_REM_FAILED,        /* AMF callback failed */
>>> +   OSAF_ERR_SRC_CBK_HC_TIMEOUT,    /* AMF health check callback times out 
>>> */
>>> +   OSAF_ERR_SRC_CBK_HC_FAILED,     /* AMF callback failed */
>>> +   OSAF_ERR_SRC_AVA_DN,    /* AvA down */
>>> +   OSAF_ERR_SRC_PXIED_REG_TIMEOUT, /* orphaned state timed out */
>>> +   OSAF_ERR_SRC_CBK_CSI_SET_TIMEOUT,       /* AMF csi set callback times 
>>> out */
>>> +   OSAF_ERR_SRC_CBK_CSI_REM_TIMEOUT,       /* AMF csi rem callback times 
>>> out */
>>> +   OSAF_ERR_SRC_CBK_CSI_SET_FAILED,        /* AMF callback failed */
>>> +   OSAF_ERR_SRC_CBK_CSI_REM_FAILED,        /* AMF callback failed */
>>>             /* Add other sources of error detection */
>>> -   AVND_ERR_SRC_QSCING_COMPL_TIMEOUT,      /* AMF qscing complete times 
>>> out */
>>> +   OSAF_ERR_SRC_QSCING_COMPL_TIMEOUT,      /* AMF qscing complete times 
>>> out */
>>>
>>> -   AVND_ERR_SRC_MAX
>>> -} AVND_ERR_SRC;
>>> +   OSAF_ERR_SRC_MAX
>>> +} OSAF_ERR_SRC;
>>>
>>>     /* component error information */
>>>     typedef struct avnd_cerr_info_tag {
>>> -   AVND_ERR_SRC src;       /* error source */
>>> +   OSAF_ERR_SRC src;       /* error source */
>>>             SaAmfRecommendedRecoveryT def_rec;      /* default comp 
>>> recovery */
>>>             SaTimeT detect_time;    /* error detection time */
>>>             uint32_t restart_cnt;   /* restart counter */
>>> @@ -82,7 +82,7 @@ typedef struct avnd_cerr_info_tag {
>>>
>>>     /* wrapper structure used to carry error info across routines */  
>>> typedef struct avnd_err_tag {
>>> -   AVND_ERR_SRC src;       /* err-src */
>>> +   OSAF_ERR_SRC src;       /* err-src */
>>>             union {
>>>                     uint32_t raw;
>>>                     AVSV_ERR_RCVR avsv_ext;
>>>
>>> ---------------------------------------------------------------------
>>> -
>>> -------- LIMITED TIME SALE - Full Year of Microsoft Training For Just
>>> $49.99!
>>> 1,500+ hours of tutorials including VisualStudio 2012, Windows 8, 
>>> SharePoint 2013, SQL 2012, MVC 4, more. BEST VALUE: New Multi-Library Power 
>>> Pack includes Mobile, Cloud, Java, and UX Design. Lowest price ever! Ends 
>>> 9/20/13.
>>> http://pubads.g.doubleclick.net/gampad/clk?id=58041151&iu=/4140/ostg.
>>> c lktrk _______________________________________________
>>> Opensaf-devel mailing list
>>> [email protected]
>>> https://lists.sourceforge.net/lists/listinfo/opensaf-devel
>>>
>>> ---------------------------------------------------------------------
>>> -
>>> -------- LIMITED TIME SALE - Full Year of Microsoft Training For Just
>>> $49.99!
>>> 1,500+ hours of tutorials including VisualStudio 2012, Windows 8,
>>> SharePoint 2013, SQL 2012, MVC 4, more. BEST VALUE: New Multi-Library
>>> Power Pack includes Mobile, Cloud, Java, and UX Design. Lowest price ever! 
>>> Ends 9/20/13.
>>> http://pubads.g.doubleclick.net/gampad/clk?id=58041151&iu=/4140/ostg.
>>> c lktrk _______________________________________________
>>> Opensaf-devel mailing list
>>> [email protected]
>>> https://lists.sourceforge.net/lists/listinfo/opensaf-devel
>>>
>>>
>>
>>
>>
>
>


------------------------------------------------------------------------------
LIMITED TIME SALE - Full Year of Microsoft Training For Just $49.99!
1,500+ hours of tutorials including VisualStudio 2012, Windows 8, SharePoint
2013, SQL 2012, MVC 4, more. BEST VALUE: New Multi-Library Power Pack includes
Mobile, Cloud, Java, and UX Design. Lowest price ever! Ends 9/20/13. 
http://pubads.g.doubleclick.net/gampad/clk?id=58041151&iu=/4140/ostg.clktrk
_______________________________________________
Opensaf-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/opensaf-devel

Reply via email to