Logevents v111003 analysis/pr-app-FDP123 s_le-summary.html C:\IndigoPerl\bin\perl.exe 5.006

Logevents is a web based analysis tool used to analyze source code for SV CV attributes, insert log events, save the newly modified source, and perform a DIFF between the orginal source and the resulting source code. The classification markings appear in the web page title, top, bottom, and after each access of an s_ file.

Description This is the companion report to codegen which is the same as this report except that files not instrumented are not shown. It reduces the noise. Also le-sumamry does not perform the actual instrumentation. Running this report will instrument the source code with log events. Examine the keywords and verify that the number of LE SV items is as expected. Scroll or select the link into the details area and look for potential problems. Continue to examine the translate file. Finally examine the DIFF report and verify that the software includes only introduction of executable log event code and modifications of the original log event comments. Even though there is a DIFF, select several source and result files in the details and DIFF areas to verify that the code modifications occurred as exepected. Verify that the categories of hyper links work by click on each type (source, result, TOC, xx-xxx). The datareduction report and source code reports must be in place for the TOC and xx-xxx links to work.
AnalysisComment
KeywordsThis analysis shows the user selected keywords that were extracted from the original source code. There are also predefined keywords that are seperately reported by the tool in the Problems and Details analysis.
DetailsThis analysis shows the details from the original source code that are extracted from the search requests and internal error, warning, and caution settings. It also includes software metrics on a module basis.
CompareThis analysis shows a DIFF between the original source code and the new instrumented code.

Other Analysis Reports . Original Source Code . Instrumented Source Code . Help

12/08/2003 15:50:34


Settings

Description 14

Master Directories
Project Instrumentation Test
Source Result Analysis
Metrics

Report Markings
Report Marking
Highest Code Classification
Lowest Code Classification
Classified Keywords

Headers
C Header
H Header
asm Header

File Controls
Assembly Extensions
Access Files
Ignore Files
Paths
File Path
Src Paths (websever /~iat no websever ../../)
URL (websever /~iat no websever ../../ dos is blank)

Source Dir Path
Result Dir Path
Analysis Dir Path(no websever setting ../ft-red-B1B2D6_Ry)
Analysis Report Name
Files
toc file bfw file hmi file
toc html bfw html

General Settings
CPCs
1 2 3 4 5 6 7 Colors

Log Event Patterns
SV Events case Insensitive
Filter SV Events case Insensitive (e.g. traffic)
Filter Files case Insensitive
DB Events case Sensitive
HMI Events case Sensitive
LOC Events case Sensitive
Filter LOC Events (e.g. traffic)

Table Driven Functions used by uncalled functions detector


Fixed Keywords case insensitive
C
H
Assembly

Keywords case insensitive
find 1
find 2
find 3
find 4
find 5

ignore lines

Keyword Window

Hamming Patterns


Log Events
SV Start DB Start HMI Start LOC Start
Instrument Source LE Summary Auto Trace Fix LE English

Show in Details Report
Abstract SV REQUIRED Full Header All SourceCode Only SVCV src
Comments CV REQUIRED Rquirements Functions Show Only Affected Files Analyze Only LE SV

Reports
Control Menu Keywords Stats Metrics Ham Values Details Problem Summaries Problem Descriptions Compare

Reports - Automatic Detectors Default Problems Locked Files Date (e.g. 01/05/2003)
Fatal Printf C Headers H Headers ASM Headers
Class SV Marking CV Marking Keywords Code Keywords Prologues
No Curly Braces ifdef Switch Default's Default Error Case Break
Nested Switches Stacked Cases Calling Rules No Error Exit ?: operator
Func/File LOC/File Line Length < 5 LOC/Func > 100 LOC/Func
Uncalled Func's Dead Code Fuzzy Log Events ++/-- in if, else, while do Loops
malloc free Re-Casting goto No Func Header

Regression noise reduction for Automatic Detectors - must run regression.pl first
new files
mod files

Metrics Baseline Accessed
Metrics Saved (enable stats)

Hide Controls Show Checked Summary Checked Details Not Checked All


Keyword Stats

