svn commit: r494743 - in head/net-p2p/deluge-cli: . files

Dmitry Marakasov amdmi3 at amdmi3.ru
Mon Apr 22 14:27:24 UTC 2019


* Ruslan Makhmatkhanov (rm at FreeBSD.org) wrote:

> Author: rm
> Date: Tue Mar  5 21:13:32 2019
> New Revision: 494743
> URL: https://svnweb.freebsd.org/changeset/ports/494743
> 
> Log:
>   net-p2p/deluge-cli: correct deluge_web rc-script
>   
>   From the PR:
>   The rc.d script for deluge_web outright disrespects a user's home directory and
>   instead tries to execute against hardcoded /home/${deluge_web_user} paths. This
>   is invalid and dangerous behavior. When running as a user, the user's home
>   directory must be respected. The attached patch fixes this behavior as a break-fix.
>   
>   PR:		234902
>   Submitted by:	Phillip R. Jaenke <prj at rootwyrm.com>
> 
> Modified:
>   head/net-p2p/deluge-cli/Makefile
>   head/net-p2p/deluge-cli/files/deluge_web.in
> 
> Modified: head/net-p2p/deluge-cli/Makefile
> ==============================================================================
> --- head/net-p2p/deluge-cli/Makefile	Tue Mar  5 21:05:28 2019	(r494742)
> +++ head/net-p2p/deluge-cli/Makefile	Tue Mar  5 21:13:32 2019	(r494743)
> @@ -3,7 +3,7 @@
>  PORTNAME=	deluge
>  DISTVERSIONPREFIX=	${PORTNAME}-
>  DISTVERSION=	1.3.15
> -PORTREVISION=	7
> +PORTREVISION=	8
>  CATEGORIES=	net-p2p python
>  PKGNAMESUFFIX=	-cli
>  
> 
> Modified: head/net-p2p/deluge-cli/files/deluge_web.in
> ==============================================================================
> --- head/net-p2p/deluge-cli/files/deluge_web.in	Tue Mar  5 21:05:28 2019	(r494742)
> +++ head/net-p2p/deluge-cli/files/deluge_web.in	Tue Mar  5 21:13:32 2019	(r494743)
> @@ -39,11 +39,16 @@ command_interpreter=%%PYTHON_CMD%%
>  start_precmd=${name}_prestart
>  stop_postcmd=${name}_poststop
>  
> +
>  deluge_web_prestart()
>  {
>  	if [ "$deluge_web_user" = 'asjklasdfjklasdf' ]; then
>  		err 1 "You must set deluge_web_user to a real, unprivileged user"
>  	fi
> +	deluge_web_home=$(pw user show ${deluge_web_user} | cut -d : -f 9)
> +	if [ -z ${deluge_web_home} ]; then
> +		err 1 "deluge_web_user does not have a valid home directory."
> +	fi
>  
>  	if [ ! -d "/var/run/${name}" ]; then
>  		if [ -e "/var/run/${name}" ]; then
> @@ -52,14 +57,13 @@ deluge_web_prestart()
>  		mkdir -p /var/run/${name}
>  	fi
>  
> -	if [ ! -d "/home/${deluge_web_user}/.python-eggs" ]; then
> -		mkdir -p /home/${deluge_web_user}/.python-eggs
> -	fi
> +	if [ ! -d "${deluge_web_home}/.python-eggs" ]; then
> +		mkdir ${deluge_web_home}/.python-eggs
> +		chown -R $deluge_web_user ${deluge_web_home}/.python-eggs

`fi` missing somewhere here, please review. The script is currently
broken.

>  
>  	chmod 0755 /var/run/${name}
>  	chown -R $deluge_web_user /var/run/${name}
> -	chown -R $deluge_web_user /home/${deluge_web_user}/.python-eggs
> -	export PYTHON_EGG_CACHE="/home/${deluge_web_user}/.python-eggs"
> +	export PYTHON_EGG_CACHE="${deluge_web_home}/.python-eggs"
>  }
>  
>  deluge_web_poststop()
> @@ -72,7 +76,7 @@ load_rc_config $name
>  
>  : ${deluge_web_enable:="NO"}
>  : ${deluge_web_user:="asjklasdfjklasdf"}
> -: ${deluge_web_confdir:="/home/${deluge_web_user}/.config/deluge"}
> +: ${deluge_web_confdir:="${deluge_web_home}/.config/deluge"}
>  : ${deluge_web_loglevel:="error"}
>  : ${deluge_web_logfile:="/var/tmp/${name}.log"}
>  
> 
> 

-- 
Dmitry Marakasov   .   55B5 0596 FF1E 8D84 5F56  9510 D35A 80DD F9D2 F77D
amdmi3 at amdmi3.ru  ..:              https://github.com/AMDmi3



More information about the svn-ports-all mailing list