]> git.ipfire.org Git - thirdparty/freeradius-server.git/commitdiff
Data usage for MySQL: Run SP as invoker not definer (#4202)
authorTerry Burton <tez@terryburton.co.uk>
Fri, 20 Aug 2021 18:49:48 +0000 (19:49 +0100)
committerGitHub <noreply@github.com>
Fri, 20 Aug 2021 18:49:48 +0000 (14:49 -0400)
raddb/mods-config/sql/main/mysql/process-radacct.sql

index d0e77b93222af0476e2a3987d055abe39e733960..8cd0bd25dcc9a17ec50f947f909b79d2e448bdc4 100644 (file)
@@ -78,11 +78,18 @@ DELIMITER $$
 
 DROP PROCEDURE IF EXISTS fr_new_data_usage_period;
 CREATE PROCEDURE fr_new_data_usage_period ()
+SQL SECURITY INVOKER
 BEGIN
 
     DECLARE v_start DATETIME;
     DECLARE v_end DATETIME;
 
+    DECLARE EXIT HANDLER FOR SQLEXCEPTION
+    BEGIN
+        ROLLBACK;
+        RESIGNAL;
+    END;
+
     SELECT IFNULL(DATE_ADD(MAX(period_end), INTERVAL 1 SECOND), FROM_UNIXTIME(0)) INTO v_start FROM data_usage_by_period;
     SELECT NOW() INTO v_end;