tcp_listen was very busted (was sending a bogus sequence number in the initial SYN/ACK packet, so subsequent data transmissions never properly acknowledged by remote host)

git-svn-id: http://svn.code.sf.net/p/netboot65/code@250 93682198-c243-4bdb-bd91-e943c89aac3b
This commit is contained in:
jonnosan 2010-03-21 11:23:36 +00:00
parent d2ce1b1765
commit 8c0e0b0f0e

View File

@ -178,6 +178,7 @@ tcp_listen:
sta tcp_connect_sequence_number+1
jsr ip65_random_word
stax tcp_connect_sequence_number+2
jsr set_expected_ack; ;due to various ugly hacks, the 'expected ack' value is now what is put into the 'SEQ' field in outbound packets
@listen_loop:
jsr ip65_process
jsr check_for_abort_key
@ -286,7 +287,8 @@ tcp_connection_established:
stax acc32
ldax #$01
jsr add_16_32
set_expected_ack:
;set the expected ack number with current seq number
ldx #3 ;
: lda tcp_connect_sequence_number,x