[packages] transmission: add missing option, use service_kill in init
[openwrt/svn-archive/archive.git] / net / transmission / files / transmission.init
index 80fdf85deca9e094939875c44dc6f8cfe175938f..bdfe2e0081892951619ad9c389a1ccaeaf46acb7 100644 (file)
@@ -27,7 +27,8 @@ append_params_quotes() {
                IFS="$LIST_SEP"
                for v in $v; do
                        [ -n "$v" ] && (
-                               echo "\""$p"\": \""$v"\"," | sed -e 's|/|\\/|g;s|_|-|g' >> $config_dir/settings.json
+                               echo -n "\""$p | sed -e 's|/|\\/|g;s|_|-|g' >> $config_dir/settings.json; \
+                               echo "\": \""$v"\"," >> $config_dir/settings.json
                        )
                done
                unset IFS
@@ -57,7 +58,7 @@ start_service() {
                incomplete_dir_enabled lazy_bitfield_enabled lpd_enabled message_level \
                open_file_limit peer_limit_global peer_limit_per_torrent peer_port \
                peer_port_random_high peer_port_random_low peer_port_random_on_start \
-               peer_socket_tos pex_enabled port_forwarding_enabled preallocation \
+               peer_socket_tos pex_enabled port_forwarding_enabled preallocation prefetch_enabled \
                ratio_limit ratio_limit_enabled rename_partial_files rpc_authentication_required \
                rpc_enabled rpc_port rpc_whitelist_enabled script_torrent_done_enabled \
                speed_limit_down speed_limit_down_enabled speed_limit_up \
@@ -66,12 +67,14 @@ start_service() {
 
        append_params_quotes "$s" \
                blocklist_url bind_address_ipv4 bind_address_ipv6 download_dir incomplete_dir \
-               rpc_bind_address rpc_password \
+               peer_congestion_algorithm rpc_bind_address rpc_password rpc_url \
                rpc_username rpc_whitelist script_torrent_done_filename watch_dir
 
        echo "\""invalid-key"\": false" >> $config_dir/settings.json
        echo "}" >> $config_dir/settings.json
-       
+
+       chown -R $run_as_usr $config_dir
+
        eval "$SSD -c $run_as_usr -q -b -x $BIN -S -- -g $config_dir"
 }
 
@@ -81,7 +84,7 @@ start() {
 }
 
 stop() {
-       killall `basename $BIN`
+       service_kill $(basename $BIN)
 }
 
 restart() {