Originator: Corene Casper Organization: Dell EMC Confidential: no Synopsis: memory leak via krb5_rc_none_close Severity: non-critical Priority: low Category: krb5-libs Class: sw-bug Release: 1.14 Environment: system: Isilon OneFS v8.1.0 (freebsd-11.0 based) machine: amd64 Description: When using the krb5_rc_none_ops cache type, a k5_mutex_t structure is being leaked on every close. We've run into the case where our application has been up for long enough that it finally ran the system out of memory due to this leak. How-To-Repeat: Configure your system so it uses "none" rc cache type and then exercise that code path repeatedly and observe process slowly grow in size. (In our case, this was in our SMB server code. With Kerberos configured, each SESSION_SETUP user authentication resulted in a leak of one k5_mutex_t). Fix: one-line patch to krb5_rc_none_close, to add the k5_mutex_destroy() call: *** isilon/fsp/krb5/src/lib/krb5/rcache/rc_none.c 2019-02-13 15:22:42.251051611 -0800 --- /tmp/NDbjMy_rc_none.c 2019-02-13 15:23:46.331514547 -0800 *************** *** 50,56 **** static krb5_error_code KRB5_CALLCONV krb5_rc_none_close(krb5_context ctx, krb5_rcache rc) { - k5_mutex_destroy(&rc->lock); free (rc); return 0; } --- 50,55 ----