Good General Practices

  • use new and delete instead of malloc and free
  • do not use ?:
  • if a func has no parameters, use () instead of (void)
  • do not use goto
  • avoid declaring member variable with 'mutable' keyword
  • avoid declaring local variables with 'register' keyword
  • avoid declaring local variables with 'static' keyword
  • avoid do statements - potential endless loops
  • look for unusual and pertinent keywords
  • consistency is nice but not mandated
  • provide if with else
  • Good Security Practices

  • the bad fixed keywords are shown elsewhere
  • terminate case with break;
  • for each switch, provide default:
  • default: with security critical data should transfer to SwError
  • if else sequences with security critical data terminate in SwError
  • s_ files with if else sequences in many cases terminate in SwError
  • terminate other as identified if else sequences with SwError
  • look for undefined error codes in SwError
  • look for multiple uses of the same error codes
  • malloc should not be used on security critical data
  • if malloc is used on security critical data crypto zeroize before free
  • Number Sort

    78LE SV

    Alpha Sort

    78LE SV

    Keywords Not Found

    nnoonnee nnoonnee nnoonnee nnoonnee


    Details Report

    1 1 Source: source/pr-app/pr-app-FDP123/fdp-01.c
     1-15 fdp.1.1
    1-100 /* LE SV TOC-1401 this is a fdp-01.1.27 req to translate*/ 1-141 /* LE SV TOC-1402 this is a fdp-01.1.43 req to compare*/ 1-243 fdp.1.2
    1-290 /* LE SV TOC-1403 this is a fdp-01.2.11 req to record*/ 1-307 /* LE SV TOC-1404 this is a fdp-01.2.16 req to translate*/ 1-319 /* LE SV TOC-1405 this is a fdp-01.2.20 req to translate*/ 1-389 fdp.1.3
    1-416 /* LE SV TOC-1406 this is a fdp-01.3.4 req to check pSOS*/ 1-454 fdp.1.4
    1-565 /* LE SV TOC-1407 this is a fdp-01.4.22 req to process*/ 1-567 /* LE SV TOC-1408 this is a fdp-01.4.23 req to check pSOS*/ 1-616 fdp.1.5
    1-630 /* LE SV TOC-1409 this is a fdp-01.5.3 req to validate*/ 1-724 /* LE SV TOC-1410 this is a fdp-01.5.25 req to audit*/ 1-779 /* LE SV TOC-1411 this is a fdp-01.5.34 req to compare*/ 1-782 /* LE SV TOC-1412 this is a fdp-01.5.36 req to increment*/ 1-786 /* LE SV TOC-1413 this is a fdp-01.5.39 req to disable*/ 1-814 fdp.1.6
    1-852 /* LE SV TOC-1414 this is a fdp-01.6.3 req to detect error*/ 1-905 fdp.1.7
    1-924 /* LE SV TOC-1415 this is a fdp-01.7.2 req to call isr*/ 1-1067 /* LE SV TOC-1416 this is a fdp-01.7.46 req to reject*/ 1-1121 /* LE SV TOC-1417 this is a fdp-01.7.66 req to recover*/ 1-1136 fdp.1.8
    1-1197 fdp.1.9
    1-1260 /* LE SV TOC-1418 this is a fdp-01.9.10 req to call isr*/ 1-1263 /* LE SV TOC-1419 this is a fdp-01.9.12 req to enable*/ 1-1271 /* LE SV TOC-1420 this is a fdp-01.9.13 req to recover*/ 1-1318 /* LE SV TOC-1421 this is a fdp-01.9.28 req to set Real Time Clock*/ 1-1394 /* LE SV TOC-1422 this is a fdp-01.9.48 req to store*/ 1-1419 /* LE SV TOC-1423 this is a fdp-01.9.54 req to set RTC*/ 1-1425 /* LE SV TOC-1424 this is a fdp-01.9.59 req to fail*/ 1-1452 fdp.1.10
    1-1524 /* LE SV TOC-008 we really should log all error calls */ 1-1524 { FATAL Compile Error: Missing curly brace LE breaks path 1-1538 fdp.1.11
    1-1566 /* LE SV TOC-1425 this is a fdp-01.11.5 req to assign*/ 1-1774 fdp.1.12
    1-1970 /* LE SV TOC-1426 this is a fdp-01.12.41 req to set Real Time Clock*/ 1-2058 fdp.1.13
    1-2087 /* LE SV TOC-1427 this is a fdp-01.13.6 req to transform*/ 1-2304 /* LE SV TOC-1428 this is a fdp-01.13.69 req to check pSOS*/ 1-2354 fdp.1.14
    1-2401 /* LE SV TOC-1429 this is a fdp-01.14.12 req to reject*/ 1 1 Result: result/source/pr-app/pr-app-FDP123/fdp-01.c


    2 3 Source: source/pr-app/pr-app-FDP123/fdp-02.c 2-15 fdp.2.1
    2-156 fdp.2.2
    2-193 /* LE SV TOC-1430 this is a fdp-02.2.13 req to store*/ 2-286 /* LE SV TOC-1431 this is a fdp-02.2.31 req to check unix*/ 2-302 fdp.2.3
    2-443 fdp.2.4
    2-539 /* LE SV TOC-008 we really should log all error calls */ 2-539 { FATAL Compile Error: Missing curly brace LE breaks path 2-558 fdp.2.5
    2-670 /* LE SV TOC-1432 this is a fdp-02.5.22 req to update*/ 2-691 /* LE SV TOC-1433 this is a fdp-02.5.31 req to translate*/ 2-755 /* LE SV TOC-1434 this is a fdp-02.5.44 req to record*/ 2-786 /* LE SV TOC-1435 this is a fdp-02.5.55 req to increment*/ 2-795 fdp.2.6
    2-888 fdp.2.7
    2-967 /* LE SV TOC-1436 this is a fdp-02.7.13 req to update*/ 2-1116 /* LE SV TOC-1437 this is a fdp-02.7.68 req to check unix*/ 2-1149 fdp.2.8
    2-1190 /* LE SV TOC-1438 this is a fdp-02.8.11 req to detect error*/ 2-1238 /* LE SV TOC-1439 this is a fdp-02.8.22 req to set RTC*/ 2-1366 /* LE SV TOC-1440 this is a fdp-02.8.62 req to check pSOS*/ 2-1425 fdp.2.9
    2-1450 /* LE SV TOC-1441 this is a fdp-02.9.6 req to store*/ 2-1458 /* LE SV TOC-1442 this is a fdp-02.9.13 req to verify*/ 2-1487 fdp.2.10
    2-1644 /* LE SV TOC-1443 this is a fdp-02.10.48 req to convert*/ 2 3 Result: result/source/pr-app/pr-app-FDP123/fdp-02.c


    3 5 Source: source/pr-app/pr-app-FDP123/fdp-03.c 3-15 fdp.3.1
    3-76 fdp.3.2
    3-114 /* LE SV TOC-1444 this is a fdp-03.2.9 req to recover*/ 3-126 /* LE SV TOC-1445 this is a fdp-03.2.19 req to call isr*/ 3-234 /* LE SV TOC-1446 this is a fdp-03.2.52 req to detect error*/ 3-243 fdp.3.3
    3-404 /* LE SV TOC-1447 this is a fdp-03.3.42 req to audit*/ 3-416 /* LE SV TOC-1448 this is a fdp-03.3.47 req to detect error*/ 3-429 /* LE SV TOC-1449 this is a fdp-03.3.53 req to recover*/ 3-472 /* LE SV TOC-1450 this is a fdp-03.3.64 req to call admin*/ 3 5 Result: result/source/pr-app/pr-app-FDP123/fdp-03.c


    4 7 Source: source/pr-app/pr-app-FDP123/fdp-04.c 4-15 fdp.4.1
    4-71 /* LE SV TOC-1451 this is a fdp-04.1.9 req to set RTC*/ 4 7 Result: result/source/pr-app/pr-app-FDP123/fdp-04.c


    5 9 Source: source/pr-app/pr-app-FDP123/p_fdp-06.c 5-15 fdp.6.1
    5-115 /* LE SV TOC-1456 this is a p_fdp-06.1.17 req to translate*/ 5-127 /* LE SV TOC-1457 this is a p_fdp-06.1.22 req to set Real Time Clock*/ 5-144 fdp.6.2
    5-160 /* LE SV TOC-1458 this is a p_fdp-06.2.5 req to compare*/ 5-187 fdp.6.3
    5-256 /* LE SV TOC-1459 this is a p_fdp-06.3.15 req to detect error*/ 5-325 /* LE SV TOC-1460 this is a p_fdp-06.3.36 req to translate*/ 5-327 /* LE SV TOC-1461 this is a p_fdp-06.3.37 req to reject*/ 5-402 fdp.6.4
    5-588 fdp.6.5
    5-600 /* LE SV TOC-1462 this is a p_fdp-06.5.1 req to transform*/ 5-603 /* LE SV TOC-1463 this is a p_fdp-06.5.3 req to process*/ 5-637 fdp.6.6
    5-686 /* LE SV TOC-1464 this is a p_fdp-06.6.14 req to check pSOS*/ 5-688 /* LE SV TOC-1465 this is a p_fdp-06.6.15 req to translate*/ 5-697 /* LE SV TOC-1466 this is a p_fdp-06.6.17 req to check unix*/ 5-728 /* LE SV TOC-1467 this is a p_fdp-06.6.27 req to set RTC*/ 5-766 /* LE SV TOC-1468 this is a p_fdp-06.6.37 req to convert*/ 5-778 /* LE SV TOC-1469 this is a p_fdp-06.6.41 req to increment*/ 5-781 /* LE SV TOC-1470 this is a p_fdp-06.6.43 req to halt*/ 5-846 fdp.6.7
    5-888 fdp.6.8
    5-903 /* LE SV TOC-1471 this is a p_fdp-06.8.4 req to translate*/ 5-952 /* LE SV TOC-1472 this is a p_fdp-06.8.16 req to check pSOS*/ 5-982 /* LE SV TOC-1473 this is a p_fdp-06.8.26 req to disable*/ 5-1001 /* LE SV TOC-1474 this is a p_fdp-06.8.38 req to record*/ 5-1038 /* LE SV TOC-1475 this is a p_fdp-06.8.48 req to increment*/ 5-1187 /* LE SV TOC-1476 this is a p_fdp-06.8.81 req to translate*/ 5-1219 fdp.6.9
    5-1245 /* LE SV TOC-1477 this is a p_fdp-06.9.3 req to enable*/ 5-1286 /* LE SV TOC-1478 this is a p_fdp-06.9.19 req to record*/ 5-1349 /* LE SV TOC-1479 this is a p_fdp-06.9.32 req to call isr*/ 5-1411 fdp.6.10
    5-1536 /* LE SV TOC-1480 this is a p_fdp-06.10.35 req to check pSOS*/ 5-1585 fdp.6.11
    5-1855 fdp.6.12
    5 9 Result: result/source/pr-app/pr-app-FDP123/p_fdp-06.c



    Difference Report - DIFF

    This is a standard gnu DIFF report. Additions to the second file appear in green while deletions from the second file or additions to the first file appear in red. This DIFF report will traverse the entire directory tree structure. You must duplicate the tree structure of the source by copying the source into the result prior to executing this script.

    1 1 Source: source/pr-app/pr-app-FDP123/fdp-01.c
    1 1 Result: result/source/pr-app/pr-app-FDP123/fdp-01.c

    source/pr-app/pr-app-FDP123/fdp-01.c result/source/pr-app/pr-app-FDP123/fdp-01.c

    101a102
    > LogSvEvent((int)1001); /*12/08/2003 15:50:30*/
    142a144
    > LogSvEvent((int)1002); /*12/08/2003 15:50:30*/
    291a294
    > LogSvEvent((int)1003); /*12/08/2003 15:50:30*/
    308a312
    > LogSvEvent((int)1004); /*12/08/2003 15:50:30*/
    320a325
    > LogSvEvent((int)1005); /*12/08/2003 15:50:30*/
    417a423
    > LogSvEvent((int)1006); /*12/08/2003 15:50:30*/
    566a573
    > LogSvEvent((int)1007); /*12/08/2003 15:50:30*/
    568a576
    > LogSvEvent((int)1008); /*12/08/2003 15:50:30*/
    631a640
    > LogSvEvent((int)1009); /*12/08/2003 15:50:30*/
    725a735
    > LogSvEvent((int)1010); /*12/08/2003 15:50:30*/
    780a791
    > LogSvEvent((int)1011); /*12/08/2003 15:50:30*/
    783a795
    > LogSvEvent((int)1012); /*12/08/2003 15:50:30*/
    787a800
    > LogSvEvent((int)1013); /*12/08/2003 15:50:30*/
    853a867
    > LogSvEvent((int)1014); /*12/08/2003 15:50:30*/
    925a940
    > LogSvEvent((int)1015); /*12/08/2003 15:50:30*/
    1068a1084
    > LogSvEvent((int)1016); /*12/08/2003 15:50:30*/
    1122a1139
    > LogSvEvent((int)1017); /*12/08/2003 15:50:30*/
    1261a1279
    > LogSvEvent((int)1018); /*12/08/2003 15:50:30*/
    1264a1283
    > LogSvEvent((int)1019); /*12/08/2003 15:50:30*/
    1272a1292
    > LogSvEvent((int)1020); /*12/08/2003 15:50:30*/
    1319a1340
    > LogSvEvent((int)1021); /*12/08/2003 15:50:30*/
    1395a1417
    > LogSvEvent((int)1022); /*12/08/2003 15:50:30*/
    1420a1443
    > LogSvEvent((int)1023); /*12/08/2003 15:50:30*/
    1426a1450
    > LogSvEvent((int)1024); /*12/08/2003 15:50:30*/
    1525a1550
    > LogSvEvent((int)1025); /*12/08/2003 15:50:30*/
    1567a1593
    > LogSvEvent((int)1026); /*12/08/2003 15:50:30*/
    1971a1998
    > LogSvEvent((int)1027); /*12/08/2003 15:50:30*/
    2088a2116
    > LogSvEvent((int)1028); /*12/08/2003 15:50:30*/
    2305a2334
    > LogSvEvent((int)1029); /*12/08/2003 15:50:30*/
    2402a2432
    > LogSvEvent((int)1030); /*12/08/2003 15:50:30*/


    2 3 Source: source/pr-app/pr-app-FDP123/fdp-02.c
    2 3 Result: result/source/pr-app/pr-app-FDP123/fdp-02.c

    source/pr-app/pr-app-FDP123/fdp-02.c result/source/pr-app/pr-app-FDP123/fdp-02.c

    194a195
    > LogSvEvent((int)1031); /*12/08/2003 15:50:30*/
    287a289
    > LogSvEvent((int)1032); /*12/08/2003 15:50:30*/
    540a543
    > LogSvEvent((int)1033); /*12/08/2003 15:50:30*/
    671a675
    > LogSvEvent((int)1034); /*12/08/2003 15:50:30*/
    692a697
    > LogSvEvent((int)1035); /*12/08/2003 15:50:30*/
    756a762
    > LogSvEvent((int)1036); /*12/08/2003 15:50:30*/
    787a794
    > LogSvEvent((int)1037); /*12/08/2003 15:50:30*/
    968a976
    > LogSvEvent((int)1038); /*12/08/2003 15:50:30*/
    1117a1126
    > LogSvEvent((int)1039); /*12/08/2003 15:50:30*/
    1191a1201
    > LogSvEvent((int)1040); /*12/08/2003 15:50:30*/
    1239a1250
    > LogSvEvent((int)1041); /*12/08/2003 15:50:30*/
    1367a1379
    > LogSvEvent((int)1042); /*12/08/2003 15:50:30*/
    1451a1464
    > LogSvEvent((int)1043); /*12/08/2003 15:50:30*/
    1459a1473
    > LogSvEvent((int)1044); /*12/08/2003 15:50:30*/
    1645a1660
    > LogSvEvent((int)1045); /*12/08/2003 15:50:30*/


    3 5 Source: source/pr-app/pr-app-FDP123/fdp-03.c
    3 5 Result: result/source/pr-app/pr-app-FDP123/fdp-03.c

    source/pr-app/pr-app-FDP123/fdp-03.c result/source/pr-app/pr-app-FDP123/fdp-03.c

    115a116
    > LogSvEvent((int)1046); /*12/08/2003 15:50:30*/
    127a129
    > LogSvEvent((int)1047); /*12/08/2003 15:50:30*/
    235a238
    > LogSvEvent((int)1048); /*12/08/2003 15:50:30*/
    405a409
    > LogSvEvent((int)1049); /*12/08/2003 15:50:30*/
    417a422
    > LogSvEvent((int)1050); /*12/08/2003 15:50:30*/
    430a436
    > LogSvEvent((int)1051); /*12/08/2003 15:50:30*/
    473a480
    > LogSvEvent((int)1052); /*12/08/2003 15:50:30*/


    4 7 Source: source/pr-app/pr-app-FDP123/fdp-04.c
    4 7 Result: result/source/pr-app/pr-app-FDP123/fdp-04.c

    source/pr-app/pr-app-FDP123/fdp-04.c result/source/pr-app/pr-app-FDP123/fdp-04.c

    72a73
    > LogSvEvent((int)1053); /*12/08/2003 15:50:30*/


    5 9 Source: source/pr-app/pr-app-FDP123/p_fdp-06.c
    5 9 Result: result/source/pr-app/pr-app-FDP123/p_fdp-06.c

    source/pr-app/pr-app-FDP123/p_fdp-06.c result/source/pr-app/pr-app-FDP123/p_fdp-06.c

    116a117
    > LogSvEvent((int)1054); /*12/08/2003 15:50:30*/
    128a130
    > LogSvEvent((int)1055); /*12/08/2003 15:50:30*/
    161a164
    > LogSvEvent((int)1056); /*12/08/2003 15:50:30*/
    257a261
    > LogSvEvent((int)1057); /*12/08/2003 15:50:30*/
    326a331
    > LogSvEvent((int)1058); /*12/08/2003 15:50:30*/
    328a334
    > LogSvEvent((int)1059); /*12/08/2003 15:50:30*/
    601a608
    > LogSvEvent((int)1060); /*12/08/2003 15:50:30*/
    604a612
    > LogSvEvent((int)1061); /*12/08/2003 15:50:30*/
    687a696
    > LogSvEvent((int)1062); /*12/08/2003 15:50:30*/
    689a699
    > LogSvEvent((int)1063); /*12/08/2003 15:50:30*/
    698a709
    > LogSvEvent((int)1064); /*12/08/2003 15:50:30*/
    729a741
    > LogSvEvent((int)1065); /*12/08/2003 15:50:30*/
    767a780
    > LogSvEvent((int)1066); /*12/08/2003 15:50:30*/
    779a793
    > LogSvEvent((int)1067); /*12/08/2003 15:50:30*/
    782a797
    > LogSvEvent((int)1068); /*12/08/2003 15:50:30*/
    904a920
    > LogSvEvent((int)1069); /*12/08/2003 15:50:30*/
    953a970
    > LogSvEvent((int)1070); /*12/08/2003 15:50:30*/
    983a1001
    > LogSvEvent((int)1071); /*12/08/2003 15:50:30*/
    1002a1021
    > LogSvEvent((int)1072); /*12/08/2003 15:50:30*/
    1039a1059
    > LogSvEvent((int)1073); /*12/08/2003 15:50:30*/
    1188a1209
    > LogSvEvent((int)1074); /*12/08/2003 15:50:30*/
    1246a1268
    > LogSvEvent((int)1075); /*12/08/2003 15:50:30*/
    1287a1310
    > LogSvEvent((int)1076); /*12/08/2003 15:50:30*/
    1350a1374
    > LogSvEvent((int)1077); /*12/08/2003 15:50:30*/
    1537a1562
    > LogSvEvent((int)1078); /*12/08/2003 15:50:30*/


    done
    12/08/2003 15:50:34 start
    12/08/2003 15:50:36 end