diff --git a/doc/ChangeLog b/doc/ChangeLog
index 7d1211c..07e27b6 100644
--- a/doc/ChangeLog
+++ b/doc/ChangeLog
@@ -1,3 +1,8 @@
+2004-10-11 Hasso Tepper <hasso at quagga.net>
+
+	* ospfd.8: Update manpage: add info about new -a/--apiserver command
+	  line switch.
+
 2004-10-11 Paul Jakma <paul@dishone.st>
 
 	* ospfd.texi: reformat the ospf md5 paragraph, add an additional
diff --git a/doc/ospfd.8 b/doc/ospfd.8
index 1fde900..af5a83a 100644
--- a/doc/ospfd.8
+++ b/doc/ospfd.8
@@ -61,6 +61,9 @@
 Specify the user and group to run as. User and group have to have same
 name at the moment. Default is \fIquagga\fR.
 .TP
+\fB\-a\fR, \fB\-\-apiserver \fR
+Enable OSPF apiserver. Default is disabled.
+.TP
 \fB\-v\fR, \fB\-\-version\fR
 Print the version and exit.
 .SH FILES
diff --git a/ospfd/ChangeLog b/ospfd/ChangeLog
index 75e3b4d..86cbe59 100644
--- a/ospfd/ChangeLog
+++ b/ospfd/ChangeLog
@@ -1,3 +1,8 @@
+2004-10-11 Hasso Tepper <hasso at quagga.net>
+
+	* ospf_main.c, ospf_opaque.c: Disable ospfapi init by default. New
+	  command line switch to enable it.
+
 2004-10-11 Paul Jakma <paul@dishone.st>
 
 	* ospf_dump.c: (ospf_ip_header_dump) Assume header is in host order
diff --git a/ospfd/ospf_main.c b/ospfd/ospf_main.c
index 47873ba..a7e56dc 100644
--- a/ospfd/ospf_main.c
+++ b/ospfd/ospf_main.c
@@ -87,6 +87,7 @@
   { "vty_addr",    required_argument, NULL, 'A'},
   { "vty_port",    required_argument, NULL, 'P'},
   { "user",        required_argument, NULL, 'u'},
+  { "apiserver",   no_argument,       NULL, 'a'},
   { "version",     no_argument,       NULL, 'v'},
   { 0 }
 };
@@ -99,6 +100,9 @@
 /* Process ID saved for use by init system */
 const char *pid_file = PATH_OSPFD_PID;
 
+/* OSPF apiserver is disabled by default. */
+int ospf_apiserver_enable = 0;
+
 /* Help information display. */
 static void
 usage (char *progname, int status)
@@ -115,6 +119,7 @@
 -A, --vty_addr     Set vty's bind address\n\
 -P, --vty_port     Set vty's port number\n\
 -u, --user         User and group to run as\n\
+-a. --apiserver    Enable OSPF apiserver\n\
 -v, --version      Print program version\n\
 -h, --help         Display this help and exit\n\
 \n\
@@ -204,7 +209,7 @@
     {
       int opt;
 
-      opt = getopt_long (argc, argv, "dlf:i:hA:P:u:v", longopts, 0);
+      opt = getopt_long (argc, argv, "dlf:i:hA:P:u:av", longopts, 0);
     
       if (opt == EOF)
 	break;
@@ -236,9 +241,12 @@
           vty_port = atoi (optarg);
           vty_port = (vty_port ? vty_port : OSPF_VTY_PORT);
   	  break;
-  case 'u':
-    ospfd_privs.group = ospfd_privs.user = optarg;
-    break;
+	case 'u':
+	  ospfd_privs.group = ospfd_privs.user = optarg;
+	  break;
+	case 'a':
+	  ospf_apiserver_enable = 1;
+	  break;
 	case 'v':
 	  print_version (progname);
 	  exit (0);
diff --git a/ospfd/ospf_opaque.c b/ospfd/ospf_opaque.c
index 414ec74..d0d1be3 100644
--- a/ospfd/ospf_opaque.c
+++ b/ospfd/ospf_opaque.c
@@ -69,6 +69,7 @@
 #ifdef SUPPORT_OSPF_API
 int ospf_apiserver_init (void);
 void ospf_apiserver_term (void); 
+extern int ospf_apiserver_enable;
 #endif /* SUPPORT_OSPF_API */
 
 static void ospf_opaque_register_vty (void);
@@ -91,7 +92,7 @@
 #endif /* HAVE_OSPF_TE */
 
 #ifdef SUPPORT_OSPF_API
-  if (ospf_apiserver_init () != 0)
+  if ((ospf_apiserver_enable) && (ospf_apiserver_init () != 0))
     exit (1);
 #endif /* SUPPORT_OSPF_API */
 
