diff --git a/Makefile b/Makefile index 5de0c5d3b..8a7f79092 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 904a3b693..b7a9a5044 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 904a3b693..71d68bc6e 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 e9b1e708d..d1a6b5db0 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 dd3fa71ef..faee6e61c 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 463db5893..2da36a96a 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 - 0.2.0-1 +- Added support for ipa_kpasswd and ipa_pwd_extop + * Mon Aug 5 2007 Rob Crittenden - 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 - 0.1.0-1 +* Fri Jul 27 2007 Karl MacMillan - 0.1.0-1 - Initial rpm version diff --git a/ipa-server/freeipa-server.spec.in b/ipa-server/freeipa-server.spec.in index 549afc979..aa75917da 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 - 0.2.0-1 +- Added support for ipa_kpasswd and ipa_pwd_extop + * Mon Aug 5 2007 Rob Crittenden - 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 - 0.1.0-1 +* Fri Jul 27 2007 Karl MacMillan - 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 e4a1d9f8c..9cd7fe094 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 53b6ce0a7..af05a8082 100644 --- a/ipa-server/ipa-gui/ipagui/templates/grouplayout.kid +++ b/ipa-server/ipa-gui/ipagui/templates/grouplayout.kid @@ -1,22 +1,22 @@ - - - - - - -
-
- -
-
- - - - - + + + + + + +
+
+ +
+
+ + + + + diff --git a/ipa-server/ipa-gui/ipagui/templates/master.kid b/ipa-server/ipa-gui/ipagui/templates/master.kid index 436f0378f..464560d26 100644 --- a/ipa-server/ipa-gui/ipagui/templates/master.kid +++ b/ipa-server/ipa-gui/ipagui/templates/master.kid @@ -1,48 +1,48 @@ - - - - - - - Your title goes here - - - - - -
- - Login - - - Welcome ${tg.identity.user.display_name}. - Logout - -
- -
- - - - -
- - - -
- - - - + + + + + + + Your title goes here + + + + + +
+ + Login + + + Welcome ${tg.identity.user.display_name}. + Logout + +
+ +
+ + + + +
+ + + +
+ + + + diff --git a/ipa-server/ipa-gui/ipagui/templates/reslayout.kid b/ipa-server/ipa-gui/ipagui/templates/reslayout.kid index 3f5aa96e3..5b9b35c12 100644 --- a/ipa-server/ipa-gui/ipagui/templates/reslayout.kid +++ b/ipa-server/ipa-gui/ipagui/templates/reslayout.kid @@ -1,22 +1,22 @@ - - - - - - -
-
- -
-
- - - - - + + + + + + +
+
+ +
+
+ + + + + diff --git a/ipa-server/ipa-gui/ipagui/templates/userlayout.kid b/ipa-server/ipa-gui/ipagui/templates/userlayout.kid index de7164f33..40ddcca39 100644 --- a/ipa-server/ipa-gui/ipagui/templates/userlayout.kid +++ b/ipa-server/ipa-gui/ipagui/templates/userlayout.kid @@ -1,22 +1,22 @@ - - - - - - -
-
- -
-
- - - - - + + + + + + +
+
+ +
+
+ + + + + diff --git a/ipa-server/ipa-gui/ipagui/templates/welcome.kid b/ipa-server/ipa-gui/ipagui/templates/welcome.kid index 02b140f64..dc08c0b32 100644 --- a/ipa-server/ipa-gui/ipagui/templates/welcome.kid +++ b/ipa-server/ipa-gui/ipagui/templates/welcome.kid @@ -1,18 +1,18 @@ - - - - -Welcome - - - -
-
-

Welcome to Free IPA

-
- - - + + + + +Welcome + + + +
+
+

Welcome to Free IPA

+
+ + + diff --git a/ipa-server/ipa-install/Makefile b/ipa-server/ipa-install/Makefile index 877ae09cc..2524baf31 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 4182b7705..11755a9a5 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 000000000..95ed26c65 --- /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 2a5646432..e89ca27ad 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 *~ + +