Hello everyone,

I will describe my case below, but I'm sending my questions ahead:

1. Is the evidence sufficient to prove code theft? Reason enough for a "cease and 
desist" request?

2. Does anyone have a recommendation for a lawyer who is familiar with the 
subject?

(I'm in Germany, by the way)


Here is the case:

I'm the author and maintainer of the Linux tool "usb_modeswitch" which includes several 
components to bring 3G/4G USB modems and several other devices from "Windows Installer" 
mode to their actual working mode.

It's far from being a piece of art, but I have collected a large bunch of 
device-specific knowledge; all major Linux distributions have it included by 
now. It is released under the GPL V2 or later.

At the end of May 2013, I bought a cheap tablet "TP7-1000DC (light)" from the 
German manufacturer i-onik:
http://i-onik.de/tp7zoll-dualcore

In the file system of the device I discovered these files:
usbdongle
usbdongled
libusbdongle.so

These were obviously involved in preparing and using 3G USB modems on the 
tablet.



Now, when I ran the "usbdongle" binary from the command line, it said:

Usage: usb_modeswitch [OPTION]
...


I dug into the binary "libusbdongle.so" and found these literal strings which 
are *identical* to the ones in usb_modeswitch:

MessageContent %d hex string has uneven length. Skipping ...
Trying to send message %d to endpoint 0x%02x ...
Looking for active driver ...
No driver found. Either detached before or never attached
OK, driver found ("%s")
Driver "%s" detach failed with error %d. Trying to continue
OK, driver "%s" detached
Sending Huawei control message ...
Error: sending Huawei control message failed (error %d). Aborting.
OK, Huawei control message sent
Accessing device %03d on bus %03d ...
Ambiguous Class/InterfaceClass: 0x%02x/0x08
Error: send endpoint not given or found. Aborting.
Error: respond endpoint not given or found. Aborting.
Error: could not get description string "manufacturer"
Error: could not get description string "product"
Error: could not get description string "serial number"
USB description data (for identification)
-------------------------
Manufacturer: %s
     Product: %s
  Serial No.: %s
Setting up communication with interface %d ...
 Could not claim interface (error %d). Skipping message sending
Using endpoint 0x%02x for message sending ...
Reading the response to the message (CSW) ...
Resetting response endpoint 0x%02x
Error resetting endpoint: %d
Resetting message endpoint 0x%02x
 Reset failed. Can be ignored if device switched OK.
OK, device was reset


I contacted the manufacturer "i-onik"; they were quick to release the kernel source code 
- even the whole firmware sources - which was commendable, but no source code of 
"usbdongle". They promised to take care of it, but I haven't heard of them in six weeks.
I have sent them a reminder but won't hold my breath.

Here is a link to a package with the binary files in question:
http://www.draisberghof.de/usb_modeswitch/usbdongle.zip

Here is a link to the source code of usb_modeswitch from 2011:
http://www.draisberghof.de/usb_modeswitch/usb-modeswitch-1.1.7.tar.bz2

I chose this older version because there was a copyright notice in 
"libusbdongle.so" stating:
(C), 2011-2012 Cathay Communication Co., LTD.


Sorry for the lengthy message and thanks for the review!

Best regards,
Josua Dietze

Reply via email to