首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Snort错误: plugbase.c:未定义的对:“安装”的引用

Snort错误: plugbase.c:未定义的对:“安装”的引用
EN

Stack Overflow用户
提问于 2015-04-20 09:39:12
回答 1查看 399关注 0票数 2

我不知所措,我希望有人能解决这个问题,或者给我一个有用的提示。

我试图在Snort中添加一个预处理器和相应的检测插件。(包括预处理器没有任何错误,但是没有相应的检测插件是无用的)

我已经将代码的必要部分包含到源文件中,并在正确的位置复制了所有必要的文件。

“配置”正在运行,没有任何错误:

代码语言:javascript
运行
复制
./configure --enable-sourcefire --enable-targetbased

但是,当我执行make时,我会得到以下错误:

代码语言:javascript
运行
复制
plugbase.o: In function 'RegisterRuleOptions':
../snort-2.9.3.1/src/plugbase.c:199: undefined reference to 'SetupProfi'
collect2: error: ld returned 1 exit status

以下是我的plugbase.c的重要部分

代码语言:javascript
运行
复制
/* built-in detection plugins */
#include "detection-plugins/sp_profinet_func.h"
...
...
...
void RegisterRuleOptions(void)
{
    LogMessage("Initializing Plug-ins!\n");

SetupProfi();
}

sp_profinet_func.csp_profinet_func.h文件在src/detection-plugins中。这是sp_profinet_func.h的代码

代码语言:javascript
运行
复制
#ifndef __SP_PROFINET_H__
#define __SP_PROFINET_H__

void SetupProfi(void);
#ifdef DETECTION_OPTION_TREE
u_int32_t SpProfinetFunctionCodeCheckHash(void *d);
int SpProfinetFunctionCodeCheckCompare(void *l, void *r);
#endif

#endif  /* __SP_PROFINET_H__ */

这是sp_profinet_func.c的摘录

代码语言:javascript
运行
复制
void SetupProfi(void)
{
    printf("RULES-SetupProfi");   
     /* map the keyword to an initialization/processing function */
    RegisterRuleOption("Profinet_func", SpProfinetFunctionCodeInit, NULL, OPT_TYPE_DETECTION, NULL);
}

我对C/C++编程和编译比较陌生。我已经发现这个错误可能意味着链接问题,但我不知道如何修复它。

有没有人知道如何解决这个问题,并让探测插件启动?

操作系统是Debian7.8,由于插件开发人员的推荐,我使用Snort-Version2.9.3.1。

提前感谢!

克里斯

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-04-20 11:58:41

我自己解决了这个问题。谢谢@ RP和@ Pandrei给出的提示来看Makefile。

./configure之后,我查看了Makefile (src/ that ),发现在"am_libspd_a_SOURCES_DIST“下没有sp_profinet_func.c sp_profinet_func.h的声明,在"am_libspd_a_OBJECTS”下也没有sp_profinet_func.$(OBJEXT)

我只是添加了这些声明,并执行了makesudo make install,现在预处理器和检测插件正在运行。

谢谢你的努力。

克里斯

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29744242

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档