File: CVE-2013-6359.patch

package info (click to toggle)
munin 1.4.5-3+deb6u1
  • links: PTS, VCS
  • area: main
  • in suites: squeeze-lts
  • size: 4,988 kB
  • ctags: 806
  • sloc: perl: 8,936; sh: 3,105; java: 1,754; makefile: 585; python: 143
file content (53 lines) | stat: -rw-r--r-- 1,793 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
commit 4085e2db6c067bc4b8a30a154532d59fa38df0c4
Author: Christoph Biedl <debian.axhn@manchmal.in-ulm.de>
Date:   Tue Jul 22 21:38:58 2014 +0200

    Don't abort data collection for a node due to malicious node (munin#1397)

diff --git a/master/lib/Munin/Master/Node.pm b/master/lib/Munin/Master/Node.pm
index 0a0d6f4..4936889 100644
--- a/master/lib/Munin/Master/Node.pm
+++ b/master/lib/Munin/Master/Node.pm
@@ -227,17 +227,18 @@ sub parse_service_config {
         next if $line =~ /^\#/;
 
 	if ($line =~ m{\A multigraph \s+ (.+) }xms) {
-	    $correct++;
-
 	    push_graphorder($service);
 
 	    $service = $1;
 
 	    if ($service eq 'multigraph') {
-		die "[ERROR] SERVICE can't be named \"$service\" in plugin $plugin on ".$self->{host}."/".$self->{address}."/".$self->{port};
+		ERROR "[ERROR] SERVICE can't be named \"$service\" in plugin $plugin on ".$self->{host}."/".$self->{address}."/".$self->{port};
+                $errors++;
+                last;
 	    }
 	    new_service($service);
 	    DEBUG "[CONFIG multigraph $plugin] Service is now $service";
+	    $correct++;
 	}
 	elsif ($line =~ m{\A ([^\s\.]+) \s+ (.+) }xms) {
 	    $correct++;
@@ -338,16 +339,16 @@ sub parse_service_data {
         next if $line =~ /^\#/;
 
 	if ($line =~ m{\A multigraph \s+ (.+) }xms) {
-	    $correct++;
-
 	    $service = $1;
-	    $values{$service} = {};
 
 	    if ($service eq 'multigraph') {
+                $errors++;
 		ERROR "[ERROR] SERVICE can't be named \"$service\" in plugin $plugin on ".
 		    $nodedesignation;
-		croak("Plugin error.  Please consult the log.");
+                last;
 	    }
+	    $values{$service} = {};
+	    $correct++;
 	}
 	elsif ($line =~ m{\A ([^\.]+)\.value \s+ ([\S:]+) }xms) {
             my ($data_source, $value, $when) = ($1, $2, 'N');