From 8358edac2eb3797c2a33b7d3bea61d9820766a8b Mon Sep 17 00:00:00 2001 From: scriptjunkie Date: Fri, 11 Nov 2011 14:05:58 -0600 Subject: [PATCH] Add badchars field to msfgui payload popup, so badchars can be added (in hex form) --- data/gui/msfgui.jar | Bin 808131 -> 808639 bytes .../msfguijava/src/msfgui/PayloadPopup.form | 145 +++++---- .../msfguijava/src/msfgui/PayloadPopup.java | 285 ++++++++++-------- .../msfgui/resources/PayloadPopup.properties | 1 + 4 files changed, 237 insertions(+), 194 deletions(-) diff --git a/data/gui/msfgui.jar b/data/gui/msfgui.jar index e5f99a7b60b8441505828efff8e23f06508d69ef..1db5f647e52ea13e1d4bacb0964914d4880924b4 100755 GIT binary patch delta 12885 zcmb7q2VfL+_WyhDyE{9(8Ny~l5<(~e6d|F7PAEx$1Oh391VZS61OfyIy$CEIMN~jQ z8HxoI#c~!`^6KZkZ=LUa=R0%q&a}tw zNozE6gmU=+bb!liW^ZrQUahE^y|&MWKDeO|ZRn#m^l@$I<38F)Ycp6sJ$H7-@*}Y~ zTieRCLHaG;YIIynN}QT5WNPQuP3CE+XwRn4e5 z5!A7|!!b_6R%x7YO0gtd>Ohw>bVUUE+2GZaoP_JgNWy@FTFa<)5!73w{?(|K`(!8K z76-760oU4qXz8@?+l={UM=rpQT@p7OzN{6M4+z4#G+tm7x5eCmUB_?ZAd_uv;kXo{yq z`BF&WE1_Qt`9|`c7IH?%Z$0>(5C4PTd+-Mxe~f~*c-DhIML|3K*$1uhQytIw-~gVN z$X`5o!3Q1jq7T*+2tf}Kdr0|UHMxA`CQVciXD3}JFXtnlPEmS*44oS36fK^{g7N!c z8^wrZN^q=5O}GV)6z7Ah94X!h8!1)_vmptBYbqpBNHZZxLYfO{A*7`bu5`eyL`@bF zXf3pjkhVfD5pt;y)=)bSUFN0s)WHX3l)}A6sX{t>sFM$OQD-4t#Mjk_H&B|ybraHE zNDm=Bh4d0{Z!h(sz9OYdSU+*}7j-~DJOf3~5Rxe*ONt#N?!kf{B86m&Ek~rG(o@5P z&CzMDPV;oC(P_R;3v^nj(;}S~>$F6t zr8+Isk;9iu)j!j5o{T)FUg3k|v{IB+I<1!WuycV7G8Yh#X0guAx=QplI#%hlR!2^{ zPRC-MuF!EDm%pBu4V^aVIK@L7eejxOTuqyJncxl~zC5p?%|foyai;JxabL|{PS?mx z-J;W0=`1d4yy#r7Z9e!=vTT!jU900<4{i6sXS7nM9XfJ*cj`D>r|WbqZwd59#!<7(dmiPNzq7Ixd3{qtl~4dW=r! z^tg^keDnmJ^w3{@*oB@H@|2Lk(>gt))8BZVqQ47yR;TB|Dv(K{l&D@}gSL+>LrDzB&* zJg=g1(Begl=FLU0ay#lxt-`5VRbr#5rmnORv~!O(iW_Wr3_vJ3xZy*yp3 zz<*m=EwM@M@EMvy!i5$-qEdZc#!j6%w|v2JEA4H)MQwhSwt#Y3Y2F}KjR@P2WQVM-U9~<-ued?jl z4Eh{5aL}BE(>qr#t2F2f@qLN=4cv&EtgegQ@huJdioQ1J8zHBe;CfDsH#3IL;C5^6 zZ0$1bTZ6u%|5*3V)|#vD=?ClaUV3cvAL%TDF{5&B<${^hy3Cz7m-GKbKN~m^Ct1(` zs9h3`OX!?I=jj)NF3?5m^g2&`s)3a_-B6&=qsUN-E*dxuD-7jQZm#Lbtg^hqtRaTd zl*gJ^&9^?KE3bibae|?ID$2k)5^mtt1{UK;150p}fn``=;AD|z;3Na9M5-1tPaHLZ zn=k4DTxj4TQ5TCkTBI=|zYHX+&Wg040H8E72 ziZ|$cm9R5yTYNw@Rfz_ZW`;^q%?;H;NJ~jIj)`g|Bw0vnA#K#99(9?aI;a#wrK*l% z>15y(E}wIBHdGgO;COB=mP?(cileJC#hWJJZiecvdKjvw*m|iRT(RD&4-c5?Yv8p! zU@_BN&D;i-;#lj23~Xj4%++pHGjZ0=Nm0%HDxEGOxN_z#m}97ZxZjG&L~c-jLk&;^ z4V9rXt*o(Hd>fC-GSnb77@_f^nR6@wrT8p0LGR@VTg)*Ui!v zYAG$N4K+vc8qjFYyo$xum7Oc+PUDrqqvjc^M$NbU3GU_rzBcz8YJpm4s6}#>>LZ=2 zG#LStCGBD%OL%@KPhGyKa$#qWT570eYPpzKaBiQkrn-FQ++^ut9~*H$N47yAt{Q!z zc%9+pgLRM3w_x$q+9K_O8#h{KzH^NswQ1*pk|DLvtQYm~KMiD$p{ z%t~#fHEf;sv-RCY?1o8JS|Y|$GWWBUO zO9+f)1IguSbH3DU&R3hwd3xHMuUzIR*NUz4%(pqOAvWiW+U9(L*qkp4oAY&Hb6z@Z z&Wno8`TDncRUj0|Gv7Aw`e<`r7HrPTh|PInu{p04Hs{5{=Dc3moRI(a;9QL0gy%m%ub=4{M+J8eGdZt}L#@E0~MK zOFp12@ofRfmafFjpm+p%>PR!K{#R-PN~JyVoCvt~Ug*VgZ?1VCu3=xh4#^w>yvMIk z-4Uc2&q?~@!20|n0H+Qo2(v_MO7?koLlq3aV2=md*bC{0_>7~rY z-y;ZPPe56I$0IN<2;&P>FISw4?d+a#3nX_EG0qi)i6>x^|APF2Fu7p8iw<3UD-@IN za`ke@xx+!t6YT_X0k;ztgemE+^=^)Mw__-zV-U)NFg2ucp)48X zZyyu57=(p(@*Y|bBhmTw9*&L{SsEg#O6wgBiww0X&*|c9hmB@t_v|7LEBZ|s z8w;H-3wM7I7Ki$dM=&x1JdSgY1nS3whcn{hL5(Opv~$wks+Sh0adKzQ4N7!#qn0>* zo)o8rCy^lHG#A&eb0S>5k8pbn1rWa2IVLSF%UG*e}uT%(h5vMmT}d{tHgooJ4vqoFsxA#%3u$wI2FAnBh*g+&_Sfav(*2 z04Z@G#lM9F!o4`y!DRgw6NVHxko67kGbo2F-9&p!R z?xN2Q!qUUMmJ!ODcNed{00Vf19muPB2Cvweyh3O3Dm;i+zrm~xfnmIokAxf;3qxTF zYgLd7H832O!3bCbd2l7K^4CHE?1nMDzxgis z0p9^Xgar7g!CfQJG<@4=8oDF-AQ}&ZZX5iR;}jS*2cjjBcVbE%TwYcSE04k|7FV+v zI0|Vju3>TQQRuAjU3fX)Wi&r0o z!4YwIL>$FpC~;QAS`iV4u^38R&0?r(87yAIdAA&ett@V1@!F#>FC+$79>8*_^BY>KSI6s0N6Ty~70HY&-l9akYeR0JpJpZ?+m^*^7lLs=*yeb zOL3WQ-cwxW*UWpFdd&Nn>gN4Sz2;%2KJy6EDDwfPhWQ}VM&?nb(PofoW3x6=Y_56C zDK#(E3_KKWz{6aRJhLtckBCqQ$IEykKN^I`SS?I7PlSPwi@|&%2q#$>oNE3x?0HfQ z=2JmjY5`{AaeLH^<($E2DU!bmA~jCs*1 zwKO%B9|jv^vqsmUiwi)$v}G2TFjNaerG%0|EP9+W ziepjdjCD{}#*QAf=*<`2F^InUTcqrwB0FNy7$MuJ8219_e-NWW`(55yElpm)IbSvj+-qi?VssKVG(4yeXc| z`Lg&)fnungz|der@qZhN977-i$z_Xb7?a8d|AiQ8&WX`rMJm8`8K;8Sh;x=YbvOLc^n+l(O_^80*k^i?B{LF9REW3IUQ+3?8gTwmUo+>E~sv} zKjrH#vRQQ=BimmEFSbM>@348+B6n9}F?@W{UIK4T( zfGw#Xzjqjdt!Xs2p-I@5=3oa}jVZJVJJN3KL_y*T z9|hP~d9j~rhW%Ar9H@F=h8lpGe7KpTM&nR533K^)ak!d?Bh*sNQ)@6^U5$lm7midn zVUfBIN2z02te(a)^$LztAK-ZPB~DQ1aH@+By1v15U0txsm5DP0u3Vhu8jCfq znK<9Y=T5H6ak1+fT;jSOm%0w(D%Vk5?RpdguIF)s>s{RF`UJ0Z{e+v{3a@s@;Wh47 zxW(NWce*q2I`?qg-N1`QXoDS6YPNa zPNwf6xRl@oHs$~6u0xPhZ{oD}QyV6_s~^$RUG@_>Keb`vEzmmA6{oqY6WwwAl6pPex#QA_mMmDv%*wx#R6 zcadIKAELQpwb(UX!2||0{LUHdk{=Ev|tvCykeQW)#&L+ ziLOV3*ee!$^YUm0Aufo0T)i}jjK#jSn4a!Yz4SPpVbb5OIKBHZ?6()pM31d-Pxmi9 z1RBo}euaDJ;u~?=9%%Ke!g)F{nhUhE4|GyzNNQ&!?bIujMK@|q`MZ>)8@0qh7RQt( za;ZGfzA4@PjaSRK+Sc_xF6Kz09*Y?Qiu3w?Q|uIm*anGhz1Mf>;`(1zg6|Awq8_fq zAu#h(Iv&Fzhk*B9A{>@WlSZiR(3SE6YO4sgVJ~J=9_!4V!wQV&g9xBR@KQ5Kq9neC znnM?A!6#&`p`6;lBDw_D(xv>8v>oiB%iu8cT1tV(DHUF&j_^Kpf^VoZzf10dZtBX* zWg0J!-7u5o9O{n66zGXls29$o-nf$b;MLR@cT+kZ;`R10^~d8h5MQJWJWE-m(;#X= zL#PYoPzDWUI*dk8F6HrWBjwX(DxmABkoMC^x|@pVVJfEMte>RO^bC!m52=)2OOB;; zRHpniP9@TK)jdEHR4y9|X_6XClhrhuqN-`ET0m3PR+^!<(=@e%DtOFhsJ&FF_R(~; zpQ`M`hEMs}VLl&g+<|v;mu`dhq4SWn&&+e6Y(IQv=s48rIuqAT%*XT7Hvj19^;d9jjo5E@F9E{Jaigv!aA08wIjf_e1y;O zN$s_tmLA2&_&A5;MRMqvW`O8?*LL$$MuRgMpBQO2xTxCho_GgTpNiAh zr{dSq^{M2j=>N<$k8{=hk6iqcJCv)G6G^J1BbdXRjG=oWmM@HG)`B=Jh`D^45Z-t2 zxep&S(L&(w5f(u+THK(Nq;QRs!ZqgC=D%OcaHo{~KPqJz57%-oWX10k!nevuDg4$x zRLa0mTeK8aiz6b{cKUb~xOwj(Z)%)A*1|Q`!Zqg40DhCp_1jzlTFc4S{f}h)VZk3Z zzx0oq&(ohaa`QJeC?wp+W_|PhIzElhNGaCW2egDVIV;t8a&Q|P#A*1q(5og5|1J}g z!=4R=tuyURB6wL!eV0oRB11S!XDrGr@~$gg&p{FrM(miE4uDamG*Kd zEUk$v!G7WR|1ki(GQ7frMEEN1WwYQ6r8u{$hHhoZUvcEC4O&z<2 zQ1%Ckq|ITC(muEL_cTVRm0#J`rq;V(Xqsj8;!LfYc`WSe zX=3H~VqjHEYfUdBM;&Yvvc4nM?>brj-fXQ+v#m+irj}f4Tz8M(%Ij_LcUe8G{o?xpl;(4y0xme%ABMpLWu z47cN}48!M2`L5nEu)opGbYPl*%|6Sxhx;?G>(BKLJL&oUT;7WbR`~#KR_6g+ z<-@H+8A_+xIK~rV^t5vn??6_%br2=ay7n?%vl82Kt!E76s#TBC!SYw=an^Gsx^8WD zv18XH-ETxD&iEoeZwm)-{fq zTh!D_%VbN;ddI?z>PFXX5@jTPc&jxqixE*-T)9?L`?Gjf7M|3t z1Ao<F!irVA(kic`?|c9u8W$e`IZ^8xBsvFaea%Z8nd! znhiAu($LXP)SRI_TsMz#lyfECcO?J$ibB)yGU$5T4Z$u;i4zAr$?m&4x z&!V#xjxu04cYgaBj&k#GBby3mI!eI^!?SCI(U;zf7zR=9EXTXD%6q9(jkiW{HCE1c z%=gXoUgDSsf=Q+yrd0c+&0!R70hP%e@-Q0W*$Xw`{m*sQ7y^9>> z&3uEulUU*?Jr{96=b_wnr3D=Da>%@~fG?A-%N)#!jwN#>ySF?Rb|+euqqxk^p8eGnc>Q??a9YrSx~>RaHZXffF;JHCQARs!iYV>kL>W!9+B!!6a1OLfZ(GbQek{!~ zR~9qYpXn%%h*DA@N(;+ZV)Ukm$BPnceO2a*cA`tC`x;K)>?#|uvkraMJtc-;+j4=A HjNtzPyTA^# delta 12309 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
SiaB2&!0(xeW zFco;Vb5Efa@2r^`=;+MgL)95Qo}FAV)ib?%S|H97>oWqemUn~$>{{1*nzLuTRZZp7 zy=Z-kcwvm5=`kCMtYEj_oZ-!l8Sh%R*I8b~UEvcw(euv-dM7$I$8&IMu~kC-Ydq$< zV(xAQZ&=CBd5Z!GUW4QkZt!7598=5PcXLo#ds0737JBW@stxq=5_!?$KrG+Ddq2C@ zt##fn=8oLHIMCD6pIXX(w=8j+UAv4=(z;S!8?P>H79>iXG-_JrIqo*W8b$fbo$3kJ zY}&g*a0lnz2JVhKZO12AoltWQiF81jH40yK>1)pnbPJBE02$kMU2k2C7edrgP{=PR9)4(&8fAJw*Y(vwspFU3IAukvW+S9vv9rs)g$? vGQ#Z_ZfddVEH5?tIX9K_%6VeC*?Nf_sB&_q@LDdM?`)o84bZMQCTag4Rt`rX diff --git a/external/source/gui/msfguijava/src/msfgui/PayloadPopup.form b/external/source/gui/msfguijava/src/msfgui/PayloadPopup.form index 9e57e0b81d..a17a7d160e 100644 --- a/external/source/gui/msfguijava/src/msfgui/PayloadPopup.form +++ b/external/source/gui/msfguijava/src/msfgui/PayloadPopup.form @@ -56,79 +56,76 @@ - - - - - - - - - - - - - - - + + - - - - - + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - + + + - - - - - - - - - - - - - - - - - - - - + + - - - + + + + + + + + + + + + + + + + + + + + + - - + + - + @@ -137,47 +134,52 @@ - - + + - + - + - + - + + + + + + - + - + - + - + @@ -407,6 +409,17 @@ + + + + + + + + + + + diff --git a/external/source/gui/msfguijava/src/msfgui/PayloadPopup.java b/external/source/gui/msfguijava/src/msfgui/PayloadPopup.java index b3eef50a5f..9ac0f9a9a3 100644 --- a/external/source/gui/msfguijava/src/msfgui/PayloadPopup.java +++ b/external/source/gui/msfguijava/src/msfgui/PayloadPopup.java @@ -13,6 +13,7 @@ import javax.swing.GroupLayout; import javax.swing.GroupLayout.ParallelGroup; import javax.swing.GroupLayout.SequentialGroup; import javax.swing.JFileChooser; +import javax.swing.LayoutStyle; /** * Popup for generating payloads and starting handlers. @@ -74,26 +75,28 @@ public class PayloadPopup extends ModuleInfoWindow { templateWorkingCheck.setVisible(saving); timesField.setVisible(saving); timesLabel.setVisible(saving); + badcharsField.setVisible(saving); + badcharsLabel.setVisible(saving); addCodeButton.setVisible(saving); addCodeLabel.setVisible(saving); addCodeField.setVisible(saving); GroupLayout mainPanelLayout = (GroupLayout)mainPanel.getLayout(); //HORIZONTAL GROUPING - ParallelGroup labelGroup = mainPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING); + ParallelGroup labelGroup = mainPanelLayout.createParallelGroup(GroupLayout.Alignment.LEADING); //make label group for(int i = 0; i < optionalOpts.size(); i+= 2) - labelGroup = labelGroup.addComponent((Component)optionalOpts.get(i), javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE); + labelGroup = labelGroup.addComponent((Component)optionalOpts.get(i), GroupLayout.PREFERRED_SIZE, GroupLayout.PREFERRED_SIZE, GroupLayout.PREFERRED_SIZE); //make text box group - ParallelGroup textBoxGroup = mainPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING); + ParallelGroup textBoxGroup = mainPanelLayout.createParallelGroup(GroupLayout.Alignment.LEADING); for(int i = 1; i < optionalOpts.size(); i+= 2) textBoxGroup = textBoxGroup.addComponent((Component)optionalOpts.get(i)); //put it together mainPanelLayout.setHorizontalGroup( - mainPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + mainPanelLayout.createParallelGroup(GroupLayout.Alignment.LEADING) .addGroup(mainPanelLayout.createSequentialGroup() .addContainerGap() - .addGroup(mainPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(mainPanelLayout.createParallelGroup(GroupLayout.Alignment.LEADING) .addComponent(titleLabel) .addComponent(descriptionBox) .addComponent(authorsLabel) @@ -101,116 +104,122 @@ public class PayloadPopup extends ModuleInfoWindow { .addComponent(versionLabel) .addGroup(mainPanelLayout.createSequentialGroup() .addGroup(labelGroup) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) + .addPreferredGap(LayoutStyle.ComponentPlacement.UNRELATED) .addGroup(textBoxGroup) .addContainerGap()) .addGroup(mainPanelLayout.createSequentialGroup() .addComponent(generateButton) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addPreferredGap(LayoutStyle.ComponentPlacement.RELATED) .addComponent(displayButton) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addPreferredGap(LayoutStyle.ComponentPlacement.RELATED) .addComponent(saveButton) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) + .addPreferredGap(LayoutStyle.ComponentPlacement.UNRELATED) .addComponent(handleButton) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addPreferredGap(LayoutStyle.ComponentPlacement.RELATED) .addComponent(handleConsoleButton)) - .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, mainPanelLayout.createSequentialGroup() - .addComponent(outputScrollPane, javax.swing.GroupLayout.DEFAULT_SIZE, 40, Short.MAX_VALUE) + .addGroup(GroupLayout.Alignment.TRAILING, mainPanelLayout.createSequentialGroup() + .addComponent(outputScrollPane, GroupLayout.DEFAULT_SIZE, 40, Short.MAX_VALUE) .addContainerGap()) .addGroup(mainPanelLayout.createSequentialGroup() - .addGroup(mainPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false) - .addComponent(encoderLabel, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) - .addComponent(outputLabel, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) - .addComponent(archLabel, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) - .addComponent(timesLabel, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) - .addComponent(outputPathLabel, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) - .addComponent(templateLabel, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) - .addComponent(addCodeLabel, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addGroup(mainPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addComponent(encoderCombo, 0, 188, Short.MAX_VALUE) - .addComponent(outputCombo, 0, 188, Short.MAX_VALUE) - .addComponent(archField, javax.swing.GroupLayout.DEFAULT_SIZE, 188, Short.MAX_VALUE) - .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, mainPanelLayout.createSequentialGroup() - .addGroup(mainPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addComponent(templateField, javax.swing.GroupLayout.DEFAULT_SIZE, 110, Short.MAX_VALUE) - .addComponent(outputPathField, javax.swing.GroupLayout.DEFAULT_SIZE, 110, Short.MAX_VALUE) - .addComponent(addCodeField, javax.swing.GroupLayout.DEFAULT_SIZE, 110, Short.MAX_VALUE)) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addGroup(mainPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING) + .addGroup(mainPanelLayout.createParallelGroup(GroupLayout.Alignment.TRAILING) + .addComponent(encoderLabel, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE) + .addComponent(outputLabel, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE) + .addComponent(archLabel, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE) + .addComponent(badcharsLabel, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE) + .addComponent(timesLabel, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE) + .addComponent(outputPathLabel, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE) + .addComponent(templateLabel, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE) + .addComponent(addCodeLabel, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE)) + .addPreferredGap(LayoutStyle.ComponentPlacement.RELATED) + .addGroup(mainPanelLayout.createParallelGroup(GroupLayout.Alignment.LEADING) + .addComponent(encoderCombo, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) + .addComponent(outputCombo, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) + .addComponent(archField, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) + .addComponent(badcharsField, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) + .addGroup(GroupLayout.Alignment.TRAILING, mainPanelLayout.createSequentialGroup() + .addGroup(mainPanelLayout.createParallelGroup(GroupLayout.Alignment.LEADING) + .addComponent(templateField, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) + .addComponent(outputPathField, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) + .addComponent(addCodeField, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) + .addPreferredGap(LayoutStyle.ComponentPlacement.RELATED) + .addGroup(mainPanelLayout.createParallelGroup(GroupLayout.Alignment.TRAILING) .addComponent(templateButton) .addComponent(choosePathButton) .addComponent(addCodeButton))) - .addComponent(timesField, javax.swing.GroupLayout.DEFAULT_SIZE, 188, Short.MAX_VALUE)) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addComponent(timesField, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) + .addPreferredGap(LayoutStyle.ComponentPlacement.RELATED) .addComponent(templateWorkingCheck))) .addContainerGap())); //VERTICAL GROUPING SequentialGroup groupie = mainPanelLayout.createSequentialGroup(). addComponent(titleLabel). - addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED). + addPreferredGap(LayoutStyle.ComponentPlacement.RELATED). addComponent(descriptionBox). - addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED). + addPreferredGap(LayoutStyle.ComponentPlacement.RELATED). addComponent(authorsLabel). - addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED). + addPreferredGap(LayoutStyle.ComponentPlacement.RELATED). addComponent(licenseLabel). - addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED). + addPreferredGap(LayoutStyle.ComponentPlacement.RELATED). addComponent(versionLabel); for(int i = 0; i < optionalOpts.size(); i+=2){ groupie = groupie.addGroup(mainPanelLayout.createParallelGroup( - javax.swing.GroupLayout.Alignment.BASELINE) + GroupLayout.Alignment.BASELINE) .addComponent((Component)optionalOpts.get(i)) //LABEL .addComponent((Component)optionalOpts.get(i+1), //TEXT BOX - javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, - javax.swing.GroupLayout.PREFERRED_SIZE)) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED); + GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, + GroupLayout.PREFERRED_SIZE)) + .addPreferredGap(LayoutStyle.ComponentPlacement.RELATED); } groupie = groupie - .addGroup(mainPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addGroup(mainPanelLayout.createParallelGroup(GroupLayout.Alignment.BASELINE) .addComponent(generateButton) .addComponent(displayButton) .addComponent(saveButton) .addComponent(handleButton) .addComponent(handleConsoleButton)) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addComponent(outputScrollPane, javax.swing.GroupLayout.DEFAULT_SIZE, 30, Short.MAX_VALUE); + .addPreferredGap(LayoutStyle.ComponentPlacement.RELATED) + .addComponent(outputScrollPane, GroupLayout.DEFAULT_SIZE, 30, Short.MAX_VALUE); if(saving) - groupie = groupie.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) - .addGroup(mainPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + groupie = groupie.addPreferredGap(LayoutStyle.ComponentPlacement.UNRELATED) + .addGroup(mainPanelLayout.createParallelGroup(GroupLayout.Alignment.BASELINE) .addComponent(outputPathLabel) - .addComponent(outputPathField, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addComponent(outputPathField, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE) .addComponent(choosePathButton)) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addGroup(mainPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addPreferredGap(LayoutStyle.ComponentPlacement.RELATED) + .addGroup(mainPanelLayout.createParallelGroup(GroupLayout.Alignment.BASELINE) .addComponent(encoderLabel) - .addComponent(encoderCombo, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addGroup(mainPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(encoderCombo, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)) + .addPreferredGap(LayoutStyle.ComponentPlacement.RELATED) + .addGroup(mainPanelLayout.createParallelGroup(GroupLayout.Alignment.BASELINE) .addComponent(outputLabel) - .addComponent(outputCombo, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addGroup(mainPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(outputCombo, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)) + .addPreferredGap(LayoutStyle.ComponentPlacement.RELATED) + .addGroup(mainPanelLayout.createParallelGroup(GroupLayout.Alignment.BASELINE) .addComponent(timesLabel) - .addComponent(timesField, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addGroup(mainPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(timesField, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)) + .addPreferredGap(LayoutStyle.ComponentPlacement.RELATED) + .addGroup(mainPanelLayout.createParallelGroup(GroupLayout.Alignment.BASELINE) + .addComponent(badcharsLabel) + .addComponent(badcharsField, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)) + .addPreferredGap(LayoutStyle.ComponentPlacement.RELATED) + .addGroup(mainPanelLayout.createParallelGroup(GroupLayout.Alignment.BASELINE) .addComponent(archLabel) - .addComponent(archField, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addGroup(mainPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(archField, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)) + .addPreferredGap(LayoutStyle.ComponentPlacement.RELATED) + .addGroup(mainPanelLayout.createParallelGroup(GroupLayout.Alignment.BASELINE) .addComponent(templateLabel) - .addComponent(templateField, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addComponent(templateField, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE) .addComponent(templateButton) .addComponent(templateWorkingCheck)) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addGroup(mainPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addPreferredGap(LayoutStyle.ComponentPlacement.RELATED) + .addGroup(mainPanelLayout.createParallelGroup(GroupLayout.Alignment.BASELINE) .addComponent(addCodeLabel) - .addComponent(addCodeField, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addComponent(addCodeField, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE) .addComponent(addCodeButton)); groupie = groupie.addContainerGap(); mainPanelLayout.setVerticalGroup(mainPanelLayout.createParallelGroup( - javax.swing.GroupLayout.Alignment.LEADING).addGroup(groupie)); + GroupLayout.Alignment.LEADING).addGroup(groupie)); } /** Displays payload info and options. */ private void showOptions(String fullName) { @@ -257,6 +266,8 @@ public class PayloadPopup extends ModuleInfoWindow { addCodeLabel = new javax.swing.JLabel(); addCodeField = new javax.swing.JTextField(); addCodeButton = new javax.swing.JButton(); + badcharsLabel = new javax.swing.JLabel(); + badcharsField = new javax.swing.JTextField(); setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE); setName("Form"); // NOI18N @@ -389,6 +400,11 @@ public class PayloadPopup extends ModuleInfoWindow { } }); + badcharsLabel.setText(resourceMap.getString("badcharsLabel.text")); // NOI18N + badcharsLabel.setName("badcharsLabel"); // NOI18N + + badcharsField.setName("badcharsField"); // NOI18N + javax.swing.GroupLayout mainPanelLayout = new javax.swing.GroupLayout(mainPanel); mainPanel.setLayout(mainPanelLayout); mainPanelLayout.setHorizontalGroup( @@ -397,62 +413,62 @@ public class PayloadPopup extends ModuleInfoWindow { .addContainerGap() .addGroup(mainPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(mainPanelLayout.createSequentialGroup() - .addGroup(mainPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING) - .addComponent(descriptionBox, javax.swing.GroupLayout.Alignment.LEADING) - .addGroup(javax.swing.GroupLayout.Alignment.LEADING, mainPanelLayout.createSequentialGroup() - .addComponent(generateButton) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addComponent(displayButton) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addComponent(saveButton) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addComponent(handleButton) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addComponent(handleConsoleButton))) - .addGap(500, 500, 500)) + .addComponent(descriptionBox) + .addGap(1394, 1394, 1394)) .addGroup(mainPanelLayout.createSequentialGroup() - .addGroup(mainPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(mainPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING) + .addComponent(outputPathLabel) + .addComponent(encoderLabel) + .addComponent(outputLabel) + .addComponent(timesLabel) + .addComponent(addCodeLabel) + .addComponent(badcharsLabel) + .addComponent(archLabel) + .addComponent(templateLabel)) + .addGap(18, 18, 18) + .addGroup(mainPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING) .addGroup(mainPanelLayout.createSequentialGroup() - .addComponent(outputScrollPane, javax.swing.GroupLayout.PREFERRED_SIZE, 691, javax.swing.GroupLayout.PREFERRED_SIZE) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 26, javax.swing.GroupLayout.PREFERRED_SIZE)) - .addGroup(mainPanelLayout.createSequentialGroup() - .addGroup(mainPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addGroup(mainPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false) - .addComponent(encoderLabel, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) - .addComponent(outputLabel, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) - .addComponent(timesLabel, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) - .addComponent(outputPathLabel) - .addComponent(addCodeLabel, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) - .addComponent(templateLabel) - .addComponent(archLabel, javax.swing.GroupLayout.PREFERRED_SIZE, 177, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addComponent(outputPathField, javax.swing.GroupLayout.DEFAULT_SIZE, 453, Short.MAX_VALUE) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addComponent(choosePathButton, javax.swing.GroupLayout.PREFERRED_SIZE, 91, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addComponent(archField, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, 550, Short.MAX_VALUE) + .addComponent(badcharsField, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, 550, Short.MAX_VALUE) + .addComponent(timesField, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, 550, Short.MAX_VALUE) + .addComponent(outputCombo, javax.swing.GroupLayout.Alignment.LEADING, 0, 550, Short.MAX_VALUE) + .addComponent(encoderCombo, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.PREFERRED_SIZE, 540, javax.swing.GroupLayout.PREFERRED_SIZE) + .addGroup(javax.swing.GroupLayout.Alignment.LEADING, mainPanelLayout.createSequentialGroup() + .addGroup(mainPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false) + .addComponent(addCodeField) + .addComponent(templateField, javax.swing.GroupLayout.DEFAULT_SIZE, 447, Short.MAX_VALUE)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addGroup(mainPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING) - .addComponent(archField, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, 310, Short.MAX_VALUE) - .addComponent(timesField, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, 310, Short.MAX_VALUE) - .addComponent(outputCombo, javax.swing.GroupLayout.Alignment.LEADING, 0, 310, Short.MAX_VALUE) - .addComponent(encoderCombo, javax.swing.GroupLayout.Alignment.LEADING, 0, 310, Short.MAX_VALUE) - .addGroup(javax.swing.GroupLayout.Alignment.LEADING, mainPanelLayout.createSequentialGroup() - .addComponent(outputPathField, javax.swing.GroupLayout.PREFERRED_SIZE, 213, javax.swing.GroupLayout.PREFERRED_SIZE) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addComponent(choosePathButton, javax.swing.GroupLayout.PREFERRED_SIZE, 91, javax.swing.GroupLayout.PREFERRED_SIZE)) - .addGroup(mainPanelLayout.createSequentialGroup() - .addGroup(mainPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING) - .addComponent(addCodeField, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, 217, Short.MAX_VALUE) - .addComponent(templateField, javax.swing.GroupLayout.DEFAULT_SIZE, 217, Short.MAX_VALUE)) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addGroup(mainPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false) - .addComponent(addCodeButton, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) - .addComponent(templateButton, javax.swing.GroupLayout.DEFAULT_SIZE, 87, Short.MAX_VALUE)))) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) - .addComponent(templateWorkingCheck))) - .addGap(349, 349, 349)))) + .addComponent(addCodeButton, javax.swing.GroupLayout.DEFAULT_SIZE, 97, Short.MAX_VALUE) + .addComponent(templateButton, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, 97, Short.MAX_VALUE)))) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addComponent(templateWorkingCheck) + .addGap(115, 115, 115)))) + .addGroup(mainPanelLayout.createSequentialGroup() + .addGroup(mainPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(mainPanelLayout.createSequentialGroup() + .addComponent(generateButton) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addComponent(displayButton) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addComponent(saveButton) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addComponent(handleButton) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addComponent(handleConsoleButton) + .addGap(121, 121, 121)) + .addComponent(outputScrollPane, javax.swing.GroupLayout.PREFERRED_SIZE, 691, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addGap(795, 795, 795)) ); mainPanelLayout.setVerticalGroup( mainPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addGroup(mainPanelLayout.createSequentialGroup() - .addGap(54, 54, 54) + .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, mainPanelLayout.createSequentialGroup() + .addGap(119, 119, 119) .addComponent(descriptionBox) - .addGap(78, 78, 78) + .addGap(18, 18, 18) .addGroup(mainPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(generateButton) .addComponent(displayButton) @@ -460,38 +476,42 @@ public class PayloadPopup extends ModuleInfoWindow { .addComponent(handleButton) .addComponent(handleConsoleButton)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addComponent(outputScrollPane) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addComponent(outputScrollPane, javax.swing.GroupLayout.DEFAULT_SIZE, 12, Short.MAX_VALUE) + .addGap(6, 6, 6) .addGroup(mainPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) - .addComponent(outputPathLabel) .addComponent(outputPathField, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addComponent(outputPathLabel) .addComponent(choosePathButton)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addGroup(mainPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) - .addComponent(encoderLabel) - .addComponent(encoderCombo, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addComponent(encoderCombo, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addComponent(encoderLabel)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addGroup(mainPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) - .addComponent(outputLabel) - .addComponent(outputCombo, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addComponent(outputCombo, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addComponent(outputLabel)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addGroup(mainPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) - .addComponent(timesLabel) - .addComponent(timesField, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addComponent(timesField, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addComponent(timesLabel)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addGroup(mainPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) - .addComponent(archLabel) - .addComponent(archField, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addComponent(badcharsField, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addComponent(badcharsLabel, javax.swing.GroupLayout.PREFERRED_SIZE, 23, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addGroup(mainPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(archField, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addComponent(archLabel)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addGroup(mainPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) - .addComponent(templateLabel) .addComponent(templateField, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addComponent(templateLabel) .addComponent(templateButton) .addComponent(templateWorkingCheck)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addGroup(mainPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) - .addComponent(addCodeLabel) .addComponent(addCodeField, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addComponent(addCodeLabel) .addComponent(addCodeButton)) .addContainerGap()) ); @@ -535,6 +555,13 @@ public class PayloadPopup extends ModuleInfoWindow { hash.put("format", outputCombo.getSelectedItem().toString()); if(timesField.getText().length() > 0) hash.put("ecount", timesField.getText()); + if(badcharsField.getText().length() > 0){ + StringBuffer badbinary = new StringBuffer(); + for(String s : badcharsField.getText().split("\\\\x")) + if(s.length() > 0) + badbinary.append((char)Integer.parseInt(s, 16)); + hash.put("badchars", badbinary.toString()); + } if(archField.getText().length() > 0) hash.put("arch", archField.getText()); if(addCodeField.getText().length() > 0) @@ -625,6 +652,8 @@ public class PayloadPopup extends ModuleInfoWindow { private javax.swing.JLabel addCodeLabel; private javax.swing.JTextField archField; private javax.swing.JLabel archLabel; + private javax.swing.JTextField badcharsField; + private javax.swing.JLabel badcharsLabel; private javax.swing.ButtonGroup buttonGroup1; private javax.swing.JButton choosePathButton; public javax.swing.JLabel descriptionBox; diff --git a/external/source/gui/msfguijava/src/msfgui/resources/PayloadPopup.properties b/external/source/gui/msfguijava/src/msfgui/resources/PayloadPopup.properties index 5cc673d099..5867664c1e 100644 --- a/external/source/gui/msfguijava/src/msfgui/resources/PayloadPopup.properties +++ b/external/source/gui/msfguijava/src/msfgui/resources/PayloadPopup.properties @@ -22,3 +22,4 @@ descriptionBox.text=Description addCodeLabel.text=(win32 only) add shellcode addCodeButton.text=Choose... addCodeField.text= +badcharsLabel.text=Badchars (\\xff\\x00)