Comment # 4 on bug 1041606 from
The problem is related to files '/usr/lib/systemd/system/privoxy.service' and
'/etc/NetworkManager/dispatcher.d/privoxyd'

Leap 42.3 and Leap 15.0 have same 'privoxy.service' and 'privoxyd'

## /usr/lib/systemd/system/privoxy.service
'''
[Unit]
Description=Privoxy Web Proxy With Advanced Filtering Capabilities
After=network.target

[Service]
Type=forking
PIDFile=/run/privoxy.pid
ExecStartPre=-/usr/bin/cp -upf /etc/resolv.conf /etc/host.conf /etc/hosts
/etc/localtime /var/lib/privoxy/etc/
ExecStartPre=-/usr/bin/cp -upf /lib64/libresolv.so.2 /lib64/libnss_dns.so.2
/var/lib/privoxy/lib64/
ExecStart=/usr/sbin/privoxy --chroot --pidfile /run/privoxy.pid --user privoxy
/etc/config
ExecReload=/bin/kill -HUP $MAINPID

[Install]
WantedBy=multi-user.target
'''

According to the file 'privoxy.service', a copy of 'resolv.conf' is created
before privoxy starts, and privoxy uses the copy instead of '/etc/resolv.conf'.


## /etc/NetworkManager/dispatcher.d/privoxyd
'''
case "$2" in
    up)
        /usr/bin/systemctl restart privoxy
        ;;
    down)
        /usr/bin/systemctl restart privoxy
        ;;
    *)
        exit 0
        ;;
esac
'''

According to the file 'privoxyd', privoxy will be reloaded either a connection
is up or down.

The point is, if privoxy starts when the system's network is still offline, the
copy from '/etc/resolv.conf' contains no nameserver. In this situation, later
connection changes will only cause privoxy reload, and the copy of
'/etc/resolv.conf' still contains no nameserver. Thus, 503(URL Cannot be
resolved) happened.

## Solution

My temporary solution is to modify the file 'privoxyd', changing

'/usr/bin/systemctl reload privoxy' into

'/usr/bin/systemctl restart privoxy'

The solution may not be perfect but it at least works.


If there is any confusing expression, please let me know.


You are receiving this mail because: