bulk_extractor icon indicating copy to clipboard operation
bulk_extractor copied to clipboard

Looks like openssl is still linked to bulk_extractor?

Open chenrui333 opened this issue 1 year ago • 3 comments

👋 I can still see openssl linkage for bulk_extractor for the homebrew build, but in the build note, it said openssl is not required, is that true?

https://github.com/simsong/bulk_extractor/blob/b2279ce0c7e85cf5a68cbc1d130ffc4ac322f263/etc/CONFIGURE_MACOS.bash#L26

Also another thing, it looks like abseil is linked for macos builds, but not linux build, did I miss any build config? Thanks!

relates to https://github.com/Homebrew/homebrew-core/pull/183451

chenrui333 avatar Sep 05 '24 13:09 chenrui333

Hi. Sorry about the confusion here. Let me try to clarify:

  • bulk_extractor requires OpenSSL on some platforms, but not on MacOS, as it uses the OS-provided encryption routines there.
  • bulk_extractor now really wants to use re2 which requires abseil. So it really does require both!
  • This is a problem for the mingw compilation, since I can't find a decent re2 and abseil package for mingw.
  • I also can't find another decent regex package that will handle this regex gracefully: .*@company.com.

Please let me know if you have suggestions to help me address above.

simsong avatar Sep 05 '24 17:09 simsong

  • bulk_extractor requires OpenSSL on some platforms, but not on MacOS, as it uses the OS-provided encryption routines there.

but if openssl present, then it would link to the openssl instead of os-provided crypto?

  • bulk_extractor now really wants to use re2 which requires abseil. So it really does require both!

I thought about it, make sense to me, but somehow on the brew linux build, the abseil did not get linked, do you know why?

chenrui333 avatar Sep 05 '24 17:09 chenrui333

  • bulk_extractor requires OpenSSL on some platforms, but not on MacOS, as it uses the OS-provided encryption routines there.

but if openssl present, then it would link to the openssl instead of os-provided crypto?

No. bulk_extractor uses dfxml for its hashing, and if common crypto is provided, it will use that instead of openSSL:

https://github.com/dfxml-working-group/dfxml_cpp/blob/1e92fe8ac74e0319324ad3956ce99b54455258fa/src/hash_t.h#L55

  • bulk_extractor now really wants to use re2 which requires abseil. So it really does require both!

I thought about it, make sense to me, but somehow on the brew linux build, the abseil did not get linked, do you know why?

Perhaps it's in the base library somewhere.

simsong avatar Sep 05 '24 18:09 simsong