TESTS: create an abstraction to connect to a device

Signed-off-by: Ronnie Sahlberg <ronniesahlberg@gmail.com>
This commit is contained in:
Ronnie Sahlberg
2014-09-19 06:26:53 -07:00
parent 48e14f5ccf
commit bd6570c324

View File

@@ -861,6 +861,15 @@ static void parse_and_add_tests(char *testname_re)
parse_and_add_test(testname_re);
}
static int connect_scsi_device(struct scsi_device *sdev, const char *initiatorname)
{
sdev->iscsi_ctx = iscsi_context_login(initiatorname, sdev->iscsi_url, &sdev->iscsi_lun);
if (sdev->iscsi_ctx == NULL) {
return -1;
}
return 0;
}
static void free_scsi_device(struct scsi_device *sdev)
{
if (sdev->error_str) {
@@ -1001,9 +1010,9 @@ main(int argc, char *argv[])
return 10;
}
sd->iscsi_ctx = iscsi_context_login(initiatorname1, sd->iscsi_url, &sd->iscsi_lun);
if (sd->iscsi_ctx == NULL) {
printf("Failed to login to target\n");
if (connect_scsi_device(sd, initiatorname1)) {
fprintf(stderr, "Failed to connect to SCSI device\n");
free_scsi_device(sd);
return -1;
}