4646
4747const char * nvmf_dev = "/dev/nvme-fabrics" ;
4848
49+ /**
50+ * strchomp() - Strip trailing white space
51+ * @s: String to strip
52+ * @l: Maximum length of string
53+ */
54+ static void strchomp (char * s , int l )
55+ {
56+ while (l && (s [l ] == '\0' || s [l ] == ' ' ))
57+ s [l -- ] = '\0' ;
58+ }
59+
4960const char * arg_str (const char * const * strings ,
5061 size_t array_size , size_t idx )
5162{
@@ -567,8 +578,8 @@ nvme_ctrl_t nvmf_connect_disc_entry(nvme_host_t h,
567578 switch (e -> adrfam ) {
568579 case NVMF_ADDR_FAMILY_IP4 :
569580 case NVMF_ADDR_FAMILY_IP6 :
570- nvme_chomp (e -> traddr , NVMF_TRADDR_SIZE );
571- nvme_chomp (e -> trsvcid , NVMF_TRSVCID_SIZE );
581+ strchomp (e -> traddr , NVMF_TRADDR_SIZE - 1 );
582+ strchomp (e -> trsvcid , NVMF_TRSVCID_SIZE - 1 );
572583 traddr = e -> traddr ;
573584 trsvcid = e -> trsvcid ;
574585 break ;
@@ -583,7 +594,7 @@ nvme_ctrl_t nvmf_connect_disc_entry(nvme_host_t h,
583594 case NVMF_TRTYPE_FC :
584595 switch (e -> adrfam ) {
585596 case NVMF_ADDR_FAMILY_FC :
586- nvme_chomp (e -> traddr , NVMF_TRADDR_SIZE );
597+ strchomp (e -> traddr , NVMF_TRADDR_SIZE - 1 );
587598 traddr = e -> traddr ;
588599 break ;
589600 default :
@@ -595,7 +606,7 @@ nvme_ctrl_t nvmf_connect_disc_entry(nvme_host_t h,
595606 }
596607 break ;
597608 case NVMF_TRTYPE_LOOP :
598- nvme_chomp (e -> traddr , NVMF_TRADDR_SIZE );
609+ strchomp (e -> traddr , NVMF_TRADDR_SIZE - 1 );
599610 traddr = strlen (e -> traddr ) ? e -> traddr : NULL ;
600611 break ;
601612 default :
0 commit comments