git://git.onelab.eu
/
codemux.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
- fixed a bug which makes the function stack overflow in some cases
[codemux.git]
/
codemux.c
diff --git
a/codemux.c
b/codemux.c
index
efc8b1c
..
4e4fabe
100644
(file)
--- a/
codemux.c
+++ b/
codemux.c
@@
-457,7
+457,7
@@
static int
FindService(FlowBuf *fb, int *whichService, struct in_addr addr)
{
char *end;
FindService(FlowBuf *fb, int *whichService, struct in_addr addr)
{
char *end;
- char
*lowerBuf
;
+ char
lowerBuf[FB_ALLOCSIZE]
;
char *hostVal;
char *buf = fb->fb_buf;
char orig[256];
char *hostVal;
char *buf = fb->fb_buf;
char orig[256];
@@
-466,7
+466,7
@@
FindService(FlowBuf *fb, int *whichService, struct in_addr addr)
int i;
int len;
#endif
int i;
int len;
#endif
-
+
if (strstr(buf, "\n\r\n") == NULL && strstr(buf, "\n\n") == NULL)
return(FAILURE);
if (strstr(buf, "\n\r\n") == NULL && strstr(buf, "\n\n") == NULL)
return(FAILURE);
@@
-475,7
+475,7
@@
FindService(FlowBuf *fb, int *whichService, struct in_addr addr)
fb->fb_used += InsertHeader(buf, fb->fb_used + 1, orig);
/* get just the header, so we can work on it */
fb->fb_used += InsertHeader(buf, fb->fb_used + 1, orig);
/* get just the header, so we can work on it */
-
LOCAL_STR_DUP_LOWER
(lowerBuf, buf);
+
StrcpyLower
(lowerBuf, buf);
if ((end = strstr(lowerBuf, "\n\r\n")) == NULL)
end = strstr(lowerBuf, "\n\n");
*end = '\0';
if ((end = strstr(lowerBuf, "\n\r\n")) == NULL)
end = strstr(lowerBuf, "\n\n");
*end = '\0';
@@
-503,7
+503,6
@@
FindService(FlowBuf *fb, int *whichService, struct in_addr addr)
DoesDotlessSuffixMatch(hostVal, 0, serviceSig[i].ss_host)) {
*whichService = i;
free(hostVal);
DoesDotlessSuffixMatch(hostVal, 0, serviceSig[i].ss_host)) {
*whichService = i;
free(hostVal);
- /* printf("%s", buf); */
return(SUCCESS);
}
}
return(SUCCESS);
}
}
@@
-1033,19
+1032,8
@@
static int
OpenLogFile(void)
{
static const char* logfile = "/var/log/codemux.log";
OpenLogFile(void)
{
static const char* logfile = "/var/log/codemux.log";
- static const char* oldlogfile = "/var/log/codemux.log.old";
int logfd;
int logfd;
- /* if the previous log file exists,
- rename it to the oldlogfile */
- if (access(logfile, F_OK) == 0) {
- if (rename(logfile, oldlogfile) < 0) {
- fprintf(stderr, "cannot rotate the logfile err=%s\n",
- strerror(errno));
- exit(-1);
- }
- }
-
logfd = open(logfile, O_WRONLY | O_APPEND | O_CREAT, 0600);
if (logfd < 0) {
fprintf(stderr, "cannot open the logfile err=%s\n",
logfd = open(logfile, O_WRONLY | O_APPEND | O_CREAT, 0600);
if (logfd < 0) {
fprintf(stderr, "cannot open the logfile err=%s\n",