From 4f516c8ca8b9cb032f322011fc3cab7465b7978a Mon Sep 17 00:00:00 2001 From: AlexCheung Date: Fri, 1 Aug 2025 09:49:31 +0800 Subject: [PATCH] fix: repair c++ program --- .gitignore | 3 + bin/adapter/GetCVEID.class | Bin 0 -> 4128 bytes bin/adapter/GetTplQry.class | Bin 0 -> 3942 bytes bin/adapter/GetTplQry_nessusXML.class | Bin 0 -> 4789 bytes bin/adapter/InitializeDB.class | Bin 0 -> 6597 bytes bin/adapter/MetricParser.class | Bin 0 -> 3333 bytes bin/adapter/NessusXMLParser.class | Bin 0 -> 2819 bytes bin/adapter/XMLConstructor.class | Bin 0 -> 2181 bytes bin/adapter/mysqlConnectionChecker.class | Bin 0 -> 1635 bytes bin/attack_graph | Bin 0 -> 868360 bytes bin/metrics/independentAlgoSumm.class | Bin 0 -> 11137 bytes bin/metrics/node.class | Bin 0 -> 574 bytes lib/libmulval.xwam | Bin 0 -> 6029 bytes src/adapter/Makefile | 3 +- src/attack_graph/Makefile | 15 +- src/attack_graph/attack_graph.cpp | 76 +- src/attack_graph/graphit.l | 4 +- src/attack_graph/graphit.tab.c | 1719 ++++++++++++++++++++++ src/attack_graph/graphit.y | 19 +- src/metrics/Makefile | 3 +- utils/graph_gen.sh | 4 +- utils/nessus_translate.sh | 38 +- utils/nvd_sync.sh | 3 +- utils/render.sh | 21 +- 24 files changed, 1801 insertions(+), 107 deletions(-) create mode 100644 .gitignore create mode 100644 bin/adapter/GetCVEID.class create mode 100644 bin/adapter/GetTplQry.class create mode 100644 bin/adapter/GetTplQry_nessusXML.class create mode 100644 bin/adapter/InitializeDB.class create mode 100644 bin/adapter/MetricParser.class create mode 100644 bin/adapter/NessusXMLParser.class create mode 100644 bin/adapter/XMLConstructor.class create mode 100644 bin/adapter/mysqlConnectionChecker.class create mode 100755 bin/attack_graph create mode 100644 bin/metrics/independentAlgoSumm.class create mode 100644 bin/metrics/node.class create mode 100644 lib/libmulval.xwam create mode 100644 src/attack_graph/graphit.tab.c diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..d9871b8 --- /dev/null +++ b/.gitignore @@ -0,0 +1,3 @@ +.idea/ +.vscode/ +*.o diff --git a/bin/adapter/GetCVEID.class b/bin/adapter/GetCVEID.class new file mode 100644 index 0000000000000000000000000000000000000000..f066e81ea443110d7f971f7d179d21e0903b45f7 GIT binary patch literal 4128 zcmd5<`*Rc575-MXv}<{>L12hNLrnwtZ4&}6wSWM|4o+nAkTKW}b=T6xUXXSj?TXla zIcd|Tc{C|~q(EOuU+%jhZ3V_{(*BScnwj>W=s(e!&cyxhu4GALHO%yfPG>ypyL-<) z_uTJ%-#J(Be{lC50LSod7y;C%sMQffNWsR-##N&yZCEosr=~B9q^lrw$h1uNh=Q8d zwy`iY)Ts#TsE4jVdtA8vV*^7c6sR-a&{5FT8ZUWCxLMPhiM5SsXixwZ8x?G|vok#@ zJG1|Ck7@TLj$Jq_jFiZR(TE!P*sNmml2j5)38m!y`J{T zw4F54U6zp%t=(;hTkNYwdMYcNT-tS7F0P;dkSS-uaYd%uBG0KmJ(Zj_vPRMsS<`XN zWYs+imZo*duI6nnYi5k>!qlwoxKlFlmW%a>;z1SLb$kR5DTu5;Fw^CTG?SDd#Az{N zr-XuC_d!cq#Z-J$!KRYOfwYha)?){D>i8HQ_VYO^=1G7pt!?WQ8pdwyQPHBK6>Sx~ z@iR^brj-)&r!Fy%twU`?azTfVPIM`#b8^#;M+}mob!e!H|2p(wuZl->?8Bp#{=Jlt zj&_d0HTj{DN2f_NmzxVC6N`}C2Xyq};|jKAj4PtwwvvW>-gIXqYCtLFJUAw zBK3M+>h(g2dc;QV5^Jk2(g_90^&-5VNWJ-#xFm}a;jAjMifIi`DR}OGu+jQ0N^$ry z{-lm6e2Q7|}B^7k!tsW|T zr-xaXDlY4|f^?Ax6((c>2{+=2oke~^uCR32n4@;BDmB1w4Xn4^HJD5rjw36Ft0O15 z*I>BR_H@n_V@5hBG(4jqV5T%IQ2C~Hm4(L6F35WD86BU+=Xi*uZMlYN5tQxabnj72ntK1H8em=PAgm&Btv!EewlU=LI1rWUJcRI#J$?3KlG_i}<0A zAK}OBJ9Dz{94x0tfmmf-vPiY{pBPoY*QgugrX@ylnQ4(Nl=|8XH6UY{EL&Ej-WXeh z*D;2Txq^LN!kn=TH2*u| z*pO-II&RjO8y4=YopLn1#l|M@FU_*)G@DLev!dZ`YF`OAhVc6^{(!uS+p;a+Vf8EJ zfi=OtB6|F&{Z2i|>lBNGg6rkyDj51Zo;0jfS~$DnwtXcx7b`nN;rL}=Di)3|%!w-I z<)BwdU%^GckxnOAbBT{WWLYBHFUy~BRIDi2z3xoaLRIl61v@_6lr_XZ7k09%2Y8(U zdo#-jLVW&&Zx8W5FVqOO--dFF0|h_jQ%(aq>ac{LaV$;S=s>!tYp>ZC@3;fCWZr-p zPBfwx8@bOWF5~r~uT90cms9OV0;OBG+5IV%A-C0Ho80RVn2|_!6j(Joq0Ug@fNqL!5NJ5 zauo35??VH(+`_M0`4eLsLwbPa`9ZW`JNEL>y?i@_W(*LRGi)KFco^rf3**>>pL1n5 zYFBBXs@U!QHL8fJ*ugPz(N^g_;7>tOak!QT<_{VFz{+*Puz^1Q-hKzi<9rMbuV83A z^5ks{k92k3#VHy6=>it=`(jN$=U7p;pty$pwzVGghQ!}@4AGM~q%Zy>a^`hG{WK9A4eKno3?U&faMh`i+g zd&M``yP|qAzNOWhU3t7pkVp9cv0FS{81LcU8phMa6zCwCIyuu#w0nr^USj+R@!iLJ z=%YO9eq6u--adL^;UE@x34R`Zcoi{RBfvN5?RPkWcW@Mc;jQ*PX5=3F@mH??8wR~x zoJ44qPWXF~xmfg`Ln_uXGOhBSfe&!d&kyJSiO#?(Da;?Fg%xXA;@y}GA)A#hW+}}0 zudQH_oV-@zW?42!(XadHd;FB>2fHHQ^go57AwMB%G+0Q;VL9>=@;cMRd=C@B&_11A3731)iX?;?&nL={rJ@PZ8?Vgz^mG zI?JyKl6REXyK`_cMvyPi$5Zq&ftN9f*KpATvlqctF3^h5_%KQgRrpB$3rAO_(tQiy qxJU3`FoFPnNkRR}8~qx;;eX12=~M7q?|BQ${1)c>UHp+Ljs6?YC_V-N literal 0 HcmV?d00001 diff --git a/bin/adapter/GetTplQry.class b/bin/adapter/GetTplQry.class new file mode 100644 index 0000000000000000000000000000000000000000..57281dfc4e434b9d58d11867cd85b0c9b5b621e6 GIT binary patch literal 3942 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 literal 0 HcmV?d00001 diff --git a/bin/adapter/MetricParser.class b/bin/adapter/MetricParser.class new file mode 100644 index 0000000000000000000000000000000000000000..7785642135ed30fb7c2db0d2bb5eb11fd35fea79 GIT binary patch literal 3333 zcmbVOTTmP475;wRRxE1^39aCd9TO)w28>baxHJ*Y#TM8m0fP~SfYZc_w7?p%EAOs| zNiXSzCe5X8ddY>RSK5ZQaUSwek(joVna;Q~nLf4;eQIa=(3w7TrZas?n$q*Hq#`cU z$z&w${(JuOpUZc?bF}aM=f-aUoWz?leDF&MC(2{x0oJkH%UDmTML+FHI z8t(lJ{APZf*2YZq#4~E*4$Z!cw76<<6)=_q~65P=-Dp1Mm~8~b7oy_ zDzD2(h;(k*vU}3DwZ#F$ab<9^dn-etn!>5#^t5j4xe;B<>9&LxhFEn^q*s>9H~>Y) ze%vlHyMwG(G9wVm8kCpVKcwJJkww@hdjp0^@U+p>(8y8K%IS`b4jhrtso*HOwxC@` zhg7qc>1u}QFzl;EFFmW-8U0F8H?w+A`=l^*mx52=7!@e5n==A1Dp0@JIIiH6=w_&M zic^k5>g6!aDu8bsFQwnShF47W{4P$SPEcAt$vfpuxmvp!ytOF zl<@taLaaK)5OfN8gAN?7O`=MHi#zKoO4F;L52q;)EtlKos!T>oJdCrH*vWIfWkADt zh&*=+&jShuagGRNm^uCG(DXJ7Ro{eA0>cWZ??ESYH%DUlN8jhC6o& zx3;tuA0n2lf}DsYWb5 zDvU8)hmZg(l!!-$CSMZ{sc+|tdJ5F7x&xl?P7ev$2 zql9lVv}|geE6z{p_G!zW*WCX(qmrd*Adx3Aq{=FzqR(k#p2m+D7`1p+X)s0w@WL9@ z3Ke}hV-@YJE`}vVRy#ntL=ZIPPFa@gxVBcH%~>nwgz;SlAL|U``{K^R_@TJVkq}m7 z{1`ux@KaHg*BM$j^DxW>Yfev=BPkR2w3c-(dy(PQ+Lov&mYto|%v@e~S_dp^u2|^V zSgr74U+L6<4p-Omz;lTe_ zrIsn@g@ZK5ebn86pD0a#<#hcPJ>5!o`oBc5V-4&rS}=T@u3{V5hdR83muXF^fjk}K zfG@cYX(Cp)hWY_-wU<_dM@nco*GZRDAQn#r=@+7(M8B}VyKWtci8VB*`T?J zWBc$`F;2CjnE}*K-lNiQ_yJ>o4J95m`B)2oL$y zI5llj8`K6hvVv>0Tdy{hF!nAc{l`jpbQ$h;+2ikm zr=mRS_tZL4F&?8#x*K`SuQmpA!du+iof_v+9=`z{@H|I1Z3oDuCY=)2oonHGTFiqED}{)pwZ2m(L^DKj>Wo^ui>g1##R)q&i5e+i?ed4x<%Ea0p3y zO*%$TJ!nHONiLuhm*}PFGP-DDCUFgSVHtPRFgT9a(G4O6eoGwxJ?_OHk;0$p zhS{%hp53Ikf%lMMf5IsH3ofv~V~l->3qC&{@kManr()7~3oiOv@Tjj9mnhrEeC>GL z*98r)P*)`p*`Or$N|=-&dEX8RTfR&}LLx9E`WHaFOZhjVwCwp1b&P$0=if(ggOXQ2 zngu#Z_VN-I=r&2syg}gdk9F1ylQXjMK3X;qMf~HK5fMb8e1xME@G~KrJoLg@o;)~3 zcQL%=j<@l`c;Nbg|2j#;l#=j`3aMfUkVK~$HBHhPgfT0C7nAIa(DLI|dh!uzzC-so bJ^zSoyyjiM=Usn*RoanB`ZN3j*TMe_-_#5= literal 0 HcmV?d00001 diff --git a/bin/adapter/NessusXMLParser.class b/bin/adapter/NessusXMLParser.class new file mode 100644 index 0000000000000000000000000000000000000000..97b44e4a630da8a883c637d5460e5216a5347829 GIT binary patch literal 2819 zcmaJ@+fx%~6#snzvSC>S<270Z-kqp`f~EP=p7?0z?TVkQmB(6w8WP zN4mQX%BH253?)$xIB14t)m>SI{kEy(oyg4fd2Rq8!V(>k^k+Az>wa4234CVyIro zcvsf!ULzEXD7qc+U^T-Df9)~N2+3N#E=QE=hMMLoCyJn^64PGUmQPGJRvn+u)~7@b z(|$gs!?1{2f;D(iz*-3vSVz&#_k%*S6peD;V}uopVZ(y{r?L{WRn6a}T6UlWmDnI) zql8VUVpx<jdWPJj+;n=-LqKR!;q-$N4sm`@ z$k1(B)h!-gKM#H2dF`1spGire7=suRa74l|j^+n8ZBgK4&xlcJmO0g>i8)AvW>eIP z9HH_y;x!4!@j64XY|{*m#B6eQWp!sw&M>rOC?xO(WC0@*Lc9t~vh{n)UbhL_m~ zZBrp7YO97WVjAZpyvaq%QfB*YIW#d~${`YdE62mm-W;LxI7clJq#-7;E>%~0Vv!NW z9FRve!W2fR5%@43TWB>hl%{NS%h5Ey*l)zlkiwTB4Z<_~wt=?`wM467*p_X|(Qd^a zGs2b!ACv7dT09ken^mY*Qw8(jQwA3kJ-AF`$#+(Tp7Jb1zC!yWY8ti?GBgKQ=EfHy zuHs7pU-2qmqpg(c&{Ww}ebSgv{7&_p!neyI+BMS**KblvDgd__rAGs;4kLk$eSp|Q#Bb0@Kl$bwHulUq5ICVPCIBwnFg5lEnU z2JZOWpZ5_Yi)~HCoWvzXpXf+pEr-&QCB9-`NlG?>_M!OPU%ui5I&aL~^c8!%6X;DT zyX^CLyOZc6KT9|_cMlJK!eO7gAcM8y$#q7KU%N_`>_=R*hU+BI}AE2 zCU)Q~UC#?>!es<7gPn+@8F%P5{({|jfIWCfl7FBTe>>`ZOLX0?pqpK#t9A{&YzBkm=^^$l`q*~_-=;(MJr1)w7{dGHZ4{+*mHr*_UGo9&M zXZq5&&h$UAfZ9Qlu_8ehdx0d;gH zof}H$=)++g(9nq!($L!i2kM3huO?43DozodX$9~eEK7VTO`|}a82)&B5K%2Q?d%lym1CepMepuZa)H)|~x<;9xilvswnO@iJx zC$KNjlC{cpc`fIzdwE+HKXJU-G(!>=fseVa&qlJ!S=(Q63l$aQ?lUW_5MjpUMxXPN zRj9BX&A8miqQ*AUDM$`iGL~iGE?N0NDA>t#XxCh`*+qf6I>n1sDeXTg+fqTWYaJ1+ zX(+)}P?pv6sX+Hm?3~huyK2X4HCZdD2^w>~Cj#H>E~UC)&7GT8sZg{l-5J+iT`!O9 zEw5diHy+LsS`+czfv-)fk=>i(*K~=CJ z@b>?UvXg6mp^Njeg2Lq@2^hF{(WdO%C6hbc;_TIv-3M`jnw(3_WY;q>~|jVSbU;OX>@>FBto`VI-q3 z(7EsehZl_4HjZuMcv6c+jgwpG;?^xUZ3{gM*&kt&(ND&pF}Q`H*2Gke2qiMHXnz&& z0>Pt!D&DJ;#uaj&zW!dS7~$&_kN=vxRyWtii!u4Kt!`(dVPJaDxK2x(dk-U0 eWW*i@>te7Lf^{iaSAz8sJj!a6t6&|E5&H-80P4~J literal 0 HcmV?d00001 diff --git a/bin/adapter/mysqlConnectionChecker.class b/bin/adapter/mysqlConnectionChecker.class new file mode 100644 index 0000000000000000000000000000000000000000..9e7d3eb8fa85a5049dc3e3888a69e0a425003e64 GIT binary patch literal 1635 zcmZ`(+fo}x5IqBe6`RFi*?@sKEH@*8k$g!UgYX3;<6vFDmIEPn9+uSri=|z%S{(aZ zQhDYz&I3@UDj$%KO6AN73E3v4(oFAkPxtB5-Sf}CAO8lhh+lNHpL!upnTxqK|^TrxW+Kvs1^L z#;lGs77Z*R!$9n{H7nQ^xZ3ElR^~N4VWT!YE*)%dOJ9~>NUJPK>C?}+s-NpvRxz@8 zrijUr_OldN^tuHLs`Lc|MTH^CrYh$hSL#^9a}6)lfRq|>Rnym5D_E|zqXwjK0Vge# zoOR8YC;vA_S)>Fa8Lv#fdlZo3L3K;|FWJI8iBv6zjoBZ6b%Doqj%z8f>^B8#|IA)* z_EwGDm%Ibtma3BkhA*D@q~aH&oaQ#ZD?kKnA#`&6kzd!jv$p7%K8E-}L13M$QY&Q_ zHt-W=W%>slC>J+RplzI>`w$cPzYvREJHpT*u7&bgC>x=CgYpNo^9Elf^oDys%y1vW z1bwMUcVKWGC9HAUP1ACM^_k=gGR@cH1_m&N5z1qnfN>-+!`~)v^dRy~LvK!l$^S%@ z7x`43L4D1zDuLls#5ZG1?PhNJ2+2bjIfb~6Oc`9lYTQFN<@>}p$Kdk}o@TNO q7{mi|^N=_nanv94YY`bvUXJS;N8o4Pijs<6vOYmyulU`D*Z%=Fg>%&a literal 0 HcmV?d00001 diff --git a/bin/attack_graph b/bin/attack_graph new file mode 100755 index 0000000000000000000000000000000000000000..d844f18817599ee1abd35656f5bbab37dcd9ef69 GIT binary patch literal 868360 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 -tgvdYtziE8Am2ti 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 F{tsZunAHFP literal 0 HcmV?d00001 diff --git a/bin/metrics/independentAlgoSumm.class b/bin/metrics/independentAlgoSumm.class new file mode 100644 index 0000000000000000000000000000000000000000..5f26c79b063379ea400068f7d6251ff000da6066 GIT binary patch literal 11137 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 literal 0 HcmV?d00001 diff --git a/bin/metrics/node.class b/bin/metrics/node.class new file mode 100644 index 0000000000000000000000000000000000000000..193c64411f6ab306671ef3d230913bacf14234eb GIT binary patch literal 574 zcmZuu$w~u35PdZhXUwG47|r4q_a%cE@M;i5$SLR{B6yrkn$Qv_GK=76c?g1nAK*uc z)vXYMUaG6Qt6shL`t$4U1Hc6u9xT`{aso4O2*vy0DQFIZXwbaw-ODf~I4u>a^qgQH zHEw4yOF$kT3ND1e9OenRXw;VkOZ5q*&IF;G#wr?|>F%PyqHcAPG)S{VUo8nNo9XoV zQM#xQmdt3Ds$ugYj)UipN>UGH*t&g1U=?cw@fgd#3}upx;)GEC**868R&EH?^?;XT z;cvUf*%H{s4l{X>OfMu*n~?9SLBzyjmeKeRvGrHh`57y}G|Cq`Dw0>(Lr=yxL2t+) zUU!tmp=>K%0Lw>h#^bKRdYLox~ literal 0 HcmV?d00001 diff --git a/lib/libmulval.xwam b/lib/libmulval.xwam new file mode 100644 index 0000000000000000000000000000000000000000..72a1ffcfab4d729e18052f1f605de858ccda82fb GIT binary patch literal 6029 zcmb7I&u`qu6(0WD-AJ-6$*v^VF0ysxAVuVjY^1H*I;b4LfY3Uvn>el7rlzPRr7X%N z7bG{eZ#m?UgZ_)S@g+72^icG_Sf6s0PAyWSmjX=>MbhsZ&TxnH+CUeW<;Il0vjEZc~cMnC&Umpg8#1&RMyq5$+67Bh9 zJlu;iKPb|nE9?a|?7tsmImUCO`{n4+Uf?MA`)Se-3d~wPS2*(}OG!I)&IDn2Jv$f= zqojB&b-?u-twS$5?639y%S#I}An;H81=7X&m}s zG=~}1xubZTLwdO)9|IwwX;XGiw))g$ zUVy|{w6bUvF%vD9OrXreJU`v{rRGCxMf#~F7pY&Giv_3DOpv6>0BHhJTasep!^9SL z!rbwO!2x%Qt2>_Vv~;JfJ00B-bER)Spa+0UYBYkqS=x_sY%OvA?Xlb&-JmFf{_nf_ z09-*aNRysS-qn)sPw9wc&J*JxbyZb8Gc){y3fR&i)8=i|{R&59_z&6RJZ zA!GiHgD8>tfiNI#}zpVq?1IAX1M{L{sMz1WCo)YR6D0Y-Q|>)^Z+IR7P@&JaPYYU=^l_ z0-!97Mg15D6Wp9~676qe%%)e!gC64%S_RevIFE2K;0za^+g~B@U*q=(FFKD={7;o3 zvNnY0{tG;udqN@DFPQfpga0uSyuNfv>JBj5K z0Y7BM&<|vSLzCza>7*f>?4D))SDQmM>IDX~+h|k+ujF2(cWcVaO^C3tT*Aa8b8vnu z(UQiwp5xR!Fkgfq>mwy!ZXpx~n!Jv-0Yte^*P)Bg4IMbW5h%MO=NzV~gY=Vo9UDTY z4QWgnEETIupsW7c5zs!WZ_5>luJIa%H8I**4e_5#+i0KOoE!Ji$M|*F$mfn>qph%U zOW0i-(WQR+vc|f_c?G|vpg;Sij5#Kq1b-XU|2qG6q;b_-At=y1jlKcfCSaow!p7$& zO+s@R7C_h1A=A)d>@Wi`b`^|rx1rA+&64OWPIn?9b>Rjp0U-7068jaTN5VC$z&B+! zneVV*2Bg!RY8dZgipKLPjn_E^?G@ zFaw>nmyUtI=9I3DtH+=l#;?iTk#_<}K7&?OjnAR|DF&1kN9pN5fY?`jiuDZd1?Wz)w z<<*I6;l$NqE>Hwd+zG1DzoCQ0lp_C$MkJnl=>g9!TA83q!Q#}$b+``25QJmiRM2zm zuho0XIzy#=x@geMP4O}fsa?h(Q%6R6rfatbpt@jz@ft0_7LtJhx(o^{GM`t0u7fTu zz*DTjQbHs9tU6j?{hEe}yJ(cEfkn-*xo6~iQ+fPWN4yJ^^n$|Tgs<3QRnWq7B)c&}HgrO)xzHtl?4N>w%`00x*IA3W>Bm7Frt4DPy zn=+4^S6&EMR6_7*Po8if#1%5vF2Nw~a7L%lj7@s$8JqMql}^=$HGI3Q6ke7Jn^$P) z>zYadG=LL7n8TBA4r;M1R?oaoV?n5dNYr7utrJ59??*iTRsY(jsFZ&xgL;!G2eYa4 zjfb9Sq1?2%A^wVa;){9goHAOvRy^x+j%Cg0bHi~1{uo(69oN-(%RuN&BBO5WVA0V+ zqO>QMEW6s9>K<>f!0Ya9wc z$32e67w3Ngb%0acYK-4jb&PZGu#b5L^j*b&Tk-$WF!LSgvL9KNt>%8EU1MTN7iN6) zz|@Cm&-3A~_F-9Amb$OX|ahV4B=<;o*_n%vgRj}(x+jaF&a06>F2Osfw8 zJYabQDCepjXK36a__Mw(LB#~^;&VLwxbdP-uea`(-tQgetDst()->Render2(mode)) @@ -1131,7 +1131,7 @@ int main(int argc, char *argv[] ) //dump_tables(); // - if (data.goals.size() == 0){ + if (_data.goals.size() == 0){ cerr << "No attack paths found.\n"; return 1; } @@ -1149,7 +1149,7 @@ int main(int argc, char *argv[] ) } // if (test) { - // extra data on the end + // extra _data on the end /* cout << "nodeCount: " << graph_data::nodeCount << ", " << "orNodeCount: " << graph_data::orNodeCount << ", " << "leafNodeCount: " << graph_data::leafNodeCount << endl; */ @@ -1165,7 +1165,7 @@ int build_graph(void) // loop through all the unique trace steps traceStepMap::iterator i,j; traceStepMap *Map; - Map = &data.all_trace_steps.traceSteps; + Map = &_data.all_trace_steps.traceSteps; for( i=Map->begin(); i != Map->end(); ) { string ts_key = i->first; @@ -1182,27 +1182,27 @@ int build_graph(void) Map->erase( j ); string fact_key = f->key; - OrNode *orNode = data.all_or_nodes.addOrNode(fact_key, f); + OrNode *orNode = _data.all_or_nodes.addOrNode(fact_key, f); AndNode *andNode = new AndNode(num, metric); if( andNode == NULL || orNode == NULL) { cerr << "Failed to create new node\n"; return -1; } - data.all_and_nodes.nodeList.add( *andNode ); + _data.all_and_nodes.nodeList.add( *andNode ); graph_data::nodeCount++; andNode->nodeNum = graph_data::nodeCount; andNode->parentNodeNum = orNode->nodeNum; orNode->outGoing.add(*(new Arc(orNode, andNode))); - for( Fact *fa= c->factList.gethead(); fa >0; fa = c->factList.getnext()) { + for( Fact *fa= c->factList.gethead(); fa != 0; fa = c->factList.getnext()) { fact_key = fa->key; Node *newNode; Type factType = fa->predicate->type; if( factType == primitive) { - newNode = data.all_leaf_nodes.addLeafNode(fact_key, fa); + newNode = _data.all_leaf_nodes.addLeafNode(fact_key, fa); } else if( factType == derived) { - newNode = data.all_or_nodes.addOrNode(fact_key, fa); + newNode = _data.all_or_nodes.addOrNode(fact_key, fa); } if (factType == primitive || factType == derived){ andNode->outGoing.add(*(new Arc(andNode, newNode))); @@ -1214,11 +1214,11 @@ int build_graph(void) //Populating the head nodes NodeMap::iterator k; - for (k = data.goals.begin(); k != data.goals.end(); k++) { + for (k = _data.goals.begin(); k != _data.goals.end(); k++) { string fact_key = k->first; - Node *headNode = data.all_or_nodes.nodes[fact_key]; + Node *headNode = _data.all_or_nodes.nodes[fact_key]; if (headNode != NULL){ - data.goals[fact_key] = headNode; + _data.goals[fact_key] = headNode; } else{ cerr << "Warning: attack goal "<RemoveUnfoundedEdges(); + _data.headNode->RemoveUnfoundedEdges(); break; */ case nonSimple: - for (k = data.goals.begin(); k != data.goals.end(); k++) { + for (k = _data.goals.begin(); k != _data.goals.end(); k++) { Node *headNode = k->second; if (headNode != NULL){ headNode->allSimplePaths(); } } - for (k = data.goals.begin(); k != data.goals.end(); k++) { + for (k = _data.goals.begin(); k != _data.goals.end(); k++) { Node *headNode = k->second; if (headNode != NULL){ headNode->pruneUselessEdges(); @@ -1255,7 +1255,7 @@ int build_graph(void) currentCounter++; currentNodeNum=1; currentArcNum = 1; - for (k = data.goals.begin(); k != data.goals.end(); k++) { + for (k = _data.goals.begin(); k != _data.goals.end(); k++) { Node *headNode = k->second; if (headNode != NULL){ headNode->dfs(reAssignNodeNum); @@ -1265,7 +1265,7 @@ int build_graph(void) //Assign metrics for AssetRank if (useMetrics){ cerr << "Computing metrics..." << endl; - for (k = data.goals.begin(); k != data.goals.end(); k++) { + for (k = _data.goals.begin(); k != _data.goals.end(); k++) { Node *headNode = k->second; if (headNode != NULL){ headNode->bestMetric(); @@ -1279,7 +1279,7 @@ int build_graph(void) int build_visual(bool arc_and_node) { NodeMap::iterator k; - for (k = data.goals.begin(); k != data.goals.end(); k++) { + for (k = _data.goals.begin(); k != _data.goals.end(); k++) { string fact_key = k->first; Node *headNode = k->second; if (headNode != NULL){ @@ -1303,7 +1303,7 @@ int build_cnf() NodeMap::iterator k; Node *headNode; - for (k = data.goals.begin(); k != data.goals.end(); k++) { + for (k = _data.goals.begin(); k != _data.goals.end(); k++) { headNode = k->second; if(headNode != NULL) { headNode->TransformToCNF(0); @@ -1356,22 +1356,22 @@ int build_cnf() //void dump_tables(void) //{ // /* -// cout << "nodeCount=" << data.nodeCount << endl; -// cout << "goal: " << data.goal->key << endl; +// cout << "nodeCount=" << _data.nodeCount << endl; +// cout << "goal: " << _data.goal->key << endl; -// int rul = data.headNode->rulenum; +// int rul = _data.headNode->rulenum; -// cout << "headNode: " << data.headNode->label->key << endl; +// cout << "headNode: " << _data.headNode->label->key << endl; // cout << "RULES:\n"; -// for ( int i=0; i<= data.ruleList.count; i++ ) { +// for ( int i=0; i<= _data.ruleList.count; i++ ) { // cout << i << " " ; -// if( data.ruleList.rules[ i ] != 0 ) { +// if( _data.ruleList.rules[ i ] != 0 ) { -// cout << data.ruleList.rules[ i ] ; +// cout << _data.ruleList.rules[ i ] ; // } @@ -1401,7 +1401,7 @@ int build_cnf() // cout << "\nUnique FACTS:\n"; -// Fmap = &data.all_facts.facts; +// Fmap = &_data.all_facts.facts; // cout << Fmap->size() << endl; @@ -1417,7 +1417,7 @@ int build_cnf() // cout << "\nUnique Trace Steps: \n "; -// Smap = &data.all_trace_steps.traceSteps; +// Smap = &_data.all_trace_steps.traceSteps; // cout << Smap->size() << endl; @@ -1451,7 +1451,7 @@ int build_cnf() // cout << "\nOR nodes:\n"; -// Nmap = &data.all_or_nodes.nodes; +// Nmap = &_data.all_or_nodes.nodes; // for (Ni = Nmap->begin() ; Ni != Nmap->end(); Ni++) { @@ -1477,7 +1477,7 @@ int build_cnf() // cout << "\nAND nodes:\n"; -// Queue nq = data.all_and_nodes.nodeList; +// Queue nq = _data.all_and_nodes.nodeList; // for (Node *no = nq.gethead() ; no >0 ; no = nq.getnext()) { @@ -1505,7 +1505,7 @@ int build_cnf() // cout << "\nLEAF nodes:\n"; -// Nmap = &data.all_leaf_nodes.nodes; +// Nmap = &_data.all_leaf_nodes.nodes; // for (Ni = Nmap->begin() ; Ni != Nmap->end(); Ni++) { diff --git a/src/attack_graph/graphit.l b/src/attack_graph/graphit.l index 6077cf6..d00c8e0 100644 --- a/src/attack_graph/graphit.l +++ b/src/attack_graph/graphit.l @@ -1,8 +1,8 @@ %{ #include -#include "y.tab.cpp.h" +#include "graphit.tab.h" #define YYSTYPE char * -YYSTYPE* mylval; +extern YYSTYPE* mylval; FILE **my_ptr = &yyin; %} diff --git a/src/attack_graph/graphit.tab.c b/src/attack_graph/graphit.tab.c new file mode 100644 index 0000000..895db66 --- /dev/null +++ b/src/attack_graph/graphit.tab.c @@ -0,0 +1,1719 @@ +/* A Bison parser, made by GNU Bison 3.8.2. */ + +/* Bison implementation for Yacc-like parsers in C + + Copyright (C) 1984, 1989-1990, 2000-2015, 2018-2021 Free Software Foundation, + Inc. + + 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 3 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, see . */ + +/* As a special exception, you may create a larger work that contains + part or all of the Bison parser skeleton and distribute that work + under terms of your choice, so long as that work isn't itself a + parser generator using the skeleton or a modified version thereof + as a parser skeleton. Alternatively, if you modify or redistribute + the parser skeleton itself, you may (at your option) remove this + special exception, which will cause the skeleton and the resulting + Bison output files to be licensed under the GNU General Public + License without this special exception. + + This special exception was added by the Free Software Foundation in + version 2.2 of Bison. */ + +/* C LALR(1) parser skeleton written by Richard Stallman, by + simplifying the original so-called "semantic" parser. */ + +/* DO NOT RELY ON FEATURES THAT ARE NOT DOCUMENTED in the manual, + especially those whose name start with YY_ or yy_. They are + private implementation details that can be changed or removed. */ + +/* All symbols defined below should begin with yy or YY, to avoid + infringing on user name space. This should be done even for local + variables, as they might otherwise be expanded by user macros. + There are some unavoidable exceptions within include files to + define necessary library symbols; they are noted "INFRINGES ON + USER NAME SPACE" below. */ + +/* Identify Bison output, and Bison version. */ +#define YYBISON 30802 + +/* Bison version string. */ +#define YYBISON_VERSION "3.8.2" + +/* Skeleton name. */ +#define YYSKELETON_NAME "yacc.c" + +/* Pure parsers. */ +#define YYPURE 0 + +/* Push parsers. */ +#define YYPUSH 0 + +/* Pull parsers. */ +#define YYPULL 1 + + + + +/* First part of user prologue. */ +#line 1 "graphit.y" + + #ifndef LINUX + #include + #endif + #include + #include + #include "attack_graph.h" + #define YYSTYPE char * + //#define YY_NEVER_INTERACTIVE + //#define YYDEBUG 1 + //#define DEBUG 1 + extern YYSTYPE yylval; + extern "C" + { + int yyparse(void); + int yylex(void); + YYSTYPE* mylval = &yylval; + // extern YYSTYPE* mylval; + int yywrap() + { + return 1; + } + } + + extern graph_data _data; + + #define MAXLEN 1000 + #define CVSSAC_PREFIX "cvss_ac_" + #define CAP_LUCK_PREFIX "cap_" + char trace_step_key[MAXLEN+1]; + char fact1_str[MAXLEN+1]=""; + char fact_str[MAXLEN+1]=""; + char facts_str[MAXLEN+1]=""; + char desc_str[MAXLEN+1]=""; + char name_str[MAXLEN+1]=""; + char metric_str[MAXLEN+1] = ""; + char arglist_str[MAXLEN+1]=""; + char str[MAXLEN+1]= ""; + char *special_char_str; + char *fact_ptr; + char *fact1_p = (char *)fact1_str; + char *fact_p = (char *)fact_str; + // char *desc_p = (char *)desc_str; + char *facts_p = (char *)facts_str; + char *arglist_p = (char *)arglist_str; + char *str_p = (char *)str; + + Fact *lastFact=0; + Fact *fact1=0; + Queue factQ; + int arg_count=0; + + void yyerror(char *s) { + fprintf(stderr, "%s\n", s); + } + + +#line 129 "graphit.tab.c" + +# ifndef YY_CAST +# ifdef __cplusplus +# define YY_CAST(Type, Val) static_cast (Val) +# define YY_REINTERPRET_CAST(Type, Val) reinterpret_cast (Val) +# else +# define YY_CAST(Type, Val) ((Type) (Val)) +# define YY_REINTERPRET_CAST(Type, Val) ((Type) (Val)) +# endif +# endif +# ifndef YY_NULLPTR +# if defined __cplusplus +# if 201103L <= __cplusplus +# define YY_NULLPTR nullptr +# else +# define YY_NULLPTR 0 +# endif +# else +# define YY_NULLPTR ((void*)0) +# endif +# endif + +#include "graphit.tab.h" +/* Symbol kind. */ +enum yysymbol_kind_t +{ + YYSYMBOL_YYEMPTY = -2, + YYSYMBOL_YYEOF = 0, /* "end of file" */ + YYSYMBOL_YYerror = 1, /* error */ + YYSYMBOL_YYUNDEF = 2, /* "invalid token" */ + YYSYMBOL_ATTACK_TOKEN = 3, /* ATTACK_TOKEN */ + YYSYMBOL_TRACESTEP_TOKEN = 4, /* TRACESTEP_TOKEN */ + YYSYMBOL_BECAUSE_TOKEN = 5, /* BECAUSE_TOKEN */ + YYSYMBOL_ATOM = 6, /* ATOM */ + YYSYMBOL_QUOTE = 7, /* QUOTE */ + YYSYMBOL_SP = 8, /* SP */ + YYSYMBOL_9_ = 9, /* '.' */ + YYSYMBOL_END_LINE = 10, /* END_LINE */ + YYSYMBOL_PRIMITIVE = 11, /* PRIMITIVE */ + YYSYMBOL_DERIVED = 12, /* DERIVED */ + YYSYMBOL_META = 13, /* META */ + YYSYMBOL_METRIC = 14, /* METRIC */ + YYSYMBOL_DESC = 15, /* DESC */ + YYSYMBOL_FLOAT = 16, /* FLOAT */ + YYSYMBOL_CVSS_AC = 17, /* CVSS_AC */ + YYSYMBOL_CAP_LUCK = 18, /* CAP_LUCK */ + YYSYMBOL_19_ = 19, /* '(' */ + YYSYMBOL_20_ = 20, /* ',' */ + YYSYMBOL_21_ = 21, /* ')' */ + YYSYMBOL_22_ = 22, /* '[' */ + YYSYMBOL_23_ = 23, /* ']' */ + YYSYMBOL_YYACCEPT = 24, /* $accept */ + YYSYMBOL_lines = 25, /* lines */ + YYSYMBOL_line = 26, /* line */ + YYSYMBOL_blank_line = 27, /* blank_line */ + YYSYMBOL_predicate_type = 28, /* predicate_type */ + YYSYMBOL_fact_metric = 29, /* fact_metric */ + YYSYMBOL_trace_step = 30, /* trace_step */ + YYSYMBOL_metric = 31, /* metric */ + YYSYMBOL_cvss_metric = 32, /* cvss_metric */ + YYSYMBOL_cap_metric = 33, /* cap_metric */ + YYSYMBOL_attack_fact = 34, /* attack_fact */ + YYSYMBOL_special_char = 35, /* special_char */ + YYSYMBOL_quoted_name = 36, /* quoted_name */ + YYSYMBOL_desc = 37, /* desc */ + YYSYMBOL_arglist = 38, /* arglist */ + YYSYMBOL_factString = 39, /* factString */ + YYSYMBOL_facts = 40, /* facts */ + YYSYMBOL_fact = 41, /* fact */ + YYSYMBOL_conjunct = 42 /* conjunct */ +}; +typedef enum yysymbol_kind_t yysymbol_kind_t; + + + + +#ifdef short +# undef short +#endif + +/* On compilers that do not define __PTRDIFF_MAX__ etc., make sure + and (if available) are included + so that the code can choose integer types of a good width. */ + +#ifndef __PTRDIFF_MAX__ +# include /* INFRINGES ON USER NAME SPACE */ +# if defined __STDC_VERSION__ && 199901 <= __STDC_VERSION__ +# include /* INFRINGES ON USER NAME SPACE */ +# define YY_STDINT_H +# endif +#endif + +/* Narrow types that promote to a signed type and that can represent a + signed or unsigned integer of at least N bits. In tables they can + save space and decrease cache pressure. Promoting to a signed type + helps avoid bugs in integer arithmetic. */ + +#ifdef __INT_LEAST8_MAX__ +typedef __INT_LEAST8_TYPE__ yytype_int8; +#elif defined YY_STDINT_H +typedef int_least8_t yytype_int8; +#else +typedef signed char yytype_int8; +#endif + +#ifdef __INT_LEAST16_MAX__ +typedef __INT_LEAST16_TYPE__ yytype_int16; +#elif defined YY_STDINT_H +typedef int_least16_t yytype_int16; +#else +typedef short yytype_int16; +#endif + +/* Work around bug in HP-UX 11.23, which defines these macros + incorrectly for preprocessor constants. This workaround can likely + be removed in 2023, as HPE has promised support for HP-UX 11.23 + (aka HP-UX 11i v2) only through the end of 2022; see Table 2 of + . */ +#ifdef __hpux +# undef UINT_LEAST8_MAX +# undef UINT_LEAST16_MAX +# define UINT_LEAST8_MAX 255 +# define UINT_LEAST16_MAX 65535 +#endif + +#if defined __UINT_LEAST8_MAX__ && __UINT_LEAST8_MAX__ <= __INT_MAX__ +typedef __UINT_LEAST8_TYPE__ yytype_uint8; +#elif (!defined __UINT_LEAST8_MAX__ && defined YY_STDINT_H \ + && UINT_LEAST8_MAX <= INT_MAX) +typedef uint_least8_t yytype_uint8; +#elif !defined __UINT_LEAST8_MAX__ && UCHAR_MAX <= INT_MAX +typedef unsigned char yytype_uint8; +#else +typedef short yytype_uint8; +#endif + +#if defined __UINT_LEAST16_MAX__ && __UINT_LEAST16_MAX__ <= __INT_MAX__ +typedef __UINT_LEAST16_TYPE__ yytype_uint16; +#elif (!defined __UINT_LEAST16_MAX__ && defined YY_STDINT_H \ + && UINT_LEAST16_MAX <= INT_MAX) +typedef uint_least16_t yytype_uint16; +#elif !defined __UINT_LEAST16_MAX__ && USHRT_MAX <= INT_MAX +typedef unsigned short yytype_uint16; +#else +typedef int yytype_uint16; +#endif + +#ifndef YYPTRDIFF_T +# if defined __PTRDIFF_TYPE__ && defined __PTRDIFF_MAX__ +# define YYPTRDIFF_T __PTRDIFF_TYPE__ +# define YYPTRDIFF_MAXIMUM __PTRDIFF_MAX__ +# elif defined PTRDIFF_MAX +# ifndef ptrdiff_t +# include /* INFRINGES ON USER NAME SPACE */ +# endif +# define YYPTRDIFF_T ptrdiff_t +# define YYPTRDIFF_MAXIMUM PTRDIFF_MAX +# else +# define YYPTRDIFF_T long +# define YYPTRDIFF_MAXIMUM LONG_MAX +# endif +#endif + +#ifndef YYSIZE_T +# ifdef __SIZE_TYPE__ +# define YYSIZE_T __SIZE_TYPE__ +# elif defined size_t +# define YYSIZE_T size_t +# elif defined __STDC_VERSION__ && 199901 <= __STDC_VERSION__ +# include /* INFRINGES ON USER NAME SPACE */ +# define YYSIZE_T size_t +# else +# define YYSIZE_T unsigned +# endif +#endif + +#define YYSIZE_MAXIMUM \ + YY_CAST (YYPTRDIFF_T, \ + (YYPTRDIFF_MAXIMUM < YY_CAST (YYSIZE_T, -1) \ + ? YYPTRDIFF_MAXIMUM \ + : YY_CAST (YYSIZE_T, -1))) + +#define YYSIZEOF(X) YY_CAST (YYPTRDIFF_T, sizeof (X)) + + +/* Stored state numbers (used for stacks). */ +typedef yytype_int8 yy_state_t; + +/* State numbers in computations. */ +typedef int yy_state_fast_t; + +#ifndef YY_ +# if defined YYENABLE_NLS && YYENABLE_NLS +# if ENABLE_NLS +# include /* INFRINGES ON USER NAME SPACE */ +# define YY_(Msgid) dgettext ("bison-runtime", Msgid) +# endif +# endif +# ifndef YY_ +# define YY_(Msgid) Msgid +# endif +#endif + + +#ifndef YY_ATTRIBUTE_PURE +# if defined __GNUC__ && 2 < __GNUC__ + (96 <= __GNUC_MINOR__) +# define YY_ATTRIBUTE_PURE __attribute__ ((__pure__)) +# else +# define YY_ATTRIBUTE_PURE +# endif +#endif + +#ifndef YY_ATTRIBUTE_UNUSED +# if defined __GNUC__ && 2 < __GNUC__ + (7 <= __GNUC_MINOR__) +# define YY_ATTRIBUTE_UNUSED __attribute__ ((__unused__)) +# else +# define YY_ATTRIBUTE_UNUSED +# endif +#endif + +/* Suppress unused-variable warnings by "using" E. */ +#if ! defined lint || defined __GNUC__ +# define YY_USE(E) ((void) (E)) +#else +# define YY_USE(E) /* empty */ +#endif + +/* Suppress an incorrect diagnostic about yylval being uninitialized. */ +#if defined __GNUC__ && ! defined __ICC && 406 <= __GNUC__ * 100 + __GNUC_MINOR__ +# if __GNUC__ * 100 + __GNUC_MINOR__ < 407 +# define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN \ + _Pragma ("GCC diagnostic push") \ + _Pragma ("GCC diagnostic ignored \"-Wuninitialized\"") +# else +# define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN \ + _Pragma ("GCC diagnostic push") \ + _Pragma ("GCC diagnostic ignored \"-Wuninitialized\"") \ + _Pragma ("GCC diagnostic ignored \"-Wmaybe-uninitialized\"") +# endif +# define YY_IGNORE_MAYBE_UNINITIALIZED_END \ + _Pragma ("GCC diagnostic pop") +#else +# define YY_INITIAL_VALUE(Value) Value +#endif +#ifndef YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN +# define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN +# define YY_IGNORE_MAYBE_UNINITIALIZED_END +#endif +#ifndef YY_INITIAL_VALUE +# define YY_INITIAL_VALUE(Value) /* Nothing. */ +#endif + +#if defined __cplusplus && defined __GNUC__ && ! defined __ICC && 6 <= __GNUC__ +# define YY_IGNORE_USELESS_CAST_BEGIN \ + _Pragma ("GCC diagnostic push") \ + _Pragma ("GCC diagnostic ignored \"-Wuseless-cast\"") +# define YY_IGNORE_USELESS_CAST_END \ + _Pragma ("GCC diagnostic pop") +#endif +#ifndef YY_IGNORE_USELESS_CAST_BEGIN +# define YY_IGNORE_USELESS_CAST_BEGIN +# define YY_IGNORE_USELESS_CAST_END +#endif + + +#define YY_ASSERT(E) ((void) (0 && (E))) + +#if !defined yyoverflow + +/* The parser invokes alloca or malloc; define the necessary symbols. */ + +# ifdef YYSTACK_USE_ALLOCA +# if YYSTACK_USE_ALLOCA +# ifdef __GNUC__ +# define YYSTACK_ALLOC __builtin_alloca +# elif defined __BUILTIN_VA_ARG_INCR +# include /* INFRINGES ON USER NAME SPACE */ +# elif defined _AIX +# define YYSTACK_ALLOC __alloca +# elif defined _MSC_VER +# include /* INFRINGES ON USER NAME SPACE */ +# define alloca _alloca +# else +# define YYSTACK_ALLOC alloca +# if ! defined _ALLOCA_H && ! defined EXIT_SUCCESS +# include /* INFRINGES ON USER NAME SPACE */ + /* Use EXIT_SUCCESS as a witness for stdlib.h. */ +# ifndef EXIT_SUCCESS +# define EXIT_SUCCESS 0 +# endif +# endif +# endif +# endif +# endif + +# ifdef YYSTACK_ALLOC + /* Pacify GCC's 'empty if-body' warning. */ +# define YYSTACK_FREE(Ptr) do { /* empty */; } while (0) +# ifndef YYSTACK_ALLOC_MAXIMUM + /* The OS might guarantee only one guard page at the bottom of the stack, + and a page size can be as small as 4096 bytes. So we cannot safely + invoke alloca (N) if N exceeds 4096. Use a slightly smaller number + to allow for a few compiler-allocated temporary stack slots. */ +# define YYSTACK_ALLOC_MAXIMUM 4032 /* reasonable circa 2006 */ +# endif +# else +# define YYSTACK_ALLOC YYMALLOC +# define YYSTACK_FREE YYFREE +# ifndef YYSTACK_ALLOC_MAXIMUM +# define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM +# endif +# if (defined __cplusplus && ! defined EXIT_SUCCESS \ + && ! ((defined YYMALLOC || defined malloc) \ + && (defined YYFREE || defined free))) +# include /* INFRINGES ON USER NAME SPACE */ +# ifndef EXIT_SUCCESS +# define EXIT_SUCCESS 0 +# endif +# endif +# ifndef YYMALLOC +# define YYMALLOC malloc +# if ! defined malloc && ! defined EXIT_SUCCESS +void *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */ +# endif +# endif +# ifndef YYFREE +# define YYFREE free +# if ! defined free && ! defined EXIT_SUCCESS +void free (void *); /* INFRINGES ON USER NAME SPACE */ +# endif +# endif +# endif +#endif /* !defined yyoverflow */ + +#if (! defined yyoverflow \ + && (! defined __cplusplus \ + || (defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL))) + +/* A type that is properly aligned for any stack member. */ +union yyalloc +{ + yy_state_t yyss_alloc; + YYSTYPE yyvs_alloc; +}; + +/* The size of the maximum gap between one aligned stack and the next. */ +# define YYSTACK_GAP_MAXIMUM (YYSIZEOF (union yyalloc) - 1) + +/* The size of an array large to enough to hold all stacks, each with + N elements. */ +# define YYSTACK_BYTES(N) \ + ((N) * (YYSIZEOF (yy_state_t) + YYSIZEOF (YYSTYPE)) \ + + YYSTACK_GAP_MAXIMUM) + +# define YYCOPY_NEEDED 1 + +/* Relocate STACK from its old location to the new one. The + local variables YYSIZE and YYSTACKSIZE give the old and new number of + elements in the stack, and YYPTR gives the new location of the + stack. Advance YYPTR to a properly aligned location for the next + stack. */ +# define YYSTACK_RELOCATE(Stack_alloc, Stack) \ + do \ + { \ + YYPTRDIFF_T yynewbytes; \ + YYCOPY (&yyptr->Stack_alloc, Stack, yysize); \ + Stack = &yyptr->Stack_alloc; \ + yynewbytes = yystacksize * YYSIZEOF (*Stack) + YYSTACK_GAP_MAXIMUM; \ + yyptr += yynewbytes / YYSIZEOF (*yyptr); \ + } \ + while (0) + +#endif + +#if defined YYCOPY_NEEDED && YYCOPY_NEEDED +/* Copy COUNT objects from SRC to DST. The source and destination do + not overlap. */ +# ifndef YYCOPY +# if defined __GNUC__ && 1 < __GNUC__ +# define YYCOPY(Dst, Src, Count) \ + __builtin_memcpy (Dst, Src, YY_CAST (YYSIZE_T, (Count)) * sizeof (*(Src))) +# else +# define YYCOPY(Dst, Src, Count) \ + do \ + { \ + YYPTRDIFF_T yyi; \ + for (yyi = 0; yyi < (Count); yyi++) \ + (Dst)[yyi] = (Src)[yyi]; \ + } \ + while (0) +# endif +# endif +#endif /* !YYCOPY_NEEDED */ + +/* YYFINAL -- State number of the termination state. */ +#define YYFINAL 2 +/* YYLAST -- Last index in YYTABLE. */ +#define YYLAST 96 + +/* YYNTOKENS -- Number of terminals. */ +#define YYNTOKENS 24 +/* YYNNTS -- Number of nonterminals. */ +#define YYNNTS 19 +/* YYNRULES -- Number of rules. */ +#define YYNRULES 42 +/* YYNSTATES -- Number of states. */ +#define YYNSTATES 112 + +/* YYMAXUTOK -- Last valid token kind. */ +#define YYMAXUTOK 272 + + +/* YYTRANSLATE(TOKEN-NUM) -- Symbol number corresponding to TOKEN-NUM + as returned by yylex, with out-of-bounds checking. */ +#define YYTRANSLATE(YYX) \ + (0 <= (YYX) && (YYX) <= YYMAXUTOK \ + ? YY_CAST (yysymbol_kind_t, yytranslate[YYX]) \ + : YYSYMBOL_YYUNDEF) + +/* YYTRANSLATE[TOKEN-NUM] -- Symbol number corresponding to TOKEN-NUM + as returned by yylex. */ +static const yytype_int8 yytranslate[] = +{ + 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 19, 21, 2, 2, 20, 2, 9, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 22, 2, 23, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 1, 2, 3, 4, + 5, 6, 7, 8, 10, 11, 12, 13, 14, 15, + 16, 17, 18 +}; + +#if YYDEBUG +/* YYRLINE[YYN] -- Source line where rule number YYN was defined. */ +static const yytype_int16 yyrline[] = +{ + 0, 63, 63, 64, 67, 68, 69, 70, 71, 74, + 75, 78, 83, 89, 96, 110, 152, 160, 174, 175, + 178, 189, 201, 217, 218, 219, 220, 221, 225, 229, + 233, 239, 240, 244, 251, 256, 264, 265, 273, 274, + 284, 295, 325 +}; +#endif + +/** Accessing symbol of state STATE. */ +#define YY_ACCESSING_SYMBOL(State) YY_CAST (yysymbol_kind_t, yystos[State]) + +#if YYDEBUG || 0 +/* The user-facing name of the symbol whose (internal) number is + YYSYMBOL. No bounds checking. */ +static const char *yysymbol_name (yysymbol_kind_t yysymbol) YY_ATTRIBUTE_UNUSED; + +/* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM. + First, the terminals, then, starting at YYNTOKENS, nonterminals. */ +static const char *const yytname[] = +{ + "\"end of file\"", "error", "\"invalid token\"", "ATTACK_TOKEN", + "TRACESTEP_TOKEN", "BECAUSE_TOKEN", "ATOM", "QUOTE", "SP", "'.'", + "END_LINE", "PRIMITIVE", "DERIVED", "META", "METRIC", "DESC", "FLOAT", + "CVSS_AC", "CAP_LUCK", "'('", "','", "')'", "'['", "']'", "$accept", + "lines", "line", "blank_line", "predicate_type", "fact_metric", + "trace_step", "metric", "cvss_metric", "cap_metric", "attack_fact", + "special_char", "quoted_name", "desc", "arglist", "factString", "facts", + "fact", "conjunct", YY_NULLPTR +}; + +static const char * +yysymbol_name (yysymbol_kind_t yysymbol) +{ + return yytname[yysymbol]; +} +#endif + +#define YYPACT_NINF (-41) + +#define yypact_value_is_default(Yyn) \ + ((Yyn) == YYPACT_NINF) + +#define YYTABLE_NINF (-1) + +#define yytable_value_is_error(Yyn) \ + 0 + +/* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing + STATE-NUM. */ +static const yytype_int8 yypact[] = +{ + -41, 19, -41, -7, -6, 5, -41, 1, 2, 6, + 7, -41, -41, -41, -41, -41, -41, 22, 32, -41, + 33, 34, 35, 22, 23, 17, 24, 25, 26, 27, + 28, -1, 40, 38, 44, 45, 46, 18, -41, 47, + -12, -41, 48, 36, 39, 41, 42, -41, -41, 49, + 50, 43, -41, -41, -41, -5, -1, -41, -41, 51, + 52, 56, 58, 53, 64, 62, -41, -41, -41, -41, + -41, -41, -41, -41, -41, 54, 66, 67, 69, 59, + 60, 72, 65, -41, -41, -41, -41, -41, -41, 68, + -41, 3, 37, 78, 18, -41, 70, 73, 22, 74, + 63, 22, 71, -16, -41, 75, 22, -41, 77, -41, + 79, -41 +}; + +/* YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM. + Performed when YYTABLE does not specify something else to do. Zero + means the default is an error. */ +static const yytype_int8 yydefact[] = +{ + 2, 0, 1, 0, 0, 0, 9, 0, 0, 0, + 0, 3, 4, 7, 8, 5, 6, 0, 0, 10, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 36, 0, + 0, 34, 0, 0, 0, 0, 0, 16, 17, 0, + 0, 0, 18, 19, 28, 0, 0, 41, 22, 0, + 0, 0, 0, 0, 0, 0, 29, 37, 23, 24, + 25, 26, 27, 30, 35, 0, 0, 0, 0, 0, + 0, 0, 0, 11, 12, 13, 20, 21, 14, 31, + 32, 0, 0, 0, 0, 33, 0, 0, 0, 0, + 0, 38, 0, 0, 39, 0, 0, 42, 0, 40, + 0, 15 +}; + +/* YYPGOTO[NTERM-NUM]. */ +static const yytype_int8 yypgoto[] = +{ + -41, -41, -41, -41, -41, -41, -41, -40, -41, -41, + -41, -41, -41, -41, -41, 31, -41, -23, -41 +}; + +/* YYDEFGOTO[NTERM-NUM]. */ +static const yytype_int8 yydefgoto[] = +{ + 0, 1, 11, 12, 13, 14, 15, 51, 52, 53, + 16, 73, 55, 91, 40, 41, 103, 25, 102 +}; + +/* YYTABLE[YYPACT[STATE-NUM]] -- What to do in state STATE-NUM. If + positive, shift that token. If negative, reduce the rule whose + number is the opposite. If YYTABLE_NINF, syntax error. */ +static const yytype_int8 yytable[] = +{ + 30, 66, 67, 68, 106, 38, 39, 107, 56, 57, + 92, 93, 17, 18, 69, 19, 70, 71, 72, 2, + 20, 21, 3, 4, 47, 22, 23, 5, 24, 6, + 7, 8, 9, 10, 48, 49, 50, 26, 32, 27, + 28, 29, 31, 33, 43, 34, 35, 36, 37, 42, + 44, 45, 46, 54, 96, 0, 59, 94, 58, 79, + 60, 76, 61, 62, 65, 77, 75, 78, 63, 64, + 80, 81, 89, 82, 90, 99, 83, 84, 104, 85, + 86, 87, 88, 109, 95, 101, 110, 74, 0, 111, + 0, 97, 105, 98, 100, 0, 108 +}; + +static const yytype_int8 yycheck[] = +{ + 23, 6, 7, 8, 20, 6, 7, 23, 20, 21, + 7, 8, 19, 19, 19, 10, 21, 22, 23, 0, + 19, 19, 3, 4, 6, 19, 19, 8, 6, 10, + 11, 12, 13, 14, 16, 17, 18, 5, 21, 6, + 6, 6, 19, 19, 6, 20, 20, 20, 20, 9, + 6, 6, 6, 6, 94, -1, 20, 20, 10, 6, + 21, 9, 21, 21, 21, 9, 15, 9, 19, 19, + 6, 9, 7, 19, 6, 98, 10, 10, 101, 10, + 21, 21, 10, 106, 6, 22, 9, 56, -1, 10, + -1, 21, 21, 20, 20, -1, 21 +}; + +/* YYSTOS[STATE-NUM] -- The symbol kind of the accessing symbol of + state STATE-NUM. */ +static const yytype_int8 yystos[] = +{ + 0, 25, 0, 3, 4, 8, 10, 11, 12, 13, + 14, 26, 27, 28, 29, 30, 34, 19, 19, 10, + 19, 19, 19, 19, 6, 41, 5, 6, 6, 6, + 41, 19, 21, 19, 20, 20, 20, 20, 6, 7, + 38, 39, 9, 6, 6, 6, 6, 6, 16, 17, + 18, 31, 32, 33, 6, 36, 20, 21, 10, 20, + 21, 21, 21, 19, 19, 21, 6, 7, 8, 19, + 21, 22, 23, 35, 39, 15, 9, 9, 9, 6, + 6, 9, 19, 10, 10, 10, 21, 21, 10, 7, + 6, 37, 7, 8, 20, 6, 31, 21, 20, 41, + 20, 22, 42, 40, 41, 21, 20, 23, 21, 41, + 9, 10 +}; + +/* YYR1[RULE-NUM] -- Symbol kind of the left-hand side of rule RULE-NUM. */ +static const yytype_int8 yyr1[] = +{ + 0, 24, 25, 25, 26, 26, 26, 26, 26, 27, + 27, 28, 28, 28, 29, 30, 31, 31, 31, 31, + 32, 33, 34, 35, 35, 35, 35, 35, 36, 36, + 36, 37, 37, 37, 38, 38, 39, 39, 40, 40, + 40, 41, 42 +}; + +/* YYR2[RULE-NUM] -- Number of symbols on the right-hand side of rule RULE-NUM. */ +static const yytype_int8 yyr2[] = +{ + 0, 2, 0, 2, 1, 1, 1, 1, 1, 1, + 2, 8, 8, 8, 8, 22, 1, 1, 1, 1, + 4, 4, 6, 1, 1, 1, 1, 1, 1, 2, + 2, 0, 1, 3, 1, 3, 1, 3, 0, 1, + 3, 4, 3 +}; + + +enum { YYENOMEM = -2 }; + +#define yyerrok (yyerrstatus = 0) +#define yyclearin (yychar = YYEMPTY) + +#define YYACCEPT goto yyacceptlab +#define YYABORT goto yyabortlab +#define YYERROR goto yyerrorlab +#define YYNOMEM goto yyexhaustedlab + + +#define YYRECOVERING() (!!yyerrstatus) + +#define YYBACKUP(Token, Value) \ + do \ + if (yychar == YYEMPTY) \ + { \ + yychar = (Token); \ + yylval = (Value); \ + YYPOPSTACK (yylen); \ + yystate = *yyssp; \ + goto yybackup; \ + } \ + else \ + { \ + yyerror (YY_("syntax error: cannot back up")); \ + YYERROR; \ + } \ + while (0) + +/* Backward compatibility with an undocumented macro. + Use YYerror or YYUNDEF. */ +#define YYERRCODE YYUNDEF + + +/* Enable debugging if requested. */ +#if YYDEBUG + +# ifndef YYFPRINTF +# include /* INFRINGES ON USER NAME SPACE */ +# define YYFPRINTF fprintf +# endif + +# define YYDPRINTF(Args) \ +do { \ + if (yydebug) \ + YYFPRINTF Args; \ +} while (0) + + + + +# define YY_SYMBOL_PRINT(Title, Kind, Value, Location) \ +do { \ + if (yydebug) \ + { \ + YYFPRINTF (stderr, "%s ", Title); \ + yy_symbol_print (stderr, \ + Kind, Value); \ + YYFPRINTF (stderr, "\n"); \ + } \ +} while (0) + + +/*-----------------------------------. +| Print this symbol's value on YYO. | +`-----------------------------------*/ + +static void +yy_symbol_value_print (FILE *yyo, + yysymbol_kind_t yykind, YYSTYPE const * const yyvaluep) +{ + FILE *yyoutput = yyo; + YY_USE (yyoutput); + if (!yyvaluep) + return; + YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN + YY_USE (yykind); + YY_IGNORE_MAYBE_UNINITIALIZED_END +} + + +/*---------------------------. +| Print this symbol on YYO. | +`---------------------------*/ + +static void +yy_symbol_print (FILE *yyo, + yysymbol_kind_t yykind, YYSTYPE const * const yyvaluep) +{ + YYFPRINTF (yyo, "%s %s (", + yykind < YYNTOKENS ? "token" : "nterm", yysymbol_name (yykind)); + + yy_symbol_value_print (yyo, yykind, yyvaluep); + YYFPRINTF (yyo, ")"); +} + +/*------------------------------------------------------------------. +| yy_stack_print -- Print the state stack from its BOTTOM up to its | +| TOP (included). | +`------------------------------------------------------------------*/ + +static void +yy_stack_print (yy_state_t *yybottom, yy_state_t *yytop) +{ + YYFPRINTF (stderr, "Stack now"); + for (; yybottom <= yytop; yybottom++) + { + int yybot = *yybottom; + YYFPRINTF (stderr, " %d", yybot); + } + YYFPRINTF (stderr, "\n"); +} + +# define YY_STACK_PRINT(Bottom, Top) \ +do { \ + if (yydebug) \ + yy_stack_print ((Bottom), (Top)); \ +} while (0) + + +/*------------------------------------------------. +| Report that the YYRULE is going to be reduced. | +`------------------------------------------------*/ + +static void +yy_reduce_print (yy_state_t *yyssp, YYSTYPE *yyvsp, + int yyrule) +{ + int yylno = yyrline[yyrule]; + int yynrhs = yyr2[yyrule]; + int yyi; + YYFPRINTF (stderr, "Reducing stack by rule %d (line %d):\n", + yyrule - 1, yylno); + /* The symbols being reduced. */ + for (yyi = 0; yyi < yynrhs; yyi++) + { + YYFPRINTF (stderr, " $%d = ", yyi + 1); + yy_symbol_print (stderr, + YY_ACCESSING_SYMBOL (+yyssp[yyi + 1 - yynrhs]), + &yyvsp[(yyi + 1) - (yynrhs)]); + YYFPRINTF (stderr, "\n"); + } +} + +# define YY_REDUCE_PRINT(Rule) \ +do { \ + if (yydebug) \ + yy_reduce_print (yyssp, yyvsp, Rule); \ +} while (0) + +/* Nonzero means print parse trace. It is left uninitialized so that + multiple parsers can coexist. */ +int yydebug; +#else /* !YYDEBUG */ +# define YYDPRINTF(Args) ((void) 0) +# define YY_SYMBOL_PRINT(Title, Kind, Value, Location) +# define YY_STACK_PRINT(Bottom, Top) +# define YY_REDUCE_PRINT(Rule) +#endif /* !YYDEBUG */ + + +/* YYINITDEPTH -- initial size of the parser's stacks. */ +#ifndef YYINITDEPTH +# define YYINITDEPTH 200 +#endif + +/* YYMAXDEPTH -- maximum size the stacks can grow to (effective only + if the built-in stack extension method is used). + + Do not make this value too large; the results are undefined if + YYSTACK_ALLOC_MAXIMUM < YYSTACK_BYTES (YYMAXDEPTH) + evaluated with infinite-precision integer arithmetic. */ + +#ifndef YYMAXDEPTH +# define YYMAXDEPTH 10000 +#endif + + + + + + +/*-----------------------------------------------. +| Release the memory associated to this symbol. | +`-----------------------------------------------*/ + +static void +yydestruct (const char *yymsg, + yysymbol_kind_t yykind, YYSTYPE *yyvaluep) +{ + YY_USE (yyvaluep); + if (!yymsg) + yymsg = "Deleting"; + YY_SYMBOL_PRINT (yymsg, yykind, yyvaluep, yylocationp); + + YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN + YY_USE (yykind); + YY_IGNORE_MAYBE_UNINITIALIZED_END +} + + +/* Lookahead token kind. */ +int yychar; + +/* The semantic value of the lookahead symbol. */ +YYSTYPE yylval; +/* Number of syntax errors so far. */ +int yynerrs; + + + + +/*----------. +| yyparse. | +`----------*/ + +int +yyparse (void) +{ + yy_state_fast_t yystate = 0; + /* Number of tokens to shift before error messages enabled. */ + int yyerrstatus = 0; + + /* Refer to the stacks through separate pointers, to allow yyoverflow + to reallocate them elsewhere. */ + + /* Their size. */ + YYPTRDIFF_T yystacksize = YYINITDEPTH; + + /* The state stack: array, bottom, top. */ + yy_state_t yyssa[YYINITDEPTH]; + yy_state_t *yyss = yyssa; + yy_state_t *yyssp = yyss; + + /* The semantic value stack: array, bottom, top. */ + YYSTYPE yyvsa[YYINITDEPTH]; + YYSTYPE *yyvs = yyvsa; + YYSTYPE *yyvsp = yyvs; + + int yyn; + /* The return value of yyparse. */ + int yyresult; + /* Lookahead symbol kind. */ + yysymbol_kind_t yytoken = YYSYMBOL_YYEMPTY; + /* The variables used to return semantic value and location from the + action routines. */ + YYSTYPE yyval; + + + +#define YYPOPSTACK(N) (yyvsp -= (N), yyssp -= (N)) + + /* The number of symbols on the RHS of the reduced rule. + Keep to zero when no symbol should be popped. */ + int yylen = 0; + + YYDPRINTF ((stderr, "Starting parse\n")); + + yychar = YYEMPTY; /* Cause a token to be read. */ + + goto yysetstate; + + +/*------------------------------------------------------------. +| yynewstate -- push a new state, which is found in yystate. | +`------------------------------------------------------------*/ +yynewstate: + /* In all cases, when you get here, the value and location stacks + have just been pushed. So pushing a state here evens the stacks. */ + yyssp++; + + +/*--------------------------------------------------------------------. +| yysetstate -- set current state (the top of the stack) to yystate. | +`--------------------------------------------------------------------*/ +yysetstate: + YYDPRINTF ((stderr, "Entering state %d\n", yystate)); + YY_ASSERT (0 <= yystate && yystate < YYNSTATES); + YY_IGNORE_USELESS_CAST_BEGIN + *yyssp = YY_CAST (yy_state_t, yystate); + YY_IGNORE_USELESS_CAST_END + YY_STACK_PRINT (yyss, yyssp); + + if (yyss + yystacksize - 1 <= yyssp) +#if !defined yyoverflow && !defined YYSTACK_RELOCATE + YYNOMEM; +#else + { + /* Get the current used size of the three stacks, in elements. */ + YYPTRDIFF_T yysize = yyssp - yyss + 1; + +# if defined yyoverflow + { + /* Give user a chance to reallocate the stack. Use copies of + these so that the &'s don't force the real ones into + memory. */ + yy_state_t *yyss1 = yyss; + YYSTYPE *yyvs1 = yyvs; + + /* Each stack pointer address is followed by the size of the + data in use in that stack, in bytes. This used to be a + conditional around just the two extra args, but that might + be undefined if yyoverflow is a macro. */ + yyoverflow (YY_("memory exhausted"), + &yyss1, yysize * YYSIZEOF (*yyssp), + &yyvs1, yysize * YYSIZEOF (*yyvsp), + &yystacksize); + yyss = yyss1; + yyvs = yyvs1; + } +# else /* defined YYSTACK_RELOCATE */ + /* Extend the stack our own way. */ + if (YYMAXDEPTH <= yystacksize) + YYNOMEM; + yystacksize *= 2; + if (YYMAXDEPTH < yystacksize) + yystacksize = YYMAXDEPTH; + + { + yy_state_t *yyss1 = yyss; + union yyalloc *yyptr = + YY_CAST (union yyalloc *, + YYSTACK_ALLOC (YY_CAST (YYSIZE_T, YYSTACK_BYTES (yystacksize)))); + if (! yyptr) + YYNOMEM; + YYSTACK_RELOCATE (yyss_alloc, yyss); + YYSTACK_RELOCATE (yyvs_alloc, yyvs); +# undef YYSTACK_RELOCATE + if (yyss1 != yyssa) + YYSTACK_FREE (yyss1); + } +# endif + + yyssp = yyss + yysize - 1; + yyvsp = yyvs + yysize - 1; + + YY_IGNORE_USELESS_CAST_BEGIN + YYDPRINTF ((stderr, "Stack size increased to %ld\n", + YY_CAST (long, yystacksize))); + YY_IGNORE_USELESS_CAST_END + + if (yyss + yystacksize - 1 <= yyssp) + YYABORT; + } +#endif /* !defined yyoverflow && !defined YYSTACK_RELOCATE */ + + + if (yystate == YYFINAL) + YYACCEPT; + + goto yybackup; + + +/*-----------. +| yybackup. | +`-----------*/ +yybackup: + /* Do appropriate processing given the current state. Read a + lookahead token if we need one and don't already have one. */ + + /* First try to decide what to do without reference to lookahead token. */ + yyn = yypact[yystate]; + if (yypact_value_is_default (yyn)) + goto yydefault; + + /* Not known => get a lookahead token if don't already have one. */ + + /* YYCHAR is either empty, or end-of-input, or a valid lookahead. */ + if (yychar == YYEMPTY) + { + YYDPRINTF ((stderr, "Reading a token\n")); + yychar = yylex (); + } + + if (yychar <= YYEOF) + { + yychar = YYEOF; + yytoken = YYSYMBOL_YYEOF; + YYDPRINTF ((stderr, "Now at end of input.\n")); + } + else if (yychar == YYerror) + { + /* The scanner already issued an error message, process directly + to error recovery. But do not keep the error token as + lookahead, it is too special and may lead us to an endless + loop in error recovery. */ + yychar = YYUNDEF; + yytoken = YYSYMBOL_YYerror; + goto yyerrlab1; + } + else + { + yytoken = YYTRANSLATE (yychar); + YY_SYMBOL_PRINT ("Next token is", yytoken, &yylval, &yylloc); + } + + /* If the proper action on seeing token YYTOKEN is to reduce or to + detect an error, take that action. */ + yyn += yytoken; + if (yyn < 0 || YYLAST < yyn || yycheck[yyn] != yytoken) + goto yydefault; + yyn = yytable[yyn]; + if (yyn <= 0) + { + if (yytable_value_is_error (yyn)) + goto yyerrlab; + yyn = -yyn; + goto yyreduce; + } + + /* Count tokens shifted since error; after three, turn off error + status. */ + if (yyerrstatus) + yyerrstatus--; + + /* Shift the lookahead token. */ + YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc); + yystate = yyn; + YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN + *++yyvsp = yylval; + YY_IGNORE_MAYBE_UNINITIALIZED_END + + /* Discard the shifted token. */ + yychar = YYEMPTY; + goto yynewstate; + + +/*-----------------------------------------------------------. +| yydefault -- do the default action for the current state. | +`-----------------------------------------------------------*/ +yydefault: + yyn = yydefact[yystate]; + if (yyn == 0) + goto yyerrlab; + goto yyreduce; + + +/*-----------------------------. +| yyreduce -- do a reduction. | +`-----------------------------*/ +yyreduce: + /* yyn is the number of a rule to reduce with. */ + yylen = yyr2[yyn]; + + /* If YYLEN is nonzero, implement the default value of the action: + '$$ = $1'. + + Otherwise, the following line sets YYVAL to garbage. + This behavior is undocumented and Bison + users should not rely upon it. Assigning to YYVAL + unconditionally makes the parser a bit smaller, and it avoids a + GCC warning that YYVAL may be used uninitialized. */ + yyval = yyvsp[1-yylen]; + + + YY_REDUCE_PRINT (yyn); + switch (yyn) + { + case 11: /* predicate_type: PRIMITIVE '(' ATOM ',' ATOM ')' '.' END_LINE */ +#line 79 "graphit.y" + { + _data.all_predicates.add_predicate( yyvsp[-5], atoi(yyvsp[-3]), + primitive); + } +#line 1220 "graphit.tab.c" + break; + + case 12: /* predicate_type: DERIVED '(' ATOM ',' ATOM ')' '.' END_LINE */ +#line 84 "graphit.y" + { + _data.all_predicates.add_predicate( yyvsp[-5], atoi(yyvsp[-3]), + derived); + } +#line 1229 "graphit.tab.c" + break; + + case 13: /* predicate_type: META '(' ATOM ',' ATOM ')' '.' END_LINE */ +#line 90 "graphit.y" + { + _data.all_predicates.add_predicate( yyvsp[-5], atoi(yyvsp[-3]), + meta); + } +#line 1238 "graphit.tab.c" + break; + + case 14: /* fact_metric: METRIC '(' fact ',' metric ')' '.' END_LINE */ +#line 97 "graphit.y" + { + lastFact->metric = atof(metric_str); + + fact1_str[0] = 0; + lastFact=0; + fact1=0; + + // make sure the fact Q is empty + // factQ.emptyQ(); + + } +#line 1254 "graphit.tab.c" + break; + + case 15: /* trace_step: TRACESTEP_TOKEN '(' BECAUSE_TOKEN '(' ATOM ',' DESC '(' QUOTE desc QUOTE ',' metric ')' ',' fact ',' conjunct ')' ')' '.' END_LINE */ +#line 111 "graphit.y" + { + int rulenum = atoi(yyvsp[-17]); + + if ( (strlen(desc_str) + strlen(fact1_str) + + strlen(facts_str) + strlen(metric_str) + strlen(yyvsp[-17]) + 9) > MAXLEN ) { + cerr << "ERROR: tracestep overflow\n"; + exit(1); + } + //rebuild the parsed tracestep for the key + #ifdef LINUX + snprintf(trace_step_key,MAXLEN,"%s,%s,'%s',%s,[%s]", + yyvsp[-17],metric_str,desc_str,fact1_str,facts_str ); + #else + sprintf(trace_step_key,"%s,%s,'%s',%s,[%s]", + yyvsp[-17],metric_str,desc_str,fact1_str,facts_str ); + #endif + + // save unique trace step + _data.all_trace_steps.add_step( trace_step_key, + rulenum, metric_str, fact1, factQ); + + // save unique rule + _data.ruleList.add_rule(rulenum, desc_str); + + #ifdef DEBUG + printf("possible_duplicate_trace_step(because(%s)).\n\n", + trace_step_key); + #endif + // empty the strings used for building trace step + fact1_str[0] = 0; + fact_str[0] = 0; + facts_str[0] = 0; + lastFact=0; + + // empty the fact queue without deleting facts + factQ.emptyQ(); + } +#line 1296 "graphit.tab.c" + break; + + case 16: /* metric: ATOM */ +#line 153 "graphit.y" + { + if (strlen(yyvsp[0]) > MAXLEN){ + cerr << "ERROR: metric string overflow\n"; + exit(1); + } + strcpy(metric_str, yyvsp[0]); + } +#line 1308 "graphit.tab.c" + break; + + case 17: /* metric: FLOAT */ +#line 161 "graphit.y" + { + if (strlen(yyvsp[0]) > MAXLEN){ + cerr << "ERROR: metric string overflow\n"; + exit(1); + } + strcpy(metric_str, yyvsp[0]); + } +#line 1320 "graphit.tab.c" + break; + + case 20: /* cvss_metric: CVSS_AC '(' ATOM ')' */ +#line 179 "graphit.y" + { + if (strlen(CVSSAC_PREFIX)+strlen(yyvsp[-1]) > MAXLEN){ + cerr << "ERROR: metric string overflow\n"; + exit(1); + } + strcpy(metric_str, CVSSAC_PREFIX); + strcat(metric_str, yyvsp[-1]); + } +#line 1333 "graphit.tab.c" + break; + + case 21: /* cap_metric: CAP_LUCK '(' ATOM ')' */ +#line 190 "graphit.y" + { + if (strlen(CAP_LUCK_PREFIX)+strlen(yyvsp[-1]) > MAXLEN){ + cerr << "ERROR: metric string overflow\n"; + exit(1); + } + strcpy(metric_str, CAP_LUCK_PREFIX); + strcat(metric_str, yyvsp[-1]); + } +#line 1346 "graphit.tab.c" + break; + + case 22: /* attack_fact: ATTACK_TOKEN '(' fact ')' '.' END_LINE */ +#line 202 "graphit.y" + { + #ifdef DEBUG + printf("attack(%s).\n\n",fact1_str); + #endif + _data.goals[fact1_str] = NULL; + fact1_str[0] = 0; + lastFact=0; + fact1=0; + + // make sure the fact Q is empty + // factQ.emptyQ(); + } +#line 1363 "graphit.tab.c" + break; + + case 23: /* special_char: SP */ +#line 217 "graphit.y" + {special_char_str=" ";} +#line 1369 "graphit.tab.c" + break; + + case 24: /* special_char: '(' */ +#line 218 "graphit.y" + {special_char_str="(";} +#line 1375 "graphit.tab.c" + break; + + case 25: /* special_char: ')' */ +#line 219 "graphit.y" + {special_char_str=")";} +#line 1381 "graphit.tab.c" + break; + + case 26: /* special_char: '[' */ +#line 220 "graphit.y" + {special_char_str="[";} +#line 1387 "graphit.tab.c" + break; + + case 27: /* special_char: ']' */ +#line 221 "graphit.y" + {special_char_str="]";} +#line 1393 "graphit.tab.c" + break; + + case 28: /* quoted_name: ATOM */ +#line 226 "graphit.y" + { + strncpy(name_str, yyvsp[0], MAXLEN); + } +#line 1401 "graphit.tab.c" + break; + + case 29: /* quoted_name: quoted_name ATOM */ +#line 230 "graphit.y" + { + strncat(name_str,yyvsp[0],MAXLEN-strlen(name_str)); + } +#line 1409 "graphit.tab.c" + break; + + case 30: /* quoted_name: quoted_name special_char */ +#line 234 "graphit.y" + { + strncat(name_str,special_char_str,MAXLEN-strlen(name_str)); + } +#line 1417 "graphit.tab.c" + break; + + case 32: /* desc: ATOM */ +#line 241 "graphit.y" + { + strncpy(desc_str, yyvsp[0], MAXLEN); + } +#line 1425 "graphit.tab.c" + break; + + case 33: /* desc: desc SP ATOM */ +#line 245 "graphit.y" + { + strncat(desc_str," ",MAXLEN-strlen(desc_str)); + strncat(desc_str,yyvsp[0],MAXLEN-strlen(desc_str)); + } +#line 1434 "graphit.tab.c" + break; + + case 34: /* arglist: factString */ +#line 252 "graphit.y" + { + strncat(arglist_p,str,MAXLEN); + arg_count =1; + } +#line 1443 "graphit.tab.c" + break; + + case 35: /* arglist: arglist ',' factString */ +#line 257 "graphit.y" + { + strncat(arglist_p,",",MAXLEN); + strncat(arglist_p,str,MAXLEN); + arg_count++ ; + } +#line 1453 "graphit.tab.c" + break; + + case 36: /* factString: ATOM */ +#line 264 "graphit.y" + {strcpy(str,yyvsp[0]); if (str[0] == '_') strcpy(str, "_");} +#line 1459 "graphit.tab.c" + break; + + case 37: /* factString: QUOTE quoted_name QUOTE */ +#line 265 "graphit.y" + {strcpy(str,"'"); strcat(str,name_str); strcat(str,"'");} +#line 1465 "graphit.tab.c" + break; + + case 39: /* facts: fact */ +#line 275 "graphit.y" + { + strncat(facts_p,fact_p,MAXLEN); + if( lastFact != NULL) { + factQ.add(*lastFact); + //exit (-1); + } + // empty the fact used for building fact list + fact_str[0] = 0; + } +#line 1479 "graphit.tab.c" + break; + + case 40: /* facts: facts ',' fact */ +#line 285 "graphit.y" + { + strncat(facts_p,",",MAXLEN); + strncat(facts_p,fact_p,MAXLEN); + if( lastFact != NULL) { + factQ.add(*lastFact); + } + fact_str[0] = 0; + } +#line 1492 "graphit.tab.c" + break; + + case 41: /* fact: ATOM '(' arglist ')' */ +#line 296 "graphit.y" + { + bool first_fact; + if( strlen(fact1_str) == 0 ) { + first_fact = true; + fact_ptr = fact1_p; + } else { + first_fact = false; + fact_ptr = fact_p; + } + strncat(fact_ptr,yyvsp[-3],MAXLEN); + strncat(fact_ptr,"(",MAXLEN); + strncat(fact_ptr,arglist_p,MAXLEN); + strncat(fact_ptr,")",MAXLEN); + + // get the pointer to correct predicate + Predicate *p = + _data.all_predicates.add_predicate( yyvsp[-3], arg_count, undef); + + // add this fact to the fact list, unless + // it is already in the list. + lastFact=_data.all_facts.add_fact( fact_ptr,p, arglist_p); + if( first_fact) fact1 = lastFact; + + // empty the list for building next fact string + arglist_str[0] = 0; + arg_count=0; + } +#line 1524 "graphit.tab.c" + break; + + +#line 1528 "graphit.tab.c" + + default: break; + } + /* User semantic actions sometimes alter yychar, and that requires + that yytoken be updated with the new translation. We take the + approach of translating immediately before every use of yytoken. + One alternative is translating here after every semantic action, + but that translation would be missed if the semantic action invokes + YYABORT, YYACCEPT, or YYERROR immediately after altering yychar or + if it invokes YYBACKUP. In the case of YYABORT or YYACCEPT, an + incorrect destructor might then be invoked immediately. In the + case of YYERROR or YYBACKUP, subsequent parser actions might lead + to an incorrect destructor call or verbose syntax error message + before the lookahead is translated. */ + YY_SYMBOL_PRINT ("-> $$ =", YY_CAST (yysymbol_kind_t, yyr1[yyn]), &yyval, &yyloc); + + YYPOPSTACK (yylen); + yylen = 0; + + *++yyvsp = yyval; + + /* Now 'shift' the result of the reduction. Determine what state + that goes to, based on the state we popped back to and the rule + number reduced by. */ + { + const int yylhs = yyr1[yyn] - YYNTOKENS; + const int yyi = yypgoto[yylhs] + *yyssp; + yystate = (0 <= yyi && yyi <= YYLAST && yycheck[yyi] == *yyssp + ? yytable[yyi] + : yydefgoto[yylhs]); + } + + goto yynewstate; + + +/*--------------------------------------. +| yyerrlab -- here on detecting error. | +`--------------------------------------*/ +yyerrlab: + /* Make sure we have latest lookahead translation. See comments at + user semantic actions for why this is necessary. */ + yytoken = yychar == YYEMPTY ? YYSYMBOL_YYEMPTY : YYTRANSLATE (yychar); + /* If not already recovering from an error, report this error. */ + if (!yyerrstatus) + { + ++yynerrs; + yyerror (YY_("syntax error")); + } + + if (yyerrstatus == 3) + { + /* If just tried and failed to reuse lookahead token after an + error, discard it. */ + + if (yychar <= YYEOF) + { + /* Return failure if at end of input. */ + if (yychar == YYEOF) + YYABORT; + } + else + { + yydestruct ("Error: discarding", + yytoken, &yylval); + yychar = YYEMPTY; + } + } + + /* Else will try to reuse lookahead token after shifting the error + token. */ + goto yyerrlab1; + + +/*---------------------------------------------------. +| yyerrorlab -- error raised explicitly by YYERROR. | +`---------------------------------------------------*/ +yyerrorlab: + /* Pacify compilers when the user code never invokes YYERROR and the + label yyerrorlab therefore never appears in user code. */ + if (0) + YYERROR; + ++yynerrs; + + /* Do not reclaim the symbols of the rule whose action triggered + this YYERROR. */ + YYPOPSTACK (yylen); + yylen = 0; + YY_STACK_PRINT (yyss, yyssp); + yystate = *yyssp; + goto yyerrlab1; + + +/*-------------------------------------------------------------. +| yyerrlab1 -- common code for both syntax error and YYERROR. | +`-------------------------------------------------------------*/ +yyerrlab1: + yyerrstatus = 3; /* Each real token shifted decrements this. */ + + /* Pop stack until we find a state that shifts the error token. */ + for (;;) + { + yyn = yypact[yystate]; + if (!yypact_value_is_default (yyn)) + { + yyn += YYSYMBOL_YYerror; + if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYSYMBOL_YYerror) + { + yyn = yytable[yyn]; + if (0 < yyn) + break; + } + } + + /* Pop the current state because it cannot handle the error token. */ + if (yyssp == yyss) + YYABORT; + + + yydestruct ("Error: popping", + YY_ACCESSING_SYMBOL (yystate), yyvsp); + YYPOPSTACK (1); + yystate = *yyssp; + YY_STACK_PRINT (yyss, yyssp); + } + + YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN + *++yyvsp = yylval; + YY_IGNORE_MAYBE_UNINITIALIZED_END + + + /* Shift the error token. */ + YY_SYMBOL_PRINT ("Shifting", YY_ACCESSING_SYMBOL (yyn), yyvsp, yylsp); + + yystate = yyn; + goto yynewstate; + + +/*-------------------------------------. +| yyacceptlab -- YYACCEPT comes here. | +`-------------------------------------*/ +yyacceptlab: + yyresult = 0; + goto yyreturnlab; + + +/*-----------------------------------. +| yyabortlab -- YYABORT comes here. | +`-----------------------------------*/ +yyabortlab: + yyresult = 1; + goto yyreturnlab; + + +/*-----------------------------------------------------------. +| yyexhaustedlab -- YYNOMEM (memory exhaustion) comes here. | +`-----------------------------------------------------------*/ +yyexhaustedlab: + yyerror (YY_("memory exhausted")); + yyresult = 2; + goto yyreturnlab; + + +/*----------------------------------------------------------. +| yyreturnlab -- parsing is finished, clean up and return. | +`----------------------------------------------------------*/ +yyreturnlab: + if (yychar != YYEMPTY) + { + /* Make sure we have latest lookahead translation. See comments at + user semantic actions for why this is necessary. */ + yytoken = YYTRANSLATE (yychar); + yydestruct ("Cleanup: discarding lookahead", + yytoken, &yylval); + } + /* Do not reclaim the symbols of the rule whose action triggered + this YYABORT or YYACCEPT. */ + YYPOPSTACK (yylen); + YY_STACK_PRINT (yyss, yyssp); + while (yyssp != yyss) + { + yydestruct ("Cleanup: popping", + YY_ACCESSING_SYMBOL (+*yyssp), yyvsp); + YYPOPSTACK (1); + } +#ifndef yyoverflow + if (yyss != yyssa) + YYSTACK_FREE (yyss); +#endif + + return yyresult; +} + diff --git a/src/attack_graph/graphit.y b/src/attack_graph/graphit.y index f2c2f16..ae8f3ae 100755 --- a/src/attack_graph/graphit.y +++ b/src/attack_graph/graphit.y @@ -15,13 +15,14 @@ int yyparse(void); int yylex(void); YYSTYPE* mylval = &yylval; + // extern YYSTYPE* mylval; int yywrap() { return 1; } } - extern graph_data data; + extern graph_data _data; #define MAXLEN 1000 #define CVSSAC_PREFIX "cvss_ac_" @@ -76,18 +77,18 @@ blank_line: END_LINE predicate_type: PRIMITIVE '(' ATOM ',' ATOM ')' '.' END_LINE { - data.all_predicates.add_predicate( $3, atoi($5), + _data.all_predicates.add_predicate( $3, atoi($5), primitive); } | DERIVED '(' ATOM ',' ATOM ')' '.' END_LINE { - data.all_predicates.add_predicate( $3, atoi($5), + _data.all_predicates.add_predicate( $3, atoi($5), derived); } | META '(' ATOM ',' ATOM ')' '.' END_LINE { - data.all_predicates.add_predicate( $3, atoi($5), + _data.all_predicates.add_predicate( $3, atoi($5), meta); } @@ -125,11 +126,11 @@ trace_step: #endif // save unique trace step - data.all_trace_steps.add_step( trace_step_key, + _data.all_trace_steps.add_step( trace_step_key, rulenum, metric_str, fact1, factQ); // save unique rule - data.ruleList.add_rule(rulenum, desc_str); + _data.ruleList.add_rule(rulenum, desc_str); #ifdef DEBUG printf("possible_duplicate_trace_step(because(%s)).\n\n", @@ -202,7 +203,7 @@ attack_fact: #ifdef DEBUG printf("attack(%s).\n\n",fact1_str); #endif - data.goals[fact1_str] = NULL; + _data.goals[fact1_str] = NULL; fact1_str[0] = 0; lastFact=0; fact1=0; @@ -308,11 +309,11 @@ fact: ATOM '(' arglist ')' // get the pointer to correct predicate Predicate *p = - data.all_predicates.add_predicate( $1, arg_count, undef); + _data.all_predicates.add_predicate( $1, arg_count, undef); // add this fact to the fact list, unless // it is already in the list. - lastFact=data.all_facts.add_fact( fact_ptr,p, arglist_p); + lastFact=_data.all_facts.add_fact( fact_ptr,p, arglist_p); if( first_fact) fact1 = lastFact; // empty the list for building next fact string diff --git a/src/metrics/Makefile b/src/metrics/Makefile index 8e53298..11dacfe 100644 --- a/src/metrics/Makefile +++ b/src/metrics/Makefile @@ -8,7 +8,8 @@ default: ${TARGET} javac $*.java install: ${TARGET} - cp ${TARGET} ../../bin/metrics + mkdir -p ../../bin/metrics + mv ${TARGET} ../../bin/metrics clean: rm -f *.class diff --git a/utils/graph_gen.sh b/utils/graph_gen.sh index 8f8485f..46d8a87 100755 --- a/utils/graph_gen.sh +++ b/utils/graph_gen.sh @@ -61,7 +61,7 @@ do -l) CSVOutput=true;; - --arclabel | --reverse | --simple | --nometric | --nopdf) + --arclabel | --reverse | --simple | --nometric) VISUALIZATION_OPTS="$VISUALIZATION_OPTS $ac_option" ;; -s | --sat) @@ -100,7 +100,7 @@ Usage: graph_gen.sh [-r|--rule rulefile] [-s|--sat] [-t|--t trace_option] [-tr|--trim] - [-v|--visualize [--arclabel] [--reverse] [--nopdf]] + [-v|--visualize [--arclabel] [--reverse]] [--cvss] [-h|--help] [attack_graph_options] diff --git a/utils/nessus_translate.sh b/utils/nessus_translate.sh index f41a72e..4d39501 100755 --- a/utils/nessus_translate.sh +++ b/utils/nessus_translate.sh @@ -20,11 +20,6 @@ export MALLOC_CHECK_=0 CLASSPATH=$CLASSPATH:$MULVALROOT/lib/dom4j-1.6.1.jar:$MULVALROOT/lib/jaxen-1.1.1.jar:$MULVALROOT/lib/mysql-connector-java-5.1.8-bin.jar:$MULVALROOT/bin/adapter ADAPTERSRCPATH=$MULVALROOT/src/adapter -if [ -z "$XSBHOME" ]; then - echo '$XSBHOME environment variable not set.' - exit -1 -fi - if [ ! -r config.txt ]; then echo "config.txt does not exist. Please refer to the README and create config.txt first." exit 1 @@ -36,7 +31,7 @@ if [ -r connectionSucc.txt ]; then echo 'connection tested successfully' else # echo 'connection cannot be established' - exit 1 + exit 1 fi java -cp $CLASSPATH NessusXMLParser $1 @@ -44,8 +39,8 @@ java -cp $CLASSPATH NessusXMLParser $1 if grep -qF "CVE" vulInfo.txt; then echo 'vulnerability(ies) detected' else - echo 'no vulnerability detected' - exit 1 + echo 'no vulnerability detected' + exit 1 fi @@ -56,18 +51,16 @@ xsb 2>$xsb_logfile 1>&2 <> nessus.P - -if [ -z "$2" ]; then - echo "Firewall rules missing." - echo "hacl(_,_,_,_).">>nessus.P -else - echo "Firewall rules provided." - cat $2 >> nessus.P -fi +echo "hacl(_,_,_,_).">>nessus.P #cat $ADAPTERSRCPATH/client_software.P>> nessus.P echo "Output can be found in nessus.P." @@ -97,11 +83,5 @@ echo "Output can be found in nessus.P." # Perform summarization nessus_vul_summary.sh nessus.P cat accountinfo.P >>summ_nessus.P - -if [ -z "$2" ]; then - echo "hacl(_,_,_,_).">>summ_nessus.P -else - cat $2 >> summ_nessus.P -fi +echo "hacl(_,_,_,_).">>summ_nessus.P #cat $ADAPTERSRCPATH/client_software.P >> summ_nessus.P - diff --git a/utils/nvd_sync.sh b/utils/nvd_sync.sh index 663a203..9d899f7 100755 --- a/utils/nvd_sync.sh +++ b/utils/nvd_sync.sh @@ -44,8 +44,7 @@ i=2002 year=`date +"%Y"` while [ $i -le $year ]; do - wget http://nvd.nist.gov/download/nvdcve-$i.xml.gz - gunzip -f nvdcve-$i.xml.gz + wget http://nvd.nist.gov/download/nvdcve-$i.xml i=`expr $i + 1` done cd .. diff --git a/utils/render.sh b/utils/render.sh index fe78385..af455c5 100755 --- a/utils/render.sh +++ b/utils/render.sh @@ -38,16 +38,12 @@ do --simple) simple=true ;; - --nopdf) - nopdf=true ;; - *) # -h | --help) cat <> AttackGraph.dot -if test -n "$nopdf"; then - echo "Skipping pdf generation" -else - echo "Generating pdf from dot file" - dot -Tps AttackGraph.dot > AttackGraph.eps - epstopdf AttackGraph.eps - echo "If successfully produced, the attack graph should be in AttackGraph.pdf" - if test -n "$PDF_READER"; then - $PDF_READER AttackGraph.pdf& - fi -fi +dot -Tps AttackGraph.dot > AttackGraph.eps +epstopdf AttackGraph.eps +echo "If successfully produced, the attack graph should be in AttackGraph.pdf" +if test -n "$PDF_READER"; then + $PDF_READER AttackGraph.pdf& +fi