[Samba] Odd Samba 4 ("4.2.0pre1-GIT-b505111"; actually only using client) behaviour #2 - "accept: Software caused connection abort".

Volker Lendecke Volker.Lendecke at SerNet.DE
Fri Dec 13 01:00:33 MST 2013

On Thu, Dec 12, 2013 at 07:18:44PM +0000, Tristram E. H. Mabbs wrote:
> > Did the client do a RST while waiting for smbd to do the accept()?
> 	That I can't tell.
> 	I could try and capture some traffic to see, but it's typically quite difficult to catch this problem when it's occurring, unfortunately.
> > What does the system expect from an application as a proper reply to this error message?
> 	As Richard Sharpe said, not a lot that can be done except log it - the connection has gone away at this point.
> 	My concerns are:
> 	1.  It could well be indicative of some actual problem in the code, which it would be beneficial to address.
> 	2.  It typically causes a very large amount of messages to be logged, so at the very least could these only be logged at a debug level higher than zero?  It's apparently a perfectly recoverable error, so perhaps it doesn't need to be logged all the time.

We could perfectly well increase this debug message from
level 0 to 1, which would typically avoid going through
syslog. Patch attached.


SerNet GmbH, Bahnhofsallee 1b, 37081 Göttingen
phone: +49-551-370000-0, fax: +49-551-370000-9
AG Göttingen, HRB 2816, GF: Dr. Johannes Loxen
http://www.sernet.de, mailto:kontakt at sernet.de
-------------- next part --------------
From c019bca37bed2be311fbffba58e13f733714b56f Mon Sep 17 00:00:00 2001
From: Volker Lendecke <vl at samba.org>
Date: Fri, 13 Dec 2013 08:58:50 +0100
Subject: [PATCH] smbd: Don't log accept errors at level 0

This seems to happen frequently on FreeBSD at least

Signed-off-by: Volker Lendecke <vl at samba.org>
 source3/smbd/server.c |    3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/source3/smbd/server.c b/source3/smbd/server.c
index 36be019..ca22e16 100644
--- a/source3/smbd/server.c
+++ b/source3/smbd/server.c
@@ -553,8 +553,7 @@ static void smbd_accept_connection(struct tevent_context *ev,
 	if (fd == -1) {
-		DEBUG(0,("accept: %s\n",
-			 strerror(errno)));
+		DEBUG(1,("accept: %s\n", strerror(errno)));

More information about the samba-technical mailing list