File 0001-INI-use-proper-deallocators.patch of Package sssd

From ade61ef1bac6aa2f6d91a25b39417a93375ed3ed Mon Sep 17 00:00:00 2001
From: Alexey Tikhonov <atikhono@redhat.com>
Date: Wed, 28 Jan 2026 18:57:59 +0100
Subject: [PATCH] INI: use proper deallocators
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

This also allows to avoid inclusion of 'ini_config.h'

Reviewed-by: Tomáš Halman <thalman@redhat.com>
---
 src/util/sss_ini.c | 21 ++++++++++-----------
 1 file changed, 10 insertions(+), 11 deletions(-)

diff --git a/src/util/sss_ini.c b/src/util/sss_ini.c
index bcd65772e..f20a8148f 100644
--- a/src/util/sss_ini.c
+++ b/src/util/sss_ini.c
@@ -29,7 +29,6 @@
 #include <sys/stat.h>
 #include <talloc.h>
 #include <ini_configobj.h>
-#include <ini_config.h>
 
 #include "config.h"
 #include "util/util.h"
@@ -360,7 +359,7 @@ int sss_confdb_create_ldif(TALLOC_CTX *mem_ctx,
                              sec_dn, rdn);
         if (!dn) {
             ret = ENOMEM;
-            free_section_list(sections);
+            ini_free_section_list(sections);
             goto error;
         }
         dn_size = strlen(dn);
@@ -369,7 +368,7 @@ int sss_confdb_create_ldif(TALLOC_CTX *mem_ctx,
         attrs = ini_get_attribute_list(self->sssd_config, sections[i],
                                        &attr_count, &ret);
         if (ret != EOK) {
-            free_section_list(sections);
+            ini_free_section_list(sections);
             goto error;
         }
 
@@ -400,8 +399,8 @@ int sss_confdb_create_ldif(TALLOC_CTX *mem_ctx,
                                     dn_size+attr_len+1);
             if (!tmp_dn) {
                 ret = ENOMEM;
-                free_attribute_list(attrs);
-                free_section_list(sections);
+                ini_free_attribute_list(attrs);
+                ini_free_section_list(sections);
                 goto error;
             }
             dn = tmp_dn;
@@ -414,8 +413,8 @@ int sss_confdb_create_ldif(TALLOC_CTX *mem_ctx,
                                 dn_size+1);
         if (!tmp_dn) {
             ret = ENOMEM;
-            free_attribute_list(attrs);
-            free_section_list(sections);
+            ini_free_attribute_list(attrs);
+            ini_free_section_list(sections);
             goto error;
         }
         dn = tmp_dn;
@@ -428,15 +427,15 @@ int sss_confdb_create_ldif(TALLOC_CTX *mem_ctx,
                                   ldif_len+dn_size+1);
         if (!tmp_ldif) {
             ret = ENOMEM;
-            free_attribute_list(attrs);
-            free_section_list(sections);
+            ini_free_attribute_list(attrs);
+            ini_free_section_list(sections);
             goto error;
         }
         ldif = tmp_ldif;
         memcpy(ldif+ldif_len, dn, dn_size);
         ldif_len += dn_size;
 
-        free_attribute_list(attrs);
+        ini_free_attribute_list(attrs);
         talloc_free(dn);
     }
 
@@ -446,7 +445,7 @@ int sss_confdb_create_ldif(TALLOC_CTX *mem_ctx,
     }
     ldif[ldif_len] = '\0';
 
-    free_section_list(sections);
+    ini_free_section_list(sections);
 
     *config_ldif = (const char *)ldif;
     talloc_free(tmp_ctx);
-- 
2.53.0

openSUSE Build Service is sponsored by