Commit graph

47119 commits

Author SHA1 Message Date
Claudiu Mihail f0c093af20 [lwIP]
- fix crash caused by a race condition when trying to close a socket
- move timer hack from sys_arch.c to timers.c because there it gives best performance (will have to get rid of it at some point though)
- when closing a socket only mask out the receive and accept callbacks (as they can cause of a crash when closing a socket). The rest of the callbacks are left alone because they may be used.

[TCPIP]
- merge r52698
- remove some DbgPrint calls that are now useless since the bug they were introduced to help discover has been fixed

svn path=/branches/GSoC_2011/TcpIpDriver/; revision=52712
2011-07-17 12:32:33 +00:00
Claudiu Mihail 11a025ade9 [lwIP]
- Upgrade to the latest version of lwIP (1.40)

svn path=/branches/GSoC_2011/TcpIpDriver/; revision=52655
2011-07-12 14:06:50 +00:00
Claudiu Mihail b5a8722b5e [lwIP]
- add a small hack in sys_arch.c to boost throughput; we forcefully make the timeout value a foxed constant to boost speed
- add small language optimizations

svn path=/branches/GSoC_2011/TcpIpDriver/; revision=52637
2011-07-11 17:33:17 +00:00
Claudiu Mihail 02013a2c67 [lwIP/IP]
- Optimize the way Send and Close handlers work by executing executing the raw lwIP functions directly instead of using lwIP's callback system. This works because the handlers are executed from lwIP's master thread context
- small language optimizations

svn path=/branches/GSoC_2011/TcpIpDriver/; revision=52630
2011-07-11 12:36:07 +00:00
Claudiu Mihail 9f0c4d27d8 [IP/lwIP]
- Fix graceful closure hanging bug

svn path=/branches/GSoC_2011/TcpIpDriver/; revision=52594
2011-07-10 00:38:29 +00:00
Amine Khaldi 00612e723d * Reverse merge ldr rewrite related commits.
svn path=/branches/GSoC_2011/TcpIpDriver/; revision=52573
2011-07-08 18:13:36 +00:00
Amine Khaldi 4f2d0d54b0 * Sync to recent trunk (r52563).
svn path=/branches/GSoC_2011/TcpIpDriver/; revision=52565
2011-07-08 01:50:19 +00:00
Cameron Gutman 31774f263a [AFD]
- Signal the event immediately if the select triggers have already been satisfied
- This fixes hangs with applications that wait on the select event before performing any socket operations

svn path=/trunk/; revision=52562
2011-07-07 22:43:35 +00:00
Cameron Gutman fff1ab8feb [AFD]
- Implement IOCTL_AFD_RECV for connection-less sockets
- Fix a parameter check
- Fixes recv() on datagram sockets

svn path=/trunk/; revision=52561
2011-07-07 20:44:47 +00:00
Cameron Gutman 2ee824a900 [MSAFD]
- Let WSPSend handle WSPSendTo on a non-datagram socket (mswsock_new does this)
- Fixes sendto on connection-oriented sockets

svn path=/trunk/; revision=52560
2011-07-07 20:16:28 +00:00
Cameron Gutman 6a6e263c86 [IP]
- Return the amount of data sent in XXXSendDatagram() functions
- Fixes send() and sendto() return values for datagram sockets (bug exposed by the AFD send user-mode IRP rewrite)

svn path=/trunk/; revision=52559
2011-07-07 20:02:52 +00:00
Dmitry Gorbachev d573717e00 Fix failed rel build.
svn path=/trunk/; revision=52558
2011-07-07 19:50:52 +00:00
Dmitry Gorbachev 2a66163177 [FREELDR]
- Move read-only data into data section (allows to boot with GRUB again).
- Discard .drectve sections.
- Silence "set but not used" warnings.

