seuffert / XBSlink

XBSlink the XBox360 & PS3/2 System Link Proxy
https://www.seuffert.biz/xbslink/
27 stars 18 forks source link

Linux: Fatal exception when trying to list or open capture devices #14

Open YoRyan opened 10 years ago

YoRyan commented 10 years ago

Been experimenting with headless XBSlink on the Odroid U2, a Linux ARM machine.

mono 2.10.9, libpcap 1.5.1, Linux kernel 3.8.13

Linux raptor 3.8.13.14-1-ARCH #3 SMP PREEMPT Mon Dec 30 10:03:31 MST 2013 armv7l GNU/Linux

I can run the XBSlink executable itself just fine and print out the help text, but attempting to use the "-l" option results in a fatal exception. This also happens when attempting to run the program normally and specifying the capture device with "-i eth0".

% mono XBSlink.exe -l
XBSlink Version 0.9.6.0

Unhandled Exception: System.NullReferenceException: Object reference not set to an instance of an object
  at XBSlink.xbs_console_app.loadCaptureDeviceList () [0x00000] in <filename unknown>:0 
  at XBSlink.xbs_console_app.initCaptureDeviceList () [0x00000] in <filename unknown>:0 
  at XBSlink.xbs_console_app.parse_command_line (System.String[] args) [0x00000] in <filename unknown>:0 
  at XBSlink.xbs_console_app.run (XBSlink.xbs_settings settings, System.String[] args) [0x00000] in <filename unknown>:0 
  at XBSlink.Program.Main (System.String[] args) [0x00000] in <filename unknown>:0 
[ERROR] FATAL UNHANDLED EXCEPTION: System.NullReferenceException: Object reference not set to an instance of an object
  at XBSlink.xbs_console_app.loadCaptureDeviceList () [0x00000] in <filename unknown>:0 
  at XBSlink.xbs_console_app.initCaptureDeviceList () [0x00000] in <filename unknown>:0 
  at XBSlink.xbs_console_app.parse_command_line (System.String[] args) [0x00000] in <filename unknown>:0 
  at XBSlink.xbs_console_app.run (XBSlink.xbs_settings settings, System.String[] args) [0x00000] in <filename unknown>:0 
  at XBSlink.Program.Main (System.String[] args) [0x00000] in <filename unknown>:0 

And here's a list of network interfaces on my system:

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default 
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000
    link/ether be:93:e9:60:c9:5b brd ff:ff:ff:ff:ff:ff
4: dns0: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1130 qdisc pfifo_fast state UNKNOWN mode DEFAULT group default qlen 500
    link/none 
KenSharp commented 8 years ago

No change two years later.

benpicco commented 6 years ago

I had to create a symlink

sudo ln -s libpcap.so.1.8.1 libpcap.so.1.1.1 in /usr/lib/$(uname -m)-linux-gnu

KenSharp commented 6 years ago

Thanks, that did it. Although you can create a local link so as not to upset the system.

I guess the code is being too specific when looking for libpcap.