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

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

fixing divert names

File size: 3.5 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                       
81                fi
82               
83        fi
84       
85
86        PKG="n4d-proxy"
87        ORIGINAL_FILE="/etc/squid/squid.conf"
88        NEW_DIVERTED_FILE="/etc/squid/squid.conf.diverted"
89        DPKG_NEW_FILE="/etc/squid/squid.conf.dpkg-old"
90
91
92        if [ ! -e "$NEW_DIVERTED_FILE" ]; then
93
94                dpkg-divert --add --package ${PKG} --rename --divert "$NEW_DIVERTED_FILE" "$ORIGINAL_FILE"
95
96                if [ -e "$DPKG_NEW_FILE" ]; then
97
98                        RC=0
99                        grep "LLIUREX" "$DPKG_NEW_FILE" || RC=1
100
101                        if [ "$RC" = "0" ]; then
102
103                                mv "$DPKG_NEW_FILE" "$ORIGINAL_FILE"
104
105                        fi
106
107                fi
108
109                if [ ! -e "$ORIGINAL_FILE" ]; then
110                        cp "$NEW_DIVERTED_FILE" "$ORIGINAL_FILE"
111                fi
112
113
114        fi
115
116
117
118        n4d-modules enable-plugin /etc/n4d/conf.d/ProxyManager || true
119
120        invoke-rc.d squid restart || true
121        ;;
122   abort-upgrade|abort-remove|abort-deconfigure)
123        ;;
124  *)
125    echo "postinst called with unknown argument \`$1'" >&2
126    exit 1
127  ;;
128esac
129
130#DEBHELPER#
131
132exit 0
Note: See TracBrowser for help on using the repository browser.