Index: configure =================================================================== RCS file: /cvsroot/pgsql-server/configure,v retrieving revision 1.369 diff -c -c -r1.369 configure *** configure 22 May 2004 00:34:49 -0000 1.369 --- configure 27 May 2004 13:05:41 -0000 *************** *** 12014,12019 **** --- 12014,12020 ---- case $host_os in mingw*) LIBOBJS="$LIBOBJS copydir.$ac_objext" LIBOBJS="$LIBOBJS gettimeofday.$ac_objext" + LIBOBJS="$LIBOBJS kill.$ac_objext" LIBOBJS="$LIBOBJS open.$ac_objext" LIBOBJS="$LIBOBJS rand.$ac_objext" ;; esac Index: configure.in =================================================================== RCS file: /cvsroot/pgsql-server/configure.in,v retrieving revision 1.358 diff -c -c -r1.358 configure.in *** configure.in 22 May 2004 00:34:49 -0000 1.358 --- configure.in 27 May 2004 13:05:43 -0000 *************** *** 891,896 **** --- 891,897 ---- case $host_os in mingw*) AC_LIBOBJ(copydir) AC_LIBOBJ(gettimeofday) + AC_LIBOBJ(kill) AC_LIBOBJ(open) AC_LIBOBJ(rand) ;; esac Index: src/backend/port/win32/signal.c =================================================================== RCS file: /cvsroot/pgsql-server/src/backend/port/win32/signal.c,v retrieving revision 1.1 diff -c -c -r1.1 signal.c *** src/backend/port/win32/signal.c 12 Apr 2004 16:19:18 -0000 1.1 --- src/backend/port/win32/signal.c 27 May 2004 13:05:48 -0000 *************** *** 152,197 **** return prevfunc; } - /* signal sending */ - int - pqkill(int pid, int sig) - { - char pipename[128]; - BYTE sigData = sig; - BYTE sigRet = 0; - DWORD bytes; - - if (sig >= PG_SIGNAL_COUNT || sig <= 0) - { - errno = EINVAL; - return -1; - } - if (pid <= 0) - { - /* No support for process groups */ - errno = EINVAL; - return -1; - } - wsprintf(pipename, "\\\\.\\pipe\\pgsignal_%i", pid); - if (!CallNamedPipe(pipename, &sigData, 1, &sigRet, 1, &bytes, 1000)) - { - if (GetLastError() == ERROR_FILE_NOT_FOUND) - errno = ESRCH; - else if (GetLastError() == ERROR_ACCESS_DENIED) - errno = EPERM; - else - errno = EINVAL; - return -1; - } - if (bytes != 1 || sigRet != sig) - { - errno = ESRCH; - return -1; - } - - return 0; - } - /* * All functions below execute on the signal handler thread * and must be synchronized as such! --- 152,157 ---- Index: src/include/port/win32.h =================================================================== RCS file: /cvsroot/pgsql-server/src/include/port/win32.h,v retrieving revision 1.23 diff -c -c -r1.23 win32.h *** src/include/port/win32.h 22 Apr 2004 03:51:24 -0000 1.23 --- src/include/port/win32.h 27 May 2004 13:06:03 -0000 *************** *** 116,125 **** #define SIG_ERR ((pqsigfunc)-1) #define SIG_IGN ((pqsigfunc)1) ! #ifndef FRONTEND ! #define kill(pid,sig) pqkill(pid,sig) ! extern int pqkill(int pid, int sig); #define pg_usleep(t) pgwin32_backend_usleep(t) void pgwin32_backend_usleep(long microsec); #endif --- 116,125 ---- #define SIG_ERR ((pqsigfunc)-1) #define SIG_IGN ((pqsigfunc)1) ! #define kill(pid,sig) pgkill(pid,sig) ! extern int pgkill(int pid, int sig); + #ifndef FRONTEND #define pg_usleep(t) pgwin32_backend_usleep(t) void pgwin32_backend_usleep(long microsec); #endif