Subversion Repositories ALCASAR

Rev

Rev 2069 | Rev 2184 | Go to most recent revision | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log

Rev 2069 Rev 2079
1
#!/bin/sh
1
#!/bin/sh
2
 
2
 
3
# alcasar-condown.sh
3
# alcasar-condown.sh
4
# by Rexy
4
# by Rexy
5
# This script is distributed under the Gnu General Public License (GPL)
5
# This script is distributed under the Gnu General Public License (GPL)
6
 
6
 
7
# This script is launched after each logout
7
# This script is launched after each logout
8
# Ce script est lancé à chaque déconnexion d'usager
8
# Ce script est lancé à chaque déconnexion d'usager
9
 
9
 
10
# Debug : show all the coova parse variables. There are declared in /src/chilli.c
10
# Debug : show all the coova parse variables. There are declared in /src/chilli.c
11
#echo "------------------------------------------------------------" >> /tmp/debug-condown.txt
11
#echo "------------------------------------------------------------" >> /tmp/debug-condown.txt
12
#echo `date` >> /tmp/debug-condown.txt
12
#echo `date` >> /tmp/debug-condown.txt
13
#for i in LAYER3 DEV NET MASK ADDR USER_NAME NAS_IP_ADDRESS SERVICE_TYPE FRAMED_IP_ADDRESS FILTER_ID STATE CLASS CUI SESSION_TIMEOUT IDLE_TIMEOUT CALLING_STATION_ID CALLED_STATION_ID NAS_ID NAS_PORT_TYPE ACCT_SESSION_ID ACCT_INTERIM_INTERVAL WISPR_LOCATION_ID WISPR_LOCATION_NAME WISPR_BANDWIDTH_MAX_UP WISPR_BANDWIDTH_MAX_DOWN WISPR-SESSION_TERMINATE_TIME CHILLISPOT_MAX_INPUT_OCTETS CHILLISPOT_MAX_OUTPUT_OCTETS CHILLISPOT_MAX_TOTAL_OCTETS INPUT_OCTETS OUTPUT_OCTETS SESSION_TIME IDLE_TIME LOCATION OLD_LOCATION TERMINATE_CAUSE
13
#for i in LAYER3 DEV NET MASK ADDR USER_NAME NAS_IP_ADDRESS SERVICE_TYPE FRAMED_IP_ADDRESS FILTER_ID STATE CLASS CUI SESSION_TIMEOUT IDLE_TIMEOUT CALLING_STATION_ID CALLED_STATION_ID NAS_ID NAS_PORT_TYPE ACCT_SESSION_ID ACCT_INTERIM_INTERVAL WISPR_LOCATION_ID WISPR_LOCATION_NAME WISPR_BANDWIDTH_MAX_UP WISPR_BANDWIDTH_MAX_DOWN WISPR-SESSION_TERMINATE_TIME CHILLISPOT_MAX_INPUT_OCTETS CHILLISPOT_MAX_OUTPUT_OCTETS CHILLISPOT_MAX_TOTAL_OCTETS INPUT_OCTETS OUTPUT_OCTETS SESSION_TIME IDLE_TIME LOCATION OLD_LOCATION TERMINATE_CAUSE
14
#do
14
#do
15
#	echo "$i : ${!i}" >> /tmp/debug-condown.txt
15
#	echo "$i : ${!i}" >> /tmp/debug-condown.txt
16
#done
16
#done
17
 
17
 
18
# Remove user from his IPSET (depending on FILTER_ID)
18
# Remove user from his IPSET (depending on FILTER_ID)
19
 
19
 
20
#12345678
20
#FilterID : 12345678
21
#1-> profile1
21
#1-> profile1
22
#2-> profile2
22
#2-> profile2
23
#3-> profile3
23
#3-> profile3
-
 
24
#4-> warn_user (if imputability report has been generated)
24
#6-> WL
25
#6-> WL
25
#7-> BL
26
#7-> BL
26
#8-> HAVP
27
#8-> HAVP
27
 
28
 
28
if [ ${FILTER_ID:7:1} -eq '1' ] #HAVP
29
if [ ${FILTER_ID:7:1} -eq '1' ] #HAVP
29
then 
30
then 
30
	set="havp"
31
	set="havp"
31
	if [ ${FILTER_ID:0:1} -eq '1' ]
32
	if [ ${FILTER_ID:0:1} -eq '1' ]
32
	then 
33
	then 
33
		set_proto="proto_1";
34
		set_proto="proto_1";
34
	fi
35
	fi
35
 
36
 
36
	if [ ${FILTER_ID:1:1} -eq '1' ]
37
	if [ ${FILTER_ID:1:1} -eq '1' ]
37
	then 
38
	then 
38
		set_proto="proto_2";
39
		set_proto="proto_2";
39
	fi
40
	fi
40
	
41
	
41
	if [ ${FILTER_ID:2:1} -eq '1' ]
42
	if [ ${FILTER_ID:2:1} -eq '1' ]
42
	then 
