Subversion Repositories ALCASAR

Rev

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

Rev 2079 Rev 2184
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 by coova after each logout
8
# Ce script est lancé à chaque déconnexion d'usager
8
# Ce script est lancé par coova à chaque déconnexion d'usager
9
 
9
 
10
# Debug : show all the coova parse variables. There are declared in /src/chilli.c
-
 
11
#echo "------------------------------------------------------------" >> /tmp/debug-condown.txt
-
 
12
#echo `date` >> /tmp/debug-condown.txt
10
if [ -z $FRAMED_IP_ADDRESS ]
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
11
then
14
#do
12
	exit
15
#	echo "$i : ${!i}" >> /tmp/debug-condown.txt
-
 
16
#done
13
fi
17
 
14
 
18
# Remove user from his IPSET (depending on FILTER_ID)
15
# Remove user from his IPSET (depending on FILTER_ID)
19
 
16
 
20
#FilterID : 12345678
17
#FilterID Byte N° 0 to 7
21
#1-> profile1
18
#0-> profile1
22
#2-> profile2
19
#1-> profile2
23
#3-> profile3
20
#2-> profile3
24
#4-> warn_user (if imputability report has been generated)
21
#3-> warn_user (if imputability report has been generated)
25
#6-> WL
22
#5-> WL
26
#7-> BL
23
#6-> BL
27
#8-> HAVP
24
#7-> HAVP
28
 
25
 
29
if [ ${FILTER_ID:7:1} -eq '1' ] #HAVP
26
if [ ${FILTER_ID:7:1} -eq '1' ] #HAVP
30
then 
27
then 
31
	set="havp"
28
	set="havp"
32
	if [ ${FILTER_ID:0:1} -eq '1' ]
29
	if [ ${FILTER_ID:0:1} -eq '1' ]
33
	then 
30
	then 
34
		set_proto="proto_1";
31
		set_proto="proto_1";
35
	fi
32
	fi
36
 
33
 
37
	if [ ${FILTER_ID:1:1} -eq '1' ]
34
	if [ ${FILTER_ID:1:1} -eq '1' ]
38
	then 
35
	then 
39
		set_proto="proto_2";
36
		set_proto="proto_2";
40
	fi
37
	fi
41
	
38
	
42
	if [ ${FILTER_ID:2:1} -eq '1' ]
39
	if [ ${FILTER_ID:2:1} -eq '1' ]
43
	then 
40
	then 
44
		set_proto="proto_3";
41
		set_proto="proto_3";
45
	fi
42
	fi
46
 
43
 
47
	if [ -z "$set_proto"  ]
44
	if [ -z "$set_proto" ]
48
	then 
45
	then 
49
		set_proto="proto_0";
46
		set_proto="proto_0";
50
	fi
47
	fi
51
fi
48
fi
52
 
49
 
53
if [ ${FILTER_ID:6:1} -eq '1' ] #HAVP_BL
50
if [ ${FILTER_ID:6:1} -eq '1' ] #HAVP_BL
54
then 
51
then 
55
	set="havp_bl"
52
	set="havp_bl"
56
	if [ ${FILTER_ID:0:1} -eq '1' ]
53
	if [ ${FILTER_ID:0:1} -eq '1' ]
57
	then 
54
	then 
58
		set_proto="proto_1";
55
		set_proto="proto_1";
59
	fi
56
	fi
60
 
57
 
61
	if [ ${FILTER_ID:1:1} -eq '1' ]
58
	if [ ${FILTER_ID:1:1} -eq '1' ]
62
	then 
59
	then 
63
		set_proto="proto_2";
60
		set_proto="proto_2";
64
	fi
61
	fi
65
	
62
	
66
	if [ ${FILTER_ID:2:1} -eq '1' ]
63
	if [ ${FILTER_ID:2:1} -eq '1' ]
67
	then 
64
	then 
68
		set_proto="proto_3";
65
		set_proto="proto_3";
69
	fi
66
	fi
70
 
67
 
71
	if [ -z "$set_proto"  ]
68
	if [ -z "$set_proto" ]
72
	then 
69
	then 
