]> WPIA git - gigi.git/commitdiff
Merge changes I47ec8fcb,I2cd200f3
authorBenny Baumann <BenBE1987@gmx.net>
Sat, 27 Jan 2018 21:07:21 +0000 (22:07 +0100)
committerGerrit Code Review <gigi-system@dogcraft.de>
Sat, 27 Jan 2018 21:07:21 +0000 (22:07 +0100)
* changes:
  chg: refactor script to fetch external libraries
  add: dnsjava 2.1.8 dependency and sanity test

.classpath
build.xml
debian/control
debian/gigi-proxy.service
doc/scripts/gigi
lib/external/.gitignore [new file with mode: 0644]
lib/external/checksums.txt [new file with mode: 0644]
lib/external/fetch.sh [new file with mode: 0755]
tests/club/wpia/gigi/TestJavaDNSSanity.java [new file with mode: 0644]

index e9c35f2feec391ba1e7ede77e21f818a54f35332..9a0e4bc77e12d4c614801878eafe6a158714d4e9 100644 (file)
@@ -12,5 +12,6 @@
        <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
        <classpathentry kind="con" path="org.eclipse.jdt.junit.JUNIT_CONTAINER/4"/>
        <classpathentry kind="con" path="org.eclipse.jdt.USER_LIBRARY/MySQL"/>
+       <classpathentry kind="lib" path="lib/external/dnsjava-2.1.8.jar" sourcepath="lib/external/dnsjava-2.1.8.zip"/>
        <classpathentry kind="output" path="bin"/>
 </classpath>
index e9fe6e53aa1280873e6a92404e9f99b0b0577118..d5b95abc1b0d4ae95d2a715f453b1a4491a66652 100644 (file)
--- a/build.xml
+++ b/build.xml
@@ -11,6 +11,7 @@
        <property name="debuglevel" value="source,lines,vars" />
        <property name="target" value="1.8" />
        <property name="source" value="1.8" />
+       <property name="dnsjava" value="/usr/share/java/dnsjava.jar" />
        <property name="sqlconnector" value="/usr/share/java/postgresql-jdbc4.jar" />
        <property name="juintexec" value="/usr/share/java" />
        <path id="JUnit 4.libraryclasspath">
@@ -21,6 +22,7 @@
                <pathelement location="bin" />
                <pathelement location="binutil" />
                <pathelement location="${sqlconnector}" />
+               <pathelement location="${dnsjava}" />
        </path>
        <path id="gigi.test.classpath">
                <pathelement location="bintest" />
@@ -29,6 +31,7 @@
                <pathelement location="binutil-testing" />
                <path refid="JUnit 4.libraryclasspath" />
                <pathelement location="${sqlconnector}" />
+               <pathelement location="${dnsjava}" />
        </path>
        <path id="gigi.test.classpath.jdt">
                <pathelement location="${jdt}" />
index 7a52f97ec976501dd28736f3e771b7a0007c83c1..750d58197e5bb5765320ac12f3a72947262a4e9e 100644 (file)
@@ -10,14 +10,14 @@ Homepage: https://wpia.club
 
 Package: wpia-gigi
 Architecture: all
-Depends: java7-runtime-headless, wpia-gigi-setuid, libpostgresql-jdbc-java, ${shlibs:Depends}, ${misc:Depends}
+Depends: java7-runtime-headless, wpia-gigi-setuid, libpostgresql-jdbc-java, libdnsjava-java, ${shlibs:Depends}, ${misc:Depends}
 Conflicts: wpia-gigi-testing
 Description: WPIA Web-DB software.
  This program is used to manage accounts and certificates.
 
 Package: wpia-gigi-testing
 Architecture: all
-Depends:  java7-runtime-headless, wpia-gigi-setuid, libpostgresql-jdbc-java, ${shlibs:Depends}, ${misc:Depends}
+Depends:  java7-runtime-headless, wpia-gigi-setuid, libpostgresql-jdbc-java, libdnsjava-java, ${shlibs:Depends}, ${misc:Depends}
 Conflicts: wpia-gigi
 Description: WPIA Web-DB software testing version.
  This program is the release to the testing server.
