diff --git a/bgpd/bgp_snmp.c b/bgpd/bgp_snmp.c
index f6b1056..a995ff6 100644
--- a/bgpd/bgp_snmp.c
+++ b/bgpd/bgp_snmp.c
@@ -853,7 +853,7 @@
   smux_trap (bgp_oid, sizeof bgp_oid / sizeof (oid),
 	     index, IN_ADDR_SIZE,
 	     bgpTrapList, sizeof bgpTrapList / sizeof (struct trap_object),
-	     bm->start_time - bgp_clock (), BGPESTABLISHED);
+	     BGPESTABLISHED);
 }
 
 void
@@ -872,7 +872,7 @@
   smux_trap (bgp_oid, sizeof bgp_oid / sizeof (oid),
 	     index, IN_ADDR_SIZE,
 	     bgpTrapList, sizeof bgpTrapList / sizeof (struct trap_object),
-	     bm->start_time - bgp_clock (), BGPBACKWARDTRANSITION);
+	     BGPBACKWARDTRANSITION);
 }
 
 void
diff --git a/lib/agentx.c b/lib/agentx.c
index 9cf6de5..2358581 100644
--- a/lib/agentx.c
+++ b/lib/agentx.c
@@ -125,7 +125,7 @@
 smux_trap (const oid *name, size_t namelen,
 	   const oid *iname, size_t inamelen,
 	   const struct trap_object *trapobj, size_t trapobjlen,
-	   unsigned int tick, u_char sptrap)
+	   u_char sptrap)
 {
   return 1;
 }
diff --git a/lib/smux.c b/lib/smux.c
index 2937005..38c7018 100644
--- a/lib/smux.c
+++ b/lib/smux.c
@@ -972,7 +972,7 @@
 smux_trap (const oid *name, size_t namelen,
 	   const oid *iname, size_t inamelen,
 	   const struct trap_object *trapobj, size_t trapobjlen,
-	   unsigned int tick, u_char sptrap)
+	   u_char sptrap)
 {
   unsigned int i;
   u_char buf[BUFSIZ];
diff --git a/lib/smux.h b/lib/smux.h
index 83ae56c..78460e6 100644
--- a/lib/smux.h
+++ b/lib/smux.h
@@ -78,7 +78,7 @@
                                 int, size_t *, WriteMethod **);
 extern int smux_trap (const oid *, size_t, const oid *, size_t, 
 		      const struct trap_object *, 
-                      size_t, unsigned int, u_char);
+                      size_t, u_char);
 
 extern int oid_compare (oid *, int, oid *, int);
 extern void oid2in_addr (oid [], int, struct in_addr *);
diff --git a/ospfd/ospf_snmp.c b/ospfd/ospf_snmp.c
index 739dcae..409153b 100644
--- a/ospfd/ospf_snmp.c
+++ b/ospfd/ospf_snmp.c
@@ -2616,7 +2616,7 @@
              index,  IN_ADDR_SIZE + 1,
              ospfNbrTrapList, 
              sizeof ospfNbrTrapList / sizeof (struct trap_object),
-             time (NULL), NBRSTATECHANGE);
+             NBRSTATECHANGE);
 }
 
 void
@@ -2633,7 +2633,7 @@
              index,  IN_ADDR_SIZE + 1,
              ospfVirtNbrTrapList, 
              sizeof ospfVirtNbrTrapList / sizeof (struct trap_object),
-             time (NULL), VIRTNBRSTATECHANGE);
+             VIRTNBRSTATECHANGE);
 }
 
 void
@@ -2652,7 +2652,7 @@
              index, IN_ADDR_SIZE + 1,
              ospfIfTrapList, 
              sizeof ospfIfTrapList / sizeof (struct trap_object),
-             time (NULL), IFSTATECHANGE);
+             IFSTATECHANGE);
 }
 
 void
@@ -2669,7 +2669,7 @@
              index, IN_ADDR_SIZE + 1,
              ospfVirtIfTrapList,
              sizeof ospfVirtIfTrapList / sizeof (struct trap_object),
-             time (NULL), VIRTIFSTATECHANGE);
+             VIRTIFSTATECHANGE);
 }
 /* Register OSPF2-MIB. */
 void