svn path=/trunk/; revision=52557
2011-07-07 19:19:44 +00:00
Dmitry Gorbachev e462a7a6d3 [NTOSKRNL]
Minas Abrahamyan (minas \dot/ subs \at/ gmail \dot/ com):
- Allow to view already shown, logged debug messages on the screen (bug #6018).

svn path=/trunk/; revision=52556
2011-07-07 19:18:16 +00:00
Sir Richard 5b90950500 Patch by Anton Yarotsky:
[SACDRV]: Implement the SAC Channel Input/Output Interface and Getters/Setters.

svn path=/trunk/; revision=52555
2011-07-07 12:03:56 +00:00
Sir Richard 79f36207fc Patch by Anton Yarotsky:
[SACDRV]: Add type definitions for channel VTABLE.
[SACDRV]: Add channel event macros and flags.
[SACDRV]: Add channal lock macros.
[SACDRV]: Add macros for parameter validation.
[SACDRV]: Add macro for pool allocation.
[SACDRV]: Misc fixes.

svn path=/trunk/; revision=52554
2011-07-07 12:02:32 +00:00
Cameron Gutman 6f052257ab [MSAFD]
- Let WSPRecv handle WSPRecvFrom on a non-datagram socket (mswsock_new does this)
- Fixes recvfrom on connection-oriented sockets

svn path=/trunk/; revision=52553
2011-07-07 11:40:25 +00:00
Cameron Gutman 14f58265d2 [AFD]
- Rewrite user-mode send IRP handling so send errors get returned to the user properly
- Fixes OskitTCP: ESHUTDOWN/EPIPE debug log spam when a chargen telnet session is terminated by the remote side

svn path=/trunk/; revision=52552
2011-07-07 00:29:30 +00:00
Timo Kreuzer d7d9b7ec6c [RPCRT4]
Fix MSVC version of call_server_func

svn path=/trunk/; revision=52551
2011-07-07 00:21:41 +00:00
Timo Kreuzer b92c0d9f52 [NTOSKRNL]
- Fix completely broken code to detect invalid MSR access in KiTrap0DHandler
- Fix MSVC warnings

svn path=/trunk/; revision=52548
2011-07-06 18:23:04 +00:00
Timo Kreuzer 9659a39678 [NPFS]
Fix 2nd stage pool corruption.
CCBs are organized in a linked list in the corresponding Fcb, which is protected by Fcb->CcbListLock. They are also linked together server <-> client. This way they can be referenced without holding the lock. This lead to a race condition where a CCB's link was modified after the CCB was deleted. Fix this by using a reference counter and adding appropriate functions. Also make use of pool tags.

svn path=/trunk/; revision=52547
2011-07-06 18:14:42 +00:00
Rafal Harabien f6630535f2 [CDFS][FASTFAT][NPFS]
- Fix MSVC warnings

svn path=/trunk/; revision=52546
2011-07-05 13:55:39 +00:00
Rafal Harabien 2750bc8ed5 [MSAFD]
- Fix MSVC warning

svn path=/trunk/; revision=52545
2011-07-05 12:21:17 +00:00
Cameron Gutman d9a64c3019 [USETUP]
- Remove formatting and partitioning hacks which are unnecessary after fixing the invalid signature bug in the FAT formatting code

svn path=/trunk/; revision=52540
2011-07-04 19:39:34 +00:00
Cameron Gutman 4e5a783a2f [AFD]
- Move the TdiReceiveDatagram call to WarmSocketForBind like it is done for connects

svn path=/trunk/; revision=52539
2011-07-04 19:13:45 +00:00
Cameron Gutman 54f9acbf0d [AFD]
- Add support for AFD_INFO_INLINING_MODE
- Add support for setting AFD_INFO_RECEIVE_WINDOW_SIZE and AFD_INFO_SEND_WINDOW_SIZE
- None of this is used by our current msafd but mswsock_new uses it

svn path=/trunk/; revision=52538
2011-07-04 18:07:55 +00:00
Cameron Gutman 0e8f87ff82 [MSAFD/AFD]
- Pass the non-blocking information as a boolean (mswsock_new does this too)
[AFD]
- Don't block waiting for a connection to accept on a non-blocking listener

svn path=/trunk/; revision=52537
2011-07-04 17:37:45 +00:00
Timo Kreuzer c19f9ab75c [RTL]
- Fix RtlFindSetBits to search for bits before the HintIndex as well
- Remove a wrong (and commented out) ASSERT
- Fix MSVC warnings

svn path=/trunk/; revision=52536
2011-07-04 16:30:45 +00:00
Timo Kreuzer f3a297daba [NTOSKRNL]
- Initialize an uninitialized variable
- MI_GET_NEXT_COLOR() doesn't have an argument
- Fix a warning on MSVC

svn path=/trunk/; revision=52535
2011-07-04 16:26:52 +00:00
Cameron Gutman fd6bb26299 - Small fix for my last commit to prevent problems if ExAllocatePool fails
svn path=/trunk/; revision=52534
2011-07-04 15:45:58 +00:00
Cameron Gutman 72fe2efcf8 [AFD]
- Fix FIONREAD for datagram sockets

svn path=/trunk/; revision=52533
2011-07-04 15:35:16 +00:00
Cameron Gutman 00651a94cd [AFD]
- Fix a check so FIONREAD works for accepted sockets too

svn path=/trunk/; revision=52532
2011-07-04 00:30:04 +00:00
Rafal Harabien 47e38dc163 - Fix build
svn path=/trunk/; revision=52531
2011-07-03 23:32:00 +00:00
Rafal Harabien 260631bc82 [NORMALIZ]
- Remove .def file - we already have spec2def

svn path=/trunk/; revision=52530
2011-07-03 23:25:59 +00:00
Claudiu Mihail 139e851adb [TESTS]
- Commit ReactOS binaries for previous two source files as well

svn path=/branches/GSoC_2011/TcpIpDriver/; revision=52529
2011-07-03 23:24:20 +00:00
Rafal Harabien 0750da242d - Remove breakpoint added by mistake to FreeLdr
svn path=/trunk/; revision=52528
2011-07-03 23:19:59 +00:00
Rafal Harabien 9c60ad5c59 [FREELDR]
- Remove debug prints added in previous commit...

svn path=/trunk/; revision=52527
2011-07-03 23:13:09 +00:00
Rafal Harabien 8d25697873 [FREELDR]
- Fix all MSVC warnings

svn path=/trunk/; revision=52526
2011-07-03 23:01:39 +00:00
Claudiu Mihail 788969f56f [TESTS]
- commit 2 very small and simple test apps to check select functionality

svn path=/branches/GSoC_2011/TcpIpDriver/; revision=52525
2011-07-03 22:54:55 +00:00
Hervé Poussineau 56f5c1f824 [LDR] In case of unrecoverable failure, always exit
svn path=/trunk/; revision=52524
2011-07-03 21:34:52 +00:00
Hervé Poussineau efd1266b5b [LDR] Assume that lock is held only if lock method succeeded
svn path=/trunk/; revision=52523
2011-07-03 21:33:42 +00:00
Cameron Gutman 7056e2e757 [LDR]
- "Just to be sure" is no reason to overwrite a potential DLL load failure status

svn path=/trunk/; revision=52522
2011-07-03 20:16:12 +00:00
Cameron Gutman 4e60d722c9 [LDR]
- Don't overwrite the real unload status with the return value of RtlLeaveCriticalSection

svn path=/trunk/; revision=52521
2011-07-03 20:10:02 +00:00
Claudiu Mihail fa0fd3a684 [AFD]
merge r52502, r52510

[TCPIP]
merge r52501, r52511

svn path=/branches/GSoC_2011/TcpIpDriver/; revision=52520
2011-07-03 19:40:40 +00:00
Cameron Gutman df556f104f [MSAFD]
- Only shutdown the socket if it has not already been shutdown
- Fixes EINVAL messages

svn path=/trunk/; revision=52518
2011-07-03 16:24:19 +00:00
Claudiu Mihail 1b907a202d [TCPIP]
apply changes r52501 for lwIP branch

- Fix binding to an unspecified port on a connect so that it works reliably by asking the TCP library for a free port instead of assuming that one we have is free
- Fix binding to an unspecified port on a listen which previously would result in the address file not having information stored about the port number assigned
- Fix a nasty bug which resulted in us binding to an arbitrary port during a connect even when the client wanted a specific port

svn path=/branches/GSoC_2011/TcpIpDriver/; revision=52517
2011-07-03 13:34:36 +00:00
Claudiu Mihail 75014f14eb [AFD]
merge r52497
- Rewrite disconnect to work asynchronously

merge r52492
- Fix several bugs related to the FD_WRITE event
- We would not set the sendable poll state if the socket had data waiting to be sent even if there was buffer space
- We did not set the poll state after performing a send
- We did not clear the sendable poll state if we ran out of buffer space

svn path=/branches/GSoC_2011/TcpIpDriver/; revision=52516
2011-07-03 12:03:49 +00:00
Hervé Poussineau 3657f4ff79 [LDR] Fix some mis-assignations
Brought to you by WinOCM
See issue #6353 for more details.

svn path=/trunk/; revision=52515
2011-07-03 10:58:26 +00:00
Olaf Siejka afc124a8c2 [KDCOM]
Increase KdpStallScaleFactor by a factor of 10. Fixes initial delay of debug output on faster PCs with WinDBG.

svn path=/trunk/; revision=52514
2011-07-03 10:13:53 +00:00
Timo Kreuzer 9629690528 [NTOSKRNL]
- Fix KdComponentTableSize
- Make assembly instruction in KiCallUserMode MASM compatible
- silence some KD internal debug prints
The MSVC bootcd boots to desktop, but crashes with BAD_POOL_HEADER before 2nd stage setup starts.

svn path=/trunk/; revision=52513
2011-07-03 09:56:59 +00:00