pidl-wireshark: add the type dom_sid28 and call ad-hoc dissector
authorMatthieu Patou <mat@matws.net>
Tue, 1 Oct 2013 19:04:02 +0000 (12:04 -0700)
committerStefan Metzmacher <metze@samba.org>
Mon, 4 Nov 2013 11:19:28 +0000 (12:19 +0100)
Signed-off-by: Matthieu Patou <mat@matws.net>
Reviewed-by: Stefan Metzmacher <metze@samba.org>
pidl/lib/Parse/Pidl/Wireshark/NDR.pm

index 9f34d1e5be566b59cd191eb0230caf192a754e20..8847cd74a14b93cd3c5c855ba6f2c8147b4695fa 100644 (file)
@@ -1038,13 +1038,19 @@ sub Initialize($$)
        $self->register_type("NTTIME_hyper", "offset = dissect_ndr_nt_NTTIME(tvb, offset, pinfo, tree, drep, \@HF\@);","FT_ABSOLUTE_TIME", "ABSOLUTE_TIME_LOCAL", 0, "NULL", 4);
        $self->register_type("time_t", "offset = dissect_ndr_time_t(tvb, offset, pinfo,tree, drep, \@HF\@, NULL);","FT_ABSOLUTE_TIME", "ABSOLUTE_TIME_LOCAL", 0, "NULL", 4);
        $self->register_type("NTTIME_1sec", "offset = dissect_ndr_nt_NTTIME(tvb, offset, pinfo, tree, drep, \@HF\@);", "FT_ABSOLUTE_TIME", "ABSOLUTE_TIME_LOCAL", 0, "NULL", 4);
-       $self->register_type("SID", "
+       $self->register_type("dom_sid28", "{
+               dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
+               di->hf_index = \@HF\@;
+
+               offset = dissect_ndr_nt_SID28(tvb, offset, pinfo, tree, drep);
+       }", "FT_STRING", "BASE_NONE", 0, "NULL", 4);
+       $self->register_type("SID", "{
                dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
 
                di->hf_index = \@HF\@;
 
                offset = dissect_ndr_nt_SID_with_options(tvb, offset, pinfo, tree, drep, param);
-       ","FT_STRING", "BASE_NONE", 0, "NULL", 4);
+       }", "FT_STRING", "BASE_NONE", 0, "NULL", 4);
        $self->register_type("WERROR", 
                "offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, \@HF\@, \@PARAM\@);","FT_UINT32", "BASE_DEC", 0, "VALS(WERR_errors)", 4);
        $self->register_type("NTSTATUS",