@@ -76,6 +76,7 @@ static void container_free_volumes(struct hyper_container *c)
76
76
free (c -> vols [i ].device );
77
77
free (c -> vols [i ].mountpoint );
78
78
free (c -> vols [i ].fstype );
79
+ free (c -> vols [i ].scsiaddr );
79
80
}
80
81
free (c -> vols );
81
82
c -> vols = NULL ;
@@ -115,6 +116,9 @@ static int container_parse_volumes(struct hyper_container *c, char *json, jsmnto
115
116
c -> vols [j ].device =
116
117
strdup (json_token_str (json , & toks [++ i ]));
117
118
fprintf (stdout , "volume %d device %s\n" , j , c -> vols [j ].device );
119
+ } else if (json_token_streq (json , & toks [i ], "addr" )) {
120
+ c -> vols [j ].scsiaddr = strdup (json_token_str (json , & toks [++ i ]));
121
+ fprintf (stdout , "volume %d scsi id %s\n" , j , c -> vols [j ].scsiaddr );
118
122
} else if (json_token_streq (json , & toks [i ], "mount" )) {
119
123
c -> vols [j ].mountpoint =
120
124
strdup (json_token_str (json , & toks [++ i ]));
@@ -321,6 +325,9 @@ void hyper_free_container(struct hyper_container *c)
321
325
free (c -> image );
322
326
c -> image = NULL ;
323
327
328
+ free (c -> scsiaddr );
329
+ c -> scsiaddr = NULL ;
330
+
324
331
free (c -> workdir );
325
332
c -> workdir = NULL ;
326
333
@@ -403,6 +410,10 @@ static int hyper_parse_container(struct hyper_pod *pod, struct hyper_container *
403
410
c -> image = strdup (json_token_str (json , & toks [++ i ]));
404
411
fprintf (stdout , "container image %s\n" , c -> image );
405
412
i ++ ;
413
+ } else if (json_token_streq (json , t , "addr" ) && t -> size == 1 ) {
414
+ c -> scsiaddr = strdup (json_token_str (json , & toks [++ i ]));
415
+ fprintf (stdout , "container image scsi id %s\n" , c -> scsiaddr );
416
+ i ++ ;
406
417
} else if (json_token_streq (json , t , "fstype" ) && t -> size == 1 ) {
407
418
c -> fstype = strdup (json_token_str (json , & toks [++ i ]));
408
419
fprintf (stdout , "container fstype %s\n" , c -> fstype );
@@ -1098,6 +1109,8 @@ int hyper_parse_read_file(struct hyper_reader *reader, char *json, int length)
1098
1109
return ret ;
1099
1110
fail :
1100
1111
free (reader -> id );
1112
+ reader -> id = NULL ;
1101
1113
free (reader -> file );
1114
+ reader -> file = NULL ;
1102
1115
goto out ;
1103
1116
}
0 commit comments