osaf/tools/safimm/immadm/imm_admin.c       |  2 +-
 osaf/tools/safimm/immcfg/imm_cfg.c         |  2 +-
 osaf/tools/safimm/immcfg/imm_import.cc     |  6 ++++--
 osaf/tools/safimm/immdump/imm_xmlw_dump.cc |  9 +++++++++
 osaf/tools/safimm/immfind/imm_find.c       |  2 +-
 osaf/tools/safimm/immlist/imm_list.c       |  8 +++++++-
 6 files changed, 23 insertions(+), 6 deletions(-)


Add support of default value removal to IMM tools.

diff --git a/osaf/tools/safimm/immadm/imm_admin.c 
b/osaf/tools/safimm/immadm/imm_admin.c
--- a/osaf/tools/safimm/immadm/imm_admin.c
+++ b/osaf/tools/safimm/immadm/imm_admin.c
@@ -47,7 +47,7 @@
 
 extern struct ImmutilWrapperProfile immutilWrapperProfile;
 
-static SaVersionT immVersion = { 'A', 2, 15 };
+static SaVersionT immVersion = { 'A', 2, 16 };
 
 static void usage(const char *progname)
 {
diff --git a/osaf/tools/safimm/immcfg/imm_cfg.c 
b/osaf/tools/safimm/immcfg/imm_cfg.c
--- a/osaf/tools/safimm/immcfg/imm_cfg.c
+++ b/osaf/tools/safimm/immcfg/imm_cfg.c
@@ -52,7 +52,7 @@ typedef struct ObjectInfo {
        struct ObjectInfo *next;
 } ObjectInfoT;
 
-static SaVersionT immVersion = { 'A', 2, 15 };
+static SaVersionT immVersion = { 'A', 2, 16 };
 int verbose = 0;
 int ccb_safe = 1;
 
diff --git a/osaf/tools/safimm/immcfg/imm_import.cc 
b/osaf/tools/safimm/immcfg/imm_import.cc
--- a/osaf/tools/safimm/immcfg/imm_import.cc
+++ b/osaf/tools/safimm/immcfg/imm_import.cc
@@ -1384,7 +1384,7 @@ static bool loadXsd(const xmlChar** attr
                     strcmp(value, "SA_INITIALIZED") && strcmp(value, 
"SA_PERSISTENT") &&
                     strcmp(value, "SA_CACHED") && strcmp(value, "SA_NOTIFY") &&
                     strcmp(value, "SA_NO_DUPLICATES") && strcmp(value, 
"SA_NO_DANGLING") &&
-                    strcmp(value, "SA_DN")) {
+                    strcmp(value, "SA_DN") && strcmp(value, 
"SA_DEFAULT_REMOVED")) {
                 attrFlagSet.insert(value);
             }
         }
@@ -2060,6 +2060,8 @@ static SaImmAttrFlagsT charsToFlagsHelpe
                return SA_IMM_ATTR_NO_DANGLING;
        } else if (len == strlen("SA_DN") && strncmp((const char*)str, "SA_DN", 
len) == 0) {
                return SA_IMM_ATTR_DN;
+       } else if (len == strlen("SA_DEFAULT_REMOVED") && strncmp((const 
char*)str, "SA_DEFAULT_REMOVED", len) == 0) {
+               return SA_IMM_ATTR_DEFAULT_REMOVED;
        }
 
        std::string flag((char *)str, len);
@@ -2606,7 +2608,7 @@ int loadImmXML(const char *xmlfile, int 
 
        version.releaseCode   = 'A';
        version.majorVersion  = 2;
-       version.minorVersion  = 15;
+       version.minorVersion  = 16;
 
        TRACE_8("Loading from %s", xmlfile);
 
diff --git a/osaf/tools/safimm/immdump/imm_xmlw_dump.cc 
b/osaf/tools/safimm/immdump/imm_xmlw_dump.cc
--- a/osaf/tools/safimm/immdump/imm_xmlw_dump.cc
+++ b/osaf/tools/safimm/immdump/imm_xmlw_dump.cc
@@ -816,6 +816,15 @@ void flagsToXMLw(SaImmAttrDefinitionT_2*
         }
     }
 
+    if (flags & SA_IMM_ATTR_DEFAULT_REMOVED)
+    {
+        if(xmlTextWriterWriteElement(writer, (xmlChar*) "flag",
+           (xmlChar*) "SA_DEFAULT_REMOVED") < 0 ) {
+            std::cout << "Error at xmlTextWriterWriteElement (flag - 
SA_DEFAULT_REMOVED)" << std::endl;
+            exit(1);
+        }
+    }
+
 }
 
 void typeToXMLw(SaImmAttrDefinitionT_2* p, xmlTextWriterPtr writer)
diff --git a/osaf/tools/safimm/immfind/imm_find.c 
b/osaf/tools/safimm/immfind/imm_find.c
--- a/osaf/tools/safimm/immfind/imm_find.c
+++ b/osaf/tools/safimm/immfind/imm_find.c
@@ -41,7 +41,7 @@
 #include <saf_error.h>
 #include "osaf_extended_name.h"
 
-static SaVersionT immVersion = { 'A', 2, 15 };
+static SaVersionT immVersion = { 'A', 2, 16 };
 extern struct ImmutilWrapperProfile immutilWrapperProfile;
 
 /* signal handler for SIGALRM */
diff --git a/osaf/tools/safimm/immlist/imm_list.c 
b/osaf/tools/safimm/immlist/imm_list.c
--- a/osaf/tools/safimm/immlist/imm_list.c
+++ b/osaf/tools/safimm/immlist/imm_list.c
@@ -42,7 +42,7 @@
 #include <saf_error.h>
 #include "osaf_extended_name.h"
 
-static SaVersionT immVersion = { 'A', 2, 15 };
+static SaVersionT immVersion = { 'A', 2, 16 };
 extern struct ImmutilWrapperProfile immutilWrapperProfile;
 
 /* signal handler for SIGALRM */ 
@@ -330,6 +330,9 @@ static void display_class_definition(con
                        if (attrDefinition->attrFlags & SA_IMM_ATTR_DN)
                                printf(", DN");
 
+                       if (attrDefinition->attrFlags & 
SA_IMM_ATTR_DEFAULT_REMOVED)
+                               printf(", DEFAULT_REMOVED");
+
                } else if (attrDefinition->attrFlags & SA_IMM_ATTR_RUNTIME) {
                        if (attrDefinition->attrDefaultValue != NULL) {
                                printf(" = ");
@@ -360,6 +363,9 @@ static void display_class_definition(con
 
                        if (attrDefinition->attrFlags & SA_IMM_ATTR_DN)
                                printf(", DN");
+
+                       if (attrDefinition->attrFlags & 
SA_IMM_ATTR_DEFAULT_REMOVED)
+                               printf(", DEFAULT_REMOVED");
                }
 
                printf("}\n");

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

Reply via email to