summaryrefslogtreecommitdiffstats
path: root/sys/dev/iscsi_initiator/iscsi.c
diff options
context:
space:
mode:
Diffstat (limited to 'sys/dev/iscsi_initiator/iscsi.c')
-rw-r--r--sys/dev/iscsi_initiator/iscsi.c16
1 files changed, 5 insertions, 11 deletions
diff --git a/sys/dev/iscsi_initiator/iscsi.c b/sys/dev/iscsi_initiator/iscsi.c
index e607f18..ac3d1cc 100644
--- a/sys/dev/iscsi_initiator/iscsi.c
+++ b/sys/dev/iscsi_initiator/iscsi.c
@@ -388,20 +388,14 @@ i_setsoc(isc_session_t *sp, int fd, struct thread *td)
if(sp->soc != NULL)
isc_stop_receiver(sp);
- error = fget(td, fd, cap_rights_init(&rights, CAP_SOCK_CLIENT), &sp->fp);
+ error = getsock_cap(td, fd, cap_rights_init(&rights, CAP_SOCK_CLIENT),
+ &sp->fp, NULL, NULL);
if(error)
return error;
- error = fgetsock(td, fd, cap_rights_init(&rights, CAP_SOCK_CLIENT),
- &sp->soc, 0);
- if(error == 0) {
- sp->td = td;
- isc_start_receiver(sp);
- }
- else {
- fdrop(sp->fp, td);
- sp->fp = NULL;
- }
+ sp->soc = sp->fp->f_data;
+ sp->td = td;
+ isc_start_receiver(sp);
return error;
}
OpenPOWER on IntegriCloud