summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--hurd/ChangeLog6
-rw-r--r--hurd/password.defs51
-rw-r--r--hurd/paths.h3
-rw-r--r--hurd/subsystems1
4 files changed, 60 insertions, 1 deletions
diff --git a/hurd/ChangeLog b/hurd/ChangeLog
index 5bdd5028..2e26102a 100644
--- a/hurd/ChangeLog
+++ b/hurd/ChangeLog
@@ -1,3 +1,9 @@
+Tue Sep 23 15:52:35 1997 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu>
+
+ * password.defs: New file.
+ * paths.h (_SERVERS_PASSWORD): New entry.
+ * subsystems: Add password at 38000.
+
Tue Sep 16 15:24:37 1997 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu>
* process.defs: Delete proc_sethostid, proc_gethostid,
diff --git a/hurd/password.defs b/hurd/password.defs
new file mode 100644
index 00000000..d52c5661
--- /dev/null
+++ b/hurd/password.defs
@@ -0,0 +1,51 @@
+/* Protocol for password checker
+ Copyright (C) 1997 Free Software Foundation, Inc.
+
+This file is part of the GNU Hurd.
+
+The GNU Hurd 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.
+
+The GNU Hurd 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 the GNU Hurd; see the file COPYING. If not, write to
+the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
+
+/* Written by Thomas Bushnell, n/BSG. */
+
+subsystem term 38000;
+
+#ifdef PASSWORD_IMPORTS
+PASSWORD_IMPORTS
+#endif
+
+#include <hurd/hurd_types.defs>
+
+/* Service for this protocol normally lives on /servers/password as
+ specified by _SERVERS_PASSWORD in <hurd/paths.h>. */
+
+/* Check to see if the password for user USER is really PW. Return
+ an error if it fails, and return an auth port for the id in AUTH
+ if it succeeded. */
+password_check_user (
+ server: io_t;
+ user: uid_t;
+ pw: string_t;
+ out auth: mach_port_send_t);
+
+
+/* Check to see if the password for GROUP is really PW. Return
+ an error if it fails, and return an auth port for the id in AUTH
+ if it succeeded. */
+password_check_group (
+ server: io_t;
+ group: uid_t;
+ pw: string_t;
+ out auth: mach_port_send_t);
+
diff --git a/hurd/paths.h b/hurd/paths.h
index f8fd6ffb..e35f51bc 100644
--- a/hurd/paths.h
+++ b/hurd/paths.h
@@ -1,5 +1,5 @@
/* Standard Hurd pathnames.
- Copyright (C) 1992, 1994, 1995 Free Software Foundation, Inc.
+ Copyright (C) 1992, 1994, 1995, 1997 Free Software Foundation, Inc.
This file is part of the GNU Hurd.
@@ -28,6 +28,7 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
#define _SERVERS_EXEC _SERVERS "exec"
#define _SERVERS_STARTUP _SERVERS "startup"
#define _SERVERS_PROC _SERVERS "proc"
+#define _SERVERS_PASSWORD _SERVERS "password"
/* Directory containing naming points for socket servers.
Entries are named by the string representing the domain number
diff --git a/hurd/subsystems b/hurd/subsystems
index b4aac67e..c05895c2 100644
--- a/hurd/subsystems
+++ b/hurd/subsystems
@@ -35,6 +35,7 @@ ifsock 34000 S_IFSOCK node protocol for AF_LOCAL rendezvous
tape 35000 Special control operations for magtapes
login 36000 Database of logged-in users
pfinet 37000 Internet configuration calls
+password 38000 Password checker
<ioctl space> 100000- First subsystem of ioctl class 'f' (lowest class)
tioctl 156000 Ioctl class 't' (terminals)
tioctl 156200 (continued)