[2/3] Fix tst-ldconfig-ld_so_conf-update with custom configure prefix value
Checks
Context |
Check |
Description |
dj/TryBot-apply_patch |
success
|
Patch applied to master at the time it was sent
|
Commit Message
---
elf/tst-ldconfig-ld_so_conf-update.c | 13 ++++++++-----
1 file changed, 8 insertions(+), 5 deletions(-)
Comments
LGTM, thanks.
Reviewed-by: Adhemerval Zanella <adhemerval.zanella@linaro.org>
On 26/03/23 17:00, Romain Geissler via Libc-alpha wrote:
> ---
> elf/tst-ldconfig-ld_so_conf-update.c | 13 ++++++++-----
> 1 file changed, 8 insertions(+), 5 deletions(-)
>
> diff --git a/elf/tst-ldconfig-ld_so_conf-update.c b/elf/tst-ldconfig-ld_so_conf-update.c
> index 503afb3211e..2c5c48615d8 100644
> --- a/elf/tst-ldconfig-ld_so_conf-update.c
> +++ b/elf/tst-ldconfig-ld_so_conf-update.c
> @@ -33,7 +33,6 @@
>
> #define DSO "libldconfig-ld-mod.so"
> #define DSO_DIR "/tmp/tst-ldconfig"
> -#define CONF "/etc/ld.so.conf"
>
>
> static void
> @@ -64,6 +63,8 @@ do_test (void)
> {
> struct support_capture_subprocess result;
>
> + char *conf_path = xasprintf ("%s/ld.so.conf", support_sysconfdir_prefix);
> +
> /* Create the needed directories. */
> xmkdirp ("/var/cache/ldconfig", 0777);
> xmkdirp (DSO_DIR, 0777);
> @@ -82,9 +83,9 @@ do_test (void)
> is not searched. */
> TEST_VERIFY_EXIT (dlopen (DSO, RTLD_NOW | RTLD_GLOBAL) == NULL);
>
> - FILE *fp = xfopen (CONF, "a+");
> + FILE *fp = xfopen (conf_path, "a+");
> if (!fp)
> - FAIL_EXIT1 ("creating /etc/ld.so.conf failed: %m");
> + FAIL_EXIT1 ("creating %s failed: %m", conf_path);
> xfclose (fp);
>
> /* Run ldconfig. */
> @@ -95,9 +96,9 @@ do_test (void)
> TEST_VERIFY_EXIT (dlopen (DSO, RTLD_NOW | RTLD_GLOBAL) == NULL);
>
> /* Add tst-ldconfig directory to /etc/ld.so.conf. */
> - fp = xfopen (CONF, "w");
> + fp = xfopen (conf_path, "w");
> if (!(fwrite (DSO_DIR, 1, sizeof (DSO_DIR), fp)))
> - FAIL_EXIT1 ("updating /etc/ld.so.conf failed: %m");
> + FAIL_EXIT1 ("updating %s failed: %m", conf_path);
> xfclose (fp);
>
> /* Try to dlopen the same DSO again, we expect this to still fail. */
> @@ -111,6 +112,8 @@ do_test (void)
> /* Finally, we expect dlopen to pass now. */
> TEST_VERIFY_EXIT (dlopen (DSO, RTLD_NOW | RTLD_GLOBAL) != NULL);
>
> + free (conf_path);
> +
> return 0;
> }
>
@@ -33,7 +33,6 @@
#define DSO "libldconfig-ld-mod.so"
#define DSO_DIR "/tmp/tst-ldconfig"
-#define CONF "/etc/ld.so.conf"
static void
@@ -64,6 +63,8 @@ do_test (void)
{
struct support_capture_subprocess result;
+ char *conf_path = xasprintf ("%s/ld.so.conf", support_sysconfdir_prefix);
+
/* Create the needed directories. */
xmkdirp ("/var/cache/ldconfig", 0777);
xmkdirp (DSO_DIR, 0777);
@@ -82,9 +83,9 @@ do_test (void)
is not searched. */
TEST_VERIFY_EXIT (dlopen (DSO, RTLD_NOW | RTLD_GLOBAL) == NULL);
- FILE *fp = xfopen (CONF, "a+");
+ FILE *fp = xfopen (conf_path, "a+");
if (!fp)
- FAIL_EXIT1 ("creating /etc/ld.so.conf failed: %m");
+ FAIL_EXIT1 ("creating %s failed: %m", conf_path);
xfclose (fp);
/* Run ldconfig. */
@@ -95,9 +96,9 @@ do_test (void)
TEST_VERIFY_EXIT (dlopen (DSO, RTLD_NOW | RTLD_GLOBAL) == NULL);
/* Add tst-ldconfig directory to /etc/ld.so.conf. */
- fp = xfopen (CONF, "w");
+ fp = xfopen (conf_path, "w");
if (!(fwrite (DSO_DIR, 1, sizeof (DSO_DIR), fp)))
- FAIL_EXIT1 ("updating /etc/ld.so.conf failed: %m");
+ FAIL_EXIT1 ("updating %s failed: %m", conf_path);
xfclose (fp);
/* Try to dlopen the same DSO again, we expect this to still fail. */
@@ -111,6 +112,8 @@ do_test (void)
/* Finally, we expect dlopen to pass now. */
TEST_VERIFY_EXIT (dlopen (DSO, RTLD_NOW | RTLD_GLOBAL) != NULL);
+ free (conf_path);
+
return 0;
}