summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKarl MacMillan <kmacmillan@mentalrootkit.com>2007-08-10 08:15:23 -0400
committerKarl MacMillan <kmacmillan@mentalrootkit.com>2007-08-10 08:15:23 -0400
commit0144922fd70834184501e06c37464b63f3db87e2 (patch)
tree6123f91879b14aec9adc8df5f5756436ca53aaeb
parentb3aba86b2eaa29dbb79b04f182b460dd31eb52aa (diff)
parent0d981af82098f14e5b9e1677be80f6553f90417d (diff)
downloadfreeipa.git-0144922fd70834184501e06c37464b63f3db87e2.tar.gz
freeipa.git-0144922fd70834184501e06c37464b63f3db87e2.tar.xz
freeipa.git-0144922fd70834184501e06c37464b63f3db87e2.zip
Merge from bundle.
-rw-r--r--Makefile19
-rwxr-xr-xipa-admintools/freeipa-admintools.spec2
-rwxr-xr-xipa-admintools/freeipa-admintools.spec.in2
-rwxr-xr-xipa-python/freeipa-python.spec2
-rw-r--r--ipa-server/Makefile2
-rwxr-xr-xipa-server/freeipa-server.spec24
-rw-r--r--ipa-server/freeipa-server.spec.in22
-rw-r--r--ipa-server/ipa-gui/ipagui/static/css/style.css292
-rw-r--r--ipa-server/ipa-gui/ipagui/templates/grouplayout.kid44
-rw-r--r--ipa-server/ipa-gui/ipagui/templates/master.kid96
-rw-r--r--ipa-server/ipa-gui/ipagui/templates/reslayout.kid44
-rw-r--r--ipa-server/ipa-gui/ipagui/templates/userlayout.kid44
-rw-r--r--ipa-server/ipa-gui/ipagui/templates/welcome.kid36
-rw-r--r--ipa-server/ipa-install/Makefile1
-rw-r--r--ipa-server/ipa-kpasswd/Makefile23
-rw-r--r--ipa-server/ipa-slapi-plugins/Makefile17
-rw-r--r--ipa-server/ipa-slapi-plugins/ipa-pwd-extop/Makefile29
17 files changed, 397 insertions, 302 deletions
diff --git a/Makefile b/Makefile
index 5de0c5d3..8a7f7909 100644
--- a/Makefile
+++ b/Makefile
@@ -2,36 +2,45 @@ SUBDIRS=ipa-server ipa-admintools ipa-python
PRJ_PREFIX=freeipa
+# set to 1 to produce a debug build of all subprojects
+#DEBUG=1
+
# Version numbers - this is for the entire server. After
# updating this you should run the version-update
# target.
SERV_MAJOR=0
-SERV_MINOR=1
+SERV_MINOR=2
SERV_RELEASE=0
SERV_VERSION=$(SERV_MAJOR).$(SERV_MINOR).$(SERV_RELEASE)
SERV_TARBALL_PREFIX=$(PRJ_PREFIX)-server-$(SERV_VERSION)
SERV_TARBALL=$(SERV_TARBALL_PREFIX).tgz
ADMIN_MAJOR=0
-ADMIN_MINOR=1
+ADMIN_MINOR=2
ADMIN_RELEASE=0
ADMIN_VERSION=$(ADMIN_MAJOR).$(ADMIN_MINOR).$(ADMIN_RELEASE)
ADMIN_TARBALL_PREFIX=$(PRJ_PREFIX)-admintools-$(ADMIN_VERSION)
ADMIN_TARBALL=$(ADMIN_TARBALL_PREFIX).tgz
PYTHON_MAJOR=0
-PYTHON_MINOR=1
+PYTHON_MINOR=2
PYTHON_RELEASE=0
PYTHON_VERSION=$(PYTHON_MAJOR).$(PYTHON_MINOR).$(PYTHON_RELEASE)
PYTHON_TARBALL_PREFIX=$(PRJ_PREFIX)-python-$(PYTHON_VERSION)
PYTHON_TARBALL=$(PYTHON_TARBALL_PREFIX).tgz
+ifeq ($(DEBUG),1)
+ export CFLAGS = -g -Wall -Wshadow
+ export LDFLAGS = -g
+endif
+
+
all:
@for subdir in $(SUBDIRS); do \
(cd $$subdir && $(MAKE) $@) || exit 1; \
done
-install:
+install: all
@for subdir in $(SUBDIRS); do \
(cd $$subdir && $(MAKE) $@) || exit 1; \
done
@@ -88,7 +97,7 @@ tarballs:
rpm-ipa-server:
cp dist/$(SERV_TARBALL) ~/rpmbuild/SOURCES/.
rpmbuild -ba ipa-server/freeipa-server.spec
- cp ~/rpmbuild/RPMS/noarch/$(PRJ_PREFIX)-server-$(SERV_VERSION)-*.rpm dist/.
+ cp ~/rpmbuild/RPMS/*/$(PRJ_PREFIX)-server-$(SERV_VERSION)-*.rpm dist/.
cp ~/rpmbuild/SRPMS/$(PRJ_PREFIX)-server-$(SERV_VERSION)-*.src.rpm dist/.
rpm-ipa-admin:
diff --git a/ipa-admintools/freeipa-admintools.spec b/ipa-admintools/freeipa-admintools.spec
index 904a3b69..b7a9a504 100755
--- a/ipa-admintools/freeipa-admintools.spec
+++ b/ipa-admintools/freeipa-admintools.spec
@@ -1,5 +1,5 @@
Name: freeipa-admintools
-Version: 0.1.0
+Version: 0.2.0
Release: 3%{?dist}
Summary: FreeIPA authentication server
diff --git a/ipa-admintools/freeipa-admintools.spec.in b/ipa-admintools/freeipa-admintools.spec.in
index 904a3b69..71d68bc6 100755
--- a/ipa-admintools/freeipa-admintools.spec.in
+++ b/ipa-admintools/freeipa-admintools.spec.in
@@ -1,5 +1,5 @@
Name: freeipa-admintools
-Version: 0.1.0
+Version: VERSION
Release: 3%{?dist}
Summary: FreeIPA authentication server
diff --git a/ipa-python/freeipa-python.spec b/ipa-python/freeipa-python.spec
index e9b1e708..d1a6b5db 100755
--- a/ipa-python/freeipa-python.spec
+++ b/ipa-python/freeipa-python.spec
@@ -1,5 +1,5 @@
Name: freeipa-python
-Version: 0.1.0
+Version: 0.2.0
Release: 3%{?dist}
Summary: FreeIPA authentication server
diff --git a/ipa-server/Makefile b/ipa-server/Makefile
index dd3fa71e..faee6e61 100644
--- a/ipa-server/Makefile
+++ b/ipa-server/Makefile
@@ -1,4 +1,4 @@
-SUBDIRS=ipa-install xmlrpc-server
+SUBDIRS=ipa-install xmlrpc-server ipa-kpasswd ipa-slapi-plugins
PYTHONDIR=$(DESTDIR)/usr/share/ipa/ipaserver
all:
diff --git a/ipa-server/freeipa-server.spec b/ipa-server/freeipa-server.spec
index 463db589..2da36a96 100755
--- a/ipa-server/freeipa-server.spec
+++ b/ipa-server/freeipa-server.spec
@@ -1,6 +1,6 @@
Name: freeipa-server
-Version: 0.1.0
-Release: 3%{?dist}
+Version: 0.2.0
+Release: 1%{?dist}
Summary: FreeIPA authentication server
Group: System Environment/Base
@@ -8,11 +8,13 @@ License: GPL
URL: http://www.freeipa.org
Source0: %{name}-%{version}.tgz
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
-BuildArch: noarch
-Requires: python fedora-ds-base krb5-server krb5-server-ldap nss-tools openldap-clients httpd mod_python mod_auth_kerb python-ldap freeipa-python ntpd cyrus-sasl-gssapi
+BuildRequires: fedora-ds-base-devel openldap-devel krb5-devel nss-devel mozldap-devel openssl-devel mhash-devel
+
+Requires: python fedora-ds-base krb5-server krb5-server-ldap nss-tools openldap-clients httpd mod_python mod_auth_kerb python-ldap freeipa-python ntpd cyrus-sasl-gssapi nss TurboGears
%define httpd_conf /etc/httpd/conf.d
+%define plugin_dir /usr/lib/fedora-ds/plugins
%description
FreeIPA is a server for identity, policy, and audit.
@@ -20,9 +22,14 @@ FreeIPA is a server for identity, policy, and audit.
%prep
%setup -q
+%build
+
+make DESTDIR=%{buildroot}
+
%install
rm -rf %{buildroot}
mkdir -p %{buildroot}%{_sbindir}
+mkdir -p %{buildroot}%{plugin_dir}
make install DESTDIR=%{buildroot}
@@ -35,12 +42,19 @@ rm -rf %{buildroot}
%defattr(-,root,root,-)
%{_sbindir}/ipa-server-install
%{_sbindir}/ipa-server-setupssl
+%{_sbindir}/ipa_kpasswd
+
%dir %{_usr}/share/ipa
%{_usr}/share/ipa/*
+%{plugin_dir}/libipa_pwd_extop.so
+
%changelog
+* Fri Aug 10 2007 Karl MacMillan <kmacmill@redhat.com> - 0.2.0-1
+- Added support for ipa_kpasswd and ipa_pwd_extop
+
* Mon Aug 5 2007 Rob Crittenden <rcritten@redhat.com> - 0.1.0-3
- Abstracted client class to work directly or over RPC
@@ -52,7 +66,7 @@ rm -rf %{buildroot}
- Create an ldif with a test user
- Provide a certmap.conf for doing SSL client authentication
-* Fri Jul 27 2007 Karl MacMillan <kmacmill@localhost.localdomain> - 0.1.0-1
+* Fri Jul 27 2007 Karl MacMillan <kmacmill@redhat.com> - 0.1.0-1
- Initial rpm version
diff --git a/ipa-server/freeipa-server.spec.in b/ipa-server/freeipa-server.spec.in
index 549afc97..aa75917d 100644
--- a/ipa-server/freeipa-server.spec.in
+++ b/ipa-server/freeipa-server.spec.in
@@ -1,6 +1,6 @@
Name: freeipa-server
Version: VERSION
-Release: 3%{?dist}
+Release: 1%{?dist}
Summary: FreeIPA authentication server
Group: System Environment/Base
@@ -8,11 +8,13 @@ License: GPL
URL: http://www.freeipa.org
Source0: %{name}-%{version}.tgz
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
-BuildArch: noarch
-Requires: python fedora-ds-base krb5-server krb5-server-ldap nss-tools openldap-clients httpd mod_python mod_auth_kerb python-ldap freeipa-python ntpd cyrus-sasl-gssapi
+BuildRequires: fedora-ds-base-devel openldap-devel krb5-devel nss-devel mozldap-devel openssl-devel mhash-devel
+
+Requires: python fedora-ds-base krb5-server krb5-server-ldap nss-tools openldap-clients httpd mod_python mod_auth_kerb python-ldap freeipa-python ntpd cyrus-sasl-gssapi nss TurboGears
%define httpd_conf /etc/httpd/conf.d
+%define plugin_dir /usr/lib/fedora-ds/plugins
%description
FreeIPA is a server for identity, policy, and audit.
@@ -20,9 +22,14 @@ FreeIPA is a server for identity, policy, and audit.
%prep
%setup -q
+%build
+
+make DESTDIR=%{buildroot}
+
%install
rm -rf %{buildroot}
mkdir -p %{buildroot}%{_sbindir}
+mkdir -p %{buildroot}%{plugin_dir}
make install DESTDIR=%{buildroot}
@@ -35,12 +42,19 @@ rm -rf %{buildroot}
%defattr(-,root,root,-)
%{_sbindir}/ipa-server-install
%{_sbindir}/ipa-server-setupssl
+%{_sbindir}/ipa_kpasswd
+
%dir %{_usr}/share/ipa
%{_usr}/share/ipa/*
+%{plugin_dir}/libipa_pwd_extop.so
+
%changelog
+* Fri Aug 10 2007 Karl MacMillan <kmacmill@redhat.com> - 0.2.0-1
+- Added support for ipa_kpasswd and ipa_pwd_extop
+
* Mon Aug 5 2007 Rob Crittenden <rcritten@redhat.com> - 0.1.0-3
- Abstracted client class to work directly or over RPC
@@ -52,7 +66,7 @@ rm -rf %{buildroot}
- Create an ldif with a test user
- Provide a certmap.conf for doing SSL client authentication
-* Fri Jul 27 2007 Karl MacMillan <kmacmill@localhost.localdomain> - 0.1.0-1
+* Fri Jul 27 2007 Karl MacMillan <kmacmill@redhat.com> - 0.1.0-1
- Initial rpm version
diff --git a/ipa-server/ipa-gui/ipagui/static/css/style.css b/ipa-server/ipa-gui/ipagui/static/css/style.css
index e4a1d9f8..9cd7fe09 100644
--- a/ipa-server/ipa-gui/ipagui/static/css/style.css
+++ b/ipa-server/ipa-gui/ipagui/static/css/style.css
@@ -1,146 +1,146 @@
-/*
- * Quick mash-up of CSS for the TG quick start page.
- */
-
-html, body {
- color: #000;
- background:#fff;
- margin: 0;
- padding: 0;
-}
-
-body {
- min-width: 750px;
-}
-
-#page {
- background:#ccc; /* should be same as #sidebar */
- margin:0 auto;
- width:100%;
-}
-
-
-#header {
- background:#fff;
-}
-
-#header h1 {
- padding:5px;
- margin:0;
-}
-
-
-#nav {
- background:#cc0000;
- color:#fff;
- padding:5px;
-}
-
-#nav ul {
- margin:0;
- padding:0;
- list-style:none;
-}
-
-#nav li {
- display:inline;
-}
-
-#nav a:visited {
- color:#fff;
-}
-#nav a:link {
- color:#fff;
-}
-
-
-#main_content {
- background:#fff;
- float:right;
- width:85%;
- border-left: 1px solid #000;
- padding-left: 15px;
- padding-bottom: 15px;
-/* color: black;
- font-size: 127%;
- background-color: white;
- margin: 0 auto 0 auto;
- padding: 10px;
- float: left; */
-}
-
-
-#sidebar {
- background:#ccc; /* should be same as #page */
- float:left;
- width:10%;
- /* border: 1px solid #aaa;
- background-color: #eee;
- margin: 0.5em;
- padding: 1em;
- float: left;
- font-size: 88%; */
-}
-
-#sidebar h2 {
- margin-top: 0;
-}
-
-#sidebar ul {
- margin-left: 1.5em;
- padding-left: 0;
-}
-
-
-#footer {
- background:#fff;
- clear:both;
- border-top: 1px solid #000;
- /* color: #999;
- background-color: white;
- padding: 10px;
- font-size: 80%;
- text-align: center;
- margin: 0 auto 1em auto; */
-}
-
-
-.formsection {
- color: #888888;
- width: 90%;
- font-weight: bold;
- border-bottom: 1px solid;
- margin: 20px 0px 20px 0px;
-}
-
-.formtable {
- width: 90%;
-}
-
-.formtable th {
- width: 15%;
- text-align: right;
-}
-
-#status_block {
- margin: 0 auto 0.5em auto;
- padding: 15px 10px 15px 55px;
- background: #cec URL('../images/ok.png') left center no-repeat;
- border: 1px solid #9c9;
- width: 450px;
- font-size: 120%;
- font-weight: bolder;
-}
-
-.notice {
- margin: 0.5em auto 0.5em auto;
- padding: 15px 10px 15px 55px;
- width: 450px;
- background: #eef URL('../images/info.png') left center no-repeat;
- border: 1px solid #cce;
-}
-
-.fielderror {
- color: red;
- font-weight: bold;
-}
+/*
+ * Quick mash-up of CSS for the TG quick start page.
+ */
+
+html, body {
+ color: #000;
+ background:#fff;
+ margin: 0;
+ padding: 0;
+}
+
+body {
+ min-width: 750px;
+}
+
+#page {
+ background:#ccc; /* should be same as #sidebar */
+ margin:0 auto;
+ width:100%;
+}
+
+
+#header {
+ background:#fff;
+}
+
+#header h1 {
+ padding:5px;
+ margin:0;
+}
+
+
+#nav {
+ background:#cc0000;
+ color:#fff;
+ padding:5px;
+}
+
+#nav ul {
+ margin:0;
+ padding:0;
+ list-style:none;
+}
+
+#nav li {
+ display:inline;
+}
+
+#nav a:visited {
+ color:#fff;
+}
+#nav a:link {
+ color:#fff;
+}
+
+
+#main_content {
+ background:#fff;
+ float:right;
+ width:85%;
+ border-left: 1px solid #000;
+ padding-left: 15px;
+ padding-bottom: 15px;
+/* color: black;
+ font-size: 127%;
+ background-color: white;
+ margin: 0 auto 0 auto;
+ padding: 10px;
+ float: left; */
+}
+
+
+#sidebar {
+ background:#ccc; /* should be same as #page */
+ float:left;
+ width:10%;
+ /* border: 1px solid #aaa;
+ background-color: #eee;
+ margin: 0.5em;
+ padding: 1em;
+ float: left;
+ font-size: 88%; */
+}
+
+#sidebar h2 {
+ margin-top: 0;
+}
+
+#sidebar ul {
+ margin-left: 1.5em;
+ padding-left: 0;
+}
+
+
+#footer {
+ background:#fff;
+ clear:both;
+ border-top: 1px solid #000;
+ /* color: #999;
+ background-color: white;
+ padding: 10px;
+ font-size: 80%;
+ text-align: center;
+ margin: 0 auto 1em auto; */
+}
+
+
+.formsection {
+ color: #888888;
+ width: 90%;
+ font-weight: bold;
+ border-bottom: 1px solid;
+ margin: 20px 0px 20px 0px;
+}
+
+.formtable {
+ width: 90%;
+}
+
+.formtable th {
+ width: 15%;
+ text-align: right;
+}
+
+#status_block {
+ margin: 0 auto 0.5em auto;
+ padding: 15px 10px 15px 55px;
+ background: #cec URL('../images/ok.png') left center no-repeat;
+ border: 1px solid #9c9;
+ width: 450px;
+ font-size: 120%;
+ font-weight: bolder;
+}
+
+.notice {
+ margin: 0.5em auto 0.5em auto;
+ padding: 15px 10px 15px 55px;
+ width: 450px;
+ background: #eef URL('../images/info.png') left center no-repeat;
+ border: 1px solid #cce;
+}
+
+.fielderror {
+ color: red;
+ font-weight: bold;
+}
diff --git a/ipa-server/ipa-gui/ipagui/templates/grouplayout.kid b/ipa-server/ipa-gui/ipagui/templates/grouplayout.kid
index 53b6ce0a..af05a808 100644
--- a/ipa-server/ipa-gui/ipagui/templates/grouplayout.kid
+++ b/ipa-server/ipa-gui/ipagui/templates/grouplayout.kid
@@ -1,22 +1,22 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xmlns:py="http://purl.org/kid/ns#"
- py:extends="'master.kid'">
-<head>
-</head>
-
-<body py:match="item.tag=='{http://www.w3.org/1999/xhtml}body'" py:attrs="item.items()">
- <div id="main_content">
- <div id="status_block" class="flash" py:if="value_of('tg_flash', None)" py:content="tg_flash"></div>
-
- <div py:replace="[item.text]+item[:]"></div>
- </div>
-
- <div id="sidebar">
- <h2>Tools</h2>
- <a href="${tg.url('/groupindex')}">Add Group</a><br/>
- <a href="${tg.url('/groupindex')}">Find Group</a><br/>
- <a href="${tg.url('/groupindex')}">List Groups</a><br/>
- </div>
-</body>
-
-</html>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xmlns:py="http://purl.org/kid/ns#"
+ py:extends="'master.kid'">
+<head>
+</head>
+
+<body py:match="item.tag=='{http://www.w3.org/1999/xhtml}body'" py:attrs="item.items()">
+ <div id="main_content">
+ <div id="status_block" class="flash" py:if="value_of('tg_flash', None)" py:content="tg_flash"></div>
+
+ <div py:replace="[item.text]+item[:]"></div>
+ </div>
+
+ <div id="sidebar">
+ <h2>Tools</h2>
+ <a href="${tg.url('/groupindex')}">Add Group</a><br/>
+ <a href="${tg.url('/groupindex')}">Find Group</a><br/>
+ <a href="${tg.url('/groupindex')}">List Groups</a><br/>
+ </div>
+</body>
+
+</html>
diff --git a/ipa-server/ipa-gui/ipagui/templates/master.kid b/ipa-server/ipa-gui/ipagui/templates/master.kid
index 436f0378..464560d2 100644
--- a/ipa-server/ipa-gui/ipagui/templates/master.kid
+++ b/ipa-server/ipa-gui/ipagui/templates/master.kid
@@ -1,48 +1,48 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<?python import sitetemplate ?>
-<html xmlns="http://www.w3.org/1999/xhtml" xmlns:py="http://purl.org/kid/ns#" py:extends="sitetemplate">
-
-<head py:match="item.tag=='{http://www.w3.org/1999/xhtml}head'" py:attrs="item.items()">
- <meta content="text/html; charset=UTF-8" http-equiv="content-type" py:replace="''"/>
- <title py:replace="''">Your title goes here</title>
- <meta py:replace="item[:]"/>
- <style type="text/css" media="screen">
- @import "${tg.url('/static/css/style.css')}";
- </style>
-</head>
-
-<body py:match="item.tag=='{http://www.w3.org/1999/xhtml}body'" py:attrs="item.items()">
- <div py:if="tg.config('identity.on') and not defined('logging_in')" id="pageLogin">
- <span py:if="tg.identity.anonymous">
- <a href="${tg.url('/login')}">Login</a>
- </span>
- <span py:if="not tg.identity.anonymous">
- Welcome ${tg.identity.user.display_name}.
- <a href="${tg.url('/logout')}">Logout</a>
- </span>
- </div>
-
- <div id="page">
- <div id="header">
- <h1>Free IPA</h1>
- </div>
-
- <div id="nav">
- <ul>
- <li><a href="${tg.url('/userindex')}">Users</a></li>
- <li><a href="${tg.url('/groupindex')}">Groups</a></li>
- <li><a href="${tg.url('/resindex')}">Resources</a></li>
- </ul>
- </div>
-
- <div py:replace="[item.text]+item[:]"></div>
-
-
- <div id="footer">
- This is the footer
- </div>
- </div>
-
-</body>
-
-</html>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<?python import sitetemplate ?>
+<html xmlns="http://www.w3.org/1999/xhtml" xmlns:py="http://purl.org/kid/ns#" py:extends="sitetemplate">
+
+<head py:match="item.tag=='{http://www.w3.org/1999/xhtml}head'" py:attrs="item.items()">
+ <meta content="text/html; charset=UTF-8" http-equiv="content-type" py:replace="''"/>
+ <title py:replace="''">Your title goes here</title>
+ <meta py:replace="item[:]"/>
+ <style type="text/css" media="screen">
+ @import "${tg.url('/static/css/style.css')}";
+ </style>
+</head>
+
+<body py:match="item.tag=='{http://www.w3.org/1999/xhtml}body'" py:attrs="item.items()">
+ <div py:if="tg.config('identity.on') and not defined('logging_in')" id="pageLogin">
+ <span py:if="tg.identity.anonymous">
+ <a href="${tg.url('/login')}">Login</a>
+ </span>
+ <span py:if="not tg.identity.anonymous">
+ Welcome ${tg.identity.user.display_name}.
+ <a href="${tg.url('/logout')}">Logout</a>
+ </span>
+ </div>
+
+ <div id="page">
+ <div id="header">
+ <h1>Free IPA</h1>
+ </div>
+
+ <div id="nav">
+ <ul>
+ <li><a href="${tg.url('/userindex')}">Users</a></li>
+ <li><a href="${tg.url('/groupindex')}">Groups</a></li>
+ <li><a href="${tg.url('/resindex')}">Resources</a></li>
+ </ul>
+ </div>
+
+ <div py:replace="[item.text]+item[:]"></div>
+
+
+ <div id="footer">
+ This is the footer
+ </div>
+ </div>
+
+</body>
+
+</html>
diff --git a/ipa-server/ipa-gui/ipagui/templates/reslayout.kid b/ipa-server/ipa-gui/ipagui/templates/reslayout.kid
index 3f5aa96e..5b9b35c1 100644
--- a/ipa-server/ipa-gui/ipagui/templates/reslayout.kid
+++ b/ipa-server/ipa-gui/ipagui/templates/reslayout.kid
@@ -1,22 +1,22 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xmlns:py="http://purl.org/kid/ns#"
- py:extends="'master.kid'">
-<head>
-</head>
-
-<body py:match="item.tag=='{http://www.w3.org/1999/xhtml}body'" py:attrs="item.items()">
- <div id="main_content">
- <div id="status_block" class="flash" py:if="value_of('tg_flash', None)" py:content="tg_flash"></div>
-
- <div py:replace="[item.text]+item[:]"></div>
- </div>
-
- <div id="sidebar">
- <h2>Tools</h2>
- <a href="${tg.url('/resindex')}">Add Resource</a><br/>
- <a href="${tg.url('/resindex')}">Find Resource</a><br/>
- <a href="${tg.url('/resindex')}">List Resources</a><br/>
- </div>
-</body>
-
-</html>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xmlns:py="http://purl.org/kid/ns#"
+ py:extends="'master.kid'">
+<head>
+</head>
+
+<body py:match="item.tag=='{http://www.w3.org/1999/xhtml}body'" py:attrs="item.items()">
+ <div id="main_content">
+ <div id="status_block" class="flash" py:if="value_of('tg_flash', None)" py:content="tg_flash"></div>
+
+ <div py:replace="[item.text]+item[:]"></div>
+ </div>
+
+ <div id="sidebar">
+ <h2>Tools</h2>
+ <a href="${tg.url('/resindex')}">Add Resource</a><br/>
+ <a href="${tg.url('/resindex')}">Find Resource</a><br/>
+ <a href="${tg.url('/resindex')}">List Resources</a><br/>
+ </div>
+</body>
+
+</html>
diff --git a/ipa-server/ipa-gui/ipagui/templates/userlayout.kid b/ipa-server/ipa-gui/ipagui/templates/userlayout.kid
index de7164f3..40ddcca3 100644
--- a/ipa-server/ipa-gui/ipagui/templates/userlayout.kid
+++ b/ipa-server/ipa-gui/ipagui/templates/userlayout.kid
@@ -1,22 +1,22 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xmlns:py="http://purl.org/kid/ns#"
- py:extends="'master.kid'">
-<head>
-</head>
-
-<body py:match="item.tag=='{http://www.w3.org/1999/xhtml}body'" py:attrs="item.items()">
- <div id="main_content">
- <div id="status_block" class="flash" py:if="value_of('tg_flash', None)" py:content="tg_flash"></div>
-
- <div py:replace="[item.text]+item[:]"></div>
- </div>
-
- <div id="sidebar">
- <h2>Tools</h2>
- <a href="${tg.url('/usernew')}">Add Person</a><br/>
- <a href="${tg.url('/userindex')}">Find People</a><br/>
- <a href="${tg.url('/userlist')}">List People</a><br/>
- </div>
-</body>
-
-</html>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xmlns:py="http://purl.org/kid/ns#"
+ py:extends="'master.kid'">
+<head>
+</head>
+
+<body py:match="item.tag=='{http://www.w3.org/1999/xhtml}body'" py:attrs="item.items()">
+ <div id="main_content">
+ <div id="status_block" class="flash" py:if="value_of('tg_flash', None)" py:content="tg_flash"></div>
+
+ <div py:replace="[item.text]+item[:]"></div>
+ </div>
+
+ <div id="sidebar">
+ <h2>Tools</h2>
+ <a href="${tg.url('/usernew')}">Add Person</a><br/>
+ <a href="${tg.url('/userindex')}">Find People</a><br/>
+ <a href="${tg.url('/userlist')}">List People</a><br/>
+ </div>
+</body>
+
+</html>
diff --git a/ipa-server/ipa-gui/ipagui/templates/welcome.kid b/ipa-server/ipa-gui/ipagui/templates/welcome.kid
index 02b140f6..dc08c0b3 100644
--- a/ipa-server/ipa-gui/ipagui/templates/welcome.kid
+++ b/ipa-server/ipa-gui/ipagui/templates/welcome.kid
@@ -1,18 +1,18 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xmlns:py="http://purl.org/kid/ns#"
- py:extends="'master.kid'">
-<head>
-<meta content="text/html; charset=utf-8" http-equiv="Content-Type" py:replace="''"/>
-<title>Welcome</title>
-</head>
-<body>
- <div id="sidebar">
- <h2>Tools</h2>
- </div>
- <div id="main_content">
- <div id="status_block" class="flash" py:if="value_of('tg_flash', None)" py:content="tg_flash"></div>
- <h1>Welcome to Free IPA</h1>
- </div>
-
-</body>
-</html>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xmlns:py="http://purl.org/kid/ns#"
+ py:extends="'master.kid'">
+<head>
+<meta content="text/html; charset=utf-8" http-equiv="Content-Type" py:replace="''"/>
+<title>Welcome</title>
+</head>
+<body>
+ <div id="sidebar">
+ <h2>Tools</h2>
+ </div>
+ <div id="main_content">
+ <div id="status_block" class="flash" py:if="value_of('tg_flash', None)" py:content="tg_flash"></div>
+ <h1>Welcome to Free IPA</h1>
+ </div>
+
+</body>
+</html>
diff --git a/ipa-server/ipa-install/Makefile b/ipa-server/ipa-install/Makefile
index 877ae09c..2524baf3 100644
--- a/ipa-server/ipa-install/Makefile
+++ b/ipa-server/ipa-install/Makefile
@@ -3,6 +3,7 @@ SBINDIR=$(DESTDIR)/usr/sbin
all: ;
install:
+ -mkdir $(SBINDIR)
install -m 755 ipa-server-install $(SBINDIR)
install -m 755 ipa-server-setupssl $(SBINDIR)
$(MAKE) -C share $@
diff --git a/ipa-server/ipa-kpasswd/Makefile b/ipa-server/ipa-kpasswd/Makefile
index 4182b770..11755a9a 100644
--- a/ipa-server/ipa-kpasswd/Makefile
+++ b/ipa-server/ipa-kpasswd/Makefile
@@ -1,5 +1,22 @@
-all:
- gcc ipa_kpasswd.c -I/usr/include -lkrb5 -llber -lldap -g -o ipa_kpasswd
+PREFIX ?= $(DESTDIR)/usr
+SBIN = $(PREFIX)/sbin
+
+LDFLAGS +=-lkrb5 -llber -lldap
+CFLAGS ?= -Wall -Wshadow -O2
+
+OBJS = $(patsubst %.c,%.o,$(wildcard *.c))
+
+all: $(OBJS)
+ $(CC) $(LDFLAGS) $(OBJS) -o ipa_kpasswd
+
+%.o: %.c
+ $(CC) $(CFLAGS) -c -o $@ $<
install:
- cp -f ipa_kpasswd /usr/sbin/
+ -mkdir -p $(SBIN)
+ install -m 755 ipa_kpasswd $(SBIN)
+
+clean:
+ rm -f *.o
+ rm -f ipa_kpasswd
+ rm -f *~ \ No newline at end of file
diff --git a/ipa-server/ipa-slapi-plugins/Makefile b/ipa-server/ipa-slapi-plugins/Makefile
new file mode 100644
index 00000000..95ed26c6
--- /dev/null
+++ b/ipa-server/ipa-slapi-plugins/Makefile
@@ -0,0 +1,17 @@
+SUBDIRS=ipa-pwd-extop
+
+all:
+ @for subdir in $(SUBDIRS); do \
+ (cd $$subdir && $(MAKE) $@) || exit 1; \
+ done
+
+install:
+ @for subdir in $(SUBDIRS); do \
+ (cd $$subdir && $(MAKE) $@) || exit 1; \
+ done
+
+clean:
+ @for subdir in $(SUBDIRS); do \
+ (cd $$subdir && $(MAKE) $@) || exit 1; \
+ done
+ rm -f *~
diff --git a/ipa-server/ipa-slapi-plugins/ipa-pwd-extop/Makefile b/ipa-server/ipa-slapi-plugins/ipa-pwd-extop/Makefile
index 2a564643..e89ca27a 100644
--- a/ipa-server/ipa-slapi-plugins/ipa-pwd-extop/Makefile
+++ b/ipa-server/ipa-slapi-plugins/ipa-pwd-extop/Makefile
@@ -1,5 +1,28 @@
-all:
- gcc ipa_pwd_extop.c -I/usr/include -I/usr/include/nss3 -I/usr/include/mozldap -I/usr/include/nspr4 -I/usr/include/fedora-ds -lkrb5 -lmhash -llber -lssl -shared -g -fPIC -DPIC -Wl,-soname -Wl,libipa_pwd_extop.so -o libipa_pwd_extop.so
+PREFIX ?= $(DESTDIR)/usr
+LIBDIR = $(PREFIX)/lib/fedora-ds/plugins
+SHAREDIR = $(DESTDIR)/usr/share/ipa
+
+SONAME = libipa_pwd_extop.so
+LDFLAGS += -lkrb5 -llber -lldap -lmhash -llber -lssl
+CFLAGS ?= -Wall -Wshadow -O2
+CFLAGS += -I/usr/include/fedora-ds -I/usr/include/nss3 -I/usr/include/mozldap -I/usr/include/nspr4 -fPIC -DPIC
+
+OBJS = $(patsubst %.c,%.o,$(wildcard *.c))
+
+all: $(OBJS)
+ $(CC) $(LDFLAGS) $(OBJS) -Wl,-soname -Wl,$(SONAME) -shared -o $(SONAME)
+
+%.o: %.c
+ $(CC) $(CFLAGS) -c -o $@ $<
install:
- cp -f libipa_pwd_extop.so /usr/lib/fedora-ds/plugins/
+ -mkdir -p $(LIBDIR)
+ install -m 644 libipa_pwd_extop.so $(LIBDIR)
+ install -m 644 *.ldif $(SHAREDIR)
+
+clean:
+ rm -f *.o
+ rm -f $(SONAME)
+ rm -f *~
+
+