• Peter Eisentraut's avatar
    Improve LDAP cleanup code in error paths. · 1feff99f
    Peter Eisentraut authored
    After calling ldap_unbind_s() we probably shouldn't try to use the LDAP
    connection again to call ldap_get_option(), even if it failed.  The OpenLDAP
    man page for ldap_unbind[_s] says "Once it is called, the connection to the
    LDAP server is closed, and the ld structure is invalid."  Otherwise, as a
    general rule we should probably call ldap_unbind() before returning in all
    paths to avoid leaking resources.  It is unlikely there is any practical
    leak problem since failure to authenticate currently results in the backend
    exiting soon afterwards.
    
    Author: Thomas Munro
    Reviewed-By: Alvaro Herrera, Peter Eisentraut
    Discussion: https://postgr.es/m/20170914141205.eup4kxzlkagtmfac%40alvherre.pgsql
    1feff99f
auth.c 85.2 KB