Re: [PATCH v2 1/2] daemon: move daemonize() to libgit.a

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Nguyễn Thái Ngọc Duy  <pclouds@xxxxxxxxx> writes:

> diff --git a/setup.c b/setup.c
> index 6c3f85f..b09a412 100644
> --- a/setup.c
> +++ b/setup.c
> @@ -787,3 +787,27 @@ void sanitize_stdfds(void)
>  	if (fd > 2)
>  		close(fd);
>  }
> +
> +int daemonize(void)
> +{
> +#ifdef NO_POSIX_GOODIES
> +	errno = -ENOSYS;

Negated?

> +	return -1;
> +#else
> +	switch (fork()) {
> +		case 0:
> +			break;
> +		case -1:
> +			die_errno("fork failed");
> +		default:
> +			exit(0);
> +	}
> +	if (setsid() == -1)
> +		die_errno("setsid failed");
> +	close(0);
> +	close(1);
> +	close(2);
> +	sanitize_stdfds();
> +	return 0;
> +#endif
> +}
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]