]> git.ipfire.org Git - thirdparty/samba.git/commitdiff
lib: Use talloc_asprintf_addbuf() in print_socket_options()
authorVolker Lendecke <vl@samba.org>
Mon, 28 Nov 2022 10:01:16 +0000 (11:01 +0100)
committerJeremy Allison <jra@samba.org>
Wed, 14 Dec 2022 04:32:34 +0000 (04:32 +0000)
With the proper NULL checks we don't need the stackframe,
use a passed in context instead.

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>
lib/util/util_net.c

index a0032cca22fe0bdc9c0b19e3ca17d9e114d0224a..8a34855b8faff4a9e8df49d35c7fd2e6105f3b7b 100644 (file)
@@ -977,9 +977,8 @@ static const smb_socket_option socket_options[] = {
  Print socket options.
 ****************************************************************************/
 
-static void print_socket_options(int s)
+static void print_socket_options(TALLOC_CTX *ctx, int s)
 {
-       TALLOC_CTX *frame = NULL;
        const smb_socket_option *p = &socket_options[0];
        char *str = NULL;
 
@@ -987,9 +986,7 @@ static void print_socket_options(int s)
                return;
        }
 
-       frame = talloc_stackframe();
-
-       str = talloc_strdup(frame, "");
+       str = talloc_strdup(ctx, "");
        if (str == NULL) {
                DBG_WARNING("talloc failed\n");
                goto done;
@@ -1006,21 +1003,17 @@ static void print_socket_options(int s)
                        continue;
                }
 
-               str = talloc_asprintf_append_buffer(
-                       str,
+               talloc_asprintf_addbuf(
+                       &str,
                        "%s%s=%d",
                        str[0] != '\0' ? ", " : "",
                        p->name,
                        val);
-               if (str == NULL) {
-                       DBG_WARNING("talloc_asprintf_append_buffer failed\n");
-                       goto done;
-               }
        }
 
        DEBUG(5, ("socket options: %s\n", str));
 done:
-       TALLOC_FREE(frame);
+       TALLOC_FREE(str);
  }
 
 /****************************************************************************
@@ -1084,8 +1077,8 @@ void set_socket_options(int fd, const char *options)
                }
        }
 
+       print_socket_options(ctx, fd);
        TALLOC_FREE(ctx);
-       print_socket_options(fd);
 }
 
 /*