Please use patch 3.0.5p1

[email protected] wrote:
> Forum: Cfengine Help
> Subject: Strange Deadlock noticed
> Author: daveseff
> Link to topic: https://cfengine.com/forum/read.php?3,17789,17789#msg-17789
> 
> I have 3.0.5 running on RHEL5. 
> 
> I added a host that happens ho have multiple interfaces, eth0 
> (10.1.0.1/24)and eth1 (169.2.0.1/24). IP's and hostnames changed to protect 
> the guilty...  
> 
> What I am experiencing is that the host will connect and cf-serverd will see 
> a connection from the host but the host will identify itself as it's other 
> IP. Once this happens cf-serverd will go into deadlock and no other host can 
> then connect. 
> 
> cf3 New connection...(from 10.1.0.1/4)
> cf3 Spawning new thread...
> cf3  -> No new promises found
> cf3  -> Waiting at incoming select...
> cf3 Received:  on socket 4
> cf3 Connecting host identifies itself as 169.2.0.1 host1.foo.com root 0
> cf3 (ipstring=[169.2.0.1],fqname=,username=,socket=[10.1.0.1])
> cf3 IP address mismatch between client's assertion (169.2.0.1) and socket 
> (10.1.0.1) - untrustworthy connection
> cf3 ID not verified
> cf3 From (host=?,user=?,ip=10.1.0.1)
> cf3 REFUSAL of request from connecting host: (CAUTH 169.2.0.1 host1.foo.com 
> root 0)
> cf3  -> Accepting a connection
> cf3 Accepting connection from "10.1.0.1"
> ......cf-serverd hangs here............
> 
> 
> I've pinpointed the point where cf-serverd hangs in server.c
> 
> struct cfd_connection *NewConn(int sd)  /* construct */
> 
> { struct cfd_connection *conn;
> 
>         ThreadLock(cft_system);   <<<------- HANG HERE....NEVER PASSES THIS 
> POINT 
> 
>         conn = (struct cfd_connection *) malloc(sizeof(struct 
> cfd_connection));
> 
>         ThreadUnlock(cft_system);
> 
>         if (conn == NULL)
>         {
>                 CfOut(cf_error,"malloc","Unable to allocate conn");
>                 HandleSignals(SIGTERM);
>         }
> 
>         conn->sd_reply = sd;
>         conn->id_verified = false;
>         conn->rsa_auth = false;
>         conn->trust = false;
>         conn->hostname[0] = '\0';
>         conn->ipaddr[0] = '\0';
>         conn->username[0] = '\0';
>         conn->session_key = NULL;
>         conn->encryption_type = 'c';
> 
>         Debug("*** New socket [%d]\n",sd);
> 
>         return conn;
> }
> 
> _______________________________________________
> Help-cfengine mailing list
> [email protected]
> https://cfengine.org/mailman/listinfo/help-cfengine

-- 
Mark Burgess

-------------------------------------------------
Professor of Network and System Administration
Oslo University College, Norway

Personal Web: http://www.iu.hio.no/~mark
Office Telf : +47 22453272
-------------------------------------------------
_______________________________________________
Help-cfengine mailing list
[email protected]
https://cfengine.org/mailman/listinfo/help-cfengine

Reply via email to