1/* Utility and Unix shadow routines for GNU Emacs support programs on NT. 2 Copyright (C) 1994, 2002, 2003, 2004, 2005, 3 2006, 2007 Free Software Foundation, Inc. 4 5 This file is part of GNU Emacs. 6 7 GNU Emacs is free software; you can redistribute it and/or modify it 8 under the terms of the GNU General Public License as published by the 9 Free Software Foundation; either version 2, or (at your option) any later 10 version. 11 12 GNU Emacs is distributed in the hope that it will be useful, but WITHOUT 13 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 14 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 15 more details. 16 17 You should have received a copy of the GNU General Public License 18 along with GNU Emacs; see the file COPYING. If not, write to the 19 Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, 20 Boston, MA 02110-1301, USA. 21 22*/ 23 24#include <pwd.h> 25#include <malloc.h> 26 27/* Include these headers now so we don't have to worry about include 28 order dependencies in common source files. */ 29#include <direct.h> 30#include <io.h> 31#include <stdio.h> 32 33#ifdef sleep 34#undef sleep 35#endif 36void sleep(unsigned long seconds); 37char *getwd (char *dir); 38int getppid(void); 39char * getlogin (); 40char * cuserid (char * s); 41int getuid (); 42int setuid (int uid); 43struct passwd * getpwuid (int uid); 44char * getpass (const char * prompt); 45int fchown (int fd, int uid, int gid); 46 47#ifndef BSTRING 48#define bzero(b, l) memset(b, 0, l) 49#define bcopy(s, d, l) memcpy(d, s, l) 50#define bcmp(a, b, l) memcmp(a, b, l) 51#endif 52 53/* redirect or undo interceptions created by config.h */ 54#undef access 55#define access _access 56#undef chdir 57#define chdir _chdir 58#undef chmod 59#define chmod _chmod 60#undef close 61#define close _close 62#undef creat 63#define creat _creat 64#undef ctime 65#undef dup 66#define dup _dup 67#undef dup2 68#define dup2 _dup2 69#undef fopen 70#undef mkdir 71#define mkdir _mkdir 72#undef mktemp 73#define mktemp _mktemp 74#undef open 75#define open _open 76#undef pipe 77#define pipe _pipe 78#undef read 79#define read _read 80#undef rename 81#undef rmdir 82#define rmdir _rmdir 83#undef unlink 84#define unlink _unlink 85#undef write 86#define write _write 87 88/* map to MSVC names */ 89#define execlp _execlp 90#define execvp _execvp 91#define fcloseall _fcloseall 92#define fdopen _fdopen 93#define fgetchar _fgetchar 94#ifndef fileno 95#define fileno _fileno 96#endif 97#define flushall _flushall 98#define fputchar _fputchar 99#define getcwd _getcwd 100#define getw _getw 101#define getpid _getpid 102#define isatty _isatty 103#define locking _locking 104#define logb _logb 105#define _longjmp longjmp 106#define lseek _lseek 107#define popen _popen 108#define pclose _pclose 109#define putw _putw 110#define umask _umask 111#define utime _utime 112#define index strchr 113#define rindex strrchr 114 115/* Make standard winsock definitions available if needed. */ 116#undef _WINSOCKAPI_ 117#undef _WINSOCK_H 118 119/* end of ntlib.h */ 120 121/* arch-tag: 93444f66-7b98-4aa5-a5cd-01444094af28 122 (do not change this comment) */ 123