이미이 질문을 Wireshark 커뮤니티 (Link)에 게시했지만 현재 아직 답변이 없습니다. 지금은 (윈도우 10에서) tshark를 함께 사용하려면 -tshark (Windows 10)을 사용할 때 Lua 해독기가 호출되지 않습니다.
는 내가 지금까지 와이어 샤크 GUI에 사용되는 I 루아에 쓴 dissectors의 무리가 있습니다. 문제는 내 해부 중 하나가 tshark에서 호출 될 때 작동하지 않는다는 것입니다 (초기화 되더라도). tshark는 다른 모든 해부 체가 정상적으로 작동하더라도 패킷을 전혀 출력하지 않습니다.
function myproto.init()
info("Initialization of myproto dissector")
end
function myproto.dissector(buffer, packet_info, tree)
info("dissector successfully called")
[...]
end
아무것도 특별한 실제로, 상기 해부학자 자체가 보이는 동안 나는
[...]
info("calling dissector")
Dissector.get("myproto"):call(payload_tvb, packet_info, tree)
내 다른 dissectors 중 하나에서 해부학자를 호출하고 있습니다. 로그에서 절제자가 초기화된다는 것을 알 수 있습니다. 그러나 tshark를 사용하여 .pcapng 파일을 열면 "dissector successfully called"라는 로그 메시지가 인쇄되지 않고 Wireshark GUI에서는 인쇄됩니다.
오류 메시지가 표시되지 않으므로 문제가 무엇인지 알 수 없습니다. getDissector 함수 호출은 nil을 반환하지 않습니다. lua 파일은 내 AppData \ Roaming \ Wireshark \ plugins 디렉토리에 있으며, tshark에는 문제가없는 것 같습니다. 아무도이 절개사에 대해 잘못된 생각을 갖고 있습니까? 어떤 도움을 주셔서 감사합니다, 미리 감사드립니다.
맞아요,'getDisector()'는 실제 호출을'Dissector.get()'에 캡슐화하기 위해 작성한 유틸리티 함수입니다. 나는 예제 코드를 단순화했다. –