]> git.ipfire.org Git - thirdparty/suricata.git/commitdiff
mime: remove unused 'linerem' logic
authorVictor Julien <vjulien@oisf.net>
Sun, 26 Jun 2022 14:25:36 +0000 (16:25 +0200)
committerVictor Julien <vjulien@oisf.net>
Wed, 29 Jun 2022 07:38:22 +0000 (09:38 +0200)
src/util-decode-mime.c
src/util-decode-mime.h

index 5a9d229255b49cb812bac9ceb14c19e7a8c2d497..cdcc5f90ecc06a43697b22810d7720964955b3a2 100644 (file)
@@ -1152,38 +1152,31 @@ static int ProcessDecodedDataChunk(const uint8_t *chunk, uint32_t len,
                 (entity->ctnt_flags & CTNT_IS_HTML)) &&
                 ((entity->ctnt_flags & CTNT_IS_ATTACHMENT) == 0)) {
 
-                /* Remainder from previous line */
-                if (state->linerem_len > 0) {
-                    // TODO
-                } else {
-                    /* No remainder from previous line */
-                    /* Parse each line one by one */
-                    remainPtr = (uint8_t *)chunk;
-                    do {
-                        tok = GetLine(remainPtr, len - (remainPtr - (uint8_t *)chunk),
-                                &remainPtr, &tokLen);
-                        if (tok != remainPtr) {
-                            // DEBUG - ADDED
-                            /* If last token found without CR/LF delimiter, then save
-                             * and reconstruct with next chunk
-                             */
-                            if (tok + tokLen - (uint8_t *) chunk == (int)len) {
-                                PrintChars(SC_LOG_DEBUG, "LAST CHUNK LINE - CUTOFF",
-                                        tok, tokLen);
-                                SCLogDebug("\nCHUNK CUTOFF CHARS: %u delim %u\n",
-                                        tokLen, len - (uint32_t)(tok + tokLen - (uint8_t *) chunk));
-                            } else {
-                                /* Search line for URL */
-                                ret = FindUrlStrings(tok, tokLen, state);
-                                if (ret != MIME_DEC_OK) {
-                                    SCLogDebug("Error: FindUrlStrings() function"
-                                            " failed: %d", ret);
-                                    break;
-                                }
+                /* Parse each line one by one */
+                remainPtr = (uint8_t *)chunk;
+                do {
+                    tok = GetLine(
+                            remainPtr, len - (remainPtr - (uint8_t *)chunk), &remainPtr, &tokLen);
+                    if (tok != remainPtr) {
+                        /* If last token found without CR/LF delimiter, then save
+                         * and reconstruct with next chunk
+                         */
+                        if (tok + tokLen - (uint8_t *)chunk == (int)len) {
+                            PrintChars(SC_LOG_DEBUG, "LAST CHUNK LINE - CUTOFF", tok, tokLen);
+                            SCLogDebug("\nCHUNK CUTOFF CHARS: %u delim %u\n", tokLen,
+                                    len - (uint32_t)(tok + tokLen - (uint8_t *)chunk));
+                        } else {
+                            /* Search line for URL */
+                            ret = FindUrlStrings(tok, tokLen, state);
+                            if (ret != MIME_DEC_OK) {
+                                SCLogDebug("Error: FindUrlStrings() function"
+                                           " failed: %d",
+                                        ret);
+                                break;
                             }
                         }
-                    } while (tok != remainPtr && remainPtr - (uint8_t *) chunk < (int)len);
-                }
+                    }
+                } while (tok != remainPtr && remainPtr - (uint8_t *)chunk < (int)len);
             }
         }
 
index 1e4318fbaae2b206731160b5f28a7c0527de1a38..3fd15899b40288d0f1ff6092edb971d727cebf5e 100644 (file)
@@ -65,7 +65,6 @@
 
 /* Publicly exposed size constants */
 #define DATA_CHUNK_SIZE  3072  /* Should be divisible by 3 */
-#define LINEREM_SIZE      256
 
 /* Mime Parser Constants */
 #define HEADER_READY    0x01
@@ -197,8 +196,6 @@ typedef struct MimeDecParseState {
     uint32_t hlen;  /**< Length of the last known header name */
     uint32_t hvlen; /**< Total length of value list */
     DataValue *hvalue;  /**< Pointer to the incomplete header value list */
-    uint8_t linerem[LINEREM_SIZE];  /**< Remainder from previous line (for URL extraction) */
-    uint16_t linerem_len;  /**< Length of remainder from previous line */
     uint8_t bvremain[B64_BLOCK];  /**< Remainder from base64-decoded line */
     uint8_t bvr_len;  /**< Length of remainder from base64-decoded line */
     uint8_t data_chunk[DATA_CHUNK_SIZE];  /**< Buffer holding data chunk */