Created attachment 18927 [details] patch to fix issues (version 1 - creates uniquely named mem keytab) related to bug #15979 (same customer) rpc_worker_new_client ->dcesrv_bind -> gensec_update_send -> gensec_spnego_update_send -> gse_init_server -> gensec_spnego_update_pre -> gensec_spnego_server_negTokenInit_start -> gensec_spnego_server_negTokenInit_step -> gensec_start_mech -> gensec_gse_server_start -> gse_krb5_get_server_keytab -> fill_mem_keytab_from_system_keytab gse_krb5_get_server_keytab creates a new memory keytab and populates it (however if there is an existing client then it gets back an existing memory keytab) In a system with long lived (or permanent/semi permanent) clients then this can continue grow the memory keytab resulting in both memory exhaustion and additionally significant performance degradation as the population of the memory keytab becomes slower and slower as its size grows. patch (to be attached) creates a new memory cache based on a dynamic memory name so we don't reuse an existing memory keytab. Alternative approach would be to prevent adding existing entries when populating the memory keytab (will attach a patch for this approach as well)
Created attachment 18928 [details] Alternative version of the patch to fix this issue
This bug was referenced in samba master: c28a86c45d9d9673de18f9c29ea80dff12c9e7dd
Created attachment 18933 [details] patch for 4-22-test through to v4-24-test
This bug was referenced in samba v4-22-test: 178c213067500c7ae27819f0f83d9fcfd5a16813
This bug was referenced in samba v4-22-stable (Release samba-4.22.9): 178c213067500c7ae27819f0f83d9fcfd5a16813