$OpenBSD: patch-options_c,v 1.4 2012/01/12 08:15:30 sthen Exp $
--- options.c.orig	Fri Jun 24 07:13:39 2011
+++ options.c	Fri Jul  8 14:30:59 2011
@@ -265,6 +265,7 @@ static const char usage_message[] =
   "--sndbuf size   : Set the TCP/UDP send buffer size.\n"
   "--rcvbuf size   : Set the TCP/UDP receive buffer size.\n"
   "--txqueuelen n  : Set the tun/tap TX queue length to n (Linux only).\n"
+  "--rtable n      : Set the routing table (default=0, OpenBSD only)\n"
   "--mlock         : Disable Paging -- ensures key material and tunnel\n"
   "                  data will never be written to disk.\n"
   "--up cmd        : Shell cmd to execute after successful tun device open.\n"
@@ -1282,6 +1283,7 @@ show_settings (const struct options *o)
 #endif
   SHOW_INT (rcvbuf);
   SHOW_INT (sndbuf);
+  SHOW_INT (rtable);
   SHOW_INT (sockflags);
 
   SHOW_BOOL (fast_io);
@@ -4216,6 +4218,11 @@ add_option (struct options *options,
     {
       VERIFY_PERMISSION (OPT_P_SOCKBUF);
       options->sndbuf = positive_atoi (p[1]);
+    }
+  else if (streq (p[0], "rtable") && p[1])
+    {
+      VERIFY_PERMISSION (OPT_P_SOCKFLAGS);
+      options->rtable = positive_atoi (p[1]);
     }
   else if (streq (p[0], "socket-flags"))
     {
