From cbb37f4e5a97a55076ad1043ae2bec758327544d Mon Sep 17 00:00:00 2001 From: kieron Date: Thu, 10 May 2018 17:17:29 +0000 Subject: [PATCH] git-svn-id: https://spexeah.com:8443/svn/Asuro@713 6dbc8c32-bb84-406f-8558-d1cf31a0ab0c --- Asuro.iso | Bin 5251072 -> 5251072 bytes bin/kernel.bin | Bin 196836 -> 196836 bytes iso/boot/asuro.bin | Bin 196836 -> 196836 bytes lib/arp.ppu | Bin 5341 -> 5642 bytes lib/asuro.ppu | Bin 2128 -> 2128 bytes lib/eth2.ppu | Bin 3093 -> 3093 bytes lib/ipv4.ppu | Bin 3743 -> 3753 bytes lib/libpconsole.a | Bin 271148 -> 271148 bytes lib/libpmultiboot.a | Bin 29980 -> 29980 bytes lib/libpsystem.a | Bin 191880 -> 191880 bytes lib/net.ppu | Bin 3623 -> 3623 bytes lib/shell.ppu | Bin 4916 -> 4916 bytes lib/terminal.ppu | Bin 11999 -> 11999 bytes src/driver/net/l3/arp.pas | 15 +++++++++++++++ src/driver/net/l3/ipv4.pas | 25 +++++++++++++++++-------- src/include/asuro.pas | 4 ++-- 16 files changed, 34 insertions(+), 10 deletions(-) diff --git a/Asuro.iso b/Asuro.iso index 9b99b4a858a569206deedde8acb96953807b24cd..0b7bde5ac92f1d04fe102e95cb9cb2b7b77e5d9b 100644 GIT binary patch delta 18989 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

