On 28/09/2011 11:45, Alan DeKok wrote:
Fabien COMBERNOUS wrote:
here a patch proposed :
A bit of explanation would help.
Foreign key : add a username in radusergroup table needs to exist in
radcheck table and be equal.
On cascade : if you update ou delete a username in radcheck table, the
same action is done in radusergroup table.
It looks reasonable, but I'd want someone to try it before putting it
into the server.
--- schema_orig.sql 2011-09-28 10:42:08.000000000 +0200
*PLEASE* use full paths. There are 4-5 SQL backends in the server.
Which one is this modifying? Don't make us guess...
+++ schema_withFK.sql 2011-09-28 10:46:42.000000000 +0200
@@ -63,8 +63,8 @@
op char(2) NOT NULL DEFAULT '==',
value varchar(253) NOT NULL default '',
PRIMARY KEY (id),
- KEY username (username(32))
-) ;
+ KEY username (username)
+) ENGINE=InnoDB;
#
# Table structure for table 'radgroupcheck'
@@ -117,8 +117,10 @@
username varchar(64) NOT NULL default '',
groupname varchar(64) NOT NULL default '',
priority int(11) NOT NULL default '1',
- KEY username (username(32))
-) ;
+ INDEX username (username),
+ FOREIGN KEY (`username`) REFERENCES radcheck(username)
+ ON DELETE CASCADE ON UPDATE CASCADE
+) ENGINE=InnoDB;
-
List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html
--
*Fabien COMBERNOUS*
/unix system engineer/
www.kezia.com <http://www.kezia.com/>
*Tel: +33(0)9 5279 5202*
Kezia
-
List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html