summaryrefslogtreecommitdiff
path: root/libftpconn
diff options
context:
space:
mode:
authorMiles Bader <miles@gnu.org>1997-08-09 23:44:14 +0000
committerMiles Bader <miles@gnu.org>1997-08-09 23:44:14 +0000
commit4036ef0968a055c25c1f092be5047c488065306e (patch)
tree5f2f080cb6b9b14c013e5c52564c744ec159de5f /libftpconn
parentf3866ded4b952c48a02ee5a98d019a075a78ea34 (diff)
(ftp_conn_getline):
Check for interrupts.
Diffstat (limited to 'libftpconn')
-rw-r--r--libftpconn/reply.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/libftpconn/reply.c b/libftpconn/reply.c
index 260cfb71..4f30f751 100644
--- a/libftpconn/reply.c
+++ b/libftpconn/reply.c
@@ -60,6 +60,7 @@ ftp_conn_getline (struct ftp_conn *conn, const char **line, size_t *line_len)
{
char *l = conn->line;
size_t offs = conn->line_offs, len = conn->line_len, sz = conn->line_sz;
+ int (*icheck) (struct ftp_conn *conn) = conn->hooks->interrupt_check;
for (;;)
{
@@ -127,6 +128,9 @@ ftp_conn_getline (struct ftp_conn *conn, const char **line, size_t *line_len)
len += rd;
conn->line_len = len;
+
+ if (icheck && (*icheck) (conn))
+ return EINTR;
}
}