Michael Brown
8156f6bd19
Switch compiler warning on tcp_open() to a #warning
17年前
Michael Brown
a5f33ea283
Added missing line to set return status code.
17年前
Michael Brown
95adce0ce1
Add concept of transfer metadata, to be used by UDP in order to
implement sendto()/recvfrom() equivalents.
17年前
Michael Brown
335b99a39d
Move [v]ssnprintf() from iscsi.c into vsprintf.c; we need them
elsewhere as well.
17年前
Michael Brown
4ccd1e8198
Should call ftp_done() if constructor fails.
17年前
Michael Brown
735e07268e
Update HTTP to use data-xfer interface.
17年前
Michael Brown
0dfd5b84fd
Updated FTP to use data-xfer API.
17年前
Michael Brown
af3149d18e
Allow queries in GET requests
17年前
Michael Brown
a3695b1ff6
Placeholder for TLS insertion
17年前
Michael Brown
6d32f0e6e2
Changed to use the generic stream API.
17年前
Michael Brown
bde8878eef
Keep HTTP progress updated, and display a progress indicator during the
download
17年前
Michael Brown
73b09ecba6
Use stdio.h instead of vsprintf.h
17年前
Michael Brown
4e3976711d
A working name resolution framework
17年前
Michael Brown
6c72bf13a1
Presize the download buffer when we see the Content-Length header;
this saves around 70us per received packet (which is around 50% of the
overall packet processing time).
17年前
Michael Brown
08da93a311
Reorder functions to more closely reflect the flow of control
17年前
Michael Brown
dd6d94004f
HTTP/DNS now working fully asynchronously. HTTP/IP addresses and any
other protocol won't work at the moment.
17年前
Michael Brown
143d14614d
Quickly hack in DNS resolution as a proof of concept
17年前
Michael Brown
df0397f334
Update TFTP and FTP to take the same temporary URI scheme as HTTP
17年前
Michael Brown
afa752f5fb
Protocol's get() method no longer takes ownership of the URI. HTTP is the
exception rather than the rule; we may as well keep things clean for other
protocols.
17年前
Michael Brown
1f92c6b3e8
Must free http on the error path; nothing else will do it
17年前
Michael Brown
c676591cd1
Unmaintained example code is probably worse than useless.
17年前
Michael Brown
4e20d73bb5
Gave asynchronous operations approximate POSIX signal semantics. This
will enable us to cascade async operations, which is necessary in order to
properly support DNS. (For example, an HTTP request may have to redirect
to a new location and will have to perform a new DNS lookup, so we can't
just rely on doing the name lookup at the time of parsing the initial
URL).
Anything other than HTTP is probably broken right now; I'll fix the others
up asap.
17年前
Michael Brown
497c3a5aad
Fixed HTTP
17年前
Michael Brown
ad22cccc09
No need to maintain a received byte count; we always fill in sequential
order so we can just use buffer->fill.
17年前
Michael Brown
6918cf9e9e
Change FTP to use a data buffer rather than a callback function.
17年前
Michael Brown
aaca21a2b6
We can't assert that the RX engine is idle in iscsi_done(), because it
may be called during the RX data processor, before the RX engine
transitions back to idle. It doesn't really matter if the RX engine
isn't idle when iscsi_done() is called, because it will just pick up
where it left off on the next call. (The same is not true for the TX
engine, so keep the TX engine assertion.)
17年前
Michael Brown
6ea07b9247
Use debug auto-colourisation.
17年前
Michael Brown
76525294ee
Clean up connection closing and permanent failure logic.
17年前
Michael Brown
83e1340d88
Use autocolourisation
18年前
Michael Brown
61ed298bc7
Merge changes from mcb-tcp-fixes branch.
18年前
Michael Brown
4cc1c1bd4c
Ensure that old TCP connection state is destroyed before attempting to
reopen connection. (The TCP API will soon change to render this step
unnecessary.)
18年前
Michael Brown
a2e3357825
Cannot immediately overwrite the peer address when we parse
TargetAddress from the login response, because we still need the old
address while we close the connection!
18年前
Michael Brown
d6f9152bfa
Avoid null pointer dereferences when no username/password specified.
18年前
Michael Brown
6ceb55fad0
When login fails, leave the session open but not in full feature
phase. In iscsi_issue(), detect this state and immediately refuse the
operation. This avoids trying multiple logins when scsi.c tries
several times to read the drive capacity.
18年前
Michael Brown
ab242a760d
Add ability to shut down iSCSI connection
18年前
Michael Brown
38ae94f8ce
A cleaner method of handling login redirection; just use the existing
reconnection mechanism. This avoids the problems of trying to reuse
the TCP connection structure before the old connection has cleanly exited.
18年前
Michael Brown
8c3d09c564
Tweaked retry messages
18年前
Michael Brown
9600af14a3
Added debug messages
18年前
Michael Brown
89bcb57201
Update ftp.c to work with Nikhil's TCP stack.
Remove the now-totally-obsolete sockaddr_in field from tcp.h.
18年前
Michael Brown
6842dd3222
Handle TargetAddress
18年前
Michael Brown
67577556a2
Handle strings as complete units, instead of a byte at a time.
18年前
Michael Brown
3a7d762c1c
Add iscsi_rx_buffered_data() and supporting infrastructure.
18年前
Michael Brown
3f0b4d9ed8
Updated to use asynchronous operation model for iSCSI requests
Added CHAP authentication
18年前
Michael Brown
fedc186fd7
Split login into security negotation and operational parameter
negotiation phases, to allow inclusion of CHAP authentication.
18年前
Michael Brown
f1e1dfae3d
Added RX tracing as well.
18年前
Michael Brown
0743dc5b0d
Added some minimal debugging for transmitted PDUs.
18年前
Derek Pryor
562ab6d65c
Bug fixes to the HTTP protocol code
18年前
Derek Pryor
0f88703019
Bug fixes to the HTTP protocol code
18年前
Derek Pryor
25ea34a8d7
New HTTP protocol and test code
18年前
Michael Brown
2497270c14
command->data_{in,out} are now userptr_t, so it is invalid to compare
against NULL.
18年前