I just realized the original code leaks memory. ld_preload was not freed. On Tue, Jan 23, 2018 at 12:30 PM, Rosen Penev <ros...@gmail.com> wrote: > setenv is prefered according to POSIX. Also allows staticly allocated strings. > > Saves 200 bytes when stripped. 432 without. > > Signed-off-by: Rosen Penev <ros...@gmail.com> > --- > service/instance.c | 5 ++--- > 1 file changed, 2 insertions(+), 3 deletions(-) > > diff --git a/service/instance.c b/service/instance.c > index 12c2efe..ecbb6ea 100644 > --- a/service/instance.c > +++ b/service/instance.c > @@ -279,7 +279,6 @@ instance_run(struct service_instance *in, int _stdout, > int _stderr) > struct blobmsg_list_node *var; > struct blob_attr *cur; > char **argv; > - char *ld_preload; > int argc = 1; /* NULL terminated */ > int rem, _stdin; > bool seccomp = !in->trace && !in->has_jail && in->seccomp; > @@ -297,8 +296,8 @@ instance_run(struct service_instance *in, int _stdout, > int _stderr) > if (seccomp) > setenv("SECCOMP_FILE", in->seccomp, 1); > > - if (setlbf && asprintf(&ld_preload, "LD_PRELOAD=/lib/libsetlbf.so") > > 0) > - putenv(ld_preload); > + if (setlbf) > + setenv("LD_PRELOAD", "/lib/libsetlbf.so", 1); > > blobmsg_list_for_each(&in->limits, var) > instance_limits(blobmsg_name(var->data), > blobmsg_data(var->data)); > -- > 2.7.4 >
_______________________________________________ Lede-dev mailing list Lede-dev@lists.infradead.org http://lists.infradead.org/mailman/listinfo/lede-dev