Remove check_col from generated DCE/RPC dissectors.
authorMatthieu Patou <mat@matws.net>
Sun, 6 Oct 2013 08:31:35 +0000 (01:31 -0700)
committerMatthieu Patou <mat@samba.org>
Mon, 7 Oct 2013 06:09:51 +0000 (08:09 +0200)
This is a backport of
http://anonsvn.wireshark.org/viewvc?view=revision&revision=52313

Bug 8804 (https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=8804).

Signed-off-by: Matthieu Patou <mat@matws.net>
Reviewed-by: Andrew Bartlett <abartlett@samba.org>
Autobuild-User(master): Matthieu Patou <mat@samba.org>
Autobuild-Date(master): Mon Oct  7 08:09:51 CEST 2013 on sn-devel-104

pidl/lib/Parse/Pidl/Wireshark/NDR.pm

index 9c4993107981193bb887fb5d63ad30edbb1751ef..1151dc0807e93e67c4966cf49a6c96c38b79ca04 100644 (file)
@@ -534,12 +534,12 @@ sub Function($$$)
        if (not defined($fn->{RETURN_TYPE})) {
        } elsif ($fn->{RETURN_TYPE} eq "NTSTATUS") {
                $self->pidl_code("offset = dissect_ntstatus(tvb, offset, pinfo, tree, drep, hf\_$ifname\_status, &status);\n");
-               $self->pidl_code("if (status != 0 && check_col(pinfo->cinfo, COL_INFO))");
+               $self->pidl_code("if (status != 0)");
                $self->pidl_code("\tcol_append_fstr(pinfo->cinfo, COL_INFO, \", Error: %s\", val_to_str(status, NT_errors, \"Unknown NT status 0x%08x\"));\n");
                $return_types{$ifname}->{"status"} = ["NTSTATUS", "NT Error"];
        } elsif ($fn->{RETURN_TYPE} eq "WERROR") {
                $self->pidl_code("offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf\_$ifname\_werror, &status);\n");
-               $self->pidl_code("if (status != 0 && check_col(pinfo->cinfo, COL_INFO))");
+               $self->pidl_code("if (status != 0)");
                $self->pidl_code("\tcol_append_fstr(pinfo->cinfo, COL_INFO, \", Error: %s\", val_to_str(status, WERR_errors, \"Unknown DOS error 0x%08x\"));\n");
                
                $return_types{$ifname}->{"werror"} = ["WERROR", "Windows Error"];
@@ -549,12 +549,12 @@ sub Function($$$)
                        my $return_dissect = "dissect_ndr_" .Parse::Pidl::Typelist::enum_type_fn($type->{DATA});
 
                        $self->pidl_code("offset = $return_dissect(tvb, offset, pinfo, tree, drep, hf\_$ifname\_$fn->{RETURN_TYPE}_status, &status);");
-                       $self->pidl_code("if (status != 0 && check_col(pinfo->cinfo, COL_INFO))");
+                       $self->pidl_code("if (status != 0)");
                        $self->pidl_code("\tcol_append_fstr(pinfo->cinfo, COL_INFO, \", Status: %s\", val_to_str(status, $ifname\_$fn->{RETURN_TYPE}\_vals, \"Unknown " . $fn->{RETURN_TYPE} . " error 0x%08x\"));\n");
                        $return_types{$ifname}->{$fn->{RETURN_TYPE}."_status"} = [$fn->{RETURN_TYPE}, $fn->{RETURN_TYPE}];
                } elsif ($type->{DATA}->{TYPE} eq "SCALAR") {
                        $self->pidl_code("offset = dissect_ndr_$fn->{RETURN_TYPE}(tvb, offset, pinfo, tree, drep, hf\_$ifname\_$fn->{RETURN_TYPE}_status, &status);");
-                       $self->pidl_code("if (status != 0 && check_col(pinfo->cinfo, COL_INFO))");
+                       $self->pidl_code("if (status != 0)");
                        $self->pidl_code("\tcol_append_fstr(pinfo->cinfo, COL_INFO, \", Status: %d\", status);\n");
                        $return_types{$ifname}->{$fn->{RETURN_TYPE}."_status"} = [$fn->{RETURN_TYPE}, $fn->{RETURN_TYPE}];
                }