summaryrefslogtreecommitdiffstats
path: root/ulogd/extensions/ulogd_BASE.c
diff options
context:
space:
mode:
authorlaforge <laforge>2003-04-27 07:43:37 +0000
committerlaforge <laforge>2003-04-27 07:43:37 +0000
commite9796548e7af2e6f64c2be9e598be0cde8e2dc24 (patch)
tree0ea2e6c01814317029dde984e8af9ffce9235192 /ulogd/extensions/ulogd_BASE.c
parente0b6d3be0fec22bbc34df41bb66673bd71954369 (diff)
real fix for skb receive timestamp problem (Harald Welte), revert PCAP workaround
Diffstat (limited to 'ulogd/extensions/ulogd_BASE.c')
-rw-r--r--ulogd/extensions/ulogd_BASE.c19
1 files changed, 13 insertions, 6 deletions
diff --git a/ulogd/extensions/ulogd_BASE.c b/ulogd/extensions/ulogd_BASE.c
index 936843f..e4460ac 100644
--- a/ulogd/extensions/ulogd_BASE.c
+++ b/ulogd/extensions/ulogd_BASE.c
@@ -1,4 +1,4 @@
-/* ulogd_MAC.c, Version $Revision: 1.15 $
+/* ulogd_MAC.c, Version $Revision: 1.16 $
*
* ulogd interpreter plugin for
* o MAC addresses
@@ -26,7 +26,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
- * $Id: ulogd_BASE.c,v 1.15 2002/12/09 14:42:43 laforge Exp $
+ * $Id: ulogd_BASE.c,v 1.16 2003/01/13 13:35:58 laforge Exp $
*
*/
@@ -111,10 +111,17 @@ static ulog_iret_t *_interp_oob(struct ulog_interpreter *ip,
ret[0].value.ptr = pkt->prefix;
ret[0].flags |= ULOGD_RETF_VALID;
- ret[1].value.ui32 = pkt->timestamp_sec;
- ret[1].flags |= ULOGD_RETF_VALID;
- ret[2].value.ui32 = pkt->timestamp_usec;
- ret[2].flags |= ULOGD_RETF_VALID;
+
+ if (pkt->timestamp_sec || pkt->timestamp_usec) {
+ ret[1].value.ui32 = pkt->timestamp_sec;
+ ret[1].flags |= ULOGD_RETF_VALID;
+ ret[2].value.ui32 = pkt->timestamp_usec;
+ ret[2].flags |= ULOGD_RETF_VALID;
+ } else {
+ ret[1].flags &= ~ULOGD_RETF_VALID;
+ ret[2].flags &= ~ULOGD_RETF_VALID;
+ }
+
ret[3].value.ui32 = pkt->mark;
ret[3].flags |= ULOGD_RETF_VALID;
ret[4].value.ptr = pkt->indev_name;