43
	then 
43
		set_proto="proto_3";
44
		set_proto="proto_3";
44
	fi
45
	fi
45
 
46
 
46
	if [ -z "$set_proto"  ]
47
	if [ -z "$set_proto"  ]
47
	then 
48
	then 
48
		set_proto="proto_0";
49
		set_proto="proto_0";
49
	fi
50
	fi
50
fi
51
fi
51
 
52
 
52
if [ ${FILTER_ID:6:1} -eq '1' ] #HAVP_BL
53
if [ ${FILTER_ID:6:1} -eq '1' ] #HAVP_BL
53
then 
54
then 
54
	set="havp_bl"
55
	set="havp_bl"
55
	if [ ${FILTER_ID:0:1} -eq '1' ]
56
	if [ ${FILTER_ID:0:1} -eq '1' ]
56
	then 
57
	then 
57
		set_proto="proto_1";
58
		set_proto="proto_1";
58
	fi
59
	fi
59
 
60
 
60
	if [ ${FILTER_ID:1:1} -eq '1' ]
61
	if [ ${FILTER_ID:1:1} -eq '1' ]
61
	then 
62
	then 
62
		set_proto="proto_2";
63
		set_proto="proto_2";
63
	fi
64
	fi
64
	
65
	
65
	if [ ${FILTER_ID:2:1} -eq '1' ]
66
	if [ ${FILTER_ID:2:1} -eq '1' ]
66
	then 
67
	then 
67
		set_proto="proto_3";
68
		set_proto="proto_3";
68
	fi
69
	fi
69
 
70
 
70
	if [ -z "$set_proto"  ]
71
	if [ -z "$set_proto"  ]
71
	then 
72
	then 
72
		set_proto="proto_0";
73
		set_proto="proto_0";
73
	fi
74
	fi
74
fi
75
fi
75
 
76
 
76
if [ ${FILTER_ID:5:1} -eq '1' ] #HAVP_WL
77
if [ ${FILTER_ID:5:1} -eq '1' ] #HAVP_WL
77
then 
78
then 
78
	set="havp_wl"
79
	set="havp_wl"
79
	if [ ${FILTER_ID:0:1} -eq '1' ]
80
	if [ ${FILTER_ID:0:1} -eq '1' ]
80
	then 
81
	then 
81
		set_proto="proto_1";
82
		set_proto="proto_1";
82
	fi
83
	fi
83
 
84
 
84
	if [ ${FILTER_ID:1:1} -eq '1' ]
85
	if [ ${FILTER_ID:1:1} -eq '1' ]
85
	then 
86
	then 
86
		set_proto="proto_2";
87
		set_proto="proto_2";
87
	fi
88
	fi
88
	
89
	
89
	if [ ${FILTER_ID:2:1} -eq '1' ]
90
	if [ ${FILTER_ID:2:1} -eq '1' ]
90
	then 
91
	then 
91
		set_proto="proto_3";
92
		set_proto="proto_3";
92
	fi
93
	fi
93
 
94
 
94
	if [ -z "$set_proto"  ]
95
	if [ -z "$set_proto"  ]
95
	then 
96
	then 
96
		set_proto="proto_0";
97
		set_proto="proto_0";
97
	fi
98
	fi
98
fi
99
fi
99
 
100
 
100
 
101
 
101
 
102
 
102
if [ -z "$set"  ] #NOT_FILTERED
103
if [ -z "$set"  ] #NOT_FILTERED
103
then 
104
then 
104
	set="not_filtered"
105
	set="not_filtered"
105
	if [ ${FILTER_ID:0:1} -eq '1' ]
106
	if [ ${FILTER_ID:0:1} -eq '1' ]
106
	then 
107
	then 
107
		set_proto="proto_1";
108
		set_proto="proto_1";
108
	fi
109
	fi
109
 
110
 
110
	if [ ${FILTER_ID:1:1} -eq '1' ]
111
	if [ ${FILTER_ID:1:1} -eq '1' ]
111
	then 
112
	then 
112
		set_proto="proto_2";
113
		set_proto="proto_2";
113
	fi
114
	fi
114
	
115
	
115
	if [ ${FILTER_ID:2:1} -eq '1' ]
116
	if [ ${FILTER_ID:2:1} -eq '1' ]
116
	then 
117
	then 
117
		set_proto="proto_3";
118
		set_proto="proto_3";
118
	fi
119
	fi
119
 
120
 
120
	if [ -z "$set_proto"  ]
121
	if [ -z "$set_proto"  ]
121
	then 
122
	then 
122
		set_proto="proto_0";
123
		set_proto="proto_0";
123
	fi
124
	fi
124
fi
125
fi
125
 
126
 
126
 
127
 
127
ipset del $set $FRAMED_IP_ADDRESS
128
ipset del $set $FRAMED_IP_ADDRESS
128
ipset del $set_proto $FRAMED_IP_ADDRESS
129
ipset del $set_proto $FRAMED_IP_ADDRESS
129
 
130