summaryrefslogtreecommitdiff
path: root/data/pam-modules
diff options
context:
space:
mode:
authorJay Freeman <saurik@saurik.com>2009-04-08 21:42:41 +0000
committerJay Freeman <saurik@saurik.com>2009-04-08 21:42:41 +0000
commit960f0c8bd926f96246a6567ece6f9851a2b22b76 (patch)
treeb23b7c9796b9d2b5f10a0845e872e81f0c997ae1 /data/pam-modules
parent6774b86da56c1713247148e83d44630675828dee (diff)
Upgraded system-cmds to use PAM (for login).
git-svn-id: http://svn.telesphoreo.org/trunk@566 514c082c-b64e-11dc-b46d-3d985efe055d
Diffstat (limited to 'data/pam-modules')
-rw-r--r--data/pam-modules/_metadata/depends1
-rw-r--r--data/pam-modules/_metadata/description1
l---------data/pam-modules/_metadata/license1
l---------data/pam-modules/_metadata/maintainer1
-rw-r--r--data/pam-modules/_metadata/name1
l---------data/pam-modules/_metadata/pam.dep1
-rwxr-xr-xdata/pam-modules/_metadata/preinst7
-rw-r--r--data/pam-modules/_metadata/priority1
-rw-r--r--data/pam-modules/_metadata/role1
-rw-r--r--data/pam-modules/_metadata/section1
-rw-r--r--data/pam-modules/_metadata/tags1
-rw-r--r--data/pam-modules/_metadata/version1
-rw-r--r--data/pam-modules/make.sh9
-rw-r--r--data/pam-modules/pam_modules-36.1.tar.gzbin0 -> 69116 bytes
-rw-r--r--data/pam-modules/pw_util.h65
-rw-r--r--data/pam-modules/tempname.diff12
-rw-r--r--data/pam-modules/vproc_priv.h82
17 files changed, 186 insertions, 0 deletions
diff --git a/data/pam-modules/_metadata/depends b/data/pam-modules/_metadata/depends
new file mode 100644
index 000000000..d91809320
--- /dev/null
+++ b/data/pam-modules/_metadata/depends
@@ -0,0 +1 @@
+system-cmds
diff --git a/data/pam-modules/_metadata/description b/data/pam-modules/_metadata/description
new file mode 100644
index 000000000..18d6587c9
--- /dev/null
+++ b/data/pam-modules/_metadata/description
@@ -0,0 +1 @@
+standard Apple authentication modules
diff --git a/data/pam-modules/_metadata/license b/data/pam-modules/_metadata/license
new file mode 120000
index 000000000..9e5e5e89d
--- /dev/null
+++ b/data/pam-modules/_metadata/license
@@ -0,0 +1 @@
+../../../licenses/apsl-2.0 \ No newline at end of file
diff --git a/data/pam-modules/_metadata/maintainer b/data/pam-modules/_metadata/maintainer
new file mode 120000
index 000000000..0fa66e077
--- /dev/null
+++ b/data/pam-modules/_metadata/maintainer
@@ -0,0 +1 @@
+../../../people/saurik \ No newline at end of file
diff --git a/data/pam-modules/_metadata/name b/data/pam-modules/_metadata/name
new file mode 100644
index 000000000..67526dc53
--- /dev/null
+++ b/data/pam-modules/_metadata/name
@@ -0,0 +1 @@
+PAM Modules
diff --git a/data/pam-modules/_metadata/pam.dep b/data/pam-modules/_metadata/pam.dep
new file mode 120000
index 000000000..d21087a2d
--- /dev/null
+++ b/data/pam-modules/_metadata/pam.dep
@@ -0,0 +1 @@
+../../pam \ No newline at end of file
diff --git a/data/pam-modules/_metadata/preinst b/data/pam-modules/_metadata/preinst
new file mode 100755
index 000000000..498792bf9
--- /dev/null
+++ b/data/pam-modules/_metadata/preinst
@@ -0,0 +1,7 @@
+#!/bin/bash
+
+if [[ $1 == install || $1 == upgrade ]]; then
+ /usr/libexec/cydia/move.sh /usr/lib/pam
+fi
+
+exit 0
diff --git a/data/pam-modules/_metadata/priority b/data/pam-modules/_metadata/priority
new file mode 100644
index 000000000..a6a7b9cd7
--- /dev/null
+++ b/data/pam-modules/_metadata/priority
@@ -0,0 +1 @@
+standard
diff --git a/data/pam-modules/_metadata/role b/data/pam-modules/_metadata/role
new file mode 100644
index 000000000..52b4d7301
--- /dev/null
+++ b/data/pam-modules/_metadata/role
@@ -0,0 +1 @@
+hacker
diff --git a/data/pam-modules/_metadata/section b/data/pam-modules/_metadata/section
new file mode 100644
index 000000000..eb7a34ddd
--- /dev/null
+++ b/data/pam-modules/_metadata/section
@@ -0,0 +1 @@
+Administration
diff --git a/data/pam-modules/_metadata/tags b/data/pam-modules/_metadata/tags
new file mode 100644
index 000000000..a8928cec8
--- /dev/null
+++ b/data/pam-modules/_metadata/tags
@@ -0,0 +1 @@
+purpose::library
diff --git a/data/pam-modules/_metadata/version b/data/pam-modules/_metadata/version
new file mode 100644
index 000000000..2b194df7e
--- /dev/null
+++ b/data/pam-modules/_metadata/version
@@ -0,0 +1 @@
+36.1
diff --git a/data/pam-modules/make.sh b/data/pam-modules/make.sh
new file mode 100644
index 000000000..18bd58e50
--- /dev/null
+++ b/data/pam-modules/make.sh
@@ -0,0 +1,9 @@
+pkg:setup
+
+pkg: mkdir -p /usr/lib/pam
+
+for module in launchd unix uwtmp; do
+ echo "${module}"
+ "${PKG_TARG}-gcc" -shared -o "pam_${module}.so" "pam_${module}"/*.c -lpam -I"${PKG_DATA}" || true
+ pkg: cp -a "pam_${module}.so" /usr/lib/pam
+done
diff --git a/data/pam-modules/pam_modules-36.1.tar.gz b/data/pam-modules/pam_modules-36.1.tar.gz
new file mode 100644
index 000000000..c7816a223
--- /dev/null
+++ b/data/pam-modules/pam_modules-36.1.tar.gz
Binary files differ
diff --git a/data/pam-modules/pw_util.h b/data/pam-modules/pw_util.h
new file mode 100644
index 000000000..b5811b0a2
--- /dev/null
+++ b/data/pam-modules/pw_util.h
@@ -0,0 +1,65 @@
+/*
+ * Copyright (c) 1999 Apple Computer, Inc. All rights reserved.
+ *
+ * @APPLE_LICENSE_HEADER_START@
+ *
+ * "Portions Copyright (c) 1999 Apple Computer, Inc. All Rights
+ * Reserved. This file contains Original Code and/or Modifications of
+ * Original Code as defined in and that are subject to the Apple Public
+ * Source License Version 1.0 (the 'License'). You may not use this file
+ * except in compliance with the License. Please obtain a copy of the
+ * License at http://www.apple.com/publicsource and read it before using
+ * this file.
+ *
+ * The Original Code and all software distributed under the License are
+ * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
+ * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
+ * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT. Please see the
+ * License for the specific language governing rights and limitations
+ * under the License."
+ *
+ * @APPLE_LICENSE_HEADER_END@
+ */
+/*-
+ * Copyright (c) 1994
+ * The Regents of the University of California. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * 3. All advertising materials mentioning features or use of this software
+ * must display the following acknowledgement:
+ * This product includes software developed by the University of
+ * California, Berkeley and its contributors.
+ * 4. Neither the name of the University nor the names of its contributors
+ * may be used to endorse or promote products derived from this software
+ * without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ *
+ * @(#)pw_util.h 8.2 (Berkeley) 4/1/94
+ */
+
+void pw_edit __P((int));
+void pw_error __P((char *, int, int));
+void pw_init __P((void));
+int pw_lock __P((void));
+int pw_mkdb __P((void));
+void pw_prompt __P((void));
+int pw_tmp __P((void));
diff --git a/data/pam-modules/tempname.diff b/data/pam-modules/tempname.diff
new file mode 100644
index 000000000..a8d06558c
--- /dev/null
+++ b/data/pam-modules/tempname.diff
@@ -0,0 +1,12 @@
+diff -ru pam_modules-36.1/pam_unix/pw_util.c pam_modules-36.1+iPhone/pam_unix/pw_util.c
+--- pam_modules-36.1/pam_unix/pw_util.c 2007-01-16 05:28:31.000000000 +0000
++++ pam_modules-36.1+iPhone/pam_unix/pw_util.c 2009-04-08 09:26:20.000000000 +0000
+@@ -82,7 +82,7 @@
+
+ #include "pw_util.h"
+
+-extern char *tempname;
++char *tempname;
+ static pid_t editpid = -1;
+ static int lockfd;
+
diff --git a/data/pam-modules/vproc_priv.h b/data/pam-modules/vproc_priv.h
new file mode 100644
index 000000000..991ceb0bc
--- /dev/null
+++ b/data/pam-modules/vproc_priv.h
@@ -0,0 +1,82 @@
+#ifndef _VPROC_PRIVATE_H_
+#define _VPROC_PRIVATE_H_
+/*
+ * Copyright (c) 2006 Apple Computer, Inc. All rights reserved.
+ *
+ * @APPLE_APACHE_LICENSE_HEADER_START@
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ * @APPLE_APACHE_LICENSE_HEADER_END@
+ */
+
+#include <sys/types.h>
+#include <sys/cdefs.h>
+#include <sys/syslog.h>
+#include <sys/time.h>
+#include <stdbool.h>
+#include <launch.h>
+
+__BEGIN_DECLS
+
+#pragma GCC visibility push(default)
+
+/* DO NOT use this. This is a hack for launchctl */
+#define VPROC_MAGIC_UNLOAD_SIGNAL 0x4141504C
+
+typedef enum {
+ VPROC_GSK_LAST_EXIT_STATUS = 1,
+ VPROC_GSK_GLOBAL_ON_DEMAND,
+ VPROC_GSK_MGR_UID,
+ VPROC_GSK_MGR_PID,
+ VPROC_GSK_IS_MANAGED,
+ VPROC_GSK_BASIC_KEEPALIVE,
+ VPROC_GSK_START_INTERVAL,
+ VPROC_GSK_IDLE_TIMEOUT,
+ VPROC_GSK_EXIT_TIMEOUT,
+ VPROC_GSK_ENVIRONMENT,
+ VPROC_GSK_ALLJOBS,
+ VPROC_GSK_GLOBAL_LOG_MASK,
+ VPROC_GSK_GLOBAL_UMASK,
+} vproc_gsk_t;
+
+vproc_err_t vproc_swap_integer(vproc_t vp, vproc_gsk_t key, int64_t *inval, int64_t *outval);
+vproc_err_t vproc_swap_complex(vproc_t vp, vproc_gsk_t key, launch_data_t inval, launch_data_t *outval);
+
+vproc_err_t _vproc_get_last_exit_status(int *wstatus);
+vproc_err_t _vproc_set_global_on_demand(bool val);
+
+typedef void (*_vprocmgr_log_drain_callback_t)(struct timeval *when, pid_t from_pid, pid_t about_pid, uid_t sender_uid, gid_t sender_gid, int priority, const char *from_name, const char *about_name, const char *session_name, const char *msg);
+
+vproc_err_t _vprocmgr_log_drain(vproc_t vp, pthread_mutex_t *optional_mutex_around_callback, _vprocmgr_log_drain_callback_t func);
+
+vproc_err_t _vproc_send_signal_by_label(const char *label, int sig);
+vproc_err_t _vproc_kickstart_by_label(const char *label, pid_t *out_pid, mach_port_t *out_port_name);
+vproc_err_t _vproc_wait_by_label(const char *label, int *out_wstatus);
+
+void _vproc_log(int pri, const char *msg, ...) __attribute__((format(printf, 2, 3)));
+void _vproc_log_error(int pri, const char *msg, ...) __attribute__((format(printf, 2, 3)));
+
+#define VPROCMGR_SESSION_LOGINWINDOW "LoginWindow"
+#define VPROCMGR_SESSION_BACKGROUND "Background"
+#define VPROCMGR_SESSION_AQUA "Aqua"
+#define VPROCMGR_SESSION_STANDARDIO "StandardIO"
+#define VPROCMGR_SESSION_SYSTEM "System"
+
+vproc_err_t _vprocmgr_move_subset_to_user(uid_t target_user, const char *session_type);
+
+#pragma GCC visibility pop
+
+__END_DECLS
+
+#endif