(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);
}
}
/* 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
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 */