Bug 102909

Summary: Snort 2.6.0 port dynamic location problem
Product: Ports & Packages Reporter: Richard Bejtlich <taosecurity>
Component: Individual Port(s)Assignee: Cheng-Lung Sung <clsung>
Status: Closed FIXED    
Severity: Affects Only Me    
Priority: Normal    
Version: Latest   
Hardware: Any   
OS: Any   

Description Richard Bejtlich 2006-09-05 16:10:18 UTC
The pkg_plist for Snort 2.6.0 is incorrectly specified.

# snort -T
..edited...

Loading dynamic engine /usr/local/lib/snort_dynamicengine/libsf_engine.so... ERROR: Failed to load /usr/local/lib/snort_dynamicengine/libsf_engine.so: Cannot open "/usr/local/lib/snort_dynamicengine/libsf_engine.so"
Fatal Error, Quitting..

# find / -name libsf_engine.so
/usr/local/lib/snort/dynamicengine/libsf_engine.so

Here is the pkg-plist entry:

orr:/usr/ports/security/snort$ grep lib/snort * | grep dynamic
pkg-plist:%%DYNAMIC%%lib/snort/dynamicengine/libsf_engine.so
pkg-plist:%%DYNAMIC%%lib/snort/dynamicengine/libsf_engine.so.0
pkg-plist:%%DYNAMIC%%lib/snort/dynamicengine/libsf_engine.la
pkg-plist:%%DYNAMIC%%lib/snort/dynamicengine/libsf_engine.a
pkg-plist:%%DYNAMIC%%@dirrmtry lib/snort/dynamicengine
pkg-plist:%%DYNAMIC%%lib/snort/dynamicpreprocessor/libsf_ftptelnet_preproc.so
pkg-plist:%%DYNAMIC%%lib/snort/dynamicpreprocessor/libsf_ftptelnet_preproc.so.0
pkg-plist:%%DYNAMIC%%lib/snort/dynamicpreprocessor/libsf_ftptelnet_preproc.la
pkg-plist:%%DYNAMIC%%lib/snort/dynamicpreprocessor/libsf_ftptelnet_preproc.a
pkg-plist:%%DYNAMIC%%lib/snort/dynamicpreprocessor/libsf_smtp_preproc.so
pkg-plist:%%DYNAMIC%%lib/snort/dynamicpreprocessor/libsf_smtp_preproc.so.0
pkg-plist:%%DYNAMIC%%lib/snort/dynamicpreprocessor/libsf_smtp_preproc.la
pkg-plist:%%DYNAMIC%%lib/snort/dynamicpreprocessor/libsf_smtp_preproc.a
pkg-plist:%%DYNAMIC%%@dirrmtry lib/snort/dynamicpreprocessor

Fix: 

The location of the dynamic files can be specified in snort.conf:

dynamicpreprocessor directory /usr/local/lib/snort_dynamicpreprocessor/

dynamicengine /usr/local/lib/snort_dynamicengine/libsf_engine.so

Two options exist:

1.

Modify the pkg-plist to replace snort/dynamicengine with snort_dynamicengine.
Modify the pkg-plist to replace snort/dynamicpreprocessor with snort_dynamicpreprocessor.

2.

Modify snort.conf to specify

dynamicpreprocessor directory /usr/local/lib/snort/dynamicpreprocessor/
dynamicengine /usr/local/lib/snort/dynamicengine/libsf_engine.so

The second is preferred to stay consistent with hierarchy standards.

Note command-line options --dynamic-preprocessor-lib and --dynamic-engine-lib can also affect operation.

For my tests I changed snort.conf and successfully ran Snort.

Thank you!
How-To-Repeat: Install Snort 2.6.0 from package available today.
Comment 1 Edwin Groothuis freebsd_committer freebsd_triage 2006-09-05 23:21:46 UTC
Responsible Changed
From-To: freebsd-ports-bugs->clsung

Over to maintainer
Comment 2 Cheng-Lung Sung freebsd_committer freebsd_triage 2006-09-06 03:29:38 UTC
State Changed
From-To: open->closed

Committed. Thank You.