source: n4d-proxy/trunk/fuentes/debian/n4d-proxy.postinst @ 5084

Last change on this file since 5084 was 5084, checked in by hectorgh, 2 years ago

fixing divert names

File size: 3.6 KB
Line 
1#!/bin/sh
2
3set -e
4
5case "$1" in
6   configure|upgrade)
7        #mkdir -p /var/run/squid
8        #chown proxy:proxy /var/run/squid
9        #service dnsmasq restart || true
10        a2ensite proxy || true
11        invoke-rc.d apache2 restart || true
12       
13        if dpkg --compare-versions "$2" lt 0.24; then
14                SSL_PORTS_FILE="/etc/squid/lliurex/allow-SSL-ports.conf"
15               
16                if [ -e  $SSL_PORTS_FILE ]; then
17               
18                        echo "Fixing allowed SSL ports squid conffile..."
19               
20                        sed -i -e "/^9779$/d" $SSL_PORTS_FILE
21                        echo "\n9779\n" >> $SSL_PORTS_FILE
22                        sed -i -e "/^$/d" $SSL_PORTS_FILE
23                       
24                        invoke-rc.d squid restart || true
25                       
26                fi
27               
28        fi
29       
30        if dpkg --compare-versions "$2" lt 0.25; then
31                SSL_PORTS_FILE="/etc/squid/lliurex/allow-SSL-ports.conf"
32                SQUID_CONF="/etc/squid/squid.conf"
33               
34                if [ -e $SQUID_CONF ]; then
35               
36                        echo "Fixing single-name resolution..."
37                       
38                        sed -i -e "/^dns_defnames .*/d" $SQUID_CONF
39                        echo "\n\n# Lliurex - Enabling single-name resolution\ndns_defnames on\n" >> $SQUID_CONF
40                       
41                        invoke-rc.d squid restart || true
42               
43                fi
44        fi
45               
46        if dpkg --compare-versions "$2" lt 0.31; then
47                TEMPLATE_PATH="/usr/share/n4d/templates/squid/"
48                DENY_DOMAIN_FILE="/etc/squid/lliurex/deny-dst-domains.conf"
49                DENY_DOMAIN_FILE_EXPR="/etc/squid/lliurex/deny-dst-domains-expr.conf"
50        DENY_NETWORKS_FILE="/etc/squid/lliurex/deny-dst-networks.conf"
51        SQUID_CONF="/etc/squid/squid.conf"
52        SQUID_LLIUREX_DIR="/etc/squid/lliurex/"
53                if [ -e $SQUID_CONF ]; then
54                        echo "Fixing htcp_access..."
55                        sed -i -e "/^htcp_access .*/d" $SQUID_CONF
56                       
57                        if [ ! -e $DENY_DOMAIN_FILE  -a -d $SQUID_LLIUREX_DIR ]; then
58                                cp "$TEMPLATE_PATH"deny-dst-domains.conf $DENY_DOMAIN_FILE
59                        fi
60                        if [ ! -e $DENY_NETWORKS_FILE -a -d $SQUID_LLIUREX_DIR ]; then
61                                cp "$TEMPLATE_PATH"deny-dst-networks.conf $DENY_NETWORKS_FILE
62                        fi
63                        if [ ! -e $DENY_DOMAIN_FILE_EXPR  -a -d $SQUID_LLIUREX_DIR ]; then
64                                cp "$TEMPLATE_PATH"deny-dst-domains-expr.conf $DENY_DOMAIN_FILE_EXPR
65                        fi
66                        echo "adding deny domain file list..."
67                        sed -i '/acl deny_domain dstdomain \"\/etc\/squid\/lliurex\/deny-dst-domains.conf\"/i acl deny_domain_expr dstdom_regex \"\/etc\/squid\/lliurex\/deny-dst-domains-expr.conf\"' $SQUID_CONF
68                        echo "adding deny domain expresions acl..."
69                        sed -i '/^http_access deny deny_domain/i http_access deny deny_domain_expr ' $SQUID_CONF
70                fi
71        fi
72       
73        if dpkg --compare-versions "$2" lt 0.50; then
74                SQUID_FILE="/etc/squid/squid.conf"
75               
76                if [ -e  $SQUID_FILE ]; then
77               
78                        echo "Fixing dns_nameserver in squid conffile..."
79                        sed -i -e "/^dns_nameservers 127.0.0.1/d" $SQUID_FILE
80                        invoke-rc.d squid restart || true
81                       
82                fi
83               
84        fi
85       
86
87        PKG="n4d-proxy"
88        ORIGINAL_FILE="/etc/squid/squid.conf"
89        NEW_DIVERTED_FILE="/etc/squid/squid.conf.diverted"
90        DPKG_NEW_FILE="/etc/squid/squid.conf.dpkg-old"
91
92
93        if [ ! -e "$NEW_DIVERTED_FILE" ]; then
94
95                dpkg-divert --add --package ${PKG} --rename --divert "$NEW_DIVERTED_FILE" "$ORIGINAL_FILE"
96
97                if [ -e "$DPKG_NEW_FILE" ]; then
98
99                        RC=0
100                        grep "LLIUREX" "$DPKG_NEW_FILE" || RC=1
101
102                        if [ "$RC" = "0" ]; then
103
104                                mv "$DPKG_NEW_FILE" "$ORIGINAL_FILE"
105
106                        fi
107
108                fi
109
110                if [ ! -e "$ORIGINAL_FILE" ]; then
111                        cp "$NEW_DIVERTED_FILE" "$ORIGINAL_FILE"
112                fi
113
114
115        fi
116
117
118
119        n4d-modules enable-plugin /etc/n4d/conf.d/ProxyManager || true
120
121        invoke-rc.d squid restart || true
122        ;;
123   abort-upgrade|abort-remove|abort-deconfigure)
124        ;;
125  *)
126    echo "postinst called with unknown argument \`$1'" >&2
127    exit 1
128  ;;
129esac
130
131#DEBHELPER#
132
133exit 0
Note: See TracBrowser for help on using the repository browser.