index c7230fc02080e47b4f1188f518030a64155370dc..8c6b388fa7386e484fbe271bb70efddbf183a22c 100644 (file)
@@ -7,7 +7,7 @@ Conflicts=gigi-standalone.service
 PartOf=gigi-proxy.socket
 
 [Service]
-ExecStart=/usr/bin/java -cp /usr/share/java/postgresql-jdbc4.jar:/usr/share/java/gigi.jar club.wpia.gigi.Launcher /etc/wpia/gigi/conf.tar
+ExecStart=/usr/bin/java -cp /usr/share/java/postgresql-jdbc4.jar:/usr/share/java/dnsjava.jar:/usr/share/java/gigi.jar club.wpia.gigi.Launcher /etc/wpia/gigi/conf.tar
 StandardInput=socket
 StandardOutput=journal
 StandardError=journal
index 733a940c049aa6204357dc968c4de27ec200e696..e0e6dc03a18c9db70ff53ba068d0787ee41d2988 100755 (executable)
@@ -7,6 +7,7 @@
 # assign default values
 : \
     ${JDBC_DRIVER:=/usr/share/java/postgresql-jdbc4.jar} \
+    ${DNSJAVA:=/usr/share/java/dnsjava.jar} \
     ${GIGI_EXEC:=/usr/share/java/gigi.jar} \
     ${GIGI_DATA_DIR:=/var/lib/wpia-gigi}
 
@@ -26,7 +27,7 @@ runGigiClass() {
         java_opts="$1"
         shift
     fi
-    exec java $java_opts -cp "$JDBC_DRIVER:$GIGI_EXEC" club.wpia.gigi.$class "$@"
+    exec java $java_opts -cp "$JDBC_DRIVER:$DNSJAVA:$GIGI_EXEC" club.wpia.gigi.$class "$@"
 }
 
 command="$1"
diff --git a/lib/external/.gitignore b/lib/external/.gitignore
new file mode 100644 (file)
index 0000000..022166d
--- /dev/null
@@ -0,0 +1,2 @@
+/dnsjava-2.1.8.jar
+/dnsjava-2.1.8.zip
diff --git a/lib/external/checksums.txt b/lib/external/checksums.txt
new file mode 100644 (file)
index 0000000..9dc8acf
--- /dev/null
@@ -0,0 +1,2 @@
+228cb8d95d7b4235df074afae043d7481443b2984f6c9ceb2ac7543068f574e1 *dnsjava-2.1.8.jar
+3af9229bbc534fd85a2257fcc443b8a0b14aba64d59f824daa9567d7ddc091da *dnsjava-2.1.8.zip
diff --git a/lib/external/fetch.sh b/lib/external/fetch.sh
new file mode 100755 (executable)
index 0000000..c733449
--- /dev/null
@@ -0,0 +1,9 @@
+#!/bin/bash
+externals=(
+    'http://www.dnsjava.org/download/dnsjava-2.1.8.zip'
+    'http://www.dnsjava.org/download/dnsjava-2.1.8.jar'
+)
+wget -N "${externals[@]}"
+if ! sha256sum -c checksums.txt; then
+    rm -vf $(basename -a "${externals[@]}")
+fi
diff --git a/tests/club/wpia/gigi/TestJavaDNSSanity.java b/tests/club/wpia/gigi/TestJavaDNSSanity.java
new file mode 100644 (file)
index 0000000..55ad144
--- /dev/null
@@ -0,0 +1,26 @@
+package club.wpia.gigi;
+
+import static org.junit.Assert.*;
+
+import org.junit.Test;
+import org.xbill.DNS.Name;
+import org.xbill.DNS.NameTooLongException;
+import org.xbill.DNS.TextParseException;
+
+public class TestJavaDNSSanity {
+
+    /**
+     * Simple testcase from the dnsjava examples.
+     */
+    @Test
+    public void testJavaDNSSanity() throws TextParseException, NameTooLongException {
+        Name n = Name.fromString("www.dnsjava.org");
+        Name o = Name.fromString("dnsjava.org");
+
+        assertTrue(n.subdomain(o));
+        Name rel = n.relativize(o);
+        Name n2 = Name.concatenate(rel, o);
+        assertEquals(n2, n);
+    }
+
+}