WwKWW_T0NLasbjPWV5agZJr|J;s;d1LVLnrH@yo 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 delta 9711 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 diff --git a/iso/boot/asuro.bin b/iso/boot/asuro.bin index 975fb57ced2166cf060d6ecadf514d8330c465a4..999605d4906f672f14f9f41c23bdddb4ecf836bf 100755 GIT binary patch delta 9746 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 delta 9711 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 diff --git a/lib/arp.ppu b/lib/arp.ppu index 2b0098e94708a3a3e9b05a301fe1948587be24ff..29b6182ed0ee52d966a9f2b7dee5d6689d314fe6 100644 GIT binary patch delta 1472 zcmYjRO>7%g5PtJ^*I9dwQ#W>E()`#?nkF$(0wIS|pl#X|5CI&w5mFC0D|<_=){g7A zRU=T0;DQQ~sHUQDsW>1Z@uR3jLKWht7Z5?*P`Ok<#SIXm2ni`zsC;j|Yk1Q8W_ISA zpM5)TzaP7BPb!;Tymxv=e~E-9u4mKYr??PSly-3xIj4@h>G!HaCP1atph%^_=9Qmyvzb04?2XLO@2PON@e~l_=v7ki1j*jggtdS8U8H{>TTsI?l!VrOFqh3AoqO_dZf;?5?&vXI3T2{0@W}Mt3QJW% zJw1HKO7ttfY@P*DrUUq)GI;AF{?r_^e#O&o%0fr@vUR+%3#xJQ*lN`gl-SWKN#b+G z!1@Y1gi{)Ul<7X8QT4bp zHD6e+)SdHn1U%#i+=54~pRq>~pmf<(NZY!?zq>a#!k38t+U8S{6y4$VNLm`i zS0OCo8_BsAlD`-yjT&O}YP zw$+e&>mRl|@3R7E%~b7CA7AO5-x-7&aocUtc4~ZAXw({lX}3#D^5l-<>=3+K*)9l5 z4*Kt$@WN7%>f}`d*<1rsCJfAYer2C*r9A-CtTNLyo6*9-F{tiPOb_^3XS}F~A^*!- zRWX?f;G>=&s+iaKGjr5B2h(|Frgi=?y4ZLCYM`1g+I1VI_M|L&k?^t(Rg@#~OkOx$yq%^CtIvjAN42vEg~t+ro> z=?!J3n{0MHoje3JkhN=ec?G8S(7xhDUgAdAP(#f|a9CZlQl*5M=p(lU5?4Umqmp$e zfuWr9Y-y$L)ErDkztL(_(A#btUcF8HAamX&5#HAW&^ESMi*B~*@7&OI>ohWfC z7HcF!Ud@l;c5B8Jsp~|kQgl=0oWgRgIJ^2-79ZLtUkAB0w0l9;Yfj-DPTU{bFWZ%7 iRV8#@E>-N)xNGIIT`A`68ZPKfm#yRX_YGf*?fw@6cH0I3 delta 1271 zcmZ8gTWAw$6#malCbwy~)h4wyt+{BcHHun^H_)yvUW#=$lr4e^F(gwBwnX6{P*PK`%RODT|$VT&O}?ZcgL=G9V6|n!IN~6&uMY0 z<8f^sSMo=FAzwxGk?!R^uA|h*f4dqeqOh4$S`hk> z+tAP@`_V58CRO3~)sjx|5r)u@lsHYe|G}>tqaH(B<9iMR3@szuE?5ev! zwKg1h9`VO)W>c9ExMp-9`#R9k(1_TI>^78ZRQkuKENwz6JMy@J;(}r!eh2%7(3`>4k@lyc#dpT+@F#m%2Oi9DMdscRH6cN2Yoe>lcJL5mJQ=fw6AwnXw z>0uznP2j(FT>4*0d#3aUn4jcNYURZ2%#RCUYB`)_>pZ9O8$0to_-o~&%!xMvKihGb zLT3uJm`l-pnVf)zxuT|LWED(zF_ldZrr|2@y+REsL=Y?s&+L6Q#6~gIXXT+Sf8HEh z8v$eQnp~$ATLb)do5RbTp<}i_4vu2~YDR6kganFr0u#0XrdX?{-VV>t(o6R_5!exF zgXvDDOX>arxXL%M-A>%bmjd%g8X@v6*w~#+Y&u{>8HA7GyZB1|PJ9TFgdv?T!A)dL)35Z=KD{}}7aIW(4a_0@QGrpuh UmrwWcgWwPT`;O=ozYI2g0pBLl<^TWy diff --git a/lib/asuro.ppu b/lib/asuro.ppu index 2d8d43f1d175b380481ef2b1c873294694e884c8..5885ab292eba57d995bf36f57165e4881c5ad6c3 100644 GIT binary patch delta 43 zcmV+`0M!4`5YP~i6bM?)ytiG;ak7ydG6JA}u~4D~0fw{l1vCK#F*iCgFtaQNBms&5 B4|D(k delta 43 zcmca0a6w>#2*(`t2b*0sYNSn+F=F~wy)j@BD`Vc~&#WeltOll5rWTuZ*i{$-Z^jO* diff --git a/lib/eth2.ppu b/lib/eth2.ppu index 0693772443a95acf38ab2f3ced5cce74a94ba070..e870da8f431bc8e9903685dd2b526477cc09f676 100644 GIT binary patch delta 21 dcmbO#F;!y2X$}r($o;@=+U*>RP1^`oU2bur? delta 21 dcmbO#F;!y2X$}sV_t%=fx}MD6e3`?E831Wx361~& diff --git a/lib/ipv4.ppu b/lib/ipv4.ppu index 4e35c66357de208b90b2acb7b232c2b55021882c..6457ff72c81d7df33920f39015c580db0da5ad80 100644 GIT binary patch delta 128 zcmbO)yHZv$ARyGx*p#K2k%5`vK!6fMBOe39mwD3W>t->tnK3Xhm`_yHW|~{K(XWb; zO_7Cxfl+X>A+zY_$BgXElY5ysCjVo3BF@Ojz`@AC$P84@0%iiuVqh?u{FpV3as6g5 dwvCL8GdBNW_hsVX=4(h`@7XhRb0C)=3jmDs9)|z` delta 113 zcmV-%0FM8u9iJT`P*7DdGc^Q*0RRI4z)&IpcMbpm^qw0xu9^b|IRF3vHIX4J0_%IR zPI>_b7X$zR0TGii0~NF50S5z<{{sw@jRFXh%mfaS1=axslkEj&0j9H52C)GFkFy2{ TO#%oU@799#MagfoTMAADz+540 diff --git a/lib/libpconsole.a b/lib/libpconsole.a index ff6a4da57e0066d1f0e4e011a8a361b8f962693c..5fcddb65b1329eb831a6b4a8de6915b6a65d8fd6 100644 GIT binary patch delta 3484 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 diff --git a/lib/libpmultiboot.a b/lib/libpmultiboot.a index 3076ee5361fbe2a232f96747a1eae2af6637df43..fdb51ad27f50c2651c045fb6d7eedee4095ab1d9 100644 GIT binary patch delta 490 zcmbR9igC^>#tCvPW=19k8vRP3U?ke%kTUE5-Jh9Ec)Q`b=5}WU63!(5d87Hqb=btRYBD7gecON64DbNWB z7i?BA(ts-$+ni*&3KA5X1+1aQ09l3*BdVCVHW%2RfVwKcPhxY3BL_tD<^-1=P-8$o z_w$xyoSZK&usPQADpWZ{_#Y%dHV62rAlcd%cnXPE6#9rC;_(C*@y+?E$xt~E?`=je Yl1gyMdFR7JPHb~QK5}&V7M*7T0D*Xj6#xJL delta 490 zcmbR9igC^>#tCvPrlzJA8vRP3U?ke%kTUE5-Jh9Ec)Q`b=5}WU63!(5d87Hqb=btRYBD7gecON64DbNWB z7i?BA(ts-$+ni*&3KA5X1+1aQ09l3*BdVCVHW%2RfVwKcPhxY3BL_tD<^-1=P-8$o z_w$xyoSZK&usPQADpWZ{_#Y%dHV62rAlcd%cnXPE6#9rC;_(C*@y+?E$xt~E?`=je Yl1gyMdFR7JPHb~QK5}&V7M*7T0L5^LY5)KL diff --git a/lib/libpsystem.a b/lib/libpsystem.a index 16831fc7c337922f2d2d3e235c4ef3560ebaa29c..cf1e42aa8738f34a796439c411b2e3eedeed19b7 100644 GIT binary patch delta 4019 zcmZWse{faB6`pg&1V~;;AiftVgh(B%k-nxN2(~d82TS>pqznvsM*4%s40#Q`&tZDhCGhQ@xLY~_+{{>kU9fZI#H+yDIkofy7Kaq00QBgG-3f$fc z#WH_xdN_6a_n9hchBb0|*={pKL3epsx0_p$6{p?YFGBL@sy_#oxHn?mGWEzXof|Qq&e*t5XKY;Sj7u1uL-qH8EPCv$ zRy|Zdk?*No#*(MlfpRyN{946DCe|GT_lFxoI?ky+Wsi#d=Ch> zAS7=b>DIn9*H_Dux9qxVx8yAy`hpJH@>+^7Yll9B>(VJ2AWnf0tmpv_2 z6zV&_N#p$<1>L%9Y45r#uA5BZP!`MhjkM2g)t_*^1BOFd9R*Bg zfJrGujMYaGsh>g(9?Jr5RSFBjU7~e2ghXiqs${Bi6o|@3s27Pm&`nYGt#Z+u50})P zKb9R5*9xEwH-{kv;wSkqboJ#(vwF05l$&^FBHW=a!hJbA52s9mcE~Fketa`8%lJs{ zs-C+L7Z-y6PCf47+nA$O;=&@Rz_qu-D|SPV5=3>W;9e!%+nZAS`on1Ltr0ZkZBY<9jR&8wDNBxz)^m}}D0u0Ke_anJO*K=I)nI5NnDX*#dRMZaG^-6FR;Vz_F=iadS_v{gp$VL`;5Sg~&8Q_$iO8kDgi)x&nVuIrYK6IHx=wi9euY zhcvIiln$Bqc_DJAjL*Pt{~PRQsM2cquhuHR8q^}5wMwpAEi$zh3UIgzJ)bUTILart zVSFb3X_VvN18I!4TE{r-7nw#YGbgCEdV;5gQ}Z0($6hTG&pNqbt3#&I**Gz%b8?E- zX`UR^A)a+MPqjK^nmAQX$iU0f>=_25POT`NuC<(EtEG4(p0x<`*~m0Lt(a+j@^sqf z=s2}a$iz*v1A8Eiu~zJRR*Oudb)qb&HF>`F>0)`%C*oPB?*~?gOrvwp;-Jp+Khio& zD}y@3v(CI_R)8tW60wW7XG$LU;t zCeBURJ=7S|7;DkLJnrjcQs+uNNN;NGI*0o@v2kquvBO_g3Jbz%-Pbp+cc`x~*yNbL zPVY<{J2pAy9Ty4REo*BnWzpy(iEC{DtTAT^k^^EiO z$d;)a?U-$jzv&CYT{y7a;dV{mVL4pfJ80{}EzW>>5ostc9(u`1tNu{W#)|!WA!=b3ct%?tozt`#v-ZyVvCM{IR5{}#I$^7nFt>J%;|Fe50q|7 ASO5S3 delta 4019 zcmZWse{faB6`pg&1V~;;Abl^T5K`)(M*5n{1cPl1jf189NFoCRBgJ_WUYwWM$YaXD zU>ie=RqWspa@(vOvBX*s#Q?IELt~UT62!cOG@~|U_?a@cwH7drwgVk0J$rZ0=HBG} zb-r(Rzdd{QoU`|BJDaubY*tI*xYE+nve#$Mn&la-jbT|k>p!H{zQ+6Ufx&Vsls-sOv1@h*xR9Y5MWpgosGdnj=8UowFsXd{=9d-ok? z{}b-seS_Z8ZLd(|>JRA1k-P5nXO_wf2kc2T@xRx7M0M3-Iqi+#vsQ$XWU)K#jXn{( z1w!)X(O&IKYh$e}dDE_|bxYpVp)cs7Ew88evUWPP?i1a8Dv8@y-6~g~cn939Zr`YU zqWd+y8CTFE*>dvL(NueS40Y(#7%DX|h8p-_3^g?9r)1~3uva|qof$M4qDqs*UGXhd(Aop-LflvGWRo1MQ=vU=YbhDpZB%Z zP^jy1a1ry0Ov=2QeIzIWkA3t`Ac04XRe)RKhYONf`N;VKtSlPjQboOv1}N-F}GdI;>p5Jp;52IB4YK$(y;@yNrF&wG1gwX7Av{cB+Y zqcHYA0zYRI$D<7}(iR1wGkEARo3iBics&=%jDnY*_?HcE%2YEISsjKpfq9=)S=I@{ zI+5|y$9X2wJ)7)TCQD8D8JLGlB}P3i*vd)dVL|wW-Zb*0%8ZYX;ynu^*1dtMB#BHV*i>)ac*yv!aUnH-&y`#F4`pLnAqs6yBT z`hx=$om}0~M)p>jNr}D`3;qDVTwI5W@jeeBgE@vM^@wmM`QolR4NI;Uo6 zo!03=9pYJM%S@|7rioMalnlHw%bsC4>eP$!*;>mfwpxlu;#rF@pN&l8)5a0&h){Djl9jEj8 znK&)Nu4Y80KKX8>mBav#Ky7x#}0p0DJ%%5bzk4K!J)psaI<6j zI=wS-?Aq*@cU&ke2&c91?k4sUlg$n{Au_pV;#QuZdS)Ci|HAI9uppdnYjdVx&r{A@ zV_T+fv=g>F{-!So_u$YDhubxMhvjf_@1(7dv^hiOMWms)c<6a2t@=aZZ=4T(JQ8m{ zrRdWZ3xDerSC}_GjJ4;TtNbp9vEi@IQx-|}7h81w!}0$&CZ_EZ%S7X`)f^KT~Fq3_TstA2moV~2}u9| diff --git a/lib/shell.ppu b/lib/shell.ppu index 3150fb8a812d1e901b4cbad645a774746aa1dafd..2ba577e6371d9ea174e5a7ce89ba11f0a1f82196 100644 GIT binary patch delta 19 bcmdm@wnc5iK8~ofd$z}(F5I;7Se_67VG;@F delta 19 bcmdm@wnc5iK8`u+4>r4O)JWTSEKdjkS)2&l diff --git a/lib/terminal.ppu b/lib/terminal.ppu index f1da876642f09a4668d77b5f6c9d8b30dca4a058..39335bfe5738a58b940f985d7d214ef6e22699aa 100644 GIT binary patch delta 21 dcmcZ~dp~vqA0tQ9**)81PZw_5EXH_J7XWdq3FQC) delta 21 dcmcZ~dp~vqA0x*c^#_|>Hfp487GpfA3jk>;2-yGt diff --git a/src/driver/net/l3/arp.pas b/src/driver/net/l3/arp.pas index 6326d232..45da3122 100644 --- a/src/driver/net/l3/arp.pas +++ b/src/driver/net/l3/arp.pas @@ -20,6 +20,7 @@ procedure register; function IPv4ToMAC(ip : puint8) : puint8; function MACToIIPv4(mac : puint8) : puint8; procedure sendGratuitous; +procedure sendRequest(ip : puint8); procedure send(hType : uint16; pType : uint16; op : uint16; p_context : PPacketContext); implementation @@ -123,6 +124,20 @@ begin freePacketContext(context); end; +procedure sendRequest(ip : puint8); +var + context : PPacketContext; + +begin + context:= newPacketContext; + CopyIPv4(ip, @context^.IP.Destination[0]); + CopyIPv4(@getIPv4Config^.Address[0], @context^.IP.Source[0]); + CopyMAC(GetMAC, @context^.MAC.Source[0]); + CopyMAC(@BROADCAST_MAC[0], @context^.MAC.Destination[0]); + arp.send($1, $0800, $1, context); + freePacketContext(context); +end; + procedure recv(p_data : void; p_len : uint16; p_context : PPacketContext); var Header : PARPHeader; diff --git a/src/driver/net/l3/ipv4.pas b/src/driver/net/l3/ipv4.pas index 81b9cac2..0829172c 100644 --- a/src/driver/net/l3/ipv4.pas +++ b/src/driver/net/l3/ipv4.pas @@ -81,7 +81,9 @@ procedure terminal_command_ifconfig(params : PParamList); var Command, Sub, Address, Gateway, Netmask : pchar; _Address, _Gateway, _Netmask : puint8; + Target : TIPv4Address; context : PPacketContext; + i : uint32; begin push_trace('ipv4.terminal_command_ifconfig'); @@ -115,14 +117,21 @@ begin end; end; arp.sendGratuitous; - context:= newPacketContext; - CopyIPv4(@Config.Gateway[0], @context^.IP.Destination[0]); - CopyIPv4(@Config.Address[0], @context^.IP.Source[0]); - CopyMAC(GetMAC, @context^.MAC.Source[0]); - //copyMAC(@FORCE_MAC[0], @context^.MAC.Source[0]); - CopyMAC(@BROADCAST_MAC[0], @context^.MAC.Destination[0]); - arp.send($1, $0800, $1, context); - freePacketContext(context); + + CopyIPv4(@Config.Address[0], @Target[0]); + for i:=1 to 255 do begin + Target[3]:= i; + arp.sendRequest(@Target[0]); + end; + + // context:= newPacketContext; + // CopyIPv4(@Config.Gateway[0], @context^.IP.Destination[0]); + // CopyIPv4(@Config.Address[0], @context^.IP.Source[0]); + // CopyMAC(GetMAC, @context^.MAC.Source[0]); + // //copyMAC(@FORCE_MAC[0], @context^.MAC.Source[0]); + // CopyMAC(@BROADCAST_MAC[0], @context^.MAC.Destination[0]); + // arp.send($1, $0800, $1, context); + // freePacketContext(context); end else begin writestringWND(' MAC: ', getTerminalHWND); writeMACAddress(net.GetMAC, getTerminalHWND); diff --git a/src/include/asuro.pas b/src/include/asuro.pas index 7617bed1..3cda45a9 100644 --- a/src/include/asuro.pas +++ b/src/include/asuro.pas @@ -9,14 +9,14 @@ const VERSION_SUB = '1'; REVISION = '677'; RELEASE = 'ia'; - LINE_COUNT = 28014; + LINE_COUNT = 28038; FILE_COUNT = 90; DRIVER_COUNT = 32; FPC_VERSION = '2.6.4'; NASM_VERSION = '2.10.09'; MAKE_VERSION = '3.81'; COMPILE_DATE = '10/05/18'; - COMPILE_TIME = '18:05:58'; + COMPILE_TIME = '18:17:20'; implementation