Opened 10 years ago

Closed 9 years ago

#5240 closed enhancement (fixed)

[PATCH] Add TCP support

Reported by: andreasf Owned by: andreasf
Priority: normal Milestone: R1
Component: System/Boot Loader Version: R1/Development
Keywords: Cc:
Blocked By: #5234, #6061 Blocking: #5319
Has a Patch: no Platform: All

Description

To date, the boot net stack only has support for UDP and therefore uses a home-grown protocol for remote disk access.

The attached patch adds initial support for TCP sockets, allowing to connect to and disconnect from a remote server.

Other parts like receiving and sending data are still WIP.

Attachments (5)

tcp-draft-01.diff (22.6 KB) - added by andreasf 10 years ago.
draft patch
tcp-test-1.diff (1.3 KB) - added by andreasf 10 years ago.
test code for ppc
tcpserver.cs (553 bytes) - added by andreasf 10 years ago.
test server
tcp-draft-02.diff (26.0 KB) - added by andreasf 9 years ago.
updated draft patch
0001-Add-boot-loader-TCP-support.patch (26.8 KB) - added by andreasf 9 years ago.
proposed patch

Download all attachments as: .zip

Change History (14)

Changed 10 years ago by andreasf

Attachment: tcp-draft-01.diff added

draft patch

Changed 10 years ago by andreasf

Attachment: tcp-test-1.diff added

test code for ppc

Changed 10 years ago by andreasf

Attachment: tcpserver.cs added

test server

comment:1 Changed 10 years ago by andreasf

To test the above, compile and run the test server:

gmcs tcpserver.cs
mono tcpserver.exe

Change the hexadecimal IP address in the test code to match your server and boot boot_loader_openfirmware via a TFTP server.

I tested it between an OpenSolaris/amd64 host and my PowerMac G3 b&w.

comment:2 Changed 9 years ago by andreasf

Reads spanning multiple packets are now fixed. Not having heard any comments, I hope it is approaching mergeable state.

comment:3 Changed 9 years ago by andreasf

Blocking: 5319 added

Changed 9 years ago by andreasf

Attachment: tcp-draft-02.diff added

updated draft patch

comment:4 Changed 9 years ago by andreasf

Blocked By: 6061 added

Changed 9 years ago by andreasf

proposed patch

comment:5 Changed 9 years ago by andreasf

Has a Patch: set

comment:6 Changed 9 years ago by andreasf

Summary: [RFC] Add TCP support[PATCH] Add TCP support

I've rebased my branch that contained some improvements on the last draft, and modified the random number generator according to Endre's suggestion and did some Coding Style fixes. I believe it could be merged now.

comment:7 Changed 9 years ago by andreasf

Owner: changed from axeld to andreasf
Status: newassigned

comment:8 Changed 9 years ago by andreasf

Has a Patch: unset

comment:9 Changed 9 years ago by andreasf

Resolution: fixed
Status: assignedclosed

Applied slightly differently in hrev38434 and hrev38472.

Note: See TracTickets for help on using tickets.