Subversion Repositories ALCASAR

Rev

Rev 2183 | Rev 2234 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log

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