projects
/
tinc
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (from parent 1:
0b0c2a3
)
Corrected check for errors after read() calls.
author
Guus Sliepen
<guus@tinc-vpn.org>
Sun, 25 Feb 2001 11:09:29 +0000
(11:09 +0000)
committer
Guus Sliepen
<guus@tinc-vpn.org>
Sun, 25 Feb 2001 11:09:29 +0000
(11:09 +0000)
src/meta.c
patch
|
blob
|
history
src/protocol.c
patch
|
blob
|
history
diff --git
a/src/meta.c
b/src/meta.c
index
fa32b89
..
f9b18ca
100644
(file)
--- a/
src/meta.c
+++ b/
src/meta.c
@@
-17,7
+17,7
@@
along with this program; if not, write to the Free Software
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
along with this program; if not, write to the Free Software
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
- $Id: meta.c,v 1.1.2.1
4 2001/01/07 17:08:57
guus Exp $
+ $Id: meta.c,v 1.1.2.1
5 2001/02/25 11:09:29
guus Exp $
*/
#include "config.h"
*/
#include "config.h"
@@
-117,17
+117,19
@@
cp
if(lenin<=0)
{
if(lenin<=0)
{
- if(errno==EINTR)
- return 0;
- if(errno==0)
+ if(lenin==0)
{
if(debug_lvl >= DEBUG_CONNECTIONS)
syslog(LOG_NOTICE, _("Connection closed by %s (%s)"),
cl->name, cl->hostname);
}
else
{
if(debug_lvl >= DEBUG_CONNECTIONS)
syslog(LOG_NOTICE, _("Connection closed by %s (%s)"),
cl->name, cl->hostname);
}
else
- syslog(LOG_ERR, _("Metadata socket read error for %s (%s): %m"),
- cl->name, cl->hostname);
+ if(errno==EINTR)
+ return 0;
+ else
+ syslog(LOG_ERR, _("Metadata socket read error for %s (%s): %m"),
+ cl->name, cl->hostname);
+
return -1;
}
return -1;
}
diff --git
a/src/protocol.c
b/src/protocol.c
index
d09bd7a
..
6da7c2c
100644
(file)
--- a/
src/protocol.c
+++ b/
src/protocol.c
@@
-17,7
+17,7
@@
along with this program; if not, write to the Free Software
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
along with this program; if not, write to the Free Software
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
- $Id: protocol.c,v 1.28.4.7
8 2001/02/06 10:42:27
guus Exp $
+ $Id: protocol.c,v 1.28.4.7
9 2001/02/25 11:09:29
guus Exp $
*/
#include "config.h"
*/
#include "config.h"
@@
-31,6
+31,7
@@
#include <unistd.h>
#include <stdio.h>
#include <stdarg.h>
#include <unistd.h>
#include <stdio.h>
#include <stdarg.h>
+#include <errno.h>
#include <utils.h>
#include <xalloc.h>
#include <utils.h>
#include <xalloc.h>
@@
-1324,9
+1325,17
@@
int tcppacket_h(connection_t *cl)
while(todo)
{
x = read(cl->meta_socket, p, todo);
while(todo)
{
x = read(cl->meta_socket, p, todo);
- if(x<0)
+
+ if(x<=0)
{
{
- syslog(LOG_ERR, _("Error during reception of PACKET from %s (%s): %m"), cl->name, cl->hostname);
+ if(x==0)
+ syslog(LOG_NOTICE, _("Connection closed by %s (%s)"), cl->name, cl->hostname);
+ else
+ if(errno==EINTR)
+ continue;
+ else
+ syslog(LOG_ERR, _("Error during reception of PACKET from %s (%s): %m"), cl->name, cl->hostname);
+
return -1;
}
return -1;
}