]> git.ipfire.org Git - thirdparty/suricata.git/commitdiff
af-packet: ring mode is not optionnal in AFPReadFromRing
authorEric Leblond <eric@regit.org>
Mon, 3 Sep 2012 16:38:45 +0000 (18:38 +0200)
committerVictor Julien <victor@inliniac.net>
Thu, 6 Sep 2012 08:24:05 +0000 (10:24 +0200)
src/source-af-packet.c

index 8ceac4a3d700b74bc3d0c8beb89b69727a5e3c00..296ebc2e7e31155e422f4ad417800b1b3a13a397 100644 (file)
@@ -650,16 +650,14 @@ int AFPReadFromRing(AFPThreadVars *ptv)
             SCReturnInt(AFP_FAILURE);
         }
 
-        if (ptv->flags & AFP_RING_MODE) {
-            p->afp_v.relptr = h.raw;
-            p->ReleaseData = AFPReleaseDataFromRing;
+        p->afp_v.relptr = h.raw;
+        p->ReleaseData = AFPReleaseDataFromRing;
 
-            p->afp_v.copy_mode = ptv->copy_mode;
-            if (p->afp_v.copy_mode != AFP_COPY_MODE_NONE) {
-                p->afp_v.peer = ptv->mpeer->peer;
-            } else {
-                p->afp_v.peer = NULL;
-            }
+        p->afp_v.copy_mode = ptv->copy_mode;
+        if (p->afp_v.copy_mode != AFP_COPY_MODE_NONE) {
+            p->afp_v.peer = ptv->mpeer->peer;
+        } else {
+            p->afp_v.peer = NULL;
         }
 
         from = (void *)h.raw + TPACKET_ALIGN(ptv->tp_hdrlen);
@@ -686,17 +684,15 @@ int AFPReadFromRing(AFPThreadVars *ptv)
                 TmqhOutputPacketpool(ptv->tv, p);
                 SCReturnInt(AFP_FAILURE);
             } else {
-                if (ptv->flags & AFP_RING_MODE) {
-                    p->afp_v.relptr = h.raw;
-
-                    p->afp_v.copy_mode = ptv->copy_mode;
-                    if (p->afp_v.copy_mode != AFP_COPY_MODE_NONE) {
-                        p->afp_v.peer = ptv->mpeer->peer;
-                    } else {
-                        p->afp_v.peer = NULL;
-                    }
-                    p->ReleaseData = AFPReleaseDataFromRing;
+                p->afp_v.relptr = h.raw;
+
+                p->afp_v.copy_mode = ptv->copy_mode;
+                if (p->afp_v.copy_mode != AFP_COPY_MODE_NONE) {
+                    p->afp_v.peer = ptv->mpeer->peer;
+                } else {
+                    p->afp_v.peer = NULL;
                 }
+                p->ReleaseData = AFPReleaseDataFromRing;
             }
         } else {
             if (PacketCopyData(p, (unsigned char*)h.raw + h.h2->tp_mac, h.h2->tp_snaplen) == -1) {