]> git.ipfire.org Git - thirdparty/openldap.git/commitdiff
ITS#10155 manage option values more carefully
authorOndřej Kuzník <ondra@mistotebe.net>
Tue, 22 Oct 2024 12:59:20 +0000 (13:59 +0100)
committerQuanah Gibson-Mount <quanah@openldap.org>
Mon, 28 Oct 2024 17:39:53 +0000 (17:39 +0000)
clients/tools/ldapsearch.c

index 41595e210174472d05d2565d01d457770b577066..3755a937d2fb2fe7e4b136f696264a71b60c5195 100644 (file)
@@ -894,7 +894,7 @@ handle_private_option( int i )
                break;
        case 'F':       /* uri prefix */
                if( urlpre ) free( urlpre );
-               urlpre = optarg;
+               urlpre = strdup( optarg );
                break;
        case 'l':       /* time limit */
                if ( strcasecmp( optarg, "none" ) == 0 ) {
@@ -945,7 +945,7 @@ handle_private_option( int i )
                break;
        case 'T':       /* tmpdir */
                if( tmpdir ) free( tmpdir );
-               tmpdir = optarg;
+               tmpdir = strdup( optarg );
                break;
        case 'u':       /* include UFN */
                ++includeufn;
@@ -1660,6 +1660,9 @@ getNextPage:
                        free( def_urlpre );
                free( urlpre );
        }
+       if ( tmpdir && tmpdir != def_tmpdir ) {
+               free( tmpdir );
+       }
 
        if ( c ) {
                for ( ; save_nctrls-- > 0; ) {