Fix leash crash found in some build environments When freeing a credentials cache name obtained from krb5_cc_get_full_name(), the code was using plain free() instead of the matching krb5_free_string(). If these routines are picked from different modules at runtime, the mismatch will cause a crash in free(), so change to using the matched deallocation function. In order to use it in leash, it must be declared in Lglobals.h and the function pointer symbol defined in Leash.cpp. (cherry picked from commit ebeb1e359fa10ea710d467ca3756ababd1276fa6) https://github.com/krb5/krb5/commit/a8d215662ab906a1edd5287b4b8afa941f540d36 Author: Ben Kaduk Committer: Tom Yu Commit: a8d215662ab906a1edd5287b4b8afa941f540d36 Branch: krb5-1.13 src/windows/leash/KrbListTickets.cpp | 2 +- src/windows/leash/Leash.cpp | 2 ++ src/windows/leash/Lglobals.h | 1 + 3 files changed, 4 insertions(+), 1 deletions(-)