Fix reject code to not send resets for all alerts.

remotes/origin/master-1.0.x
Victor Julien 16 years ago
parent f925ac9351
commit 194015c6cf

@ -23,6 +23,8 @@
#include "respond-reject.h" #include "respond-reject.h"
#include "respond-reject-libnet11.h" #include "respond-reject-libnet11.h"
#include "util-debug.h"
int RejectSendIPv4TCP(ThreadVars *, Packet *, void *); int RejectSendIPv4TCP(ThreadVars *, Packet *, void *);
int RejectSendIPv4ICMP(ThreadVars *, Packet *, void *); int RejectSendIPv4ICMP(ThreadVars *, Packet *, void *);
int RejectSendIPv6TCP(ThreadVars *, Packet *, void *); int RejectSendIPv6TCP(ThreadVars *, Packet *, void *);
@ -38,11 +40,12 @@ void TmModuleRespondRejectRegister (void) {
} }
TmEcode RespondRejectFunc(ThreadVars *tv, Packet *p, void *data, PacketQueue *pq) { TmEcode RespondRejectFunc(ThreadVars *tv, Packet *p, void *data, PacketQueue *pq) {
int ret = 0; int ret = 0;
/* ACTION_REJECT defaults to rejecting the SRC */ /* ACTION_REJECT defaults to rejecting the SRC */
if (!(p->action & ACTION_REJECT) && !(p->action & ACTION_REJECT_DST) && if (!(p->action & ACTION_REJECT) &&
(p->action & ACTION_REJECT_BOTH)) { !(p->action & ACTION_REJECT_DST) &&
!(p->action & ACTION_REJECT_BOTH)) {
return TM_ECODE_OK; return TM_ECODE_OK;
} }
@ -66,6 +69,7 @@ TmEcode RespondRejectFunc(ThreadVars *tv, Packet *p, void *data, PacketQueue *pq
/* we're only supporting IPv4 and IPv6 */ /* we're only supporting IPv4 and IPv6 */
return TM_ECODE_OK; return TM_ECODE_OK;
} }
if (ret) if (ret)
return TM_ECODE_FAILED; return TM_ECODE_FAILED;
else else
@ -104,13 +108,17 @@ int RejectSendIPv4ICMP(ThreadVars *tv, Packet *p, void *data) {
return 0; return 0;
} }
/** \todo implement */
int RejectSendIPv6TCP(ThreadVars *tv, Packet *p, void *data) { int RejectSendIPv6TCP(ThreadVars *tv, Packet *p, void *data) {
printf ("we would send a ipv6 tcp reset here\n"); SCEnter();
return 1; SCLogDebug("we would send a ipv6 tcp reset here");
SCReturnInt(0);
} }
/** \todo implement */
int RejectSendIPv6ICMP(ThreadVars *tv, Packet *p, void *data) { int RejectSendIPv6ICMP(ThreadVars *tv, Packet *p, void *data) {
printf ("we would send a ipv6 icmp reset here\n"); SCEnter();
return 1; SCLogDebug("we would send a ipv6 icmp reset here");
SCReturnInt(0);
} }

Loading…
Cancel
Save