diff --git a/scapy/arch/pcapdnet.py b/scapy/arch/pcapdnet.py
index 13bacc4a6075f49db4dc19dc928f5d94ac6a491a..f15c81aa908e0392ad5cd954cc7f66cf12732ced 100644
--- a/scapy/arch/pcapdnet.py
+++ b/scapy/arch/pcapdnet.py
@@ -50,6 +50,8 @@ if conf.use_pcap:
                         self.pcap = pcap.pcap(device, snaplen, promisc, immediate=1)                    
                 def __getattr__(self, attr):
                     return getattr(self.pcap, attr)
+                def __del__(self):
+                    warning("__del__: don't know how to close the file descriptor. Bugs ahead ! Please report this bug.")
             open_pcap = lambda *args,**kargs: _PcapWrapper_pypcap(*args,**kargs)
         elif hasattr(pcap,"pcapObject"): # python-libpcap
             class _PcapWrapper_libpcap:
@@ -66,6 +68,9 @@ if conf.use_pcap:
                     return ts,pkt
                 def __getattr__(self, attr):
                     return getattr(self.pcap, attr)
+                def __del__(self):
+                    fd = self.pcap.fileno()
+                    os.close(fd)
             open_pcap = lambda *args,**kargs: _PcapWrapper_libpcap(*args,**kargs)
         elif hasattr(pcap,"open_live"): # python-pcapy
             class _PcapWrapper_pcapy:
@@ -85,6 +90,8 @@ if conf.use_pcap:
                     return 0
                 def __getattr__(self, attr):
                     return getattr(self.pcap, attr)
+                def __del__(self):
+                    warning("__del__: don't know how to close the file descriptor. Bugs ahead ! Please report this bug.")
             open_pcap = lambda *args,**kargs: _PcapWrapper_pcapy(*args,**kargs)