From 12b28f41c7953730df6f2c5da31bfe6c14ca9cba Mon Sep 17 00:00:00 2001 From: kieron Date: Sun, 13 May 2018 11:08:40 +0000 Subject: [PATCH] git-svn-id: https://spexeah.com:8443/svn/Asuro@738 6dbc8c32-bb84-406f-8558-d1cf31a0ab0c --- Asuro.iso | Bin 5255168 -> 5255168 bytes bin/kernel.bin | Bin 200932 -> 200932 bytes iso/boot/asuro.bin | Bin 200932 -> 200932 bytes lib/arp.ppu | Bin 6355 -> 6355 bytes lib/asuro.ppu | Bin 2128 -> 2128 bytes lib/libpconsole.a | Bin 271148 -> 271148 bytes lib/libpmultiboot.a | Bin 29980 -> 29980 bytes lib/libpsystem.a | Bin 191880 -> 191880 bytes lib/shell.ppu | Bin 4916 -> 4916 bytes lib/terminal.ppu | Bin 13630 -> 13630 bytes src/driver/net/l3/arp.pas | 82 ++++++++++++++++++-------------------- src/include/asuro.pas | 4 +- 12 files changed, 41 insertions(+), 45 deletions(-) diff --git a/Asuro.iso b/Asuro.iso index e65ca92001f0d7f5683de37f9b9312534aba7fbb..e0033b0fac2d6493c19d9234bc2bfcbe66d3a33c 100644 GIT binary patch delta 10068 zcmbVS4_J-&9zSpCI3=7yl2H05Nu{EYB&VDyBIdWnrEMCQZ0`Koz1xfjzbn&j&suw9 zu4i`LJ9fAEyLIrGlM0zl36=b7v|c1DB&2iS-|u&j=X^YSp4;P`-t&HbpU?O6{quXz zdyZCKG25+FAG@Mf_l$}N3k}r_3k{13jSLG93ky|G>`hwzT`xObU~XIfD7`LFv&^Au zm#4pS6E}L>=?3Tid1IVjH&|d#e(gQDF|8XTx^Ew0OPsxZIm4>9t3)BH4X|qG2JY}< zSjrCDfO|jR@t*d@qPtR_s6DfIcvo*8X_u{9uFvj`4Eu3+j4iLr9v_Bg43qT<`5eZAA9o+7syTLc5lo+}Y;*@Se|A^+_ELn}l;yysdE1{+lnZ z!ygKpg|OLRBb*yt7|aaMEPUFSXQlkMkT>Q`p{=3ZfFl8nmvRK~wjSZU<40m`eNzm4T8g>PK_$S;@)GW4a|wvoR1(DE^*;)* zcaCx|TaE(FTSvL3>oLH4^H`vZT3z*rjgj*>YAI_17qI5@OTq`0fqnPFT5#b z2=hC|3!icd@cw;jF>huWDAJo{yht0$fX~ZiJO^Dl(41Ay=W~5I$f2g3=U{glXih)P zHCLPlyi=z+uLWU=6&zbs0W=FMxaJLn#hl?-#u<>q!81Gu>O{(%yR(SEwBscKp}!Fx#qM=z}r!o$(vaPu*@nRFTVph#)wd2!butde7&)Bsv)4X3?d1H%1W0L}SVxMmK*Y6YgN1@Y2qMN4Wyyoy?0vsT2L_$%iv`4!||`fCXD`4C}~ zukts86;}bTLSS~+05;Uba4A?%{SbiX0qZ-R%givrWtBVN7W zA?#v(H1D4Rc$tcLlSEjPz`U*l-qPzl_b(B4|2p?F@CM*5zrnFD5qAFu_u_vO@ZP)0 zdH+G!qnq5zpa#JEpn+pwBg`VOA-4c;)h+I27s4DG`J4@J1hc!gk={ SIdlz7@+znu2 z)?1%06AVd7lkqjS;x3Qy@GfvU@gB$iat}l(xyPe7-UEG%Y2kf*tp)JDZ{fU4Eufm= z_xZfdxevVTzCV}uxD{wFXnpQ|+&Fpa4E#P`*UA%eegH&fKj6mJJpc(+KHv$pJpjg% zA9Bql4?#ku4|zf@2%GqbZ^~tlK)jMiJl>5*Kr^AY$Ip})1vS1sqcOSYEt=1a_SUXEnT z%eyKuTe7nRi1I8+dhXUgY5GKb>o1>GS2CS8NwV#OJkd^K&gHl5fCah8PIzdrlWc1v z$JtA)QSw52YWfe*GZr`PRMhulgL-s1;tJ4BI2%rXr(|ub4J2boQ3ea&S(OUIg1Hw za7LEnx(dq+yCSsEiZ(zruA7*XMcoj$$cp~n4Y`W#F7Yp`o_w^PWS9}puDBlHZM3VT zSu}U~>vGuuDKz(rGBdw3x3TOI=41ku|bLfNw~;x6thxSJu`)K?1WI0-3n)8g?-r|LnZ+i)4H*aKlzPGUai8oTN_m(=|gE*#;T$j_fUv|pr14UWr zK%`PLP_$L+gU~b|fl`RpSW&Gn%58?P$Zdr$%B|d2l9vw_h5KSK61rnWJ%f;m#X(|sZ3#l$rXZp0F$8Ub`9s8z zeLMsyUmfz?)uBsjlEIL>>K+)@xxu0V8-kHeZLo0IZ74!tA1WIE@lfQycBt_06oR<3 zLxl2%5R_d_h%|~fJ``~?Lq*(th~BcI?qQG{X61&VVZ9zEs-Yi-xO0aIZVp82tf)R5 za>J$Ij@RpH3DfZZmB@AB!h>@Js!Uph==;hDUA$1sj&#Q~F z)-W1HnH4Shb@(vpI9>h3)(G}SMYQnR3RR3FMU1ycqAHY(l-U2S$gL1f9wjbaD@Gx1 z#VEnmjz(zOXepd2=Zr=*x;k3yI_DU~O^*?my_^`-o69jG-%ewY@{BP;dF2?yJvB!1 z=}^;dFDJ^k?WK{n7ffTU7>^~fs5K?A(iA=bV-Y%ktSEWTSd?7dSfQ+sL+IQ%>*iHa zH}K)1ucVO+!?Zo*_BhFdS@0N#WZoJlu3MWS+B8no*DD@zm&OZp8$=((KYx2c5^@)} zfT?_Eyy#N?c+`h_E9z`O4$=*x2pb?;YY_hQ38?t#38MJx5>VXA1mUVJ0mYq?DB`}K zh$ib)qLips9RI1sAN)0de0YMy{v1HAnt)6P8inZ;BSN=Y(c=g$=<|~F*x~>6RgkWC zjO$E^M2Q_G_LOv@#DNkmCF)5XC61IhQPPDHXG*$K(v6btl;|mOp~RJv9+dQ?q!%S_ zl=P;=osvG3cu>-p5>HC{QPQ810hD-A;!VjwN_;5srNoaCe@X%<8AM4SC4(smqGSjq z!ITW8B!rSsO2Q}^MoBm&5tKwyGMthTltfVyP02_~Mo}`Fk{C+HP!dbYSW4n38AnMx zCF3bEP?A7N;tyoPoNZD=L3-PS?OG{ZcCt7AO*&q%*524WP|7TL*WdWx2&wuj-!!AY zR8`=&%D8#zoNPn0a_o`Cl2x?UywoY%(4Yj0S2as|XPsxS=lfYK*{NE#aEp3)(|ha6 z=3uj8_iejM5=#=EEqPBpRF>^gu_M`rHsyVJ$Qk3j599sSvy*&T7%tVI>{ef7r|OyN zZ|wXf<*fkqSF@7OfOnjgvfZjivr?+QOwHJDr^z^=(PfwsirsBaTPmGFs)(7C)x2x)3y)U3p0B$)Ktul_p#%FrfckYJ3DqWb-Je>Z)V3% zCSP`(qaJ@W>%vD%uap*L@AGG0r01+|aL)4d&06ByDeHY-otl1?Qk`tEtTitil6Bt1 zmMDRf)l`eU)TaTD)u;6;oHg=@X*`ph^qIwS{Y!O~DB;d;+Er?I`XS@J#ugqi5w^}> zT_=`okju{+JzxC?EA}yE5MPtks_gVur9A}WZN}J=r=D=+C$bZ@N(jRrCUM234F6HZ zqwg&L?xu@!Rh)j8o&G9MUU|^yF3&z^?3_qXv|GN|cE{Dc#=JDjUeo{Ph+~X%P#f{wP7etNwbns-Um>q|Cfyv6$FPClPpmc?rR{QF zwK37dE8WFxn#0a#sOAs6{d8GkK})qUPwTX*p1GW(QCj7^D@NjWSYgZNsbRd8ij(aE zTVG&bYkaJgb83zH9~9%KQJtbjMuh%7-|HpyF;RUasgGp!F-d()F39&vnb-Y)ryUva delta 10084 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 Tu}3<4JjoszWu@Mk%ZC0RBh?Hr diff --git a/bin/kernel.bin b/bin/kernel.bin index d792b2dc0545d60634df2bb7545c54b4d56c2de7..ab4e4e847be2bd8879c0449bd1cca470fb403a6f 100755 GIT binary patch delta 971 zcmYjOZAg<*6n?Miv?1uEEJbPBTuOdX{xIuDkaI+4;h>~4r^!&rFH+NzG<3$Rjig+! zphTvSRHml1>wegaie~sj>(A7PAgL<~)hv_J-OkzQzr{i^Xhd$lSh*FPjVF?t9%CBs71HIYNXhU zq@ebQ7OEK<9OJfHVFQp@41wtS5$o?*$sYJQSsN0U{MpO^csSV!mdpSO+bq&qcjyQGwyP}^Z-TI|b1;V8{QofdQ+$xUgth=iTF zg_k|aqTL#Co%Kb4b*QJK6g%!&p|I6mu;>*m0r{WlZpRAbM}R-Ddim+Hihb~utFZjg zD%BatPAR9D`05*9x%mC=)gZY+u1KazT^(hFmOKMgRO+gQg1Pd3J(P{X6BrafR6z8G`x=YRPH5CuxrxiVzOI3KLrxqf0Csi zZi!F5tN_(PXDr1a@wfbBZau-3ShGUpfEtnwD~{&|;s-QOW&&Y{(W;O2WzZK%+`#v%Z30KZG8s z*y)sxm64;QN3xa?eW*HDB~v5TO|ZPZ^sh{BTPq`0h4T6*+|nqpb;(*qvVvbQloi03 o2=->$<>8uaTdK*XLTafdfzRtmYqEE8N>bvDHcD)5)GIyfH(IYI=>Px# delta 982 zcmYjOZAepL6uz(6v@y_0Ngqni<_h|RzD%Qj=#s!N9EcUx1X+S*j#K8ZJmFLx{|)gO!bWZ-EF*3zd)?%H7Y?btHVGf~9>wDmCMC_Pc&zctQEQ?S!ezqS zg^=~b%axa$6fnOCzqdC7L((4%TWXP49`Jnf-F!}nu}i3m-SGn6QPz_h>!`0drYj{~ zD(YgAquTugENxfaO}xk>m^ZCaCgFkwt&Opc8tORJf`y-jG)gTnz#`&5O{d&Td^hqN zqer^O&F~^t_EA}D(dr#+o>o-N5(*9vO^J(L(Gn?6c zgyfY%1f6AOy{`)$crV#ZID{CSMXd~awDZ+0E8U1@APXV-(MQ5NU7e&mdE%5osMg+A zv&9)hVU*balZ^bBmdrY?8&I`O%RIR2|8qp#Bix4xv)MJxQ2jA^A>ph9k6_{Pa(%IY$ zr&)(*36d1tL>~Fn`CiL)vu&(ZlijRf!Rm6e&Ye^*!R3QBGqMeV4{p|CFuFg|mQD#k vlYOi-^%kJ4z7oe+AoOG^#?=O*KK93Oubwq$$FI*>v*AQ5XMt88S6KQN8|EmP diff --git a/iso/boot/asuro.bin b/iso/boot/asuro.bin index d792b2dc0545d60634df2bb7545c54b4d56c2de7..ab4e4e847be2bd8879c0449bd1cca470fb403a6f 100755 GIT binary patch delta 971 zcmYjOZAg<*6n?Miv?1uEEJbPBTuOdX{xIuDkaI+4;h>~4r^!&rFH+NzG<3$Rjig+! zphTvSRHml1>wegaie~sj>(A7PAgL<~)hv_J-OkzQzr{i^Xhd$lSh*FPjVF?t9%CBs71HIYNXhU zq@ebQ7OEK<9OJfHVFQp@41wtS5$o?*$sYJQSsN0U{MpO^csSV!mdpSO+bq&qcjyQGwyP}^Z-TI|b1;V8{QofdQ+$xUgth=iTF zg_k|aqTL#Co%Kb4b*QJK6g%!&p|I6mu;>*m0r{WlZpRAbM}R-Ddim+Hihb~utFZjg zD%BatPAR9D`05*9x%mC=)gZY+u1KazT^(hFmOKMgRO+gQg1Pd3J(P{X6BrafR6z8G`x=YRPH5CuxrxiVzOI3KLrxqf0Csi zZi!F5tN_(PXDr1a@wfbBZau-3ShGUpfEtnwD~{&|;s-QOW&&Y{(W;O2WzZK%+`#v%Z30KZG8s z*y)sxm64;QN3xa?eW*HDB~v5TO|ZPZ^sh{BTPq`0h4T6*+|nqpb;(*qvVvbQloi03 o2=->$<>8uaTdK*XLTafdfzRtmYqEE8N>bvDHcD)5)GIyfH(IYI=>Px# delta 982 zcmYjOZAepL6uz(6v@y_0Ngqni<_h|RzD%Qj=#s!N9EcUx1X+S*j#K8ZJmFLx{|)gO!bWZ-EF*3zd)?%H7Y?btHVGf~9>wDmCMC_Pc&zctQEQ?S!ezqS zg^=~b%axa$6fnOCzqdC7L((4%TWXP49`Jnf-F!}nu}i3m-SGn6QPz_h>!`0drYj{~ zD(YgAquTugENxfaO}xk>m^ZCaCgFkwt&Opc8tORJf`y-jG)gTnz#`&5O{d&Td^hqN zqer^O&F~^t_EA}D(dr#+o>o-N5(*9vO^J(L(Gn?6c zgyfY%1f6AOy{`)$crV#ZID{CSMXd~awDZ+0E8U1@APXV-(MQ5NU7e&mdE%5osMg+A zv&9)hVU*balZ^bBmdrY?8&I`O%RIR2|8qp#Bix4xv)MJxQ2jA^A>ph9k6_{Pa(%IY$ zr&)(*36d1tL>~Fn`CiL)vu&(ZlijRf!Rm6e&Ye^*!R3QBGqMeV4{p|CFuFg|mQD#k vlYOi-^%kJ4z7oe+AoOG^#?=O*KK93Oubwq$$FI*>v*AQ5XMt88S6KQN8|EmP diff --git a/lib/arp.ppu b/lib/arp.ppu index 1b478617ec94cb1cad5382fe2d6696f483f1e5a3..fdbb7c6a356cd03f06c316757159349fd52cf668 100644 GIT binary patch delta 50 zcmca?c-e4*7vuJg-X}O2#V3n!bu%hYUchyP(P(ojw=*~6ugNRLQW$@2<`bXB2;?l4 G&;tO}ViFku delta 50 zcmca?c-e4*7o*`u?-QJi(vwBFx*63cFW@@DXtp_(+nJm3-{h5IDUAO%^NCMm1ag*2 G=m7w~;1R0; diff --git a/lib/asuro.ppu b/lib/asuro.ppu index 9078008b27521457617d2faaa34574fe0525b272..8101cac6db81b2e1cd7294bdf31767833b611eb5 100644 GIT binary patch delta 41 xcmca0a6w>#2#4NF`_;eh2suuaF=E`Y(SI>3WA5h9tfq`C7FH$(n|0V#7y(j04hsMP delta 41 xcmca0a6w>#2*;1<>!z~bbgr2wW5j5?(SI>3W8vn{tfq`CW>&`Ln|0V#7y(i`4c`C& diff --git a/lib/libpconsole.a b/lib/libpconsole.a index e88372825597054dd123641b23e0c4785436e0c9..d93f1f2dc7563c0aefcb4401c98be27bca4d5828 100644 GIT binary patch delta 3300 zcmZWreNdF;7N2uoaFM&p3n3qd?1tQ-L0T6qKWZv3j>XLtDE0~(Dk{lLP*8Wu3J6MX z9}_cfzQ!|m%%H-td&LOf@aTBcZFCCogKemw(Q=!c*PEFcW`^43KJUBl^XzW@wdZ%v z?>Xl@=i}M8`y;jcBh}|n<`m@jX1$qV{BCJZ(NATJD~3$LlQ@8hb6oYaola-|Z3S}+ z^50WX^R^zrVZIx|qp5dh z>JKbfE|tN{=+V_XcS(iX3B~O8Rbba$fBIHvb@$>|gsipJF4b@PvnvYsc_h}amoQ<| zyUTXQh+OI_hNWDwQjZn->~)tU-(53La$0K}gC^c)hs}!1+^4~#ceT|^VxBKGRU}op^O{VsVfRtN(HeFaYpeDr z>F@W}3LUF+fQPy7K%4$bU!BnE>i!`i^HY_&_k(bxQ~r~}rU#D9laZW*v!q--bXKNa z{b~5@`H>AmuLX{H^!`)d39KLcx?adkorT40RVPf*d;ZfTqP4Gw2lb9~odUDEF5d2` zyCG4h3sS2$jBOJPF55wOU)d~YYIOW_Da2K$7gti6Hw6j2uhLz|O93fn@EyPyR?t^WYiD4!YoD>5a4HTu|3s zC=;b8^$uu^vnGkU7Qxv`0`Lqnfc#5fr}Wuc47-F+eRTXD(1xZYu*Tz%%Y|5N_mpX@ z*e-#=!zY^qpQE&~|L}q)}htKh$^ib8q&?1lh@(2tI zU|QXeM_Buxkk(Y{dm5%&)KvPm2{Oewa<;<1CCJzWvqfy}*w@AE;Z3~%2Va6|LQCh{ zV6_C*ufk>t?Cnq^wt?EVL9Mj#H)@dte1a!rz)kPKOlk3VLyiD@dqEd0F7q)M?TcuF zKM8r^d*Wl+iRDTP^93Q7wM+sVbFEMuq5Av2fMj6r9e}q*Gx>%s1C|*NleGJiZeg7j zN~YFei=#t%I2{ug%r_tQsCS(z{SlohJrYr>s*`Y!%ak<6kGshCO+<9F zKy3AYA&$M9fj6)pM!~JA2{Ek7jTyfw&})hL?ghr>qwmgxasQ4IC6?{`i!zNJJO#I~ z^kqsGoeshTsQK>SpJ}=fz8!hTpj`BmLgna5PB%)GtMw$?SV_4uL#FaiV2@sfDWX?f zufiWD3$RbY9Pu|0a>QE7mGn^CFHFMh2rp{>+~1|OcQ$Xlv7M|m8E<025=dfSl`9UT z`;2%0F}k4QezB~?YZtEa))Wj+Xka=j;zq__i}7Ahr6LE)=bi#tm>?*j*V?s~bG$hy zUt!{dI3n7}b2}|$W85-;rR9N2*|%bkmKSm(hG!K3W^akII^%wLIVbYdBPZ^ooRGsXiOT!}gK z!wNiM7K=Cs%y@4i*f!~q&!hd)`m4VcExJ%(fS>3X~r&Fg2M*P%mu z{pNDboz=!h9>J$raV<6)BM^#BoNzgGhzBbqwH^5M*c*p2PFpx5hJ7E4HdeI;6Sa#qTbcb;bZY5&mDITvTg+=287yeWU(DmI zVHd8Y_P^r}3D?n^uVYsP+|>~U``(Izhjv84fp;uO+_TMWnh|3iefh57`44k=wl@m? z_KKom?k7zNWmv>-e82AwY2cK zD1w>bl0cNzI~-+Q{ke$ATX+-`=0!gS#y9+k)t?j!e1#9mb>ZM;VB5drk7egsypNAz zHEXJdWTqBkHB-;<{SAHW)3GyHA{K`6efLo7IShZoWRBqgu;oFV%4V%r;%VX%{tMXn zk7ySTIO88OF8`vxBEiLR{8)m(ulV3|))~hCr|+WYTa+Eryl|sZ#?1X_m=VLT`kUvN QxHfdv(1NUW#th>B0p7kuP5=M^ delta 3300 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 Vfp*hBTqRNavmt!A=VvQw{RdO|9uxoo delta 3815 zcmZWsdr*{B6rb~HkirTm?OLgjIa+8N%4Aw0MnjnoAV)_hv)O^A7K~gcN5_h=!O|KX zk*~NlSz@N;7)IXeC{b>Sj|C)psHNg-dZ&p~PSRv{?u&0f;vdfMcklh(bI(2J+;3MM zOIUR*p*pS4*on8lKYY|k@xP|r%Zo<-)yLQa#_zBOX89N1nofUXZyPs$+}JFd#?s5J z;@TUnfvmb2Qtaxymw2K70>rMe6SI;J0XMShK1;^i;^_HF!o9YcY5Po zI}rXy#DRwv?E(A#B?DwkBVCYdcU7kIrX@*ePISavE3X_;eX$Ea6$ewKIFsATE|COFwGwFVH*qd0S~{jvrYO?Q(nX~KQ@bs z?97i;anR}zM#`gju-wBJ6`xlTWukQ_2xe#kTOxV94DbfRD!&$ zTdxqvF6(ZQx0-)hC4-4v1`l3ob-Wb~1{YhPD5Rx+z;GO>oDn!d9)Lxjh7#P90J_x( z$OuMR-DdEx><|?4NI_p<1(i_FLMb5ondm#YtUVRZimP3a=waQ1p&ple!2|56ROq?k zT%<_{rCXGGco|uAZL!c2-GJ79d&r4M9k)xtnPQ~fNAm;ic_0SEPq9yF) zG|0z=Bj8Q5nPeC-Q4uf9zX??16DKahzI~w)?yE#)Ip=bN`ng84V z-7IH&Q6$(j9$Zz!h)`vN8}0y8H$GgO13q94_kahtX1jUSk9+PEn{)LII@C9Lni8j` zfR4uRr@(1*YNR-5k?JtGpDR3D0Oxh}dYL}}Gw|-2;5CVi;n|SZS3O@oq2mLLJP4+h zdy!U50QTu3perBH|D%WD8ojF=D%Lta+*S~Lak?Hp=s24_DektZv z=`@j$5!|b`^Q{oK|MM#Fs8@w1vxTc+FQqJwdl7WSNe!Y^sv)`J7fFrz)u5gjL8-Hd z4NBOCS0E~~zBB1+e7qLS6D=x_hGHrY>tBn7jG#PV3a(rayCGRUIWY}F$YXS)YZ1XH zQuXRmU;eg4*mc(naq<6BS!Wo zyo9FSPVI&eW;Vh`Rc`_^g8S@_P7fx1YA%j=eg9L?h=WdaETC9A{)*ak?{9Mge)zBKN}JH zIw@tI-{FwRo3DP;c_TheN|ERW87d@rtttt!CdrW4X#?Z%mWyD%|AbD(-%2Oe7MmdOUI>PP#m5cX&mqJTcs>}jMA|( zjEiUJM}(X&w5(qcvYJThxoEEVEQErbi)&P0K9x!ZHCF!4@UDp+b9y;Yv%l5wc9X!z$xE zwYwmmea`GDAS2jPTWbx%==0Vm|L=CPhhx9hR!pO21fzIrt)-hReGet+N?k|0epG9n zR?ij<1lfbHSuLW_hrMbYa%d!4ebUeuB@TPT8l9saUoRGQTIcnn>BX|s)=C4o_-)FX Wexlv<4_8Ul{%Qyx?*7$^TK@q*s3-UU diff --git a/lib/shell.ppu b/lib/shell.ppu index ae980b9c01f9bc04f3735e1a7d018ab3cc7f3585..3006ec6ce33c06cd23e08f3e3a190dab25630a9b 100644 GIT binary patch delta 19 bcmdm@wnc5iJ`TN?_N#y05pvvkEKdjkTi6LK delta 19 bcmdm@wnc5iK8_#L*G*-=>0Gn%Se_67U-}7i diff --git a/lib/terminal.ppu b/lib/terminal.ppu index 3e2bf407011052151fd782ce20b951bfda85d9b2..7f3a4bed34537163d838e83eba8c976d92fba89c 100644 GIT binary patch delta 21 dcmdm&wJ&P}A0vm}OZ(No?g%+<7Gu;f0RU$~2xtHR delta 21 dcmdm&wJ&P}A0x+)>FcJl-*m3oEXJr|0sw2O2(JJD diff --git a/src/driver/net/l3/arp.pas b/src/driver/net/l3/arp.pas index 96379484..6ebd4145 100644 --- a/src/driver/net/l3/arp.pas +++ b/src/driver/net/l3/arp.pas @@ -197,55 +197,51 @@ begin copyIPv4(@Header^.Destination_Protocol[0], @AHeader.Destination_Protocol[0]); { Process ARP Packet } - Merge:= false; CacheElement:= findCacheRecordByIP(@AHeader.Source_Protocol[0]); if CacheElement = nil then CacheElement:= findCacheRecordByMAC(@AHeader.Source_Hardware[0]); if CacheElement <> nil then begin copyMAC(@AHeader.Source_Hardware[0], @CacheElement^.MAC[0]); copyIPv4(@AHeader.Source_Protocol[0], @CacheElement^.IP[0]); - Merge:= true; end else begin - if not Merge then begin - CacheElement:= PARPCacheRecord(LL_Add(Cache)); - CopyMAC(@AHeader.Source_Hardware[0], @CacheElement^.MAC[0]); - copyIPv4(@AHeader.Source_Protocol[0], @CacheElement^.IP[0]); - end; - if IPEqual(@AHeader.Destination_Protocol[0], @getIPv4Config^.Address[0]) then begin - case AHeader.Operation of - $1:begin { ARP Request } - writeToLogLn(' arp.recv.arp.req'); - context:= newPacketContext; - copyMAC(@AHeader.Source_Hardware[0], @context^.MAC.Destination[0]); - copyIPv4(@AHeader.Source_Protocol[0], @context^.IP.Destination[0]); - copyMAC(getMAC, @context^.MAC.Source[0]); - copyIPv4(@getIPv4Config^.Address[0], @context^.IP.Source[0]); - send($1, $0800, $2, context); - freePacketContext(context); - end; - $2:begin { ARP Reply } - writeToLogLn(' arp.recv.arp.rep'); - end; - $3:begin { RARP Request } - writeToLogLn(' arp.recv.rarp.req'); - end; - $4:begin { RARP Reply } - writeToLogLn(' arp.recv.rarp.rep'); - end; - $5:begin { DRARP Request } - writeToLogLn(' arp.recv.drarp.req'); - end; - $6:begin { DRARP Reply } - writeToLogLn(' arp.recv.drarp.rep'); - end; - $7:begin { DRARP Error } - writeToLogLn(' arp.recv.drarp.err'); - end; - $8:begin { InARP Request } - writeToLogLn(' arp.recv.inarp.req'); - end; - $9:begin { InARP Reply } - writeToLogLn(' arp.recv.inarp.rep'); - end; + CacheElement:= PARPCacheRecord(LL_Add(Cache)); + CopyMAC(@AHeader.Source_Hardware[0], @CacheElement^.MAC[0]); + copyIPv4(@AHeader.Source_Protocol[0], @CacheElement^.IP[0]); + end; + if IPEqual(@AHeader.Destination_Protocol[0], @getIPv4Config^.Address[0]) then begin + case AHeader.Operation of + $1:begin { ARP Request } + writeToLogLn(' arp.recv.arp.req'); + context:= newPacketContext; + copyMAC(@AHeader.Source_Hardware[0], @context^.MAC.Destination[0]); + copyIPv4(@AHeader.Source_Protocol[0], @context^.IP.Destination[0]); + copyMAC(getMAC, @context^.MAC.Source[0]); + copyIPv4(@getIPv4Config^.Address[0], @context^.IP.Source[0]); + send($1, $0800, $2, context); + freePacketContext(context); + end; + $2:begin { ARP Reply } + writeToLogLn(' arp.recv.arp.rep'); + end; + $3:begin { RARP Request } + writeToLogLn(' arp.recv.rarp.req'); + end; + $4:begin { RARP Reply } + writeToLogLn(' arp.recv.rarp.rep'); + end; + $5:begin { DRARP Request } + writeToLogLn(' arp.recv.drarp.req'); + end; + $6:begin { DRARP Reply } + writeToLogLn(' arp.recv.drarp.rep'); + end; + $7:begin { DRARP Error } + writeToLogLn(' arp.recv.drarp.err'); + end; + $8:begin { InARP Request } + writeToLogLn(' arp.recv.inarp.req'); + end; + $9:begin { InARP Reply } + writeToLogLn(' arp.recv.inarp.rep'); end; end; end; diff --git a/src/include/asuro.pas b/src/include/asuro.pas index aed1fca1..8b753810 100644 --- a/src/include/asuro.pas +++ b/src/include/asuro.pas @@ -9,14 +9,14 @@ const VERSION_SUB = '1'; REVISION = '728'; RELEASE = 'ia'; - LINE_COUNT = 28529; + LINE_COUNT = 28525; FILE_COUNT = 90; DRIVER_COUNT = 32; FPC_VERSION = '2.6.4'; NASM_VERSION = '2.10.09'; MAKE_VERSION = '3.81'; COMPILE_DATE = '13/05/18'; - COMPILE_TIME = '12:06:37'; + COMPILE_TIME = '12:08:40'; implementation