DOS(1) DOS(1) NAME dos - command line access to Microsoft Windows™ servers SYNOPSIS dos [ -h host ] [ -u user ] [ -k keypattern ] [ -c cmd args ... ] DESCRIPTION Dos connects to a Windows host and starts a session to cmd.exe on host, or the machine named in the $dos environ- ment variable if there is no -h option. The user name and authentication domain is usually picked up from factotum(4), the entry is selected based on the default domain of the remote host. An alternative userid may be specified with -u. Userids have the form user@authdom where authdom is the windows authentication domain. If a -c is present, the remainder of the command line is executed by rc on the server, and then dos exits. The remote shell's initial working directory is set to the current directory when dos was envoked, translated by map- pings defined by the dosmap(6) configuration files. Rio's /dev/wdir is kept in sync with directory changes on the remote server providing (where possible) the correct context for the plumber. On connection the users Roving Profile and user specific environment are loaded, vestigial network mounts left over from the GUI environment are deleted and replaced with shares defined in the configuration files. FILES c:\listen\listen.exe c:\listen\tcp9999.exe c:\listen\dosmap $home/lib/dosmap/<serverdomain> SOURCE /sys/src/cmd/dos.c /sys/src/cmd/win32/dosd.c /sys/src/cmd/win32/listen/* SEE ALSO dosmap (6) BUGS Interrupts are neither caught nor passed to the remote host. DOS(1) DOS(1) The remote shell's standard input, output and error are attached to the dos commands file descriptors rather /dev/cons. There should be no need to duplicate the dosmap file on both local and remote hosts. The network link is not encrypted, thus all usernames and passwords are vunerable to sniffing. Detection of the current directory (parsing the windows prompt) is horrific. The Dos client should be replaced by cpu(1), with an addi- tional tlspass authentication mechnism. Dosd.exe should be replaced by cpud.exe a 9p client which opens /mnt/term/dev/cons for console I/O, /mnt/term/dev/cpunote for interrupts, /mnt/term/dev/wdir to keep the plan9 working directory synchronised with windows directory changes, and /mnt/term/usr/$user/lib/dosmap to discover shared drive map- pings.