Package: suricata
Version: 3.1.3-3
Severity: wishlist

Dear Suricata maintainers,

I spent some time last week to assess how much effort it would be to enable
Hyperscan support for Debian's suricata packages. Robert Haist has been so kind
to provide a package for Hyperscan, available on the currently supported
architectures. I would consider it quite useful to provide a performance-
optimised variant of Suricata on architectures that support it, and make use of
Robert's work bringing Hyperscan into Debian (surely with Suricata in mind).

My first approach was to add an additional binary package identical to the
current one, except with a runtime dependency on libhyperscan4 and Hyperscan
support enabled while the original 'suricata' package stays as it is, with no
explicit Hyperscan support built in. This would keep Suricata available in
principle on architectures unsupported by Hyperscan. Both packages Conflict:
with each other to prevent simultaneous installation. Please find the necessary
changes in the 'hyperscan' branch of my personal Suricata repo [1].

Arturo suggested that it might be cleaner to reduce redundancy by just
switching out the /usr/bin/suricata binary with a separate one linked against
libhyperscan, e.g. via a diversion. I implemented this approach in my
'hyperscan-with-diversion' branch in the same repo [2] and I think this might
indeed be a better way to accomplish what I was trying to do, keeping changes
as minimal as possible.

I would be curious to learn what the maintainers' and community thoughts are,
and would appreciate any comments you might have.

By the way, to make sure that backports to Jessie are not blocked by a missing
Hyperscan dependency, I have prepared a backport for the latest Hyperscan in
Debian, and it was accepted from backports NEW this morning.

Thanks and kind regards
Sascha


[1] https://anonscm.debian.org/cgit/users/satta/suricata.git/log/?h=hyperscan
[2] 
https://anonscm.debian.org/cgit/users/satta/suricata.git/log/?h=hyperscan-with-diversion

Reply via email to