You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@directory.apache.org by tb...@apache.org on 2006/12/12 16:24:14 UTC
svn commit: r486187 [14/49] - in /directory/trunks/triplesec: ./ admin-api/
admin-api/src/ admin-api/src/main/ admin-api/src/main/java/
admin-api/src/main/java/org/ admin-api/src/main/java/org/safehaus/
admin-api/src/main/java/org/safehaus/triplesec/ a...
Added: directory/trunks/triplesec/guardian-ldif/src/main/java/org/safehaus/triplesec/guardian/ldif/LdifConnectionDriver.java
URL: http://svn.apache.org/viewvc/directory/trunks/triplesec/guardian-ldif/src/main/java/org/safehaus/triplesec/guardian/ldif/LdifConnectionDriver.java?view=auto&rev=486187
==============================================================================
--- directory/trunks/triplesec/guardian-ldif/src/main/java/org/safehaus/triplesec/guardian/ldif/LdifConnectionDriver.java (added)
+++ directory/trunks/triplesec/guardian-ldif/src/main/java/org/safehaus/triplesec/guardian/ldif/LdifConnectionDriver.java Tue Dec 12 07:23:31 2006
@@ -0,0 +1,103 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you 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.
+ *
+ */
+package org.safehaus.triplesec.guardian.ldif;
+
+
+import java.io.File;
+import java.net.MalformedURLException;
+import java.net.URL;
+import java.util.Properties;
+
+import org.apache.directory.shared.ldap.NotImplementedException;
+import org.safehaus.triplesec.guardian.ApplicationPolicy;
+import org.safehaus.triplesec.guardian.ApplicationPolicyFactory;
+import org.safehaus.triplesec.guardian.ConnectionDriver;
+import org.safehaus.triplesec.guardian.GuardianException;
+
+
+/**
+ * A simple LDIF file based driver for guardian.
+ *
+ * @author <a href="mailto:akarasulu@safehaus.org">Alex Karasulu</a>
+ * @version $Rev: 62 $
+ */
+public class LdifConnectionDriver implements ConnectionDriver
+{
+ static
+ {
+ ApplicationPolicyFactory.registerDriver( new LdifConnectionDriver() );
+ }
+
+
+ public LdifConnectionDriver()
+ {
+ }
+
+
+ public boolean accept( String url )
+ {
+ if ( ( url.startsWith( "file://" ) || url.startsWith( "jar:" ) ) && url.endsWith( ".ldif" ) )
+ {
+ return true;
+ }
+
+ return false;
+ }
+
+
+ public ApplicationPolicy newStore( String url, Properties info ) throws GuardianException
+ {
+ if ( info == null )
+ {
+ info = new Properties();
+ }
+
+ if ( url == null )
+ {
+ throw new IllegalArgumentException( "A non-null url must be provided." );
+ }
+
+ String application = info.getProperty( "applicationPrincipalDN" );
+ if ( application == null )
+ {
+ throw new IllegalArgumentException( "An applicationPrincipalDN property value must be provided." );
+ }
+
+ if ( url.startsWith( "file://" ) )
+ {
+ File ldifFile = null;
+ try
+ {
+ ldifFile = new File( new URL( url ).getPath() );
+ }
+ catch ( MalformedURLException e )
+ {
+ throw new GuardianException( "Malformed LDIF file URL: " + url );
+ }
+ return new LdifApplicationPolicy( ldifFile, info );
+ }
+ else if ( url.startsWith( "jar:" ) )
+ {
+ throw new NotImplementedException();
+ }
+
+ throw new GuardianException( "Unrecognized URL scheme for " );
+ }
+}
Added: directory/trunks/triplesec/guardian-ldif/src/test/java/org/safehaus/triplesec/guardian/ldif/LdapConnectionDriverTest.java
URL: http://svn.apache.org/viewvc/directory/trunks/triplesec/guardian-ldif/src/test/java/org/safehaus/triplesec/guardian/ldif/LdapConnectionDriverTest.java?view=auto&rev=486187
==============================================================================
--- directory/trunks/triplesec/guardian-ldif/src/test/java/org/safehaus/triplesec/guardian/ldif/LdapConnectionDriverTest.java (added)
+++ directory/trunks/triplesec/guardian-ldif/src/test/java/org/safehaus/triplesec/guardian/ldif/LdapConnectionDriverTest.java Tue Dec 12 07:23:31 2006
@@ -0,0 +1,79 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you 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.
+ *
+ */
+package org.safehaus.triplesec.guardian.ldif;
+
+
+import junit.framework.TestCase;
+
+import java.util.Properties;
+
+
+/**
+ * Tests the LDAP ConnectionDriver.
+ *
+ * @author <a href="mailto:akarasulu@safehaus.org">Alex Karasulu</a>
+ * @version $Rev$
+ */
+public class LdapConnectionDriverTest extends TestCase
+{
+ public void testNullProperties()
+ {
+ LdifConnectionDriver driver = new LdifConnectionDriver();
+ try
+ {
+ driver.newStore( "", null );
+ fail( "should not get here due to exception" );
+ }
+ catch( IllegalArgumentException e )
+ {
+ }
+ }
+
+
+ public void testNullUrl()
+ {
+ LdifConnectionDriver driver = new LdifConnectionDriver();
+ Properties props = new Properties();
+ props.setProperty( "applicationPrincipalDN", "appName=something" );
+ try
+ {
+ driver.newStore( null, props );
+ fail( "should never get here due to an exception" );
+ }
+ catch ( IllegalArgumentException e )
+ {
+ }
+ }
+
+
+ public void testNoPrincipalName()
+ {
+ LdifConnectionDriver driver = new LdifConnectionDriver();
+ try
+ {
+ Properties props = new Properties();
+ driver.newStore( "", props );
+ fail( "should never get here due to an exception" );
+ }
+ catch ( IllegalArgumentException e )
+ {
+ }
+ }
+}
Added: directory/trunks/triplesec/guardian-ldif/src/test/java/org/safehaus/triplesec/guardian/ldif/LdifApplicationPolicyTest.java
URL: http://svn.apache.org/viewvc/directory/trunks/triplesec/guardian-ldif/src/test/java/org/safehaus/triplesec/guardian/ldif/LdifApplicationPolicyTest.java?view=auto&rev=486187
==============================================================================
--- directory/trunks/triplesec/guardian-ldif/src/test/java/org/safehaus/triplesec/guardian/ldif/LdifApplicationPolicyTest.java (added)
+++ directory/trunks/triplesec/guardian-ldif/src/test/java/org/safehaus/triplesec/guardian/ldif/LdifApplicationPolicyTest.java Tue Dec 12 07:23:31 2006
@@ -0,0 +1,207 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you 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.
+ *
+ */
+package org.safehaus.triplesec.guardian.ldif;
+
+
+import junit.framework.TestCase;
+
+import java.util.HashSet;
+import java.util.Iterator;
+import java.util.Properties;
+import java.util.Set;
+
+import org.safehaus.triplesec.guardian.ApplicationPolicyFactory;
+import org.safehaus.triplesec.guardian.Profile;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+
+/**
+ * TestCase to test the LDAP ApplicationPolicyStore implementation.
+ *
+ * @author <a href="mailto:akarasulu@safehaus.org">Alex Karasulu</a>
+ * @version $Rev$
+ */
+public class LdifApplicationPolicyTest extends TestCase
+{
+ Logger log = LoggerFactory.getLogger( LdifApplicationPolicyTest.class );
+ LdifApplicationPolicy policy;
+
+
+ public LdifApplicationPolicyTest( String string ) throws Exception
+ {
+ super( string );
+ }
+
+
+ public LdifApplicationPolicyTest() throws Exception
+ {
+ super();
+ }
+
+
+ protected void setUp() throws Exception
+ {
+ super.setUp();
+ Properties props = new Properties();
+ props.setProperty( "applicationPrincipalDN", "appName=mockApplication,ou=applications,dc=example,dc=com" );
+ Class.forName( "org.safehaus.triplesec.guardian.ldif.LdifConnectionDriver" );
+ String url = System.getProperty( "ldif.url", "file://src/test/resources/server.ldif" );
+ log.info( "using url for ldif file: " + url );
+ policy = ( LdifApplicationPolicy ) ApplicationPolicyFactory.newInstance( url, props );
+ }
+
+
+ protected void tearDown() throws Exception
+ {
+ super.tearDown();
+ policy.close();
+ policy = null;
+ }
+
+
+ public void testGetProfileIds() throws Exception
+ {
+ Set ids = new HashSet();
+ for ( Iterator ii = this.policy.getProfileIdIterator(); ii.hasNext(); /**/ )
+ {
+ ids.add( ii.next() );
+ }
+ assertEquals( 5, ids.size() );
+ assertTrue( ids.contains( "mockProfile0" ) );
+ assertTrue( ids.contains( "mockProfile1" ) );
+ assertTrue( ids.contains( "mockProfile2" ) );
+ assertTrue( ids.contains( "mockProfile3" ) );
+ assertTrue( ids.contains( "mockProfile4" ) );
+ assertFalse( ids.contains( "bogus" ) );
+ }
+
+
+ public void testGetApplicationNameString()
+ {
+ String applicationName = LdifApplicationPolicy.getApplicationName(
+ "appName=testingApp,ou=applications,dc=example,dc=com" );
+ assertEquals( "testingApp", applicationName );
+
+ try
+ {
+ LdifApplicationPolicy.getApplicationName( "notanapp=blahblah" );
+ fail( "should never get here due to an exception" );
+ }
+ catch ( IllegalArgumentException e )
+ {
+ }
+ }
+
+
+ public void testNonExistantProfile()
+ {
+ Profile p = policy.getProfile( "nonexistant" );
+ assertNull( p );
+ }
+
+
+ public void testProfile0()
+ {
+ Profile p = policy.getProfile( "mockProfile0" );
+ assertTrue( p.getEffectivePermissions().isEmpty() );
+ assertEquals( 5, policy.getRoles().size() );
+ assertEquals( p, policy.getProfile( "mockProfile0" ) );
+ }
+
+
+ public void testProfile1()
+ {
+ Profile p = policy.getProfile( "mockProfile1" );
+ assertEquals( 2, p.getEffectivePermissions().size() );
+ assertTrue( p.hasPermission( "mockPerm0" ) );
+ assertTrue( p.hasPermission( "mockPerm1" ) );
+ assertFalse( p.hasPermission( "mockPerm3") );
+ assertEquals( p, policy.getProfile( "mockProfile1" ) );
+ }
+
+
+ public void testProfile2()
+ {
+ Profile p = policy.getProfile( "mockProfile2" );
+ assertEquals( 2, p.getEffectivePermissions().size() );
+ assertTrue( p.hasPermission( "mockPerm0" ) );
+ assertTrue( p.hasPermission( "mockPerm1" ) );
+ assertFalse( p.hasPermission( "mockPerm3") );
+ assertEquals( p, policy.getProfile( "mockProfile2" ) );
+ }
+
+
+ public void testProfile3()
+ {
+ Profile p = policy.getProfile( "mockProfile3" );
+ assertEquals( 4, p.getEffectivePermissions().size() );
+ assertTrue( p.hasPermission( "mockPerm0" ) );
+ assertTrue( p.hasPermission( "mockPerm7" ) );
+ assertTrue( p.hasPermission( "mockPerm2" ) );
+ assertTrue( p.hasPermission( "mockPerm3" ) );
+ assertFalse( p.hasPermission( "mockPerm4" ) );
+ assertEquals( p, policy.getProfile( "mockProfile3" ) );
+ }
+
+
+ public void testProfile4()
+ {
+ Profile p = policy.getProfile( "mockProfile4" );
+ assertEquals( 7, p.getEffectivePermissions().size() );
+ assertTrue( p.hasPermission( "mockPerm0" ) );
+ assertFalse( p.hasPermission( "mockPerm1" ) );
+ assertTrue( p.hasPermission( "mockPerm2" ) );
+ assertTrue( p.hasPermission( "mockPerm3" ) );
+ assertTrue( p.hasPermission( "mockPerm4" ) );
+ assertTrue( p.hasPermission( "mockPerm5" ) );
+ assertTrue( p.hasPermission( "mockPerm6" ) );
+ assertFalse( p.hasPermission( "mockPerm7" ) );
+ assertFalse( p.hasPermission( "mockPerm8" ) );
+ assertTrue( p.hasPermission( "mockPerm9" ) );
+ assertFalse( p.hasPermission( "mockPerm14" ) );
+ assertEquals( p, policy.getProfile( "mockProfile4" ) );
+ }
+
+
+ public void testGetUserProfileIds()
+ {
+ Set ids = policy.getUserProfileIds( "akarasulu" );
+ assertEquals( 5, ids.size() );
+ ids = policy.getUserProfileIds( "trustin" );
+ assertEquals( 0, ids.size() );
+ }
+
+
+ public void testClosedState()
+ {
+ policy.close();
+ try
+ {
+ policy.getProfile( "asdf" );
+ fail( "should never get here due to an exception" );
+ }
+ catch ( Exception e )
+ {
+
+ }
+ }
+}
+
\ No newline at end of file
Added: directory/trunks/triplesec/guardian-ldif/src/test/resources/log4j.properties
URL: http://svn.apache.org/viewvc/directory/trunks/triplesec/guardian-ldif/src/test/resources/log4j.properties?view=auto&rev=486187
==============================================================================
--- directory/trunks/triplesec/guardian-ldif/src/test/resources/log4j.properties (added)
+++ directory/trunks/triplesec/guardian-ldif/src/test/resources/log4j.properties Tue Dec 12 07:23:31 2006
@@ -0,0 +1,11 @@
+# Set root logger level to DEBUG and its only appender to A1.
+log4j.rootLogger=WARN, A1
+
+# A1 is set to be a ConsoleAppender.
+log4j.appender.A1=org.apache.log4j.ConsoleAppender
+
+# A1 uses PatternLayout.
+log4j.appender.A1.layout=org.apache.log4j.PatternLayout
+log4j.appender.A1.layout.ConversionPattern=%-4r [%t] %-5p %c %x - %m%n
+
+
Added: directory/trunks/triplesec/guardian-ldif/src/test/resources/server.ldif
URL: http://svn.apache.org/viewvc/directory/trunks/triplesec/guardian-ldif/src/test/resources/server.ldif?view=auto&rev=486187
==============================================================================
--- directory/trunks/triplesec/guardian-ldif/src/test/resources/server.ldif (added)
+++ directory/trunks/triplesec/guardian-ldif/src/test/resources/server.ldif Tue Dec 12 07:23:31 2006
@@ -0,0 +1,151 @@
+dn: ou=applications,dc=example,dc=com
+objectClass: top
+objectClass: organizationalunit
+ou: applications
+
+dn: appName=mockApplication,ou=applications,dc=example,dc=com
+objectClass: top
+objectClass: policyApplication
+appName: mockApplication
+userPassword:: dGVzdGluZw==
+
+dn: ou=permissions,appName=mockApplication,ou=applications,dc=example,dc=com
+objectClass: top
+objectClass: organizationalUnit
+ou: permissions
+
+dn: permName=mockPerm0,ou=permissions,appName=mockApplication,ou=applications,dc=example,dc=com
+objectClass: top
+objectClass: policyPermission
+permName: mockPerm0
+
+dn: permName=mockPerm1,ou=permissions,appName=mockApplication,ou=applications,dc=example,dc=com
+objectClass: top
+objectClass: policyPermission
+permName: mockPerm1
+
+dn: permName=mockPerm2,ou=permissions,appName=mockApplication,ou=applications,dc=example,dc=com
+objectClass: top
+objectClass: policyPermission
+permName: mockPerm2
+
+dn: permName=mockPerm3,ou=permissions,appName=mockApplication,ou=applications,dc=example,dc=com
+objectClass: top
+objectClass: policyPermission
+permName: mockPerm3
+
+dn: permName=mockPerm4,ou=permissions,appName=mockApplication,ou=applications,dc=example,dc=com
+objectClass: top
+objectClass: policyPermission
+permName: mockPerm4
+
+dn: permName=mockPerm5,ou=permissions,appName=mockApplication,ou=applications,dc=example,dc=com
+objectClass: top
+objectClass: policyPermission
+permName: mockPerm5
+
+dn: permName=mockPerm6,ou=permissions,appName=mockApplication,ou=applications,dc=example,dc=com
+objectClass: top
+objectClass: policyPermission
+permName: mockPerm6
+
+dn: permName=mockPerm7,ou=permissions,appName=mockApplication,ou=applications,dc=example,dc=com
+objectClass: top
+objectClass: policyPermission
+permName: mockPerm7
+
+dn: permName=mockPerm8,ou=permissions,appName=mockApplication,ou=applications,dc=example,dc=com
+objectClass: top
+objectClass: policyPermission
+permName: mockPerm8
+
+dn: permName=mockPerm9,ou=permissions,appName=mockApplication,ou=applications,dc=example,dc=com
+objectClass: top
+objectClass: policyPermission
+permName: mockPerm9
+
+dn: ou=roles,appName=mockApplication,ou=applications,dc=example,dc=com
+objectClass: top
+objectClass: organizationalUnit
+ou: roles
+
+dn: roleName=mockRole0,ou=roles,appName=mockApplication,ou=applications,dc=example,dc=com
+objectClass: policyRole
+objectClass: top
+roleName: mockRole0
+
+dn: roleName=mockRole1,ou=roles,appName=mockApplication,ou=applications,dc=example,dc=com
+objectClass: top
+objectClass: policyRole
+grants: mockPerm0
+roleName: mockRole1
+
+dn: roleName=mockRole2,ou=roles,appName=mockApplication,ou=applications,dc=example,dc=com
+objectClass: top
+objectClass: policyRole
+grants: mockPerm1
+roleName: mockRole2
+
+dn: roleName=mockRole3,ou=roles,appName=mockApplication,ou=applications,dc=example,dc=com
+objectClass: top
+objectClass: policyRole
+grants: mockPerm3
+grants: mockPerm2
+roleName: mockRole3
+
+dn: roleName=mockRole4,ou=roles,appName=mockApplication,ou=applications,dc=example,dc=com
+objectClass: top
+objectClass: policyRole
+grants: mockPerm9
+grants: mockPerm7
+grants: mockPerm6
+grants: mockPerm5
+grants: mockPerm4
+roleName: mockRole4
+
+dn: ou=profiles,appName=mockApplication,ou=applications,dc=example,dc=com
+objectClass: top
+objectClass: organizationalUnit
+ou: profiles
+
+dn: profileId=mockProfile0,ou=profiles,appName=mockApplication,ou=applications,dc=example,dc=com
+objectClass: top
+objectClass: policyProfile
+user: akarasulu
+profileId: mockProfile0
+
+dn: profileId=mockProfile1,ou=profiles,appName=mockApplication,ou=applications,dc=example,dc=com
+objectClass: top
+objectClass: policyProfile
+roles: mockRole2
+roles: mockRole1
+user: akarasulu
+profileId: mockProfile1
+
+dn: profileId=mockProfile2,ou=profiles,appName=mockApplication,ou=applications,dc=example,dc=com
+objectClass: top
+objectClass: policyProfile
+grants: mockPerm0
+roles: mockRole2
+user: akarasulu
+profileId: mockProfile2
+
+dn: profileId=mockProfile3,ou=profiles,appName=mockApplication,ou=applications,dc=example,dc=com
+objectClass: top
+objectClass: policyProfile
+grants: mockPerm7
+grants: mockPerm0
+roles: mockRole3
+user: akarasulu
+profileId: mockProfile3
+
+dn: profileId=mockProfile4,ou=profiles,appName=mockApplication,ou=applications,dc=example,dc=com
+objectClass: top
+objectClass: policyProfile
+denials: mockPerm7
+grants: mockPerm0
+roles: mockRole4
+roles: mockRole3
+user: akarasulu
+profileId: mockProfile4
+
Added: directory/trunks/triplesec/installers/LICENSE.txt
URL: http://svn.apache.org/viewvc/directory/trunks/triplesec/installers/LICENSE.txt?view=auto&rev=486187
==============================================================================
--- directory/trunks/triplesec/installers/LICENSE.txt (added)
+++ directory/trunks/triplesec/installers/LICENSE.txt Tue Dec 12 07:23:31 2006
@@ -0,0 +1,202 @@
+
+ Apache License
+ Version 2.0, January 2004
+ http://www.apache.org/licenses/
+
+ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
+
+ 1. Definitions.
+
+ "License" shall mean the terms and conditions for use, reproduction,
+ and distribution as defined by Sections 1 through 9 of this document.
+
+ "Licensor" shall mean the copyright owner or entity authorized by
+ the copyright owner that is granting the License.
+
+ "Legal Entity" shall mean the union of the acting entity and all
+ other entities that control, are controlled by, or are under common
+ control with that entity. For the purposes of this definition,
+ "control" means (i) the power, direct or indirect, to cause the
+ direction or management of such entity, whether by contract or
+ otherwise, or (ii) ownership of fifty percent (50%) or more of the
+ outstanding shares, or (iii) beneficial ownership of such entity.
+
+ "You" (or "Your") shall mean an individual or Legal Entity
+ exercising permissions granted by this License.
+
+ "Source" form shall mean the preferred form for making modifications,
+ including but not limited to software source code, documentation
+ source, and configuration files.
+
+ "Object" form shall mean any form resulting from mechanical
+ transformation or translation of a Source form, including but
+ not limited to compiled object code, generated documentation,
+ and conversions to other media types.
+
+ "Work" shall mean the work of authorship, whether in Source or
+ Object form, made available under the License, as indicated by a
+ copyright notice that is included in or attached to the work
+ (an example is provided in the Appendix below).
+
+ "Derivative Works" shall mean any work, whether in Source or Object
+ form, that is based on (or derived from) the Work and for which the
+ editorial revisions, annotations, elaborations, or other modifications
+ represent, as a whole, an original work of authorship. For the purposes
+ of this License, Derivative Works shall not include works that remain
+ separable from, or merely link (or bind by name) to the interfaces of,
+ the Work and Derivative Works thereof.
+
+ "Contribution" shall mean any work of authorship, including
+ the original version of the Work and any modifications or additions
+ to that Work or Derivative Works thereof, that is intentionally
+ submitted to Licensor for inclusion in the Work by the copyright owner
+ or by an individual or Legal Entity authorized to submit on behalf of
+ the copyright owner. For the purposes of this definition, "submitted"
+ means any form of electronic, verbal, or written communication sent
+ to the Licensor or its representatives, including but not limited to
+ communication on electronic mailing lists, source code control systems,
+ and issue tracking systems that are managed by, or on behalf of, the
+ Licensor for the purpose of discussing and improving the Work, but
+ excluding communication that is conspicuously marked or otherwise
+ designated in writing by the copyright owner as "Not a Contribution."
+
+ "Contributor" shall mean Licensor and any individual or Legal Entity
+ on behalf of whom a Contribution has been received by Licensor and
+ subsequently incorporated within the Work.
+
+ 2. Grant of Copyright License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ copyright license to reproduce, prepare Derivative Works of,
+ publicly display, publicly perform, sublicense, and distribute the
+ Work and such Derivative Works in Source or Object form.
+
+ 3. Grant of Patent License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ (except as stated in this section) patent license to make, have made,
+ use, offer to sell, sell, import, and otherwise transfer the Work,
+ where such license applies only to those patent claims licensable
+ by such Contributor that are necessarily infringed by their
+ Contribution(s) alone or by combination of their Contribution(s)
+ with the Work to which such Contribution(s) was submitted. If You
+ institute patent litigation against any entity (including a
+ cross-claim or counterclaim in a lawsuit) alleging that the Work
+ or a Contribution incorporated within the Work constitutes direct
+ or contributory patent infringement, then any patent licenses
+ granted to You under this License for that Work shall terminate
+ as of the date such litigation is filed.
+
+ 4. Redistribution. You may reproduce and distribute copies of the
+ Work or Derivative Works thereof in any medium, with or without
+ modifications, and in Source or Object form, provided that You
+ meet the following conditions:
+
+ (a) You must give any other recipients of the Work or
+ Derivative Works a copy of this License; and
+
+ (b) You must cause any modified files to carry prominent notices
+ stating that You changed the files; and
+
+ (c) You must retain, in the Source form of any Derivative Works
+ that You distribute, all copyright, patent, trademark, and
+ attribution notices from the Source form of the Work,
+ excluding those notices that do not pertain to any part of
+ the Derivative Works; and
+
+ (d) If the Work includes a "NOTICE" text file as part of its
+ distribution, then any Derivative Works that You distribute must
+ include a readable copy of the attribution notices contained
+ within such NOTICE file, excluding those notices that do not
+ pertain to any part of the Derivative Works, in at least one
+ of the following places: within a NOTICE text file distributed
+ as part of the Derivative Works; within the Source form or
+ documentation, if provided along with the Derivative Works; or,
+ within a display generated by the Derivative Works, if and
+ wherever such third-party notices normally appear. The contents
+ of the NOTICE file are for informational purposes only and
+ do not modify the License. You may add Your own attribution
+ notices within Derivative Works that You distribute, alongside
+ or as an addendum to the NOTICE text from the Work, provided
+ that such additional attribution notices cannot be construed
+ as modifying the License.
+
+ You may add Your own copyright statement to Your modifications and
+ may provide additional or different license terms and conditions
+ for use, reproduction, or distribution of Your modifications, or
+ for any such Derivative Works as a whole, provided Your use,
+ reproduction, and distribution of the Work otherwise complies with
+ the conditions stated in this License.
+
+ 5. Submission of Contributions. Unless You explicitly state otherwise,
+ any Contribution intentionally submitted for inclusion in the Work
+ by You to the Licensor shall be under the terms and conditions of
+ this License, without any additional terms or conditions.
+ Notwithstanding the above, nothing herein shall supersede or modify
+ the terms of any separate license agreement you may have executed
+ with Licensor regarding such Contributions.
+
+ 6. Trademarks. This License does not grant permission to use the trade
+ names, trademarks, service marks, or product names of the Licensor,
+ except as required for reasonable and customary use in describing the
+ origin of the Work and reproducing the content of the NOTICE file.
+
+ 7. Disclaimer of Warranty. Unless required by applicable law or
+ agreed to in writing, Licensor provides the Work (and each
+ Contributor provides its Contributions) on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied, including, without limitation, any warranties or conditions
+ of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
+ PARTICULAR PURPOSE. You are solely responsible for determining the
+ appropriateness of using or redistributing the Work and assume any
+ risks associated with Your exercise of permissions under this License.
+
+ 8. Limitation of Liability. In no event and under no legal theory,
+ whether in tort (including negligence), contract, or otherwise,
+ unless required by applicable law (such as deliberate and grossly
+ negligent acts) or agreed to in writing, shall any Contributor be
+ liable to You for damages, including any direct, indirect, special,
+ incidental, or consequential damages of any character arising as a
+ result of this License or out of the use or inability to use the
+ Work (including but not limited to damages for loss of goodwill,
+ work stoppage, computer failure or malfunction, or any and all
+ other commercial damages or losses), even if such Contributor
+ has been advised of the possibility of such damages.
+
+ 9. Accepting Warranty or Additional Liability. While redistributing
+ the Work or Derivative Works thereof, You may choose to offer,
+ and charge a fee for, acceptance of support, warranty, indemnity,
+ or other liability obligations and/or rights consistent with this
+ License. However, in accepting such obligations, You may act only
+ on Your own behalf and on Your sole responsibility, not on behalf
+ of any other Contributor, and only if You agree to indemnify,
+ defend, and hold each Contributor harmless for any liability
+ incurred by, or claims asserted against, such Contributor by reason
+ of your accepting any such warranty or additional liability.
+
+ END OF TERMS AND CONDITIONS
+
+ APPENDIX: How to apply the Apache License to your work.
+
+ To apply the Apache License to your work, attach the following
+ boilerplate notice, with the fields enclosed by brackets "[]"
+ replaced with your own identifying information. (Don't include
+ the brackets!) The text should be enclosed in the appropriate
+ comment syntax for the file format. We also recommend that a
+ file or class name and description of purpose be included on the
+ same "printed page" as the copyright notice for easier
+ identification within third-party archives.
+
+ Copyright [yyyy] [name of copyright owner]
+
+ 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.
Added: directory/trunks/triplesec/installers/NOTICE.txt
URL: http://svn.apache.org/viewvc/directory/trunks/triplesec/installers/NOTICE.txt?view=auto&rev=486187
==============================================================================
--- directory/trunks/triplesec/installers/NOTICE.txt (added)
+++ directory/trunks/triplesec/installers/NOTICE.txt Tue Dec 12 07:23:31 2006
@@ -0,0 +1,2 @@
+This product includes software developed by
+The Apache Software Foundation (http://www.apache.org/).
Added: directory/trunks/triplesec/installers/README.txt
URL: http://svn.apache.org/viewvc/directory/trunks/triplesec/installers/README.txt?view=auto&rev=486187
==============================================================================
--- directory/trunks/triplesec/installers/README.txt (added)
+++ directory/trunks/triplesec/installers/README.txt Tue Dec 12 07:23:31 2006
@@ -0,0 +1,81 @@
+ Triplesec Strong Identity Server
+ ================================
+
+Documentation
+-------------
+
+Documentation in the form of a User's Guide and tutorials are available here:
+
+ http://triplesec.safehaus.org
+
+
+Running
+-------
+
+The server is designed to run as a Windows Service or as a UNIX Daemon (also
+on MacOSX).
+
+You can start, and stop the daemon on UNIX using the /etc/init.d/triplesec
+script if you chose to install it via the installer. Otherwise you can use
+another script in the installation home under the bin directory called
+server.init.
+
+Both these scripts take a single argument of either start, stop or debug.
+The debug command starts the server without the daemon. It can be
+used to attach to the server using a debugger and to dump output to the
+console. Only in debug mode can the diagnostic screens be launched. In
+daemon mode the proper DISPLAY parameter must be set to launch the diagnostics
+on startup.
+
+On windows the server can be started like any other service using the services
+console via Microsoft Management Console. It can also be started, stopped and
+configured using the procrun service manager installed for it: see
+
+ Start->All Programs->Triplesec->Service Setttings
+
+A tray icon can also be launched to monitor it and to control the service: see
+
+ Start->All Programs->Triplesec->Tray Monitor
+
+On Windows the server can also be started in a special test mode where it
+dumps output to the command line in a cmd window rather than to the log files.
+You can launch the server in this mode by selecting
+
+ Start->All Programs->Triplesec->Test Service
+
+The server can also be started in test mode by running the triplesec.exe
+executable from the commandline. Likewise the service manager can be started
+from the command line by invoking apachedsw.exe.
+
+
+Tool Support
+------------
+
+Two tool come with Triplesec. A commandline client tool and GUI based
+administration tool called Triplesec Admin Tool. Both these tools can be
+found withing the bind directory. Both are executable jar files. So you
+can execute them like so:
+
+ java -jar triplesec-tools.jar help
+ java -jar triplesec-admin.jar /path/to/installation
+
+The command line tool, triplesec-tools.jar, can be run to perform maintenance
+operation on the server. Here's what the 'help' command lists for the tool:
+
+ help displays help message
+ notifications listens to the server for disconnect msgs
+ dump dumps partitions in LDIF format for recovery and backup
+ graceful starts graceful shutdown with shutdown delay & timeoffline
+ diagnostic launches diagnostic UI for inspecting server partitions
+ and client sessions
+
+The Triplesec Administration Tool is a Swing application which allows you to
+manage your realm. With it you can add, remove and modify, applications,
+roles, users, groups, and permissions. For more information about the admin
+tool you can consult it's User's Guide here:
+
+ http://docs.safehaus.org/display/TRIPLESEC/Administration+Tool+User's+Guide
+
+Thanks and enjoy,
+Triplesec Development Team
+
Added: directory/trunks/triplesec/installers/logo.ico
URL: http://svn.apache.org/viewvc/directory/trunks/triplesec/installers/logo.ico?view=auto&rev=486187
==============================================================================
Binary file - no diff available.
Propchange: directory/trunks/triplesec/installers/logo.ico
------------------------------------------------------------------------------
svn:mime-type = application/octet-stream
Added: directory/trunks/triplesec/installers/pom.xml
URL: http://svn.apache.org/viewvc/directory/trunks/triplesec/installers/pom.xml?view=auto&rev=486187
==============================================================================
--- directory/trunks/triplesec/installers/pom.xml (added)
+++ directory/trunks/triplesec/installers/pom.xml Tue Dec 12 07:23:31 2006
@@ -0,0 +1,522 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!--
+
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you 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.
+
+-->
+
+<project>
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <groupId>org.safehaus.triplesec</groupId>
+ <artifactId>build</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </parent>
+ <artifactId>triplesec-installers</artifactId>
+ <name>Triplesec Server Installers</name>
+ <packaging>jar</packaging>
+ <description>
+ Installer generating project for Triplesec
+ </description>
+ <dependencies>
+ <dependency>
+ <groupId>${pom.groupId}</groupId>
+ <artifactId>triplesec-jaas</artifactId>
+ <version>${pom.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>${pom.groupId}</groupId>
+ <artifactId>triplesec-tools</artifactId>
+ <version>${pom.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>${pom.groupId}</groupId>
+ <artifactId>triplesec-configuration</artifactId>
+ <version>${pom.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>${pom.groupId}</groupId>
+ <artifactId>triplesec-webapp-root</artifactId>
+ <version>${pom.version}</version>
+ <type>war</type>
+ </dependency>
+ <dependency>
+ <groupId>${pom.groupId}</groupId>
+ <artifactId>triplesec-webapp-activation</artifactId>
+ <version>${pom.version}</version>
+ <type>war</type>
+ </dependency>
+ <dependency>
+ <groupId>${pom.groupId}</groupId>
+ <artifactId>triplesec-swing-admin</artifactId>
+ <version>${pom.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>${pom.groupId}</groupId>
+ <artifactId>triplesec-webapp-config</artifactId>
+ <version>${pom.version}</version>
+ <type>war</type>
+ </dependency>
+ <dependency>
+ <groupId>${pom.groupId}</groupId>
+ <artifactId>triplesec-webapp-demo</artifactId>
+ <version>${pom.version}</version>
+ <type>war</type>
+ </dependency>
+ <dependency>
+ <groupId>${pom.groupId}</groupId>
+ <artifactId>triplesec-webapp-registration</artifactId>
+ <version>${pom.version}</version>
+ <type>war</type>
+ </dependency>
+ <dependency>
+ <groupId>${pom.groupId}</groupId>
+ <artifactId>triplesec-guardian-api</artifactId>
+ <version>${pom.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>${pom.groupId}</groupId>
+ <artifactId>triplesec-guardian-ldap</artifactId>
+ <version>${pom.version}</version>
+ </dependency>
+<!--
+ <dependency>
+ <groupId>${pom.groupId}</groupId>
+ <artifactId></artifactId>
+ <version>${pom.version}</version>
+ </dependency>
+-->
+ <dependency>
+ <groupId>org.apache.directory.daemon</groupId>
+ <artifactId>daemon-bootstrappers</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.directory.server</groupId>
+ <artifactId>apacheds-server-tools</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <groupId>org.slf4j</groupId>
+ <artifactId>nlog4j</artifactId>
+ <version>1.2.25</version>
+ </dependency>
+ <dependency>
+ <groupId>commons-daemon</groupId>
+ <artifactId>commons-daemon</artifactId>
+ <version>1.0.1</version>
+ </dependency>
+ <dependency>
+ <groupId>commons-lang</groupId>
+ <artifactId>commons-lang</artifactId>
+ <version>2.0</version>
+ </dependency>
+ <dependency>
+ <groupId>commons-cli</groupId>
+ <artifactId>commons-cli</artifactId>
+ <version>1.0</version>
+ </dependency>
+ <dependency>
+ <groupId>springframework</groupId>
+ <artifactId>spring-core</artifactId>
+ <version>1.2.6</version>
+ </dependency>
+ <dependency>
+ <groupId>springframework</groupId>
+ <artifactId>spring-beans</artifactId>
+ <version>1.2.6</version>
+ </dependency>
+ <dependency>
+ <groupId>commons-logging</groupId>
+ <artifactId>commons-logging</artifactId>
+ <version>1.0.4</version>
+ </dependency>
+ <dependency>
+ <groupId>springframework</groupId>
+ <artifactId>spring-context</artifactId>
+ <version>1.2.6</version>
+ </dependency>
+ </dependencies>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.directory.daemon</groupId>
+ <artifactId>daemon-plugin</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ <configuration>
+ <excludes>
+ <exclude>
+ org.safehaus.triplesec:triplesec-webapp-registration
+ </exclude>
+ <exclude>
+ org.safehaus.triplesec:triplesec-webapp-activation
+ </exclude>
+ <exclude>org.safehaus.triplesec:triplesec-swing-admin</exclude>
+ <exclude>org.safehaus.triplesec:triplesec-webapp-config</exclude>
+ <exclude>org.safehaus.triplesec:triplesec-webapp-root</exclude>
+ <exclude>org.safehaus.triplesec:triplesec-guardian-ldap</exclude>
+ <exclude>org.safehaus.triplesec:triplesec-jaas</exclude>
+ <exclude>org.safehaus.triplesec:triplesec-guardian-api</exclude>
+ <exclude>org.safehaus.triplesec:triplesec-tools</exclude>
+ <exclude>aopalliance:aopalliance</exclude>
+ <exclude>xerces:xerces</exclude>
+ <exclude>checkstyle:checkstyle</exclude>
+ <exclude>commons-pool:commons-pool</exclude>
+ <exclude>xml-apis:xml-apis</exclude>
+ <exclude>aspectwerkz:aspectwerkz-core</exclude>
+ <exclude>velocity:velocity</exclude>
+ <exclude>org.springframework:spring-aop</exclude>
+ <exclude>qdox:qdox</exclude>
+ <exclude>oro:oro</exclude>
+ <exclude>commons-cli:commons-cli</exclude>
+ <exclude>commons-attributes:commons-attributes-compiler</exclude>
+ <exclude>commons-attributes:commons-attributes-api</exclude>
+ <exclude>cglib:cglib</exclude>
+ <exclude>velocity:velocity-dep</exclude>
+ <exclude>com.jamonapi:jamon</exclude>
+ <exclude>asm:asm</exclude>
+ <exclude>freemarker:freemarker</exclude>
+ <exclude>asm:asm-util</exclude>
+ <exclude>jasperreports:jasperreports</exclude>
+ <exclude>commons-cli:commons-cli</exclude>
+ <exclude>org.apache.directory.server:apacheds-server-tools</exclude>
+ </excludes>
+ <application>
+ <name>triplesec</name>
+ <version>${pom.version}</version>
+ <copyrightYear>2006</copyrightYear>
+ <minimumJavaVersion>1.4</minimumJavaVersion>
+ <url>http://triplesec.safehaus.org</url>
+ <email>dev@safehaus.org</email>
+ <description>Triplesec Strong Identity Server</description>
+ <authors>
+ <author>Safehaus Development Team</author>
+ <author>akarasulu@safehuas.org</author>
+ <author>ersiner@safehaus.org</author>
+ <author>trustin@safehaus.org</author>
+ <author>smustaoglu@safehaus.org</author>
+ <author>tbennett@safehaus.org</author>
+ </authors>
+ </application>
+<!--
+ <svnBaseUrl>
+ http://svn.safehaus.org/repos/triplesec
+ </svnBaseUrl>
+ <packageSources>true</packageSources>
+ <packageDocs>true</packageDocs>
+-->
+ <applicationClass>
+ org.safehaus.triplesec.Service
+ </applicationClass>
+ <packagedFiles>
+ <packagedFile>
+ <source>src/main/installers/00server.ldif</source>
+ <destinationPath>conf/00server.ldif</destinationPath>
+ <installationBundleId>Binaries</installationBundleId>
+ </packagedFile>
+ <packagedFile>
+ <source>org.safehaus.triplesec:triplesec-tools</source>
+ <destinationPath>bin/triplesec-tools.jar</destinationPath>
+ <dependency>true</dependency>
+ <installationBundleId>Binaries</installationBundleId>
+ </packagedFile>
+ <packagedFile>
+ <source>org.safehaus.triplesec:triplesec-swing-admin</source>
+ <destinationPath>bin/triplesec-admin.jar</destinationPath>
+ <dependency>true</dependency>
+ <installationBundleId>Binaries</installationBundleId>
+ </packagedFile>
+
+ <!-- web application jars -->
+
+ <packagedFile>
+ <source>org.safehaus.triplesec:triplesec-webapp-root</source>
+ <destinationPath>webapps/ROOT</destinationPath>
+ <dependency>true</dependency>
+ <expandable>true</expandable>
+ <installationBundleId>Binaries</installationBundleId>
+ </packagedFile>
+ <packagedFile>
+ <source>
+ org.safehaus.triplesec:triplesec-webapp-activation
+ </source>
+ <destinationPath>webapps/activation</destinationPath>
+ <dependency>true</dependency>
+ <expandable>true</expandable>
+ <installationBundleId>Binaries</installationBundleId>
+ </packagedFile>
+ <packagedFile>
+ <source>org.safehaus.triplesec:triplesec-webapp-config</source>
+ <destinationPath>webapps/config</destinationPath>
+ <dependency>true</dependency>
+ <expandable>true</expandable>
+ <installationBundleId>Binaries</installationBundleId>
+ </packagedFile>
+ <packagedFile>
+ <source>org.safehaus.triplesec:triplesec-webapp-demo</source>
+ <destinationPath>webapps/demo</destinationPath>
+ <dependency>true</dependency>
+ <expandable>true</expandable>
+ <installationBundleId>Binaries</installationBundleId>
+ </packagedFile>
+ <packagedFile>
+ <source>
+ org.safehaus.triplesec:triplesec-webapp-registration
+ </source>
+ <destinationPath>webapps/registration</destinationPath>
+ <dependency>true</dependency>
+ <expandable>true</expandable>
+ <installationBundleId>Binaries</installationBundleId>
+ </packagedFile>
+
+ <!-- non-server jars -->
+
+ <packagedFile>
+ <source>
+ org.safehaus.triplesec:triplesec-jaas
+ </source>
+ <destinationPath>guardian/triplesec-jaas-${pom.version}.jar</destinationPath>
+ <dependency>true</dependency>
+ <installationBundleId>Binaries</installationBundleId>
+ </packagedFile>
+
+ <packagedFile>
+ <source>
+ org.safehaus.triplesec:triplesec-guardian-api
+ </source>
+ <destinationPath>guardian/triplesec-guardian-api-${pom.version}.jar</destinationPath>
+ <dependency>true</dependency>
+ <installationBundleId>Binaries</installationBundleId>
+ </packagedFile>
+ <packagedFile>
+ <source>org.safehaus.triplesec:triplesec-guardian-ldap</source>
+ <destinationPath>guardian/triplesec-guardian-ldap-${pom.version}.jar</destinationPath>
+ <dependency>true</dependency>
+ <installationBundleId>Binaries</installationBundleId>
+ </packagedFile>
+ <packagedFile>
+ <source>org.apache.directory.server:apacheds-server-tools</source>
+ <destinationPath>lib/tools/apacheds-server-tools-1.0-RC3.jar</destinationPath>
+ <dependency>true</dependency>
+ <installationBundleId>Binaries</installationBundleId>
+ </packagedFile>
+ <packagedFile>
+ <source>commons-cli:commons-cli</source>
+ <destinationPath>lib/tools/commons-cli-1.0.jar</destinationPath>
+ <dependency>true</dependency>
+ <installationBundleId>Binaries</installationBundleId>
+ </packagedFile>
+ </packagedFiles>
+ <rpmTargets>
+ <rpmTarget>
+ <id>linux-jsvc</id>
+ <rpmSpecificationFile>
+ src/main/installers/rpm-triplesec.spec
+ </rpmSpecificationFile>
+ <packagedFiles>
+ <packagedFile>
+ <source>rpm-triplesec-tools.sh</source>
+ <destinationPath>bin/triplesec-tools.sh</destinationPath>
+ <installationBundleId>Binaries</installationBundleId>
+ <executable>true</executable>
+ <filtered>true</filtered>
+ </packagedFile>
+ </packagedFiles>
+ <finalName>
+ triplesec-${pom.version}-linux-i386.rpm
+ </finalName>
+ <osName>Linux</osName>
+ <osFamily>unix</osFamily>
+ <osArch>i386</osArch>
+ <daemonFramework>jsvc</daemonFramework>
+ </rpmTarget>
+ </rpmTargets>
+ <innoTargets>
+ <innoTarget>
+ <packagedFiles>
+ <packagedFile>
+ <source>inno-triplesec-admin.bat</source>
+ <destinationPath>bin/triplesec-admin.bat</destinationPath>
+ <installationBundleId>Binaries</installationBundleId>
+ <executable>true</executable>
+ <filtered>true</filtered>
+ </packagedFile>
+ <packagedFile>
+ <source>admin-tool.ico</source>
+ <destinationPath>admin-tool.ico</destinationPath>
+ <installationBundleId>Binaries</installationBundleId>
+ </packagedFile>
+ </packagedFiles>
+ <innoConfigurationFile>
+ src/main/installers/inno-triplesec.iss
+ </innoConfigurationFile>
+ <id>windows-xp-procrun</id>
+ <prunsrvExecutablePath>
+ triplesec.exe
+ </prunsrvExecutablePath>
+ <prunmgrExecutablePath>
+ triplesecw.exe
+ </prunmgrExecutablePath>
+ <finalName>
+ triplesec-${pom.version}-win32-setup
+ </finalName>
+ <osName>Windows XP</osName>
+ <osFamily>windows</osFamily>
+ <osVersion>5.1</osVersion>
+ <osArch>x86</osArch>
+ <daemonFramework>procrun</daemonFramework>
+ </innoTarget>
+ </innoTargets>
+ <izPackTargets>
+ <izPackTarget>
+ <izPackInstallFile>
+ src/main/installers/izpack-unix.xml
+ </izPackInstallFile>
+ <izPackShortcutsUnixFile>
+ src/main/installers/unix_shortcuts.xml
+ </izPackShortcutsUnixFile>
+ <packagedFiles>
+ <packagedFile>
+ <source>admin.png</source>
+ <destinationPath>admin.png</destinationPath>
+ <installationBundleId>Binaries</installationBundleId>
+ </packagedFile>
+ <packagedFile>
+ <source>bug.png</source>
+ <destinationPath>debug.png</destinationPath>
+ <installationBundleId>Binaries</installationBundleId>
+ </packagedFile>
+ <packagedFile>
+ <source>safehaus-start.png</source>
+ <destinationPath>start.png</destinationPath>
+ <installationBundleId>Binaries</installationBundleId>
+ </packagedFile>
+ <packagedFile>
+ <source>safehaus-stop.png</source>
+ <destinationPath>stop.png</destinationPath>
+ <installationBundleId>Binaries</installationBundleId>
+ </packagedFile>
+ <packagedFile>
+ <source>izpack-triplesec-tools.sh</source>
+ <destinationPath>bin/triplesec-tools.sh</destinationPath>
+ <installationBundleId>Binaries</installationBundleId>
+ <executable>true</executable>
+ <filtered>true</filtered>
+ </packagedFile>
+ <packagedFile>
+ <source>admin-tool.png</source>
+ <destinationPath>admin-tool.png</destinationPath>
+ <installationBundleId>Binaries</installationBundleId>
+ </packagedFile>
+ </packagedFiles>
+ <id>linux-jsvc</id>
+ <finalName>
+ triplesec-${pom.version}-linux-i386-setup.jar
+ </finalName>
+ <osName>Linux</osName>
+ <osFamily>unix</osFamily>
+ <osArch>i386</osArch>
+ <daemonFramework>jsvc</daemonFramework>
+ </izPackTarget>
+ <izPackTarget>
+ <izPackInstallFile>
+ src/main/installers/izpack-unix.xml
+ </izPackInstallFile>
+ <izPackShortcutsUnixFile>
+ src/main/installers/unix_shortcuts.xml
+ </izPackShortcutsUnixFile>
+ <packagedFiles>
+ <packagedFile>
+ <source>izpack-triplesec-tools.sh</source>
+ <destinationPath>bin/triplesec-tools.sh</destinationPath>
+ <installationBundleId>Binaries</installationBundleId>
+ <executable>true</executable>
+ <filtered>true</filtered>
+ </packagedFile>
+ </packagedFiles>
+ <finalName>
+ triplesec-${pom.version}-solaris-sparc-setup.jar
+ </finalName>
+ <id>solaris-jsvc-sparc</id>
+ <osName>sunos</osName>
+ <osFamily>unix</osFamily>
+ <osArch>sparc</osArch>
+ <daemonFramework>jsvc</daemonFramework>
+ </izPackTarget>
+ <izPackTarget>
+ <izPackInstallFile>
+ src/main/installers/izpack-unix.xml
+ </izPackInstallFile>
+ <izPackShortcutsUnixFile>
+ src/main/installers/unix_shortcuts.xml
+ </izPackShortcutsUnixFile>
+ <packagedFiles>
+ <packagedFile>
+ <source>izpack-triplesec-tools.sh</source>
+ <destinationPath>bin/triplesec-tools.sh</destinationPath>
+ <installationBundleId>Binaries</installationBundleId>
+ <executable>true</executable>
+ <filtered>true</filtered>
+ </packagedFile>
+ </packagedFiles>
+ <id>solaris-jsvc-i386</id>
+ <finalName>
+ triplesec-${pom.version}-solaris-i386-setup.jar
+ </finalName>
+ <osName>sunos</osName>
+ <osFamily>unix</osFamily>
+ <osArch>i386</osArch>
+ <daemonFramework>jsvc</daemonFramework>
+ </izPackTarget>
+ <izPackTarget>
+ <izPackInstallFile>
+ src/main/installers/izpack-mac.xml
+ </izPackInstallFile>
+ <packagedFiles>
+ <packagedFile>
+ <source>izpack-triplesec-tools.sh</source>
+ <destinationPath>bin/triplesec-tools.sh</destinationPath>
+ <installationBundleId>Binaries</installationBundleId>
+ <executable>true</executable>
+ <filtered>true</filtered>
+ </packagedFile>
+ </packagedFiles>
+ <id>macosx-jsvc</id>
+ <finalName>
+ triplesec-${pom.version}-macosx-ppc-setup.jar
+ </finalName>
+ <osName>macosx</osName>
+ <osFamily>unix</osFamily>
+ <osArch>ppc</osArch>
+ <daemonFramework>jsvc</daemonFramework>
+ </izPackTarget>
+ </izPackTargets>
+ </configuration>
+ <executions>
+ <execution>
+ <goals>
+ <goal>generate</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+</project>
+
Added: directory/trunks/triplesec/installers/src/main/installers/00server.ldif
URL: http://svn.apache.org/viewvc/directory/trunks/triplesec/installers/src/main/installers/00server.ldif?view=auto&rev=486187
==============================================================================
--- directory/trunks/triplesec/installers/src/main/installers/00server.ldif (added)
+++ directory/trunks/triplesec/installers/src/main/installers/00server.ldif Tue Dec 12 07:23:31 2006
@@ -0,0 +1,209 @@
+#
+# Copyright 2004 Safehaus
+#
+# 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.
+#
+# EXAMPLE.COM is freely and reserved for testing according to this RFC:
+#
+# http://www.rfc-editor.org/rfc/rfc2606.txt
+#
+#
+
+#
+# This ACI allows brouse access to the root suffix and one level below that to anyone.
+# At this level there is nothing critical exposed. Everything that matters is one or
+# more levels below this.
+#
+
+dn: cn=browseRootAci,dc=example,dc=com
+objectClass: top
+objectClass: subentry
+objectClass: accessControlSubentry
+subtreeSpecification: { maximum 1 }
+prescriptiveACI: { identificationTag "browseRoot", precedence 100, authenticationLevel none, itemOrUserFirst userFirst: { userClasses { allUsers }, userPermissions { { protectedItems {entry}, grantsAndDenials { grantReturnDN, grantBrowse } } } } }
+
+dn: ou=Users, dc=example, dc=com
+objectclass: top
+objectclass: organizationalunit
+ou: Users
+
+#
+# This ACI allows users to modify a limited set of attributes in their own user
+# entry as well as read, compare those attributes. The user's entry must be
+# browseable and the DN must be returnable.
+#
+
+dn: cn=allowSelfModificationsAci,dc=example,dc=com
+objectClass: top
+objectClass: subentry
+objectClass: accessControlSubentry
+subtreeSpecification: { base "ou=users", maximum 1 }
+prescriptiveACI: { identificationTag "allowSelfModifications", precedence 14, authenticationLevel simple, itemOrUserFirst userFirst: { userClasses { thisEntry }, userPermissions { { protectedItems {entry}, grantsAndDenials { grantReturnDN, grantModify, grantBrowse, grantRead, grantDiscloseOnError } }, { protectedItems {allAttributeValues {userPassword, krb5Key, givenName, cn, commonName, surName, sn, objectClass }}, grantsAndDenials { grantModify, grantAdd, grantRemove, grantRead, grantDiscloseOnError, grantCompare } } } } }
+
+#
+# This ACI allows users to access a limited set of attributes in their own user
+# entry as well as compare those attributes. The user's entry must be browseable
+# and the DN must be returnable.
+#
+
+dn: cn=allowSelfAccessAci,dc=example,dc=com
+objectClass: top
+objectClass: subentry
+objectClass: accessControlSubentry
+subtreeSpecification: { base "ou=users", maximum 1 }
+prescriptiveACI: { identificationTag "allowSelfAccess", precedence 15, authenticationLevel simple, itemOrUserFirst userFirst: { userClasses { thisEntry }, userPermissions { { protectedItems {entry}, grantsAndDenials { grantReturnDN, grantBrowse, grantRead, grantDiscloseOnError } }, { protectedItems {allAttributeValues {uid, userPassword, givenName, cn, commonName, surName, sn, objectClass, creatorsName, modifiersName, createTimestamp, modifyTimestamp, krb5AccountDisabled, description, apacheSamType }}, grantsAndDenials { grantRead, grantDiscloseOnError, grantCompare } } } } }
+
+dn: ou=Groups, dc=example, dc=com
+objectclass: top
+objectclass: organizationalunit
+ou: Groups
+
+dn: cn=superUsers, ou=Groups, dc=example, dc=com
+objectClass: top
+objectClass: groupOfUniqueNames
+cn: superUsers
+uniqueMember: uid=admin, ou=system
+
+dn: cn=userAdmins, ou=Groups, dc=example, dc=com
+objectClass: top
+objectClass: groupOfUniqueNames
+cn: userAdmin
+uniqueMember: uid=admin, ou=system
+
+dn: cn=applicationAdmins, ou=Groups, dc=example, dc=com
+objectClass: top
+objectClass: groupOfUniqueNames
+cn: applicationAdmin
+uniqueMember: uid=admin, ou=system
+
+dn: cn=groupAdmins, ou=Groups, dc=example, dc=com
+objectClass: top
+objectClass: groupOfUniqueNames
+cn: groupAdmin
+uniqueMember: uid=admin, ou=system
+
+#
+# This ACI allows members of the superUsers group to have full modify and read access
+# to the entire realm as does the system administrator principal: uid=admin, ou=system.
+#
+# The only thing these users cannot do is modify the system partition. They are only
+# restricted to superUser rights within this realm partition
+#
+
+dn: cn=superUsersAci,dc=example,dc=com
+objectClass: top
+objectClass: subentry
+objectClass: accessControlSubentry
+subtreeSpecification: { }
+prescriptiveACI: { identificationTag "superUsersAci", precedence 20, authenticationLevel simple, itemOrUserFirst userFirst: { userClasses { userGroup { "cn=superUsers,ou=groups,dc=example,dc=com" } }, userPermissions { { protectedItems {entry, allUserAttributeTypesAndValues}, grantsAndDenials { grantRead, grantReturnDN, grantBrowse, grantDiscloseOnError, grantCompare, grantAdd, grantRename, grantRemove, grantModify, grantImport, grantExport } } } } }
+
+#
+# This ACI allows members of the userAdmin group to have full modify and read access
+# to user accounts besides their own. Hence they can administer users in the system.
+#
+
+dn: cn=userAdminsAci,dc=example,dc=com
+objectClass: top
+objectClass: subentry
+objectClass: accessControlSubentry
+subtreeSpecification: { base "ou=users", maximum 1 }
+prescriptiveACI: { identificationTag "userAdminsAci", precedence 16, authenticationLevel simple, itemOrUserFirst userFirst: { userClasses { userGroup { "cn=userAdmins,ou=groups,dc=example,dc=com" } }, userPermissions { { protectedItems {entry, allUserAttributeTypesAndValues}, grantsAndDenials { grantRead, grantReturnDN, grantBrowse, grantDiscloseOnError, grantCompare, grantAdd, grantRename, grantRemove, grantModify, grantImport, grantExport } } } } }
+
+
+#
+# This ACI allows members of the applicationAdmin group to have full modify and read access
+# to all applications in the realm. Adding users to this group is like a wild card for
+# application access.
+#
+
+dn: cn=applicationAdminsAci,dc=example,dc=com
+objectClass: top
+objectClass: subentry
+objectClass: accessControlSubentry
+subtreeSpecification: { base "ou=applications" }
+prescriptiveACI: { identificationTag "applicationAdminsAci", precedence 17, authenticationLevel simple, itemOrUserFirst userFirst: { userClasses { userGroup { "cn=applicationAdmins,ou=groups,dc=example,dc=com" } }, userPermissions { { protectedItems {entry, allUserAttributeTypesAndValues}, grantsAndDenials { grantRead, grantReturnDN, grantBrowse, grantDiscloseOnError, grantCompare, grantAdd, grantRename, grantRemove, grantModify, grantImport, grantExport } } } } }
+
+
+#
+# This ACI allows members of the groupAdmins group to have full modify and read access
+# to all groups in the realm other than the superUsers, userAdmins, groupAdmins, and the
+# applicationAdmins groups.
+#
+# The rational behind this is to prevent these users from changing their or other
+# users' access rights for the entire system by modifying their membership in these
+# groups. Making someone a groupAdmin should not open the door to their ability to
+# grant themselves or others system wide administrative abilities.
+#
+# Really the groupAdmins group is intended for users that have the ability to manage
+# group membership in specific application administration groups and that's all.
+# These types of admins should not have the right to promote others to system level
+# administrators or complete super users.
+#
+
+dn: cn=groupAdminsAci,dc=example,dc=com
+objectClass: top
+objectClass: subentry
+objectClass: accessControlSubentry
+subtreeSpecification: { base "ou=groups", specificExclusions { chopBefore: "cn=userAdmins", chopBefore: "cn=groupAdmins", chopBefore: "cn=applicationAdmins", chopBefore: "cn=superUsers" } }
+prescriptiveACI: { identificationTag "groupAdminsAci", precedence 18, authenticationLevel simple, itemOrUserFirst userFirst: { userClasses { userGroup { "cn=groupAdmins,ou=groups,dc=example,dc=com" } }, userPermissions { { protectedItems {entry, allUserAttributeTypesAndValues}, grantsAndDenials { grantRead, grantReturnDN, grantBrowse, grantDiscloseOnError, grantCompare, grantAdd, grantRename, grantRemove, grantModify, grantImport, grantExport } } } } }
+
+# ----------------------------------------------------------------------------
+# Required Kerberos Server User
+# ----------------------------------------------------------------------------
+
+dn: uid=krbtgt, ou=Users, dc=example,dc=com
+cn: Kerberos Server
+sn: Server
+givenName: Kerberos
+objectClass: top
+objectClass: uidObject
+objectClass: person
+objectClass: organizationalPerson
+objectClass: inetOrgPerson
+objectClass: krb5Principal
+objectClass: krb5KDCEntry
+ou: Directory
+ou: Users
+uid: krbtgt
+krb5PrincipalName: krbtgt/EXAMPLE.COM@EXAMPLE.COM
+krb5KeyVersionNumber: 0
+mail: admin@example.com
+userPassword: secret
+
+dn: ou=Applications,dc=example,dc=com
+objectClass: top
+objectClass: organizationalunit
+ou: applications
+
+dn: appName=tsecAdminTool,ou=Applications,dc=example,dc=com
+objectClass: policyApplication
+objectClass: top
+appName: tsecAdminTool
+description: Policy for Safehaus web and swing based administration UIs.
+userPassword: secret
+
+dn: ou=Permissions,appName=tsecAdminTool,ou=Applications,dc=example,dc=com
+objectclass: organizationalUnit
+objectclass: top
+ou: Permissions
+
+dn: ou=Roles,appName=tsecAdminTool,ou=Applications,dc=example,dc=com
+objectclass: organizationalUnit
+objectclass: top
+ou: Roles
+
+dn: ou=Profiles,appName=tsecAdminTool,ou=Applications,dc=example,dc=com
+objectclass: organizationalUnit
+objectclass: top
+ou: Profiles
+
Added: directory/trunks/triplesec/installers/src/main/installers/admin-tool.ico
URL: http://svn.apache.org/viewvc/directory/trunks/triplesec/installers/src/main/installers/admin-tool.ico?view=auto&rev=486187
==============================================================================
Binary file - no diff available.
Propchange: directory/trunks/triplesec/installers/src/main/installers/admin-tool.ico
------------------------------------------------------------------------------
svn:mime-type = application/octet-stream
Added: directory/trunks/triplesec/installers/src/main/installers/admin-tool.png
URL: http://svn.apache.org/viewvc/directory/trunks/triplesec/installers/src/main/installers/admin-tool.png?view=auto&rev=486187
==============================================================================
Binary file - no diff available.
Propchange: directory/trunks/triplesec/installers/src/main/installers/admin-tool.png
------------------------------------------------------------------------------
svn:mime-type = application/octet-stream
Added: directory/trunks/triplesec/installers/src/main/installers/admin.png
URL: http://svn.apache.org/viewvc/directory/trunks/triplesec/installers/src/main/installers/admin.png?view=auto&rev=486187
==============================================================================
Binary file - no diff available.
Propchange: directory/trunks/triplesec/installers/src/main/installers/admin.png
------------------------------------------------------------------------------
svn:mime-type = application/octet-stream
Added: directory/trunks/triplesec/installers/src/main/installers/bootstrapper.properties
URL: http://svn.apache.org/viewvc/directory/trunks/triplesec/installers/src/main/installers/bootstrapper.properties?view=auto&rev=486187
==============================================================================
--- directory/trunks/triplesec/installers/src/main/installers/bootstrapper.properties (added)
+++ directory/trunks/triplesec/installers/src/main/installers/bootstrapper.properties Tue Dec 12 07:23:31 2006
@@ -0,0 +1,2 @@
+bootstrap.start.class=org.safehaus.triplesec.Service
+bootstrap.stop.class=org.safehaus.triplesec.Service
Added: directory/trunks/triplesec/installers/src/main/installers/bug.gif
URL: http://svn.apache.org/viewvc/directory/trunks/triplesec/installers/src/main/installers/bug.gif?view=auto&rev=486187
==============================================================================
Binary file - no diff available.
Propchange: directory/trunks/triplesec/installers/src/main/installers/bug.gif
------------------------------------------------------------------------------
svn:mime-type = application/octet-stream
Added: directory/trunks/triplesec/installers/src/main/installers/bug.png
URL: http://svn.apache.org/viewvc/directory/trunks/triplesec/installers/src/main/installers/bug.png?view=auto&rev=486187
==============================================================================
Binary file - no diff available.
Propchange: directory/trunks/triplesec/installers/src/main/installers/bug.png
------------------------------------------------------------------------------
svn:mime-type = application/octet-stream
Added: directory/trunks/triplesec/installers/src/main/installers/inno-triplesec-admin.bat
URL: http://svn.apache.org/viewvc/directory/trunks/triplesec/installers/src/main/installers/inno-triplesec-admin.bat?view=auto&rev=486187
==============================================================================
--- directory/trunks/triplesec/installers/src/main/installers/inno-triplesec-admin.bat (added)
+++ directory/trunks/triplesec/installers/src/main/installers/inno-triplesec-admin.bat Tue Dec 12 07:23:31 2006
@@ -0,0 +1,16 @@
+@REM --------------------------------------------------------------------------
+@REM Triplesec Admin Start Up Batch script
+@REM
+@REM Required ENV vars:
+@REM JAVA_HOME - location of a JDK home dir
+@REM
+@REM Optional ENV vars
+@REM TSEC_BATCH_ECHO - set to 'on' to enable the echoing of the batch commands
+@REM TSEC_BATCH_PAUSE - set to 'on' to wait for a key stroke before ending
+@REM TSEC_OPTS - parameters passed to the Java VM when running Maven
+@REM e.g. to debug the admin itself, use
+@REM set TSEC_OPTS=-Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000
+@REM ----------------------------------------------------------------------------
+
+%JAVA_HOME%\bin\java.exe -jar %1 %2
+
Propchange: directory/trunks/triplesec/installers/src/main/installers/inno-triplesec-admin.bat
------------------------------------------------------------------------------
svn:executable =
Added: directory/trunks/triplesec/installers/src/main/installers/inno-triplesec.iss
URL: http://svn.apache.org/viewvc/directory/trunks/triplesec/installers/src/main/installers/inno-triplesec.iss?view=auto&rev=486187
==============================================================================
--- directory/trunks/triplesec/installers/src/main/installers/inno-triplesec.iss (added)
+++ directory/trunks/triplesec/installers/src/main/installers/inno-triplesec.iss Tue Dec 12 07:23:31 2006
@@ -0,0 +1,88 @@
+#define MyAppName "${app}"
+#define MyAppVerName "${app} ${app.version}"
+#define MyAppVersion "${app.version}"
+#define MyAppPublisher "${app.author}"
+#define MyAppURL "${app.url}"
+#define MyAppExeName "${app}w.exe"
+#define MyAppCompanyName "${app.company.name}"
+#define MyAppDescription "${app.description}"
+#define MyAppCopyright "Copyright (c) ${app.copyright.year} ${app.company.name}"
+
+; Set this constant to the path where your installation image resides
+#define SourceBase "${image.basedir}"
+
+[Setup]
+AppName={#MyAppName}
+AppVerName={#MyAppVerName}
+AppPublisher={#MyAppPublisher}
+AppPublisherURL={#MyAppURL}
+AppSupportURL={#MyAppURL}
+AppUpdatesURL={#MyAppURL}
+DefaultDirName={pf}\${app}-${app.version}
+DefaultGroupName={#MyAppName}
+LicenseFile={#SourceBase}\${app.license.name}
+OutputDir="${installer.output.directory}"
+OutputBaseFilename=${app.final.name}
+SetupIconFile={#SourceBase}\${app.icon.name}
+Compression=lzma
+SolidCompression=true
+VersionInfoCompany={#MyAppCompanyName}
+VersionInfoDescription={#MyAppDescription}
+AppCopyright={#MyAppCopyright}
+ShowLanguageDialog=yes
+AppVersion={#MyAppVersion}
+
+[Languages]
+Name: eng; MessagesFile: compiler:Default.isl
+
+[Tasks]
+Name: desktopicon; Description: {cm:CreateDesktopIcon}; GroupDescription: {cm:AdditionalIcons}; Flags: unchecked
+
+[Files]
+; bin directory targets
+Source: {#SourceBase}\bin\${app}w.exe; DestDir: {app}\bin; Tasks: ; Languages:
+Source: {#SourceBase}\bin\${app}.exe; DestDir: {app}\bin
+Source: {#SourceBase}\bin\bootstrapper.jar; DestDir: {app}\bin; DestName: bootstrapper.jar
+Source: {#SourceBase}\bin\logger.jar; DestDir: {app}\bin; DestName: logger.jar
+Source: {#SourceBase}\bin\triplesec-tools.jar; DestDir: {app}\bin; DestName: triplesec-tools.jar
+Source: {#SourceBase}\bin\triplesec-admin.jar; DestDir: {app}\bin; DestName: triplesec-admin.jar
+Source: {#SourceBase}\bin\daemon.jar; DestDir: {app}\bin; DestName: daemon.jar
+; conf directory targets
+Source: {#SourceBase}\conf\log4j.properties; DestDir: {app}\conf; DestName: log4j.properties
+Source: {#SourceBase}\conf\server.xml; DestDir: {app}\conf; DestName: server.xml
+Source: {#SourceBase}\conf\bootstrapper.properties; DestDir: {app}\conf; DestName: bootstrapper.properties
+Source: {#SourceBase}\conf\00server.ldif; DestDir: {app}\conf; DestName: 00server.ldif
+; top level directory targets
+Source: {#SourceBase}\${app.license.name}; DestDir: {app}; DestName: ${app.license.name}
+Source: {#SourceBase}\${app.readme.name}; DestDir: {app}; DestName: ${app.readme.name}
+Source: {#SourceBase}\${app.icon.name}; DestDir: {app}; DestName: ${app.icon.name}
+Source: {#SourceBase}\admin-tool.ico; DestDir: {app}; DestName: admin-tool.ico
+Source: {#SourceBase}\COPYING.txt; DestDir: {app}; DestName: COPYING.txt
+; empty var & lib\ext directory structure
+Source: {#SourceBase}\var\*; DestDir: "{app}\var\"; Flags: ignoreversion recursesubdirs createallsubdirs
+Source: {#SourceBase}\licenses\*; DestDir: "{app}\licenses\"; Flags: ignoreversion recursesubdirs createallsubdirs
+Source: {#SourceBase}\webapps\*; DestDir: "{app}\webapps\"; Flags: ignoreversion recursesubdirs createallsubdirs
+Source: {#SourceBase}\guardian\*; DestDir: "{app}\guardian\"; Flags: ignoreversion recursesubdirs createallsubdirs
+Source: {#SourceBase}\lib\ext; DestDir: "{app}\lib"; Flags: ignoreversion recursesubdirs createallsubdirs
+Source: {#SourceBase}\lib\tools\*; DestDir: "{app}\lib\tools\"; Flags: ignoreversion recursesubdirs createallsubdirs
+; lib directory targets
+${app.lib.jars}
+${docs.directive}
+${sources.directive}
+${notice.file}
+
+[Icons]
+Name: {group}\Service Settings; Filename: {app}\bin\${app}w.exe; Parameters: //ES//${app}; IconIndex: 0
+Name: {userdesktop}\{#MyAppName}; Filename: {app}\bin\${app}w.exe; Tasks: desktopicon; Parameters: //ES//${app}; IconIndex: 0; Languages:
+Name: {group}\Tray Monitor; Filename: {app}\bin\${app}w.exe; Parameters: //MS//${app}; IconIndex: 0
+Name: {group}\Test Service; Filename: {app}\bin\${app}.exe; IconIndex: 0
+Name: {group}\Admin; Filename: %JAVA_HOME%\bin\java.exe; Parameters: "-jar ""{app}\bin\triplesec-admin.jar"" ""{app}"""; IconFilename: {app}\admin-tool.ico; WorkingDir: "{app}"
+
+[Run]
+Filename: {app}\bin\${app}.exe; WorkingDir: {app}\bin; Tasks: ; Languages: ; Parameters: "//IS//${app.displayname} --Description=""${app.description} Service ${app.version} - ${app.url}"" --DisplayName=${app.displayname} --Install=""{app}\bin\${app}.exe"" --StartMode=jvm --StopMode=jvm --StartClass=org.apache.directory.daemon.ProcrunBootstrapper --StartMethod prunsrvStart --StartParams=""{app}"" --StopClass=org.apache.directory.daemon.ProcrunBootstrapper --StopMethod prunsrvStop --StopParams=""{app}"" --Startup=manual --JvmOptions=""-D${app}.home={app}"" --Classpath=""{app}\bin\bootstrapper.jar;{app}\conf;{app}\bin\logger.jar;{app}\bin\daemon.jar"" --LogPath=""{app}\var\log"" --LogPrefix=${app}.log --LogLevel=debug --StdOutput=""{app}\var\log\${app}-stdout.log"" --StdError=""{app}\var\log\${app}-stderr.log"""; Flags: runhidden
+Filename: {app}\bin\${app}w.exe; Parameters: //ES//${app.displayname}; WorkingDir: {app}\bin; Flags: postinstall nowait; Description: Runs the configuration manager for the ${app} windows service
+
+[Registry]
+
+[UninstallRun]
+Filename: {app}\bin\${app}.exe; WorkingDir: {app}\bin; Parameters: //DS//${app.displayname}
Propchange: directory/trunks/triplesec/installers/src/main/installers/inno-triplesec.iss
------------------------------------------------------------------------------
svn:executable =
Added: directory/trunks/triplesec/installers/src/main/installers/izpack-mac.xml
URL: http://svn.apache.org/viewvc/directory/trunks/triplesec/installers/src/main/installers/izpack-mac.xml?view=auto&rev=486187
==============================================================================
--- directory/trunks/triplesec/installers/src/main/installers/izpack-mac.xml (added)
+++ directory/trunks/triplesec/installers/src/main/installers/izpack-mac.xml Tue Dec 12 07:23:31 2006
@@ -0,0 +1,89 @@
+<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
+<!--
+ /*
+ * Copyright 2004 The Apache Software Foundation
+ *
+ * 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.
+ *
+ */
+-->
+
+<installation version="1.0">
+ <info>
+ <appname>${app}</appname>
+ <appversion>${app.version}</appversion>
+ <appsubpath>${app}-${app.version}</appsubpath>
+ <authors>
+ <author name="${app.author}" email="${app.email}" />
+ </authors>
+ <url>${app.url}</url>
+ <javaversion>${app.java.version}</javaversion>
+ </info>
+
+ <guiprefs height="480" resizable="yes" width="640">
+ <laf name="metouia">
+ <os family="unix" />
+ </laf>
+ </guiprefs>
+
+ <locale>
+ <langpack iso3="eng" />
+ </locale>
+
+ <resources>
+ <res id="installer.langsel.img" src="${app.icon}" />
+ <res id="Installer.image" src="${app.icon}" />
+ <res id="Installer.image.0" src="${app.icon}" />
+ <res id="Installer.image.1" src="${app.icon}" />
+ <res id="Installer.image.2" src="${app.icon}" />
+ <res id="Installer.image.3" src="${app.icon}" />
+ <res id="Installer.image.4" src="${app.icon}" />
+ <res id="Installer.image.5" src="${app.icon}" />
+ <res id="LicencePanel.licence" src="${app.license}" />
+ <res id="InfoPanel.info" src="${app.readme}" />
+ <res id="ImgPacksPanel.img.0" src="${app.icon}" />
+ <res id="ImgPacksPanel.img.1" src="${app.icon}" />
+ <res id="shortcutSpec.xml" src="${unix.shortcuts}" />
+ <res id="Unix_shortcutSpec.xml" src="${unix.shortcuts}" />
+ <res id="userInputSpec.xml" src="${user.input}" />
+ </resources>
+
+ <panels>
+ <panel classname="HelloPanel" />
+ <panel classname="InfoPanel" />
+ <panel classname="LicencePanel" />
+ <panel classname="TargetPanel" />
+ <panel classname="ImgPacksPanel" />
+ <panel classname="InstallPanel" />
+ <panel classname="ShortcutPanel" />
+ <panel classname="FinishPanel" />
+ </panels>
+
+ <packs>
+ <pack name="Binaries" required="yes">
+ <description>Binary Executables</description>
+ <fileset dir="${image.basedir}" targetdir="$INSTALL_PATH">
+ <include name="**/*" />
+ </fileset>
+
+ <executable os="unix" targetfile="$INSTALL_PATH/bin/${app}" stage="never" keep="true" />
+ <singlefile os="unix" src="bin/${server.init}" target="/etc/init.d/${app}" />
+ <parsable os="unix" targetfile="$INSTALL_PATH/bin/${server.init}" type="shell" />
+ <parsable os="unix" targetfile="$INSTALL_PATH/bin/triplesec-tools.sh" type="shell" />
+ <parsable os="unix" targetfile="/etc/init.d/${app}" type="shell" />
+ <executable os="unix" targetfile="/etc/init.d/${app}" stage="never" keep="true" />
+ <executable os="unix" targetfile="$INSTALL_PATH/bin/${server.init}" stage="never" keep="true" />
+ <executable os="unix" targetfile="$INSTALL_PATH/bin/triplesec-tools.sh" stage="never" keep="true" />
+ </pack>
+ </packs>
+</installation>
Added: directory/trunks/triplesec/installers/src/main/installers/izpack-triplesec-tools.sh
URL: http://svn.apache.org/viewvc/directory/trunks/triplesec/installers/src/main/installers/izpack-triplesec-tools.sh?view=auto&rev=486187
==============================================================================
--- directory/trunks/triplesec/installers/src/main/installers/izpack-triplesec-tools.sh (added)
+++ directory/trunks/triplesec/installers/src/main/installers/izpack-triplesec-tools.sh Tue Dec 12 07:23:31 2006
@@ -0,0 +1,4 @@
+#!/bin/sh
+
+TRIPLESEC_HOME=%INSTALL_PATH
+$JAVA_HOME/bin/java -jar $TRIPLESEC_HOME/bin/triplesec-tools.jar $@