[openib-general] [PATCH v2] osmtest: fix node_desc.description as string usages
Sasha Khapyorsky
sashak at voltaire.com
Sat Oct 28 13:33:40 PDT 2006
node_desc.description buffer is received from the network and should
not be NULL-terminated. In such cases using it as regular string in
functions like printf() leads to segmentation faults. This patch fixes
such usages.
Signed-off-by: Sasha Khapyorsky <sashak at voltaire.com>
---
osm/osmtest/osmtest.c | 6 +++++-
1 files changed, 5 insertions(+), 1 deletions(-)
diff --git a/osm/osmtest/osmtest.c b/osm/osmtest/osmtest.c
index b4d9498..6444b9d 100644
--- a/osm/osmtest/osmtest.c
+++ b/osm/osmtest/osmtest.c
@@ -1984,11 +1984,15 @@ osmtest_write_node_info( IN osmtest_t *
IN FILE * fh,
IN const ib_node_record_t * const p_rec )
{
+ char desc[IB_NODE_DESCRIPTION_SIZE + 1];
int result;
cl_status_t status = IB_SUCCESS;
OSM_LOG_ENTER( &p_osmt->log, osmtest_write_node_info );
+ memcpy(desc, p_rec->node_desc.description, IB_NODE_DESCRIPTION_SIZE);
+ desc[IB_NODE_DESCRIPTION_SIZE] = '\0';
+
result = fprintf( fh,
"DEFINE_NODE\n"
"lid 0x%X\n"
@@ -2021,7 +2025,7 @@ osmtest_write_node_info( IN osmtest_t *
ib_node_info_get_local_port_num( &p_rec->node_info ),
cl_ntoh32( ib_node_info_get_vendor_id
( &p_rec->node_info ) ),
- p_rec->node_desc.description );
+ desc );
if( result < 0 )
{
--
1.4.3.2.g4bf7
More information about the general
mailing list