Remove redundant code in iscsi_service()
This commit is contained in:
46
lib/socket.c
46
lib/socket.c
@@ -439,6 +439,17 @@ iscsi_write_to_socket(struct iscsi_context *iscsi)
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
int inline
|
||||||
|
iscsi_service_reconnect_if_loggedin(struct iscsi_context *iscsi)
|
||||||
|
{
|
||||||
|
if (iscsi->is_loggedin) {
|
||||||
|
if (iscsi_reconnect(iscsi) == 0) {
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
int
|
int
|
||||||
iscsi_service(struct iscsi_context *iscsi, int revents)
|
iscsi_service(struct iscsi_context *iscsi, int revents)
|
||||||
{
|
{
|
||||||
@@ -460,24 +471,14 @@ iscsi_service(struct iscsi_context *iscsi, int revents)
|
|||||||
}
|
}
|
||||||
iscsi->socket_status_cb(iscsi, SCSI_STATUS_ERROR, NULL,
|
iscsi->socket_status_cb(iscsi, SCSI_STATUS_ERROR, NULL,
|
||||||
iscsi->connect_data);
|
iscsi->connect_data);
|
||||||
if (iscsi->is_loggedin) {
|
return iscsi_service_reconnect_if_loggedin(iscsi);
|
||||||
if (iscsi_reconnect(iscsi) == 0) {
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return -1;
|
|
||||||
}
|
}
|
||||||
if (revents & POLLHUP) {
|
if (revents & POLLHUP) {
|
||||||
iscsi_set_error(iscsi, "iscsi_service: POLLHUP, "
|
iscsi_set_error(iscsi, "iscsi_service: POLLHUP, "
|
||||||
"socket error.");
|
"socket error.");
|
||||||
iscsi->socket_status_cb(iscsi, SCSI_STATUS_ERROR, NULL,
|
iscsi->socket_status_cb(iscsi, SCSI_STATUS_ERROR, NULL,
|
||||||
iscsi->connect_data);
|
iscsi->connect_data);
|
||||||
if (iscsi->is_loggedin) {
|
return iscsi_service_reconnect_if_loggedin(iscsi);
|
||||||
if (iscsi_reconnect(iscsi) == 0) {
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return -1;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (iscsi->is_connected == 0 && iscsi->fd != -1 && revents&POLLOUT) {
|
if (iscsi->is_connected == 0 && iscsi->fd != -1 && revents&POLLOUT) {
|
||||||
@@ -493,12 +494,7 @@ iscsi_service(struct iscsi_context *iscsi, int revents)
|
|||||||
strerror(err), err);
|
strerror(err), err);
|
||||||
iscsi->socket_status_cb(iscsi, SCSI_STATUS_ERROR,
|
iscsi->socket_status_cb(iscsi, SCSI_STATUS_ERROR,
|
||||||
NULL, iscsi->connect_data);
|
NULL, iscsi->connect_data);
|
||||||
if (iscsi->is_loggedin) {
|
return iscsi_service_reconnect_if_loggedin(iscsi);
|
||||||
if (iscsi_reconnect(iscsi) == 0) {
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return -1;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
DPRINTF(iscsi,2,"connection to %s established",iscsi->connected_portal);
|
DPRINTF(iscsi,2,"connection to %s established",iscsi->connected_portal);
|
||||||
@@ -511,22 +507,12 @@ iscsi_service(struct iscsi_context *iscsi, int revents)
|
|||||||
|
|
||||||
if (revents & POLLOUT && iscsi->outqueue != NULL) {
|
if (revents & POLLOUT && iscsi->outqueue != NULL) {
|
||||||
if (iscsi_write_to_socket(iscsi) != 0) {
|
if (iscsi_write_to_socket(iscsi) != 0) {
|
||||||
if (iscsi->is_loggedin) {
|
return iscsi_service_reconnect_if_loggedin(iscsi);
|
||||||
if (iscsi_reconnect(iscsi) == 0) {
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return -1;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (revents & POLLIN) {
|
if (revents & POLLIN) {
|
||||||
if (iscsi_read_from_socket(iscsi) != 0) {
|
if (iscsi_read_from_socket(iscsi) != 0) {
|
||||||
if (iscsi->is_loggedin) {
|
return iscsi_service_reconnect_if_loggedin(iscsi);
|
||||||
if (iscsi_reconnect(iscsi) == 0) {
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return -1;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user