OpenVPN for PocketPC

April 1, 2007 (seriously)

Abstract

This web page was created to provide info and access to files relevant to the OpenVPN port for the PocketPC.

Files can be found here.

Change log can be found here.

Usage information can be found here.

Some external links to resources I have come across can be found here.

The perfunctory disclaimer can be found here.

A web forum has been kindly created by Krzysztof Sobolewski for the purpose of sharing experiences with this port.  The forum can be found here:  http://ovpn.sq7ro.net/ovpnforum/

Nifty counter showing distribution of users:

Locations of visitors to this page

Summary

I produced a port of the OpenVPN to support PocketPC devices as a client.  This activity consisted chiefly of:

  1. Producing a port of the TAP virtual NIC driver.
  2. Accommodating for the lack of many standard runtime routines in the CE environment.
  3. Producing a 'management' application which provides user-interface to control VPN connections.

I did this because I wanted it personally, and because there apparently wasn't another similar effort underway.  It is my hope that this might be of use to others as well.  This has not been merged into the official OpenVPN code base, but that will happen when I get the bug volume low enough to liberate some time.

I would like to invite anyone interested to download the files, install, and play with it.  There are some known issues, and I'm quite sure that there are many unknown ones as well!  Far be it from me to delight in bug reports, I am interested in receiving these from the field in the interest of more rapidly converging on a quality level than I could hope to achieve operating as an individual developer.  I do believe that it is genuinely usable even despite these limitations -- I've been using it.

I expect that the official openvpn-users mailing list can do with less email on bug reports related to this port (at least at this time), so it might be best to contact me directly at: dev@ziggurat29.com.

Scope of Testing Already Done

I have tested the application with an iPaq 4150, running WM2003, and an iPaq 4700 running WM5.  There have been other devices tested in the field that folks individually report on in the forum.

I have tested in a tunneling configuration.  I think I have tested in bridging as well -- I only just recently got bridging set up and I believe it is working correctly.

I have been happily pushing data over the TAP interface for several weeks now (I think the day of the first Ping of Joy was March 27th), and I have left a client pinging through the tunnel for over 24 hours so I feel pretty good about stability.  I have accessed resources on the server though the tunnel, such as web pages, with client apps like PIE.

The past month has been spend doing bug fixes as problems arise.  Details on known pending issues in Known Issues.

Brief Discussion of Changes to Made to the OpenVPN Source

Disclaimer

This is early-access code.  While every effort has been made to ensure that this is usable and free of defects, the user acknowledges that he or she does so entirely at their own risk, and indemnifies the author of any liability such as but not limited to suitability of purpose, loss of property, or life, or sanity in conjunction with the use of this software.

Hey, it's alpha code (some emphatically say it's beta code, but I'm conservative).  Do a backup before you install just-in-case.  It only takes a few minutes and worst-come-to-worst you can hard-reset and restore.  I don't think this will ever be necessary -- it hasn't ever been for me even during development, but then again I don't have your particular device.