/kernel/trunk/network/eth_drv/arp.inc |
---|
67,7 → 67,8 |
endg |
iglobal |
NumARP: dd ARP_TABLE_ENTRIES |
NumARP: |
dd ARP_TABLE_ENTRIES |
ARPTable_ptr dd ARPTable ;pointer to ARPTable |
endg |
Property changes: |
Added: svn:eol-style |
+native |
\ No newline at end of property |
/kernel/trunk/network/eth_drv/drivers/3c59x.inc |
---|
344,42 → 344,68 |
e3c59x_upd_buff = e3c59x_dpd_buff+(E3C59X_DPD_SIZE*E3C59X_NUM_TX_DESC) |
uglobal |
e3c59x_curr_upd: dd 0 |
e3c59x_prev_dpd: dd 0 |
e3c59x_prev_tx_frame: dd 0 |
e3c59x_transmit_function: dd 0 |
e3c59x_receive_function: dd 0 |
e3c59x_curr_upd: |
dd 0 |
e3c59x_prev_dpd: |
dd 0 |
e3c59x_prev_tx_frame: |
dd 0 |
e3c59x_transmit_function: |
dd 0 |
e3c59x_receive_function: |
dd 0 |
endg |
iglobal |
e3c59x_ver_id: db 17 |
e3c59x_ver_id: |
db 17 |
endg |
uglobal |
e3c59x_full_bus_master: db 0 |
e3c59x_has_hwcksm: db 0 |
e3c59x_preamble: db 0 |
e3c59x_dn_list_ptr_cleared: db 0 |
e3c59x_self_directed_packet: rb 6 |
e3c59x_full_bus_master: |
db 0 |
e3c59x_has_hwcksm: |
db 0 |
e3c59x_preamble: |
db 0 |
e3c59x_dn_list_ptr_cleared: |
db 0 |
e3c59x_self_directed_packet: |
rb 6 |
endg |
if defined E3C59X_DEBUG |
e3c59x_hw_type_str: db "Detected hardware type : ", 0 |
e3c59x_device_str: db "Device ID : 0x" |
e3c59x_device_id_str: db "ffff", 13, 10, 0 |
e3c59x_vendor_str: db "Vendor ID : 0x" |
e3c59x_vendor_id_str: db "ffff", 13, 10, 0 |
e3c59x_io_info_str: db "IO address : 0x" |
e3c59x_io_addr_str: db "ffff", 13, 10, 0 |
e3c59x_mac_info_str: db "MAC address : " |
e3c59x_mac_addr_str: db "ff:ff:ff:ff:ff:ff", 13, 10, 0 |
e3c59x_boomerang_str: db " (boomerang)", 13, 10, 0 |
e3c59x_vortex_str: db " (vortex)", 13, 10, 0 |
e3c59x_link_type_str: db "Established link type : ", 0 |
e3c59x_new_line_str: db 13, 10, 0 |
e3c59x_link_type: dd 0 |
e3c59x_hw_type_str: |
db "Detected hardware type : ", 0 |
e3c59x_device_str: |
db "Device ID : 0x" |
e3c59x_device_id_str: |
db "ffff", 13, 10, 0 |
e3c59x_vendor_str: |
db "Vendor ID : 0x" |
e3c59x_vendor_id_str: |
db "ffff", 13, 10, 0 |
e3c59x_io_info_str: |
db "IO address : 0x" |
e3c59x_io_addr_str: |
db "ffff", 13, 10, 0 |
e3c59x_mac_info_str: |
db "MAC address : " |
e3c59x_mac_addr_str: |
db "ff:ff:ff:ff:ff:ff", 13, 10, 0 |
e3c59x_boomerang_str: |
db " (boomerang)", 13, 10, 0 |
e3c59x_vortex_str: |
db " (vortex)", 13, 10, 0 |
e3c59x_link_type_str: |
db "Established link type : ", 0 |
e3c59x_new_line_str: |
db 13, 10, 0 |
e3c59x_link_type: |
dd 0 |
e3c59x_charset: db '0123456789abcdef' |
e3c59x_charset: |
db '0123456789abcdef' |
strtbl e3c59x_link_str, \ |
"No valid link type detected", \ |
Property changes: |
Added: svn:eol-style |
+native |
\ No newline at end of property |
/kernel/trunk/network/eth_drv/drivers/forcedeth.inc |
---|
819,7 → 819,8 |
jz @f |
and eax, PCI_BASE_ADDRESS_IO_MASK |
jmp .next |
@@: push eax |
@@: |
push eax |
and eax, PCI_BASE_ADDRESS_MEM_TYPE_MASK |
cmp eax, PCI_BASE_ADDRESS_MEM_TYPE_64 |
jne .not64 |
878,7 → 879,8 |
jz @f |
and eax, PCI_BASE_ADDRESS_IO_MASK |
jmp .next2 |
@@: and eax, PCI_BASE_ADDRESS_MEM_MASK |
@@: |
and eax, PCI_BASE_ADDRESS_MEM_MASK |
.next2: |
; Find the lowest bit set |
mov ecx, eax |
913,7 → 915,8 |
je .ver1 |
mov dword [forcedeth_desc_ver], DESC_VER_2 |
jmp @f |
.ver1: mov dword [forcedeth_desc_ver], DESC_VER_1 |
.ver1: |
mov dword [forcedeth_desc_ver], DESC_VER_1 |
@@: |
; read the mac address |
; map memory |
981,7 → 984,8 |
jne @f |
or dword [forcedeth_txflags], NV_TX_LASTPACKET1 |
jmp .end_switch |
@@: or dword [forcedeth_txflags], NV_TX2_LASTPACKET1 |
@@: |
or dword [forcedeth_txflags], NV_TX2_LASTPACKET1 |
jmp .end_switch |
.next_0x0086: |
Property changes: |
Added: svn:eol-style |
+native |
\ No newline at end of property |
/kernel/trunk/network/eth_drv/drivers/i8255x.inc |
---|
50,39 → 50,61 |
uglobal |
eeprom_data: times 16 dd 0 |
eeprom_data: |
times 16 dd 0 |
align 4 |
lstats: |
tx_good_frames: dd 0 |
tx_coll16_errs: dd 0 |
tx_late_colls: dd 0 |
tx_underruns: dd 0 |
tx_lost_carrier: dd 0 |
tx_deferred: dd 0 |
tx_one_colls: dd 0 |
tx_multi_colls: dd 0 |
tx_total_colls: dd 0 |
rx_good_frames: dd 0 |
rx_crc_errs: dd 0 |
rx_align_errs: dd 0 |
rx_resource_errs: dd 0 |
rx_overrun_errs: dd 0 |
rx_colls_errs: dd 0 |
rx_runt_errs: dd 0 |
done_marker: dd 0 |
tx_good_frames: |
dd 0 |
tx_coll16_errs: |
dd 0 |
tx_late_colls: |
dd 0 |
tx_underruns: |
dd 0 |
tx_lost_carrier: |
dd 0 |
tx_deferred: |
dd 0 |
tx_one_colls: |
dd 0 |
tx_multi_colls: |
dd 0 |
tx_total_colls: |
dd 0 |
rx_good_frames: |
dd 0 |
rx_crc_errs: |
dd 0 |
rx_align_errs: |
dd 0 |
rx_resource_errs: |
dd 0 |
rx_overrun_errs: |
dd 0 |
rx_colls_errs: |
dd 0 |
rx_runt_errs: |
dd 0 |
done_marker: |
dd 0 |
align 4 |
confcmd: |
confcmd_status: dw 0 |
confcmd_command: dw 0 |
confcmd_link: dd 0 |
confcmd_status: |
dw 0 |
confcmd_command: |
dw 0 |
confcmd_link: |
dd 0 |
endg |
iglobal |
confcmd_data: db 22, 0x08, 0, 0, 0, 0x80, 0x32, 0x03, 1 |
confcmd_data: |
db 22, 0x08, 0, 0, 0, 0x80, 0x32, 0x03, 1 |
db 0, 0x2e, 0, 0x60, 0, 0xf2, 0x48, 0, 0x40, 0xf2 |
db 0x80, 0x3f, 0x05 |
endg |
91,22 → 113,34 |
align 4 |
txfd: |
txfd_status: dw 0 |
txfd_command: dw 0 |
txfd_link: dd 0 |
txfd_tx_desc_addr: dd 0 |
txfd_count: dd 0 |
txfd_tx_buf_addr0: dd 0 |
txfd_tx_buf_size0: dd 0 |
txfd_tx_buf_addr1: dd 0 |
txfd_tx_buf_size1: dd 0 |
txfd_status: |
dw 0 |
txfd_command: |
dw 0 |
txfd_link: |
dd 0 |
txfd_tx_desc_addr: |
dd 0 |
txfd_count: |
dd 0 |
txfd_tx_buf_addr0: |
dd 0 |
txfd_tx_buf_size0: |
dd 0 |
txfd_tx_buf_addr1: |
dd 0 |
txfd_tx_buf_size1: |
dd 0 |
align 4 |
hdr: |
hdr_dst_addr: times 6 db 0 |
hdr_src_addr: times 6 db 0 |
hdr_type: dw 0 |
hdr_dst_addr: |
times 6 db 0 |
hdr_src_addr: |
times 6 db 0 |
hdr_type: |
dw 0 |
endg |
757,4 → 791,4 |
mov edx, [io_addr] |
in ax, dx |
ret |
ret |
Property changes: |
Added: svn:eol-style |
+native |
\ No newline at end of property |
/kernel/trunk/network/eth_drv/drivers/pcnet32.inc |
---|
Property changes: |
Added: svn:eol-style |
+native |
\ No newline at end of property |
/kernel/trunk/network/eth_drv/drivers/r6040.inc |
---|
Property changes: |
Added: svn:eol-style |
+native |
\ No newline at end of property |
/kernel/trunk/network/eth_drv/drivers/rtl8029.inc |
---|
143,29 → 143,46 |
ISA_MAX_ADDR equ 0x400 |
uglobal |
eth_flags: db 0 |
eth_vendor: db 0 |
eth_nic_base: dw 0 |
eth_asic_base: dw 0 |
eth_memsize: db 0 |
eth_rx_start: db 0 |
eth_tx_start: db 0 |
eth_bmem: dd 0 |
eth_rmem: dd 0 |
romdata: db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 |
eth_flags: |
db 0 |
eth_vendor: |
db 0 |
eth_nic_base: |
dw 0 |
eth_asic_base: |
dw 0 |
eth_memsize: |
db 0 |
eth_rx_start: |
db 0 |
eth_tx_start: |
db 0 |
eth_bmem: |
dd 0 |
eth_rmem: |
dd 0 |
romdata: |
db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 |
endg |
iglobal |
test_data: db 'NE*000 memory',0 |
test_buffer: db ' ',0 |
test_data: |
db 'NE*000 memory',0 |
test_buffer: |
db ' ',0 |
endg |
uglobal |
eth_type: dw 0 |
pkthdr: db 0,0,0,0 ; status, next, (short) len |
pktoff: dw 0 |
eth_rx_data_ptr: dd 0 |
eth_tmp_len: dw 0 |
eth_type: |
dw 0 |
pkthdr: |
db 0,0,0,0 ; status, next, (short) len |
pktoff: |
dw 0 |
eth_rx_data_ptr: |
dd 0 |
eth_tmp_len: |
dw 0 |
endg |
Property changes: |
Added: svn:eol-style |
+native |
\ No newline at end of property |
/kernel/trunk/network/eth_drv/drivers/rtl8139.inc |
---|
183,18 → 183,21 |
uglobal |
align 4 |
rtl8139_rx_buff_offset: dd 0 |
rtl8139_rx_buff_offset: |
dd 0 |
curr_tx_desc dd 0 |
endg |
iglobal |
hw_ver_array: db VER_RTL8139, VER_RTL8139A, VER_RTL8139B, VER_RTL8139C |
hw_ver_array: |
db VER_RTL8139, VER_RTL8139A, VER_RTL8139B, VER_RTL8139C |
db VER_RTL8100, VER_RTL8139D, VER_RTL8139CP, VER_RTL8101 |
HW_VER_ARRAY_SIZE = $-hw_ver_array |
endg |
uglobal |
hw_ver_id: db 0 |
hw_ver_id: |
db 0 |
endg |
;*************************************************************************** |
Property changes: |
Added: svn:eol-style |
+native |
\ No newline at end of property |
/kernel/trunk/network/eth_drv/drivers/rtl8169.inc |
---|
550,7 → 550,8 |
jz @f |
and eax,PCI_BASE_ADDRESS_IO_MASK |
jmp .exit |
@@: push eax |
@@: |
push eax |
and eax,PCI_BASE_ADDRESS_MEM_TYPE_MASK |
cmp eax,PCI_BASE_ADDRESS_MEM_TYPE_64 |
jne .not64 |
583,7 → 584,8 |
; Check that the chip has finished the reset |
mov ecx,1000 |
@@: RTL_R8 RTL8169_REG_ChipCmd |
@@: |
RTL_R8 RTL8169_REG_ChipCmd |
test al,RTL8169_CMD_Reset |
jz @f |
stdcall udelay,10 |
594,7 → 596,8 |
and eax,0x7c800000 |
; DEBUGF 1,"K : rtl8169_init_board: TxConfig & 0x7c800000 = 0x%x\n",eax |
mov esi,mac_info-8 |
@@: add esi,8 |
@@: |
add esi, 8 |
mov ecx,eax |
and ecx,[esi] |
cmp ecx,[esi] |
609,7 → 612,8 |
jnz @f |
mov [rtl8169_tpc.pcfg],PCFG_METHOD_1 |
jmp .pconf |
@@: dec al |
@@: |
dec al |
jnz .pconf |
mov [rtl8169_tpc.pcfg],PCFG_METHOD_2 |
.pconf: |
617,7 → 621,8 |
; identify chip attached to board |
mov ecx,10 |
mov eax,[rtl8169_tpc.mcfg] |
@@: dec ecx |
@@: |
dec ecx |
js @f |
cmp eax,[rtl_chip_info+ecx*8] |
jne @b |
661,7 → 666,8 |
je @f |
cmp [rtl8169_tpc.mcfg],MCFG_METHOD_03 |
jne .not_2_or_3 |
@@: stdcall RTL8169_WRITE_GMII_REG,0x1F,0x0001 |
@@: |
stdcall RTL8169_WRITE_GMII_REG, 0x1F, 0x0001 |
stdcall RTL8169_WRITE_GMII_REG,0x15,0x1000 |
stdcall RTL8169_WRITE_GMII_REG,0x18,0x65C7 |
stdcall RTL8169_WRITE_GMII_REG,0x04,0x0000 |
727,7 → 733,8 |
mov ecx,2000 |
; Check if the RTL8169 has completed writing to the specified MII register |
@@: RTL_R32 RTL8169_REG_PHYAR |
@@: |
RTL_R32 RTL8169_REG_PHYAR |
test eax,0x80000000 |
jz .exit |
stdcall udelay,1 ;;;100 |
749,7 → 756,8 |
mov ecx,2000 |
; Check if the RTL8169 has completed retrieving data from the specified MII register |
@@: RTL_R32 RTL8169_REG_PHYAR |
@@: |
RTL_R32 RTL8169_REG_PHYAR |
test eax,0x80000000 |
jnz .exit |
stdcall udelay,1 ;;;100 |
802,7 → 810,8 |
mov edi,rtl8169_tpc.Tx_skbuff |
mov eax,rtl8169_txb |
mov ecx,NUM_TX_DESC |
@@: stosd |
@@: |
stosd |
inc eax ; add eax,RX_BUF_SIZE ??? |
loop @b |
818,7 → 827,8 |
mov edi,[rtl8169_tpc.RxDescArray] |
mov eax,rtl8169_rxb |
mov ecx,NUM_RX_DESC |
@@: mov [esi],eax |
@@: |
mov [esi], eax |
mov [edi+rtl8169_RxDesc.buf_addr],eax |
sub [edi+rtl8169_RxDesc.buf_addr],OS_BASE ; shurf 28.09.2008 |
mov [edi+rtl8169_RxDesc.status],RTL8169_DSB_OWNbit or RX_BUF_SIZE |
840,7 → 850,8 |
RTL_W8 RTL8169_REG_ChipCmd,RTL8169_CMD_Reset |
; Check that the chip has finished the reset |
mov ecx,1000 |
@@: RTL_R8 RTL8169_REG_ChipCmd |
@@: |
RTL_R8 RTL8169_REG_ChipCmd |
and al,RTL8169_CMD_Reset |
jz @f |
stdcall udelay,10 |
872,7 → 883,8 |
; DEBUGF 1,"K : Set MAC Reg C+CR Offset 0xE0: bit-3 and bit-14\n" |
jmp .set |
@@:;DEBUGF 1,"K : Set MAC Reg C+CR Offset 0xE0: bit-3\n" |
.set: RTL_W16 RTL8169_REG_CPlusCmd,ax |
.set: |
RTL_W16 RTL8169_REG_CPlusCmd,ax |
; RTL_W16 0xE2,0x1517 |
; RTL_W16 0xE2,0x152a |
929,7 → 941,8 |
add edx,RTL8169_REG_MAC0 |
xor ebx,ebx |
; Get MAC address. FIXME: read EEPROM |
@@: RTL_R8 dx |
@@: |
RTL_R8 dx |
mov [node_addr+ebx],al |
inc edx |
inc ebx |
969,7 → 982,8 |
stdcall udelay,100 |
mov ecx,10000 |
; wait for auto-negotiation process |
@@: dec ecx |
@@: |
dec ecx |
jz @f |
stdcall RTL8169_READ_GMII_REG,RTL8169_PHY_STAT_REG |
stdcall udelay,100 |
1081,12 → 1095,14 |
and ecx,0x0FFF |
xor al,al |
add edi,ecx |
@@: cmp ecx,ETH_ZLEN |
@@: |
cmp ecx, ETH_ZLEN |
jae @f |
stosb |
inc ecx |
jmp @b |
@@: pop eax |
@@: |
pop eax |
mov ebx,eax |
mov eax,sizeof.rtl8169_TxDesc |
1100,11 → 1116,13 |
cmp eax,ETH_ZLEN |
jae @f |
mov eax,ETH_ZLEN |
@@: or eax,RTL8169_DSB_OWNbit or RTL8169_DSB_FSbit or RTL8169_DSB_LSbit |
@@: |
or eax, RTL8169_DSB_OWNbit or RTL8169_DSB_FSbit or RTL8169_DSB_LSbit |
cmp [rtl8169_tpc.cur_tx],NUM_TX_DESC - 1 |
jne @f |
or eax,RTL8169_DSB_EORbit |
@@: mov [ebx + rtl8169_TxDesc.status],eax |
@@: |
mov [ebx + rtl8169_TxDesc.status], eax |
RTL_W8 RTL8169_REG_TxPoll,0x40 ; set polling bit |
1114,7 → 1132,8 |
;!!! to = currticks() + TX_TIMEOUT; |
;!!! while ((tpc->TxDescArray[entry].status & OWNbit) && (currticks() < to)); /* wait */ |
mov ecx,TX_TIMEOUT / 10 |
@@: test [ebx + rtl8169_TxDesc.status],RTL8169_DSB_OWNbit |
@@: |
test [ebx + rtl8169_TxDesc.status], RTL8169_DSB_OWNbit |
jnz @f |
stdcall udelay,10 |
loop @b |
1195,7 → 1214,8 |
cmp [rtl8169_tpc.cur_rx],NUM_RX_DESC - 1 |
jne @f |
or eax,RTL8169_DSB_EORbit |
@@: mov [ebx + rtl8169_RxDesc.status],eax |
@@: |
mov [ebx + rtl8169_RxDesc.status], eax |
mov [ebx + rtl8169_RxDesc.buf_addr],edx |
sub [ebx + rtl8169_RxDesc.buf_addr],OS_BASE ; shurf 28.09.2008 |
Property changes: |
Added: svn:eol-style |
+native |
\ No newline at end of property |
/kernel/trunk/network/eth_drv/drivers/sis900.inc |
---|
80,8 → 80,10 |
uglobal |
align 4 |
txd: times (3 * NUM_TX_DESC) dd 0 |
rxd: times (3 * NUM_RX_DESC) dd 0 |
txd: |
times (3 * NUM_TX_DESC) dd 0 |
rxd: |
times (3 * NUM_RX_DESC) dd 0 |
endg |
txb equ eth_data_start |
218,7 → 220,8 |
SIS900_EEDONE equ 0x00000200 |
SIS900_EEGNT equ 0x00000100 |
;General Varibles |
SIS900_pci_revision: db 0 |
SIS900_pci_revision: |
db 0 |
SIS900_Status dd 0x03000000 |
sis900_specific_table: |
; dd SIS630A_900_REV,Get_Mac_SIS630A_900_REV,0 |
230,9 → 233,12 |
dd SIS900_960_REV,SIS960_get_mac_addr,0 |
dd SIS900B_900_REV,SIS900_get_mac_addr,0 |
dd 0,0,0,0 ; end of list |
sis900_get_mac_func: dd 0 |
sis900_special_func: dd 0 |
sis900_table_entries: db 8 |
sis900_get_mac_func: |
dd 0 |
sis900_special_func: |
dd 0 |
sis900_table_entries: |
db 8 |
;*************************************************************************** |
; Function |
567,7 → 573,8 |
;* 0x00600000 = 128 bytes |
;* 0x00700000 = 256 bytes |
;*************************************************************************** |
SIS900_mc_filter: times 16 dw 0 |
SIS900_mc_filter: |
times 16 dw 0 |
SIS900_set_rx_mode: |
mov ebp,[io_addr] |
;**************update Multicast Hash Table in Receive Filter |
1081,7 → 1088,8 |
SIS900_Char_String db '0','1','2','3','4','5','6','7','8','9' |
db 'A','B','C','D','E','F' |
Mac_str_build: times 20 db 0 |
Mac_str_build: |
times 20 db 0 |
Create_Mac_String: |
pusha |
xor ecx, ecx |
Property changes: |
Added: svn:eol-style |
+native |
\ No newline at end of property |
/kernel/trunk/network/eth_drv/ethernet.inc |
---|
243,31 → 243,49 |
uglobal |
;Net-stack's interface's settings |
node_addr: db 0,0,0,0,0,0 |
gateway_ip: dd 0 |
dns_ip: dd 0 |
node_addr: |
db 0,0,0,0,0,0 |
gateway_ip: |
dd 0 |
dns_ip: |
dd 0 |
eth_rx_data_len: dw 0 |
eth_status: dd 0 |
io_addr: dd 0 |
hdrtype: db 0 |
vendor_device: dd 0 |
pci_data: dd 0 |
pci_dev: dd 0 |
pci_bus: dd 0 |
eth_rx_data_len: |
dw 0 |
eth_status: |
dd 0 |
io_addr: |
dd 0 |
hdrtype: |
db 0 |
vendor_device: |
dd 0 |
pci_data: |
dd 0 |
pci_dev: |
dd 0 |
pci_bus: |
dd 0 |
; These will hold pointers to the selected driver functions |
drvr_probe: dd 0 |
drvr_reset: dd 0 |
drvr_poll: dd 0 |
drvr_transmit: dd 0 |
drvr_cable: dd 0 |
drvr_probe: |
dd 0 |
drvr_reset: |
dd 0 |
drvr_poll: |
dd 0 |
drvr_transmit: |
dd 0 |
drvr_cable: |
dd 0 |
endg |
iglobal |
broadcast_add: db 0xff,0xff,0xff,0xff,0xff,0xff |
subnet_mask: dd 0x00ffffff ; 255.255.255.0 |
broadcast_add: |
db 0xff,0xff,0xff,0xff,0xff,0xff |
subnet_mask: |
dd 0x00ffffff ; 255.255.255.0 |
endg |
include "arp.inc" ;arp-protocol functions |
Property changes: |
Added: svn:eol-style |
+native |
\ No newline at end of property |
/kernel/trunk/network/eth_drv/pci.inc |
---|
348,4 → 348,4 |
mov [io_addr], eax |
sb_exit2: |
ret |
ret |
Property changes: |
Added: svn:eol-style |
+native |
\ No newline at end of property |
/kernel/trunk/network/icmp.inc |
---|
Property changes: |
Added: svn:eol-style |
+native |
\ No newline at end of property |
/kernel/trunk/network/ip.inc |
---|
Property changes: |
Added: svn:eol-style |
+native |
\ No newline at end of property |
/kernel/trunk/network/queue.inc |
---|
Property changes: |
Added: svn:eol-style |
+native |
\ No newline at end of property |
/kernel/trunk/network/socket.inc |
---|
473,7 → 473,8 |
cmp esi, SOCKET_PASSIVE |
je @f |
mov ebx, TCB_SYN_SENT |
@@: mov [eax + SOCKET.TCBState], ebx ; Indicate the state of the TCB |
@@: |
mov [eax + SOCKET.TCBState], ebx ; Indicate the state of the TCB |
cmp ebx, TCB_LISTEN |
je .exit |
570,7 → 571,8 |
add esi, 8 |
jmp .next_resendq |
@@: mov dword[esi + 4], 0 |
@@: |
mov dword[esi + 4], 0 |
inc ecx |
add esi, 8 |
jmp .next_resendq |
961,7 → 963,8 |
jnz @f |
mov ax, 0xffff |
@@: xchg al, ah |
@@: |
xchg al, ah |
mov [edx + 20 + UDP_PACKET.Checksum], ax |
; Fill in the IP header checksum |
1079,7 → 1082,8 |
add esi, 8 |
jmp .next_resendq |
@@: push ebx |
@@: |
push ebx |
; OK, we have a buffer descriptor ptr in esi. |
; resend entry # in ecx |
1098,7 → 1102,8 |
; Now get buffer location, and copy buffer across. argh! more copying,, |
mov edi, resendBuffer - IPBUFFSIZE |
@@: add edi, IPBUFFSIZE |
@@: |
add edi, IPBUFFSIZE |
loop @b |
; we have dest buffer location in edi |
Property changes: |
Added: svn:eol-style |
+native |
\ No newline at end of property |
/kernel/trunk/network/stack.inc |
---|
36,10 → 36,14 |
uglobal |
StackCounters: |
dumped_rx_count dd 0 |
arp_tx_count: dd 0 |
arp_rx_count: dd 0 |
ip_rx_count: dd 0 |
ip_tx_count: dd 0 |
arp_tx_count: |
dd 0 |
arp_rx_count: |
dd 0 |
ip_rx_count: |
dd 0 |
ip_tx_count: |
dd 0 |
endg |
; socket buffers |
Property changes: |
Added: svn:eol-style |
+native |
\ No newline at end of property |
/kernel/trunk/network/tcp.inc |
---|
669,7 → 669,8 |
add esi, 8 |
jmp .next_resendq |
@@: mov dword[esi + 4], 0 |
@@: |
mov dword[esi + 4], 0 |
inc ecx |
add esi, 8 |
jmp .next_resendq |
911,7 → 912,8 |
add esi, 8 |
jmp .next_resendq |
@@: mov dword[esi + 4], 0 |
@@: |
mov dword[esi + 4], 0 |
inc ecx |
add esi, 8 |
jmp .next_resendq |
1052,12 → 1054,14 |
mov [ebx + SOCKET.TCBState], TCB_FIN_WAIT_2 |
jmp .exit |
@@: mov [ebx + SOCKET.TCBState], TCB_CLOSING |
@@: |
mov [ebx + SOCKET.TCBState], TCB_CLOSING |
cmp al, TH_FIN |
je @f |
mov [ebx + SOCKET.TCBState], TCB_TIMED_WAIT |
@@: lea esi, [ebx + SOCKET.RCV_NXT] |
@@: |
lea esi, [ebx + SOCKET.RCV_NXT] |
call inc_inet_esi |
; Send an ACK |
Property changes: |
Added: svn:eol-style |
+native |
\ No newline at end of property |
/kernel/trunk/network/udp.inc |
---|
Property changes: |
Added: svn:eol-style |
+native |
\ No newline at end of property |