Resolves: rhbz #1394372
- Bugzilla Bug #1394372 - Rebase ldapjdk to 4.19
This commit is contained in:
parent
0075bec0a1
commit
e24ffc8d74
1
.gitignore
vendored
1
.gitignore
vendored
@ -1 +1,2 @@
|
||||
ldapjdk-4.18.tar.gz
|
||||
/ldapjdk-4.19.tar.gz
|
||||
|
@ -2,5 +2,5 @@
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<groupId>ldapjdk</groupId>
|
||||
<artifactId>ldapjdk</artifactId>
|
||||
<version>4.18</version>
|
||||
<version>4.19</version>
|
||||
</project>
|
@ -1,14 +0,0 @@
|
||||
diff -up ./mozilla/directory/java-sdk/build.xml.sav ./mozilla/directory/java-sdk/build.xml
|
||||
--- ./mozilla/directory/java-sdk/build.xml.sav 2009-03-20 16:41:48.000000000 -0400
|
||||
+++ ./mozilla/directory/java-sdk/build.xml 2009-03-20 16:42:09.000000000 -0400
|
||||
@@ -66,8 +66,8 @@
|
||||
|
||||
<!-- the following is to setup the correct info for sun jsse which
|
||||
is jdk dependent -->
|
||||
- <property name="ssllibs14" value="${basedir}/ldapjdk/lib/jss32_stub.jar"/>
|
||||
- <property name="ssllibs13" value="${basedir}/ldapjdk/lib/jaas.jar:${basedir}/ldapjdk/lib/jnet.jar:${basedir}/ldapjdk/lib/jsse.jar:${basedir}/ldapjdk/lib/jss32_stub.jar"/>
|
||||
+ <property name="ssllibs14" value="${basedir}/ldapjdk/lib/jss4.jar"/>
|
||||
+ <property name="ssllibs13" value="${basedir}/ldapjdk/lib/jaas.jar:${basedir}/ldapjdk/lib/jnet.jar:${basedir}/ldapjdk/lib/jsse.jar:${basedir}/ldapjdk/lib/jss4.jar"/>
|
||||
|
||||
<!-- we do not use the users existing classpath and instead build our own
|
||||
comment the following line out if this is not desired -->
|
@ -1,157 +0,0 @@
|
||||
diff -r 0f7c3698a961 java-sdk/ldapjdk/netscape/ldap/LDAPConnection.java
|
||||
--- a/mozilla/directory/java-sdk/ldapjdk/netscape/ldap/LDAPConnection.java Fri Feb 27 03:58:00 2015 -0500
|
||||
+++ b/mozilla/directory/java-sdk/ldapjdk/netscape/ldap/LDAPConnection.java Mon Aug 08 12:01:38 2016 -0400
|
||||
@@ -879,12 +879,14 @@
|
||||
* @param host host name of the LDAP server to which you want to connect.
|
||||
* This value can also be a space-delimited list of hostnames or
|
||||
* hostnames and port numbers (using the syntax
|
||||
- * <I>hostname:portnumber</I>). For example, you can specify
|
||||
- * the following values for the <CODE>host</CODE> argument:<BR>
|
||||
+ * <I>hostname:portnumber</I>). For IPv6 enclose the address in square brackets.
|
||||
+ * For example, you can specify the following values for the
|
||||
+ * <CODE>host</CODE> argument:<BR>
|
||||
*<PRE>
|
||||
* myhost
|
||||
* myhost hishost:389 herhost:5000 whathost
|
||||
* myhost:686 myhost:389 hishost:5000 whathost:1024
|
||||
+ * [::1]:389 [2620:52:0:102f:5054:1ff:fe2c:e12d]:636
|
||||
*</PRE>
|
||||
* If multiple servers are specified in the <CODE>host</CODE> list, the connection
|
||||
* setup policy specified with the <CODE>ConnSetupDelay</CODE> property controls
|
||||
@@ -934,13 +936,32 @@
|
||||
int i = 0;
|
||||
while( st.hasMoreTokens() ) {
|
||||
String s = st.nextToken();
|
||||
- int colon = s.indexOf( ':' );
|
||||
- if ( colon > 0 ) {
|
||||
- hostList[i] = s.substring( 0, colon );
|
||||
- portList[i] = Integer.parseInt( s.substring( colon+1 ) );
|
||||
+ int colon;
|
||||
+
|
||||
+ if ( s.startsWith( "[" ) ) {
|
||||
+ // We have an ipv6 address
|
||||
+ int end = s.indexOf( ']' );
|
||||
+ if ( end == -1 ) {
|
||||
+ throw new LDAPException ( "invalid URL for IPv6 address",
|
||||
+ LDAPException.PARAM_ERROR );
|
||||
+ }
|
||||
+ String remainder = s.substring( end+1 );
|
||||
+ hostList[i] = s.substring( 0, end+1 );
|
||||
+ colon = remainder.indexOf( ':' );
|
||||
+ if ( colon >= 0 ){
|
||||
+ portList[i] = Integer.parseInt( remainder.substring( colon+1 ) );
|
||||
+ } else {
|
||||
+ portList[i] = defaultPort;
|
||||
+ }
|
||||
} else {
|
||||
- hostList[i] = s;
|
||||
- portList[i] = defaultPort;
|
||||
+ colon = s.indexOf( ':' );
|
||||
+ if ( colon > 0 ) {
|
||||
+ hostList[i] = s.substring( 0, colon );
|
||||
+ portList[i] = Integer.parseInt( s.substring( colon+1 ) );
|
||||
+ } else {
|
||||
+ hostList[i] = s;
|
||||
+ portList[i] = defaultPort;
|
||||
+ }
|
||||
}
|
||||
i++;
|
||||
}
|
||||
diff -r 0f7c3698a961 java-sdk/ldapjdk/netscape/ldap/LDAPUrl.java
|
||||
--- a/mozilla/directory/java-sdk/ldapjdk/netscape/ldap/LDAPUrl.java Fri Feb 27 03:58:00 2015 -0500
|
||||
+++ b/mozilla/directory/java-sdk/ldapjdk/netscape/ldap/LDAPUrl.java Mon Aug 08 12:01:38 2016 -0400
|
||||
@@ -135,9 +135,11 @@
|
||||
* (ldaps) is also supported.
|
||||
*/
|
||||
private void parseUrl(String url) throws MalformedURLException {
|
||||
- StringTokenizer urlParser = new StringTokenizer (url, ":/?", true);
|
||||
+ StringTokenizer urlParser = new StringTokenizer (url, ":/?[]", true);
|
||||
+ StringTokenizer markParser = new StringTokenizer (url, ":/?[]", true);
|
||||
String currentToken;
|
||||
String str = null;
|
||||
+ boolean usingIPv6 = false;
|
||||
|
||||
try {
|
||||
currentToken = urlParser.nextToken();
|
||||
@@ -160,8 +162,10 @@
|
||||
if (!currentToken.equals("/")) {
|
||||
throw new MalformedURLException ();
|
||||
}
|
||||
-
|
||||
currentToken = urlParser.nextToken();
|
||||
+ if (currentToken.equals("[")) {
|
||||
+ usingIPv6 = true;
|
||||
+ }
|
||||
}
|
||||
catch (NoSuchElementException e) {
|
||||
throw new MalformedURLException ();
|
||||
@@ -176,36 +180,48 @@
|
||||
throw new MalformedURLException ("No hostname");
|
||||
} else if (currentToken.equals ("?")) {
|
||||
throw new MalformedURLException ("No host[:port]");
|
||||
+ } else if (usingIPv6){
|
||||
+ StringBuilder sb = new StringBuilder();
|
||||
+ while (urlParser.hasMoreElements()) {
|
||||
+ currentToken = urlParser.nextToken();
|
||||
+ if (currentToken.equals("]")) {
|
||||
+ break;
|
||||
+ }
|
||||
+ sb.append(currentToken);
|
||||
+ }
|
||||
+ m_hostName = sb.toString();
|
||||
} else {
|
||||
m_hostName = currentToken;
|
||||
+ }
|
||||
+
|
||||
+ // Set the port
|
||||
+ if (urlParser.countTokens() == 0) {
|
||||
+ m_portNumber = m_secure ? DEFAULT_SECURE_PORT : LDAPv2.DEFAULT_PORT;
|
||||
+ return;
|
||||
+ }
|
||||
+ currentToken = urlParser.nextToken (); // either ":" or "/"
|
||||
+
|
||||
+ if (currentToken.equals (":")) {
|
||||
+ try {
|
||||
+ m_portNumber = Integer.parseInt (urlParser.nextToken());
|
||||
+ } catch (NumberFormatException nf) {
|
||||
+ throw new MalformedURLException ("Port not a number");
|
||||
+ } catch (NoSuchElementException ex) {
|
||||
+ throw new MalformedURLException ("No port number");
|
||||
+ }
|
||||
+
|
||||
if (urlParser.countTokens() == 0) {
|
||||
- m_portNumber = m_secure ? DEFAULT_SECURE_PORT : LDAPv2.DEFAULT_PORT;
|
||||
return;
|
||||
}
|
||||
- currentToken = urlParser.nextToken (); // either ":" or "/"
|
||||
-
|
||||
- if (currentToken.equals (":")) {
|
||||
- try {
|
||||
- m_portNumber = Integer.parseInt (urlParser.nextToken());
|
||||
- } catch (NumberFormatException nf) {
|
||||
- throw new MalformedURLException ("Port not a number");
|
||||
- } catch (NoSuchElementException ex) {
|
||||
- throw new MalformedURLException ("No port number");
|
||||
- }
|
||||
-
|
||||
- if (urlParser.countTokens() == 0) {
|
||||
- return;
|
||||
- }
|
||||
- else if (! urlParser.nextToken().equals("/")) {
|
||||
- throw new MalformedURLException ();
|
||||
- }
|
||||
-
|
||||
- } else if (currentToken.equals ("/")) {
|
||||
- m_portNumber = m_secure ? DEFAULT_SECURE_PORT : LDAPv2.DEFAULT_PORT;
|
||||
- } else {
|
||||
- // expecting ":" or "/"
|
||||
+ else if (! urlParser.nextToken().equals("/")) {
|
||||
throw new MalformedURLException ();
|
||||
}
|
||||
+
|
||||
+ } else if (currentToken.equals ("/")) {
|
||||
+ m_portNumber = m_secure ? DEFAULT_SECURE_PORT : LDAPv2.DEFAULT_PORT;
|
||||
+ } else {
|
||||
+ // expecting ":" or "/"
|
||||
+ throw new MalformedURLException ();
|
||||
}
|
47
ldapjdk.spec
47
ldapjdk.spec
@ -3,23 +3,20 @@
|
||||
%global beansname ldapbeans
|
||||
|
||||
Name: ldapjdk
|
||||
Version: 4.18
|
||||
Release: 20%{?dist}
|
||||
Version: 4.19
|
||||
Release: 1%{?dist}
|
||||
Epoch: 0
|
||||
Summary: The Mozilla LDAP Java SDK
|
||||
License: MPLv1.1 or GPLv2+ or LGPLv2+
|
||||
Group: Development/Java
|
||||
URL: http://www.mozilla.org/directory/javasdk.html
|
||||
# mkdir ldapjdk-4.18 ;
|
||||
# cvs -d:pserver:anonymous@cvs-mirror.mozilla.org:/cvsroot Export -r LDAPJavaSDK_418 DirectorySDKSourceJava
|
||||
# tar -zcf ldapjdk-4.18,tar.gz ldapjdk-4.18
|
||||
Source: http://pki.fedoraproject.org/pki/sources/%{name}/%{name}-%{version}.tar.gz
|
||||
URL: http://www-archive.mozilla.org/directory/javasdk.html
|
||||
# mkdir ldapjdk-4.19 ;
|
||||
# cvs -d:pserver:anonymous@cvs-mirror.mozilla.org:/cvsroot Export -r LDAPJavaSDK_419 DirectorySDKSourceJava
|
||||
# tar -zcf ldapjdk-4.19.tar.gz ldapjdk-4.19
|
||||
Source: http://pki.fedoraproject.org/pki/sources/%{name}/%{version}/%{name}-%{version}.tar.gz
|
||||
# originally taken from http://mirrors.ibiblio.org/pub/mirrors/maven2/ldapsdk/ldapsdk/4.1/ldapsdk-4.1.pom
|
||||
# changed: gId, aId and version
|
||||
Source1: http://pki.fedoraproject.org/pki/sources/%{name}/%{name}-%{version}.pom
|
||||
Patch0: %{name}-jarnamefix.patch
|
||||
Patch1: matching-rule-parsing-640750.patch
|
||||
Patch2: %{name}-support-IPv6.patch
|
||||
Source1: http://pki.fedoraproject.org/pki/sources/%{name}/%{version}/%{name}-%{version}.pom
|
||||
|
||||
Requires: jpackage-utils >= 0:1.5
|
||||
Requires: jss
|
||||
@ -46,19 +43,15 @@ Javadoc for %{name}
|
||||
%prep
|
||||
%setup -q
|
||||
# Remove all bundled jars, we must build against build-system jars
|
||||
rm -f ./mozilla/directory/java-sdk/ldapjdk/lib/{jss32_stub,jsse,jnet,jaas,jndi}.jar
|
||||
|
||||
%patch0 -p1
|
||||
%patch1 -p1
|
||||
%patch2 -p1
|
||||
rm -f ./java-sdk/ldapjdk/lib/{jss32_stub,jsse,jnet,jaas,jndi}.jar
|
||||
|
||||
%build
|
||||
# cleanup CVS dirs
|
||||
rm -fr $(find . -name CVS -type d)
|
||||
# Link to build-system BRs
|
||||
pwd
|
||||
( cd mozilla/directory/java-sdk/ldapjdk/lib && build-jar-repository -s -p . jss4 jsse jaas jndi )
|
||||
cd mozilla/directory/java-sdk
|
||||
( cd java-sdk/ldapjdk/lib && build-jar-repository -s -p . jss4 jsse jaas jndi )
|
||||
cd java-sdk
|
||||
if [ ! -e "$JAVA_HOME" ] ; then export JAVA_HOME="%{_jvmdir}/java" ; fi
|
||||
sh -x ant dist
|
||||
|
||||
@ -66,10 +59,10 @@ sh -x ant dist
|
||||
rm -rf $RPM_BUILD_ROOT
|
||||
|
||||
install -d -m 755 $RPM_BUILD_ROOT%{_javadir}
|
||||
install -m 644 mozilla/directory/java-sdk/dist/packages/%{name}.jar $RPM_BUILD_ROOT%{_javadir}/%{name}.jar
|
||||
install -m 644 mozilla/directory/java-sdk/dist/packages/%{spname}.jar $RPM_BUILD_ROOT%{_javadir}/%{spname}.jar
|
||||
install -m 644 mozilla/directory/java-sdk/dist/packages/%{filtname}.jar $RPM_BUILD_ROOT%{_javadir}/%{filtname}.jar
|
||||
install -m 644 mozilla/directory/java-sdk/dist/packages/%{beansname}.jar $RPM_BUILD_ROOT%{_javadir}/%{beansname}.jar
|
||||
install -m 644 java-sdk/dist/packages/%{name}.jar $RPM_BUILD_ROOT%{_javadir}/%{name}.jar
|
||||
install -m 644 java-sdk/dist/packages/%{spname}.jar $RPM_BUILD_ROOT%{_javadir}/%{spname}.jar
|
||||
install -m 644 java-sdk/dist/packages/%{filtname}.jar $RPM_BUILD_ROOT%{_javadir}/%{filtname}.jar
|
||||
install -m 644 java-sdk/dist/packages/%{beansname}.jar $RPM_BUILD_ROOT%{_javadir}/%{beansname}.jar
|
||||
|
||||
install -d -m 755 $RPM_BUILD_ROOT%{_javadir}-1.3.0
|
||||
|
||||
@ -82,7 +75,7 @@ install -pm 644 %{SOURCE1} %{buildroot}%{_mavenpomdir}/JPP-%{name}.pom
|
||||
%add_maven_depmap JPP-%{name}.pom %{name}.jar -a "ldapsdk:ldapsdk"
|
||||
|
||||
install -d -m 755 $RPM_BUILD_ROOT%{_javadocdir}/%{name}
|
||||
cp -r mozilla/directory/java-sdk/dist/doc/* $RPM_BUILD_ROOT%{_javadocdir}/%{name}
|
||||
cp -r java-sdk/dist/doc/* $RPM_BUILD_ROOT%{_javadocdir}/%{name}
|
||||
|
||||
%files -f .mfiles
|
||||
%defattr(-,root,root,-)
|
||||
@ -97,9 +90,15 @@ cp -r mozilla/directory/java-sdk/dist/doc/* $RPM_BUILD_ROOT%{_javadocdir}/%{name
|
||||
%{_javadocdir}/%{name}/*
|
||||
|
||||
%changelog
|
||||
* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0:4.18-20
|
||||
* Wed Mar 8 2017 Matthew Harmsen <mharmsen@redhat.com> 0:4.19-1
|
||||
- Resolves: rhbz #1394372 - Rebase ldapjdk to 4.19
|
||||
|
||||
* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0:4.18-21
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
|
||||
|
||||
* Mon Oct 31 2016 Matthew Harmsen <mharmsen@redhat.com> 0:4.18-20
|
||||
- Resolves: rhbz #1382856 - ldapjdk fails to parse ldap url with no host:port (mreynolds)
|
||||
|
||||
* Tue Aug 9 2016 Matthew Harmsen <mharmsen@redhat.com> 0:4.18-19
|
||||
- Resolves: rhbz #1353564 - ldapjdk needs to support IPv6 (mreynolds)
|
||||
|
||||
|
@ -1,14 +0,0 @@
|
||||
diff -r 45450e5b01df java-sdk/ldapjdk/netscape/ldap/LDAPSchemaElement.java
|
||||
--- ./mozilla/directory/java-sdk/ldapjdk/netscape/ldap/LDAPSchemaElement.java Fri Feb 18 09:02:26 2011 -0700
|
||||
+++ ./mozilla/directory/java-sdk/ldapjdk/netscape/ldap/LDAPSchemaElement.java Thu Mar 10 13:51:04 2011 -0800
|
||||
@@ -544,6 +544,10 @@
|
||||
for( int i = 0; i < names.length; i++ ) {
|
||||
String[] vals = getQualifier( names[i] );
|
||||
if ( (vals != null) && (vals.length > 0) ) {
|
||||
+ // need a space between elements
|
||||
+ if (i > 0) {
|
||||
+ s += ' ';
|
||||
+ }
|
||||
s += names[i] + ' ' + vals[0];
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue
Block a user