.TH MOUSEFS 4 .SH NAME mousefs, kbdfs \- file systems for mouse and keyboard network redirection .SH SYNOPSIS .B mousefs [ .B -AdD ] [ .B -m .I mnt ] [ .B -n .I addr ] [ .B -V .I vol ] .PP .B kbdfs [ .B -AdD ] [ .B -m .I mnt ] [ .B -n .I addr ] [ .B -V .I vol ] .SH DESCRIPTION .I Mousefs wraps the local mouse to permit mouse redirection. This program exports a file system with just two files: .B mouse and .BR mousectl . These files behave as said in .IR mouse (3). By default, .I mousefs mounts itself at .B /dev before existing devices, or at .I mnt if .B -m says so. .PP .I Kbdfs performs the similar task for the keyboard, and supplies .B cons (compatible with .IR cons (3)) and .B kbdctl files. .PP Besides forwarding events from the underlying device to the process(es) using the files provided, .I mousefs and .I kbdfs listen for remote calls from other instances of the programs. Any event sent from a remote peer will be handled as if sent from the local device. This permits other machines to send mouse and keyboard events to the machine where the programs run. .PP Calls can be initiated by a write of .B call \fIaddress\fP to the .B mousectl file exported by .I mousefs or to the .B kbdctl file exported by .IR kbdfs . In this case, the program connects to such system (using .B tcp and .B mouse as the default network and port) and redirects events from the local device to that connection. A special address .B local is understood, meaning the local system. .PP In the case of the mouse, writes to .B /dev/mouse while the system is being called cause event forwarding to the calling system, to permit mouse teleporting (e.g., like done by .IR acme (1)). .PP To cancel an outgoing call, press mouse button 1 while at the top-left corner of the screen (or window) that is donating its mouse. This reclaims the mouse for local usage. .PP Any connection (no matter who initiated it) can be cancelled by a write of .B close \fIaddress\fP to the .B mousectl or .B kbdctl file. .PP When .I kbdfs is started before, .I mousefs arranges for the keyboard to be redirected along with the mouse. This requires .I kbdfs to be started in the machines involved. .I Mousefs assumes that the port for a .I kbdfs is one plus the port for the corresponding .I mousefs in that system. .PP .IR Oscreen (1) provides a more convenient user interface to both programs. .PP Factotum is used to authenticate with peers. Any protocol supported by .IR factotum (4) can be used. Option .B -A disables authentication, option .B -V can be used to announce a volume, as said in .IR planb (4). .SH SOURCE .B /sys/src/cmd/mousefs.c .br .B /sys/src/cmd/kbdfs.c .SH "SEE ALSO" .IR oscreen (1), and .IR mouse (3). .SH BUGS The programs try to avoid loops by refusing to call others while being called, and by refusing to call their own address. However, by using multiple IP addresses, these programs ban be fooled and loops can be created. The event streams are not encrypted.