Eric Pouech
1d6e2590e0
ntdll/kernel32: Pipe information.
...
- implemented ntdll.NtQueryInformationFile's FilePipeLocalInformation control code
- reimplemented kernel32.GetNamedPipeInfo on top of it
- enhance current features to make this work both on client and server handles
- now also returning the number of instances
2006-05-27 12:31:01 +02:00
Jonathan Ernst
360a3f9142
Update the address of the Free Software Foundation.
2006-05-23 14:11:13 +02:00
Alexandre Julliard
b00fb174f6
server: New scheme for cleaning up objects on server exit.
...
Objects stored in static variables can now be marked when they are
created and are automatically cleaned up on exit. This avoids having
to export a bunch of close_* functions.
2006-03-22 20:32:04 +01:00
Vitaliy Margolen
b05340a523
ntdll: Implement FSCTL_PIPE_WAIT NtFsControlFile ioctl.
...
Implement FSCTL_PIPE_WAIT NtFsControlFile ioctl.
Modify WaitNamedPipeW to use NtFsControlFile.
Replace struct overlapped with event.
2005-12-14 11:14:02 +01:00
Alexandre Julliard
1acb930db8
server: Added get_file_info implementation for named pipe and mailslot devices.
2005-12-13 12:00:11 +01:00
Alexandre Julliard
5bcd0888ef
server: Fixed refcounting in get_fd requests for named pipe and mailslot devices.
2005-12-13 11:22:28 +01:00
Alexandre Julliard
a510a7e117
server: Added access rights mapping to file objects.
2005-12-12 16:46:17 +01:00
Alexandre Julliard
28beba31d6
server: Added infrastructure for access rights mapping.
2005-12-12 14:57:40 +01:00
Alexandre Julliard
26e60d8ffc
server: Allow the named pipe device to be opened as a file object.
2005-12-12 14:30:06 +01:00
Alexandre Julliard
24560e70bb
server: Make alloc_handle use attributes instead of inherit flag.
2005-12-09 13:58:25 +01:00
Alexandre Julliard
d13095bc84
server: Let the directory code handle device names.
2005-12-05 14:52:02 +01:00
Vitaliy Margolen
babfa79436
Move named pipe objects into directory name space.
...
Change tests accordingly.
Add small test for WaitNamedPipe.
2005-12-05 13:09:35 +01:00
Vitaliy Margolen
f676bc8d85
Move event and mutex objects into directory name space.
2005-12-02 15:55:48 +01:00
Ge van Geldorp
1a1583a364
Match PSDK STATUS_* definitions.
2005-11-28 17:32:54 +01:00
Vitaliy Margolen
baffcb95d3
Add name_lookup function in object_ops.
2005-11-22 14:55:42 +00:00
Vitaliy Margolen
893987b871
Return correct error on name collision when creating new named
...
objects.
Check for correct error in affected places.
2005-11-21 16:27:03 +00:00
Alexandre Julliard
ead9b062e3
Added a struct unicode_str to encapsulate object names.
2005-11-18 16:31:18 +00:00
Vitaliy Margolen
f2686d4620
Fix error returned when opening nonexistent pipes.
2005-11-02 14:15:09 +00:00
Vitaliy Margolen
ecca104869
Fix error returned when exceeding allowed instances.
2005-11-01 21:37:30 +00:00
Vitaliy Margolen
3585f2fa77
Pass object attributes to create_named_object & find_object.
2005-10-29 12:38:23 +00:00
Vitaliy Margolen
a996000ad5
- Send whole OBJECT_ATTRIBUTES.Attributes to the server not just an
...
inherit flag.
- Pass DesiredAccess to the server when creating mailslot.
2005-10-27 18:30:37 +00:00
Eric Pouech
e21aa6a184
- now passing access rights when creating a named pipe in NTDLL
...
- reimplemented Kernel32.CreatePipe purely on top of NTDLL APIs
- anonymous pipe handles should have the SYNCHRONIZE bit set
2005-09-26 11:02:45 +00:00
Ivan Leo Puoti
f0db7ab06b
Added FSCTL_PIPE_LISTEN support.
2005-09-06 14:09:42 +00:00
Mike McCormack
e659f1e60c
Fix some gcc 4.0 warnings.
2005-08-09 10:37:50 +00:00
Mike McCormack
390bc5f52f
Don't include winbase.h when it's not necessary.
2005-06-21 09:46:15 +00:00
Mike McCormack
66e5ce3066
Remove unnecessary includes.
2005-06-20 10:35:36 +00:00
Robert Shearman
3795709344
Change code style of form "if( x )" to "if (x)" for consistency.
2005-06-10 19:54:46 +00:00
Alexandre Julliard
b9b1ea9c9f
Added a close_handle method to the object operations, and use it to
...
implement registry notifications and the strange behavior of
CloseHandle on winstation/desktop handles.
2005-06-09 15:39:52 +00:00
Robert Shearman
d681022d68
Fix a regression in the performance of named pipes by only making the
...
fd non-blocking when overlapped I/O is requested for the fd (reported
by Ivan Leo Puoti).
2005-06-09 09:46:55 +00:00
Robert Shearman
e51dd36453
Implement overlapped I/O with named pipes.
2005-06-08 19:11:46 +00:00
Robert Shearman
c516571481
- Use NULL instead of 0 for all non-handle pointers.
...
- Fix non-ANSI function declarations.
- Make a function static.
2005-05-25 18:41:09 +00:00
Eric Pouech
f479eef986
Fixed a wrong ops when creating named pipe client.
2005-05-09 09:25:45 +00:00
Mike McCormack
f92fff66a2
Implemented NtSignalAndWaitForSingleObject.
2005-04-24 17:35:52 +00:00
Eric Pouech
5a2591d96d
- moved named pipe creation to ntdll
...
- server now handles the named pipe flags as the NTDLL values (not the
KERNEL32 ones)
- named pipes in server now use the async IO mechanism for
connect/wait ops
2005-04-18 14:57:04 +00:00
Steven Edwards
5727918424
Added a check for poll.h.
2005-03-04 12:38:36 +00:00
Robert Shearman
795e9de806
Support WaitNamedPipe timeouts.
2005-02-08 12:54:23 +00:00
Alexandre Julliard
7c1cf8f009
Fixed refcount handling (waiting clients must not increase the
...
refcount of the pipe).
Converted linked lists to use the standard functions.
Small cleanups.
2005-02-03 10:48:23 +00:00
Eric Pouech
4634447d6b
- got rid of include/async.h
...
- fixed some overlapped issues in socket handling
- moved kernel32.CancelIo implementation to ntdll
2005-01-14 19:54:38 +00:00
Alexandre Julliard
6a27b48895
Fd type is no longer used, get rid of it.
2004-08-18 00:04:58 +00:00
Mike McCormack
99a6efa1af
Fix a double free in the named pipe code.
2004-07-15 18:59:58 +00:00
Alexandre Julliard
18c08d307a
Removed the get_file_info request.
2004-04-08 19:09:04 +00:00
Uwe Bonnes
9ffce00940
Pass inherit handle flag properly for CreateNamedPipe.
2004-02-24 01:06:30 +00:00
Alexandre Julliard
e37c6e18d0
Fixed header dependencies to be fully compatible with the Windows
...
headers (with help from Dimitrie O. Paun).
2003-09-05 23:08:26 +00:00
Francois Gouget
9591836ffb
'sizeof type' is best avoided as it won't always compile (e.g. 'int
...
main() {return sizeof int;}'). Use 'sizeof(type)' instead.
2003-06-18 19:45:22 +00:00
Alexandre Julliard
693bbd79b6
Make it possible to retrieve an inheritable handle in open_named_pipe
...
(spotted by Uwe Bonnes).
2003-06-14 01:31:56 +00:00
Mike McCormack
ef8b94622a
- rewrite of the named pipe code
...
- allow NtFileFlushBuffers to wait
- allow DisconnectNamedPipe to invalidate client cached fd
- fix the pipe test now that one extra test passes
2003-05-15 04:22:45 +00:00
Bill Medland
3f7c3ff76e
Fix for client accessing a named pipe after the server closes it.
2003-04-17 02:14:04 +00:00
Alexandre Julliard
088bcf9ca5
Implemented NtQueueApcThread, and changed the server APC interface to
...
always take 3 parameters.
Implemented a number of other ntdll thread functions, and use them
from the kernel ones.
2003-04-04 22:26:34 +00:00
Alexandre Julliard
580da246f5
Added an inode object to keep track of all file descriptors open for a
...
given file.
Plugged a couple of potential file descriptor leaks.
2003-03-12 22:38:14 +00:00
Alexandre Julliard
e66207ebfc
Moved all references to file descriptors out of the generic object
...
structure.
Changed the poll()-related routines to deal with file descriptors
instead of objects and integrated poll support into fd.c.
2003-02-19 00:33:32 +00:00
Alexandre Julliard
cf27a7fa3b
Changed fd operations to take a struct fd instead of a struct object.
...
Removed get_file_info function from object operations.
Added get_device_id request to avoid abusing get_file_info.
2003-02-14 20:27:09 +00:00
Alexandre Julliard
8b56deb85f
Removed direct references to the file descriptor, use the new fd
...
functions instead so that get_fd works properly.
2003-02-12 21:30:44 +00:00
Steven Edwards
037c8a1246
Porting fixes.
2003-02-11 22:27:13 +00:00
Alexandre Julliard
863637b158
Started moving functions that deal with Unix file descriptors to a
...
separate fd object. This will be needed for file locking.
2003-01-30 00:26:44 +00:00
Alexandre Julliard
526a28de51
Added support for multiple object namespaces, and a bunch functions
...
for managing linked lists.
2002-10-02 23:49:30 +00:00
Vincent Béron
9a62491660
Removed trailing whitespace.
2002-05-31 23:06:46 +00:00
Alexandre Julliard
5188574984
Renamed handle_t to obj_handle_t to avoid conflict with rpcdce.h.
2002-05-30 20:12:58 +00:00
Alexandre Julliard
5769d1de00
Better support for configure detection of missing types, added check
...
for ssize_t.
Removed a couple of no longer used portability functions.
Various portability fixes in port.h.
2002-04-26 19:05:15 +00:00
Alexandre Julliard
0799c1a780
Added LGPL standard comment, and copyright notices where necessary.
...
Global replacement of debugtools.h by wine/debug.h.
2002-03-09 23:29:33 +00:00
Marcus Meissner
93c3faef94
Add refcounting to the thread member of the pipe user.
2002-01-12 21:16:13 +00:00
Martin Wilck
88cd32b2d1
More general approach to file descriptor types and flags.
2002-01-09 20:30:51 +00:00
Mike McCormack
6f011c0847
- move async activation into the server
...
- implement async queues
2001-12-20 00:07:05 +00:00
Alexandre Julliard
9caa71eef4
Redesign of the server communication protocol to allow arbitrary sized
...
data to be exchanged.
Split request and reply structures to make backwards compatibility
easier.
Moved many console functions to dlls/kernel, added code page support,
changed a few requests to behave properly with the new protocol.
2001-11-30 18:46:42 +00:00
Mike McCormack
309ed4e1f1
Make ConnectNamedPipe work in overlapped mode.
2001-11-07 20:14:45 +00:00
Alexandre Julliard
646d621fec
Added get_file_info support to named pipes and sockets to avoid
...
breaking the get_handle_fd request.
2001-10-05 19:45:45 +00:00
Mike McCormack
f2e7ce7f6a
Implemented GetNamedPipeInfo.
2001-08-27 19:03:42 +00:00
Mike McCormack
bf55457f24
Implement WaitNamedPipe and DisconnectNamedPipe.
...
Add a state for each pipe handle in the server.
Create a socket on when the pipe is opened, not before.
2001-08-23 23:29:20 +00:00
Ove Kaaven
705e7d708b
Added STATUS_* constant for named pipes. Return STATUS_PIPE_NOT_AVAILABLE
...
when opening a named pipe if the pipe exists but no instances of it are
currently waiting for a connection.
2001-07-17 00:38:00 +00:00
Mike McCormack
de7c3003e2
Start implementing named pipes.
2001-07-10 19:16:49 +00:00