1 From 8c5853b8e22f34bc1c1acba278f7850ab7946894 Mon Sep 17 00:00:00 2001
2 From: Yousong Zhou <yszhou4tech@gmail.com>
3 Date: Tue, 28 Apr 2015 21:26:15 +0800
4 Subject: [PATCH 1/7] xl2tpd-control: check end-of-file when reading pipe to
8 xl2tpd-control.c | 11 +++++++----
9 1 file changed, 7 insertions(+), 4 deletions(-)
11 --- a/xl2tpd-control.c
12 +++ b/xl2tpd-control.c
13 @@ -306,17 +306,20 @@ int read_result(int result_fd, char* buf
14 /*FIXME: there is a chance to hang up reading.
15 Should I create watching thread with timeout?
23 - readed = read (result_fd, buf, size);
25 + len = read (result_fd, buf + readed, size - readed);
28 print_error (ERROR_LEVEL,
29 "error: can't read command result: %s\n", strerror (errno));
32 - } while (readed == 0);
34 + } while (len > 0 && (size - readed) > 0);
37 /* scan result code */