Hi Hal,

The following patch adds the full path name of the guid2lid file in
case of an error in parsing the file (which causes opensm to exit).
Also - there is a check that the guid given is in legal size.
Thanks,
Yael

Signed-off-by:  Yael Kalka <[EMAIL PROTECTED]>

Index: opensm/osm_db_files.c
===================================================================
--- opensm/osm_db_files.c       (revision 5671)
+++ opensm/osm_db_files.c       (working copy)
@@ -64,6 +64,18 @@
 #define OSM_DB_MAX_LINE_LEN 1024
 /**********/
 
+/****d* Database/OSM_DB_MAX_GUID_LEN
+ * NAME
+ * OSM_DB_MAX_GUID_LEN
+ *
+ * DESCRIPTION
+ * The Maximal word length allowed for the file (guid or lid)
+ *
+ * SYNOPSIS
+ */
+#define OSM_DB_MAX_GUID_LEN 32
+/**********/
+
 /****s* OpenSM: Database/osm_db_domain_imp
  * NAME
  * osm_db_domain_imp
@@ -335,8 +347,17 @@ osm_db_restore(
         {
           osm_log( p_log, OSM_LOG_ERROR,
                    "osm_db_restore: ERR 6104: "
-                   " Fail to get key from line:%u : %s\n",
-                   line_num, sLine);
+                   " Fail to get key from line:%u : %s (file:%s)\n",
+                   line_num, sLine, p_domain_imp->file_name);
+          status = 1;
+          goto EndParsing;
+        }
+        if (strlen(p_first_word) > OSM_DB_MAX_GUID_LEN)
+        {
+          osm_log( p_log, OSM_LOG_ERROR,
+                   "osm_db_restore: ERR 610A: "
+                   " Illegal key from line:%u : %s (file:%s)\n",
+                   line_num, sLine, p_domain_imp->file_name);
           status = 1;
           goto EndParsing;
         }
@@ -361,8 +382,8 @@ osm_db_restore(
       {
         osm_log( p_log, OSM_LOG_ERROR,
                  "osm_db_restore: ERR 6105: "
-                 " How did we get here? line:%u : %s\n",
-                 line_num, sLine);
+                 " How did we get here? line:%u : %s (file:%s)\n",
+                 line_num, sLine, p_domain_imp->file_name);
         status = 1;
         goto EndParsing;
       }

_______________________________________________
openib-general mailing list
openib-general@openib.org
http://openib.org/mailman/listinfo/openib-general

To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general

Reply via email to