From da4b03e4dbe64091063af3fe0281617ef99e40bb Mon Sep 17 00:00:00 2001
From: Phil <phil@secdev.org>
Date: Sun, 27 Sep 2009 21:33:40 +0200
Subject: [PATCH] Fixed bad usec rouding in PcapWriter

---
 scapy/utils.py | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/scapy/utils.py b/scapy/utils.py
index da74e878..06f451e0 100644
--- a/scapy/utils.py
+++ b/scapy/utils.py
@@ -661,7 +661,7 @@ class RawPcapWriter:
             if sec is None:
                 sec = it
             if usec is None:
-                usec = int((t-it)*1000000)
+                usec = int(round((t-it)*1000000))
         self.f.write(struct.pack(self.endian+"IIII", sec, usec, caplen, wirelen))
         self.f.write(packet)
         if self.gz and self.sync:
@@ -686,7 +686,7 @@ class PcapWriter(RawPcapWriter):
 
     def _write_packet(self, packet):        
         sec = int(packet.time)
-        usec = int((packet.time-sec)*1000000)
+        usec = int(round((packet.time-sec)*1000000))
         s = str(packet)
         caplen = len(s)
         RawPcapWriter._write_packet(self, s, sec, usec, caplen, caplen)
-- 
GitLab