zebra: handle RTF_CLONING removal from FreeBSD 8.0

The RTF_CLONING flag has been removed in FreeBSD 8.0 with arp-v2 (see
http://svn.freebsd.org/viewvc/base/stable/8/UPDATING?view=markup),
since it no longer has any meaning. This patch checks if RTF_CLONING
exists before using it.
diff --git a/zebra/kernel_socket.c b/zebra/kernel_socket.c
index e8eaf28..feeaf5d 100644
--- a/zebra/kernel_socket.c
+++ b/zebra/kernel_socket.c
@@ -173,7 +173,9 @@
 #ifdef RTF_MASK
   {RTF_MASK,      "MASK"},
 #endif /* RTF_MASK */
+#ifdef RTF_CLONING
   {RTF_CLONING,   "CLONING"},
+#endif /* RTF_CLONING */
   {RTF_XRESOLVE,  "XRESOLVE"},
   {RTF_LLINFO,    "LLINFO"},
   {RTF_STATIC,    "STATIC"},
@@ -999,9 +1001,14 @@
   if (gate && message == RTM_ADD)
     msg.rtm.rtm_flags |= RTF_GATEWAY;
 
+  /* When RTF_CLONING is unavailable on BSD, should we set some
+   * other flag instead?
+   */
+#ifdef RTF_CLONING
   if (! gate && message == RTM_ADD && ifp &&
       (ifp->flags & IFF_POINTOPOINT) == 0)
     msg.rtm.rtm_flags |= RTF_CLONING;
+#endif /* RTF_CLONING */
 
   /* If no protocol specific gateway is specified, use link
      address for gateway. */