Wireshark is adding official support for OpenFlow. You may already have it. This might explain why you have both openflow.so and packet-openflow.so, which seems strange to me offhand. The point being that you may not need to build an OpenFlow dissector yourself at all.
If you do want/need to build a dissector yourself, you probably don't want to use the one from the actual OpenFlow reference. The last time I built the original dissector, it was from this updated version: https://bitbucket.org/barnstorm/of-dissector You might find more help on the openflow-discuss list. -- Murphy On Aug 23, 2014, at 6:01 AM, 张伟 <zhang...@126.com> wrote: > Hi all, > > According to Murphy guidance, I want to install wireshark openflow plugin to > inspect the packets. After installing and run wireshark, I met this error: > Couldn't load module /home/guest/.wireshark/plugins/openflow.so > /home/guest/.wireshark/plugins/openflow.so undefined symbol:try_val_to_str > > ls -l /usr/lib/wireshark/libwireshark1/plugins/ > -rwxr-xr-x 1 root root 142851 Jun 24 22:46 openflow.so > -rw-r--r-- 1 root root 188763 Aug 23 08:45 packet-openflow.so > In openflow packet_openflow.c file, I have added > #define NO_STRINGS NULL > modify this function: > void proto_reg_handoff_openflow() > { > openflow_handle = create_dissector_handle(dissect_openflow, > proto_openflow); > //dissector_add(TCP_PORT_FILTER, global_openflow_proto, openflow_handle); > dissector_add_unit(TCP_PORT_FILTER, global_openflow_proto, > openflow_handle); > } > > Does anybody meet this problem and can give me some suggestions? > >