mirror of
https://github.com/A2osX/A2osX.git
synced 2025-02-19 23:29:29 +00:00
Kernel version 0.9 : Bug Fix in ICMP/PING
This commit is contained in:
parent
bf8ce243c5
commit
ec385bd23f
BIN
A2OSX.BOOT.po
BIN
A2OSX.BOOT.po
Binary file not shown.
BIN
A2OSX.SRC.po
BIN
A2OSX.SRC.po
Binary file not shown.
@ -128,11 +128,11 @@ CS.RUN.OPENSKT ldx #3
|
|||||||
|
|
||||||
ldy #Identifier
|
ldy #Identifier
|
||||||
lda A2OSX.RANDOM16
|
lda A2OSX.RANDOM16
|
||||||
sta Socket.Src.Port
|
sta Socket.Dst.Port
|
||||||
sta (pData),y
|
sta (pData),y
|
||||||
iny
|
iny
|
||||||
lda A2OSX.RANDOM16+1
|
lda A2OSX.RANDOM16+1
|
||||||
sta Socket.Src.Port+1
|
sta Socket.Dst.Port+1
|
||||||
sta (pData),y
|
sta (pData),y
|
||||||
|
|
||||||
lda #0
|
lda #0
|
||||||
@ -277,13 +277,11 @@ CS.Print.REPLY lda #TIMEOUT.MAX
|
|||||||
rts
|
rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
CS.QUIT ldy #hSocket
|
CS.QUIT ldy #hSocket
|
||||||
>DEBUG
|
|
||||||
lda (pData),y
|
lda (pData),y
|
||||||
beq .1
|
|
||||||
|
|
||||||
>LIBCALL hLIBTCPIP,LIBTCPIP.SKT.CLOSEA
|
* >LIBCALL hLIBTCPIP,LIBTCPIP.SKT.CLOSEA
|
||||||
|
|
||||||
.1 lda hLIBTCPIP
|
lda hLIBTCPIP
|
||||||
>SYSCALL UnloadLibA
|
>SYSCALL UnloadLibA
|
||||||
clc
|
clc
|
||||||
rts
|
rts
|
||||||
@ -316,9 +314,9 @@ Socket .DA #S.SOCKET.SOCK.RAW
|
|||||||
.BS 2
|
.BS 2
|
||||||
.DA #S.IP.PROTOCOL.ICMP
|
.DA #S.IP.PROTOCOL.ICMP
|
||||||
Socket.Src.Addr .BS 4
|
Socket.Src.Addr .BS 4
|
||||||
Socket.Src.Port .BS 2 Identifier
|
Socket.Src.Port .DA 0 Dynamic
|
||||||
Socket.Dst.Addr .BS 4
|
Socket.Dst.Addr .BS 4
|
||||||
Socket.Dst.Port .DA 0 not used
|
Socket.Dst.Port .DA 0 Identifier
|
||||||
.BS 16
|
.BS 16
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
ICMP.Request .DA #S.ICMP.TYPE.ECHOREQ
|
ICMP.Request .DA #S.ICMP.TYPE.ECHOREQ
|
||||||
|
@ -79,10 +79,10 @@ ICMP.IN.ECHOREP jsr IP.FillTmpSocketSrcDst
|
|||||||
|
|
||||||
ldy #S.ICMP.IDENTIFIER
|
ldy #S.ICMP.IDENTIFIER
|
||||||
lda (ZPFrameInPtr),y
|
lda (ZPFrameInPtr),y
|
||||||
sta TmpSocket+S.SOCKET.SRC.PORT+1
|
sta TmpSocket+S.SOCKET.DST.PORT+1
|
||||||
iny
|
iny
|
||||||
lda (ZPFrameInPtr),y
|
lda (ZPFrameInPtr),y
|
||||||
sta TmpSocket+S.SOCKET.SRC.PORT
|
sta TmpSocket+S.SOCKET.DST.PORT
|
||||||
|
|
||||||
>LDYA L.SKT.TABLE
|
>LDYA L.SKT.TABLE
|
||||||
>STYA ZPPtrSKT
|
>STYA ZPPtrSKT
|
||||||
|
@ -170,23 +170,26 @@ SKT.SEND.TCP
|
|||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
SKT.SEND.RAW ldy #S.SOCKET.RAW.PROTO
|
SKT.SEND.RAW ldy #S.SOCKET.RAW.PROTO
|
||||||
lda (ZPPtrSKT),y
|
lda (ZPPtrSKT),y
|
||||||
cmp #S.IP.PROTOCOL.ICMP
|
|
||||||
bne .9
|
|
||||||
|
|
||||||
jsr FRM.NewA
|
jsr FRM.NewA
|
||||||
bcs .9
|
bcs .9
|
||||||
|
|
||||||
>LDAXI S.ICMP-2
|
>LDAXI S.IP-2
|
||||||
jsr SKT.SetFrameOutLenAX
|
jsr SKT.SetFrameOutLenAX
|
||||||
|
|
||||||
>LDAXI S.ICMP
|
>LDAXI S.IP
|
||||||
jsr SKT.SetDataOutPtrAX
|
jsr SKT.SetDataOutPtrAX
|
||||||
|
|
||||||
jsr SKT.SetFrameOutDstIP
|
jsr SKT.SetFrameOutDstIP
|
||||||
|
|
||||||
jsr SKT.CopyDataInToOut
|
jsr SKT.CopyDataInToOut
|
||||||
|
|
||||||
jmp FRM.SendIP
|
ldy #S.SOCKET.RAW.PROTO
|
||||||
|
lda (ZPPtrSKT),y
|
||||||
|
cmp #S.IP.PROTOCOL.ICMP
|
||||||
|
bne .1
|
||||||
|
jmp FRM.SendICMP
|
||||||
|
.1 jmp FRM.SendIP
|
||||||
|
|
||||||
.9 sec
|
.9 sec
|
||||||
rts
|
rts
|
||||||
@ -221,7 +224,10 @@ SKT.RCVDA jsr SKT.GetA.I
|
|||||||
.99 sec
|
.99 sec
|
||||||
.9 rts
|
.9 rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
SKT.CLOSEA jsr SKT.GetA
|
SKT.CLOSEA cmp #K.SKTTABLE.SIZE
|
||||||
|
bcs SKT.GetA.9
|
||||||
|
|
||||||
|
jsr SKT.GetA.I
|
||||||
bcs .9
|
bcs .9
|
||||||
|
|
||||||
cmp #S.SOCKET.SOCK.DGRAM
|
cmp #S.SOCKET.SOCK.DGRAM
|
||||||
@ -242,10 +248,6 @@ SKT.CLOSEA jsr SKT.GetA
|
|||||||
clc
|
clc
|
||||||
.9 rts
|
.9 rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
SKT.GETTABLE >LDYA L.SKT.TABLE
|
|
||||||
clc
|
|
||||||
rts
|
|
||||||
*--------------------------------------
|
|
||||||
SKT.GetA cmp #K.SKTTABLE.SIZE
|
SKT.GetA cmp #K.SKTTABLE.SIZE
|
||||||
bcs SKT.GetA.9
|
bcs SKT.GetA.9
|
||||||
jsr SKT.GetA.I
|
jsr SKT.GetA.I
|
||||||
@ -310,6 +312,10 @@ SKT.AddToQueueA sta .2+1
|
|||||||
.9 sec
|
.9 sec
|
||||||
rts
|
rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
|
SKT.GETTABLE >LDYA L.SKT.TABLE
|
||||||
|
clc
|
||||||
|
rts
|
||||||
|
*--------------------------------------
|
||||||
SKT.AddToQueueS
|
SKT.AddToQueueS
|
||||||
clc
|
clc
|
||||||
rts
|
rts
|
||||||
|
@ -241,10 +241,10 @@ CS.DOEVENT lda (pEvent)
|
|||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
CS.QUIT ldy #hSocket
|
CS.QUIT ldy #hSocket
|
||||||
lda (pData),y
|
lda (pData),y
|
||||||
beq .1
|
|
||||||
>LIBCALL hLIBTCPIP,LIBTCPIP.SKT.CLOSEA
|
>LIBCALL hLIBTCPIP,LIBTCPIP.SKT.CLOSEA
|
||||||
|
|
||||||
.1 lda hLIBTCPIP
|
lda hLIBTCPIP
|
||||||
>SYSCALL UnloadLibA
|
>SYSCALL UnloadLibA
|
||||||
clc
|
clc
|
||||||
rts
|
rts
|
||||||
|
Loading…
x
Reference in New Issue
Block a user