#include <grp.h>
#include <errno.h>
#include <sys/wait.h>
+#include <stdint.h>
#ifdef HAVE_CONFIG_H
#include <config.h>
static void transferread(struct socket *sk, struct transfer *transfer)
{
if(sockgetdatalen(sk) >= 65536)
- sk->ignread = 1;
+ sockblock(sk, 1);
if((transfer->iface != NULL) && (transfer->iface->gotdata != NULL))
transfer->iface->gotdata(transfer, transfer->ifacedata);
}
if(transfer->localend == NULL)
return(NULL);
- transfer->localend->ignread = 0;
+ sockblock(transfer->localend, 0);
time(&transfer->activity);
if((buf = sockgetinbuf(transfer->localend, size)) == NULL)
return(NULL);
transfersetsize(transfer, size);
transfer->curpos = start;
transfer->endpos = end;
- lesk->ignread = 1;
+ sockblock(lesk, 1);
transfersetlocalend(transfer, lesk);
}
transfersetstate(transfer, TRNS_MAIN);
socksettos(sk, confgetint("transfer", "ultos"));
if(transfer->localend != NULL)
- transfer->localend->ignread = 0;
+ sockblock(transfer->localend, 0);
}
void transfersetlocalend(struct transfer *transfer, struct socket *sk)
* the fd, and thus it closes it. Until I can find out whyever the
* kernel gives a POLLIN on the fd (if I can at all...), I'll just
* set ignread on insock for now. */
- insock->ignread = 1;
+ sockblock(insock, 1);
transfer->filter = pid;
transfersetlocalend(transfer, insock);
getsock(transfer->filterout = outsock);