Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
DISCONTINUED:openSUSE:11.1
sarg
sarg-2.2.5-getword_boundary_limit.patch
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File sarg-2.2.5-getword_boundary_limit.patch of Package sarg
--- sarg-2.2.5/auth.c.orig 2008-03-03 23:08:01.000000000 +0100 +++ sarg-2.2.5/auth.c 2008-04-21 17:43:50.000000000 +0200 @@ -39,7 +39,7 @@ void htaccess(char *name) } strcpy(warea,Require); - getword(buf,warea,'%'); + getword(buf,sizeof(buf),warea,'%'); fputs("AuthUserFile ",fp_auth); fputs(AuthUserFile,fp_auth); fputs("\n",fp_auth); --- sarg-2.2.5/authfail.c.orig 2008-03-03 23:08:01.000000000 +0100 +++ sarg-2.2.5/authfail.c 2008-04-21 17:44:49.000000000 +0200 @@ -113,11 +113,11 @@ void authfail_report() fputs(url,fp_ou); while(fgets(buf,sizeof(buf),fp_in)!=NULL) { - getword(data,buf,' '); - getword(hora,buf,' '); - getword(user,buf,' '); - getword(ip,buf,' '); - getword(url,buf,' '); + getword(data,sizeof(data),buf,' '); + getword(hora,sizeof(hora),buf,' '); + getword(user,sizeof(user),buf,' '); + getword(ip,sizeof(ip),buf,' '); + getword(url,sizeof(url),buf,' '); if((str=(char *) strstr(user, "_")) != (char *) NULL ) { if((str=(char *) strstr(str+1, "_")) != (char *) NULL ) --- sarg-2.2.5/convlog.c.orig 2008-04-21 17:05:25.000000000 +0200 +++ sarg-2.2.5/convlog.c 2008-04-21 17:45:21.000000000 +0200 @@ -47,7 +47,7 @@ void convlog(char *arq, char *df, int df } while(fgets(buf,sizeof(buf),fp_in)!=NULL) { - getword(data,buf,' '); + getword(data,sizeof(data),buf,' '); tt=atoi(data); t=localtime(&tt); --- sarg-2.2.5/dansguardian_log.c.orig 2008-03-03 23:08:01.000000000 +0100 +++ sarg-2.2.5/dansguardian_log.c 2008-04-21 17:47:44.000000000 +0200 @@ -97,16 +97,16 @@ int dansguardian_log() if(strncmp(buf,"#",1) == 0) continue; if(strstr(buf,"loglocation ") != 0) { - getword(loglocation,buf,'\''); - getword(loglocation,buf,'\''); + getword(loglocation,sizeof(loglocation),buf,'\''); + getword(loglocation,sizeof(loglocation),buf,'\''); break; } } if(debug) { strcpy(buf,text[7]); - getword(urly,buf,' '); - getword(href,buf,' '); + getword(urly,sizeof(urly),buf,' '); + getword(href,sizeof(href),buf,' '); sprintf(msg,"%s DansGuardian %s: %s",urly,buf,loglocation); debuga(msg); } @@ -119,18 +119,18 @@ int dansguardian_log() while(fgets(buf,sizeof(buf),fp_in) != NULL) { if(strstr(buf," *DENIED* ") == 0) continue; - getword(year,buf,'.'); - getword(mon,buf,'.'); - getword(day,buf,' '); - getword(hour,buf,' '); - getword(user,buf,' '); - getword(ip,buf,' '); - getword(url,buf,'/'); - getword(url,buf,'/'); - getword(url,buf,' '); - getword(code1,buf,' '); - getword(code1,buf,' '); - getword(code2,buf,' '); + getword(year,sizeof(year),buf,'.'); + getword(mon,sizeof(year),buf,'.'); + getword(day,sizeof(day),buf,' '); + getword(hour,sizeof(hour),buf,' '); + getword(user,sizeof(user),buf,' '); + getword(ip,sizeof(ip),buf,' '); + getword(url,sizeof(url),buf,'/'); + getword(url,sizeof(url),buf,'/'); + getword(url,sizeof(url),buf,' '); + getword(code1,sizeof(code1),buf,' '); + getword(code1,sizeof(code1),buf,' '); + getword(code2,sizeof(code2),buf,' '); sprintf(wdata,"%s%02d%s",year,atoi(mon),day); idata = atoi(wdata); --- sarg-2.2.5/dansguardian_report.c.orig 2008-03-03 23:08:01.000000000 +0100 +++ sarg-2.2.5/dansguardian_report.c 2008-04-21 17:50:18.000000000 +0200 @@ -107,12 +107,12 @@ void dansguardian_report() fputs(url,fp_ou); while(fgets(buf,sizeof(buf),fp_in)!=NULL) { - getword(user,buf,' '); - getword(date2,buf,' '); - getword(hour,buf,' '); - getword(ip,buf,' '); - getword(url,buf,' '); - getword(rule,buf,'\n'); + getword(user,sizeof(user),buf,' '); + getword(date2,sizeof(date2),buf,' '); + getword(hour,sizeof(hour),buf,' '); + getword(ip,sizeof(ip),buf,' '); + getword(url,sizeof(url),buf,' '); + getword(rule,sizeof(rule),buf,'\n'); if(strcmp(UserIp,"yes") == 0) strcpy(user,ip); --- sarg-2.2.5/datafile.c.orig 2008-03-03 23:08:01.000000000 +0100 +++ sarg-2.2.5/datafile.c 2008-04-21 17:50:29.000000000 +0200 @@ -71,21 +71,21 @@ void data_file(char *tmp) } strcpy(wdname,direntp->d_name); strip_prefix: - getword(wname2,wdname,'.'); + getword(wname2,sizeof(wname2),wdname,'.'); strcat(user,wname2); ttopen=0; while(fgets(buf,sizeof(buf),fp_in)!=NULL) { - getword(accdia,buf,' '); - getword(acchora,buf,' '); - getword(accuser,buf,' '); - getword(accip,buf,' '); - getword(accurl,buf,' '); - getword(accbytes,buf,' '); - getword(acccode,buf,' '); - getword(accelap,buf,' '); - getword(accsmart,buf,' '); - getword(accsmart,buf,'"'); + getword(accdia,sizeof(accdia),buf,' '); + getword(acchora,sizeof(acchora),buf,' '); + getword(accuser,sizeof(accuser),buf,' '); + getword(accip,sizeof(accip),buf,' '); + getword(accurl,sizeof(accurl),buf,' '); + getword(accbytes,sizeof(accbytes),buf,' '); + getword(acccode,sizeof(acccode),buf,' '); + getword(accelap,sizeof(accelap),buf,' '); + getword(accsmart,sizeof(accsmart),buf,' '); + getword(accsmart,sizeof(accsmart),buf,'"'); if(strcmp(Ip2Name,"yes") == 0) { if(strcmp(accip,ipantes) != 0) { @@ -127,7 +127,7 @@ void data_file(char *tmp) nelap+=my_atoll(accelap); strcpy(wcrc,acccode); - getword(crc2,wcrc,'/'); + getword(crc2,sizeof(crc2),wcrc,'/'); if(strstr(crc2,"MISS") != 0) oucache+=my_atoll(accbytes); else incache+=my_atoll(accbytes); --- sarg-2.2.5/denied.c.orig 2008-03-03 23:08:01.000000000 +0100 +++ sarg-2.2.5/denied.c 2008-04-21 17:50:41.000000000 +0200 @@ -103,11 +103,11 @@ void gen_denied_report() fputs(url,fp_ou); while(fgets(buf,sizeof(buf),fp_in)!=NULL) { - getword(data,buf,' '); - getword(hora,buf,' '); - getword(user,buf,' '); - getword(ip,buf,' '); - getword(url,buf,' '); + getword(data,sizeof(data),buf,' '); + getword(hora,sizeof(hora),buf,' '); + getword(user,sizeof(user),buf,' '); + getword(ip,sizeof(ip),buf,' '); + getword(url,sizeof(url),buf,' '); if((str=(char *) strstr(user, "_")) != (char *) NULL ) { if((str=(char *) strstr(str+1, "_")) != (char *) NULL ) --- sarg-2.2.5/download.c.orig 2008-03-03 23:08:01.000000000 +0100 +++ sarg-2.2.5/download.c 2008-04-21 17:50:49.000000000 +0200 @@ -110,11 +110,11 @@ void download_report() fputs(url,fp_ou); while(fgets(buf,sizeof(buf),fp_in)!=NULL) { - getword(data,buf,' '); - getword(hora,buf,' '); - getword(user,buf,' '); - getword(ip,buf,' '); - getword(url,buf,' '); + getword(data,sizeof(data),buf,' '); + getword(hora,sizeof(hora),buf,' '); + getword(user,sizeof(user),buf,' '); + getword(ip,sizeof(ip),buf,' '); + getword(url,sizeof(url),buf,' '); if((str=(char *) strstr(user, "_")) != (char *) NULL ) { if((str=(char *) strstr(str+1, "_")) != (char *) NULL ) --- sarg-2.2.5/exclude.c.orig 2008-03-03 23:08:01.000000000 +0100 +++ sarg-2.2.5/exclude.c 2008-04-21 17:51:14.000000000 +0200 @@ -46,10 +46,10 @@ int vhexclude(char *excludefile, char *u strcpy(str,excludefile); strcpy(wurl,url); - getword(whost,str,' '); + getword(whost,sizeof(whost),str,' '); if(strchr(wurl,':') != 0) { - getword(warea,wurl,':'); + getword(warea,sizeof(warea),wurl,':'); strcpy(wurl,warea); } @@ -60,15 +60,15 @@ int vhexclude(char *excludefile, char *u return(0); } if(strchr(whost,'*') != 0) { - getword(warea,whost,'.'); - getword(warea,wurl,'.'); + getword(warea,sizeof(warea),whost,'.'); + getword(warea,sizeof(warea),wurl,'.'); if(strcmp(wurl,whost) == 0) { free(wurl); free(str); return(0); } } - getword(whost,str,' '); + getword(whost,sizeof(whost),str,' '); } free(wurl); free(str); --- sarg-2.2.5/getconf.c.orig 2008-03-03 23:08:01.000000000 +0100 +++ sarg-2.2.5/getconf.c 2008-04-21 17:51:20.000000000 +0200 @@ -34,7 +34,7 @@ void parmtest(char *buf) { if(strstr(buf,"background_color") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(BgColor,buf); fixnone(BgColor); return; @@ -42,7 +42,7 @@ void parmtest(char *buf) if(strstr(buf,"text_color") != 0) { if(strstr(buf,"logo_text_color") == 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(TxColor,buf); fixnone(TxColor); return; @@ -50,21 +50,21 @@ void parmtest(char *buf) } if(strstr(buf,"text_bgcolor") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(TxBgColor,buf); fixnone(TxBgColor); return; } if(strstr(buf,"title_color") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(TiColor,buf); fixnone(TiColor); return; } if(strstr(buf,"logo_image") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(LogoImage,buf); fixnone(LogoImage); return; @@ -72,57 +72,57 @@ void parmtest(char *buf) if(strstr(buf,"logo_text") != 0) { if(strstr(buf,"logo_text_color") == 0) { - getword(wbuf,buf,'"'); - getword(LogoText,buf,'"'); + getword(wbuf,sizeof(wbuf),buf,'"'); + getword(LogoText,sizeof(LogoText),buf,'"'); fixnone(LogoText); return; } } if(strstr(buf,"logo_text_color") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(LogoTextColor,buf); fixnone(LogoTextColor); return; } if(strstr(buf,"background_image") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(BgImage,buf); fixnone(BgImage); return; } if(strstr(buf,"show_sarg_info") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(ShowSargInfo,buf); fixnone(ShowSargInfo); return; } if(strstr(buf,"show_sarg_logo") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(ShowSargLogo,buf); fixnone(ShowSargLogo); return; } if(strstr(buf,"font_face") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(FontFace,buf); fixnone(FontFace); return; } if(strstr(buf,"header_color") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(HeaderColor,buf); fixnone(HeaderColor); return; } if(strstr(buf,"header_bgcolor") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(HeaderBgColor,buf); fixnone(HeaderBgColor); return; @@ -130,7 +130,7 @@ void parmtest(char *buf) if(strstr(buf,"font_size") != 0) { if(strstr(buf,"header_font_size") == 0 && strstr(buf,"title_font_size") == 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(FontSize,buf); fixnone(FontSize); return; @@ -138,22 +138,22 @@ void parmtest(char *buf) } if(strstr(buf,"header_font_size") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(HeaderFontSize,buf); fixnone(HeaderFontSize); return; } if(strstr(buf,"title_font_size") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(TitleFontSize,buf); fixnone(TitleFontSize); return; } if(strstr(buf,"image_size") != 0) { - getword(wbuf,buf,' '); - getword(Width,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); + getword(Width,sizeof(Width),buf,' '); strcpy(Height,buf); fixnone(Width); fixnone(Height); @@ -161,35 +161,35 @@ void parmtest(char *buf) } if(strstr(buf,"title") != 0) { - getword(wbuf,buf,'"'); - getword(Title,buf,'"'); + getword(wbuf,sizeof(wbuf),buf,'"'); + getword(Title,sizeof(Title),buf,'"'); fixnone(Title); return; } if(strstr(buf,"resolve_ip") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(Ip2Name,buf); fixnone(Ip2Name); return; } if(strstr(buf,"user_ip") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(UserIp,buf); fixnone(UserIp); return; } if(strstr(buf,"max_elapsed") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(MaxElapsed,buf); fixnone(MaxElapsed); return; } if(strstr(buf,"date_format") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strncpy(DateFormat,buf,1); fixnone(DateFormat); return; @@ -210,16 +210,16 @@ void parmtest(char *buf) } if(strstr(buf,"topuser_sort_field") != 0) { - getword(wbuf,buf,' '); - getword(TopuserSortField,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); + getword(TopuserSortField,sizeof(TopuserSortField),buf,' '); strcpy(TopuserSortOrder,buf); fixnone(TopuserSortOrder); return; } if(strstr(buf,"user_sort_field") != 0) { - getword(wbuf,buf,' '); - getword(UserSortField,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); + getword(UserSortField,sizeof(UserSortField),buf,' '); strcpy(UserSortOrder,buf); fixnone(UserSortOrder); return; @@ -227,7 +227,7 @@ void parmtest(char *buf) if(strstr(buf,"access_log") != 0) { if(strstr(buf,"realtime_access_log_lines") == 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(AccessLog,buf); fixnone(AccessLog); return; @@ -235,49 +235,49 @@ void parmtest(char *buf) } if(strstr(buf,"useragent_log") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(UserAgentLog,buf); fixnone(UserAgentLog); return; } if(strstr(buf,"exclude_hosts") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(ExcludeHosts,buf); fixnone(ExcludeHosts); return; } if(strstr(buf,"exclude_codes") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(ExcludeCodes,buf); fixnone(ExcludeCodes); return; } if(strstr(buf,"exclude_users") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(ExcludeUsers,buf); fixnone(ExcludeUsers); return; } if(strstr(buf,"password") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(PasswdFile,buf); fixnone(PasswdFile); return; } if(strstr(buf,"temporary_dir") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(TempDir,buf); fixnone(TempDir); return; } if(strstr(buf,"report_type") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(ReportType,buf); fixnone(ReportType); return; @@ -285,7 +285,7 @@ void parmtest(char *buf) if(strstr(buf,"output_dir") != 0) { if(strstr(buf,"output_dir_form") == 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(OutputDir,buf); fixnone(OutputDir); return; @@ -293,15 +293,15 @@ void parmtest(char *buf) } if(strstr(buf,"output_email") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(OutputEmail,buf); fixnone(OutputEmail); return; } if(strstr(buf,"per_user_limit") != 0) { - getword(wbuf,buf,' '); - getword(PerUserLimitFile,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); + getword(PerUserLimitFile,sizeof(PerUserLimitFile),buf,' '); strcpy(PerUserLimit,buf); fixnone(PerUserLimitFile); fixnone(PerUserLimit); @@ -310,28 +310,28 @@ void parmtest(char *buf) if(strstr(buf,"lastlog") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(LastLog,buf); fixnone(LastLog); return; } if(strstr(buf,"remove_temp_files") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(RemoveTempFiles,buf); fixnone(RemoveTempFiles); return; } if(strstr(buf,"replace_index") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(ReplaceIndex,buf); fixnone(ReplaceIndex); return; } if(strstr(buf,"index_tree") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(IndexTree,buf); fixnone(IndexTree); return; @@ -339,7 +339,7 @@ void parmtest(char *buf) if(strstr(buf,"index") != 0) { if(strstr(buf,"index_sort_order") == 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(Index,buf); fixnone(Index); return; @@ -347,64 +347,64 @@ void parmtest(char *buf) } if(strstr(buf,"overwrite_report") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(OverwriteReport,buf); fixnone(OverwriteReport); return; } if(strstr(buf,"records_without_userid") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(RecordsWithoutUser,buf); fixnone(RecordsWithoutUser); return; } if(strstr(buf,"use_comma") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(UseComma,buf); fixnone(UseComma); return; } if(strstr(buf,"mail_utility") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(MailUtility,buf); fixnone(MailUtility); return; } if(strstr(buf,"topsites_num") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(TopSitesNum,buf); fixnone(TopSitesNum); return; } if(strstr(buf,"topuser_num") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(TopUsersNum,buf); fixnone(TopUsersNum); return; } if(strstr(buf,"usertab") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(UserTabFile,buf); fixnone(UserTabFile); return; } if(strstr(buf,"index_sort_order") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(IndexSortOrder,buf); fixnone(IndexSortOrder); return; } if(strstr(buf,"topsites_sort_order") != 0) { - getword(wbuf,buf,' '); - getword(TopsitesSortField,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); + getword(TopsitesSortField,sizeof(TopsitesSortField),buf,' '); strcpy(TopsitesSortType,buf); fixnone(TopsitesSortField); fixnone(TopsitesSortType); @@ -412,42 +412,42 @@ void parmtest(char *buf) } if(strstr(buf,"long_url") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(LongUrl,buf); fixnone(LongUrl); return; } if(strstr(buf,"language") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(language,buf); fixnone(language); return; } if(strstr(buf,"dansguardian_conf") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(DansGuardianConf,buf); fixnone(DansGuardianConf); return; } if(strstr(buf,"squidguard_conf") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(SquidGuardConf,buf); fixnone(SquidGuardConf); return; } if(strstr(buf,"date_time_by") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(datetimeby,buf); fixnone(datetimeby); return; } if(strstr(buf,"charset") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(CharSet,buf); fixnone(CharSet); ccharset(CharSet); @@ -455,23 +455,23 @@ void parmtest(char *buf) } if(strstr(buf,"user_invalid_char") != 0) { - getword(wbuf,buf,'"'); - getword(UserInvalidChar,buf,'"'); + getword(wbuf,sizeof(wbuf),buf,'"'); + getword(UserInvalidChar,sizeof(UserInvalidChar),buf,'"'); fixnone(UserInvalidChar); return; } if(strstr(buf,"include_users") != 0) { - getword(wbuf,buf,'"'); - getword(wbuf,buf,'"'); + getword(wbuf,sizeof(wbuf),buf,'"'); + getword(wbuf,sizeof(wbuf),buf,'"'); sprintf(IncludeUsers,":%s:",wbuf); fixnone(IncludeUsers); return; } if(strstr(buf,"exclude_string") != 0) { - getword(wbuf,buf,'"'); - getword(ExcludeString,buf,'"'); + getword(wbuf,sizeof(wbuf),buf,'"'); + getword(ExcludeString,sizeof(ExcludeString),buf,'"'); fixnone(ExcludeString); return; } @@ -479,7 +479,7 @@ void parmtest(char *buf) if(strstr(buf,"privacy") != 0) { if(strstr(buf,"privacy_string") == 0 && \ strstr(buf,"privacy_string_color") == 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(Privacy,buf); fixnone(Privacy); return; @@ -488,86 +488,86 @@ void parmtest(char *buf) if(strstr(buf,"privacy_string") != 0) { if(strstr(buf,"privacy_string_color") == 0) { - getword(wbuf,buf,'"'); - getword(PrivacyString,buf,'"'); + getword(wbuf,sizeof(wbuf),buf,'"'); + getword(PrivacyString,sizeof(PrivacyString),buf,'"'); fixnone(PrivacyString); return; } } if(strstr(buf,"privacy_string_color") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(PrivacyStringColor,buf); fixnone(PrivacyStringColor); return; } if(strstr(buf,"show_successful_message") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(SuccessfulMsg,buf); fixnone(SuccessfulMsg); return; } if(strstr(buf,"show_read_statistics") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(ShowReadStatistics,buf); fixnone(ShowReadStatistics); return; } if(strstr(buf,"topuser_fields") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(TopUserFields,buf); fixnone(TopUserFields); return; } if(strstr(buf,"bytes_in_sites_users_report") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(BytesInSitesUsersReport,buf); fixnone(BytesInSitesUsersReport); return; } if(strstr(buf,"user_report_fields") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(UserReportFields,buf); fixnone(UserReportFields); return; } if(strstr(buf,"bytes_in_sites_users_report") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(BytesInSitesUsersReport,buf); fixnone(BytesInSitesUsersReport); return; } if(strstr(buf,"datafile ") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(DataFile,buf); fixnone(DataFile); return; } if(strstr(buf,"datafile_delimiter") != 0) { - getword(wbuf,buf,' '); - getword(wbuf,buf,'"'); - getword(DataFileDelimiter,buf,'"'); + getword(wbuf,sizeof(wbuf),buf,' '); + getword(wbuf,sizeof(wbuf),buf,'"'); + getword(DataFileDelimiter,sizeof(DataFileDelimiter),buf,'"'); fixnone(DataFileDelimiter); return; } if(strstr(buf,"datafile_fields") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(DataFileFields,buf); fixnone(DataFileFields); return; } if(strstr(buf,"datafile_url") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(DataFileUrl,buf); fixnone(DataFileUrl); return; @@ -575,7 +575,7 @@ void parmtest(char *buf) if(strstr(buf,"parsed_output_log") != 0) { if(strstr(buf,"parsed_output_log_compress") == 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(ParsedOutputLog,buf); fixnone(ParsedOutputLog); return; @@ -583,195 +583,195 @@ void parmtest(char *buf) } if(strstr(buf,"parsed_output_log_compress") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(ParsedOutputLogCompress,buf); fixnone(ParsedOutputLogCompress); return; } if(strstr(buf,"displayed_values") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(DisplayedValues,buf); fixnone(DisplayedValues); return; } if(strstr(buf,"authfail_report_limit") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); AuthfailReportLimit=atoi(buf); return; } if(strstr(buf,"denied_report_limit") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); DeniedReportLimit=atoi(buf); return; } if(strstr(buf,"siteusers_report_limit") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); SiteUsersReportLimit=atoi(buf); return; } if(strstr(buf,"dansguardian_report_limit") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); DansGuardianReportLimit=atoi(buf); return; } if(strstr(buf,"squidguard_report_limit") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); SquidGuardReportLimit=atoi(buf); return; } if(strstr(buf,"user_report_limit") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); UserReportLimit=atoi(buf); return; } if(strstr(buf,"download_report_limit") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); DownloadReportLimit=atoi(buf); return; } if(strstr(buf,"www_document_root") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(wwwDocumentRoot,buf); fixnone(wwwDocumentRoot); return; } if(strstr(buf,"block_it") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(BlockIt,buf); fixnone(BlockIt); return; } if(strstr(buf,"external_css_file") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(ExternalCSSFile,buf); fixnone(ExternalCSSFile); return; } if(strstr(buf,"user_authentication") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(UserAuthentication,buf); fixnone(UserAuthentication); return; } if(strstr(buf,"AuthUserFile") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(AuthUserFile,buf); fixnone(AuthUserFile); return; } if(strstr(buf,"AuthName") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(AuthName,buf); fixnone(AuthName); return; } if(strstr(buf,"AuthType") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(AuthType,buf); fixnone(AuthType); return; } if(strstr(buf,"Require") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(Require,buf); fixnone(Require); return; } if(strstr(buf,"download_suffix") != 0) { - getword(wbuf,buf,'"'); - getword(DownloadSuffix,buf,'"'); + getword(wbuf,sizeof(wbuf),buf,'"'); + getword(DownloadSuffix,sizeof(DownloadSuffix),buf,'"'); fixnone(DownloadSuffix); return; } if(strstr(buf,"graphs") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(Graphs,buf); fixnone(Graphs); return; } if(strstr(buf,"graph_days_bytes_bar_color") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(GraphDaysBytesBarColor,buf); fixnone(GraphDaysBytesBarColor); return; } if(strstr(buf,"squidguard_log_format") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(SquidGuardLogFormat,buf); fixnone(SquidGuardLogFormat); return; } if(strstr(buf,"squidguard_ignore_date") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(SquidguardIgnoreDate,buf); fixnone(SquidguardIgnoreDate); return; } if(strstr(buf,"dansguardian_ignore_date") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(DansguardianIgnoreDate,buf); fixnone(DansguardianIgnoreDate); return; } if(strstr(buf,"ulimit") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(Ulimit,buf); fixnone(Ulimit); return; } if(strstr(buf,"ntlm_user_format") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(NtlmUserFormat,buf); fixnone(NtlmUserFormat); return; } if(strstr(buf,"realtime_types") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(RealtimeTypes,buf); fixnone(RealtimeTypes); return; } if(strstr(buf,"realtime_unauthenticated_records") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); strcpy(RealtimeUnauthRec,buf); fixnone(RealtimeUnauthRec); return; } if(strstr(buf,"realtime_refresh_time") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); realtime_refresh=atoi(buf); return; } if(strstr(buf,"realtime_access_log_lines") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); realtime_access_log_lines=atoi(buf); return; } @@ -782,9 +782,9 @@ void parmtest(char *buf) } if(strstr(buf,"byte_cost") != 0) { - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); cost=atol(buf); - getword(wbuf,buf,' '); + getword(wbuf,sizeof(wbuf),buf,' '); nocost=my_atoll(buf); return; } --- sarg-2.2.5/grepday.c.orig 2008-03-03 23:08:01.000000000 +0100 +++ sarg-2.2.5/grepday.c 2008-04-21 17:51:26.000000000 +0200 @@ -419,16 +419,16 @@ void greport_day(char *user, int *iprel, } else strcpy(name,user); while(fgets(buf,sizeof(buf),fp_in)!=NULL) { - getword(data,buf,' '); - getword(day,data,'/'); + getword(data,sizeof(data),buf,' '); + getword(day,sizeof(day),data,'/'); if(strcmp(DateFormat,"u") == 0) - getword(day,data,'/'); + getword(day,sizeof(day),data,'/'); if(!count) { strcpy(oday,day); count++; } - getword(bytes,buf,' '); - getword(bytes,buf,' '); + getword(bytes,sizeof(bytes),buf,' '); + getword(bytes,sizeof(bytes),buf,' '); bytes[strlen(bytes)-1]='\0'; if(strcmp(oday,day) != 0) { --- sarg-2.2.5/html.c.orig 2008-03-03 21:39:26.000000000 +0100 +++ sarg-2.2.5/html.c 2008-04-21 17:51:30.000000000 +0200 @@ -78,16 +78,16 @@ void htmlrel() while(fgets(buf,sizeof(buf),fp_in)!=NULL) { if(strstr(buf,"TOTAL") == 0) { - getword(wtemp,buf,' '); + getword(wtemp,sizeof(wtemp),buf,' '); ttnacc+=my_atoll(buf); - getword(wtemp,buf,' '); - getword(wtemp,buf,' '); + getword(wtemp,sizeof(wtemp),buf,' '); + getword(wtemp,sizeof(wtemp),buf,' '); totbytes+=my_atoll(wtemp); - getword(wtemp,buf,' '); - getword(wtemp,buf,' '); - getword(wtemp,buf,' '); - getword(wtemp,buf,' '); - getword(wtemp,buf,' '); + getword(wtemp,sizeof(wtemp),buf,' '); + getword(wtemp,sizeof(wtemp),buf,' '); + getword(wtemp,sizeof(wtemp),buf,' '); + getword(wtemp,sizeof(wtemp),buf,' '); + getword(wtemp,sizeof(wtemp),buf,' '); totelap+=my_atoll(wtemp); } } @@ -104,7 +104,7 @@ void htmlrel() wusuario[0]='\0'; striptxt: - getword(warea,usuario,'.'); + getword(warea,sizeof(warea),usuario,'.'); strcpy(denied_report,warea); strcat(wusuario,warea); @@ -147,17 +147,17 @@ void htmlrel() } while(fgets(buf,sizeof(buf),fp_in)!=NULL) { - getword(wtemp,buf,' '); + getword(wtemp,sizeof(wtemp),buf,' '); tnacc+=my_atoll(wtemp); - getword(wtemp,buf,' '); + getword(wtemp,sizeof(wtemp),buf,' '); tnbytes+=my_atoll(wtemp); - getword(wtemp,buf,' '); - getword(wtemp,buf,' '); - getword(wtemp,buf,' '); + getword(wtemp,sizeof(wtemp),buf,' '); + getword(wtemp,sizeof(wtemp),buf,' '); + getword(wtemp,sizeof(wtemp),buf,' '); tnelap+=my_atoll(wtemp); - getword(wtemp,buf,' '); + getword(wtemp,sizeof(wtemp),buf,' '); tnincache+=my_atoll(wtemp); - getword(wtemp,buf,' '); + getword(wtemp,sizeof(wtemp),buf,' '); tnoucache+=my_atoll(wtemp); } @@ -337,13 +337,13 @@ void htmlrel() sprintf(wwork3,"%s",fixnum2(nnelap,1)); if(strcmp(LongUrl,"yes") != 0) { - getword(warea,url,'/'); + getword(warea,sizeof(warea),url,'/'); sprintf(url,"%s",warea); strcpy(urly,url); } else { strcpy(urly,url); url_module(url, module); - getword(warea,url,'/'); + getword(warea,sizeof(warea),url,'/'); sprintf(url,"%s...%s",warea,module); } --- sarg-2.2.5/index.c.orig 2008-03-03 23:08:01.000000000 +0100 +++ sarg-2.2.5/index.c 2008-04-21 17:51:37.000000000 +0200 @@ -122,7 +122,7 @@ void make_index() bzero(newname,512); strcpy(warea,direntp2->d_name); if(strstr(warea,"-") != 0) { - getword(m1,warea,'-'); + getword(m1,sizeof(m1),warea,'-'); strcpy(m2,warea); conv_month_name(m1); conv_month_name(m2); @@ -133,7 +133,7 @@ void make_index() } strcpy(warea,direntp3->d_name); if(strstr(warea,"-") != 0) { - getword(d1,warea,'-'); + getword(d1,sizeof(d1),warea,'-'); strcpy(d2,warea); } else { strcpy(d1,warea); @@ -190,15 +190,15 @@ void make_index() obtuser(outdir,direntp->d_name,tuser); obttotal(outdir,direntp->d_name,tbytes,tuser,media); strcpy(html,data); - getword(mon,html,' '); - getword(mon,html,' '); - getword(day,html,' '); - getword(hour,html,' '); - getword(year,html,' '); - getword(year,html,' '); + getword(mon,sizeof(mon),html,' '); + getword(mon,sizeof(mon),html,' '); + getword(day,sizeof(day),html,' '); + getword(hour,sizeof(hour),html,' '); + getword(year,sizeof(year),html,' '); + getword(year,sizeof(year),html,' '); strcpy(html,hour); - getword(h,html,':'); - getword(m,html,':'); + getword(h,sizeof(h),html,':'); + getword(m,sizeof(m),html,':'); strcpy(s,html); buildymd(day,mon,year,ftime); fprintf(fp_tmp,"%s%s%s%s;%s;%s;%s;%s;%s;%s\n",ftime, h, m, s, direntp->d_name, data, tuser, tbytes, media,newname); @@ -228,7 +228,7 @@ void make_index() write_html_header(fp_ou, "."); fprintf(fp_ou,"<tr><th %s>%s</th><th %s>%s</th></tr>\n",hbc1,text[130],hbc1,text[132]); while(fgets(wwork1,MAXLEN,fp_tmp)!=NULL) { - getword(tmp4,wwork1,' '); + getword(tmp4,sizeof(tmp4),wwork1,' '); fprintf(fp_ou,"<tr><td class=\"data2\"><a href=\"%s\">%s</a></td><td class=\"data2\">%s</td></tr>\n",tmp4,tmp4,wwork1); sprintf(tmp2,"%s%s",outdir,tmp4); sprintf(tmp3,"%s%s/index.unsort",outdir,tmp4); @@ -265,7 +265,7 @@ void make_index() wwork1[strlen(wwork1)-1]='\0'; strcpy(tmp5,wwork1); if(strstr(tmp5,"-") != 0) { - getword(warea,tmp5,'-'); + getword(warea,sizeof(warea),tmp5,'-'); name_month(warea); sprintf(tmp6,"%s-",warea); name_month(tmp5); @@ -345,12 +345,12 @@ void make_index() exit(1); } while(fgets(buf,MAXLEN,fp_tmp2)!=NULL) { - getword(period,buf,';'); - getword(period,buf,';'); - getword(data,buf,';'); - getword(tuser,buf,';'); - getword(tbytes,buf,';'); - getword(media,buf,';'); + getword(period,sizeof(period),buf,';'); + getword(period,sizeof(period),buf,';'); + getword(data,sizeof(data),buf,';'); + getword(tuser,sizeof(tuser),buf,';'); + getword(tbytes,sizeof(tbytes),buf,';'); + getword(media,sizeof(media),buf,';'); fprintf(fp_ou,"<tr><td class=\"data2\"><a href='%s/%s'>%s</a></td><td class=\"data2\">%s</td><td class=\"data\">%s</td><td class=\"data\">%s</td><td class=\"data\">%s</td></tr>\n",period,ReplaceIndex,period,data,tuser,tbytes,media); } if(fp_tmp2) fclose(fp_tmp2); --- sarg-2.2.5/ip2name.c.orig 2008-03-03 23:08:01.000000000 +0100 +++ sarg-2.2.5/ip2name.c 2008-04-21 17:51:40.000000000 +0200 @@ -59,7 +59,7 @@ void name2ip(char *name) char n4[4]; if(strstr(name,":") > 0) { - getword(work,name,':'); + getword(work,sizeof(work),name,':'); strcpy(name,work); } @@ -69,9 +69,9 @@ void name2ip(char *name) memcpy(&ia.s_addr,hp->h_addr_list[0],sizeof(ia.s_addr)); ia.s_addr=ntohl(ia.s_addr); sprintf(name,"%s",inet_ntoa(ia)); - getword(n4,name,'.'); - getword(n3,name,'.'); - getword(n2,name,'.'); + getword(n4,sizeof(n4),name,'.'); + getword(n3,sizeof(n3),name,'.'); + getword(n2,sizeof(n2),name,'.'); strcpy(n1,name); sprintf(name,"%s.%s.%s.%s",n1,n2,n3,n4); --- sarg-2.2.5/language.c.orig 2008-03-03 23:08:01.000000000 +0100 +++ sarg-2.2.5/language.c 2008-04-21 17:52:00.000000000 +0200 @@ -1,55 +1,55 @@ -/* - * AUTHOR: Pedro Lineu Orso pedro.orso@gmail.com - * 1998, 2008 - * SARG Squid Analysis Report Generator http://sarg.sourceforge.net - * - * SARG donations: - * please look at http://sarg.sourceforge.net/donations.php - * --------------------------------------------------------------------- - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111, USA. - * - */ - -#include "include/conf.h" - -void language_load(char *language) -{ - - FILE *fp_text; - int record=0; - - sprintf(warea,"%s/languages/%s",SYSCONFDIR,language); - - if((fp_text=fopen(warea,"r"))==NULL) { - fprintf(stderr, "SARG: (language) Cannot open language file: %s\n",warea); - exit(1); - } - - while(fgets(buf,MAXLEN,fp_text)!=NULL) { - getword(warea,buf,'"'); - getword(warea,buf,'"'); - strcpy(text[record],warea); - - if(langcode) - printf("%d %s\n",record,warea); - - record++; - } - - fclose(fp_text); - - return; -} +/* + * AUTHOR: Pedro Lineu Orso pedro.orso@gmail.com + * 1998, 2008 + * SARG Squid Analysis Report Generator http://sarg.sourceforge.net + * + * SARG donations: + * please look at http://sarg.sourceforge.net/donations.php + * --------------------------------------------------------------------- + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111, USA. + * + */ + +#include "include/conf.h" + +void language_load(char *language) +{ + + FILE *fp_text; + int record=0; + + sprintf(warea,"%s/languages/%s",SYSCONFDIR,language); + + if((fp_text=fopen(warea,"r"))==NULL) { + fprintf(stderr, "SARG: (language) Cannot open language file: %s\n",warea); + exit(1); + } + + while(fgets(buf,MAXLEN,fp_text)!=NULL) { + getword(warea,sizeof(warea),buf,'"'); + getword(warea,sizeof(warea),buf,'"'); + strcpy(text[record],warea); + + if(langcode) + printf("%d %s\n",record,warea); + + record++; + } + + fclose(fp_text); + + return; +} --- sarg-2.2.5/lastlog.c.orig 2008-03-03 23:08:01.000000000 +0100 +++ sarg-2.2.5/lastlog.c 2008-04-21 17:52:05.000000000 +0200 @@ -88,7 +88,7 @@ void mklastlog() } while(fgets(buf,sizeof(buf),fp_in)!=NULL) { - getword(warea,buf,' '); + getword(warea,sizeof(warea),buf,' '); buf[strlen(buf)-1]='\0'; if(ftot) { --- sarg-2.2.5/log.c.orig 2008-04-21 17:05:25.000000000 +0200 +++ sarg-2.2.5/log.c 2008-04-21 17:52:18.000000000 +0200 @@ -300,7 +300,7 @@ int main(argc,argv) case 'd': strcpy(date,optarg); strcpy(cduntil,optarg); - getword(cdfrom,cduntil,'-'); + getword(cdfrom,sizeof(cdfrom),cduntil,'-'); date_from(date, cdfrom, cduntil); dfrom=atoi(cdfrom); duntil=atoi(cduntil); @@ -351,7 +351,7 @@ int main(argc,argv) strcpy(hm,optarg); strcpy(hmf,optarg); } else { - getword(hm,optarg,'-'); + getword(hm,sizeof(hm),optarg,'-'); strcpy(hmf,optarg); } if(strlen(hm) > 5) { @@ -360,13 +360,13 @@ int main(argc,argv) } bzero(whm,15); if(strstr(hm,":") != 0) { - getword(warea,hm,':'); + getword(warea,sizeof(warea),hm,':'); sprintf(whm,"%s%s",warea,hm); strcpy(hm,whm); } bzero(whm,15); if(strstr(hmf,":") != 0) { - getword(warea,hmf,':'); + getword(warea,sizeof(warea),hmf,':'); sprintf(whm,"%s%s",warea,hmf); strcpy(hmf,whm); } @@ -692,7 +692,7 @@ int main(argc,argv) while(fgets(buf,MAXLEN,fp_usr)!=NULL) { buf[strlen(buf)-1]='\0'; if(strstr(buf,"\r") != 0) buf[strlen(buf)-1]='\0'; - getword(bufy,buf,' '); + getword(bufy,sizeof(bufy),buf,' '); for(z1=0; z1<=strlen(bufy); z1++) { userfile[z2]=bufy[z1]; z2++; @@ -733,10 +733,10 @@ int main(argc,argv) if(!isalog && strncmp(bufz,"#Software: Mic",14) == 0) isalog++; if(strncmp(bufz,"*** SARG Log ***",16) == 0) { - getword(val2,arqtt,'-'); - getword(val2,arqtt,'_'); - getword(val3,arqtt,'-'); - getword(val3,arqtt,'_'); + getword(val2,sizeof(val2),arqtt,'-'); + getword(val2,sizeof(val2),arqtt,'_'); + getword(val3,sizeof(val3),arqtt,'-'); + getword(val3,sizeof(val3),arqtt,'_'); sprintf(period,"%s-%s",val2,val3); sarglog=1; } else lseek(fileno(fp_in), 0, 0); @@ -816,7 +816,7 @@ int main(argc,argv) strcpy(warea,bufz); strcpy(html,ExcludeString); while(strstr(html,":") != 0) { - getword(val1,html,':'); + getword(val1,sizeof(val1),html,':'); if((str=(char *) strstr(warea,val1)) != (char *) NULL ) exstring++; } @@ -835,29 +835,29 @@ int main(argc,argv) printf("BUF=%s\n",bufz); if(!sarglog && !isalog) { - getword(data,bufz,' '); + getword(data,sizeof(data),bufz,' '); if((str=(char *) strstr(data, ".")) != (char *) NULL ) { if((str=(char *) strstr(str+1, ".")) != (char *) NULL ) { strcpy(ip,data); strcpy(elap,"0"); if(squid24) { - getword(user,bufz,' '); - getword(none,bufz,' '); + getword(user,sizeof(user),bufz,' '); + getword(none,sizeof(none),bufz,' '); } else { - getword(none,bufz,' '); - getword(user,bufz,' '); + getword(none,sizeof(none),bufz,' '); + getword(user,sizeof(user),bufz,' '); } - getword(data,bufz,']'); - getword(fun,bufz,'"'); - getword(fun,bufz,' '); - getword(url,bufz,' '); - getword(code2,bufz,' '); - getword(code2,bufz,' '); - getword(tam,bufz,' '); + getword(data,sizeof(data),bufz,']'); + getword(fun,sizeof(fun),bufz,'"'); + getword(fun,sizeof(fun),bufz,' '); + getword(url,sizeof(url),bufz,' '); + getword(code2,sizeof(code2),bufz,' '); + getword(code2,sizeof(code2),bufz,' '); + getword(tam,sizeof(tam),bufz,' '); if((str=(char *) strstr(bufz, " ")) != (char *) NULL ) - getword(code,bufz,' '); + getword(code,sizeof(code),bufz,' '); else strcpy(code,bufz); if ((str = strchr(code, ':')) != NULL) @@ -872,37 +872,37 @@ int main(argc,argv) } if(!common) { - getword(elap,bufz,' '); + getword(elap,sizeof(elap),bufz,' '); while(strcmp(elap,"") == 0 && strlen(bufz) > 0) - getword(elap,bufz,' '); + getword(elap,sizeof(elap),bufz,' '); if(strlen(elap) < 1) continue; - getword(ip,bufz,' '); - getword(code,bufz,' '); - getword(tam,bufz,' '); - getword(fun,bufz,' '); - getword(url,bufz,' '); + getword(ip,sizeof(ip),bufz,' '); + getword(code,sizeof(code),bufz,' '); + getword(tam,sizeof(tam),bufz,' '); + getword(fun,sizeof(fun),bufz,' '); + getword(url,sizeof(url),bufz,' '); // while (strstr(bufz,"%20") != 0) { -// getword(warea,bufz,' '); +// getword(warea,sizeof(warea),bufz,' '); // strcat(url,warea); // } - getword(user,bufz,' '); + getword(user,sizeof(user),bufz,' '); squid_log=1; } } else if(!isalog) { - getword(data,bufz,' '); - getword(hora,bufz,' '); - getword(user,bufz,' '); - getword(ip,bufz,' '); - getword(url,bufz,' '); - getword(tam,bufz,' '); - getword(code,bufz,' '); - getword(elap,bufz,' '); - getword(smartfilter,bufz,' '); + getword(data,sizeof(data),bufz,' '); + getword(hora,sizeof(hora),bufz,' '); + getword(user,sizeof(user),bufz,' '); + getword(ip,sizeof(ip),bufz,' '); + getword(url,sizeof(url),bufz,' '); + getword(tam,sizeof(tam),bufz,' '); + getword(code,sizeof(code),bufz,' '); + getword(elap,sizeof(elap),bufz,' '); + getword(smartfilter,sizeof(smartfilter),bufz,' '); } else if(isalog) { if(!i0) { - getword(val1,bufz,' '); + getword(val1,sizeof(val1),bufz,' '); while(strstr(bufz,"\t") != 0) { - getword(val1,bufz,'\t'); + getword(val1,sizeof(val1),bufz,'\t'); i0++; if(strcmp(val1,"c-ip") == 0) i1=i0; if(strcmp(val1,"cs-username") == 0) i2=i0; @@ -936,8 +936,8 @@ int main(argc,argv) sprintf(val1,"DENIED/%s",code); strcpy(code,val1); } - getword(ano,data,'-'); - getword(mes,data,'-'); + getword(ano,sizeof(ano),data,'-'); + getword(mes,sizeof(mes),data,'-'); strcpy(dia,data); conv_month_name(mes); sprintf(data," %s/%s/%s:%s",dia,mes,ano,hora); @@ -966,12 +966,12 @@ int main(argc,argv) continue; if(strstr(user,"%20") != 0) { - getword(w,user,'%'); + getword(w,sizeof(w),user,'%'); strcpy(user,w); } while(strstr(user,"%5c") != 0) { - getword(w,user,'%'); + getword(w,sizeof(w),user,'%'); strcpy(wuser,user+2); sprintf(user,"%s.%s",w,wuser); } @@ -988,9 +988,9 @@ int main(argc,argv) strlow(user); if(strncmp(NtlmUserFormat,"user",4) == 0) { if(strstr(user,"_") != 0) - getword(warea,user,'_'); + getword(warea,sizeof(warea),user,'_'); if(strstr(user,"+") != 0) - getword(warea,user,'+'); + getword(warea,sizeof(warea),user,'+'); } if(strstr(ReportType,"denied") != 0) @@ -1010,8 +1010,8 @@ int main(argc,argv) } if (strchr(url,'/')) { - getword(w,url,'/'); - getword(w,url,'/'); + getword(w,sizeof(w),url,'/'); + getword(w,sizeof(w),url,'/'); if (!strchr(url,'/')) { totregsx++; continue; @@ -1019,10 +1019,10 @@ int main(argc,argv) } if(strcmp(LongUrl,"no") == 0) { - getword(w,url,'/'); + getword(w,sizeof(w),url,'/'); strcpy(url,w); if(strlen(url) > 512 && strstr(url,"%") != 0) { - getword(w,url,'%'); + getword(w,sizeof(w),url,'%'); strcpy(url,w); } } @@ -1052,11 +1052,11 @@ int main(argc,argv) sprintf(hora,"%02d:%02d:%02d",t->tm_hour,t->tm_min,t->tm_sec); } else { strcpy(wtemp,data+1); - getword(data,wtemp,':'); - getword(hora,wtemp,' '); - getword(dia,data,'/'); - getword(mes,data,'/'); - getword(ano,data,'/'); + getword(data,sizeof(data),wtemp,':'); + getword(hora,sizeof(hora),wtemp,' '); + getword(dia,sizeof(dia),data,'/'); + getword(mes,sizeof(mes),data,'/'); + getword(ano,sizeof(ano),data,'/'); if(strcmp(df,"u") == 0) sprintf(tbuf,"%s%s%s",ano,mes,dia); @@ -1066,8 +1066,8 @@ int main(argc,argv) idata=atoi(wdata); } } else { - getword(mes,data,'/'); - getword(dia,data,'/'); + getword(mes,sizeof(mes),data,'/'); + getword(dia,sizeof(dia),data,'/'); strcpy(ano,data); } @@ -1105,7 +1105,7 @@ int main(argc,argv) bzero(hmr,15); chm++; while(chm) { - getword(warea,whm,':'); + getword(warea,sizeof(warea),whm,':'); strncat(hmr,warea,2); chm--; } @@ -1370,8 +1370,8 @@ int main(argc,argv) if(strcmp(ParsedOutputLog, "no") != 0 && !sarglog) { fclose(fp_log); strcpy(val1,period); - getword(val2,val1,'-'); - getword(val3,per_hour,'-'); + getword(val2,sizeof(val2),val1,'-'); + getword(val3,sizeof(val3),per_hour,'-'); sprintf(val4,"%s/sarg-%s_%s-%s_%s.log",ParsedOutputLog,val2,val3,val1,per_hour); rename(arq_log,val4); strcpy(arq_log,val4); @@ -1463,7 +1463,7 @@ void getusers(char *pwdfile, int debug) sprintf(userfile,":"); while(fgets(buf,255,fp_usr)!=NULL) { - getword(user,buf,':'); + getword(user,sizeof(user),buf,':'); strncat(userfile,user,strlen(user)); strncat(userfile,":",1); } --- sarg-2.2.5/realtime.c.orig 2008-03-03 21:39:26.000000000 +0100 +++ sarg-2.2.5/realtime.c 2008-04-21 17:52:22.000000000 +0200 @@ -75,7 +75,7 @@ void getlog() while(fgets(buf,MAXLEN,fp_usr)!=NULL){ buf[strlen(buf)-1]='\0'; if(strstr(buf,"\r") != 0) buf[strlen(buf)-1]='\0'; - getword(bufy,buf,' '); + getword(bufy,sizeof(bufy),buf,' '); for(z1=0; z1<=strlen(bufy); z1++) { userfile[z2]=bufy[z1]; z2++; --- sarg-2.2.5/repday.c.orig 2008-03-03 23:08:01.000000000 +0100 +++ sarg-2.2.5/repday.c 2008-04-21 17:52:32.000000000 +0200 @@ -140,14 +140,14 @@ void report_day(char *user, int *iprel, "<td class=\"header3\">%s<br>%s</td></tr>\n", text[107], html ); while(fgets(buf,sizeof(buf),fp_in)!=NULL) { - getword(data,buf,' '); + getword(data,sizeof(data),buf,' '); if(!count) { strcpy(odata,data); count++; } - getword(hour,buf,' '); - getword(elap,buf,' '); + getword(hour,sizeof(hour),buf,' '); + getword(elap,sizeof(elap),buf,' '); elap[strlen(elap)-1]='\0'; if(strcmp(data,odata) != 0) { --- sarg-2.2.5/report.c.orig 2008-03-03 23:08:01.000000000 +0100 +++ sarg-2.2.5/report.c 2008-04-21 17:52:42.000000000 +0200 @@ -86,7 +86,7 @@ void gerarel() strcpy(wdname,direntp->d_name); strip_prefix: - getword(wname2,wdname,'.'); + getword(wname2,sizeof(wname2),wdname,'.'); strcat(user,wname2); if(strcmp(wdname,"log") !=0) { @@ -102,17 +102,17 @@ void gerarel() bzero(html_old, MAXLEN); while(fgets(buf,sizeof(buf),fp_in)!=NULL) { - getword(accdia,buf,' '); - getword(acchora,buf,' '); - getword(accuser,buf,' '); - getword(accip,buf,' '); - getword(accurl,buf,' '); - getword(accbytes,buf,' '); - getword(acccode,buf,' '); + getword(accdia,sizeof(accdia),buf,' '); + getword(acchora,sizeof(acchora),buf,' '); + getword(accuser,sizeof(accuser),buf,' '); + getword(accip,sizeof(accip),buf,' '); + getword(accurl,sizeof(accurl),buf,' '); + getword(accbytes,sizeof(accbytes),buf,' '); + getword(acccode,sizeof(acccode),buf,' '); if(strncmp(acccode,"TCP_DENIED/407",14) == 0) continue; - getword(accelap,buf,' '); - getword(accsmart,buf,' '); - getword(accsmart,buf,'"'); + getword(accelap,sizeof(accelap),buf,' '); + getword(accsmart,sizeof(accsmart),buf,' '); + getword(accsmart,sizeof(accsmart),buf,'"'); if(strlen(accsmart) > 0) { smartfilter++; @@ -276,7 +276,7 @@ void gerarel() } else bzero(ltext110, 50); strcpy(wcrc,acccode); - getword(crc2,wcrc,'/'); + getword(crc2,sizeof(crc2),wcrc,'/'); if(strstr(crc2,"MISS") != 0) oucache+=my_atoll(accbytes); --- sarg-2.2.5/siteuser.c.orig 2008-03-03 23:08:01.000000000 +0100 +++ sarg-2.2.5/siteuser.c 2008-04-21 17:52:46.000000000 +0200 @@ -121,7 +121,7 @@ void siteuser() strcat(users," "); while(fgets(buf,sizeof(buf),fp_in)!=NULL) { - getword(user,buf,' '); + getword(user,sizeof(user),buf,' '); if(strcmp(user,"TOTAL") == 0) continue; if(userip) @@ -152,10 +152,10 @@ void siteuser() if(strcmp(Ip2Name,"yes") == 0) ip2name(user); - getword(nacc,buf,' '); + getword(nacc,sizeof(nacc),buf,' '); if (atoi(nacc) > 0) nsitesusers = 1; - getword(nbytes,buf,' '); - getword(url,buf,' '); + getword(nbytes,sizeof(nbytes),buf,' '); + getword(url,sizeof(url),buf,' '); if(!regs) { strcpy(ourl,url); --- sarg-2.2.5/smartfilter.c.orig 2008-03-03 23:08:01.000000000 +0100 +++ sarg-2.2.5/smartfilter.c 2008-04-21 17:52:50.000000000 +0200 @@ -104,12 +104,12 @@ void smartfilter_report() fprintf(fp_ou,"<tr><th bgcolor=%s><font size=%s>%s</font></th><th bgcolor=%s><font size=%s>%s</font></th><th bgcolor=%s><font size=%s>%s</font></th><th bgcolor=%s><font size=%s>%s</font></th><th bgcolor=%s><font size=%s>%s</font></th></tr>\n",HeaderBgColor,FontSize,text[98],HeaderBgColor,FontSize,text[111],HeaderBgColor,FontSize,text[110],HeaderBgColor,FontSize,text[91],HeaderBgColor,FontSize,smartheader); while(fgets(buf,sizeof(buf),fp_in)!=NULL) { - getword(user,buf,' '); - getword(data,buf,' '); - getword(hora,buf,' '); - getword(ip,buf,' '); - getword(url,buf,' '); - getword(smartcat,buf,'\n'); + getword(user,sizeof(user),buf,' '); + getword(data,sizeof(data),buf,' '); + getword(hora,sizeof(hora),buf,' '); + getword(ip,sizeof(ip),buf,' '); + getword(url,sizeof(url),buf,' '); + getword(smartcat,sizeof(smartcat),buf,'\n'); if((str=(char *) strstr(user, "_")) != (char *) NULL ) { if((str=(char *) strstr(str+1, "_")) != (char *) NULL ) --- sarg-2.2.5/sort.c.orig 2008-03-03 23:08:01.000000000 +0100 +++ sarg-2.2.5/sort.c 2008-04-21 17:52:59.000000000 +0200 @@ -53,7 +53,7 @@ void tmpsort() wnome[0]='\0'; striptmp: - getword(wnome2,wentp,'.'); + getword(wnome2,sizeof(wnome2),wentp,'.'); strcat(wnome,wnome2); if(strcmp(wentp,"utmp") !=0) { @@ -136,7 +136,7 @@ void sort_users_log(char *tmp, int debug bzero(user, MAXLEN); strip_unsort: - getword(wname2,wdname,'.'); + getword(wname2,sizeof(wname2),wdname,'.'); strcat(user,wname2); if(strcmp(wdname,"unsort") !=0) { --- sarg-2.2.5/splitlog.c.orig 2008-04-21 17:05:25.000000000 +0200 +++ sarg-2.2.5/splitlog.c 2008-04-21 17:53:14.000000000 +0200 @@ -47,7 +47,7 @@ void splitlog(char *arq, char *df, int d } while(fgets(buf,sizeof(buf),fp_in)!=NULL) { - getword(data,buf,' '); + getword(data,sizeof(data),buf,' '); tt=atoi(data); t=localtime(&tt); --- sarg-2.2.5/squidguard_log.c.orig 2008-03-03 23:08:01.000000000 +0100 +++ sarg-2.2.5/squidguard_log.c 2008-04-21 17:53:22.000000000 +0200 @@ -42,8 +42,8 @@ void read_log(char *wentp, FILE *fp_ou) if(debug) { strcpy(buf,text[7]); - getword(urly,buf,' '); - getword(href,buf,' '); + getword(urly,sizeof(urly),buf,' '); + getword(href,sizeof(href),buf,' '); sprintf(msg,"%s squidGuard %s: %s",urly,buf,wentp); debuga(msg); } @@ -95,12 +95,12 @@ void read_log(char *wentp, FILE *fp_ou) if(strlen(SquidGuardLogFormat) > 0) { strcpy(bufbsf,SquidGuardLogFormat); leks[0]='\0'; - getword(leks,bufbsf,'#'); + getword(leks,sizeof(leks),bufbsf,'#'); while(strcmp(leks,"end") != 0) { - getword(leks,bufbsf,'#'); - getword(sep,bufbsf,'#'); + getword(leks,sizeof(leks),bufbsf,'#'); + getword(sep,sizeof(sep),bufbsf,'#'); if(strcmp(leks,"end") != 0) { - getword(res,buf,sep[0]); + getword(res,sizeof(res),buf,sep[0]); if(strcmp(leks,"year") == 0) strcpy(year,res); else if(strcmp(leks,"year") == 0) @@ -122,19 +122,19 @@ void read_log(char *wentp, FILE *fp_ou) } } } else { - getword(year,buf,'-'); - getword(mon,buf,'-'); - getword(day,buf,' '); - getword(hour,buf,' '); - getword(list,buf,'/'); - getword(list,buf,'/'); - getword(tmp5,buf,'/'); - getword(tmp5,buf,'/'); - getword(url,buf,'/'); - getword(ip,buf,' '); - getword(ip,buf,'/'); - getword(user,buf,' '); - getword(user,buf,' '); + getword(year,sizeof(year),buf,'-'); + getword(mon,sizeof(mon),buf,'-'); + getword(day,sizeof(day),buf,' '); + getword(hour,sizeof(hour),buf,' '); + getword(list,sizeof(list),buf,'/'); + getword(list,sizeof(list),buf,'/'); + getword(tmp5,sizeof(tmp5),buf,'/'); + getword(tmp5,sizeof(tmp5),buf,'/'); + getword(url,sizeof(url),buf,'/'); + getword(ip,sizeof(ip),buf,' '); + getword(ip,sizeof(ip),buf,'/'); + getword(user,sizeof(user),buf,' '); + getword(user,sizeof(user),buf,' '); } sprintf(warea,"%s%s%s",year,mon,day); @@ -236,8 +236,8 @@ int squidguard_log() if(strstr(buf,"\n") != 0) buf[strlen(buf)-1]='\0'; if(strstr(buf,"logdir ") != 0) { - getword(logdir,buf,' '); - getword(logdir,buf,' '); + getword(logdir,sizeof(logdir),buf,' '); + getword(logdir,sizeof(logdir),buf,' '); } if((str=(char *) strstr(buf, "log")) != (char *) NULL ) { str=str+3; @@ -255,11 +255,11 @@ int squidguard_log() } } if(strchr(str2,' ') != 0) { - getword(warea,str2,' '); + getword(warea,sizeof(warea),str2,' '); strcpy(str2,warea); } if(strchr(str2,'#') != 0) { - getword(warea,str2,'#'); + getword(warea,sizeof(warea),str2,'#'); strcpy(str2,warea); } sprintf(wentp,"%s/%s",logdir,str2); --- sarg-2.2.5/squidguard_report.c.orig 2008-03-03 23:08:01.000000000 +0100 +++ sarg-2.2.5/squidguard_report.c 2008-04-21 17:53:26.000000000 +0200 @@ -107,12 +107,12 @@ void squidguard_report() fputs(url,fp_ou); while(fgets(buf,sizeof(buf),fp_in)!=NULL) { - getword(user,buf,' '); - getword(data2,buf,' '); - getword(hora,buf,' '); - getword(ip,buf,' '); - getword(url,buf,' '); - getword(rule,buf,'\n'); + getword(user,sizeof(user),buf,' '); + getword(data2,sizeof(data2),buf,' '); + getword(hora,sizeof(hora),buf,' '); + getword(ip,sizeof(ip),buf,' '); + getword(url,sizeof(url),buf,' '); + getword(rule,sizeof(rule),buf,'\n'); if(strcmp(UserIp,"yes") == 0) strcpy(user,ip); --- sarg-2.2.5/topsites.c.orig 2008-03-03 23:08:01.000000000 +0100 +++ sarg-2.2.5/topsites.c 2008-04-21 17:53:29.000000000 +0200 @@ -91,20 +91,20 @@ void topsites() } while(fgets(buf,sizeof(buf),fp_in)!=NULL) { - getword(url,buf,' '); + getword(url,sizeof(url),buf,' '); if(strcmp(url,"TOTAL") == 0) { - getword(ttnacc,buf,' '); - getword(ttnbytes,buf,' '); - getword(ttntime,buf,' '); + getword(ttnacc,sizeof(ttnacc),buf,' '); + getword(ttnbytes,sizeof(ttnbytes),buf,' '); + getword(ttntime,sizeof(ttntime),buf,' '); continue; } - getword(nacc,buf,' '); - getword(nbytes,buf,' '); - getword(url,buf,' '); - getword(ntemp,buf,' '); - getword(ntemp,buf,' '); - getword(ntemp,buf,' '); - getword(ntime,buf,' '); + getword(nacc,sizeof(nacc),buf,' '); + getword(nbytes,sizeof(nbytes),buf,' '); + getword(url,sizeof(url),buf,' '); + getword(ntemp,sizeof(ntemp),buf,' '); + getword(ntemp,sizeof(ntemp),buf,' '); + getword(ntemp,sizeof(ntemp),buf,' '); + getword(ntime,sizeof(ntime),buf,' '); if(!regs) { strcpy(ourl,url); @@ -203,12 +203,12 @@ void topsites() while(fgets(buf,sizeof(buf),fp_in)!=NULL) { if(regs>atoi(TopSitesNum)) break; - getword(nacc,buf,' '); + getword(nacc,sizeof(nacc),buf,' '); if (atoi(nacc) == 0) continue; - getword(nbytes,buf,' '); - getword(ntime,buf,' '); - getword(url,buf,' '); + getword(nbytes,sizeof(nbytes),buf,' '); + getword(ntime,sizeof(ntime),buf,' '); + getword(url,sizeof(url),buf,' '); twork1=my_atoll(nacc); twork2=my_atoll(nbytes); --- sarg-2.2.5/totday.c.orig 2008-03-03 23:08:01.000000000 +0100 +++ sarg-2.2.5/totday.c 2008-04-21 17:53:33.000000000 +0200 @@ -73,10 +73,10 @@ void day_totalize(const char *tmp, char if(strstr(buf,"\n") != 0) buf[strlen(buf)-1]='\0'; - getword(data,buf,' '); - getword(hora,buf,':'); - getword(min,buf,':'); - getword(elap,buf,' '); + getword(data,sizeof(data),buf,' '); + getword(hora,sizeof(hora),buf,':'); + getword(min,sizeof(min),buf,':'); + getword(elap,sizeof(elap),buf,' '); strcpy(elap,buf); sprintf(hm,"%s%s",hora,min); --- sarg-2.2.5/useragent.c.orig 2008-03-03 23:08:01.000000000 +0100 +++ sarg-2.2.5/useragent.c 2008-04-21 17:53:39.000000000 +0200 @@ -70,13 +70,13 @@ void useragent() while(fgets(buf,sizeof(buf),fp_in)!=NULL) { totregsl++; - getword(ip,buf,' '); - getword(data,buf,'['); - getword(data,buf,' '); + getword(ip,sizeof(ip),buf,' '); + getword(data,sizeof(data),buf,'['); + getword(data,sizeof(data),buf,' '); if(totregsl == 1) strcpy(idate,data); - getword(agent,buf,'"'); - getword(agent,buf,'"'); + getword(agent,sizeof(agent),buf,'"'); + getword(agent,sizeof(agent),buf,'"'); strcpy(warea,agent); strup(warea); @@ -84,8 +84,8 @@ void useragent() baddata(); if(strlen(buf)) { - getword(user,buf,' '); - getword(user,buf,'\n'); + getword(user,sizeof(user),buf,' '); + getword(user,sizeof(user),buf,'\n'); } if(user[0] == '-') @@ -165,7 +165,7 @@ void useragent() fputs(html,fp_ou); while(fgets(buf,sizeof(buf),fp_in)!=NULL) { - getword(ip,buf,'\\'); + getword(ip,sizeof(ip),buf,'\\'); if(strcmp(Ip2Name,"yes") == 0) { if(strcmp(ip,ipbefore) != 0) { @@ -175,9 +175,9 @@ void useragent() } else strcpy(ip,namebefore); } - getword(data,buf,'\\'); - getword(agent,buf,'\\'); - getword(user,buf,'\\'); + getword(data,sizeof(data),buf,'\\'); + getword(agent,sizeof(agent),buf,'\\'); + getword(user,sizeof(user),buf,'\\'); if(strcmp(user,user_old) != 0) { sprintf(html,"<tr><td align=left bgcolor=%s><font size=%s>%s</td><td align=left bgcolor=%s><font size=%s>%s</td></tr>\n",TxBgColor,FontSize,user,TxBgColor,FontSize,agent); @@ -215,9 +215,9 @@ void useragent() agent_old[0]='\0'; while(fgets(buf,sizeof(buf),fp_in)!=NULL) { - getword(ip,buf,'\\'); - getword(data,buf,'\\'); - getword(agent,buf,'\\'); + getword(ip,sizeof(ip),buf,'\\'); + getword(data,sizeof(data),buf,'\\'); + getword(agent,sizeof(agent),buf,'\\'); if(!cont) { cont++; @@ -268,7 +268,7 @@ void useragent() while(fgets(buf,sizeof(buf),fp_in)!=NULL) { buf[strlen(buf)-1]='\0'; - getword(tagent,buf,' '); + getword(tagent,sizeof(tagent),buf,' '); perc=atoi(tagent) * 100; perc=perc / agentot2; --- sarg-2.2.5/util.c.orig 2008-03-03 23:08:01.000000000 +0100 +++ sarg-2.2.5/util.c 2008-04-21 17:53:52.000000000 +0200 @@ -53,10 +53,9 @@ static char mtab2[12][3]={"01","02","03" } }*/ -void getword(char *word, char *line, int stop) +void getword(char *word, int limit, char *line, int stop) { int x = 0, y = 0; - int limit=10000; char wline[MAXLEN]; //strcpy(wline,line); @@ -83,10 +82,9 @@ void getword(char *word, char *line, int while((line[y++] = line[x++])); } -char * getword2(char *word, char *line, int stop) +char * getword2(char *word, int limit, char *line, int stop) { int x = 0; - int limit=MAXLEN; if(strlen(line) < 3) { word[0]='\0'; @@ -194,9 +192,9 @@ void my_mkdir(char *name) strcpy(w0,name); strcpy(w2,"/"); - getword(w1,w0,'/'); + getword(w1,sizeof(w1),w0,'/'); while(strstr(w0,"/") != 0) { - getword(w1,w0,'/'); + getword(w1,sizeof(w1),w0,'/'); strcat(w2,w1); if(access(w2, R_OK) != 0) { if(mkdir(w2,0755)) { @@ -330,8 +328,8 @@ void name_month(char *month) strcpy(m,text[133]); for(x=0; x<z; x++) - getword(w,m,','); - getword(month,m,','); + getword(w,sizeof(w),m,','); + getword(month,sizeof(month),m,','); } @@ -394,13 +392,13 @@ void fixip(char *ip) } if(iflag) { - getword(n1,wip,'.'); - getword(n2,wip,'.'); - getword(n3,wip,'.'); + getword(n1,sizeof(n1),wip,'.'); + getword(n2,sizeof(n2),wip,'.'); + getword(n3,sizeof(n3),wip,'.'); } else { - getword(n1,wip,'_'); - getword(n2,wip,'_'); - getword(n3,wip,'_'); + getword(n1,sizeof(n1),wip,'_'); + getword(n2,sizeof(n2),wip,'_'); + getword(n3,sizeof(n3),wip,'_'); } ip[0]='\0'; sprintf(ip,"%s%s%s%s%s%s%s",n1,sep,n2,sep,n3,sep,wip); @@ -654,11 +652,11 @@ void obttotal(char *dirname, char *name, } while(fgets(buf,sizeof(buf),fp_in)!=NULL) { - getword(warea,buf,' '); + getword(warea,sizeof(warea),buf,' '); if(strcmp(warea,"TOTAL") != 0) continue; - getword(warea,buf,' '); - getword(warea,buf,' '); + getword(warea,sizeof(warea),buf,' '); + getword(warea,sizeof(warea),buf,' '); twork=my_atoll(warea); sprintf(tbytes,"%s",fixnum(twork,1)); } @@ -892,9 +890,9 @@ void strip_latin(char *line) char warea[255]; while(strstr(line,"&") != 0){ - getword(warea,line,'&'); + getword(warea,sizeof(warea),line,'&'); strncat(warea,line,1); - getword(buf,line,';'); + getword(buf,sizeof(buf),line,';'); strcat(warea,line); strcpy(line,warea); } @@ -976,11 +974,11 @@ void date_from(char *date, char *dfrom, strcpy(date,wdate); } - getword(diaf,wdate,'/'); - getword(mesf,wdate,'/'); - getword(anof,wdate,'-'); - getword(diau,wdate,'/'); - getword(mesu,wdate,'/'); + getword(diaf,sizeof(diaf),wdate,'/'); + getword(mesf,sizeof(mesf),wdate,'/'); + getword(anof,sizeof(anof),wdate,'-'); + getword(diau,sizeof(diau),wdate,'/'); + getword(mesu,sizeof(mesu),wdate,'/'); strcpy(anou,wdate); sprintf(dfrom,"%s%s%s",anof,mesf,diaf); @@ -1115,7 +1113,7 @@ int vercode(char *code) strcpy(warea,excludecode); for(z=0; z<=excode-1; z++) { - getword(cod,warea,';'); + getword(cod,sizeof(cod),warea,';'); if(strcmp(code,cod) == 0) return 1; } @@ -1242,7 +1240,7 @@ get_size(char *path, char *file) sprintf(cmd,"du -skh %s%s",path,file); fp = popen(cmd, "r"); fgets(response, 255, fp); - getword(val5,response,'\t'); + getword(val5,sizeof(val5),response,'\t'); pclose(fp); return (val5); --- sarg-2.2.5/log.c.orig 2008-04-22 15:13:55.000000000 +0200 +++ sarg-2.2.5/log.c 2008-04-22 15:20:14.000000000 +0200 @@ -916,21 +916,21 @@ int main(argc,argv) } fgets(bufz,sizeof(bufz),fp_in); strcpy(val1,bufz); - for(x=0; x<=i1-1; x++) getword3(ip,val1,'\t'); + for(x=0; x<=i1-1; x++) getword3(ip,sizeof(ip),val1,'\t'); strcpy(val1,bufz); - for(x=0; x<=i2-1; x++) getword3(user,val1,'\t'); + for(x=0; x<=i2-1; x++) getword3(user,sizeof(user),val1,'\t'); strcpy(val1,bufz); - for(x=0; x<=i3-1; x++) getword3(data,val1,'\t'); + for(x=0; x<=i3-1; x++) getword3(data,sizeof(data),val1,'\t'); strcpy(val1,bufz); - for(x=0; x<=i4-1; x++) getword3(hora,val1,'\t'); + for(x=0; x<=i4-1; x++) getword3(hora,sizeof(hora),val1,'\t'); strcpy(val1,bufz); - for(x=0; x<=i5-1; x++) getword3(elap,val1,'\t'); + for(x=0; x<=i5-1; x++) getword3(elap,sizeof(elap),val1,'\t'); strcpy(val1,bufz); - for(x=0; x<=i6-1; x++) getword3(tam,val1,'\t'); + for(x=0; x<=i6-1; x++) getword3(tam,sizeof(tam),val1,'\t'); strcpy(val1,bufz); - for(x=0; x<=i7-1; x++) getword3(url,val1,'\t'); + for(x=0; x<=i7-1; x++) getword3(url,sizeof(url),val1,'\t'); strcpy(val1,bufz); - for(x=0; x<=i8-1; x++) getword3(code,val1,'\t'); + for(x=0; x<=i8-1; x++) getword3(code,sizeof(code),val1,'\t'); if(strcmp(code,"401") == 0 || strcmp(code,"403") == 0 || strcmp(code,"407") == 0) { sprintf(val1,"DENIED/%s",code); --- sarg-2.2.5/realtime.c.orig 2008-04-22 15:13:55.000000000 +0200 +++ sarg-2.2.5/realtime.c 2008-04-22 15:20:26.000000000 +0200 @@ -116,23 +116,23 @@ void getdata(char *rec, FILE *ftmp) time_t tt; struct tm *t; - getword3(dat,rec,' '); - getword3(warea,rec,' '); + getword3(dat,sizeof(dat),rec,' '); + getword3(warea,sizeof(warea),rec,' '); while(strcmp(warea,"") == 0 && strlen(rec) > 0) - getword3(warea,rec,' '); - getword3(ip,rec,' '); - getword3(warea,rec,' '); - getword3(warea,rec,' '); - getword3(typ,rec,' '); + getword3(warea,sizeof(warea),rec,' '); + getword3(ip,sizeof(ip),rec,' '); + getword3(warea,sizeof(warea),rec,' '); + getword3(warea,sizeof(warea),rec,' '); + getword3(typ,sizeof(typ),rec,' '); if(strncmp(typ,"CONNECT",7) == 0) { - getword3(url,rec,' '); - getword3(user,rec,' '); + getword3(url,sizeof(url),rec,' '); + getword3(user,sizeof(user),rec,' '); }else { - getword3(url,rec,'/'); - getword3(url,rec,'/'); - getword3(url,rec,'/'); - getword3(user,rec,' '); - getword3(user,rec,' '); + getword3(url,sizeof(url),rec,'/'); + getword3(url,sizeof(url),rec,'/'); + getword3(url,sizeof(url),rec,'/'); + getword3(user,sizeof(user),rec,' '); + getword3(user,sizeof(user),rec,' '); } if(strncmp(user,"-",1) == 0 && strcmp(RealtimeUnauthRec,"ignore") == 0) @@ -163,13 +163,13 @@ void datashow(char *tmp) while(fgets(buf, MAXLEN, fin)) { buf[strlen(buf)-1]='\0'; - getword3(dat,buf,' '); - getword3(tim,buf,' '); - getword3(ip,buf,' '); - getword3(user,buf,' '); + getword3(dat,sizeof(dat),buf,' '); + getword3(tim,sizeof(tim),buf,' '); + getword3(ip,sizeof(ip),buf,' '); + getword3(user,sizeof(user),buf,' '); if(strlen(dat) < 3 || strlen(user) < 1) continue; - getword3(url,buf,' '); - getword3(typ,buf,' '); + getword3(url,sizeof(url),buf,' '); + getword3(typ,sizeof(typ),buf,' '); if(strstr(RealtimeTypes,typ) == 0) continue; --- sarg-2.2.5/util.c.orig 2008-04-22 15:13:55.000000000 +0200 +++ sarg-2.2.5/util.c 2008-04-22 15:26:56.000000000 +0200 @@ -107,11 +107,18 @@ char * getword2(char *word, int limit, return( line + x +1) ; } -void getword3(char *word, char *line, int stop) +void getword3(char *word, int limit, char *line, int stop) { int x = 0, y = 0; - for(x=0;(line[x] && (line[x] != stop ));x++) word[x] = line[x]; + for(x=0;((line[x]) && (line[x] != stop && limit ));x++ , limit-- ) word[x] = line[x]; + if( ! limit) { + printf("SARG: getword3 loop detected.\n"); + printf("SARG: Buffer=\"%s\"\n",line); + printf("SARG: searching for \'x%x\'\n",stop); + printf("SARG: Maybe you have a broken record or garbage in your log file.\n"); + exit(1); + } word[x] = '\0'; if(line[x]) ++x; while((line[y++] = line[x++]));
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor