Subversion Repositories ALCASAR

Rev

Rev 2184 | Rev 2249 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log

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