tcpip: provide malloc + free, sleep + wakeup functions
oskittcp: remove functions and headers that imply km and supply them from the
user.
tcp_usrreq: i was printing a possibly free mbuf here.
svn path=/trunk/; revision=10734
Closing a socket doesn't crash but still hangs. Needs work.
oskittcp: corrected problem with send data, trying out slightly different
scheme of dealing with closed socket.
tcpip: added support for SEL_FIN in socket state callback and corrected
support for returning error in TCPReceiveData.
svn path=/trunk/; revision=10650
no deleted code this time around. all properly ifdef'd
more use of bsd style adapter structs and adapter queries with provided
support by tcpip.sys.
correct prototypes
some diff output is reformatting
tcpip: some bug fixes, -Wall -Werror on, all prototypes in
remove the need for MaxLLHeaderSize anywhere except lan.c
unify meaning of Header and Data members of IP_PACKET
unify PCHAR types in routines.c
move one more address into the struct, eliminating management and extra
poll alloc in NCE
eliminate wrong use of PIP_INTERFACE as NTE pointer in dispatch functions
other fixes
svn path=/trunk/; revision=10601
Regularized TCPSendData and TCPReceiveData parameters and calling.
Added number of bytes IoStatus for TDI_SEND_DATAGRAM and TDI_SEND as
specified in the OSR entry for TDI_SEND_DATAGRAM.
Fixed IRQL in packet send event. We now use KeRaiseIrql to make sure we're
in DISPATCH_LEVEL.
Fixed socket state callback for new afd. Now fully based on io completion.
svn path=/trunk/; revision=10032
networking code.
There is individual change info on the branch arty_20040329.
Here is a summary of what changed:
tcpip:
- Added a mostly working transport/tcp branch based on oskittcp
(checked in at drivers/lib/oskittcp). This code shares almost nothing
with the previous version.
- Regularized IRP handling
- Fixed ownership of buffers throughout tcpip.sys. Buffers are now
required to be copied in a few more cases, but everybody can call
anybody else and not have to worry about keeping a buffer alive
for any specific reason.
- Also moved lots more operations onto the stack (small datastructures
and pointers). This will result in a further simplification of the
code here.
- Made each completion routine solely responsible for freeing memory
from the corresponding action.
- Removed reference counted small address structures in favor if inlines
- Changed and clarified ownership rules almost everwhere
- Fixed a few more type punning style errors
- Added more info used by iphlpapi
- Added some memory tracing stuff
ndis:
- Fixed one or two type punning errors
ws2_32:
- Added getservbyname and getprotobyname (partial)
oskittcp:
- Diagnostics everywhere
- Eliminated dependence on raw_ip input
- Simplified buffering and signalling model a bit
- Added memory checking as in tcpip
- more to come
svn path=/trunk/; revision=9647
Irp->IoStatus.Information.
(AfdUnload): Make it STDCALL.
(DriverEntry): Don't cast function pointers.
reactos/drivers/net/afd/afd/dispatch.c (AfdDispGetName): New function, still
incomplete.
reactos/drivers/net/afd/include/afd.h (AfdDispGetName): Declare.
reactos/drivers/net/tcpip/tcpip/main.c (TiDispatchOpenClose):
Use STDCALL instead of STDCALL_FUNC.
(TiUnload): Make it STDCALL.
(DriverEntry): Don't cast function pointers.
reactos/drivers/net/tcpip/transport/tcp/tcp.c (TCPConnect):
Don't free the NDIS buffer, it's already done on another place and return
STATUS_PENDING to avoid completing the Irp two times.
reactos/lib/msafd/misc/stubs.c (WSPGetSockName, WSPGetPeerName):
Moved to ...
reactos/lib/msafd/misc/dllmain.c (WSPGetSockName, WSPGetPeerName):
... here, direct the calls to afd.sys.
svn path=/trunk/; revision=8132
afd/dispatch.c fixed ptr arith + bug fix by filip
afd/tdi.c removed functions dealing with TDI_CONNECTION_INFORMATION (tdiconn)
tcpip fixes by filip
svn path=/trunk/; revision=8072
Implemented sequenced lists and lookaside lists.
Started on TCP/IP connection endpoints.
Save process window station in EPROCESS instead of PEB.
NOTICE: please do a make win32k_clean or you might experience a crash
svn path=/trunk/; revision=2036