YangSiJun528 commented on PR #2360:
URL: https://github.com/apache/iggy/pull/2360#issuecomment-3555849179

   Thanks for the detailed feedback and suggestions!
   
   I'll switch to using the `rtshark` crate and integrate with the 
core/integration setup as you suggested.
   
   Thanks for reporting the command 302 bug - I'll fix it.
   
   ---
   
   I have some thoughts about the direction we should take:
   
   > ... maybe you can look at other popular application-level protocol 
dissectors like kafka/redis/zeromq and check how they are structured, and use 
it as an inspiration?
   
   I looked at how popular open-source protocols implement their dissectors - 
protocols like 
[MySQL](https://gitlab.com/wireshark/wireshark/-/blob/master/epan/dissectors/packet-mysql.c),
 
[PostgreSQL](https://gitlab.com/wireshark/wireshark/-/blob/master/epan/dissectors/packet-pgsql.c),
 and 
[gRPC](https://gitlab.com/wireshark/wireshark/-/blob/master/epan/dissectors/packet-grpc.c)
 are contributed directly to Wireshark's main repository, and it appears many 
are contributed by external contributors. They're all written in C. [Here's a 
PR with ZMTP](https://gitlab.com/wireshark/wireshark/-/merge_requests/14947).
   
   I think eventually adding Iggy to official Wireshark would be ideal. 
   
   However, this seems difficult right now. 
   The protocol may still change (Is that correct?), and with many commands to 
implement, even a Lua implementation would require thousands of lines of code.
   
   That's why I think the code generation approach makes sense. It lowers the 
contribution barrier and allows flexible adaptation to protocol changes. 
   But considering the abundance of C-based dissector implementations we can 
reference and the potential future work of integrating into Wireshark's source 
code, generating C dissector plugins instead of Lua might be better.
   
   So I'm thinking of implementing code generation that produces C-based 
Wireshark dissector plugins rather than Lua. 
   What do you think about this approach?


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to