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

index c73b82b702703bfdb7a5e4f2d9bb1c3699398b2f..696fe6e2821e06dbb6dbc95c4a3d247087720165 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;