AQUARELA(8) AQUARELA(8) NAME aquarela - CIFS server SYNOPSIS aquarela [ -np ] [ -d debug ] [ -u N ] [ -w workgroup ] DESCRIPTION Aquarela provides CIFS (once known as SMB) access to Plan 9 file servers. It announces and subsequently listens on tcp!*!445 for connections to the file hierarchies called `shares' by CIFS. Users are authenticated with their APOP secret (see auth(8)). Each session is managed by a process running as the authenticated user. Two persistent processes handle listening, session setup, and housekeeping. An aquarela CIFS share corresponds to a directory under /n. A client request for a specific share, say, share, causes aquarela to attempt a 9fs (in srv(4)) connection to the file server share. If connection succeeds, a file hierarchy rooted at /n/share is presented to the client. The client request fails otherwise. Requests for the protocol equiva- lent of / are satisfied with a directory containing only the default share, local. The options are: -n Enable limited NETBIOS service. Aquarela will register with the `master browser' for workgroup and listen on tcp!*!139 and udp!*!13[7-9] for NETBIOS name resolution and session requests. This works in tandem with a com- plete NETBIOS master name server, like that provided by Unix nmbd(8). NETBIOS is not required for CIFS file service. -u N Send Unicode. For N, 1 enables, 0 disables Unicoding of file names and metadata. There is no code page sup- port, so aquarela emits UTF if N is 0. -w workgroup Set workgroup (or `primary domain') of server. Default PLAN9. EXAMPLE To start CIFS service on system plan9: % aquarela -u 1 & To then make the dump filesystem available as drive Y: on a Windows machine: C:\>net use Y: \\plan9.example.com\dump Page 1 Plan 9 (printed 12/21/24) AQUARELA(8) AQUARELA(8) FILES /n/local Default CIFS share /sys/log/aquarela Log file SOURCE /sys/src/cmd/aquarela SEE ALSO auth(8), srv(4), utf(6) DIAGNOSTICS Log messages are appended to /sys/log/aquarela if it exists. The -p option prints them on standard output as well. The -d option adds verbose output about debug to the log mes- sages, where debug is one of: allcmds All CIFS requests and responses. tids Connections and disconnections per-share. sids Creation and deletion of search ids. fids Creation and deletion of file ids. rap2 RAP calls. find Transaction2 find commands. query Transaction2 query commands. sharedfiles All files opened. poolparanoia Draconian error checking in memory allocator. sessions Connections and disconnections on server. rep Regular expression conversions. locks Locking activity. any-smb-name Debug only SMB_ requests or transaction2 sub- requests (e.g., SMB_COM_SESSION_SETUP_ANDX or SMB_TRANS2_FIND_FIRST2) matching symbolic name any-smb-name. 0xnn Debug only messages with hexadecimal id 0xnn. BUGS The first connection attempt to a share sometimes fails erroneously - try again. The share disk space reported by some clients is inaccurate. Some clients can't rename directories. Write attempts without sufficient permissions fail (correctly), but appear on client to temporarily suc- ceed. This program should probably be named cifsserver. Page 2 Plan 9 (printed 12/21/24)