73
		set_proto="proto_0";
70
		set_proto="proto_0";
74
	fi
71
	fi
75
fi
72
fi
76
 
73
 
77
if [ ${FILTER_ID:5:1} -eq '1' ] #HAVP_WL
74
if [ ${FILTER_ID:5:1} -eq '1' ] #HAVP_WL
78
then 
75
then 
79
	set="havp_wl"
76
	set="havp_wl"
80
	if [ ${FILTER_ID:0:1} -eq '1' ]
77
	if [ ${FILTER_ID:0:1} -eq '1' ]
81
	then 
78
	then 
82
		set_proto="proto_1";
79
		set_proto="proto_1";
83
	fi
80
	fi
84
 
81
 
85
	if [ ${FILTER_ID:1:1} -eq '1' ]
82
	if [ ${FILTER_ID:1:1} -eq '1' ]
86
	then 
83
	then 
87
		set_proto="proto_2";
84
		set_proto="proto_2";
88
	fi
85
	fi
89
	
86
	
90
	if [ ${FILTER_ID:2:1} -eq '1' ]
87
	if [ ${FILTER_ID:2:1} -eq '1' ]
91
	then 
88
	then 
92
		set_proto="proto_3";
89
		set_proto="proto_3";
93
	fi
90
	fi
94
 
91
 
95
	if [ -z "$set_proto"  ]
92
	if [ -z "$set_proto" ]
96
	then 
93
	then 
97
		set_proto="proto_0";
94
		set_proto="proto_0";
98
	fi
95
	fi
99
fi
96
fi
100
 
97
 
101
 
98
 
102
 
99
 
103
if [ -z "$set"  ] #NOT_FILTERED
100
if [ -z "$set"  ] #NOT_FILTERED
104
then 
101
then 
105
	set="not_filtered"
102
	set="not_filtered"
106
	if [ ${FILTER_ID:0:1} -eq '1' ]
103
	if [ ${FILTER_ID:0:1} -eq '1' ]
107
	then 
104
	then 
108
		set_proto="proto_1";
105
		set_proto="proto_1";
109
	fi
106
	fi
110
 
107
 
111
	if [ ${FILTER_ID:1:1} -eq '1' ]
108
	if [ ${FILTER_ID:1:1} -eq '1' ]
112
	then 
109
	then 
113
		set_proto="proto_2";
110
		set_proto="proto_2";
114
	fi
111
	fi
115
	
112
	
116
	if [ ${FILTER_ID:2:1} -eq '1' ]
113
	if [ ${FILTER_ID:2:1} -eq '1' ]
117
	then 
114
	then 
118
		set_proto="proto_3";
115
		set_proto="proto_3";
119
	fi
116
	fi
120
 
117
 
121
	if [ -z "$set_proto"  ]
118
	if [ -z "$set_proto" ]
122
	then 
119
	then 
123
		set_proto="proto_0";
120
		set_proto="proto_0";
124
	fi
121
	fi
125
fi
122
fi
126
 
123
 
127
 
124
 
128
ipset del $set $FRAMED_IP_ADDRESS
125
ipset del $set $FRAMED_IP_ADDRESS
129
ipset del $set_proto $FRAMED_IP_ADDRESS
126
ipset del $set_proto $FRAMED_IP_ADDRESS
-
 
127
 
-
 
128
# Debug : show all the coova parse variables (+ $set + $set_proto).
-
 
129
# see "/src/chilli.c" for the complete list of parse variables
-
 
130
#echo "-----------------------------------------------" >> /tmp/debug-condown.txt
-
 
131
#echo `date` >> /tmp/debug-condown.txt
-
 
132
#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
-
 
133
#do
-
 
134
#	echo "$i : ${!i}" >> /tmp/debug-condown.txt
-
 
135
#done
-
 
136
#echo "set : $set" >> /tmp/debug-condown.txt
-
 
137
#echo "set_proto : $set_proto" >> /tmp/debug-condown.txt
130
 
138
 
-
 
139
 
-
 
140

Generated by GNU Enscript 1.6.6.
-
 
141
 
-
 
142
 
-
 
143