CIFS(4)                                                   CIFS(4)

     NAME
          cifs - Microsoft™ Windows network filesystem client

     SYNOPSIS
          cifs [ -bdDiv ] [ -a auth-method ] [ -s srvname ] [ -n
          called-name ] [ -k keyparam ] [ -m mntpnt ] [ -t dfs-timeout
          ] host [ share ... ]

     DESCRIPTION
          Cifs translates between Microsoft's file-sharing protocol
          (a.k.a. CIFS or SMB) and 9P, allowing Plan9 clients to mount
          file systems (shares or trees in MS terminology) published
          by such servers.

          The root of the mounted directory contains one subdirectory
          per share, and a few virtual files give additional informa-
          tion.  The arguments are:

          -a auth-method  Cifs authenticates using `BNTLM' by default,
                          but alternative strategies may be selected
                          using this option.  Cifs eschews cleartext
                          authentication, however it may be enabled
                          with the `plain' auth method.  The list of
                          currently-supported methods is printed if no
                          method name is supplied.

                          Windows server 2003 requires the BNTLMv2
                          method by default, though it can be config-
                          ured to be more flexible.

          -b              Enable file ownership resolution in stat(2)
                          calls.  This requires an open and close per
                          file and thus will slow cifs considerably;
                          its use is not recommended.

          -d              CIFS packet debug.

          -D              9P request debug.

          -i              By default cifs(4) attempts to enforce case
                          significance file and directory names,
                          though objects which differ only in their
                          case still cannot co-exist in the same
                          directory. The -i option disables this
                          behaveiour.

          -k keyparam     lists extra parameters which will be passed
                          to factotum(4) to select a specific key.
                          The remote servers's domain is always

     Page 1                       Plan 9            (printed 12/21/24)

     CIFS(4)                                                   CIFS(4)

                          included in the keyspec, under the assump-
                          tion that all servers in a Windows domain
                          share an authentication domain; thus cifs
                          expects keys in factotum of the form:

                               key proto=pass dom=THEIR-DOMAIN service=cifs
                                    user=MY-USERNAME !password=XYZZY

          -m mntpnt       set the mount point for the remote filesys-
                          tem; the default is /n/host.

          -n called-name  The CIFS protocol requires clients to know
                          the NetBios name of the server they are
                          attaching to, the Icalled-name. If this is
                          not specified on the command line, cifs
                          attempts to discover this name from the
                          remote server.  If this fails it will then
                          try host, and finally it will try the name
                          `*SMBSERVER'.

          -s srvname      post the service as /srv/srvname.

          -t dfs-timeout  sets the timeout in for DFS redirections -
                          it defaults to 100ms.  This is a reasonable
                          minimum, it should have a value just greater
                          than the RTT to the most distant server
                          being accessed.

          host            The address of the remote server to connect
                          to.

          share           A list of share names to attach on the
                          remote server; if none is given, cifs will
                          attempt to attach all shares published by
                          the remote host.

        Synthetic Files
          Several synthetic files appear in the root of the mounted
          filesystem:

          Shares        Contains a list of the currently attached
                        shares, with fields giving the share name, the
                        share type, disk free space / capacity, and a
                        descriptive comment from the server.

          Connection    Contains the username used for authentication,
                        server's called name, server's domain,
                        server's OS, the time slip between the local
                        host and the server, the Maximum Transfer Unit
                        (MTU) the server requested, and optionally a
                        flag indicating only guest access has been

     Page 2                       Plan 9            (printed 12/21/24)

     CIFS(4)                                                   CIFS(4)

                        granted.  The second line contains a list of
                        capabilities offered by the server which is
                        mainly of use for debugging cifs.

          Users         Each line contains a user's name, the user's
                        full name, and a descriptive comment.

          Groups        Each line gives a group's name, and a list of
                        the names of the users who are members of that
                        group.

          Sessions      Lists the users authenticated, the client
                        machine's NetBios name or IP address, the time
                        since the connection was established, and the
                        time for which the connection has been idle.

          Domains       One line per domain giving the domain name and
                        a descriptive comment.

          Workstations  One line per domain giving the domain name and
                        a descriptive comment, the version number of
                        the OS it is running, and comma-separated list
                        of flags giving the features of that OS.

          Dfsroot       Lists the top level DFS domains and the
                        servers that provision them.

          Dfscache      Contents of the DFS referal cache, giving the
                        path prefix, the expiry time (or -1 for
                        never), the measured RTT to the server in mil-
                        liseconds, the server proximity (0 is local),
                        the server name, and the share name on that
                        server.

     COMPATIBILITY
          Cifs has been tested against aquarela(8), Windows 95,
          NT4.0sp6, Windows server 2003, Windows server 2003, WinXP
          pro, Samba 2.0 (Pluto VideoSpace), and Samba 3.0.

          Windows Vista require a hotfix (registry change) to support
          NTLMv2 without GSSAPI, see
          http://support.microsoft.com/kb/957441.  Alternatively the
          -a option can be used to force cifs to use one of the less
          secure authentication mechnisms.

          Windows 7 has dropped support for RAP, which is used to gen-
          erate the synthetic files offered by cifs. RAP is also used
          to enumerate the shares offered by the remote host so remote
          share names must always be specified on the command line.

          The NetApp Filer was supported by earlier releases, however
          recent attempts to mount one have failed. Should a server be

     Page 3                       Plan 9            (printed 12/21/24)

     CIFS(4)                                                   CIFS(4)

          available it is likely that this could be easily fixed.

     SOURCE
          /sys/src/cmd/cifs

     SEE ALSO
          factotum(4), aquarela(8)

     BUGS
          DFS support is unfinished, it will not follow referals that
          span servers.

          Kerberos authentication is not supported.

          NetBios name resolution is not supported, though it is now
          rarely used.

     Page 4                       Plan 9            (printed 12/21/24)