Commit Graph

1880 Commits

Author SHA1 Message Date
Alexandre Julliard ca5746ad1a server: Also exclude the top-level client rectangle for windows that have a pixel format. 2013-02-11 17:08:19 +01:00
Alexandre Julliard a74dc1a119 server: Use the monotonic time counter also on the server side. 2013-01-30 13:05:30 +01:00
Alexandre Julliard 2b95df8fbd server: Use the __NR_ names for Linux system calls. 2013-01-21 21:37:10 +01:00
André Hentschel d11e72f925 server: Add ARM64 support. 2013-01-16 12:49:20 +01:00
Alexandre Julliard 2b97a064e3 server: Use sysconf() instead of getpagesize(). 2013-01-09 12:15:25 +01:00
Alexandre Julliard 6c94d4466a server: Don't expose the desktop on window resizes. 2012-11-27 19:36:52 +01:00
Francois Gouget e326470949 server: Print the usage to stdout when invoked with --help. 2012-11-23 14:40:07 +01:00
Alexandre Julliard d2607ff6c9 user32: Force refreshing the non-client area when the window surface is changed. 2012-11-06 16:02:43 +01:00
Alexandre Julliard 29b39020f7 server: Fix propagation of the pixel format flag when the parent window is changed. 2012-10-17 18:00:55 +02:00
Marcus Meissner 3199fe147d server: Removed duplicate close of acceptfd (Coverity). 2012-10-10 10:35:38 +02:00
Alexandre Julliard d0c9d22371 server: Add a heuristic to avoid computing surface regions when no pixel format has been set. 2012-10-09 15:22:46 +02:00
Alexandre Julliard a52ebb158e server: Add a request to compute the clipping region of a window surface. 2012-10-09 15:22:27 +02:00
Alexandre Julliard 20768173ba server: Add flags in the set_window_pos request to inform the server about the window surface. 2012-10-09 15:22:14 +02:00
Alexandre Julliard 1fd55b7334 server: Get rid of the waitpid wrapper. 2012-09-24 22:27:30 +02:00
Adrian Bunk 9d5c178b24 server: Use waitpid() instead of wait4(). 2012-09-24 22:27:30 +02:00
Alexandre Julliard 84fd7de0f7 server: Don't trigger repaints on position changes for layered windows. 2012-09-13 13:47:03 +02:00
Henri Verbeet 54efd8a430 server: Only remove WM_INPUT messages from the queue if PM_REMOVE is set. 2012-09-13 10:24:05 +02:00
Henri Verbeet c6fcc0255c user32: Add rawinput keyboard support. 2012-09-12 12:47:13 +02:00
Alexandre Julliard 43d465f86a server: Ignore color-keyed windows when updating the z-order. 2012-09-11 18:12:16 +02:00
Henri Verbeet faaf3d388e user32: Add rawinput mouse support. 2012-09-11 18:06:34 +02:00
Henri Verbeet 5befb959dd user32: Implement RegisterRawInputDevices(). 2012-09-10 11:44:19 +02:00
Alexandre Julliard a76f60d14e server: Always repaint the whole non-client area if part of it is exposed. 2012-09-04 14:11:07 +02:00
Alexandre Julliard 044f790bcb winex11: Always paint to the whole window. 2012-08-30 19:02:27 +02:00
Michael Stefaniuc 794ad90982 server: Avoid TRUE:FALSE conditional expressions. 2012-08-13 11:50:16 +02:00
Alexandre Julliard 0816a04d92 server: Subtract the current update region from the valid rect when a window client area is changed. 2012-07-17 12:50:23 +02:00
Erich Hoover 93552cc3df server: STATUS_MORE_PROCESSING_REQUIRED indicates that an async operation should not send a completion. 2012-06-07 16:07:00 +02:00
Erich Hoover e7dbb212a2 server: Access the completion from the file descriptor instead of the async object. 2012-06-06 13:47:28 +02:00
Dmitry Timoshkov 94c817e311 server: Make sure that region and rectangle have the same origin before calling rect_in_region(). 2012-06-06 12:39:53 +02:00
André Hentschel 89e462b141 server: Add checks for DragonFly BSD. 2012-05-29 10:46:34 +02:00
Francois Gouget fac36c55e9 Assorted typo, spelling, wording and case fixes. 2012-05-15 16:26:43 +02:00
Dmitry Timoshkov 16b7a7f707 server: Add access mapping for IO completion objects. 2012-04-17 12:24:55 +02:00
Hans Leidekker d1b6cf9379 server: Include the Unix pid in the snapshot_next_process reply. 2012-04-16 17:49:32 +02:00
Dmitry Timoshkov 4b058e6e79 server: OpenMutex should perform a real access check instead of validating access flags.
This reverts 7b63fa658a.
2012-03-12 16:37:24 +01:00
Alexandre Julliard 9c6466ac34 server: Create some kernel notification events. 2012-03-12 10:44:02 +01:00
Vitaliy Margolen d4e78d61e1 server: Add sessions directory and 0 session symlink. 2012-02-17 18:06:52 +01:00
Alexandre Julliard 36c76dcc24 winex11: Update only the key state on KeymapNotify without sending fake key events. 2012-02-02 17:19:34 +01:00
Dmitry Timoshkov 29b91206a8 server: Store correct protection for an image mapping. 2012-01-24 18:10:31 +01:00
Alexandre Julliard 6d2063f41b ntdll: Set the thread exit code when a thread is killed inside a wait. 2012-01-16 14:04:39 +01:00
Alexandre Julliard 02442b52a4 user32: Return the cursor position in send_hardware_message and use it to update the driver's position. 2012-01-09 12:14:36 +01:00
Francois Gouget c7cb3e6cb2 configure: Use errno.h instead of the non-standard sys/errno.h header. 2011-12-15 17:46:38 +01:00
Alexandre Julliard 5a30e31806 server: Optionally return the global key state when queueing a hardware message. 2011-12-15 14:46:53 +01:00
Alexandre Julliard 3acc2068a0 server: Cope with stdio file descriptors being closed on startup. 2011-11-15 11:39:42 +01:00
Bernhard Loos 507d929051 ntoskrnl: Correctly implement PsGetCurrentThread/ProcessId. 2011-10-28 13:04:00 +02:00
Bernhard Loos c368df4865 server: PIPE_TYPE_BYTE | PIPE_READMODE_MESSAGE is invalid for named pipes. 2011-10-13 19:57:19 +02:00
Alexander Morozov d0451f6b3f server: Fix overlapping shared and exclusive locks support. 2011-10-12 17:10:54 +02:00
Bernhard Loos e7ec00d22c server: If a debugger is attached to a process, child processes shouldn't get debugged. 2011-10-10 13:41:24 +02:00
Charles Davis a51aaf898c server: Use syscall(2) instead of inline assembly on Mac OS, too. 2011-10-10 13:29:59 +02:00
Bernhard Loos 07b681e04a ntdll: Implement the NamedPipeConfiguration value for the FilePipeLocalInformation class of NtQueryInformationFile. 2011-10-08 19:56:08 +02:00
Bernhard Loos 9034e694a3 server: Correctly implement permission checking for named pipes. 2011-10-08 19:55:35 +02:00
Bernhard Loos e4c2a6d1cd server: It's possible to call NtQueryInformationFile on a pipe if it was opened with access 0. 2011-10-08 19:55:19 +02:00
Bernhard Loos bded698462 server: Sharing 0 is not allowed for named pipes. 2011-09-27 16:54:00 +02:00
Bernhard Loos 5098b13177 server: Only the sharing parameter of two instances of the same pipe have to match. 2011-09-27 16:54:00 +02:00
Bernhard Loos 039bacb0c9 server: Store sharing state for named pipes. 2011-09-27 16:54:00 +02:00
Bernhard Loos 527a985a3d server: Correct mapping of mutex access rights. 2011-09-23 13:05:37 +02:00
Bernhard Loos 0d36c27e3b server: ReleaseMutex doesn't need any access rights. 2011-09-23 13:05:33 +02:00
Bernhard Loos 7b63fa658a server: Certain access flags are illegal for OpenMutex. 2011-09-23 13:05:31 +02:00
Marcus Meissner df92979b39 server: Removed NULL check after usage (Coverity). 2011-09-23 12:38:54 +02:00
Henri Verbeet e7728c4132 server: Try writing to /proc/<pid>/mem in write_process_memory(). 2011-09-22 09:36:29 +02:00
Michael Stefaniuc 835171c2e0 server: Remove casts to the type of the casted expression. 2011-09-21 14:41:01 +02:00
Nikolay Sivov 573db9ef63 ntdll: While requesting TokenGroups calculate required user buffer size in server. 2011-08-23 16:53:54 +02:00
Francois Gouget ff8f6e8662 user32: When destroying a window, preserve the first WM_QUIT message that was posted to it. 2011-08-23 11:50:59 +02:00
Nikolay Sivov 7381858e98 include: Fix definition name. 2011-08-03 14:15:48 +02:00
Bernhard Loos bf3c2a06f5 server: Check for STATUS_OBJECT_TYPE_MISMATCH before STATUS_ACCESS_DENIED in get_handle_obj. 2011-07-20 19:23:04 +02:00
Hans Leidekker 3321c45038 server: Include groups in file mode calculation if the security descriptor matches the current user. 2011-07-19 14:04:30 +02:00
Grazvydas Ignotas 2cc56f379c server: Set debug enable bits briefly to commit the addresses to kernel. 2011-07-18 16:23:30 +02:00
Grazvydas Ignotas fa179b1c26 server: Set RW and LEN bits of DR7 before setting DR0-DR3. 2011-07-18 16:23:30 +02:00
Vincent Povirk 79556aeab7 server: Implement QS_HOTKEY. 2011-07-06 19:43:26 +02:00
André Hentschel c7becc3015 server: Remove dead initializations (clang). 2011-07-06 11:20:37 +02:00
Alexandre Julliard b00d60f125 server: Only check read/write-specific access bits for file sharing access checks. 2011-07-01 18:33:33 +02:00
Marcus Meissner 67320c448b server: Do not promote lparam to signed int (Coverity). 2011-06-28 11:57:51 -05:00
Alexandre Julliard 6b0d9ff1cd server: Allow setting a zero-size clip rectangle. 2011-06-21 15:04:24 +02:00
Vincent Povirk cc0ea69867 server: Post WM_HOTKEY when a hotkey is pressed. 2011-06-21 14:51:14 +02:00
Vincent Povirk 4c83138f72 server: Implement RegisterHotKey/UnregisterHotKey. 2011-06-21 14:51:08 +02:00
Alexandre Julliard f6b0ce3c44 server: Don't queue low-level hooks to a hung queue. 2011-06-17 11:54:43 +02:00
Alexandre Julliard 457a847849 server: Only avoid running low-level hooks in processes currently suspended by a debugger. 2011-06-17 11:54:29 +02:00
Alexandre Julliard a0c0878805 server: Allow creating a process without any parent or startup info. 2011-06-16 22:45:45 +02:00
Marcus Meissner 27c9a61e15 server: Remove superflous NULL check (Coverity). 2011-06-14 15:27:13 +02:00
Alexandre Julliard be23f5a7a6 server: Grab the current pointer to avoid referencing it after it could become invalid. 2011-05-23 19:51:00 +02:00
Alexandre Julliard 055c883ee0 server: Fix the status code for get/set_thread_context on a terminated thread. 2011-05-06 14:23:25 +02:00
Alexandre Julliard 5dc9c73c31 server: Check for the need to suspend a thread again once it leaves an exception or suspend block. 2011-05-06 12:49:57 +02:00
Alexandre Julliard 90982480f0 server: Add support for suspending the thread directly in the get/set_thread_context requests. 2011-05-06 12:40:52 +02:00
Alexandre Julliard 45075b2f9c server: Add separate requests for getting/setting the thread context during suspend. 2011-05-06 12:25:34 +02:00
Alexandre Julliard f2b34dddfb server: Set the fd user when duplicating a mapping file descriptor into a new file. 2011-04-22 17:51:29 +02:00
Alexandre Julliard 8aa1a26886 user32: Pass a NULL rectangle in the ClipCursor entry point when clipping is reset because of focus change. 2011-04-22 17:51:28 +02:00
Alexandre Julliard abe5440e32 server: Also return the previous cursor position in the set_cursor request. 2011-04-20 20:29:16 +02:00
André Hentschel 417e926a80 server: Remove Alpha support. 2011-04-20 13:10:06 +02:00
Alexandre Julliard 200f8d958f server: Reuse existing file descriptor objects for duplicate file mappings. 2011-04-19 18:29:24 +02:00
Alexandre Julliard 1b868f4967 server: Fix sharing parameters for debug event files, and don't fail if the file can't be opened. 2011-04-19 10:29:44 +02:00
Alexandre Julliard 900352bc6b server: Store a mapping instead of a file for process dlls. 2011-04-18 14:45:32 +02:00
Alexandre Julliard eb2fe39d63 server: Add support for opening a new file handle from a mapping object. 2011-04-18 14:27:44 +02:00
Alexandre Julliard 35431ed0e7 server: Check sharing options when duplicating an fd object. 2011-04-18 13:41:32 +02:00
Alexandre Julliard 500d77245c server: Retrieve the Unix thread affinity for the initial thread. 2011-04-15 10:07:52 +02:00
Alexandre Julliard 4fd8bab99e server: Inherit the process affinity from the parent process. 2011-04-14 19:57:52 +02:00
Alexandre Julliard 3909f51122 server: Don't queue a hardware WM_MOUSEMOVE if the position hasn't changed. 2011-04-06 21:07:04 +02:00
Alexandre Julliard 34b8c639ce server: Warp the mouse inside the clipping rectangle when it's set. 2011-04-06 20:36:36 +02:00
Alexandre Julliard 39bac05188 server: Queue a WM_MOUSEMOVE message when the cursor position is explicitly changed. 2011-04-06 20:29:38 +02:00
Alexandre Julliard 9c8bbcd1cd server: Fix a memory leak. 2011-04-06 20:00:40 +02:00
Alexandre Julliard 21e86f60ec server: Post a message to the desktop window when the cursor clip rectangle changes. 2011-04-05 13:36:57 +02:00
Alexandre Julliard 85358b10f3 server: Add a more general way of posting messages to the desktop window. 2011-04-05 13:36:56 +02:00
Alexandre Julliard 437a838470 server: Don't run low-level hooks in debugged processes. 2011-04-05 13:36:56 +02:00
Alexandre Julliard 6576703fac server: Return the time of last change along with the current cursor position. 2011-03-31 20:15:56 +02:00
Alexandre Julliard c64c36f573 server: Store all desktop cursor information in a separate structure. 2011-03-31 19:54:22 +02:00
Dmitry Timoshkov f834d23197 server: FILE_OVERWRITE and FILE_OVERWRITE_IF need the FILE_WRITE_ATTRIBUTES permission. 2011-03-30 15:10:20 +02:00
Alexandre Julliard 2b96875b6a server: Reset the cursor clip rectangle when the foreground thread changes. 2011-03-30 13:28:04 +02:00
Dmitry Timoshkov 1b5602e59c server: Add excute permission when read file access is allowed. 2011-03-28 17:16:01 +02:00
Dmitry Timoshkov da077956e1 server: Explicitly add FILE_DELETE_CHILD permission when file write access is allowed. 2011-03-16 16:31:56 +01:00
Alexandre Julliard 0b8571e3dc server: Fix checking of X button flags when updating the input key state. 2011-03-07 23:48:03 +01:00
Alexandre Julliard 34efca05c9 server: Fix the contents of the mouse data for the low-level hook. 2011-03-07 11:07:35 +01:00
Alexandre Julliard c7efa293f0 server: Invoke low-level hardware hooks directly from the server side. 2011-03-02 21:26:13 +01:00
Hans Leidekker c65bcce589 server: Map the Unix user id to a local user SID instead of the interactive SID. 2011-03-02 12:50:59 +01:00
Alexandre Julliard 0f18d2bb09 server: Set the message code for mouse input on the server side. 2011-03-02 11:59:38 +01:00
Alexandre Julliard 9731d44921 server: Set the message code for keyboard input on the server side. 2011-03-02 11:34:59 +01:00
Alexandre Julliard 02e30f5f77 server: Pass the original hardware input data to the server and set the message parameters on the server side. 2011-03-02 11:34:15 +01:00
Alexandre Julliard bc4afb0786 server: Don't pass a thread id to send_hardware_message, determine it from the window. 2011-03-01 13:21:58 +01:00
Alexandre Julliard 22468ec65c server: Maintain the "set since last time" bit for the global keystate. 2011-02-28 22:28:21 +01:00
Alexandre Julliard b9e4b5a28c server: Fill the key state in mouse events from the server-side state. 2011-02-28 21:37:09 +01:00
Marcus Meissner 7f602db55b server: Avoid shadowing a global variable. 2011-02-28 11:07:03 +01:00
Alexandre Julliard e7a032c131 server: Work around Mac OS not being able to set global breakpoint flags. 2011-02-26 12:41:36 +01:00
Alexandre Julliard 06b78feade server: Store the global key state in the server. 2011-02-25 13:50:25 +01:00
Alexandre Julliard 02e8174067 server: Store the cursor clip rectangle in the server. 2011-02-25 13:50:19 +01:00
Alexandre Julliard 183c41b49a server: Store the global cursor position in the server. 2011-02-25 11:25:15 +01:00
Alexandre Julliard ac4aac747c server: Make the foreground thread input per-desktop instead of global. 2011-02-25 11:19:46 +01:00
Alexandre Julliard f0396489e6 server: Increment the usage count of the global table also when starting a local hook. 2011-02-24 12:15:38 +01:00
Alexandre Julliard 8dbd06a1f8 server: Create anonymous file mappings in the config directory if the server directory is mounted noexec. 2011-01-28 17:41:26 +01:00
Andrew Nguyen ed657182ee server: Filter the WOW64 registry access flags before performing the access check. 2011-01-24 16:04:18 +01:00
Mike Kaplinskiy f58c709b5f server: Fix connect failures on newer kernels. 2011-01-24 14:43:28 +01:00
Alexandre Julliard b3882bb339 server: Add symbolic names in filesystem change actions traces. 2011-01-19 14:20:40 +01:00
Piotr Caban be5a757c7a server: Don't report rename events when file is moved between directories. 2011-01-19 14:13:58 +01:00
Piotr Caban b614a15328 server: Return multiple events in read_changes. 2011-01-19 14:13:33 +01:00
Eric Pouech 2a219b948c kernel32: Added support for insert/overwrite modes while editing a line. 2011-01-19 12:57:46 +01:00
Austin English 599afa06b7 server: Add missing checks for FreeBSD_kernel. 2011-01-17 14:26:24 +01:00
Alexandre Julliard 185f637080 server: Use the tgkill system call on all Linux platforms. 2010-12-27 12:07:16 +01:00
Alexandre Julliard 0ae3816264 server: Use the syscall function instead of inline assembly. 2010-12-23 16:10:12 +01:00
Piotr Caban f4e64a442f server: Handle more inotify mask values. 2010-12-17 13:26:03 +01:00
Alexandre Julliard 15ccabc9a8 makefiles: Add common rules for installing the main man page. 2010-12-05 16:17:58 +01:00
Francois Gouget c4c03180b0 server: Make sock_check_pollhup() more reliable on Solaris. 2010-11-29 19:43:35 +01:00
Eric Pouech 91e3a40e41 server: Removed the no longer used bare parameter out of get_console_mode request. 2010-11-08 13:30:25 +01:00
Alexandre Julliard d771f4d17c server: Return an error in get_handle_unix_name for objects that don't have a file name.
This way we fall back to retrieving the Win32 name.
2010-10-19 17:03:40 +02:00
Vladimir Panteleev 824c5089d2 user32: Update last active popup for all parents. 2010-10-18 19:47:58 +02:00
Alexandre Julliard fcd685977d server: Valid rects are in parent coordinates. 2010-10-07 15:58:10 +02:00
Alexandre Julliard d076dfa8e8 server: Update child window positions when resizing a mirrored parent. 2010-10-05 11:01:21 +02:00
Austin English c99609a5a0 wineserver: Return the version information in the same format as wine --version. 2010-10-01 14:22:16 +02:00
Alexandre Julliard 179715251d server: Make the fd passing code slightly more portable. 2010-09-30 11:53:07 +02:00
Alexandre Julliard 6ee4521886 server: Pass the rectangle in client coordinates for update_window_zorder. 2010-09-27 21:12:49 +02:00
Alexandre Julliard d56ac06260 server: Mirror the window region for RTL windows in get/set_window_region and redraw_window. 2010-09-27 21:07:11 +02:00
Alexandre Julliard bc20ff50b6 server: Mirror the rectangles for RTL windows in set_window_pos. 2010-09-23 17:50:10 +02:00
Alexandre Julliard 3f026cafa5 user32: Add support for RTL window layouts in WIN_GetRectangles. 2010-09-22 20:28:20 +02:00
Alexandre Julliard 5702324b37 user32: Add support for RTL window layouts in MapWindowPoints. 2010-09-22 20:27:52 +02:00
Eric Pouech 04607ca632 server: Fix console creation logic. 2010-09-22 12:43:34 +02:00
André Hentschel ccaeb3ed83 server: Add ARM support. 2010-09-20 12:59:53 +02:00
Alexandre Julliard 81b8ee863e makefiles: Add a standard header for all makefiles to replace the common variable initializations. 2010-09-19 12:36:48 +02:00
Alexandre Julliard 1cb09660ce server: Fix a couple of leaks in the new console code. 2010-09-19 12:27:12 +02:00
Eric Pouech 687b3dc25c server: Ensure we set proper errors when getting a NULL fd out of a handle. 2010-09-18 13:03:07 +02:00
Eric Pouech a2322e3735 kernel32: Fixed a couple of cases where the console was not reset in cooked mode after a bare console has been created. 2010-09-13 14:45:18 -05:00
Alexandre Julliard 7295b6746d user32: Add support for fetching window rectangles relative to various origins. 2010-09-07 14:31:30 +02:00
Gerald Pfeifer 87624c2c21 server: Remove pollev from set_socket_event. 2010-09-06 16:13:22 +02:00
Eric Pouech daaee9e50f server: Properly return the errors for bare console objects. 2010-09-01 14:01:03 +02:00
Eric Pouech 2f7af56d41 server: Simplify the wineconsole event notification code. 2010-09-01 14:01:02 +02:00
Eric Pouech 4fdcdefccf server: Report in get_console_mode request whether it's a bare console or not. 2010-09-01 14:01:02 +02:00
Eric Pouech 6f32644aa0 server: Allow a screen buffer to be attached to a given fd (for bare consoles). 2010-09-01 14:01:02 +02:00
Eric Pouech b39a8d9ea2 server: Enhanced the console input object so that it doesn't require a wineconsole to be running. 2010-09-01 14:01:02 +02:00
Mike Kaplinskiy 333313aa2b server: Allow queuing async reads on listening sockets. 2010-08-31 14:23:49 +02:00
Mike Kaplinskiy ae5ad61fa8 server: Add accept_into_socket to accept into an initialized socket. 2010-08-31 14:23:49 +02:00
Mike Kaplinskiy 92b83ddffb server: Don't cache sockets until they are pollable. 2010-08-31 14:23:49 +02:00
Eric Pouech 1f25534628 server: Streamline a bit the console allocation code. 2010-08-30 17:52:11 +02:00
Eric Pouech 465f3d1a85 server: Use generic file access rights (inside of console specific ones) for console management. 2010-08-30 17:51:32 +02:00
Eric Pouech c1d35ba540 server: Fix method name in comments for fd_ops. 2010-08-30 17:51:05 +02:00
Alexandre Julliard 350c0caba0 server: Always free the process handle table even if the process didn't start. 2010-08-24 12:10:51 +02:00
Alexandre Julliard 3557b9818c server: Avoid a potential server crash when a thread dies on startup. 2010-08-23 19:59:57 +02:00
Alexandre Julliard a2ca2ebd50 server: Change the removable fd flag to a cacheable flag to make it possible for fd users to set it dynamically. 2010-08-23 17:09:45 +02:00
Dmitry Timoshkov dfe6ae58af user32: Protect from setting as a window owner one of its successors. 2010-08-04 17:35:22 +02:00
Mike Kaplinskiy fae0b6fa63 ws2_32: Don't set FD_READ/FD_WRITE before the connection is complete. 2010-08-03 12:00:48 +02:00
Mike Kaplinskiy a6203f8b53 server: Fix some comments.
Apparently windows reports only currently valid events for WSAEnumNetworkEvents.
2010-07-28 16:28:27 +02:00
Mike Kaplinskiy 93db86a7e0 server: Don't delay events, we simply shouldn't send them in the first place. 2010-07-28 16:28:27 +02:00
Mike Kaplinskiy 0b251c08f2 server: Consume events triggered. 2010-07-28 16:28:26 +02:00
Alexandre Julliard 10b6d6ba4d server: Use tgkill to send signals on x86_64 too. 2010-07-28 16:28:26 +02:00
Michael Stefaniuc 5c8b44cd24 server: Simplify tkill() and remove unreachable code (Smatch). 2010-07-28 16:28:23 +02:00
Maarten Lankhorst c054b5f86d wineserver: Use syscall instead of int $0x80. 2010-07-22 10:24:45 +02:00
Alexandre Julliard 1a79912a10 server: Try to use /proc/pid/mem to read process memory since it should be faster. 2010-07-21 13:23:58 +02:00
Mike Kaplinskiy 8d9fbe59b3 server: Forward the correct error to asyncs. 2010-07-20 14:40:31 +02:00
Mike Kaplinskiy be230adbb7 server: In case of hangup/error, wake up all asyncs that can no longer be completed. 2010-07-20 14:40:31 +02:00
Mike Kaplinskiy 394a142237 server: Propagate error from recv. 2010-07-20 14:40:31 +02:00
Mike Kaplinskiy 75c7c63886 server: Move signaling FD_* events to a separate function. 2010-07-20 14:40:31 +02:00
Alexandre Julliard 4c1f36cb68 server: Return the total length of the target in query_symlink. 2010-06-30 16:11:03 +02:00
Dmitry Timoshkov 66e981ec8d server: Make layered windows transparent for mouse messages. 2010-06-11 14:16:03 +02:00
Hans Leidekker 0a4984280f server: Map EHOSTUNREACH to STATUS_HOST_UNREACHABLE. 2010-05-25 13:29:07 +02:00
Andrey Turkin 85cc2c13f6 server: Connect named pipe synchronously when overlapped param is NULL. 2010-05-24 12:39:35 +02:00
Mike Kaplinskiy ee5ee5c538 server: Move async activation into separate function. 2010-05-20 16:48:37 +02:00
Mike Kaplinskiy ac12c67f40 server: Don't poll for events when there are async operations queued. 2010-05-19 16:57:59 +02:00
Mike Kaplinskiy 42debac149 server: Move socket async activation to sock_poll_event. 2010-05-17 14:41:33 +02:00
Alexandre Julliard 5532927ed3 server: Make sure a thread doesn't get freed while it's processing a request. 2010-05-16 12:34:28 +02:00
Mike Kaplinskiy 4f9e09ea57 server: Get rid of sock_try_event.
We *might* need to ignore POLLERR messages for UDP sockets, as the
condition is actually temporary and sock_try_event was hiding this.
2010-05-14 11:47:26 +02:00
Mike Kaplinskiy d03fe9d4ec server: Always treat POLLHUP as a hangup, just special case checking TCP sockets. 2010-05-14 11:45:44 +02:00
Mike Kaplinskiy 3aa93e11ad server: Use a less hackish approach to not POLLIN when we have a hung up socket. 2010-05-13 11:54:27 +02:00
Mike Kaplinskiy 535f878e3d server: Keep polling sockets after we got a 0 recv, but not for POLLIN. 2010-05-13 11:53:31 +02:00
Mike Kaplinskiy f928580ac3 server: Set FD_READ in only 1 place (cleanup). 2010-05-13 11:51:34 +02:00
Alexandre Julliard 5ee89aad68 winex11: Update the cursor also for events ignored by a hook. 2010-05-12 14:13:15 +02:00
Alexandre Julliard c545982472 server: Return the cursor information for a thread input, and use it for GetCursorInfo. 2010-05-11 11:27:03 +02:00
Alexandre Julliard ac69fcb14f server: Check that the prefix type can support the client architecture. 2010-05-04 20:27:20 +02:00
Alexandre Julliard bbc03d5172 server: Use the prefix architecture instead of the server one to check for WoW processes. 2010-05-04 20:26:53 +02:00
Alexandre Julliard 58791c9acd server: Store the prefix 32/64 architecture in the registry files. 2010-05-04 20:26:04 +02:00
Alexandre Julliard cd28e2be7c server: Return the current cursor when queuing a hardware message. 2010-04-21 11:07:31 +02:00
Alexandre Julliard 3044d734b1 server: Fix structure padding for requests that have a reply. 2010-04-20 21:25:38 +02:00
Eric Pouech 1298f2233f server: Fix write_process_memory on Wow64. 2010-04-20 11:17:03 +02:00
Frédéric Delanoy 2340118316 wineserver: Fix French manpage. 2010-04-13 11:43:19 +02:00
Frédéric Delanoy db7928c385 manpages: Fix formatting errors. 2010-04-09 11:47:05 +02:00
Eric Pouech 9f49c6a05f server: Correctly set the DR0..7 registers on Linux for x86_64 architecture. 2010-04-08 12:28:25 +02:00
André Hentschel d5b28032ef server: Add German translation of the manpage. 2010-04-05 11:36:26 +02:00
Alexandre Julliard 6ebc627996 server: Disallow all operations on deleted registry keys. 2010-04-02 15:22:31 +02:00
Alexandre Julliard 935cc7987d server: Update the registry key and value name length limits to the now documented values. 2010-04-02 11:48:50 +02:00
Alexandre Julliard 45e0e3df47 server: Update trace for new error codes. 2010-04-01 20:30:49 +02:00
Alexandre Julliard 27f2a35742 server: Fix 64-bit alignment of the context structure. 2010-04-01 19:56:09 +02:00
Alexandre Julliard 7d1d002d4c server: Set a proper error code when dup_fd_object fails. 2010-04-01 18:12:58 +02:00
Alexandre Julliard 0ea2806c3f server: Don't set the Wow64 flag on a Wow6432Node since it's already a 32-bit node. 2010-04-01 18:12:42 +02:00
Mikhail Maroukhine 0d7fef63ea server: Fix compiler warning with flag -Wcast-qual. 2010-03-29 12:11:53 +02:00
Mike Kaplinskiy 798c9e5161 ws2_32: Use ntstatus in overlapped functions. 2010-03-23 12:35:56 +01:00
Alexandre Julliard 8159d4eb99 server: Add support for storing the cursor and show count in the thread input structure. 2010-03-22 17:52:23 +01:00
Alexandre Julliard 5efe996c6a server: Add a helper function to change a queue thread input. 2010-03-22 17:48:22 +01:00
Francois Gouget bc8d21b5d7 server: Don't include winsock.h to avoid creating a dependency on generated headers.
The dependency does not really exist thanks to various #ifdefs, but
makedep does not know that and records it which causes a build failure.
2010-03-19 12:27:45 +01:00
Alexandre Julliard bef5645eb1 makefiles: Remove the no longer needed explicit separators for dependencies. 2010-03-16 13:28:19 +01:00
Henri Verbeet f0a5045254 ntdll: Improve support for the ProcessDebugPort info class in NtQueryInformationProcess(). 2010-03-15 15:56:42 +01:00
Henri Verbeet 6c0ecd0955 server: Debugging our own process is disallowed. 2010-03-15 15:55:08 +01:00
Henri Verbeet 1970fb35d4 server: Allow the debugger to be debugged. 2010-03-05 13:21:22 +01:00
Alexandre Julliard b1c0441fac server: Fix a typo in the context tracing. 2010-03-05 12:25:12 +01:00
Alexandre Julliard 178cd20e28 server: Add support for Wow64 sharing of the HKLM\Software\Classes key. 2010-03-04 21:48:55 +01:00
Alexandre Julliard 606cc06148 server: Add a helper function for the common functionality between open_key and create_key. 2010-03-04 20:46:42 +01:00
Alexandre Julliard b0760fc2e9 server: Set the idle event when PeekMessage is called with -1 as window filter. 2010-03-03 13:20:53 +01:00
Alexandre Julliard 4d33d4982f user32: Pass HWND_BOTTOM unmodified to the server in PeekMessage. 2010-03-03 13:20:26 +01:00
Alexandre Julliard ac08b038f0 server: Initial support for Wow64 registry redirection. 2010-03-02 12:03:17 +01:00
Alexandre Julliard 8eca1da43c server: Make the standard registry key creation non-recursive. 2010-03-01 14:23:39 +01:00
Alexandre Julliard 22de1f43d9 server: Add a separate function for internal registry key creation. 2010-03-01 14:14:18 +01:00
XueFeng Chang 4bc7c59f44 server: Check create_event return value in console creation. 2010-02-23 12:09:25 +01:00
Alexandre Julliard adf9dcd6a7 user32: Fix Z-order handling of windows that have a top-most owner. 2010-02-19 13:05:08 +01:00
Alexandre Julliard 9c87c88837 server: Fix tracing of invalid ACLs. 2010-02-18 12:57:03 +01:00
Alexandre Julliard b5d4289d22 server: Save and load registry symlinks to/from disk files. 2010-02-16 12:26:44 +01:00
Alexandre Julliard 2a378676ef server: Save and load the registry class names to/from disk files. 2010-02-16 12:26:15 +01:00
Alexandre Julliard b139b935c4 server: Implement registry symlinks. 2010-02-15 21:07:01 +01:00
Alexandre Julliard 9ce56b2729 server: Set the initial thread affinity from the process. 2010-02-02 16:12:01 +01:00
Alexandre Julliard 2f3fa8596b server: Allow changing a thread affinity before it is initialized. 2010-02-02 15:58:02 +01:00
Alexandre Julliard 349eba9e09 server: Make terminate_process more robust against recursive calls for the same process. 2010-02-02 11:47:06 +01:00
Rob Shearman f12f8503a3 server: Fix symbol was not declared and using plain integer as NULL pointer sparse warnings. 2010-01-22 12:18:37 +01:00
Mike Kaplinskiy 8e669d9a61 server: Activate pending asyncs on a hangup/error. 2010-01-19 15:03:57 +01:00
Peter Dons Tychsen d21c131fb5 user32: Do not allow a change of capture if the currently capture window is a menu unless explicitly specified. 2010-01-14 09:04:55 -06:00
Alexandre Julliard 658dae988d server: Add support for returning the object name in NtQueryObject. 2010-01-08 13:01:50 +01:00
Alexandre Julliard b824fe05f4 server: Don't dump more than 1024 bytes in a trace. 2010-01-07 20:27:17 +01:00
Alexandre Julliard 7265e89226 server: Set the idle event when retrieving a timer message. 2009-12-16 18:18:07 +01:00
Alexandre Julliard 92e704edc5 server: Don't set the idle event when waiting for a message reply. 2009-12-16 18:06:38 +01:00
Alexandre Julliard 7d4e28480d server: Any thread can set the idle event, don't treat the first one differently. 2009-12-16 18:06:32 +01:00
Alexandre Julliard b57cc5561b server: Don't reset the idle event when the client stops waiting. 2009-12-16 18:06:14 +01:00
Alexandre Julliard d1dc48d8dc server: Don't set the idle event when a queue is destroyed, instead return success in WaitForInputIdle on process exit. 2009-12-16 18:00:34 +01:00
Alexandre Julliard 80e844f713 server: Simplify computation of file modes from the security descriptor. 2009-12-11 17:47:30 +01:00
Ben Peddell b419df1de4 server: Include user groups in file mode calculation when user is file owner. 2009-12-11 17:47:30 +01:00
Paul Chitescu 923524951a server: Only check if permission bits changed before calling fchmod(). 2009-12-08 17:42:32 +01:00
Alexandre Julliard 151446a2a6 server: Improve parameter checks when opening a directory. 2009-12-08 12:18:44 +01:00
Alexandre Julliard 42806f32e9 server: Add support for opening files from a specified root directory. 2009-12-01 17:38:24 +01:00
Alexandre Julliard e4faa12900 server: Make sure that last error doesn't get set during thread cleanup. 2009-12-01 15:10:23 +01:00
Alexandre Julliard 60efdd55ea server: Don't set last error in close_handle(), return the error code instead. 2009-12-01 13:59:41 +01:00
Alexandre Julliard 1a6c472115 server: Don't set last error in get_handle(), move that into the callers. 2009-12-01 13:49:43 +01:00
Paul Chitescu 51000c171b wineserver: Do not uselessly set the KEY_DIRTY flag on registry keys when loading from file. 2009-11-24 15:53:37 +01:00
Albert Lee 01b972d639 server: Support event ports on Solaris. 2009-11-24 15:53:37 +01:00
Alexandre Julliard 181b3cf07f server: Implement the file sharing check for delete on close with an existing image mapping. 2009-11-23 17:29:22 +01:00
Alexandre Julliard 923d582f07 server: Implement the file sharing check when truncating a file that has an existing mapping. 2009-11-23 17:24:45 +01:00
Alexandre Julliard fd504b6289 server: Implement the special file sharing rules for memory mappings. 2009-11-23 17:10:28 +01:00
Alexandre Julliard 028bca4cc5 server: Don't create a file object for anonymous mappings. 2009-11-23 16:30:01 +01:00
Alexandre Julliard 62eda39fc1 server: Moved the create_temp_file function to mapping.c. 2009-11-23 16:30:00 +01:00
Alexandre Julliard 5f808f03e1 server: Store a duplicate of the file descriptor for file mappings. 2009-11-23 16:30:00 +01:00
Alexandre Julliard 0f4068ac6f server: Use the file descriptor instead of the file object where possible in memory mappings. 2009-11-23 16:29:52 +01:00
Alexandre Julliard d57692d86b server: Also store a file descriptor object for mappings. 2009-11-23 15:59:37 +01:00
Alexandre Julliard 78d211b3bd server: Move the functions to extend file to mapping.c since it's the only user. 2009-11-23 15:58:25 +01:00
Alexandre Julliard a764fe8921 server: Use the correct thread id to set affinity. 2009-11-20 11:44:54 +01:00
Alexandre Julliard 72ba00fffe server: Only require REG_OPTION_VOLATILE when creating a new key. 2009-11-20 11:39:55 +01:00
Rob Shearman bd56916f90 server: Extend get_token_user server call to also retrieve SIDs for the token's owner or primary group. 2009-11-17 15:14:54 +01:00
Henri Verbeet 27705d51e1 server: Store the Unix name in the fd. 2009-11-12 15:31:38 +01:00
Andrey Turkin 5116dca8e1 server: Open mem file for write when writing memory. 2009-10-22 16:23:01 +02:00
Alexandre Julliard 538b24747c server: Free client-side user handles at process exit. 2009-10-15 17:56:04 +02:00
Alexandre Julliard 9018e13c5e server: Add support for allocating purely client-side user handles. 2009-10-12 17:07:04 +02:00
Andrey Turkin 3eaecf0476 kernel32: Always use ANSI version of OutputDebugString. 2009-10-06 12:03:35 +02:00
Michael Stefaniuc 0eed4405de server: A signed 1-bit bitfield doesn't make much sense; use unsigned. 2009-10-01 11:34:42 +02:00
Juan Lang bfb4578356 server: A thread's affinity is restricted to the process affinity. 2009-10-01 11:33:33 +02:00
Juan Lang 474b2e4bfb server: Use kernel support for thread affinity when available. 2009-09-30 14:34:32 +02:00
Juan Lang 24036fe13a server: Setting a process's affinity sets all of its threads' affinities too. 2009-09-30 14:34:32 +02:00
Alexandre Julliard a30778b34a server: Disable large files for procfs on Solaris. 2009-09-01 17:39:51 +02:00
Alexandre Julliard b8ae3f073b ntdll: Fix handling of the duplicate MxCsr entry in the x86_64 context. 2009-08-27 16:49:53 +02:00
Alexandre Julliard da8acbc47d server: Define an architecture-independent structure for process startup info. 2009-08-21 20:00:12 +02:00
Mike Kaplinskiy b05774ee7e server: Change cancel_async to take an optional iosb and only_thread. 2009-08-18 12:26:30 +02:00
Alexandre Julliard da1784bb9e server: Don't use the cached file mode when setting the security descriptor. 2009-08-17 17:26:51 +02:00
Alexandre Julliard 74a63029c7 server: Properly initialize mode and uid for file and directory objects. 2009-08-17 17:18:54 +02:00
Michael Karcher a0eb2ed413 server: Don't report LOAD_DLL debug event for exe module. 2009-08-17 16:44:14 +02:00
Alexandre Julliard 95d3a722ab server: Add support for image mappings for both 32- and 64-bit PE formats. 2009-08-12 12:53:16 +02:00
Andrew Nguyen 270179a78f server: Remap the EROFS errno value to STATUS_ACCESS_DENIED. 2009-07-13 12:25:41 +02:00
Alexandre Julliard 6056e8a52b server: Return the process CPU in the get_process_info request. 2009-07-07 11:37:47 +02:00
Alexandre Julliard 61a70360e6 server: Use sys/inotify.h if it exists instead of hardcoding the system calls. 2009-06-26 15:45:03 +02:00
Alexandre Julliard 034c6c3e58 server: The ptrace interfaces uses longs, not ints. 2009-06-18 15:17:26 +02:00
Alexandre Julliard fd78e6e3a5 server: Restart at the head of the wait queue when we woke a thread, since this can modify the queue. 2009-06-13 12:20:49 +02:00
Dmitry Timoshkov acb05666bb user32: Add a test for PeekMessage((HWND)-1), make it pass under Wine. 2009-06-12 17:33:16 +02:00
Alexandre Julliard 7a344c14af server: Avoid a crash when trying to wait on a disconnected pipe client. 2009-06-09 17:01:13 +02:00
Alexandre Julliard 5dcf157b5b server: Hide a window before destroying it if it was still visible. 2009-06-03 11:29:15 +02:00
Alexandre Julliard 2d69ba45d7 server: Reset events on the message queue fd to avoid busy looping when the thread is suspended. 2009-06-03 11:28:18 +02:00
Alexandre Julliard d5d0738fb9 ntdll: Tweak the file mapping permission checks some more, with tests. 2009-05-19 21:36:05 +02:00
Hans Leidekker 24af6f3e01 server: Add requests to set and retrieve default dacl. 2009-04-21 15:40:26 +02:00
Alexandre Julliard 5316dd011f server: Define a generic context structure instead of using the platform-specific version. 2009-04-08 19:59:23 +02:00
Alexandre Julliard 53929f1906 server: Make all dump function take a prefix string to simplify the tracing code. 2009-04-08 17:31:05 +02:00
Alexandre Julliard 279defe66e server: Verify that the client is using a supported CPU type. 2009-04-03 14:59:12 +02:00
Alexandre Julliard 653d2c4a8d server: Store the type of CPU that the client is running on. 2009-04-03 14:49:10 +02:00
Alexandre Julliard b06a919c3c server: Use the thread entry point field to pass the PEB in the initial thread. 2009-04-03 14:30:34 +02:00
Alexandre Julliard 50171c5cc1 server: Make the new named pipe server fd inherit the I/O completion if it was set before connecting. 2009-03-03 11:59:29 +01:00
Alexandre Julliard 9dd3fe5467 server: Overlapped named pipes are never blocking, even if no APC was specified. 2009-03-02 20:34:07 +01:00
Alexandre Julliard 548e18933b server: Don't return a value from a void function. 2009-01-30 14:04:56 +01:00
Marcus Meissner 3b86f463b5 server: Handle NULL thread in send_hardware_message (Coverity). 2009-01-29 12:45:32 +01:00
Alexandre Julliard 913e792b57 server: Store process/thread affinity as a 64-bit value. 2009-01-19 14:15:51 +01:00
Alexandre Julliard 7f1dc355ec server: Generate padding in request structures from make_requests.
Add compile-time asserts to check that the structures have the expected layout.
2009-01-19 14:01:39 +01:00
Alexandre Julliard 64e6ee5cd8 server: Set stderr in line-buffered mode before doing anything else. 2009-01-16 12:32:26 +01:00
Alexandre Julliard 0ffd26ab17 user32: Use the message_data_t union when receiving a message. 2009-01-15 12:50:59 +01:00
Alexandre Julliard 9f365e7705 server: Replace EXCEPTION_RECORD by an explicit definition in debug events. 2009-01-02 20:12:46 +01:00
Alexandre Julliard bc03f0ee39 server: Simplify the debug_event_t structure. 2009-01-02 20:09:25 +01:00
Alexandre Julliard 9087e5c55f server: Avoid crash on initialization of the thread creation debug event. 2009-01-02 20:00:54 +01:00
Alexandre Julliard 8c8c665a3c server: Reorganize some requests to avoid padding, and make remaining padding explicit. 2008-12-31 15:14:29 +01:00
Alexandre Julliard 0c914e475d server: Make atom_t an unsigned int to avoid padding issues. 2008-12-31 15:09:59 +01:00
Alexandre Julliard fa8643805b server: Make TEB and PEB client_ptr_t instead of void pointers. 2008-12-31 15:09:59 +01:00
Alexandre Julliard c6c335d70e server: Make thread entry points client_ptr_t instead of void pointers. 2008-12-31 15:09:59 +01:00
Alexandre Julliard 2cf868c0be server: Move ldt_copy to the init_process_done request and make it a client_ptr_t. 2008-12-31 15:09:59 +01:00
Alexandre Julliard 1d2d0d5622 server: Send the version with the initial fd so that it can be checked before sending the first request. 2008-12-31 15:09:59 +01:00
Alexandre Julliard 6db201080f server: Make the various async I/O parameters client_ptr_t instead of void pointers. 2008-12-30 21:09:41 +01:00
Alexandre Julliard f507ccbf52 server: Specify the user APC to call only once the system APC has executed. 2008-12-30 20:51:55 +01:00
Alexandre Julliard 7ec95c5bee server: Explicitly specify when an ioctl call needs to be blocking. 2008-12-30 20:37:20 +01:00
Alexandre Julliard f69e62207b server: Make the arguments for CreateRemoteThread client_ptr_t instead of void pointers. 2008-12-30 15:30:11 +01:00
Alexandre Julliard c86ec6445c server: Make a couple of fields smaller in the apc_call_t/apc_result_t structures. 2008-12-30 15:22:45 +01:00
Alexandre Julliard 7560a89022 server: Make padding explicit in the wake_up_reply structure. 2008-12-30 15:15:06 +01:00
Alexandre Julliard 838803ce24 server: Make the address parameters in inter-process virtual memory calls client_ptr_t.
Add explicit padding fields in the corresponding structures.
2008-12-30 15:05:38 +01:00
Alexandre Julliard d066a9a01a server: Make the mapping base address a client_ptr_t instead of a void pointer. 2008-12-30 14:18:21 +01:00
Alexandre Julliard 8e9c156e14 server: Make the address argument for read/write_process_memory a client_ptr_t. 2008-12-30 14:11:58 +01:00
Alexandre Julliard 4261476d13 server: Make the message callback function a client_ptr_t instead of a void pointer. 2008-12-30 14:02:07 +01:00
Alexandre Julliard 9b92a59115 server: Make timer callback function and argument client_ptr_t instead of void pointers. 2008-12-29 17:43:01 +01:00
Alexandre Julliard cc55fd317a server: Make hook procedures client_ptr_t instead of void pointers. 2008-12-29 17:35:35 +01:00
Alexandre Julliard 923310aa54 server: Make the device opaque data a client_ptr_t instead of a void pointer. 2008-12-29 17:28:40 +01:00
Alexandre Julliard 0cd3ff6cbe server: Make the class opaque data a client_ptr_t instead of a void pointer. 2008-12-29 17:24:39 +01:00
Alexandre Julliard 45c991937a server: Make the select cookie a client_ptr_t instead of a void pointer. 2008-12-29 17:21:32 +01:00
Alexandre Julliard 93737d5575 server: Store debugging output strings as client_ptr_t instead of void pointers. 2008-12-29 17:16:46 +01:00
Alexandre Julliard 947976f22c server: Store module names as client_ptr_t instead of void pointers. 2008-12-29 17:10:11 +01:00
Alexandre Julliard f2c4e09e80 server: Make module handles always 64-bit. 2008-12-29 16:47:51 +01:00
Alexandre Julliard cb2788efaf server: Add a module_handle_t type to represent client-side module handles. 2008-12-29 16:41:44 +01:00
Alexandre Julliard 9ed42d2709 server: Get rid of the unused count parameter in fd_queue_async(). 2008-12-26 12:33:31 +01:00
Alexandre Julliard b660aaa9ea server: Use the same field for process and thread handle in the queue_apc request. 2008-12-26 12:33:31 +01:00
Alexandre Julliard a7b3efde0e server: Store the async handle inside the async_data_t structure. 2008-12-26 12:33:21 +01:00
Alexandre Julliard 3cd817b53e server: Make lparam_t always 64-bit. 2008-12-24 19:57:51 +01:00
Alexandre Julliard d1d7b9f3f7 server: Store data for hardware messages in the message extra data. 2008-12-24 19:57:51 +01:00
Alexandre Julliard a6216ab927 server: Make apc_param_t always 64-bit. 2008-12-17 19:43:40 +01:00
Alexandre Julliard 29d9759156 server: Use mem_size_t instead of file_pos_t for memory mapping sizes. 2008-12-17 19:25:49 +01:00
Alexandre Julliard 401f4b717a server: Make mem_size_t always 64-bit. 2008-12-17 19:25:09 +01:00
Alexandre Julliard 992d3cea93 server: Add a mem_size_t type to represent memory sizes and offsets. 2008-12-17 19:24:33 +01:00