Wireshark-dev: Re: [Wireshark-dev] Wireshark PIDL generated dissectors
From: Matthieu Patou <mat@xxxxxxxxx>
Date: Mon, 07 Oct 2013 21:30:58 -0700
On 10/07/2013 12:47 PM, Joerg Mayer wrote:
<disclaimer>In reading this mail it sounds somewhat harsh. It's not
intended that way but I'm somewhat sleep deprived right now and don't
want to spend the time rephrasing it.</disclaimer>

On Mon, Oct 07, 2013 at 12:13:03AM -0700, Matthieu Patou wrote:
Which bugnumber(s) are still open?
Not answered.
None because ronnie took care of it but in the past I had a couple of them seating for a long time, after sometime I got fed up of doing this and now use side channels to get my patches in.

Sorry this is not an excuse
This is not an excuse, it's an explanation. Previously I cared about the
dissectors and tried to make sure that the pidl generated dissectors were
changed at the source. So it was manually monitored because this happened
time and again.

I mean you can complain that it's hard
to run pidl but if a file is autogenerated with a big fat warning at
the top you don't modify it by hand.
Actually it is quite easy to miss: Opening a file at a specific line
(first match of some RE) or running an automated script on a file.

[...] here it looks more like a bit of lazyness sure doing the right fix
is more complicated but in the long run it's a big win for
everybody.
Of course it is some sort of lazyness. But without that lazyness even more
patches remain unapplied (which is another of your complaints). What we
need is some way to notice that we are patching a generated file or to make
sure we "can't" modify generated files.
Code-review anyone ? hooks in subversion to actually do the regeneration of the file ?
  Your email caused a thread on how
to fix this problem *reliably* on wireshark-dev.
I'm glad that this has spawn this kind of reaction.
As I said in another thread:

"We might have some work to do to insure that the regenerating the
files for wireshark is as simple as checking out the samba-tree and
running the pidl command. "
So I need to check out a huge code base to just get a small tool?
In a way I'm encline to say "yes why not" but obviously there is better way to do it curl/rsync maybe, I can still hardly think that all the problems comes from the difficulty to download a huge code base.

  How about
moving pidl into a sub-git that can be ckecked out without needing to check
out the whole of samba?
I'm sorry I don't think it's a good idea.
Also maybe it would be nice that I can modify the page
http://wiki.wireshark.org/Pidl  to have a simple guide there too,
this page is way too complicated and ihmo not completely accurate.
As you are one of the people who are quite likely to know best what is
amiss with that page, the solution with the least total time invested
in the correction would probably be that you correct that page.
Sorry the page said immutable I'm not that familiar with moinmoin that I can understand all the subtilities of it.


That being said I did a bit of homework yesterday to fix the situation I have a branch fix_pidl in my gitorious repository that I maintain for wireshark: https://gitorious.org/wireshark/wireshark/commits/fix_pidl

With this branch and the latest version of the pidl in samba tree (that incorporate the change for Michael Mann) I'm able to regenerate and rebuild most of the dissectors. You might want to have a look at commit 27f5746 (https://gitorious.org/wireshark/wireshark/commit/27f5746163410acbf638cdce320fb1b8295fa682) that update the guide to explain and make it easy to generate the dissectors especially it explains how to avoid checking out the whole samba source tree but still get the latest version of Samba's pidl (minus the time it takes to update our rsync servers).
Are you interested to fetch those fixes ?

I'm currently working on bigger changes to the Wireshark module of pidl and I hope that they will fix the compilation for the remaining ones, so stay tuned.


--
Matthieu Patou
Samba Team
http://samba.org