summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSterling Hughes <sterling@php.net>2002-04-04 20:14:47 +0000
committerSterling Hughes <sterling@php.net>2002-04-04 20:14:47 +0000
commitf30b124b93851033b8d252efc6f60da32ffd87e4 (patch)
tree2c55e0befb249408c1b10ef428d5e72feebfbac8
parentc57f3c562d0f0345b2113363326ae2b26d0d0378 (diff)
downloadphp-git-f30b124b93851033b8d252efc6f60da32ffd87e4.tar.gz
replace with non-gpl implementation
-rw-r--r--win32/pwd.c60
-rw-r--r--win32/pwd.h55
2 files changed, 24 insertions, 91 deletions
diff --git a/win32/pwd.c b/win32/pwd.c
index 73c4b62c95..65675d2a78 100644
--- a/win32/pwd.c
+++ b/win32/pwd.c
@@ -1,28 +1,3 @@
-/* pwd.c - Try to approximate UN*X's getuser...() functions under MS-DOS.
- Copyright (C) 1990 by Thorsten Ohl, td12@ddagsi3.bitnet
-
- This program 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 1, or (at your option)
- any later version.
-
- This program 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 this program; if not, write to the Free Software
- Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-
- $Header$
- */
-
-/* This 'implementation' is conjectured from the use of this functions in
- the RCS and BASH distributions. Of course these functions don't do too
- much useful things under MS-DOS, but using them avoids many "#ifdef
- MSDOS" in ported UN*X code ... */
-
#include "php.h" /*php specific */
#define WIN32_LEAN_AND_MEAN
#include <windows.h>
@@ -35,40 +10,37 @@
#include "grp.h"
#ifndef THREAD_SAFE
-static struct passwd pw; /* should we return a malloc()'d structure */
+static struct passwd pwd;
#endif
-static char *home_dir = "."; /* we feel (no|every)where at home */
+
+static char *home_dir = ".";
static char *login_shell = "not command.com!";
-struct passwd *getpwnam(char *name)
+struct passwd *
+getpwnam(char *name)
{
return (struct passwd *) 0;
}
-char *getlogin()
+char *
+getlogin()
{
static char name[256];
- DWORD dw = 256;
- GetUserName(name, &dw);
+ DWORD max_len = 256;
+
+ GetUserName(name, &max_len);
return name;
}
struct passwd *
- getpwuid(int uid)
+getpwuid(int user_id)
{
- pw.pw_name = getlogin();
- pw.pw_dir = home_dir;
- pw.pw_shell = login_shell;
- pw.pw_uid = 0;
+ pwd.pw_name = getlogin();
+ pwd.pw_dir = home_dir;
+ pwd.pw_shell = login_shell;
+ pwd.pw_uid = 0;
- return &pw;
+ return &pwd;
}
-/*
- * Local Variables:
- * mode:C
- * ChangeLog:ChangeLog
- * compile-command:make
- * End:
- */
diff --git a/win32/pwd.h b/win32/pwd.h
index d1f66859d7..8b58e2bbfd 100644
--- a/win32/pwd.h
+++ b/win32/pwd.h
@@ -1,57 +1,18 @@
-/* pwd.h - Try to approximate UN*X's getuser...() functions under MS-DOS.
- Copyright (C) 1990 by Thorsten Ohl, td12@ddagsi3.bitnet
-
- This program 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 1, or (at your option)
- any later version.
-
- This program 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 this program; if not, write to the Free Software
- Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-
- $Header$
- */
-
-/* This 'implementation' is conjectured from the use of this functions in
- the RCS and BASH distributions. Of course these functions don't do too
- much useful things under MS-DOS, but using them avoids many "#ifdef
- MSDOS" in ported UN*X code ... */
-/*
- #define WIN32_LEAN_AND_MEAN
- #include <windows.h>
- */
#ifndef PWD_H
#define PWD_H
-#if 0
-/* This is taken care of in Windows-NT/config.h. */
-typedef int uid_t;
-#endif
struct passwd {
- char *pw_name; /* user name */
- char *pw_passwd; /* encrypted password */
- int pw_uid; /* user uid */
- int pw_gid; /* user gid */
- char *pw_comment; /* comment */
- char *pw_gecos; /* Honeywell login info */
- char *pw_dir; /* home directory */
- char *pw_shell; /* default shell */
+ char *pw_name;
+ char *pw_passwd;
+ int pw_uid;
+ int pw_gid;
+ char *pw_comment;
+ char *pw_gecos;
+ char *pw_dir;
+ char *pw_shell;
};
extern struct passwd *getpwuid(int);
extern struct passwd *getpwnam(char *name);
extern char *getlogin(void);
#endif
-/*
- * Local Variables:
- * mode:C
- * ChangeLog:ChangeLog
- * compile-command:make
- * End:
- */