projects
/
spider.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
made all protocol except PC29 reject %xx characters
[spider.git]
/
perl
/
DXProt.pm
diff --git
a/perl/DXProt.pm
b/perl/DXProt.pm
index 30b1b27899a773acd6c12930719acf8e6377d73c..7d429b1b7c3aa74375294b23169721742863f2c6 100644
(file)
--- a/
perl/DXProt.pm
+++ b/
perl/DXProt.pm
@@
-149,7
+149,13
@@
sub normal
my ($pcno) = $field[0] =~ /^PC(\d\d)/; # just get the number
return unless $pcno;
return if $pcno < 10 || $pcno > 51;
my ($pcno) = $field[0] =~ /^PC(\d\d)/; # just get the number
return unless $pcno;
return if $pcno < 10 || $pcno > 51;
-
+
+ # dump bad protocol messages unless it is a PC29
+ if ($line =~ /\%[0-9A-F][0-9A-F]/o && $pcno != 29) {
+ dbg('chan', "CORRUPT protocol message - dumped");
+ return;
+ }
+
# local processing 1
my $pcr;
eval {
# local processing 1
my $pcr;
eval {