microsoft / ModSecurity
File Size

The distribution of size of files (measured in lines of code).

Intro
  • File size measurements show the distribution of size of files.
  • Files are classified in four categories based on their size (lines of code): 1-100 (very small files), 101-200 (small files), 201-500 (medium size files), 501-1000 (long files), 1001+(very long files).
  • It is a good practice to keep files small. Long files may become "bloaters", code that have increased to such gargantuan proportions that they are hard to work with.
Learn more...
File Size Overall
  • There are 121 files with 64,044 lines of code.
    • 18 very long files (41,799 lines of code)
    • 16 long files (12,160 lines of code)
    • 17 medium size files (5,688 lines of codeclsfd_ftr_w_mp_ins)
    • 13 small files (1,933 lines of code)
    • 57 very small files (2,464 lines of code)
65% | 18% | 8% | 3% | 3%
Legend:
1001+
501-1000
201-500
101-200
1-100


explore: zoomable circles | sunburst | 3D view
File Size per Extension
1001+
501-1000
201-500
101-200
1-100
c63% | 25% | 6% | 2% | 2%
h74% | 10% | 2% | 1% | 10%
in92% | 0% | 4% | 1% | <1%
cpp33% | 29% | 35% | 0% | 1%
vcxproj0% | 0% | 81% | 18% | 0%
pl0% | 0% | 100% | 0% | 0%
cc0% | 0% | 100% | 0% | 0%
filters0% | 0% | 50% | 44% | 5%
TXT0% | 0% | 0% | 57% | 42%
ps10% | 0% | 0% | 0% | 100%
File Size per Logical Decomposition
primary
1001+
501-1000
201-500
101-200
1-100
apache273% | 14% | 7% | 1% | 2%
doc100% | 0% | 0% | 0% | 0%
mlogc92% | 0% | 0% | 7% | 0%
standalone0% | 65% | 14% | 16% | 3%
iis0% | 40% | 42% | 5% | 11%
nginx0% | 80% | 0% | 0% | 19%
alp20% | 72% | 0% | 15% | 11%
tools0% | 0% | 100% | 0% | 0%
ROOT0% | 0% | 0% | 61% | 38%
ext0% | 0% | 0% | 0% | 100%
validator0% | 0% | 0% | 0% | 100%
build0% | 0% | 0% | 0% | 100%
Longest Files (Top 50)
File# lines# units
libinjection_sqli_data.h
in apache2/libinjection
9645 -
re_operators.c
in apache2
3443 60
re_variables.c
in apache2
3143 129
apache2_config.c
in apache2
3049 3
re.c
in apache2
2417 20
re_actions.c
in apache2
2260 53
msc_util.c
in apache2
2083 34
mlogc.c
in mlogc
1742 27
in
doxygen-apache.in
in doc
1604 -
in
doxygen-iis.in
in doc
1604 -
in
doxygen-nginx.in
in doc
1604 -
in
doxygen-standalone.in
in doc
1604 -
msc_logging.c
in apache2
1579 11
libinjection_sqli.c
in apache2/libinjection
1460 53
mod_security2.c
in apache2
1217 22
msc_crypt.c
in apache2
1196 5
ag_mdb.cpp
in apache2/ag_mdb
1099 41
msc_multipart.c
in apache2
1050 12
mymodule.cpp
in iis
975 10
ngx_http_modsecurity.c
in nginx/modsecurity
958 2
alp2.c
in alp2
934 24
config.c
in standalone
905 9
server.c
in standalone
886 1
persist_dbm.c
in apache2
873 5
utf8tables.h
in apache2
784 -
apache2_io.c
in apache2
725 10
re_tfns.c
in apache2
716 36
msc_reqbody.c
in apache2
712 14
msc_tree.c
in apache2
688 7
libinjection_html5.c
in apache2/libinjection
672 27
modsecurity.c
in apache2
637 16
api.c
in standalone
627 27
modsecurity.h
in apache2
534 -
msc_remote_rules.c
in apache2
534 5
moduleconfig.cpp
in iis
464 -
apache2_util.c
in apache2
431 14
msc_geo.c
in apache2
404 5
msc_status_engine.c
in apache2
402 8
acmp.c
in apache2
395 15
waf_lock.cpp
in apache2/waf_lock
375 23
libinjection_xss.c
in apache2/libinjection
372 8
parse_modsec.pl
in tools
346 16
in
rules-updater.pl.in
in tools
342 -
vcxproj
ModSecurityIIS.vcxproj
in iis
334 -
msc_lua.c
in apache2
323 7
main.cpp
in standalone
313 7
re.h
in apache2
292 -
waf_log_util.cc
in apache2/waf_logging
238 8
msc_parsers.c
in apache2
224 4
filters
ModSecurityIIS.vcxproj.filters
in iis
221 -
Files With Most Units (Top 20)
File# lines# units
re_variables.c
in apache2
3143 129
re_operators.c
in apache2
3443 60
libinjection_sqli.c
in apache2/libinjection
1460 53
re_actions.c
in apache2
2260 53
ag_mdb.cpp
in apache2/ag_mdb
1099 41
re_tfns.c
in apache2
716 36
msc_util.c
in apache2
2083 34
libinjection_html5.c
in apache2/libinjection
672 27
mlogc.c
in mlogc
1742 27
api.c
in standalone
627 27
alp2.c
in alp2
934 24
waf_lock.cpp
in apache2/waf_lock
375 23
mod_security2.c
in apache2
1217 22
re.c
in apache2
2417 20
modsecurity.c
in apache2
637 16
parse_modsec.pl
in tools
346 16
acmp.c
in apache2
395 15
apache2_util.c
in apache2
431 14
msc_reqbody.c
in apache2
712 14
msc_json.c
in apache2
160 12
Files With Long Lines (Top 20)

There are 51 files with lines longer than 120 characters. In total, there are 393 long lines.

File# lines# units# long lines
msc_crypt.c
in apache2
1196 5 43
msc_geo.c
in apache2
404 5 33
vcxproj
standalone.vcxproj
in standalone
212 - 32
persist_dbm.c
in apache2
873 5 30
vcxproj
ModSecurityIIS.vcxproj
in iis
334 - 30
re_operators.c
in apache2
3443 60 27
re.c
in apache2
2417 20 26
apache2_config.c
in apache2
3049 3 23
apache2_io.c
in apache2
725 10 17
ag_mdb.cpp
in apache2/ag_mdb
1099 41 15
vcxproj
mlogc.vcxproj
in iis
124 - 12
mod_security2.c
in apache2
1217 22 10
msc_logging.c
in apache2
1579 11 9
mymodule.cpp
in iis
975 10 9
msc_reqbody.c
in apache2
712 14 8
waf_log_util.cc
in apache2/waf_logging
238 8 8
re.h
in apache2
292 - 6
apache2_util.c
in apache2
431 14 5
TXT
README_WINDOWS.TXT
in root
132 - 3
ag_mdb_internal.h
in apache2/ag_mdb
120 - 3