00-README.conf | 18 ++++++++++++++++++
osaf/libs/saf/include/saAis.h | 4 ++++
osaf/libs/saf/include/saAis_B_5_14.h | 17 +++++++++++++++++
3 files changed, 39 insertions(+), 0 deletions(-)
Add declarations of saAisNameLend() and saAisNameBorrow() to saAis.h.
Update 00-README.conf with description of how to enable the extended
SaNameT type.
diff --git a/00-README.conf b/00-README.conf
--- a/00-README.conf
+++ b/00-README.conf
@@ -447,3 +447,21 @@ Note: The OpenSAF default implemetation
Earlier default implementation of the command (which was never called
from SMF) requires a bundle
name as input parameter.
From OpenSAF 4.4 the input parameter shall be the DN of the bundle to
check.
+
+Extended SaNameT type
+=========================================================================
+The SaNameT type is deprecated will be replaced with string parameters in new
+SAF APIs. As an intermediate solution, the extended format of the SaNameT type
+can be used to pass string parameters to and from old SAF APIs as well, by
+tunneling them through the SaNameT type. To enable the extended SaNameT
+format, the application source code has to be compiled with the
+SA_EXTENDED_NAME_SOURCE preprocessor macro defined, and the environment
+variable SA_ENABLE_EXTENDED_NAMES must be set to the value 1 before the first
+call to any SAF API function.
+
+When the extended SaNameT format is enabled, the SA_MAX_NAME_LENGTH constant
+must not be used, and the application must treat the SaNameT type as opaque
+and not access any of its members directly. Instead, the saAisNameLend() and
+saAisNameBorrow() access functions shall be used. The
+SA_MAX_UNEXTENDED_NAME_LENGTH constant can be used to refer to the maximum
+string length that can be stored in the unextended SaNameT type.
diff --git a/osaf/libs/saf/include/saAis.h b/osaf/libs/saf/include/saAis.h
--- a/osaf/libs/saf/include/saAis.h
+++ b/osaf/libs/saf/include/saAis.h
@@ -70,7 +70,9 @@ typedef SaUint64T SaSelectio
#define SA_TIME_ONE_DAY 86400000000000LL
#define SA_TIME_MAX SA_TIME_END
+#ifndef SA_EXTENDED_NAME_SOURCE
#define SA_MAX_NAME_LENGTH 256
+#endif /* SA_EXTENDED_NAME_SOURCE */
#define SA_TRACK_CURRENT 0x01
#define SA_TRACK_CHANGES 0x02
@@ -156,10 +158,12 @@ typedef struct {
SaUint8T *bufferAddr;
} SaAnyT;
+#ifndef SA_EXTENDED_NAME_SOURCE
typedef struct {
SaUint16T length;
SaUint8T value[SA_MAX_NAME_LENGTH];
} SaNameT;
+#endif /* SA_EXTENDED_NAME_SOURCE */
typedef struct {
SaUint8T releaseCode;
diff --git a/osaf/libs/saf/include/saAis_B_5_14.h
b/osaf/libs/saf/include/saAis_B_5_14.h
--- a/osaf/libs/saf/include/saAis_B_5_14.h
+++ b/osaf/libs/saf/include/saAis_B_5_14.h
@@ -31,6 +31,23 @@ extern "C" {
typedef const char* SaConstStringT;
+#ifdef SA_EXTENDED_NAME_SOURCE
+#define SA_MAX_UNEXTENDED_NAME_LENGTH 256
+
+typedef struct {
+ SaUint16T _opaque[129];
+} SaNameT;
+
+extern void
+saAisNameLend(
+ SaConstStringT value,
+ SaNameT* name);
+
+extern SaConstStringT
+saAisNameBorrow(
+ const SaNameT* name);
+#endif /* SA_EXTENDED_NAME_SOURCE */
+
#ifdef __cplusplus
}
#endif
------------------------------------------------------------------------------
"Accelerate Dev Cycles with Automated Cross-Browser Testing - For FREE
Instantly run your Selenium tests across 300+ browser/OS combos. Get
unparalleled scalability from the best Selenium testing platform available.
Simple to use. Nothing to install. Get started now for free."
http://p.sf.net/sfu/SauceLabs
_______________________________________________
Opensaf-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/opensaf-devel