Implemented async comm buffers (but probably not bugfree), and along
[wine.git] / files / change.c
blob4142d39b0eec544a2d4e3c46e8d622acda64eb46
1 /*
2 * Win32 file change notification functions
4 * Copyright 1998 Ulrich Weigand
5 */
7 #include <assert.h>
8 #include <stdlib.h>
9 #include <unistd.h>
10 #include <string.h>
11 #include <time.h>
12 #include "winbase.h"
13 #include "winerror.h"
14 #include "process.h"
15 #include "thread.h"
16 #include "heap.h"
17 #include "server.h"
18 #include "debug.h"
21 /****************************************************************************
22 * FindFirstChangeNotification32A (KERNEL32.248)
24 HANDLE WINAPI FindFirstChangeNotificationA( LPCSTR lpPathName,
25 BOOL bWatchSubtree,
26 DWORD dwNotifyFilter )
28 struct create_change_notification_request req;
29 struct create_change_notification_reply reply;
31 req.subtree = bWatchSubtree;
32 req.filter = dwNotifyFilter;
33 CLIENT_SendRequest( REQ_CREATE_CHANGE_NOTIFICATION, -1, 1, &req, sizeof(req) );
34 CLIENT_WaitSimpleReply( &reply, sizeof(reply), NULL );
35 return reply.handle;
38 /****************************************************************************
39 * FindFirstChangeNotification32W (KERNEL32.249)
41 HANDLE WINAPI FindFirstChangeNotificationW( LPCWSTR lpPathName,
42 BOOL bWatchSubtree,
43 DWORD dwNotifyFilter)
45 LPSTR nameA = HEAP_strdupWtoA( GetProcessHeap(), 0, lpPathName );
46 HANDLE ret = FindFirstChangeNotificationA( nameA, bWatchSubtree,
47 dwNotifyFilter );
48 if (nameA) HeapFree( GetProcessHeap(), 0, nameA );
49 return ret;
52 /****************************************************************************
53 * FindNextChangeNotification (KERNEL32.252)
55 BOOL WINAPI FindNextChangeNotification( HANDLE handle )
57 /* FIXME: do something */
58 return TRUE;
61 /****************************************************************************
62 * FindCloseChangeNotification (KERNEL32.247)
64 BOOL WINAPI FindCloseChangeNotification( HANDLE handle)
66 return CloseHandle( handle );