Assistant Manager, Network Service Division, NTT software
Kouichi Kunitake
Manager, Network Technology Division, Research Institute of Network Technology (RINT)
If you set up WebDAV server and enable file sharing following the procedures in the previous article, it becomes possible to access the necessary files on the server from various locations including home, workplace, and school. However, nowadays, there are many mobile devices around and access points for Wireless LAN are being deployed in various public and commercial facilities. Therefore, you might want to use WebDAV from mobile devices. As we mentioned before, as a file sharing system, WebDAV is much more versatile than other systems. Therefore, WebDAV clients can also be installed into WindowsCE.NET machines and Zaurus (SL-C700), which currently does not support WebDAV at the OS level.
CEDEV, a WebDAV client for WindowsCE.NET
CEDEV is an alpha version of WebDAV client for WindowsCE.NET. It has minimal functions of the WebDAV client, including displaying a file list, and uploading and downloading of files. It runs on WindowsCE.NET 4.1, and it is IPv6 compliant. Installation procedures are easy. Just download cedev-alpha.zip*, unzip it, and transfer the extracted file CEDEV.exe to a WindowsCE.NET machine using ActiveSync or similar software. Run the program on WindowsCE.NET machine, and you can start using CEDEV immediately.
*This software is an alpha version and there is no guarantee of proper operation. You are fully responsible for any consequences resulting from the operation of this software.
The operation of CEDEV is straightforward, and its appearance is similar to Network Place in Windows (Figure 1). Double clicking on a folder icon will move you to that directory, and double clicking on a file will download that file. It is also possible to upload files using the menu.

Figure 1
Current version of CEDEV is only an alpha version. It only has limited WebDAV functions, and can not delete or copy files. However, you will see that it is already a very useful application.
Using cadaver, a UNIX version WebDAV client, on Zaurus
Zaurus (SL-C700) is using Linux as its OS, and we can take advantage of Linuxs open source system. In this article, we will build WebDAV client environment using cadaver, a UNIX version of WebDAV client that uses command-line interface, and davfs2, a file system driver that mounts WebDAV server as a local disk. Following section describes the necessary procedures briefly. When we explain compilation procedures, we assume that you have cross compile environment. For detailed procedures for setting up cross compile environment, please refer to a list of Linux related development tools on http://more.sbc.co.jp/sl_j/sl_top.asp, or other related documents.
1. Making Zaurus IPv6 compliant
Unfortunately, Zaurus does not support IPv6 as is, so we need to reconfigure the kernel. For the details of this procedure, please refer to http://www.linux-ipv6.org/~kunitake/zaurus/. In addition to the options specified in the above URL, Coda file systems support must be enabled (Figure 2). This is because davfs2, which we will explain in more detail later, needs to use this function.

Figure 2
1. Installing cadaver
Cadaver can be obtained from the following URL.
cadaver - command-line WebDAV client
http://www.webdav.org/cadaver/
Also, there is a precompiled package for Zaurus (SL-C700) at,
http://www.linux-ipv6.org/~kunitake/zaurus/feed/.
You can install cadaver and libxml2 using this package. Of course, it is also possible to compile the source code yourself by following the procedures described below.
Versions later than 0.20.5 is IPv6 compliant.
$ tar zxvf cadaver-0.21.0.tar.gz $ cd cadaver-0.21.0 $ ./configure --prefix=/opt/QtPalmtop --with-ssl --host=arm-linux \ --with-included-neon --enable-netrc $ make |
Place cadaver, that has been made with the above procedure, into Zauruss /home/QtPalmtop/bin/. In order to compile and run cadaver, you will also need two libraries, openssl and libxml2.
Cadaver access WebDAV server in a manner similar to ftp client or smbclient. It follows the conventional format for specifying the URL and port number.
Example of commands for running cadaver:
$ cadaver http://www.example.com/dav/ $ cadaver http://www.example.com:8022/dav/ |
2. Installing WEB-DAV Linux File System (davfs2s)
Davfs2 is a file system driver for Linux and can mount WebDAV server as if it is a local disk. As we mentioned earlier, davfs2 uses Coda file system, and therefore this function must be enabled in the kernel. You can find a precompiled package of davfs2 at, http://www.linux-ipv6.org/~kunitake/zaurus/feed/. You can either use this package, or compile the source code obtained from, http://dav.sourceforge.net/. Versions later than 0.2.1 are IPv6 compliant.
$ tar zxvf davfs2-0.2.1.tar.gz $ cd davfs2-0.2.1 $ ./configure --with-libxml2 \ --with-kernel-src=/home/hoge/zaurus/kernel \ --with-ssl |
Davfs2 also needs two libraries, openssl and libxml2, for compiling and running. Also, you need to specify the source directory of the kernel running on your Zaurus in with-kernel-src option. Please replace the directory specified in the above box with the directory appropriate for your system.
Actual command that we use in davfs2 is mount.davfs, and options for this command are shown below.
$ tar zxvf davfs2-0.2.1.tar.gz $ cd davfs2-0.2.1 $ ./configure --with-libxml2 \ --with-kernel-src=/home/hoge/zaurus/kernel \ --with-ssl |
Normally you would type something like,
$ su # mkdir /mnt/dav # mount.davfs http://www.example.com/dav/ /mnt/dav |
to mount your WebDAV. Also, if you set the mount point under SD (/mnt/card/Documents), CF(/mnt/cf/Documents), or main memory (/home/zaurus), you can access WebDAV resources from the standard file manager (Figure 3 and Figure 4).
Figure 3
Figure 4
*Cautions regarding Davfs2
In Zaurus, /etc/mtab that contains information regarding mount point is usually replaced with a symlink to /proc/mounts/. When you use davfs2, which adds and deletes entries of this file, entries such as Main Memory, -CF Card, and -SD Card which you should be able to select from file manager, sometimes disappear (Normally you will see these entries as shown in Figure 5). If this happens, type,
$ su
# rm /etc/mtab
# ln -sf /proc/mounts /etc/mtab
and reboot the Zaurus. It should return to normal.
Figure 5
この記事のトラックバックURL
http://www.ipv6style.jp/trackback/552



