Magellan Linux

Contents of /mcore-src/trunk/mcore-tools/daemon/include/sessionauth.global.class

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1306 - (show annotations) (download)
Sun Feb 6 23:46:42 2011 UTC (13 years, 2 months ago) by niro
File size: 2692 byte(s)
-renamed validate_session() to valid_session()
1 # $Id$
2
3 provide auth ssl
4
5 PASSWD="/etc/mcoredpasswd"
6
7 md5crypt()
8 {
9 local pass="$1"
10 md5sum << EOF | sed 's:\(.*\)\ \ .*-.*:\1:'
11 ${pass}
12 EOF
13 }
14
15 mcorepasswd()
16 {
17 local user="$1"
18 local pass
19 local validate
20
21 if [[ -z ${user} ]]
22 then
23 echo "No username given! Aborting."
24 return 1
25 fi
26
27 # get pass
28 echo -n "Enter Password: "
29 stty -echo
30 read pass
31 stty echo
32 echo
33
34 echo -n "Retype Password: "
35 stty -echo
36 read validate
37 stty echo
38 echo
39
40 if [[ ${pass} == ${validate} ]]
41 then
42 # encrypt and save
43 echo "${user}:$(md5crypt ${pass})" > ${PASSWD}
44 echo "Password for user '${user}' changed by $(id -u -n)."
45 else
46 echo "Passwords don't match!"
47 echo "Password for user '${user}' is unchanged."
48 return 1
49 fi
50
51 }
52
53 ## validate_auth $user $pass
54 #validate_auth()
55 #{
56 # local user="$1"
57 # local pass="$2"
58 # local dbuser
59 #
60 # # return 0 if ${valid_auth=yes} - user alread authenticated
61 # validate_session && return 0
62 #
63 # if [[ ${DEBUG} = 1 ]]
64 # then
65 # echo "user=${user}" >> /root/lala.log
66 # echo "pass=${pass}" >> /root/lala.log
67 # echo "mysqldo \"select user from control_auth where pass=MD5('${pass}')\"" >> /root/lala.log
68 # echo $(mysqldo "select user from control_auth where pass=MD5('${pass}')") >> /root/lala.log
69 # fi
70 #
71 # dbuser=$(mysqldo "select user from control_auth where pass=MD5('${pass}')")
72 # if [[ ! -z ${dbuser} ]]
73 # then
74 # # check if the returned username is equal the given one
75 # if [[ ${dbuser} = ${user} ]]
76 # then
77 # # register a valid session
78 # echo "auth valid"
79 # export valid_session=yes
80 # return 0
81 # fi
82 # fi
83 #
84 # # if we get here, the auth is invalid
85 # echo "auth invalid"
86 # export valid_session=no
87 # return 1
88 #}
89
90
91 validate_auth()
92 {
93 local user="$1"
94 local pass="$2"
95
96 local passwduser
97 local passwdpass
98
99 # return 0 if ${valid_auth=yes} - user alread authenticated
100 valid_session && return 0
101
102 if [[ ! -f ${PASSWD} ]]
103 then
104 echo "passwd '${PASSWD}' does not exist!"
105 return 1
106 fi
107
108 passwduser=$(grep "^${user}:" ${PASSWD} | cut -d: -f1)
109 passwdpass=$(grep "^${user}:" ${PASSWD} | cut -d: -f2)
110
111 if [[ -n ${passwduser} ]]
112 then
113 if [[ $(md5crypt ${pass}) == ${passwdpass} ]]
114 then
115 echo "password for user '${user}' is valid!"
116 mecho "Successfully logged in. Type 'help' for more information."
117 export valid_session="yes"
118 return 0
119 else
120 echo "password for user '${user}' is invalid!"
121 export valid_session="no"
122 return 1
123 fi
124 else
125 echo "User '${user}' unkown."
126 export valid_session="no"
127 return 1
128 fi
129 }
130
131 valid_session()
132 {
133 if [[ ${valid_session} = yes ]]
134 then
135 return 0
136 else
137 return 1
138 fi
139 }
140
141 invalid_session()
142 {
143 if [[ ${valid_session} != yes ]]
144 then
145 echo "not logged in..."
146 # export quit signal
147 export run=quit
148 fi
149 }