@@ -321,6 +321,8 @@ class TLdapAuthProvider : public NActors::TActorBootstrapped<TLdapAuthProvider>
321
321
response.Status = NKikimrLdap::ErrorToStatus (result);
322
322
response.Error = {.Message = ERROR_MESSAGE, .LogMessage = logErrorMessage, .Retryable = NKikimrLdap::IsRetryableError (result)};
323
323
LDAP_LOG_D (logErrorMessage);
324
+ NKikimrLdap::MsgFree (searchMessage);
325
+ searchMessage = nullptr ;
324
326
return response;
325
327
}
326
328
const int countEntries = NKikimrLdap::CountEntries (request.Ld , searchMessage);
@@ -336,6 +338,7 @@ class TLdapAuthProvider : public NActors::TActorBootstrapped<TLdapAuthProvider>
336
338
response.Error = {.Message = ERROR_MESSAGE, .LogMessage = logErrorMessage, .Retryable = false };
337
339
response.Status = TEvLdapAuthProvider::EStatus::UNAUTHORIZED;
338
340
NKikimrLdap::MsgFree (searchMessage);
341
+ searchMessage = nullptr ;
339
342
LDAP_LOG_D (logErrorMessage);
340
343
return response;
341
344
}
@@ -357,11 +360,14 @@ class TLdapAuthProvider : public NActors::TActorBootstrapped<TLdapAuthProvider>
357
360
LDAPMessage* searchMessage = nullptr ;
358
361
int result = NKikimrLdap::Search (ld, Settings.GetBaseDn (), NKikimrLdap::EScope::SUBTREE, filter, NKikimrLdap::noAttributes, 0 , &searchMessage);
359
362
if (!NKikimrLdap::IsSuccess (result)) {
363
+ NKikimrLdap::MsgFree (searchMessage);
364
+ searchMessage = nullptr ;
360
365
return {};
361
366
}
362
367
const int countEntries = NKikimrLdap::CountEntries (ld, searchMessage);
363
368
if (countEntries == 0 ) {
364
369
NKikimrLdap::MsgFree (searchMessage);
370
+ searchMessage = nullptr ;
365
371
return {};
366
372
}
367
373
std::vector<TString> groups;
@@ -373,6 +379,7 @@ class TLdapAuthProvider : public NActors::TActorBootstrapped<TLdapAuthProvider>
373
379
dn = nullptr ;
374
380
}
375
381
NKikimrLdap::MsgFree (searchMessage);
382
+ searchMessage = nullptr ;
376
383
return groups;
377
384
}
378
385
@@ -403,10 +410,13 @@ class TLdapAuthProvider : public NActors::TActorBootstrapped<TLdapAuthProvider>
403
410
LDAPMessage* searchMessage = nullptr ;
404
411
int result = NKikimrLdap::Search (ld, Settings.GetBaseDn (), NKikimrLdap::EScope::SUBTREE, filter, RequestedAttributes, 0 , &searchMessage);
405
412
if (!NKikimrLdap::IsSuccess (result)) {
413
+ NKikimrLdap::MsgFree (searchMessage);
414
+ searchMessage = nullptr ;
406
415
return ;
407
416
}
408
417
if (NKikimrLdap::CountEntries (ld, searchMessage) == 0 ) {
409
418
NKikimrLdap::MsgFree (searchMessage);
419
+ searchMessage = nullptr ;
410
420
return ;
411
421
}
412
422
for (LDAPMessage* groupEntry = NKikimrLdap::FirstEntry (ld, searchMessage); groupEntry != nullptr ; groupEntry = NKikimrLdap::NextEntry (ld, groupEntry)) {
@@ -429,6 +439,7 @@ class TLdapAuthProvider : public NActors::TActorBootstrapped<TLdapAuthProvider>
429
439
}
430
440
}
431
441
NKikimrLdap::MsgFree (searchMessage);
442
+ searchMessage = nullptr ;
432
443
}
433
444
}
434
445
0 commit comments