1. 26 Nov, 2017 11 commits
  2. 25 Nov, 2017 4 commits
    • rswindell's avatar
      Implemented recursive (up to 3-levels) MIME parsing of multi-part message · 78005b9b
      rswindell authored
      "entities" to find the "plain-text" representation of the body text in nested
      MIME-encoded bodies. Still todo: decode Base64 and QP-encoded "plain text"
      MIME parts.
    • rswindell's avatar
      Don't show the new status header values as part of the 'R' command. · d54dc021
      rswindell authored
      A good way to use the 'R' command woud be:
      "smbutil -C Rcs <base>" which tells smbutil to:
      -continue on error opening the msg base (e.g. corruption)
      -re-init the SMB/status headers
      -change/config the status header values (e.g. max msgs, crcs, age)
      -show the status header
    • rswindell's avatar
      smbutil v2.34: · e09f8756
      rswindell authored
      - Added 'R' (capital 'R') command, which can be used to repair a corrupted
        "SMB header" and status header in the *.shd file. The status header
        fields "max_msgs", "max_crcs", and "max_age" are not recovered (just
        initialized to 0) since we don't have those configuration settings in
        smbutil. Modifying the base configuration in SCFG and saving changes
        will recover those values.
      - Added '-C' (capital 'C') option: to continue to open a msg base even when
        some forms of SMB header corruption are detected. This option may be used
        in combination with some commands (e.g. 'c' and 'R') to recover a
        corrupted message base.
      Command-line options were previously not case-sensistive (all options were
      treated the same regardless of letter case) - now, most options are still
      treated the same regardless of case, but newer options will be redefining
      the uppercase equivalent (e.g. '-C' is now not the same as '-c').
    • rswindell's avatar
      Created smb_initsmbhdr() which performs a subset of what smb_create() does, · adfd3ac7
      rswindell authored
      it justs initializes/re-initializes the SMB header and status header
      Created smb_t.continue_on_error which (currently) allows an smb_open() to
      continue event though some (normally fatal) errors have been detected
      (e.g. corrupted SMB header).
      This is all in the name of being able to recover message bases after more
      forms of corruption.
  3. 24 Nov, 2017 8 commits
  4. 23 Nov, 2017 1 commit
  5. 22 Nov, 2017 1 commit
    • rswindell's avatar
      Fixed bug in JS msgbase.save_msg(), when multiple recipients were · 6f5aa63c
      rswindell authored
      passed (as an array), the message's data blocks would be allocated with a
      refcount of 1, as though only one message header referenced the data. This
      is really only an issue with bulkmail/multiple-recipient email and when the
      first message was deleted, the remaining (headers) would point to free
      data blocks which could and eventually would be overwritten by another
      message's data (body text). chksmb would only catch the problem when the
      refcount reached 0 but there was still one or more message headers pointing
      at the data.
  6. 21 Nov, 2017 1 commit
  7. 17 Nov, 2017 14 commits