[CRIU] [PATCH 3/2] check for setproctitle_init

Ruslan Kuprieiev kupruser at gmail.com
Thu Mar 27 14:55:27 PDT 2014


Kir, could you test this patch with F18, please. Thanks.

On 28.03.2014 01:52, Ruslan Kuprieiev wrote:
> Check for setproctitle_init, as old versions of libbsd don't have one.
>
> Reported-by: Kir Kolyshkin <kir at openvz.org>
> Signed-off-by: Ruslan Kuprieiev <kupruser at gmail.com>
> ---
>   Makefile.config           |  3 +++
>   include/setproctitle.h    |  8 ++++++++
>   scripts/feature-tests.mak | 13 +++++++++++++
>   3 files changed, 24 insertions(+)
>
> diff --git a/Makefile.config b/Makefile.config
> index ca46ca1..a4e234f 100644
> --- a/Makefile.config
> +++ b/Makefile.config
> @@ -30,6 +30,9 @@ endif
>   ifeq ($(call try-cc,$(PTRACE_PEEKSIGINFO_TEST),),y)
>   	$(Q) @echo '#define CONFIG_HAS_PEEKSIGINFO_ARGS' >> $@
>   endif
> +ifeq ($(call try-cc,$(SETPROCTITLE_INIT_TEST),-lbsd),y)
> +	$(Q) @echo '#define CONFIG_HAS_SETPROCTITLE_INIT' >> $@
> +endif
>   	$(Q) @echo '#endif /* __CR_CONFIG_H__ */' >> $@
>   
>   config: $(CONFIG)
> diff --git a/include/setproctitle.h b/include/setproctitle.h
> index ed6bf03..3ac1f23 100644
> --- a/include/setproctitle.h
> +++ b/include/setproctitle.h
> @@ -4,7 +4,15 @@
>   #ifdef CONFIG_HAS_LIBBSD
>   #include <bsd/unistd.h>
>   #else
> +
> +/*
> + * setproctitle_init is in the libbsd since v0.6.0. This macro allows to
> + * compile crtools with libbsd<0.6.0.
> + */
> +#ifndef CONFIG_HAS_SETPROCTITLE_INIT
>   void setproctitle_init(int argc, char *argv[], char *envp[]) {return; }
> +#endif
> +
>   void setproctitle(const char *fmt, ...) {return; }
>   #endif
>   
> diff --git a/scripts/feature-tests.mak b/scripts/feature-tests.mak
> index 0977857..519eb52 100644
> --- a/scripts/feature-tests.mak
> +++ b/scripts/feature-tests.mak
> @@ -79,3 +79,16 @@ int main(void)
>   }
>   
>   endef
> +
> +define SETPROCTITLE_INIT_TEST
> +
> +#include <bsd/unistd.h>
> +
> +int main(int argc, char *argv[], char *envp[])
> +{
> +	setproctitle_init(argc, argv, envp);
> +
> +	return 0;
> +}
> +
> +endef



More information about the CRIU mailing list