]> git.ipfire.org Git - ipfire-2.x.git/commitdiff
allow changing remote syslog protocol to TCP
authorPeter Müller <peter.mueller@link38.eu>
Mon, 20 Nov 2017 18:40:17 +0000 (19:40 +0100)
committerMichael Tremer <michael.tremer@ipfire.org>
Tue, 28 Nov 2017 17:46:01 +0000 (17:46 +0000)
Add option to change remote syslog protocol to TCP, which
is more reliable than UDP, but might be unsupported  on
older syslog servers.

Signed-off-by: Peter Müller <peter.mueller@link38.eu>
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
html/cgi-bin/logs.cgi/config.dat

index 789341dbece41aeee32bda43330b3a31a235f6b8..aed0db9cf1e1af06bbd5c979f23691786593dd8b 100644 (file)
@@ -33,6 +33,7 @@ $logsettings{'LOGWATCH_KEEP'} = '56';
 my @VS = ('15','50','100','150','250','500');
 $logsettings{'ENABLE_REMOTELOG'} = 'off';
 $logsettings{'REMOTELOG_ADDR'} = '';
 my @VS = ('15','50','100','150','250','500');
 $logsettings{'ENABLE_REMOTELOG'} = 'off';
 $logsettings{'REMOTELOG_ADDR'} = '';
+$logsettings{'REMOTELOG_PROTOCOL'} = 'udp';
 $logsettings{'ACTION'} = '';
 &Header::getcgihash(\%logsettings);
 
 $logsettings{'ACTION'} = '';
 &Header::getcgihash(\%logsettings);
 
@@ -45,6 +46,10 @@ if ($logsettings{'ACTION'} eq $Lang::tr{'save'})
     {
       $errormessage = $Lang::tr{'invalid logserver address'};
     }
     {
       $errormessage = $Lang::tr{'invalid logserver address'};
     }
+    unless ($logsettings{'REMOTELOG_PROTOCOL'} =~ /^udp|tcp$/)
+    {
+      $errormessage = $Lang::tr{'invalid logserver protocol'};
+    }
   }
   unless ($logsettings{'LOGWATCH_KEEP'} =~ /^\d+$/)
   {
   }
   unless ($logsettings{'LOGWATCH_KEEP'} =~ /^\d+$/)
   {
@@ -69,6 +74,10 @@ $checked{'ENABLE_REMOTELOG'}{'off'} = '';
 $checked{'ENABLE_REMOTELOG'}{'on'} = '';
 $checked{'ENABLE_REMOTELOG'}{$logsettings{'ENABLE_REMOTELOG'}} = "checked='checked'";
 
 $checked{'ENABLE_REMOTELOG'}{'on'} = '';
 $checked{'ENABLE_REMOTELOG'}{$logsettings{'ENABLE_REMOTELOG'}} = "checked='checked'";
 
+$selected{'REMOTELOG_PROTOCOL'}{'udp'} = '';
+$selected{'REMOTELOG_PROTOCOL'}{'tcp'} == '';
+$selected{'REMOTELOG_PROTOCOL'}{$logsettings{'REMOTELOG_PROTOCOL'}} = "selected='selected'";
+
 $checked{'LOGVIEW_REVERSE'}{'off'} = '';
 $checked{'LOGVIEW_REVERSE'}{'on'} = '';
 $checked{'LOGVIEW_REVERSE'}{$logsettings{'LOGVIEW_REVERSE'}} = "checked='checked'";
 $checked{'LOGVIEW_REVERSE'}{'off'} = '';
 $checked{'LOGVIEW_REVERSE'}{'on'} = '';
 $checked{'LOGVIEW_REVERSE'}{$logsettings{'LOGVIEW_REVERSE'}} = "checked='checked'";
@@ -139,6 +148,11 @@ print <<END
 <tr>
   <td class='base'>$Lang::tr{'enabled'}</td><td><input type='checkbox' name='ENABLE_REMOTELOG' $checked{'ENABLE_REMOTELOG'}{'on'} /></td>
   <td>$Lang::tr{'log server address'}</td><td><input type='text' name='REMOTELOG_ADDR' value='$logsettings{'REMOTELOG_ADDR'}' /></td>
 <tr>
   <td class='base'>$Lang::tr{'enabled'}</td><td><input type='checkbox' name='ENABLE_REMOTELOG' $checked{'ENABLE_REMOTELOG'}{'on'} /></td>
   <td>$Lang::tr{'log server address'}</td><td><input type='text' name='REMOTELOG_ADDR' value='$logsettings{'REMOTELOG_ADDR'}' /></td>
+  <td>$Lang::tr{'log server protocol'}</td><td>
+  <select name='REMOTELOG_PROTOCOL'>
+  <option value='udp' $selected{'REMOTELOG_PROTOCOL'}{'udp'}>$Lang::tr{'udp less overhead'}</option>
+  <option value='tcp' $selected{'REMOTELOG_PROTOCOL'}{'tcp'}>$Lang::tr{'tcp more reliable'}</option>
+  </select></td>
 </tr>
 </table>
 END
 </tr>
 </table>
 END