gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[GNUnet-SVN] r12277 - gnunet/src/vpn


From: gnunet
Subject: [GNUnet-SVN] r12277 - gnunet/src/vpn
Date: Tue, 20 Jul 2010 13:36:45 +0200

Author: toelke
Date: 2010-07-20 13:36:45 +0200 (Tue, 20 Jul 2010)
New Revision: 12277

Modified:
   gnunet/src/vpn/gnunet-vpn-helper.c
Log:
Handle EOF in the stream between daemon and helper

Modified: gnunet/src/vpn/gnunet-vpn-helper.c
===================================================================
--- gnunet/src/vpn/gnunet-vpn-helper.c  2010-07-20 11:36:45 UTC (rev 12276)
+++ gnunet/src/vpn/gnunet-vpn-helper.c  2010-07-20 11:36:45 UTC (rev 12277)
@@ -143,7 +143,7 @@
        int write_fd_possible = 0;
        int write_stdout_possible = 0;
 outer:
-       while(rea != 0 && wri != 0 && running == 1) {
+       while((rea == 1 || wri == 1) && running == 1) {
                FD_ZERO(&fds_w);
                FD_ZERO(&fds_r);
 
@@ -169,7 +169,7 @@
                                write_fd_possible = 0;
                                struct suid_packet *pkt = (struct suid_packet*) 
buf;
                                r = read(0, buf, sizeof(struct 
suid_packet_header));
-                               if (r < 0) {
+                               if (r <= 0) {
                                        fprintf(stderr, "read-error: %m\n");
                                        shutdown(fd_tun, SHUT_WR);
                                        shutdown(0, SHUT_RD);
@@ -202,7 +202,7 @@
                        } else if (write_stdout_possible && FD_ISSET(fd_tun, 
&fds_r)) {
                                write_stdout_possible = 0;
                                r = read(fd_tun, buf, 65600);
-                               if (r < 0) {
+                               if (r <= 0) {
                                        fprintf(stderr, "read-error: %m\n");
                                        shutdown(fd_tun, SHUT_RD);
                                        shutdown(1, SHUT_WR);




reply via email to

[Prev in Thread] Current Thread [Next in Thread]