Re: Issues with Perdition 2.1 in FreeBSD

Egoitz Aurrekoetxea <[email protected]> Fri, 6 Mar 2015 13:54:36 +0100
Newsgroups gmane.mail.perdition.user
Message-ID <[email protected]>
--===============1621219430==
Content-Type: multipart/alternative; boundary="Apple-Mail=_4AB47D41-B092-4783-BF03-55068F5582A7"


--Apple-Mail=_4AB47D41-B092-4783-BF03-55068F5582A7
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain;
	charset=utf-8

In case it helps, previous machines were running FreeBSD 9 RELENG=E2=80=A6=
 with Vanesa libraries all of them version 0.0.7 and Perdition 1.17.1



Egoitz Aurrekoetxea
Departamento de sistemas
944 209 470
Parque Tecnol=C3=B3gico. Edificio 103
48170 Zamudio (Bizkaia)
[email protected] <mailto:[email protected]>
www.sarenet.es <http://www.sarenet.es/>
Antes de imprimir este correo electr=C3=B3nico piense si es necesario =
hacerlo.

> El 6/3/2015, a las 13:46, Egoitz Aurrekoetxea <[email protected]> =
escribi=C3=B3:
>=20
> Good morning,
>=20
> Thanks a lot for your help.
>=20
> If I=E2=80=99m taking a look to errno.h :=20
>=20
> cat /usr/include/errno.h | grep EAGA
> 					/* 11 was EAGAIN */
> #define	EAGAIN		35		/* Resource temporarily =
unavailable */
> #define	EWOULDBLOCK	EAGAIN		/* Operation would block =
*/
>=20
> So, both are the same perhaps in FreeBSD??
>=20
> The parent process exists in the order shown below, let me see you the =
corresponding output with the patch below (the literals in the dying =
moment) :=20
>=20
> Mar  5 08:30:18 perdition.imap4s[99711]: =
__vanessa_socket_server_accept: Falla accept con el error
> Mar  5 08:30:18 perdition.imap4s[99711]: =
__vanessa_socket_server_accept: =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
> Mar  5 08:30:18 perdition.imap4s[99711]: =
__vanessa_socket_server_accept: 53
> Mar  5 08:30:18 perdition.imap4s[99711]: =
__vanessa_socket_server_accept: =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
> Mar  5 08:30:18 perdition.imap4s[99711]: =
__vanessa_socket_server_accept: Falla accept con el error
> Mar  5 08:30:18 perdition.imap4s[99711]: =
__vanessa_socket_server_accept: =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
> Mar  5 08:30:18 perdition.imap4s[99711]: =
__vanessa_socket_server_accept: 35
> Mar  5 08:30:18 perdition.imap4s[99711]: =
__vanessa_socket_server_accept: =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
> Mar  5 08:30:18 perdition.imap4s[99711]: =
__vanessa_socket_server_acceptv: EGOITZ STATUS -----> 0
> Mar  5 08:30:18 perdition.imap4s[99711]: main: =
vanessa_socket_server_accept
> Mar  5 08:30:18 perdition.imap4s[99711]: Fatal error accepting child =
connection. Exiting.
>=20
> And no=E2=80=A6 I have no idea=E2=80=A6 Should say instead one =
clarification; we have updated this machines to FreeBSD 10.1-RELEASE-p6 =
and Perdition 2.1 (with Vanessa=E2=80=99s versions shown in previous =
email) last week
> just, when the problems began. Have been taking a look at FreeBSD =
source code and SVN but am not being able to see any kind of =
modification in accept() syscall=E2=80=A6
>=20
> Thank you so much,
> Best regards,
>=20
>=20
> Egoitz Aurrekoetxea
> Departamento de sistemas
> 944 209 470
> Parque Tecnol=C3=B3gico. Edificio 103
> 48170 Zamudio (Bizkaia)
> [email protected] <mailto:[email protected]>
> www.sarenet.es <http://www.sarenet.es/>
> Antes de imprimir este correo electr=C3=B3nico piense si es necesario =
hacerlo.
>=20
>> El 6/3/2015, a las 12:45, Simon Horman <[email protected] =
<mailto:[email protected]>> escribi=C3=B3:
>>=20
>> Hi Egoitz,
>>=20
>> I'd like to try and clarify the situation.
>>=20
>> 1. Is the following correct?
>>=20
>>   EAGAIN =3D 53
>>   EWOULDBLOCK =3D 35
>>=20
>> 2. If so is the problem that the listening process exits if
>>   errno is EWOULDBLOCK?
>>=20
>>   If so do you have any idea why EWOULDBLOCK is being returned?
>>=20
>> On Fri, Mar 06, 2015 at 10:34:00AM +0100, Egoitz Aurrekoetxea wrote:
>>> I had forgotten, the versions of Vanessa are :=20
>>>=20
>>> libvanessa_adt-0.0.9
>>> libvanessa_logger-0.0.10
>>> libvanessa_socket-0.0.12
>>>=20
>>> Perhaps I should check for this patch if errno is not EAGAIN and is =
EWOULDBLOCK for allowing Perdition parent process to fail if errno is =
EWOULDBLOCK??=20
>>>=20
>>> At this stage I=E2=80=99m still trying to see if this patch solves =
the issue=E2=80=A6.
>>>=20
>>> Best regards,
>>>=20
>>>=20
>>> Egoitz Aurrekoetxea
>>> Departamento de sistemas
>>> 944 209 470
>>> Parque Tecnol=C3=B3gico. Edificio 103
>>> 48170 Zamudio (Bizkaia)
>>> [email protected] <mailto:[email protected]> =
<mailto:[email protected] <mailto:[email protected]>>
>>> www.sarenet.es <http://www.sarenet.es/> <http://www.sarenet.es/ =
<http://www.sarenet.es/>>
>>> Antes de imprimir este correo electr=C3=B3nico piense si es =
necesario hacerlo.
>>>=20
>>>> El 5/3/2015, a las 16:59, Egoitz Aurrekoetxea <[email protected] =
<mailto:[email protected]>> escribi=C3=B3:
>>>>=20
>>>> God afternoon,
>>>>=20
>>>> I=E2=80=99m running some issues in a FreeBSD 10.1 RELENG machine =
with Perdition 2.1. Once or twice a day the parent process of POP3 or =
IMAP4 service dies. After doing some=20
>>>> investigations have seen the problem comes when at =
vanessa_socket_server.c file at __vanessa_socket_server_accept() when it =
does the accept(). It seems accept() is failing=20
>>>> with 53 (which continues) and later with 35 (talking about errno of =
course) with which exits with -1. So later is returning to =
__vanessa_socket_server_acceptv() and this one returns to=20
>>>> vanessa_socket_server_acceptv due to :=20
>>>>=20
>>>> if (child < 0)
>>>> 		return status;
>>>>=20
>>>> At this function (the last one) does exist :=20
>>>>=20
>>>> 			child =3D __vanessa_socket_server_acceptv(&g, =
ufds[i].fd,
>>>> 						listen_socketv,=20
>>>> 						maximum_connections,=20
>>>> 						return_from, return_to, =
flag);
>>>> 			VANESSA_LOGGER_DEBUG("EGOITZ 1E");
>>>> 			if (child < 0) {
>>>> 				VANESSA_LOGGER_DEBUG(
>>>> 					=
"__vanessa_socket_server_acceptv");
>>>> 				goto err;
>>>>=20
>>>>=20
>>>> Perhaps this file be (please ignore the debugging literals) could =
be like this ?
>>>>=20
>>>> --- vanessa_socket_server.c	2010-06-22 09:21:37.000000000 =
+0200
>>>> +++ vanessa_socket_server.c	2015-03-05 16:50:25.000000000 =
+0100
>>>> @@ -388,10 +388,20 @@
>>>> 		addrlen =3D sizeof(from);
>>>> 		*g =3D accept(listen_socket, (struct sockaddr *) &from, =
&addrlen);
>>>> 		if (*g  < 0) {
>>>> +			char codigo[20];
>>>> +			sprintf(codigo, "%d", errno);
>>>> +			VANESSA_LOGGER_DEBUG("Falla accept con el =
error");
>>>> +			=
VANESSA_LOGGER_DEBUG("=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D");
>>>> +			VANESSA_LOGGER_DEBUG(codigo);
>>>> +			=
VANESSA_LOGGER_DEBUG("=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D");		=09
>>>> +			if (errno =3D=3D EAGAIN)=20
>>>> +			{
>>>> +				VANESSA_LOGGER_DEBUG("TENEMOS UN =
EAGAIN");
>>>> +			}
>>>> 			if(errno =3D=3D EINTR || errno =3D=3D =
ECONNABORTED) {
>>>> 				continue; /* Ignore EINTR  and =
ECONNABORTED */
>>>> 			}
>>>> -			if (errno =3D=3D EAGAIN || errno =3D=3D =
EWOULDBLOCK)
>>>> +			if (errno =3D=3D EWOULDBLOCK || errno =3D=3D =
EAGAIN)
>>>> 				return -1; /* Don't log EAGAIN or =
EWOULDBLOCK */
>>>> 			VANESSA_LOGGER_DEBUG_ERRNO("accept");
>>>> 			return(-1);
>>>> @@ -551,7 +561,10 @@
>>>> 							flag);
>>>> 	if (child < 0) {
>>>> 		if (errno =3D=3D EAGAIN || errno =3D=3D EWOULDBLOCK)
>>>> +		{
>>>> 			status =3D 0;
>>>> +			VANESSA_LOGGER_DEBUG("EGOITZ STATUS -----> 0");
>>>> +		}
>>>> 		else {
>>>> 			=
VANESSA_LOGGER_DEBUG("__vanessa_socket_server_accept");
>>>> 			status =3D -1;
>>>> @@ -561,6 +574,7 @@
>>>> 	if (!(opt & O_NONBLOCK) && child &&
>>>> 	    fcntl(listen_socket, F_SETFL, opt) < 0) {
>>>> 		VANESSA_LOGGER_DEBUG_ERRNO("fcntl: F_SETFL 2");
>>>> +		VANESSA_LOGGER_DEBUG("ERROR 0000001 AAAAA");
>>>> 		status =3D -1;
>>>> 	}
>>>>=20
>>>> @@ -570,6 +584,7 @@
>>>> 	if (!(opt & O_NONBLOCK) && (flag & VANESSA_SOCKET_NO_FORK || =
!child) &&
>>>> 	    fcntl(*g, F_SETFL, opt) < 0) {
>>>> 		VANESSA_LOGGER_DEBUG_ERRNO("fcntl: F_SETFL 3");
>>>> +		VANESSA_LOGGER_DEBUG("ERROR 0000002 BBBB");
>>>> 		status =3D -1;
>>>> 	}
>>>> =09
>>>> @@ -632,6 +647,10 @@
>>>> 					=
"__vanessa_socket_server_acceptv");
>>>> 				goto err;
>>>> 			}
>>>> +			if (!child && g < 0)
>>>> +			{
>>>> +				break;
>>>> +			}=09
>>>> 			if (flag & VANESSA_SOCKET_NO_FORK || !child) {
>>>> 				status =3D g;
>>>> 				goto out;
>>>>=20
>>>> Mainly talking about :=20
>>>>=20
>>>> +			if (!child && g < 0)
>>>> +			{
>>>> +				break;
>>>> +			}=09
>>>>=20
>>>> That way polling again socket fds instead of exiting and stop =
servicing the affected protocol in each case (POP3 or IMAP4)??
>>>>=20
>>>> Have done this last modification without having the luck of having =
an abnormal termination again, in order to check if this works=E2=80=A6
>>>>=20
>>>> Has anyone have noticed about something similar?.
>>>>=20
>>>> Thank you so much,
>>>> Regards,=20
>>>>=20
>>>>=20
>>>> Egoitz Aurrekoetxea
>>>> Departamento de sistemas
>>>> 944 209 470
>>>> Parque Tecnol=C3=B3gico. Edificio 103
>>>> 48170 Zamudio (Bizkaia)
>>>> [email protected] <mailto:[email protected]> =
<mailto:[email protected] <mailto:[email protected]>>
>>>> www.sarenet.es <http://www.sarenet.es/> <http://www.sarenet.es/ =
<http://www.sarenet.es/>>
>>>> Antes de imprimir este correo electr=C3=B3nico piense si es =
necesario hacerlo.
>>>>=20
>>>> ______________________________________________
>>>> Perdition-users mailing list
>>>> [email protected] <mailto:[email protected]>
>>>> http://lists.vergenet.net/listinfo/perdition-users
>>>=20
>>=20
>>> ______________________________________________
>>> Perdition-users mailing list
>>> [email protected] <mailto:[email protected]>
>>> http://lists.vergenet.net/listinfo/perdition-users
>=20


--Apple-Mail=_4AB47D41-B092-4783-BF03-55068F5582A7
Content-Transfer-Encoding: quoted-printable
Content-Type: text/html;
	charset=utf-8

<html><head><meta http-equiv=3D"Content-Type" content=3D"text/html =
charset=3Dutf-8"></head><body style=3D"word-wrap: break-word; =
-webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" =
class=3D"">In case it helps, previous machines were running FreeBSD 9 =
RELENG=E2=80=A6 with Vanesa libraries all of them version 0.0.7 and =
Perdition 1.17.1<div class=3D""><div class=3D"">
<style class=3D"">
body {
	font-family:Helvetica, Arial, sans-serif;
	font-size:12px;
	color:#333;
}
.moz-signature { color:#333!important; }
.firmasarenet {
	font-family:Helvetica, Arial, sans-serif;
	text-align:left;
	color:#333333;
}
.titulosarenet {
	font-family:Helvetica, Arial, sans-serif;
	font-weight:bold;
	font-size:12px;
	color:#333333;
}
.textosarenet {
	font-family:Helvetica, Arial, sans-serif;
	font-weight:bold;
	font-size:12px;
	color:#333333;
}
.dptosarenet { }
.imgsarenet { margin:0px 0px 10px 0px }
.imgsarenet img { }
.lnksarenet {
	color:#007AC4!important;
	font-size:12px;
	line-height:1.2;
	text-decoration:underline;
}
.firmasarenet a { color:#007ac4!important }
.imprimirsarenet {
	font-family:Helvetica, Arial, sans-serif;
	font-weight:normal;
	font-size:10px;
	line-height:1.2;
	color:#006600
}
</style>
<br class=3D"">
<br class=3D"">
<div style=3D"clear:both; text-align:left;" class=3D"firmasarenet">
  <div style=3D"margin:0 0 10px 0" class=3D"imgsarenet"><img =
src=3D"http://www.sarenet.es/estaticos/LogoSarenetEmails.png?13022013" =
alt=3D"sarenet" class=3D""></div>
  <div style=3D"font-family:Helvetica, Arial, sans-serif; =
font-weight:bold; font-size:14px; color:#333333" =
class=3D"titulosarenet"><strong class=3D"">Egoitz =
Aurrekoetxea</strong></div>
  <div style=3D"font-family:Helvetica, Arial, sans-serif; =
font-weight:normal; font-size:12px; color:#333333" =
class=3D"dptosarenet">Departamento de sistemas</div>
  <div style=3D"font-family:Helvetica, Arial, sans-serif; =
font-weight:normal; font-size:12px; color:#333333" =
class=3D"textosarenet">944 209 470<br class=3D"">Parque Tecnol=C3=B3gico. =
Edificio 103<br class=3D"">48170 Zamudio (Bizkaia)</div>
  <div style=3D"font-family:Helvetica, Arial, sans-serif; =
font-weight:normal; font-size:12px; color:#007AC4; line-height:1.2" =
class=3D"lnksarenet"><a id=3D"mailto" style=3D" font-size:12px; =
color:#007AC4; text-decoration:underline;" =
href=3D"mailto:[email protected]" class=3D""><label id=3D"label_email" =
class=3D"">[email protected]</label></a></div>
  <div style=3D"font-family:Helvetica, Arial, sans-serif; =
font-weight:normal; font-size:12px; color:#007AC4; line-height:1.2" =
class=3D"lnksarenet"><a href=3D"http://www.sarenet.es" style=3D" =
font-size:12px; color:#007AC4; text-decoration:underline;" =
class=3D"">www.sarenet.es</a></div>
  <br class=3D"">
  <div style=3D"font-family:Helvetica, Arial, sans-serif; =
font-weight:normal; font-size:10px; color:#A0C361" =
class=3D"imprimirsarenet">Antes de imprimir este correo electr=C3=B3nico =
piense si es necesario hacerlo.</div>
</div>

</div>
<br class=3D""><div><blockquote type=3D"cite" class=3D""><div =
class=3D"">El 6/3/2015, a las 13:46, Egoitz Aurrekoetxea &lt;<a =
href=3D"mailto:[email protected]" class=3D"">[email protected]</a>&gt; =
escribi=C3=B3:</div><br class=3D"Apple-interchange-newline"><div =
class=3D""><meta http-equiv=3D"Content-Type" content=3D"text/html =
charset=3Dutf-8" class=3D""><div style=3D"word-wrap: break-word; =
-webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" =
class=3D"">Good morning,<div class=3D""><br class=3D""></div><div =
class=3D"">Thanks a lot for your help.</div><div class=3D""><br =
class=3D""></div><div class=3D"">If I=E2=80=99m taking a look to errno.h =
:&nbsp;</div><div class=3D""><div class=3D""><br class=3D""></div><div =
class=3D""><div style=3D"margin: 0px; font-size: 10px; font-family: =
Monaco; color: rgb(245, 245, 245); background-color: rgb(0, 0, 0);" =
class=3D"">cat /usr/include/errno.h | grep EAGA</div><div style=3D"margin:=
 0px; font-size: 10px; font-family: Monaco; color: rgb(245, 245, 245); =
background-color: rgb(0, 0, 0);" class=3D""><span class=3D"Apple-tab-span"=
 style=3D"white-space:pre">					=
</span>/* 11 was EAGAIN */</div><div style=3D"margin: 0px; font-size: =
10px; font-family: Monaco; color: rgb(245, 245, 245); background-color: =
rgb(0, 0, 0);" class=3D"">#define<span class=3D"Apple-tab-span" =
style=3D"white-space:pre">	</span>EAGAIN<span =
class=3D"Apple-tab-span" style=3D"white-space:pre">		=
</span>35<span class=3D"Apple-tab-span" style=3D"white-space:pre">		=
</span>/* Resource temporarily unavailable */</div><div style=3D"margin: =
0px; font-size: 10px; font-family: Monaco; color: rgb(245, 245, 245); =
background-color: rgb(0, 0, 0);" class=3D"">#define<span =
class=3D"Apple-tab-span" style=3D"white-space:pre">	=
</span>EWOULDBLOCK<span class=3D"Apple-tab-span" =
style=3D"white-space:pre">	</span>EAGAIN<span =
class=3D"Apple-tab-span" style=3D"white-space:pre">		=
</span>/* Operation would block */</div></div><div class=3D""><br =
class=3D""></div><div class=3D"">So, both are the same perhaps in =
FreeBSD??</div><div class=3D""><br class=3D""></div><div class=3D"">The =
parent process exists in the order shown below, let me see you the =
corresponding output with the patch below (the literals in the dying =
moment) :&nbsp;</div><div class=3D""><br class=3D""></div><div =
class=3D""><div class=3D"">Mar &nbsp;5 08:30:18 perdition.imap4s[99711]: =
__vanessa_socket_server_accept: Falla accept con el error</div><div =
class=3D"">Mar &nbsp;5 08:30:18 perdition.imap4s[99711]: =
__vanessa_socket_server_accept: =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D</div><div class=3D"">Mar &nbsp;5 =
08:30:18 perdition.imap4s[99711]: __vanessa_socket_server_accept: =
53</div><div class=3D"">Mar &nbsp;5 08:30:18 perdition.imap4s[99711]: =
__vanessa_socket_server_accept: =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D</div><div class=3D"">Mar &nbsp;5 =
08:30:18 perdition.imap4s[99711]: __vanessa_socket_server_accept: Falla =
accept con el error</div><div class=3D"">Mar &nbsp;5 08:30:18 =
perdition.imap4s[99711]: __vanessa_socket_server_accept: =
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
</div><div class=3D"">Mar &nbsp;5 08:30:18 perdition.imap4s[99711]: =
__vanessa_socket_server_accept: 35</div><div class=3D"">Mar &nbsp;5 =
08:30:18 perdition.imap4s[99711]: __vanessa_socket_server_accept: =
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
</div><div class=3D"">Mar &nbsp;5 08:30:18 perdition.imap4s[99711]: =
__vanessa_socket_server_acceptv: EGOITZ STATUS -----&gt; 0</div><div =
class=3D"">Mar &nbsp;5 08:30:18 perdition.imap4s[99711]: main: =
vanessa_socket_server_accept</div><div class=3D"">Mar &nbsp;5 08:30:18 =
perdition.imap4s[99711]: Fatal error accepting child connection. =
Exiting.</div></div><div class=3D""><br =
class=3D"webkit-block-placeholder"></div><div =
apple-content-edited=3D"true" class=3D"">
<style class=3D"">
body {
	font-family:Helvetica, Arial, sans-serif;
	font-size:12px;
	color:#333;
}
.moz-signature { color:#333!important; }
.firmasarenet {
	font-family:Helvetica, Arial, sans-serif;
	text-align:left;
	color:#333333;
}
.titulosarenet {
	font-family:Helvetica, Arial, sans-serif;
	font-weight:bold;
	font-size:12px;
	color:#333333;
}
.textosarenet {
	font-family:Helvetica, Arial, sans-serif;
	font-weight:bold;
	font-size:12px;
	color:#333333;
}
.dptosarenet { }
.imgsarenet { margin:0px 0px 10px 0px }
.imgsarenet img { }
.lnksarenet {
	color:#007AC4!important;
	font-size:12px;
	line-height:1.2;
	text-decoration:underline;
}
.firmasarenet a { color:#007ac4!important }
.imprimirsarenet {
	font-family:Helvetica, Arial, sans-serif;
	font-weight:normal;
	font-size:10px;
	line-height:1.2;
	color:#006600
}
</style>
And no=E2=80=A6 I have no idea=E2=80=A6 Should say instead one =
clarification; we have updated this machines to FreeBSD 10.1-RELEASE-p6 =
and Perdition 2.1 (with Vanessa=E2=80=99s versions shown in previous =
email) last week</div><div apple-content-edited=3D"true" class=3D"">just, =
when the problems began. Have been taking a look at FreeBSD source code =
and SVN but am not being able to see any kind of modification in =
accept() syscall=E2=80=A6</div><div apple-content-edited=3D"true" =
class=3D""><br class=3D""></div><div apple-content-edited=3D"true" =
class=3D"">Thank you so much,</div><div apple-content-edited=3D"true" =
class=3D"">Best regards,<br class=3D"">
<br class=3D"">
<div style=3D"clear:both; text-align:left;" class=3D"firmasarenet">
  <div style=3D"margin:0 0 10px 0" class=3D"imgsarenet"><img =
src=3D"http://www.sarenet.es/estaticos/LogoSarenetEmails.png?13022013" =
alt=3D"sarenet" class=3D""></div>
  <div style=3D"font-family:Helvetica, Arial, sans-serif; =
font-weight:bold; font-size:14px; color:#333333" =
class=3D"titulosarenet"><strong class=3D"">Egoitz =
Aurrekoetxea</strong></div>
  <div style=3D"font-family:Helvetica, Arial, sans-serif; =
font-weight:normal; font-size:12px; color:#333333" =
class=3D"dptosarenet">Departamento de sistemas</div>
  <div style=3D"font-family:Helvetica, Arial, sans-serif; =
font-weight:normal; font-size:12px; color:#333333" =
class=3D"textosarenet">944 209 470<br class=3D"">Parque Tecnol=C3=B3gico. =
Edificio 103<br class=3D"">48170 Zamudio (Bizkaia)</div>
  <div style=3D"font-family:Helvetica, Arial, sans-serif; =
font-weight:normal; font-size:12px; color:#007AC4; line-height:1.2" =
class=3D"lnksarenet"><a id=3D"mailto" style=3D" font-size:12px; =
color:#007AC4; text-decoration:underline;" =
href=3D"mailto:[email protected]" class=3D""><label id=3D"label_email" =
class=3D"">[email protected]</label></a></div>
  <div style=3D"font-family:Helvetica, Arial, sans-serif; =
font-weight:normal; font-size:12px; color:#007AC4; line-height:1.2" =
class=3D"lnksarenet"><a href=3D"http://www.sarenet.es/" style=3D" =
font-size:12px; color:#007AC4; text-decoration:underline;" =
class=3D"">www.sarenet.es</a></div>
  <br class=3D"">
  <div style=3D"font-family:Helvetica, Arial, sans-serif; =
font-weight:normal; font-size:10px; color:#A0C361" =
class=3D"imprimirsarenet">Antes de imprimir este correo electr=C3=B3nico =
piense si es necesario hacerlo.</div>
</div>

</div>
<br class=3D""><div class=3D""><blockquote type=3D"cite" class=3D""><div =
class=3D"">El 6/3/2015, a las 12:45, Simon Horman &lt;<a =
href=3D"mailto:[email protected]" class=3D"">[email protected]</a>&gt; =
escribi=C3=B3:</div><br class=3D"Apple-interchange-newline"><div =
class=3D""><span style=3D"font-family: Helvetica; font-size: 12px; =
font-style: normal; font-variant: normal; font-weight: normal; =
letter-spacing: normal; line-height: normal; orphans: auto; text-align: =
start; text-indent: 0px; text-transform: none; white-space: normal; =
widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px; float: =
none; display: inline !important;" class=3D"">Hi Egoitz,</span><br =
style=3D"font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant: normal; font-weight: normal; letter-spacing: normal; =
line-height: normal; orphans: auto; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; widows: auto; word-spacing: =
0px; -webkit-text-stroke-width: 0px;" class=3D""><br style=3D"font-family:=
 Helvetica; font-size: 12px; font-style: normal; font-variant: normal; =
font-weight: normal; letter-spacing: normal; line-height: normal; =
orphans: auto; text-align: start; text-indent: 0px; text-transform: =
none; white-space: normal; widows: auto; word-spacing: 0px; =
-webkit-text-stroke-width: 0px;" class=3D""><span style=3D"font-family: =
Helvetica; font-size: 12px; font-style: normal; font-variant: normal; =
font-weight: normal; letter-spacing: normal; line-height: normal; =
orphans: auto; text-align: start; text-indent: 0px; text-transform: =
none; white-space: normal; widows: auto; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; float: none; display: inline =
!important;" class=3D"">I'd like to try and clarify the =
situation.</span><br style=3D"font-family: Helvetica; font-size: 12px; =
font-style: normal; font-variant: normal; font-weight: normal; =
letter-spacing: normal; line-height: normal; orphans: auto; text-align: =
start; text-indent: 0px; text-transform: none; white-space: normal; =
widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;" =
class=3D""><br style=3D"font-family: Helvetica; font-size: 12px; =
font-style: normal; font-variant: normal; font-weight: normal; =
letter-spacing: normal; line-height: normal; orphans: auto; text-align: =
start; text-indent: 0px; text-transform: none; white-space: normal; =
widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;" =
class=3D""><span style=3D"font-family: Helvetica; font-size: 12px; =
font-style: normal; font-variant: normal; font-weight: normal; =
letter-spacing: normal; line-height: normal; orphans: auto; text-align: =
start; text-indent: 0px; text-transform: none; white-space: normal; =
widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px; float: =
none; display: inline !important;" class=3D"">1. Is the following =
correct?</span><br style=3D"font-family: Helvetica; font-size: 12px; =
font-style: normal; font-variant: normal; font-weight: normal; =
letter-spacing: normal; line-height: normal; orphans: auto; text-align: =
start; text-indent: 0px; text-transform: none; white-space: normal; =
widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;" =
class=3D""><br style=3D"font-family: Helvetica; font-size: 12px; =
font-style: normal; font-variant: normal; font-weight: normal; =
letter-spacing: normal; line-height: normal; orphans: auto; text-align: =
start; text-indent: 0px; text-transform: none; white-space: normal; =
widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;" =
class=3D""><span style=3D"font-family: Helvetica; font-size: 12px; =
font-style: normal; font-variant: normal; font-weight: normal; =
letter-spacing: normal; line-height: normal; orphans: auto; text-align: =
start; text-indent: 0px; text-transform: none; white-space: normal; =
widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px; float: =
none; display: inline !important;" class=3D"">&nbsp;&nbsp;EAGAIN =3D =
53</span><br style=3D"font-family: Helvetica; font-size: 12px; =
font-style: normal; font-variant: normal; font-weight: normal; =
letter-spacing: normal; line-height: normal; orphans: auto; text-align: =
start; text-indent: 0px; text-transform: none; white-space: normal; =
widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;" =
class=3D""><span style=3D"font-family: Helvetica; font-size: 12px; =
font-style: normal; font-variant: normal; font-weight: normal; =
letter-spacing: normal; line-height: normal; orphans: auto; text-align: =
start; text-indent: 0px; text-transform: none; white-space: normal; =
widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px; float: =
none; display: inline !important;" class=3D"">&nbsp;&nbsp;EWOULDBLOCK =3D =
35</span><br style=3D"font-family: Helvetica; font-size: 12px; =
font-style: normal; font-variant: normal; font-weight: normal; =
letter-spacing: normal; line-height: normal; orphans: auto; text-align: =
start; text-indent: 0px; text-transform: none; white-space: normal; =
widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;" =
class=3D""><br style=3D"font-family: Helvetica; font-size: 12px; =
font-style: normal; font-variant: normal; font-weight: normal; =
letter-spacing: normal; line-height: normal; orphans: auto; text-align: =
start; text-indent: 0px; text-transform: none; white-space: normal; =
widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;" =
class=3D""><span style=3D"font-family: Helvetica; font-size: 12px; =
font-style: normal; font-variant: normal; font-weight: normal; =
letter-spacing: normal; line-height: normal; orphans: auto; text-align: =
start; text-indent: 0px; text-transform: none; white-space: normal; =
widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px; float: =
none; display: inline !important;" class=3D"">2. If so is the problem =
that the listening process exits if</span><br style=3D"font-family: =
Helvetica; font-size: 12px; font-style: normal; font-variant: normal; =
font-weight: normal; letter-spacing: normal; line-height: normal; =
orphans: auto; text-align: start; text-indent: 0px; text-transform: =
none; white-space: normal; widows: auto; word-spacing: 0px; =
-webkit-text-stroke-width: 0px;" class=3D""><span style=3D"font-family: =
Helvetica; font-size: 12px; font-style: normal; font-variant: normal; =
font-weight: normal; letter-spacing: normal; line-height: normal; =
orphans: auto; text-align: start; text-indent: 0px; text-transform: =
none; white-space: normal; widows: auto; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; float: none; display: inline =
!important;" class=3D"">&nbsp;&nbsp;errno is EWOULDBLOCK?</span><br =
style=3D"font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant: normal; font-weight: normal; letter-spacing: normal; =
line-height: normal; orphans: auto; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; widows: auto; word-spacing: =
0px; -webkit-text-stroke-width: 0px;" class=3D""><br style=3D"font-family:=
 Helvetica; font-size: 12px; font-style: normal; font-variant: normal; =
font-weight: normal; letter-spacing: normal; line-height: normal; =
orphans: auto; text-align: start; text-indent: 0px; text-transform: =
none; white-space: normal; widows: auto; word-spacing: 0px; =
-webkit-text-stroke-width: 0px;" class=3D""><span style=3D"font-family: =
Helvetica; font-size: 12px; font-style: normal; font-variant: normal; =
font-weight: normal; letter-spacing: normal; line-height: normal; =
orphans: auto; text-align: start; text-indent: 0px; text-transform: =
none; white-space: normal; widows: auto; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; float: none; display: inline =
!important;" class=3D"">&nbsp;&nbsp;If so do you have any idea why =
EWOULDBLOCK is being returned?</span><br style=3D"font-family: =
Helvetica; font-size: 12px; font-style: normal; font-variant: normal; =
font-weight: normal; letter-spacing: normal; line-height: normal; =
orphans: auto; text-align: start; text-indent: 0px; text-transform: =
none; white-space: normal; widows: auto; word-spacing: 0px; =
-webkit-text-stroke-width: 0px;" class=3D""><br style=3D"font-family: =
Helvetica; font-size: 12px; font-style: normal; font-variant: normal; =
font-weight: normal; letter-spacing: normal; line-height: normal; =
orphans: auto; text-align: start; text-indent: 0px; text-transform: =
none; white-space: normal; widows: auto; word-spacing: 0px; =
-webkit-text-stroke-width: 0px;" class=3D""><span style=3D"font-family: =
Helvetica; font-size: 12px; font-style: normal; font-variant: normal; =
font-weight: normal; letter-spacing: normal; line-height: normal; =
orphans: auto; text-align: start; text-indent: 0px; text-transform: =
none; white-space: normal; widows: auto; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; float: none; display: inline =
!important;" class=3D"">On Fri, Mar 06, 2015 at 10:34:00AM +0100, Egoitz =
Aurrekoetxea wrote:</span><br style=3D"font-family: Helvetica; =
font-size: 12px; font-style: normal; font-variant: normal; font-weight: =
normal; letter-spacing: normal; line-height: normal; orphans: auto; =
text-align: start; text-indent: 0px; text-transform: none; white-space: =
normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: =
0px;" class=3D""><blockquote type=3D"cite" style=3D"font-family: =
Helvetica; font-size: 12px; font-style: normal; font-variant: normal; =
font-weight: normal; letter-spacing: normal; line-height: normal; =
orphans: auto; text-align: start; text-indent: 0px; text-transform: =
none; white-space: normal; widows: auto; word-spacing: 0px; =
-webkit-text-stroke-width: 0px;" class=3D"">I had forgotten, the =
versions of Vanessa are :<span =
class=3D"Apple-converted-space">&nbsp;</span><br class=3D""><br =
class=3D"">libvanessa_adt-0.0.9<br class=3D"">libvanessa_logger-0.0.10<br =
class=3D"">libvanessa_socket-0.0.12<br class=3D""><br class=3D"">Perhaps =
I should check for this patch if errno is not EAGAIN and is EWOULDBLOCK =
for allowing Perdition parent process to fail if errno is =
EWOULDBLOCK??<span class=3D"Apple-converted-space">&nbsp;</span><br =
class=3D""><br class=3D"">At this stage I=E2=80=99m still trying to see =
if this patch solves the issue=E2=80=A6.<br class=3D""><br class=3D"">Best=
 regards,<br class=3D""><br class=3D""><br class=3D"">Egoitz =
Aurrekoetxea<br class=3D"">Departamento de sistemas<br class=3D"">944 =
209 470<br class=3D"">Parque Tecnol=C3=B3gico. Edificio 103<br =
class=3D"">48170 Zamudio (Bizkaia)<br class=3D""><a =
href=3D"mailto:[email protected]" class=3D"">[email protected]</a><span =
class=3D"Apple-converted-space">&nbsp;</span>&lt;<a =
href=3D"mailto:[email protected]" =
class=3D"">mailto:[email protected]</a>&gt;<br class=3D""><a =
href=3D"http://www.sarenet.es/" class=3D"">www.sarenet.es</a><span =
class=3D"Apple-converted-space">&nbsp;</span>&lt;<a =
href=3D"http://www.sarenet.es/" =
class=3D"">http://www.sarenet.es/</a>&gt;<br class=3D"">Antes de =
imprimir este correo electr=C3=B3nico piense si es necesario hacerlo.<br =
class=3D""><br class=3D""><blockquote type=3D"cite" class=3D"">El =
5/3/2015, a las 16:59, Egoitz Aurrekoetxea &lt;<a =
href=3D"mailto:[email protected]" class=3D"">[email protected]</a>&gt; =
escribi=C3=B3:<br class=3D""><br class=3D"">God afternoon,<br =
class=3D""><br class=3D"">I=E2=80=99m running some issues in a FreeBSD =
10.1 RELENG machine with Perdition 2.1. Once or twice a day the parent =
process of POP3 or IMAP4 service dies. After doing some<span =
class=3D"Apple-converted-space">&nbsp;</span><br class=3D"">investigations=
 have seen the problem comes when at vanessa_socket_server.c file at =
__vanessa_socket_server_accept() when it does the accept(). It seems =
accept() is failing<span class=3D"Apple-converted-space">&nbsp;</span><br =
class=3D"">with 53 (which continues) and later with 35 (talking about =
errno of course) with which exits with -1. So later is returning to =
__vanessa_socket_server_acceptv() and this one returns to<span =
class=3D"Apple-converted-space">&nbsp;</span><br =
class=3D"">vanessa_socket_server_acceptv due to :<span =
class=3D"Apple-converted-space">&nbsp;</span><br class=3D""><br =
class=3D"">if (child &lt; 0)<br class=3D""><span class=3D"Apple-tab-span" =
style=3D"white-space: pre;">	</span><span class=3D"Apple-tab-span" =
style=3D"white-space: pre;">	</span>return status;<br class=3D""><br =
class=3D"">At this function (the last one) does exist :<span =
class=3D"Apple-converted-space">&nbsp;</span><br class=3D""><br =
class=3D""><span class=3D"Apple-tab-span" style=3D"white-space: pre;">	=
</span><span class=3D"Apple-tab-span" style=3D"white-space: pre;">	=
</span><span class=3D"Apple-tab-span" style=3D"white-space: pre;">	=
</span>child =3D __vanessa_socket_server_acceptv(&amp;g, ufds[i].fd,<br =
class=3D""><span class=3D"Apple-tab-span" style=3D"white-space: pre;">	=
</span><span class=3D"Apple-tab-span" style=3D"white-space: pre;">	=
</span><span class=3D"Apple-tab-span" style=3D"white-space: pre;">	=
</span><span class=3D"Apple-tab-span" style=3D"white-space: pre;">	=
</span><span class=3D"Apple-tab-span" style=3D"white-space: pre;">	=
</span><span class=3D"Apple-tab-span" style=3D"white-space: pre;">	=
</span>listen_socketv,<span =
class=3D"Apple-converted-space">&nbsp;</span><br class=3D""><span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	</span><span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	</span><span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	</span><span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	</span><span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	</span><span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	=
</span>maximum_connections,<span =
class=3D"Apple-converted-space">&nbsp;</span><br class=3D""><span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	</span><span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	</span><span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	</span><span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	</span><span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	</span><span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	=
</span>return_from, return_to, flag);<br class=3D""><span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	</span><span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	</span><span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	=
</span>VANESSA_LOGGER_DEBUG("EGOITZ 1E");<br class=3D""><span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	</span><span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	</span><span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	</span>if (child =
&lt; 0) {<br class=3D""><span class=3D"Apple-tab-span" =
style=3D"white-space: pre;">	</span><span class=3D"Apple-tab-span" =
style=3D"white-space: pre;">	</span><span class=3D"Apple-tab-span" =
style=3D"white-space: pre;">	</span><span class=3D"Apple-tab-span" =
style=3D"white-space: pre;">	</span>VANESSA_LOGGER_DEBUG(<br =
class=3D""><span class=3D"Apple-tab-span" style=3D"white-space: pre;">	=
</span><span class=3D"Apple-tab-span" style=3D"white-space: pre;">	=
</span><span class=3D"Apple-tab-span" style=3D"white-space: pre;">	=
</span><span class=3D"Apple-tab-span" style=3D"white-space: pre;">	=
</span><span class=3D"Apple-tab-span" style=3D"white-space: pre;">	=
</span>"__vanessa_socket_server_acceptv");<br class=3D""><span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	</span><span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	</span><span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	</span><span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	</span>goto =
err;<br class=3D""><br class=3D""><br class=3D"">Perhaps this file be =
(please ignore the debugging literals) could be like this ?<br =
class=3D""><br class=3D"">--- vanessa_socket_server.c<span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	=
</span>2010-06-22 09:21:37.000000000 +0200<br class=3D"">+++ =
vanessa_socket_server.c<span class=3D"Apple-tab-span" =
style=3D"white-space: pre;">	</span>2015-03-05 16:50:25.000000000 =
+0100<br class=3D"">@@ -388,10 +388,20 @@<br class=3D""><span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	</span><span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	</span>addrlen =3D=
 sizeof(from);<br class=3D""><span class=3D"Apple-tab-span" =
style=3D"white-space: pre;">	</span><span class=3D"Apple-tab-span" =
style=3D"white-space: pre;">	</span>*g =3D accept(listen_socket, =
(struct sockaddr *) &amp;from, &amp;addrlen);<br class=3D""><span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	</span><span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	</span>if (*g =
&nbsp;&lt; 0) {<br class=3D"">+<span class=3D"Apple-tab-span" =
style=3D"white-space: pre;">	</span><span class=3D"Apple-tab-span" =
style=3D"white-space: pre;">	</span><span class=3D"Apple-tab-span" =
style=3D"white-space: pre;">	</span>char codigo[20];<br =
class=3D"">+<span class=3D"Apple-tab-span" style=3D"white-space: pre;">	=
</span><span class=3D"Apple-tab-span" style=3D"white-space: pre;">	=
</span><span class=3D"Apple-tab-span" style=3D"white-space: pre;">	=
</span>sprintf(codigo, "%d", errno);<br class=3D"">+<span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	</span><span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	</span><span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	=
</span>VANESSA_LOGGER_DEBUG("Falla accept con el error");<br =
class=3D"">+<span class=3D"Apple-tab-span" style=3D"white-space: pre;">	=
</span><span class=3D"Apple-tab-span" style=3D"white-space: pre;">	=
</span><span class=3D"Apple-tab-span" style=3D"white-space: pre;">	=
</span>VANESSA_LOGGER_DEBUG("=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D");<br class=3D"">+<span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	</span><span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	</span><span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	=
</span>VANESSA_LOGGER_DEBUG(codigo);<br class=3D"">+<span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	</span><span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	</span><span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	=
</span>VANESSA_LOGGER_DEBUG("=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D");<span class=3D"Apple-tab-span" =
style=3D"white-space: pre;">	</span><span class=3D"Apple-tab-span" =
style=3D"white-space: pre;">	</span><span class=3D"Apple-tab-span" =
style=3D"white-space: pre;">	</span><br class=3D"">+<span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	</span><span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	</span><span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	</span>if (errno =
=3D=3D EAGAIN)<span class=3D"Apple-converted-space">&nbsp;</span><br =
class=3D"">+<span class=3D"Apple-tab-span" style=3D"white-space: pre;">	=
</span><span class=3D"Apple-tab-span" style=3D"white-space: pre;">	=
</span><span class=3D"Apple-tab-span" style=3D"white-space: pre;">	=
</span>{<br class=3D"">+<span class=3D"Apple-tab-span" =
style=3D"white-space: pre;">	</span><span class=3D"Apple-tab-span" =
style=3D"white-space: pre;">	</span><span class=3D"Apple-tab-span" =
style=3D"white-space: pre;">	</span><span class=3D"Apple-tab-span" =
style=3D"white-space: pre;">	</span>VANESSA_LOGGER_DEBUG("TENEMOS UN =
EAGAIN");<br class=3D"">+<span class=3D"Apple-tab-span" =
style=3D"white-space: pre;">	</span><span class=3D"Apple-tab-span" =
style=3D"white-space: pre;">	</span><span class=3D"Apple-tab-span" =
style=3D"white-space: pre;">	</span>}<br class=3D""><span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	</span><span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	</span><span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	</span>if(errno =
=3D=3D EINTR || errno =3D=3D ECONNABORTED) {<br class=3D""><span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	</span><span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	</span><span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	</span><span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	</span>continue; =
/* Ignore EINTR &nbsp;and ECONNABORTED */<br class=3D""><span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	</span><span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	</span><span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	</span>}<br =
class=3D"">-<span class=3D"Apple-tab-span" style=3D"white-space: pre;">	=
</span><span class=3D"Apple-tab-span" style=3D"white-space: pre;">	=
</span><span class=3D"Apple-tab-span" style=3D"white-space: pre;">	=
</span>if (errno =3D=3D EAGAIN || errno =3D=3D EWOULDBLOCK)<br =
class=3D"">+<span class=3D"Apple-tab-span" style=3D"white-space: pre;">	=
</span><span class=3D"Apple-tab-span" style=3D"white-space: pre;">	=
</span><span class=3D"Apple-tab-span" style=3D"white-space: pre;">	=
</span>if (errno =3D=3D EWOULDBLOCK || errno =3D=3D EAGAIN)<br =
class=3D""><span class=3D"Apple-tab-span" style=3D"white-space: pre;">	=
</span><span class=3D"Apple-tab-span" style=3D"white-space: pre;">	=
</span><span class=3D"Apple-tab-span" style=3D"white-space: pre;">	=
</span><span class=3D"Apple-tab-span" style=3D"white-space: pre;">	=
</span>return -1; /* Don't log EAGAIN or EWOULDBLOCK */<br =
class=3D""><span class=3D"Apple-tab-span" style=3D"white-space: pre;">	=
</span><span class=3D"Apple-tab-span" style=3D"white-space: pre;">	=
</span><span class=3D"Apple-tab-span" style=3D"white-space: pre;">	=
</span>VANESSA_LOGGER_DEBUG_ERRNO("accept");<br class=3D""><span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	</span><span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	</span><span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	=
</span>return(-1);<br class=3D"">@@ -551,7 +561,10 @@<br class=3D""><span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	</span><span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	</span><span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	</span><span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	</span><span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	</span><span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	</span><span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	</span>flag);<br =
class=3D""><span class=3D"Apple-tab-span" style=3D"white-space: pre;">	=
</span>if (child &lt; 0) {<br class=3D""><span class=3D"Apple-tab-span" =
style=3D"white-space: pre;">	</span><span class=3D"Apple-tab-span" =
style=3D"white-space: pre;">	</span>if (errno =3D=3D EAGAIN || errno =
=3D=3D EWOULDBLOCK)<br class=3D"">+<span class=3D"Apple-tab-span" =
style=3D"white-space: pre;">	</span><span class=3D"Apple-tab-span" =
style=3D"white-space: pre;">	</span>{<br class=3D""><span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	</span><span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	</span><span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	</span>status =3D =
0;<br class=3D"">+<span class=3D"Apple-tab-span" style=3D"white-space: =
pre;">	</span><span class=3D"Apple-tab-span" style=3D"white-space: =
pre;">	</span><span class=3D"Apple-tab-span" style=3D"white-space: =
pre;">	</span>VANESSA_LOGGER_DEBUG("EGOITZ STATUS -----&gt; 0");<br =
class=3D"">+<span class=3D"Apple-tab-span" style=3D"white-space: pre;">	=
</span><span class=3D"Apple-tab-span" style=3D"white-space: pre;">	=
</span>}<br class=3D""><span class=3D"Apple-tab-span" =
style=3D"white-space: pre;">	</span><span class=3D"Apple-tab-span" =
style=3D"white-space: pre;">	</span>else {<br class=3D""><span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	</span><span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	</span><span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	=
</span>VANESSA_LOGGER_DEBUG("__vanessa_socket_server_accept");<br =
class=3D""><span class=3D"Apple-tab-span" style=3D"white-space: pre;">	=
</span><span class=3D"Apple-tab-span" style=3D"white-space: pre;">	=
</span><span class=3D"Apple-tab-span" style=3D"white-space: pre;">	=
</span>status =3D -1;<br class=3D"">@@ -561,6 +574,7 @@<br =
class=3D""><span class=3D"Apple-tab-span" style=3D"white-space: pre;">	=
</span>if (!(opt &amp; O_NONBLOCK) &amp;&amp; child &amp;&amp;<br =
class=3D""><span class=3D"Apple-tab-span" style=3D"white-space: pre;">	=
</span><span =
class=3D"Apple-converted-space">&nbsp;</span>&nbsp;&nbsp;&nbsp;fcntl(liste=
n_socket, F_SETFL, opt) &lt; 0) {<br class=3D""><span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	</span><span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	=
</span>VANESSA_LOGGER_DEBUG_ERRNO("fcntl: F_SETFL 2");<br =
class=3D"">+<span class=3D"Apple-tab-span" style=3D"white-space: pre;">	=
</span><span class=3D"Apple-tab-span" style=3D"white-space: pre;">	=
</span>VANESSA_LOGGER_DEBUG("ERROR 0000001 AAAAA");<br class=3D""><span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	</span><span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	</span>status =3D =
-1;<br class=3D""><span class=3D"Apple-tab-span" style=3D"white-space: =
pre;">	</span>}<br class=3D""><br class=3D"">@@ -570,6 +584,7 @@<br =
class=3D""><span class=3D"Apple-tab-span" style=3D"white-space: pre;">	=
</span>if (!(opt &amp; O_NONBLOCK) &amp;&amp; (flag &amp; =
VANESSA_SOCKET_NO_FORK || !child) &amp;&amp;<br class=3D""><span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	</span><span =
class=3D"Apple-converted-space">&nbsp;</span>&nbsp;&nbsp;&nbsp;fcntl(*g, =
F_SETFL, opt) &lt; 0) {<br class=3D""><span class=3D"Apple-tab-span" =
style=3D"white-space: pre;">	</span><span class=3D"Apple-tab-span" =
style=3D"white-space: pre;">	=
</span>VANESSA_LOGGER_DEBUG_ERRNO("fcntl: F_SETFL 3");<br =
class=3D"">+<span class=3D"Apple-tab-span" style=3D"white-space: pre;">	=
</span><span class=3D"Apple-tab-span" style=3D"white-space: pre;">	=
</span>VANESSA_LOGGER_DEBUG("ERROR 0000002 BBBB");<br class=3D""><span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	</span><span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	</span>status =3D =
-1;<br class=3D""><span class=3D"Apple-tab-span" style=3D"white-space: =
pre;">	</span>}<br class=3D""><span class=3D"Apple-tab-span" =
style=3D"white-space: pre;">	</span><br class=3D"">@@ -632,6 +647,10 =
@@<br class=3D""><span class=3D"Apple-tab-span" style=3D"white-space: =
pre;">	</span><span class=3D"Apple-tab-span" style=3D"white-space: =
pre;">	</span><span class=3D"Apple-tab-span" style=3D"white-space: =
pre;">	</span><span class=3D"Apple-tab-span" style=3D"white-space: =
pre;">	</span><span class=3D"Apple-tab-span" style=3D"white-space: =
pre;">	</span>"__vanessa_socket_server_acceptv");<br class=3D""><span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	</span><span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	</span><span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	</span><span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	</span>goto =
err;<br class=3D""><span class=3D"Apple-tab-span" style=3D"white-space: =
pre;">	</span><span class=3D"Apple-tab-span" style=3D"white-space: =
pre;">	</span><span class=3D"Apple-tab-span" style=3D"white-space: =
pre;">	</span>}<br class=3D"">+<span class=3D"Apple-tab-span" =
style=3D"white-space: pre;">	</span><span class=3D"Apple-tab-span" =
style=3D"white-space: pre;">	</span><span class=3D"Apple-tab-span" =
style=3D"white-space: pre;">	</span>if (!child &amp;&amp; g &lt; =
0)<br class=3D"">+<span class=3D"Apple-tab-span" style=3D"white-space: =
pre;">	</span><span class=3D"Apple-tab-span" style=3D"white-space: =
pre;">	</span><span class=3D"Apple-tab-span" style=3D"white-space: =
pre;">	</span>{<br class=3D"">+<span class=3D"Apple-tab-span" =
style=3D"white-space: pre;">	</span><span class=3D"Apple-tab-span" =
style=3D"white-space: pre;">	</span><span class=3D"Apple-tab-span" =
style=3D"white-space: pre;">	</span><span class=3D"Apple-tab-span" =
style=3D"white-space: pre;">	</span>break;<br class=3D"">+<span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	</span><span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	</span><span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	</span>}<span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	</span><br =
class=3D""><span class=3D"Apple-tab-span" style=3D"white-space: pre;">	=
</span><span class=3D"Apple-tab-span" style=3D"white-space: pre;">	=
</span><span class=3D"Apple-tab-span" style=3D"white-space: pre;">	=
</span>if (flag &amp; VANESSA_SOCKET_NO_FORK || !child) {<br =
class=3D""><span class=3D"Apple-tab-span" style=3D"white-space: pre;">	=
</span><span class=3D"Apple-tab-span" style=3D"white-space: pre;">	=
</span><span class=3D"Apple-tab-span" style=3D"white-space: pre;">	=
</span><span class=3D"Apple-tab-span" style=3D"white-space: pre;">	=
</span>status =3D g;<br class=3D""><span class=3D"Apple-tab-span" =
style=3D"white-space: pre;">	</span><span class=3D"Apple-tab-span" =
style=3D"white-space: pre;">	</span><span class=3D"Apple-tab-span" =
style=3D"white-space: pre;">	</span><span class=3D"Apple-tab-span" =
style=3D"white-space: pre;">	</span>goto out;<br class=3D""><br =
class=3D"">Mainly talking about :<span =
class=3D"Apple-converted-space">&nbsp;</span><br class=3D""><br =
class=3D"">+<span class=3D"Apple-tab-span" style=3D"white-space: pre;">	=
</span><span class=3D"Apple-tab-span" style=3D"white-space: pre;">	=
</span><span class=3D"Apple-tab-span" style=3D"white-space: pre;">	=
</span>if (!child &amp;&amp; g &lt; 0)<br class=3D"">+<span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	</span><span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	</span><span =
class=3D"Apple-tab-span" style=3D"white-space: pre;">	</span>{<br =
class=3D"">+<span class=3D"Apple-tab-span" style=3D"white-space: pre;">	=
</span><span class=3D"Apple-tab-span" style=3D"white-space: pre;">	=
</span><span class=3D"Apple-tab-span" style=3D"white-space: pre;">	=
</span><span class=3D"Apple-tab-span" style=3D"white-space: pre;">	=
</span>break;<br class=3D"">+<span class=3D"Apple-tab-span" =
style=3D"white-space: pre;">	</span><span class=3D"Apple-tab-span" =
style=3D"white-space: pre;">	</span><span class=3D"Apple-tab-span" =
style=3D"white-space: pre;">	</span>}<span class=3D"Apple-tab-span" =
style=3D"white-space: pre;">	</span><br class=3D""><br class=3D"">That =
way polling again socket fds instead of exiting and stop servicing the =
affected protocol in each case (POP3 or IMAP4)??<br class=3D""><br =
class=3D"">Have done this last modification without having the luck of =
having an abnormal termination again, in order to check if this =
works=E2=80=A6<br class=3D""><br class=3D"">Has anyone have noticed =
about something similar?.<br class=3D""><br class=3D"">Thank you so =
much,<br class=3D"">Regards,<span =
class=3D"Apple-converted-space">&nbsp;</span><br class=3D""><br =
class=3D""><br class=3D"">Egoitz Aurrekoetxea<br class=3D"">Departamento =
de sistemas<br class=3D"">944 209 470<br class=3D"">Parque Tecnol=C3=B3gic=
o. Edificio 103<br class=3D"">48170 Zamudio (Bizkaia)<br class=3D""><a =
href=3D"mailto:[email protected]" class=3D"">[email protected]</a><span =
class=3D"Apple-converted-space">&nbsp;</span>&lt;<a =
href=3D"mailto:[email protected]" =
class=3D"">mailto:[email protected]</a>&gt;<br class=3D""><a =
href=3D"http://www.sarenet.es/" class=3D"">www.sarenet.es</a><span =
class=3D"Apple-converted-space">&nbsp;</span>&lt;<a =
href=3D"http://www.sarenet.es/" =
class=3D"">http://www.sarenet.es/</a>&gt;<br class=3D"">Antes de =
imprimir este correo electr=C3=B3nico piense si es necesario hacerlo.<br =
class=3D""><br =
class=3D"">______________________________________________<br =
class=3D"">Perdition-users mailing list<br class=3D""><a =
href=3D"mailto:[email protected]" =
class=3D"">[email protected]</a><br class=3D""><a =
href=3D"http://lists.vergenet.net/listinfo/perdition-users" =
class=3D"">http://lists.vergenet.net/listinfo/perdition-users</a><br =
class=3D""></blockquote><br class=3D""></blockquote><br =
style=3D"font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant: normal; font-weight: normal; letter-spacing: normal; =
line-height: normal; orphans: auto; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; widows: auto; word-spacing: =
0px; -webkit-text-stroke-width: 0px;" class=3D""><blockquote type=3D"cite"=
 style=3D"font-family: Helvetica; font-size: 12px; font-style: normal; =
font-variant: normal; font-weight: normal; letter-spacing: normal; =
line-height: normal; orphans: auto; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; widows: auto; word-spacing: =
0px; -webkit-text-stroke-width: 0px;" =
class=3D"">______________________________________________<br =
class=3D"">Perdition-users mailing list<br class=3D""><a =
href=3D"mailto:[email protected]" =
class=3D"">[email protected]</a><br class=3D""><a =
href=3D"http://lists.vergenet.net/listinfo/perdition-users" =
class=3D"">http://lists.vergenet.net/listinfo/perdition-users</a></blockqu=
ote></div></blockquote></div><br =
class=3D""></div></div></div></blockquote></div><br =
class=3D""></div></body></html>=

--Apple-Mail=_4AB47D41-B092-4783-BF03-55068F5582A7--

--===============1621219430==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

______________________________________________
Perdition-users mailing list
[email protected]
http://lists.vergenet.net/listinfo/perdition-users

--===============1621219430==--