ok, further research. I discovered that I probably want to write a usb mtp (media transfer protocol) driver for the BBB. if anyone has already written one, please let me know.
On Saturday, October 25, 2014 8:48:38 PM UTC-7, ivo welch wrote: > > > dear BBB experts: I would like to create a high-level filesystem device > on my BBB that my (possibly malicious) linux PC can communicate with over > USB in EHCI (USB 2.0 high-speed). I will want to switch off everything > else, incl ethernet-over-usb, again because I will guess that my PC is > infected. > > from the PC perspective, I want the BBB to operate at roughly at the level > of a fuse filesystem, albeit with its own processor that can enforce > separation. > > most importantly, I would like the BBB to hook into the "open file" > request call. for example, I want my BBB to log every file open request to > its own /tmp/log/file-logged, return an error if I don't like the filename, > mangle the filename (e.g., shorten it of auto-expand it), or disallow > opening a file for write when a pin is bridged or when the file resides in > the /ro/ part of the file system or the filename contains the string "ro". > > on the PC, I want to do > > PC$ mount -t speak2mybbb /dev/usb1 /mnt/usb1 ## say my BBB sits on > /dev/usb1 > PC$ echo "hi" > /mnt/usb1/rw/file2 ## create a file > PC$ ls /mnt/usb1/rw/ ## note: my BBB has mangled the filename > file2-mangled-file-name > PC$ cat /mnt/usb1/rw/file2-remangleme ## note: my BBB can remangle > and figure this out > hi > PC$ echo "hi" > /mnt/usb1/ro/file2 ## note: my BBB knows that /ro/ is > read-only and does not allow writing here. > ERROR: no such file or directory > PC$ umount /dev/usb1 > > at first, I thought I should hook into the USB mass storage driver, > because it already does EHCI and reading the USB spec, there is a lot of > stuff that can go wrong. but the problem, I believe, is that this layer > operates at too low a level. I deduct this because it supports many > different higher-level file systems, like FAT or ext4. presumably, the > USB-mass storage level is primarily "sector-read" and "sector-write," which > would make it very difficult to hook into a file-open. > > the USB serial driver works and would allow me to filter requests, and I > could write a fuse driver on the PC (not the BBB), but USB serial is slow. > > has anyone created an EHCI fuse-like file-system communication example? > any pointers by experts would be highly appreciated. > > regards, > > /iaw > > -- For more options, visit http://beagleboard.org/discuss --- You received this message because you are subscribed to the Google Groups "BeagleBoard" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
