view lib-src/ntlib.h @ 83262:92c8be21e2c3

Merged from miles@gnu.org--gnu-2005 (patch 31-33, 129-141) Patches applied: * miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-129 Update from CVS * miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-130 Update from CVS * miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-131 Update from CVS * miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-132 Update from CVS * miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-133 Merge from gnus--rel--5.10 * miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-134 Update from CVS * miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-135 Update from CVS * miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-136 Update from CVS * miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-137 Update from CVS * miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-138 Update from CVS * miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-139 Merge from gnus--rel--5.10 * miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-140 Update from CVS * miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-141 Update from CVS * miles@gnu.org--gnu-2005/gnus--rel--5.10--patch-31 Merge from emacs--cvs-trunk--0 * miles@gnu.org--gnu-2005/gnus--rel--5.10--patch-32 Merge from emacs--cvs-trunk--0 * miles@gnu.org--gnu-2005/gnus--rel--5.10--patch-33 Update from CVS git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-302
author Karoly Lorentey <lorentey@elte.hu>
date Mon, 28 Feb 2005 15:15:44 +0000
parents 695cf19ef79e
children e50e8a19d938 375f2633d815
line wrap: on
line source

/* Utility and Unix shadow routines for GNU Emacs support programs on NT.
   Copyright (C) 1994 Free Software Foundation, Inc.

   This file is part of GNU Emacs.

   GNU Emacs is free software; you can redistribute it and/or modify it
   under the terms of the GNU General Public License as published by the
   Free Software Foundation; either version 2, or (at your option) any later
   version.

   GNU Emacs is distributed in the hope that it will be useful, but WITHOUT
   ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
   FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
   more details.

   You should have received a copy of the GNU General Public License
   along with GNU Emacs; see the file COPYING.  If not, write to the
   Free Software Foundation, Inc., 59 Temple Place - Suite 330,
   Boston, MA 02111-1307, USA.

*/

#include <pwd.h>
#include <malloc.h>

/* Include these headers now so we don't have to worry about include
   order dependencies in common source files.  */
#include <direct.h>
#include <io.h>
#include <stdio.h>

#ifdef sleep
#undef sleep
#endif
void sleep(unsigned long seconds);
char *getwd (char *dir);
int getppid(void);
char * getlogin ();
char * cuserid (char * s);
int getuid ();
int setuid (int uid);
struct passwd * getpwuid (int uid);
char * getpass (const char * prompt);
int fchown (int fd, int uid, int gid);

#ifndef BSTRING
#define bzero(b, l) memset(b, 0, l)
#define bcopy(s, d, l) memcpy(d, s, l)
#define bcmp(a, b, l) memcmp(a, b, l)
#endif

/* redirect or undo interceptions created by config.h */
#undef access
#define access  _access
#undef chdir
#define chdir   _chdir
#undef chmod
#define chmod   _chmod
#undef close
#define close   _close
#undef creat
#define creat   _creat
#undef ctime
#undef dup
#define dup     _dup
#undef dup2
#define dup2    _dup2
#undef fopen
#undef mkdir
#define mkdir   _mkdir
#undef mktemp
#define mktemp  _mktemp
#undef open
#define open    _open
#undef pipe
#define pipe    _pipe
#undef read
#define read    _read
#undef rename
#undef rmdir
#define rmdir   _rmdir
#undef unlink
#define unlink  _unlink
#undef write
#define write   _write

/* map to MSVC names */
#define execlp    _execlp
#define execvp    _execvp
#define fcloseall _fcloseall
#define fdopen	  _fdopen
#define fgetchar  _fgetchar
#define fileno	  _fileno
#define flushall  _flushall
#define fputchar  _fputchar
#define getcwd	  _getcwd
#define getw	  _getw
#define getpid    _getpid
#define isatty    _isatty
#define locking   _locking
#define logb      _logb
#define _longjmp  longjmp
#define lseek     _lseek
#define popen     _popen
#define pclose    _pclose
#define putw	  _putw
#define umask	  _umask
#define utime	  _utime
#define index     strchr
#define rindex    strrchr

/* Make standard winsock definitions available if needed.  */
#undef _WINSOCKAPI_
#undef _WINSOCK_H

/* end of ntlib.h */

/* arch-tag: 93444f66-7b98-4aa5-a5cd-01444094af28
   (do not change this comment) */