winbindd_cm.c leak in failed connection cache

Dan Coppock danno at stbernard.com
Mon Jul 29 11:01:01 GMT 2002


(environment:  3.0alpha17, FreeBSD 4.4)

I'm seeing a slow winbind leak when the dc for a trusted domain is
permanently unreachable (it's down, or administratively unavailable).  It
looks like in winbindd_cm.c, when the controller name cannot be looked up,
or when the connection really fails, cm_open_connection() calls
add_failed_connection_entry(), blindly adding to the failed connection
cache.  I suspect there should be check to see if it's already in the failed
connection cache, and only update the lookup_time when present.

Also, in the case where the controller name lookup fails, is controller even
defined for inclusion in the "struct failed_connection_cache"?  Isn't the
controller name the very piece of information that wasn't obtainable, and
therefore not useful for caching here?  I'm not sure on this part.

I notice cvs log messages for winbindd_cm.c that indicate a possible rework
of the connection management is likely, but I did want to point out the
situtation (for us, anyway) where winbindd grows and grows.  What is the
correct fix for this?  Perform a cache search in
add_failed_connection_entry(), prior to creating a new entry?

Thanks,

Dan Coppock
St. Bernard Software




More information about the samba-technical mailing list