Thanks Praveen,

Actually, the PR doc only contains the implementation detail part in 
readme file.
I will remove the internal amfd and amfnd changes in the PR doc.

Best regards,
Long Nguyen.

On 8/25/2016 11:42 AM, praveen malviya wrote:
> Ack.
>
> I think implementation details should go in PR doc also(not to mention 
> internal amfd and amfnd changes).
>
> Thanks,
> Praveen
>
> On 23-Aug-16 12:44 PM, Long HB Nguyen wrote:
>>  osaf/services/saf/amf/README |  72 
>> ++++++++++++++++++++++++++++++++++++++++++++
>>  1 files changed, 72 insertions(+), 0 deletions(-)
>>
>>
>> diff --git a/osaf/services/saf/amf/README b/osaf/services/saf/amf/README
>> new file mode 100755
>> --- /dev/null
>> +++ b/osaf/services/saf/amf/README
>> @@ -0,0 +1,72 @@
>> +#
>> +#      -*- OpenSAF  -*-
>> +#
>> +# (C) Copyright 2016 The OpenSAF Foundation
>> +#
>> +# This program is distributed in the hope that it will be useful, but
>> +# WITHOUT ANY WARRANTY; without even the implied warranty of 
>> MERCHANTABILITY
>> +# or FITNESS FOR A PARTICULAR PURPOSE. This file and program are 
>> licensed
>> +# under the GNU Lesser General Public License Version 2.1, February 
>> 1999.
>> +# The complete license can be accessed from the following location:
>> +# http://opensource.org/licenses/lgpl-license.php
>> +# See the Copying file included with the OpenSAF distribution for full
>> +# licensing terms.
>> +#
>> +# Author(s): Ericsson AB
>> +#
>> +
>> +GENERAL
>> +-------
>> +
>> +This is a description of how the AMF service supports long DNs.
>> +Ticket: https://sourceforge.net/p/opensaf/tickets/1642
>> +This enhancement is part of the general enhancement for supporting long
>> +DNs in OpenSAF introduced by ticket: #191. Ticket #1642 adds support 
>> for
>> +long DNs to AMF.
>> +
>> +CONFIGURATION
>> +-------------
>> +
>> +To enable support for long DNs/RDNs in IMM, the longDnsAllowed
>> +attribute must be enabled using the following command:
>> +
>> +immcfg -a longDnsAllowed=1 opensafImm=opensafImm,safApp=safImmService
>> +
>> +The IMM service will reject attempts to set the longDnsAllowed 
>> attribute
>> +back to 0 if the IMM database contains objects with DNs longer than 
>> 255 bytes
>> +or RDNs longer than 64 bytes.
>> +
>> +To enable long DN support, an application must follow these things:
>> +- Compile the application with the SA_EXTENDED_NAME_SOURCE preprocessor
>> +macro defined.
>> +- Set the environment variable SA_ENABLE_EXTENDED_NAMES to 1 before
>> +the first call to any SAF API.
>> +- Treat the SaNameT type as opaque and use the SaNameT tunnelling 
>> primitives
>> +saAisNameLend(), saAisNameBorrow() to manipulate SaNameT variables.
>> +
>> +IMPLEMENTATION DETAILS
>> +----------------------
>> +
>> +The implementation has been adapted to the "tunnelling" solution 
>> provided
>> +by the OpenSAF generic patch (#191).
>> +Please see the document below on how to use the SaNameT tunnelling 
>> primitives:
>> +    OpenSAF_Extensions_PR.odt
>> +
>> +This implementation also includes following enhancements:
>> +1) Replace internal SaNameT variables with std::string variables in 
>> amfd, amfnd.
>> +2) Replace patricia trees with std::map in amfnd.
>> +
>> +saAmfDispatch() may return SA_AIS_ERR_NAME_TOO_LONG if an 
>> application which
>> +does not support long DN, receives an AMF callback containing a long 
>> DN entity.
>> +An application should not be configured with long DN entities until 
>> long DN
>> +support has been added.
>
>> +
>> +In AMF B.01.01 spec, the application can free extended SaNameT 
>> variables in
>> +SaAmfProtectionGroupNotificationBufferT using the example below:
>> +    SaAmfProtectionGroupNotificationBufferT buff;
>> +    ...
>> +    for ( i=0; i<buff.numOfItems; i++) {
>> +        if 
>> (strlen(saAisNameBorrow(buff.notification[i].member.comp_name)) >
>> +            SA_MAX_UNEXTENDED_NAME_LENGTH)
>> + free(saAisNameBorrow(buff.notification[i].member.comp_name));
>> +    }
>>
>



------------------------------------------------------------------------------
_______________________________________________
Opensaf-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/opensaf-devel

Reply via email to