diff --git a/ospfd/ospf_dump.c b/ospfd/ospf_dump.c
index de9ef05..e65b2e3 100644
--- a/ospfd/ospf_dump.c
+++ b/ospfd/ospf_dump.c
@@ -42,7 +42,7 @@
 #include "ospfd/ospf_packet.h"
 #include "ospfd/ospf_network.h"
 
-struct message ospf_ism_state_msg[] =
+const struct message ospf_ism_state_msg[] =
 {
   { ISM_DependUpon,   "DependUpon" },
   { ISM_Down,         "Down" },
@@ -53,9 +53,9 @@
   { ISM_Backup,       "Backup" },
   { ISM_DR,           "DR" },
 };
-int ospf_ism_state_msg_max = OSPF_ISM_STATE_MAX;
+const int ospf_ism_state_msg_max = OSPF_ISM_STATE_MAX;
 
-struct message ospf_nsm_state_msg[] =
+const struct message ospf_nsm_state_msg[] =
 {
   { NSM_DependUpon, "DependUpon" },
   { NSM_Deleted,    "Deleted"    },
@@ -68,9 +68,9 @@
   { NSM_Loading,    "Loading" },
   { NSM_Full,       "Full" },
 };
-int ospf_nsm_state_msg_max = OSPF_NSM_STATE_MAX;
+const int ospf_nsm_state_msg_max = OSPF_NSM_STATE_MAX;
 
-struct message ospf_lsa_type_msg[] =
+const struct message ospf_lsa_type_msg[] =
 {
   { OSPF_UNKNOWN_LSA,      "unknown" },
   { OSPF_ROUTER_LSA,       "router-LSA" },
@@ -85,9 +85,9 @@
   { OSPF_OPAQUE_AREA_LSA,  "Area-Local Opaque-LSA" },
   { OSPF_OPAQUE_AS_LSA,    "AS-external Opaque-LSA" },
 };
-int ospf_lsa_type_msg_max = OSPF_MAX_LSA;
+const int ospf_lsa_type_msg_max = OSPF_MAX_LSA;
 
-struct message ospf_link_state_id_type_msg[] =
+const struct message ospf_link_state_id_type_msg[] =
 {
   { OSPF_UNKNOWN_LSA,      "(unknown)" },
   { OSPF_ROUTER_LSA,       "" },
@@ -102,9 +102,9 @@
   { OSPF_OPAQUE_AREA_LSA,  "(Area-Local Opaque-Type/ID)" },
   { OSPF_OPAQUE_AS_LSA,    "(AS-external Opaque-Type/ID)" },
 };
-int ospf_link_state_id_type_msg_max = OSPF_MAX_LSA;
+const int ospf_link_state_id_type_msg_max = OSPF_MAX_LSA;
 
-struct message ospf_network_type_msg[] =
+const struct message ospf_network_type_msg[] =
 {
   { OSPF_IFTYPE_NONE,		  "NONE" },
   { OSPF_IFTYPE_POINTOPOINT,      "Point-to-Point" },
@@ -113,7 +113,7 @@
   { OSPF_IFTYPE_POINTOMULTIPOINT, "Point-to-MultiPoint" },
   { OSPF_IFTYPE_VIRTUALLINK,      "Virtual-Link" },
 };
-int ospf_network_type_msg_max = OSPF_IFTYPE_MAX;
+const int ospf_network_type_msg_max = OSPF_IFTYPE_MAX;
 
 /* Configuration debug option variables. */
 unsigned long conf_debug_ospf_packet[5] = {0, 0, 0, 0, 0};
diff --git a/ospfd/ospfd.c b/ospfd/ospfd.c
index a9714f5..08e4100 100644
--- a/ospfd/ospfd.c
+++ b/ospfd/ospfd.c
@@ -1025,13 +1025,13 @@
 }
 
 
-struct message ospf_area_type_msg[] =
+static const struct message ospf_area_type_msg[] =
 {
   { OSPF_AREA_DEFAULT,	"Default" },
   { OSPF_AREA_STUB,     "Stub" },
   { OSPF_AREA_NSSA,     "NSSA" },
 };
-int ospf_area_type_msg_max = OSPF_AREA_TYPE_MAX;
+static const int ospf_area_type_msg_max = OSPF_AREA_TYPE_MAX;
 
 static void
 ospf_area_type_set (struct ospf_area *area, int type)
diff --git a/ospfd/ospfd.h b/ospfd/ospfd.h
index 6a60e86..6ba1916 100644
--- a/ospfd/ospfd.h
+++ b/ospfd/ospfd.h
@@ -535,17 +535,17 @@
 
 /* Extern variables. */
 extern struct ospf_master *om;
-extern struct message ospf_ism_state_msg[];
-extern struct message ospf_nsm_state_msg[];
-extern struct message ospf_lsa_type_msg[];
-extern struct message ospf_link_state_id_type_msg[];
-extern struct message ospf_network_type_msg[];
-extern int ospf_ism_state_msg_max;
-extern int ospf_nsm_state_msg_max;
-extern int ospf_lsa_type_msg_max;
-extern int ospf_link_state_id_type_msg_max;
-extern int ospf_redistributed_proto_max;
-extern int ospf_network_type_msg_max;
+extern const struct message ospf_ism_state_msg[];
+extern const struct message ospf_nsm_state_msg[];
+extern const struct message ospf_lsa_type_msg[];
+extern const struct message ospf_link_state_id_type_msg[];
+extern const struct message ospf_network_type_msg[];
+extern const int ospf_ism_state_msg_max;
+extern const int ospf_nsm_state_msg_max;
+extern const int ospf_lsa_type_msg_max;
+extern const int ospf_link_state_id_type_msg_max;
+extern const int ospf_redistributed_proto_max;
+extern const int ospf_network_type_msg_max;
 extern struct zclient *zclient;
 extern struct thread_master *master;
 extern int ospf_zlog;
