Re: Issues with Perdition 2.1 in FreeBSD

Egoitz Aurrekoetxea <[email protected]> Fri, 6 Mar 2015 13:46:52 +0100
Newsgroups gmane.mail.perdition.user
Message-ID <[email protected]>
--===============1006616313==
Content-Type: multipart/alternative; boundary="Apple-Mail=_4594AC23-EF7B-4A65-90EB-A73209D7F93D"


--Apple-Mail=_4594AC23-EF7B-4A65-90EB-A73209D7F93D
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain;
	charset=utf-8

Good morning,

Thanks a lot for your help.

If I=E2=80=99m taking a look to errno.h :=20

cat /usr/include/errno.h | grep EAGA
					/* 11 was EAGAIN */
#define	EAGAIN		35		/* Resource temporarily =
unavailable */
#define	EWOULDBLOCK	EAGAIN		/* Operation would block */

So, both are the same perhaps in FreeBSD??

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

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.

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

Thank you so much,
Best regards,


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 12:45, Simon Horman <[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]
>>> http://lists.vergenet.net/listinfo/perdition-users
>>=20
>=20
>> ______________________________________________
>> Perdition-users mailing list
>> [email protected]
>> http://lists.vergenet.net/listinfo/perdition-users


--Apple-Mail=_4594AC23-EF7B-4A65-90EB-A73209D7F93D
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"">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><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"">http://lists.vergenet.net/listinfo/perdition-users<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"">http://lists.vergenet.net/listinfo/perdition-users</blockquote>=
</div></blockquote></div><br class=3D""></div></body></html>=

--Apple-Mail=_4594AC23-EF7B-4A65-90EB-A73209D7F93D--

--===============1006616313==
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

--===============1006616313==--