SecBSD's official ports repository

This commit is contained in:
purplerain 2023-08-16 22:26:55 +00:00
commit 2c0afcbbf3
Signed by: purplerain
GPG key ID: F42C07F07E2E35B7
64331 changed files with 5339189 additions and 0 deletions

9
java/Makefile Normal file
View file

@ -0,0 +1,9 @@
SUBDIR =
SUBDIR += gradle
SUBDIR += jBCrypt
SUBDIR += javaPathHelper
SUBDIR += jlint
SUBDIR += jna
SUBDIR += tanukiwrapper
.include <bsd.port.subdir.mk>

34
java/gradle/Makefile Normal file
View file

@ -0,0 +1,34 @@
COMMENT = build automation tool
DISTNAME = gradle-6.7
EXTRACT_SUFX = -bin.zip
EPOCH = 0
CATEGORIES = java
HOMEPAGE = https://gradle.org/
MAINTAINER = Lawrence Teo <lteo@openbsd.org>
# Apache 2.0
PERMIT_PACKAGE = Yes
MASTER_SITES = https://services.gradle.org/distributions/
MODULES = java
MODJAVA_VER = 1.8+
NO_BUILD = Yes
NO_TEST = Yes
GRADLE_JAR = ${DISTNAME:S/gradle//}.jar
SUBST_VARS += GRADLE_JAR
RUN_DEPENDS = java/javaPathHelper
do-install:
${INSTALL_DATA_DIR} ${PREFIX}/share/java/gradle
cp -r ${WRKSRC}/* ${PREFIX}/share/java/gradle/
ln -s ${TRUEPREFIX}/share/java/gradle/bin/gradle ${PREFIX}/bin/gradle
.include <bsd.port.mk>

2
java/gradle/distinfo Normal file
View file

@ -0,0 +1,2 @@
SHA256 (gradle-6.7-bin.zip) = itV3WQGakjPcfcTRpTDO/hCdwSIADVf35iP4z0up38Q=
SIZE (gradle-6.7-bin.zip) = 102804263

View file

@ -0,0 +1,12 @@
Index: bin/gradle
--- bin/gradle.orig
+++ bin/gradle
@@ -83,6 +83,8 @@ esac
CLASSPATH=$APP_HOME/lib/gradle-launcher-6.6.jar
+JAVA_HOME="$(javaPathHelper -h gradle)"
+
# Determine the Java command to use to start the JVM.
if [ -n "$JAVA_HOME" ] ; then
if [ -x "$JAVA_HOME/jre/sh/java" ] ; then

2
java/gradle/pkg/DESCR Normal file
View file

@ -0,0 +1,2 @@
Gradle is an open-source build automation tool focused on flexibility and
performance.

238
java/gradle/pkg/PLIST Normal file
View file

@ -0,0 +1,238 @@
bin/gradle
share/java/
share/java/gradle/
share/java/gradle/LICENSE
share/java/gradle/NOTICE
share/java/gradle/README
share/java/gradle/bin/
share/java/gradle/bin/gradle
share/java/gradle/bin/gradle.bat
share/java/gradle/init.d/
share/java/gradle/init.d/readme.txt
share/java/gradle/lib/
share/java/gradle/lib/annotations-13.0.jar
share/java/gradle/lib/ant-1.10.8.jar
share/java/gradle/lib/ant-launcher-1.10.8.jar
share/java/gradle/lib/asm-7.3.1.jar
share/java/gradle/lib/asm-analysis-7.3.1.jar
share/java/gradle/lib/asm-commons-7.3.1.jar
share/java/gradle/lib/asm-tree-7.3.1.jar
share/java/gradle/lib/commons-compress-1.19.jar
share/java/gradle/lib/commons-io-2.6.jar
share/java/gradle/lib/commons-lang-2.6.jar
share/java/gradle/lib/failureaccess-1.0.1.jar
share/java/gradle/lib/fastutil-8.3.0-min.jar
share/java/gradle/lib/file-events-0.22-milestone-8.jar
share/java/gradle/lib/file-events-linux-aarch64-0.22-milestone-8.jar
share/java/gradle/lib/file-events-linux-amd64-0.22-milestone-8.jar
share/java/gradle/lib/file-events-osx-amd64-0.22-milestone-8.jar
share/java/gradle/lib/file-events-windows-amd64-0.22-milestone-8.jar
share/java/gradle/lib/file-events-windows-amd64-min-0.22-milestone-8.jar
share/java/gradle/lib/file-events-windows-i386-0.22-milestone-8.jar
share/java/gradle/lib/file-events-windows-i386-min-0.22-milestone-8.jar
share/java/gradle/lib/gradle-api-metadata${GRADLE_JAR}
share/java/gradle/lib/gradle-base-annotations${GRADLE_JAR}
share/java/gradle/lib/gradle-base-services${GRADLE_JAR}
share/java/gradle/lib/gradle-base-services-groovy${GRADLE_JAR}
share/java/gradle/lib/gradle-bootstrap${GRADLE_JAR}
share/java/gradle/lib/gradle-build-cache${GRADLE_JAR}
share/java/gradle/lib/gradle-build-cache-base${GRADLE_JAR}
share/java/gradle/lib/gradle-build-cache-packaging${GRADLE_JAR}
share/java/gradle/lib/gradle-build-events${GRADLE_JAR}
share/java/gradle/lib/gradle-build-operations${GRADLE_JAR}
share/java/gradle/lib/gradle-build-option${GRADLE_JAR}
share/java/gradle/lib/gradle-cli${GRADLE_JAR}
share/java/gradle/lib/gradle-core${GRADLE_JAR}
share/java/gradle/lib/gradle-core-api${GRADLE_JAR}
share/java/gradle/lib/gradle-execution${GRADLE_JAR}
share/java/gradle/lib/gradle-file-collections${GRADLE_JAR}
share/java/gradle/lib/gradle-file-watching${GRADLE_JAR}
share/java/gradle/lib/gradle-files${GRADLE_JAR}
share/java/gradle/lib/gradle-hashing${GRADLE_JAR}
share/java/gradle/lib/gradle-installation-beacon${GRADLE_JAR}
share/java/gradle/lib/gradle-jvm-services${GRADLE_JAR}
share/java/gradle/lib/gradle-kotlin-dsl${GRADLE_JAR}
share/java/gradle/lib/gradle-kotlin-dsl-tooling-models${GRADLE_JAR}
share/java/gradle/lib/gradle-launcher${GRADLE_JAR}
share/java/gradle/lib/gradle-logging${GRADLE_JAR}
share/java/gradle/lib/gradle-messaging${GRADLE_JAR}
share/java/gradle/lib/gradle-model-core${GRADLE_JAR}
share/java/gradle/lib/gradle-model-groovy${GRADLE_JAR}
share/java/gradle/lib/gradle-native${GRADLE_JAR}
share/java/gradle/lib/gradle-normalization-java${GRADLE_JAR}
share/java/gradle/lib/gradle-persistent-cache${GRADLE_JAR}
share/java/gradle/lib/gradle-process-services${GRADLE_JAR}
share/java/gradle/lib/gradle-resources${GRADLE_JAR}
share/java/gradle/lib/gradle-runtime-api-info${GRADLE_JAR}
share/java/gradle/lib/gradle-snapshots${GRADLE_JAR}
share/java/gradle/lib/gradle-tooling-api${GRADLE_JAR}
share/java/gradle/lib/gradle-worker-processes${GRADLE_JAR}
share/java/gradle/lib/gradle-wrapper${GRADLE_JAR}
share/java/gradle/lib/groovy-all-1.3-2.5.12.jar
share/java/gradle/lib/guava-27.1-android.jar
share/java/gradle/lib/jansi-1.18.jar
share/java/gradle/lib/javax.inject-1.jar
share/java/gradle/lib/jcl-over-slf4j-1.7.28.jar
share/java/gradle/lib/jsr305-3.0.2.jar
share/java/gradle/lib/jul-to-slf4j-1.7.28.jar
share/java/gradle/lib/kotlin-compiler-embeddable-1.3.72-patched-for-gradle${GRADLE_JAR}
share/java/gradle/lib/kotlin-daemon-embeddable-1.3.72.jar
share/java/gradle/lib/kotlin-reflect-1.3.72.jar
share/java/gradle/lib/kotlin-sam-with-receiver-compiler-plugin-1.3.72.jar
share/java/gradle/lib/kotlin-script-runtime-1.3.72.jar
share/java/gradle/lib/kotlin-scripting-common-1.3.72.jar
share/java/gradle/lib/kotlin-scripting-compiler-embeddable-1.3.72.jar
share/java/gradle/lib/kotlin-scripting-compiler-impl-embeddable-1.3.72.jar
share/java/gradle/lib/kotlin-scripting-jvm-1.3.72.jar
share/java/gradle/lib/kotlin-scripting-jvm-host-embeddable-1.3.72.jar
share/java/gradle/lib/kotlin-stdlib-1.3.72.jar
share/java/gradle/lib/kotlin-stdlib-common-1.3.72.jar
share/java/gradle/lib/kotlin-stdlib-jdk7-1.3.72.jar
share/java/gradle/lib/kotlin-stdlib-jdk8-1.3.72.jar
share/java/gradle/lib/kotlinx-metadata-jvm-0.1.0.jar
share/java/gradle/lib/kryo-2.24.0.jar
share/java/gradle/lib/log4j-over-slf4j-1.7.28.jar
share/java/gradle/lib/minlog-1.2.jar
share/java/gradle/lib/native-platform-0.22-milestone-8.jar
share/java/gradle/lib/native-platform-freebsd-amd64-libcpp-0.22-milestone-8.jar
share/java/gradle/lib/native-platform-linux-aarch64-0.22-milestone-8.jar
share/java/gradle/lib/native-platform-linux-aarch64-ncurses5-0.22-milestone-8.jar
share/java/gradle/lib/native-platform-linux-aarch64-ncurses6-0.22-milestone-8.jar
share/java/gradle/lib/native-platform-linux-amd64-0.22-milestone-8.jar
share/java/gradle/lib/native-platform-linux-amd64-ncurses5-0.22-milestone-8.jar
share/java/gradle/lib/native-platform-linux-amd64-ncurses6-0.22-milestone-8.jar
share/java/gradle/lib/native-platform-osx-amd64-0.22-milestone-8.jar
share/java/gradle/lib/native-platform-windows-amd64-0.22-milestone-8.jar
share/java/gradle/lib/native-platform-windows-amd64-min-0.22-milestone-8.jar
share/java/gradle/lib/native-platform-windows-i386-0.22-milestone-8.jar
share/java/gradle/lib/native-platform-windows-i386-min-0.22-milestone-8.jar
share/java/gradle/lib/objenesis-2.6.jar
share/java/gradle/lib/plugins/
share/java/gradle/lib/plugins/aether-api-1.13.1.jar
share/java/gradle/lib/plugins/aether-connector-wagon-1.13.1.jar
share/java/gradle/lib/plugins/aether-impl-1.13.1.jar
share/java/gradle/lib/plugins/aether-spi-1.13.1.jar
share/java/gradle/lib/plugins/aether-util-1.13.1.jar
share/java/gradle/lib/plugins/apiguardian-api-1.1.0.jar
share/java/gradle/lib/plugins/asm-util-7.3.1.jar
share/java/gradle/lib/plugins/aws-java-sdk-core-1.11.633.jar
share/java/gradle/lib/plugins/aws-java-sdk-kms-1.11.633.jar
share/java/gradle/lib/plugins/aws-java-sdk-s3-1.11.633.jar
share/java/gradle/lib/plugins/bcpg-jdk15on-1.64.jar
share/java/gradle/lib/plugins/bcpkix-jdk15on-1.64.jar
share/java/gradle/lib/plugins/bcprov-jdk15on-1.64.jar
share/java/gradle/lib/plugins/bsh-2.0b6.jar
share/java/gradle/lib/plugins/commons-codec-1.13.jar
share/java/gradle/lib/plugins/dd-plist-1.21.jar
share/java/gradle/lib/plugins/google-api-client-1.25.0.jar
share/java/gradle/lib/plugins/google-api-services-storage-v1-rev136-1.25.0.jar
share/java/gradle/lib/plugins/google-http-client-1.25.0.jar
share/java/gradle/lib/plugins/google-http-client-jackson2-1.25.0.jar
share/java/gradle/lib/plugins/google-oauth-client-1.25.0.jar
share/java/gradle/lib/plugins/gradle-antlr${GRADLE_JAR}
share/java/gradle/lib/plugins/gradle-build-cache-http${GRADLE_JAR}
share/java/gradle/lib/plugins/gradle-build-init${GRADLE_JAR}
share/java/gradle/lib/plugins/gradle-build-profile${GRADLE_JAR}
share/java/gradle/lib/plugins/gradle-code-quality${GRADLE_JAR}
share/java/gradle/lib/plugins/gradle-composite-builds${GRADLE_JAR}
share/java/gradle/lib/plugins/gradle-configuration-cache${GRADLE_JAR}
share/java/gradle/lib/plugins/gradle-dependency-management${GRADLE_JAR}
share/java/gradle/lib/plugins/gradle-diagnostics${GRADLE_JAR}
share/java/gradle/lib/plugins/gradle-ear${GRADLE_JAR}
share/java/gradle/lib/plugins/gradle-enterprise${GRADLE_JAR}
share/java/gradle/lib/plugins/gradle-ide${GRADLE_JAR}
share/java/gradle/lib/plugins/gradle-ide-native${GRADLE_JAR}
share/java/gradle/lib/plugins/gradle-ide-play${GRADLE_JAR}
share/java/gradle/lib/plugins/gradle-ivy${GRADLE_JAR}
share/java/gradle/lib/plugins/gradle-jacoco${GRADLE_JAR}
share/java/gradle/lib/plugins/gradle-java-compiler-plugin${GRADLE_JAR}
share/java/gradle/lib/plugins/gradle-javascript${GRADLE_JAR}
share/java/gradle/lib/plugins/gradle-kotlin-dsl-provider-plugins${GRADLE_JAR}
share/java/gradle/lib/plugins/gradle-kotlin-dsl-tooling-builders${GRADLE_JAR}
share/java/gradle/lib/plugins/gradle-language-groovy${GRADLE_JAR}
share/java/gradle/lib/plugins/gradle-language-java${GRADLE_JAR}
share/java/gradle/lib/plugins/gradle-language-jvm${GRADLE_JAR}
share/java/gradle/lib/plugins/gradle-language-native${GRADLE_JAR}
share/java/gradle/lib/plugins/gradle-language-scala${GRADLE_JAR}
share/java/gradle/lib/plugins/gradle-maven${GRADLE_JAR}
share/java/gradle/lib/plugins/gradle-platform-base${GRADLE_JAR}
share/java/gradle/lib/plugins/gradle-platform-jvm${GRADLE_JAR}
share/java/gradle/lib/plugins/gradle-platform-native${GRADLE_JAR}
share/java/gradle/lib/plugins/gradle-platform-play${GRADLE_JAR}
share/java/gradle/lib/plugins/gradle-plugin-development${GRADLE_JAR}
share/java/gradle/lib/plugins/gradle-plugin-use${GRADLE_JAR}
share/java/gradle/lib/plugins/gradle-plugins${GRADLE_JAR}
share/java/gradle/lib/plugins/gradle-publish${GRADLE_JAR}
share/java/gradle/lib/plugins/gradle-reporting${GRADLE_JAR}
share/java/gradle/lib/plugins/gradle-resources-gcs${GRADLE_JAR}
share/java/gradle/lib/plugins/gradle-resources-http${GRADLE_JAR}
share/java/gradle/lib/plugins/gradle-resources-s3${GRADLE_JAR}
share/java/gradle/lib/plugins/gradle-resources-sftp${GRADLE_JAR}
share/java/gradle/lib/plugins/gradle-scala${GRADLE_JAR}
share/java/gradle/lib/plugins/gradle-security${GRADLE_JAR}
share/java/gradle/lib/plugins/gradle-signing${GRADLE_JAR}
share/java/gradle/lib/plugins/gradle-test-kit${GRADLE_JAR}
share/java/gradle/lib/plugins/gradle-testing-base${GRADLE_JAR}
share/java/gradle/lib/plugins/gradle-testing-junit-platform${GRADLE_JAR}
share/java/gradle/lib/plugins/gradle-testing-jvm${GRADLE_JAR}
share/java/gradle/lib/plugins/gradle-testing-native${GRADLE_JAR}
share/java/gradle/lib/plugins/gradle-tooling-api-builders${GRADLE_JAR}
share/java/gradle/lib/plugins/gradle-tooling-native${GRADLE_JAR}
share/java/gradle/lib/plugins/gradle-version-control${GRADLE_JAR}
share/java/gradle/lib/plugins/gradle-workers${GRADLE_JAR}
share/java/gradle/lib/plugins/gson-2.8.5.jar
share/java/gradle/lib/plugins/hamcrest-core-1.3.jar
share/java/gradle/lib/plugins/httpclient-4.5.10.jar
share/java/gradle/lib/plugins/httpcore-4.4.12.jar
share/java/gradle/lib/plugins/ion-java-1.0.2.jar
share/java/gradle/lib/plugins/ivy-2.3.0.jar
share/java/gradle/lib/plugins/jackson-annotations-2.10.2.jar
share/java/gradle/lib/plugins/jackson-core-2.10.2.jar
share/java/gradle/lib/plugins/jackson-databind-2.10.2.jar
share/java/gradle/lib/plugins/jatl-0.2.3.jar
share/java/gradle/lib/plugins/jaxb-impl-2.3.2.jar
share/java/gradle/lib/plugins/jcifs-1.3.17.jar
share/java/gradle/lib/plugins/jcommander-1.72.jar
share/java/gradle/lib/plugins/jmespath-java-1.11.633.jar
share/java/gradle/lib/plugins/joda-time-2.10.4.jar
share/java/gradle/lib/plugins/jsch-0.1.55.jar
share/java/gradle/lib/plugins/junit-4.13.jar
share/java/gradle/lib/plugins/junit-platform-commons-1.6.2.jar
share/java/gradle/lib/plugins/junit-platform-engine-1.6.2.jar
share/java/gradle/lib/plugins/junit-platform-launcher-1.6.2.jar
share/java/gradle/lib/plugins/jzlib-1.1.3.jar
share/java/gradle/lib/plugins/maven-aether-provider-3.0.5.jar
share/java/gradle/lib/plugins/maven-artifact-3.0.5.jar
share/java/gradle/lib/plugins/maven-compat-3.0.5.jar
share/java/gradle/lib/plugins/maven-core-3.0.5.jar
share/java/gradle/lib/plugins/maven-model-3.0.5.jar
share/java/gradle/lib/plugins/maven-model-builder-3.0.5.jar
share/java/gradle/lib/plugins/maven-plugin-api-3.0.5.jar
share/java/gradle/lib/plugins/maven-repository-metadata-3.0.5.jar
share/java/gradle/lib/plugins/maven-settings-3.0.5.jar
share/java/gradle/lib/plugins/maven-settings-builder-3.0.5.jar
share/java/gradle/lib/plugins/nekohtml-1.9.22.jar
share/java/gradle/lib/plugins/opentest4j-1.2.0.jar
share/java/gradle/lib/plugins/org.eclipse.jgit-5.7.0.202003110725-r.jar
share/java/gradle/lib/plugins/plexus-cipher-1.7.jar
share/java/gradle/lib/plugins/plexus-classworlds-2.5.1.jar
share/java/gradle/lib/plugins/plexus-component-annotations-1.5.5.jar
share/java/gradle/lib/plugins/plexus-container-default-1.7.1.jar
share/java/gradle/lib/plugins/plexus-interpolation-1.14.jar
share/java/gradle/lib/plugins/plexus-sec-dispatcher-1.3.jar
share/java/gradle/lib/plugins/plexus-utils-3.1.0.jar
share/java/gradle/lib/plugins/pmaven-common-0.8-20100325.jar
share/java/gradle/lib/plugins/pmaven-groovy-0.8-20100325.jar
share/java/gradle/lib/plugins/rhino-1.7.10.jar
share/java/gradle/lib/plugins/simple-4.1.21.jar
share/java/gradle/lib/plugins/snakeyaml-1.17.jar
share/java/gradle/lib/plugins/testng-6.3.1.jar
share/java/gradle/lib/plugins/wagon-file-3.0.0.jar
share/java/gradle/lib/plugins/wagon-http-3.0.0.jar
share/java/gradle/lib/plugins/wagon-http-shared-3.0.0.jar
share/java/gradle/lib/plugins/wagon-provider-api-3.0.0.jar
share/java/gradle/lib/plugins/xbean-reflect-3.7.jar
share/java/gradle/lib/plugins/xercesImpl-2.12.0.jar
share/java/gradle/lib/slf4j-api-1.7.28.jar
share/java/gradle/lib/trove4j-1.0.20181211.jar
share/java/gradle/lib/xml-apis-1.4.01.jar

33
java/jBCrypt/Makefile Normal file
View file

@ -0,0 +1,33 @@
COMMENT= BCrypt library for Java
DISTNAME= jBCrypt-0.4
REVISION= 5
CATEGORIES= security
HOMEPAGE= https://www.mindrot.org/projects/jBCrypt/
MAINTAINER= Stuart Henderson <stu.ports@spacehopper.org>
# ISC
PERMIT_PACKAGE= Yes
MASTER_SITES= https://www.mindrot.org/files/jBCrypt/
MODULES= java
MODJAVA_VER= 1.8+
MODJAVA_BUILD= ant
# JUnit tests exist but unsure how to handle non-ascii chars (or run them in
# the first place..)
NO_TEST= Yes
do-configure:
cp ${FILESDIR}/build.xml ${WRKSRC}/
do-install:
${INSTALL_DATA_DIR} ${MODJAVA_JAR_DIR} ${MODJAVA_DOC_DIR}/BCrypt
${INSTALL_DATA} ${WRKSRC}/build/lib/BCrypt.jar ${MODJAVA_JAR_DIR}
${INSTALL_DATA} ${WRKSRC}/{README,LICENSE} ${MODJAVA_DOC_DIR}/BCrypt
.include <bsd.port.mk>

2
java/jBCrypt/distinfo Normal file
View file

@ -0,0 +1,2 @@
SHA256 (jBCrypt-0.4.tar.gz) = HCDVsdF5+2PZpOspX3DJbinNvbYXMVCDhUAhAhBiMFM=
SIZE (jBCrypt-0.4.tar.gz) = 15167

View file

@ -0,0 +1,38 @@
<project name="BCrypt" default="all" basedir=".">
<!-- Properties -->
<property name="name" value="BCrypt"/>
<property name="src" value="src"/>
<property name="build" value="build"/>
<property name="build.classes" value="${build}/classes"/>
<property name="build.lib" value="${build}/lib"/>
<property name="packagenames" value="BCrypt.*"/>
<target name="prepare">
<mkdir dir="${src}"/>
<mkdir dir="${build}"/>
<mkdir dir="${build.classes}"/>
<mkdir dir="${build.lib}"/>
<copy todir="${src}">
<fileset dir="./">
<include name="BCrypt.java"/>
</fileset>
</copy>
</target>
<target name="clean">
<delete dir="${build}"/>
<delete dir="${src}"/>
</target>
<target name="classes" depends="prepare">
<javac srcdir="${src}/" destdir="${build.classes}" debug="off" optimize="on"/>
</target>
<target name="all" depends="classes">
<jar jarfile="${build.lib}/${name}.jar" basedir="${build.classes}"/>
</target>
</project>

View file

@ -0,0 +1,34 @@
Accept $2b$ bcrypt prefix.
jBCrypt didn't have the 255-char bug affecting OpenBSD libc in the
first place, so its $2a$ handling doesn't match OpenBSD's. Changing
that would break compatibility with older jBCrypt versions with long
passwords which is more likely to be a problem than compatibility with
old OpenBSD, so that is left alone for now.
Index: src/org/mindrot/jbcrypt/BCrypt.java
--- src/org/mindrot/jbcrypt/BCrypt.java.orig
+++ src/org/mindrot/jbcrypt/BCrypt.java
@@ -661,7 +661,11 @@ public class BCrypt {
off = 3;
else {
minor = salt.charAt(2);
- if (minor != 'a' || salt.charAt(3) != '$')
+ // 2; short-lived original
+ // 2a; specified UTF-8 and terminating NUL
+ // 2b; 256-char wrap bug in OpenBSD libc was fixed
+ // (jBCrypt handling of 2a doesn't match OpenBSD's as it didn't have the bug)
+ if ((minor != 'a' && minor != 'b') || salt.charAt(3) != '$')
throw new IllegalArgumentException ("Invalid salt revision");
off = 4;
}
@@ -716,6 +720,9 @@ public class BCrypt {
random.nextBytes(rnd);
+ // keep writing $2a$ for now to give backwards compat with
+ // older jBCrypt versions; though this means that bcrypts of
+ // very long input passwords might not be accepted by OpenBSD
rs.append("$2a$");
if (log_rounds < 10)
rs.append("0");

11
java/jBCrypt/pkg/DESCR Normal file
View file

@ -0,0 +1,11 @@
jBCrypt is a Java implementation of OpenBSD's Blowfish password
hashing code, compatible with the canonical C implementation of the
bcrypt algorithm.
This system hashes passwords using a version of Bruce Schneier's
Blowfish block cipher with modifications designed to raise the cost
of off-line password cracking and frustrate fast hardware implementation.
The computation cost of the algorithm is parametised, so it can be
increased as computers get faster. The intent is to make a compromise
of a password database less likely to result in an attacker gaining
knowledge of the plaintext passwords (e.g. using John the Ripper).

7
java/jBCrypt/pkg/PLIST Normal file
View file

@ -0,0 +1,7 @@
share/java/
share/java/classes/
share/java/classes/BCrypt.jar
share/java/doc/
share/java/doc/BCrypt/
share/java/doc/BCrypt/LICENSE
share/java/doc/BCrypt/README

View file

@ -0,0 +1,23 @@
COMMENT= helper script for launching java applications
GH_ACCOUNT= bsdkurt
GH_PROJECT= javaPathHelper
GH_TAGNAME= 2.2
CATEGORIES= java
MAINTAINER= Kurt Miller <kurt@openbsd.org>
# BSD
PERMIT_PACKAGE= Yes
NO_BUILD= Yes
NO_TEST= Yes
do-install:
@sed -e "s+%%LOCALBASE%%+${TRUEPREFIX}+g" \
-e "s+%%PKG_DBDIR%%+${PKG_DBDIR}+g" \
${WRKBUILD}/javaPathHelper.in > ${WRKBUILD}/javaPathHelper
${INSTALL_SCRIPT} ${WRKBUILD}/javaPathHelper ${PREFIX}/bin
.include <bsd.port.mk>

View file

@ -0,0 +1,2 @@
SHA256 (javaPathHelper-2.2.tar.gz) = WZW94ygPqLyALwQSDDlPLOfOALE2T0YLIKemWqnHUt4=
SIZE (javaPathHelper-2.2.tar.gz) = 2095

View file

@ -0,0 +1,10 @@
javaPathHelper is a script that java applications can use to provide a
consistent and familiar method for launching java applications on
OpenBSD. The use of JAVACMD, JAVA_HOME and PATH environment variables are
well known methods for users to control which JVM is used to launch a
java application. When a user sets up their environment javaPathHelper
will use it. No attempt is made to prevent the user from running an
application that requires a particular JVM version with a lower version.
When the user's environment has not be setup, javaPathHelper falls back
to inspecting which JDK or JVM satisfied the RUN_DEPENDS for the
package.

View file

@ -0,0 +1 @@
bin/javaPathHelper

24
java/jlint/Makefile Normal file
View file

@ -0,0 +1,24 @@
COMMENT= Java program analyzer and checker
DISTNAME= jlint-3.1.2
REVISION = 3
CATEGORIES= java
HOMEPAGE= http://jlint.sourceforge.net/
# GPLv2+
PERMIT_PACKAGE= Yes
WANTLIB= c z m ${COMPILER_LIBCXX}
COMPILER = base-clang ports-gcc base-gcc
MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=jlint/}
MAKE_ENV+= CC="${CC}" CPP="${CXX}" \
INSTALL_PROGRAM="${INSTALL_PROGRAM}" \
INSTALL_DATA_DIR="${INSTALL_DATA_DIR}" \
INSTALL_DATA="${INSTALL_DATA}"
NO_TEST= Yes
.include <bsd.port.mk>

2
java/jlint/distinfo Normal file
View file

@ -0,0 +1,2 @@
SHA256 (jlint-3.1.2.tar.gz) = 42olJQ4xxMqpmBi39lHUAMJusFxBz5uCTxw94t6CBvU=
SIZE (jlint-3.1.2.tar.gz) = 269056

View file

@ -0,0 +1,66 @@
--- Makefile.orig Wed Jan 14 17:23:41 2004
+++ Makefile Thu Mar 26 19:02:54 2009
@@ -3,8 +3,8 @@
# Makefile for Unix and GNU/Linux with gcc/g++ compiler
# Edit here:
-CC=gcc
-CPP=g++
+#CC=gcc
+CPP=${CXX}
# Hints:
# if you use egcs-2.90.* version of GCC please add option -fno-exceptions
@@ -20,7 +20,7 @@ CPP=g++
# Optimized version
-CFLAGS = -c -Wall -O2 -g
+CFLAGS += -c
# -DSLIST removed because it wouldn't compile under gcc 3.x
# add -DHASH_TABLE for extra speed (may sometimes produce inconsistent results)
@@ -28,7 +28,8 @@ CFLAGS = -c -Wall -O2 -g
#CFLAGS = -c -Wall -O2 -g -DSLIST -DNDEBUG
# link zlib the compression/decompression library. used for decompressing jar files
-LFLAGS=-g -lz
+LFLAGS=-g
+LIBS=-lz
# Directory to place executables
INSTALL_DIR=/usr/local/bin
@@ -52,7 +53,7 @@ antic.o: antic.c
$(CC) $(CFLAGS) antic.c
antic: antic.o
- $(CC) $(LFLAGS) -o antic antic.o
+ $(CC) $(LFLAGS) -o antic antic.o $(LIBS)
clean:
rm -f *.o *.exe core *~ *.his *.class jlint antic manual.{html,pdf,aux,cp,fn,ky,log,pg,toc,tp,vr} jlint_3.0.{aux,dvi,log,toc}
@@ -103,10 +104,11 @@ test-zip:
install:
- cp jlint antic jlint.sh $(INSTALL_DIR)
- chmod 755 $(INSTALL_DIR)/antic
- chmod 755 $(INSTALL_DIR)/jlint
- chmod 755 $(INSTALL_DIR)/jlint.sh
+ $(INSTALL_PROGRAM) antic $(PREFIX)/bin
+ $(INSTALL_PROGRAM) jlint $(PREFIX)/bin
+ $(INSTALL_PROGRAM) jlint.sh $(PREFIX)/bin
+ $(INSTALL_DATA_DIR) $(PREFIX)/share/doc/jlint
+ $(INSTALL_DATA) manual.pdf $(PREFIX)/share/doc/jlint
# --> automatically generated dependencies follow; do not remove this line.
@@ -120,7 +122,7 @@ jlint: \
locks.o \
message_node.o \
method_desc.o
- $(CPP) $(LFLAGS) -o jlint access_desc.o callee_desc.o class_desc.o graph.o jlint.o local_context.o locks.o message_node.o method_desc.o
+ $(CPP) $(LFLAGS) -o jlint access_desc.o callee_desc.o class_desc.o graph.o jlint.o local_context.o locks.o message_node.o method_desc.o $(LIBS)
access_desc.o: access_desc.cc \
access_desc.hh \

View file

@ -0,0 +1,14 @@
--- field_desc.hh.orig Tue Jun 5 14:19:37 2001
+++ field_desc.hh Thu Mar 26 19:01:07 2009
@@ -2,9 +2,10 @@
#define FIELD_DESC_HH
#ifdef VISUAL_CPP
-using namespace std;
#pragma warning (disable : 4786)
#endif
+
+using namespace std;
#include "component_desc.hh"
#include "utf_string.hh"

View file

@ -0,0 +1,86 @@
Index: jlint.cc
--- jlint.cc.orig
+++ jlint.cc
@@ -41,7 +41,7 @@ bool source_path_redefined = false;
int reported_message_mask = cat_all;
FILE* history;
string_pool stringPool;
-field_desc* is_const;
+field_desc* my_is_const;
message_descriptor msg_table[] =
{
@@ -138,7 +138,7 @@ int get_type(utf_string const& str)
void format_message(int code, utf_string const& file, int line, __VALIST ap)
{
- static int loop_id;
+ static long loop_id;
static message_node *first, *last;
static char* compound_message;
const void* parameter[MAX_MSG_PARAMETERS];
@@ -151,7 +151,7 @@ void format_message(int code, utf_string const& file,
if (compound_message != NULL
&& ((loop_id != 0
&& ((code != msg_loop && code != msg_sync_loop)
- || (int)(long)parameter[2] != loop_id))
+ || (long)parameter[2] != loop_id))
|| (loop_id == 0 && code != msg_wait_path)))
{
if (!message_node::find(compound_message)) {
@@ -226,7 +226,7 @@ void format_message(int code, utf_string const& file,
name.as_asciz());
break;
case 'd': // integer
- dst += sprintf(dst, "%d", (int)(long)parameter[index]);
+ dst += sprintf(dst, "%ld", (long)parameter[index]);
break;
default:
assert(false/*bad message parameter format*/);
@@ -262,7 +262,7 @@ void format_message(int code, utf_string const& file,
compound_message = strdup(his_buf);
first = last = new message_node(msg_buf);
if (code != msg_wait) {
- loop_id = (int)(long)parameter[2];
+ loop_id = (long)parameter[2];
}
} else if (!message_node::find(his_buf)) {
fprintf(stdout, "%s\n", msg_buf);
@@ -401,8 +401,8 @@ bool parse_class_file(byte* fp)
is_this->equals = is_this;
is_this->cls = this_class;
- // init. is_const
- field_desc* is_const = new field_desc(utf_string("<const>"), NULL, NULL);
+ // init. my_is_const
+ field_desc* my_is_const = new field_desc(utf_string("<const>"), NULL, NULL);
this_class->attr = access_flags;
if (super_class_name == 0) { // Object class
@@ -627,7 +627,7 @@ bool parse_class_file(byte* fp)
delete[] constant_pool;
delete is_this->name_and_type;
//delete is_this;
- delete is_const;
+ delete my_is_const;
monitor_stack::const_iterator it;
for (it = this_class->usedLocks.begin();
@@ -662,7 +662,7 @@ inline int stricmp(const char* p, const char* q)
return 0;
}
-void proceed_file(char* file_name, bool recursive = false)
+void proceed_file(char* file_name, int recursive = 0)
{
#ifdef _WIN32
HANDLE dir;
@@ -1041,7 +1041,7 @@ int main(int argc, char* argv[])
if (verbose) {
fprintf(stderr,
"Jlint - program correctness verifier for Java, "
- "version %s ("__DATE__").\n", VERSION);
+ "version %s (" __DATE__ ").\n", VERSION);
}
continue;
}

View file

@ -0,0 +1,20 @@
--- method_desc.cc.orig Wed Apr 12 14:38:53 2017
+++ method_desc.cc Wed Apr 12 14:40:13 2017
@@ -767,7 +767,7 @@ void method_desc::parse_code(constant** constant_pool,
sp->mask = var_desc::vs_not_null;
}
sp->index = NO_ASSOC_VAR;
- sp->equals = is_const;
+ sp->equals = my_is_const;
sp += 1;
}
break;
@@ -2381,7 +2381,7 @@ void method_desc::parse_code(constant** constant_pool,
aux->name_and_type = nt;
sp->equals = aux;
equal_descs.push_back(aux);*/
- sp->equals = is_const;
+ sp->equals = my_is_const;
}
}
field->equals = sp->equals;

View file

@ -0,0 +1,9 @@
--- method_desc.hh.orig Wed Apr 12 14:38:59 2017
+++ method_desc.hh Wed Apr 12 14:39:50 2017
@@ -147,5 +147,5 @@ class method_desc : public component_desc { (private)
const char* compound_name(const char* first, const char* second);
extern string_pool stringPool; // declared in jlint.cc
-extern field_desc* is_const;
+extern field_desc* my_is_const;
#endif

View file

@ -0,0 +1,29 @@
Index: types.hh
--- types.hh.orig
+++ types.hh
@@ -2,10 +2,10 @@
#define TYPES_HH
#ifdef VISUAL_CPP
-#include <assert.h>
#pragma warning( disable : 4786)
#endif
+#include <cassert>
#include <string>
#include <vector>
#include <stddef.h>
@@ -141,10 +141,10 @@ struct vbm_operand {
int_type_range const ranges[] = {
// min max
{0x00000000, 0x00000001}, // tp_bool
- {0xffffff80, 0x0000007f}, // tp_byte
+ {-0x00000080, 0x0000007f}, // tp_byte
{0x00000000, 0x0000ffff}, // tp_char
- {0xffff8000, 0x00007fff}, // tp_short
- {0x80000000, 0x7fffffff} // tp_int
+ {-0x00008000, 0x00007fff}, // tp_short
+ {static_cast<int>(-0x80000000), 0x7fffffff} // tp_int
};
int const array_type[] = {

3
java/jlint/pkg/DESCR Normal file
View file

@ -0,0 +1,3 @@
Jlint will check your Java code and find bugs, inconsistencies and
synchronization problems by doing data flow analysis and building a
lock graph.

5
java/jlint/pkg/PLIST Normal file
View file

@ -0,0 +1,5 @@
@bin bin/antic
@bin bin/jlint
bin/jlint.sh
share/doc/jlint/
share/doc/jlint/manual.pdf

53
java/jna/Makefile Normal file
View file

@ -0,0 +1,53 @@
COMMENT= Java Native Access (JNA)
GH_PROJECT= jna
GH_ACCOUNT= java-native-access
GH_TAGNAME= 5.11.0
CATEGORIES= devel
REVISION= 2
HOMEPAGE= https://github.com/java-native-access/jna
# LGPLv2.1+
PERMIT_PACKAGE= Yes
MODULES= java
MODJAVA_VER= 11
MODJAVA_BUILD= ant
# use the system libffi
MODJAVA_BUILD_ARGS +=-Ddynlink.native=true
# build.xml specifically wants gmake (and ggrep)
USE_GMAKE= Yes
BUILD_DEPENDS= sysutils/ggrep
LIB_DEPENDS= devel/libffi
# clojure needs to have the jna.jar installed
TEST_DEPENDS= ${BASE_PKGPATH} \
lang/clojure
MAKE_ENV= CC="${CC}" \
PORTS_CFLAGS="${CFLAGS}"
GNU_ARCH= ${MACHINE_ARCH:S/amd64/x86-64/:S/i386/x86/:S/sparc64/sparcv9/}
pre-configure:
sed -i -e 's,-Wno-unknown-warning-option,,' \
-e 's,-Wno-clobbered,,' ${WRKSRC}/native/Makefile
do-install:
${INSTALL_DATA_DIR} ${MODJAVA_JAR_DIR} ${MODJAVA_DOC_DIR}/jna/
${INSTALL_DATA} ${WRKSRC}/build/openbsd-${GNU_ARCH}.jar \
${MODJAVA_JAR_DIR}/jna-platform.jar
${INSTALL_DATA} ${WRKSRC}/build/jna*.jar ${MODJAVA_JAR_DIR}
cp -r ${WRKSRC}/doc/javadoc ${MODJAVA_DOC_DIR}
do-test:
cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} ${LOCALBASE}/bin/ant \
${MODJAVA_BUILD_ARGS} test
# needs to be run interactively with lang/clojure set up
#${SHELL} ${FILESDIR}/test.sh
.include <bsd.port.mk>

2
java/jna/distinfo Normal file
View file

@ -0,0 +1,2 @@
SHA256 (jna-5.11.0.tar.gz) = IZCGxh+AQwCHHC7C7iILaqwPuLbLzHLcU9TzXcf2H7Y=
SIZE (jna-5.11.0.tar.gz) = 107424072

2
java/jna/files/deps.edn Normal file
View file

@ -0,0 +1,2 @@
{:paths ["."]
:deps {jna/jna {:local/root "/usr/local/share/java/classes/jna.jar"}}}

47
java/jna/files/jna.clj Normal file
View file

@ -0,0 +1,47 @@
;;; Basic set of JNA tests for use with Clojure
(import '(com.sun.jna Library))
(gen-interface
:name jna.CLibrary
:extends [com.sun.jna.Library]
:methods [[printf [String] void]])
(def libc (com.sun.jna.Native/loadLibrary "c" jna.CLibrary))
(.printf libc "Hello, World\n")
(defn- get-function [s]
`(com.sun.jna.Function/getFunction ~(namespace s) ~(name s)))
(defmacro jna-call
"Call a native library function"
[return-type function-symbol & args]
`(.invoke ~(get-function function-symbol) ~return-type (to-array [~@args])))
(jna-call Integer c/printf "-> %d\n" 42)
; Write a macro that wraps a native library function call
(defmacro jna-func
[ret-type func-symbol]
`(let [func# ~(get-function func-symbol)]
(fn [& args#]
(.invoke func# ~ret-type (to-array args#)))))
(def c-printf (jna-func Integer c/printf))
(c-printf "int: %d\nfloat: %.2f\n" 42 42.0)
(defmacro jna-malloc [size]
`(let [buffer# (java.nio.ByteBuffer/allocateDirect ~size)
pointer# (com.sun.jna.Native/getDirectBufferPointer buffer#)]
(.order buffer# java.nio.ByteOrder/LITTLE_ENDIAN)
{:pointer pointer# :buffer buffer#}))
(let [struct (jna-malloc 44)]
(jna-call Integer c/statvfs "/tmp" (:pointer struct))
(let [fbsize (.getInt (:buffer struct))
frsize (.getInt (:buffer struct) 4)
blocks (.getInt (:buffer struct) 8)
bfree (.getInt (:buffer struct) 12)
bavail (.getInt (:buffer struct) 16)]
(c-printf "# ignore statvfs\n")))

12
java/jna/files/test.sh Normal file
View file

@ -0,0 +1,12 @@
#!/bin/sh
# Simple JNA tests to ensure Clojure can still call native library functions
expected=`mktemp`
results=`mktemp`
echo "Hello, World\n-> 42\nint: 42\nfloat: 42.00\n# ignore statvfs" > $expected
cd files && /usr/local/bin/clojure -M jna.clj > $results
cmp $expected $results || exit 1
rm -f $expected $results

View file

@ -0,0 +1,11 @@
--- build.xml.orig Sat Jan 14 17:15:07 2017
+++ build.xml Sat Feb 25 14:58:20 2017
@@ -126,7 +126,7 @@
<!-- Miscellaneous -->
<property name="build.compiler.emacs" value="true"/>
- <target name="default" depends="test" description="Build and Test."/>
+ <target name="default" depends="-enable-native,jar,javadoc" description="Build and Test."/>
<target name="init" depends="-setup"/>
<target name="compile-test-single" depends="compile-tests"/>

View file

@ -0,0 +1,20 @@
--- native/Makefile.orig Mon Mar 6 21:59:50 2017
+++ native/Makefile Mon Mar 6 22:00:22 2017
@@ -81,7 +81,7 @@ LIBPFX=lib
LIBSFX=.so
ARSFX=.a
JNISFX=$(LIBSFX)
-CC=gcc
+CC?=gcc
LD=$(CC)
LIBS=
# CC_OPTS only applied to objects build for jnidispatch, not for libffi
@@ -95,7 +95,7 @@ LIBS=
# variables is ignored.
LOC_CC_OPTS=-Wno-unknown-warning-option -Werror -Wno-clobbered
# Default to Sun recommendations for JNI compilation
-COPT=-O2 -fno-omit-frame-pointer -fno-strict-aliasing
+COPT=${PORTS_CFLAGS} -fno-omit-frame-pointer -fno-strict-aliasing
CASM=-S
ifeq ($(DEBUG),true)
CDEBUG=-g

View file

@ -0,0 +1,12 @@
--- test/com/sun/jna/LibraryLoadTest.java.orig Sat Jan 14 17:15:07 2017
+++ test/com/sun/jna/LibraryLoadTest.java Sat Feb 25 14:58:20 2017
@@ -171,7 +171,8 @@ public class LibraryLoadTest extends TestCase implemen
dst.deleteOnExit();
}
catch(UnsatisfiedLinkError e) {
- fail("Library '" + newLibName + "' at " + dst + " could not be loaded: " + e);
+ // Loading a library with a unicode name isn't known to work on OpenBSD anyway
+ //fail("Library '" + newLibName + "' at " + dst + " could not be loaded: " + e);
}
}

10
java/jna/pkg/DESCR Normal file
View file

@ -0,0 +1,10 @@
JNA provides Java programs easy access to native shared libraries
without writing anything but Java code -- no JNI or native code is
required. This functionality is comparable to Windows' Platform/Invoke
and Python's ctypes. Access is dynamic at runtime without code
generation.
JNA allows you to call directly into native functions using natural Java
method invocation. The Java call looks just like it does in native code.
Most calls require no special handling or configuration; no boilerplate
or generated code is required.

1390
java/jna/pkg/PLIST Normal file

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,63 @@
COMMENT= Tanuki Java Service Wrapper
V= 3.5.49
REVISION= 0
DISTNAME= wrapper_${V}_src
PKGNAME= java-tanukiwrapper-${V}
CATEGORIES= java
HOMEPAGE= https://wrapper.tanukisoftware.com/
MASTER_SITES= https://download.tanukisoftware.com/wrapper/${V}/
# GPLv2
PERMIT_PACKAGE= Yes
MODULES= java
MODJAVA_VER= 1.8
MODJAVA_BUILD= ant
.if ${MACHINE_ARCH} == "i386"
BITS=32
.else
BITS=64
.endif
.if ${MACHINE_ARCH} == "i386"
MAKE_ARCH=x86-32
.elif ${MACHINE_ARCH} == "amd64"
MAKE_ARCH=x86-64
.elif ${MACHINE_ARCH} == "aarch64"
MAKE_ARCH=arm-64
.elif ${MACHINE_ARCH} == "sparc64"
MAKE_ARCH=sparc-64
.endif
MODJAVA_BUILD_ARGS= -Dbits=${BITS}
WANTLIB= c iconv m pthread
LIB_DEPENDS= converters/libiconv
USE_GMAKE= Yes
SUBST_VARS+= CC CFLAGS
post-extract:
cp ${FILESDIR}/Makefile-openbsd-${MAKE_ARCH}.gmake ${WRKSRC}/src/c/
pre-configure:
${SUBST_CMD} ${WRKSRC}/src/c/Makefile-openbsd-${MAKE_ARCH}.gmake
do-install:
${INSTALL_DATA_DIR} ${PREFIX}/share/java/classes/ \
${PREFIX}/lib/tanukuwrapper/
${INSTALL_DATA} ${WRKSRC}/lib/wrapper.jar \
${PREFIX}/share/java/classes/tanukiwrapper.jar
${INSTALL_PROGRAM} ${WRKSRC}/lib/libwrapper.so ${PREFIX}/lib/tanukuwrapper/
${INSTALL_PROGRAM} ${WRKSRC}/bin/wrapper ${PREFIX}/sbin/tanukiwrapper
do-test:
cd ${WRKSRC} && ant -Dbits=${BITS} -f build-tests.xml
.include <bsd.port.mk>

View file

@ -0,0 +1,2 @@
SHA256 (wrapper_3.5.49_src.tar.gz) = gcScF5LIqWVBv8erI3hG5tt5BZPO2XlhFACz1Y60+v4=
SIZE (wrapper_3.5.49_src.tar.gz) = 774890

View file

@ -0,0 +1,42 @@
# Copyright (c) 1999, 2013 Tanuki Software, Ltd.
# http://www.tanukisoftware.com
# All rights reserved.
#
# This software is the proprietary information of Tanuki Software.
# You shall use it only in accordance with the terms of the
# license agreement you entered into with Tanuki Software.
# http://wrapper.tanukisoftware.com/doc/english/licenseOverview.html
CC = ${CC} -Wall -fPIC -pedantic -DOPENBSD -DJSW64 -I${LOCALBASE}/include -L${LOCALBASE}/lib -liconv -DUNICODE -D_UNICODE
INCLUDE=$(JAVA_HOME)/include
CFLAGS = ${CFLAGS} -I$(INCLUDE) -I$(INCLUDE)/openbsd
wrapper_SOURCE = wrapper.c wrapperinfo.c wrappereventloop.c wrapper_unix.c property.c logger.c logger_file.c wrapper_file.c wrapper_i18n.c wrapper_hashmap.c wrapper_ulimit.c wrapper_encoding.c wrapper_jvminfo.c
libwrapper_so_OBJECTS = wrapper_i18n.o wrapperjni_unix.o wrapperinfo.o wrapperjni.o loggerjni.o
BIN = ../../bin
LIB = ../../lib
all: init wrapper libwrapper.so
clean:
rm -f *.o
cleanall: clean
rm -rf *~ .deps
rm -f $(BIN)/wrapper $(LIB)/libwrapper.so
init:
if test ! -d .deps; then mkdir .deps; fi
wrapper: $(wrapper_SOURCE)
$(CC) $(wrapper_SOURCE) -lm -rdynamic -lc -pthread -o $(BIN)/wrapper
libwrapper.so: $(libwrapper_so_OBJECTS)
$(CC) -shared -rdynamic -lc -pthread $(libwrapper_so_OBJECTS) -o $(LIB)/libwrapper.so
#%.o: %.c
# $(COMPILE) -c $(DEFS) $<

View file

@ -0,0 +1,42 @@
# Copyright (c) 1999, 2013 Tanuki Software, Ltd.
# http://www.tanukisoftware.com
# All rights reserved.
#
# This software is the proprietary information of Tanuki Software.
# You shall use it only in accordance with the terms of the
# license agreement you entered into with Tanuki Software.
# http://wrapper.tanukisoftware.com/doc/english/licenseOverview.html
CC = ${CC} -Wall -fPIC -pedantic -DOPENBSD -DJSW64 -I${LOCALBASE}/include -L${LOCALBASE}/lib -liconv -DUNICODE -D_UNICODE
INCLUDE=$(JAVA_HOME)/include
CFLAGS = ${CFLAGS} -I$(INCLUDE) -I$(INCLUDE)/openbsd
wrapper_SOURCE = wrapper.c wrapperinfo.c wrappereventloop.c wrapper_unix.c property.c logger.c logger_file.c wrapper_file.c wrapper_i18n.c wrapper_hashmap.c wrapper_ulimit.c wrapper_encoding.c wrapper_jvminfo.c
libwrapper_so_OBJECTS = wrapper_i18n.o wrapperjni_unix.o wrapperinfo.o wrapperjni.o loggerjni.o
BIN = ../../bin
LIB = ../../lib
all: init wrapper libwrapper.so
clean:
rm -f *.o
cleanall: clean
rm -rf *~ .deps
rm -f $(BIN)/wrapper $(LIB)/libwrapper.so
init:
if test ! -d .deps; then mkdir .deps; fi
wrapper: $(wrapper_SOURCE)
$(CC) $(wrapper_SOURCE) -lm -rdynamic -lc -pthread -o $(BIN)/wrapper
libwrapper.so: $(libwrapper_so_OBJECTS)
$(CC) -shared -rdynamic -lc -pthread $(libwrapper_so_OBJECTS) -o $(LIB)/libwrapper.so
#%.o: %.c
# $(COMPILE) -c $(DEFS) $<

View file

@ -0,0 +1,42 @@
# Copyright (c) 1999, 2013 Tanuki Software, Ltd.
# http://www.tanukisoftware.com
# All rights reserved.
#
# This software is the proprietary information of Tanuki Software.
# You shall use it only in accordance with the terms of the
# license agreement you entered into with Tanuki Software.
# http://wrapper.tanukisoftware.com/doc/english/licenseOverview.html
CC = ${CC} -Wall -fPIC -pedantic -DOPENBSD -I${LOCALBASE}/include -L${LOCALBASE}/lib -liconv -DUNICODE -D_UNICODE
INCLUDE=$(JAVA_HOME)/include
CFLAGS = ${CFLAGS} -I$(INCLUDE) -I$(INCLUDE)/openbsd
wrapper_SOURCE = wrapper.c wrapperinfo.c wrappereventloop.c wrapper_unix.c property.c logger.c logger_file.c wrapper_file.c wrapper_i18n.c wrapper_hashmap.c wrapper_ulimit.c wrapper_encoding.c wrapper_jvminfo.c
libwrapper_so_OBJECTS = wrapper_i18n.o wrapperjni_unix.o wrapperinfo.o wrapperjni.o loggerjni.o
BIN = ../../bin
LIB = ../../lib
all: init wrapper libwrapper.so
clean:
rm -f *.o
cleanall: clean
rm -rf *~ .deps
rm -f $(BIN)/wrapper $(LIB)/libwrapper.so
init:
if test ! -d .deps; then mkdir .deps; fi
wrapper: $(wrapper_SOURCE)
$(CC) $(wrapper_SOURCE) -lm -rdynamic -lc -pthread -o $(BIN)/wrapper
libwrapper.so: $(libwrapper_so_OBJECTS)
$(CC) -shared -rdynamic -lc -pthread $(libwrapper_so_OBJECTS) -o $(LIB)/libwrapper.so
#%.o: %.c
# $(COMPILE) -c $(DEFS) $<

View file

@ -0,0 +1,42 @@
# Copyright (c) 1999, 2013 Tanuki Software, Ltd.
# http://www.tanukisoftware.com
# All rights reserved.
#
# This software is the proprietary information of Tanuki Software.
# You shall use it only in accordance with the terms of the
# license agreement you entered into with Tanuki Software.
# http://wrapper.tanukisoftware.com/doc/english/licenseOverview.html
CC = ${CC} -Wall -fPIC -pedantic -DOPENBSD -DJSW64 -I${LOCALBASE}/include -L${LOCALBASE}/lib -liconv -DUNICODE -D_UNICODE
INCLUDE=$(JAVA_HOME)/include
CFLAGS = ${CFLAGS} -I$(INCLUDE) -I$(INCLUDE)/openbsd
wrapper_SOURCE = wrapper.c wrapperinfo.c wrappereventloop.c wrapper_unix.c property.c logger.c logger_file.c wrapper_file.c wrapper_i18n.c wrapper_hashmap.c wrapper_ulimit.c wrapper_encoding.c wrapper_jvminfo.c
libwrapper_so_OBJECTS = wrapper_i18n.o wrapperjni_unix.o wrapperinfo.o wrapperjni.o loggerjni.o
BIN = ../../bin
LIB = ../../lib
all: init wrapper libwrapper.so
clean:
rm -f *.o
cleanall: clean
rm -rf *~ .deps
rm -f $(BIN)/wrapper $(LIB)/libwrapper.so
init:
if test ! -d .deps; then mkdir .deps; fi
wrapper: $(wrapper_SOURCE)
$(CC) $(wrapper_SOURCE) -lm -rdynamic -lc -pthread -o $(BIN)/wrapper
libwrapper.so: $(libwrapper_so_OBJECTS)
$(CC) -shared -rdynamic -lc -pthread $(libwrapper_so_OBJECTS) -o $(LIB)/libwrapper.so
#%.o: %.c
# $(COMPILE) -c $(DEFS) $<

View file

@ -0,0 +1,22 @@
add OpenBSD target
Index: build-tests.xml
--- build-tests.xml.orig
+++ build-tests.xml
@@ -85,11 +85,15 @@
<property name="is.Unix" value="true"/>
<property name="is.shell.sh" value="true"/>
</target>
+ <target name="init-openbsd" if="is.OpenBSD">
+ <property name="is.Unix" value="true"/>
+ <property name="is.shell.sh" value="true"/>
+ </target>
<!-- =================================================================== -->
<!-- Initialize build. -->
<!-- =================================================================== -->
- <target name="init" depends="init-windows, init-linux, init-solaris, init-aix, init-hpux, init-macosx, init-freebsd">
+ <target name="init" depends="init-windows, init-linux, init-solaris, init-aix, init-hpux, init-macosx, init-freebsd, init-openbsd">
</target>
<!-- =================================================================== -->

View file

@ -0,0 +1,42 @@
define OpenBSD property
Index: build.xml
--- build.xml.orig
+++ build.xml
@@ -98,6 +98,9 @@
<condition property="dist.os" value="os400">
<equals arg1="${os.name}" arg2="OS/400"/>
</condition>
+ <condition property="dist.os" value="openbsd">
+ <equals arg1="${os.name}" arg2="OpenBSD"/>
+ </condition>
<property name="dist.os" value="${os.name}"/>
<!-- Resolve an architecture to use in release names. -->
@@ -427,6 +430,7 @@
<condition property="make.name" value="gmake">
<or>
<isset property="is.freebsd"/>
+ <isset property="is.openbsd"/>
<isset property="is.solaris"/>
</or>
</condition>
@@ -444,6 +448,7 @@
<or>
<isset property="is.linux"/>
<isset property="is.freebsd"/>
+ <isset property="is.openbsd"/>
<isset property="is.solaris"/>
</or>
</condition>
@@ -1846,6 +1851,10 @@ wrapper.filter.action.999=NONE]]></replacevalue>
<release-delta-extract-platform osname="linux" osarch="armel" bits="32" wrapperbinhead="wrapper" wrapperbintail="" wrapperlibhead="libwrapper" wrapperlibtail=".so" archivetype="tar.gz"/>
<release-delta-extract-platform osname="linux" osarch="armhf" bits="32" wrapperbinhead="wrapper" wrapperbintail="" wrapperlibhead="libwrapper" wrapperlibtail=".so" archivetype="tar.gz"/>
<release-delta-extract-platform osname="linux" osarch="arm" bits="64" wrapperbinhead="wrapper" wrapperbintail="" wrapperlibhead="libwrapper" wrapperlibtail=".so" archivetype="tar.gz"/>
+ <release-delta-extract-platform osname="openbsd" osarch="x86" bits="32" wrapperbinhead="wrapper" wrapperbintail="" wrapperlibhead="libwrapper" wrapperlibtail=".so" archivetype="tar.gz"/>
+ <release-delta-extract-platform osname="openbsd" osarch="x86" bits="64" wrapperbinhead="wrapper" wrapperbintail="" wrapperlibhead="libwrapper" wrapperlibtail=".so" archivetype="tar.gz"/>
+ <release-delta-extract-platform osname="openbsd" osarch="arm" bits="64" wrapperbinhead="wrapper" wrapperbintail="" wrapperlibhead="libwrapper" wrapperlibtail=".so" archivetype="tar.gz"/>
+ <release-delta-extract-platform osname="openbsd" osarch="sparc" bits="64" wrapperbinhead="wrapper" wrapperbintail="" wrapperlibhead="libwrapper" wrapperlibtail=".so" archivetype="tar.gz"/>
</target>
<target name="release-delta" depends="pre-release:check, release-delta:init, release-delta:extract-platforms">
<property name="deltareleasefile" value="wrapper-delta-pack-${version}"/>

View file

@ -0,0 +1,13 @@
add OpenBSD logging support
--- src/c/logger.c.orig Fri Jul 31 18:11:51 2020
+++ src/c/logger.c Fri Jul 31 18:12:14 2020
@@ -73,7 +73,7 @@ typedef long intptr_t;
#include <sys/errno.h>
#include <sys/fcntl.h>
#elif defined(AIX) || defined(HPUX) || defined(MACOSX)
- #elif defined(FREEBSD)
+ #elif defined(FREEBSD) || defined(OPENBSD)
#include <sys/param.h>
#include <errno.h>
#else /* LINUX */

View file

@ -0,0 +1,50 @@
add OpenBSD support
Index: src/c/wrapper.c
--- src/c/wrapper.c.orig
+++ src/c/wrapper.c
@@ -105,7 +105,7 @@
#include <sys/errno.h>
#include <sys/fcntl.h>
#elif defined(AIX) || defined(HPUX) || defined(MACOSX)
- #elif defined(FREEBSD)
+ #elif defined(FREEBSD) || defined(OPENBSD)
#include <sys/param.h>
#include <errno.h>
#else /* LINUX */
@@ -5886,7 +5886,7 @@ int wrapperRunCommonInner() {
tz1 = tzname[0];
tz2 = tzname[1];
#endif
-#ifndef FREEBSD
+#if !defined(FREEBSD) && !defined(OPENBSD)
log_printf(WRAPPER_SOURCE_WRAPPER, LEVEL_DEBUG, TEXT("Timezone: %s (%s) Offset: %ld, hasDaylight: %d"),
tz1, tz2, timezone, daylight);
#else
@@ -6561,7 +6561,7 @@ int checkIfBinary(const TCHAR *filename) {
log_printf(WRAPPER_SOURCE_WRAPPER, LEVEL_DEBUG, TEXT("Magic number for file %s: 0x%02x%02x%02x%02x"), filename, head[0], head[1], head[2], head[3]);
}
-#if defined(LINUX) || defined(FREEBSD) || defined(SOLARIS)
+#if defined(LINUX) || defined(FREEBSD) || defined(SOLARIS) || defined(OPENBSD)
if (head[1] == 'E' && head[2] == 'L' && head[3] == 'F') {
return 1; /*ELF */
#elif defined(AIX)
@@ -8282,7 +8282,7 @@ int wrapperBuildJavaCommandArrayInner(TCHAR **strings,
/* See if the auto bits parameter is set. Ignored by all but the following platforms. */
-#if /*defined(WIN32) || defined(LINUX) ||*/ defined(HPUX) || defined(MACOSX) || defined(SOLARIS) || defined(FREEBSD)
+#if /*defined(WIN32) || defined(LINUX) ||*/ defined(HPUX) || defined(MACOSX) || defined(SOLARIS) || defined(FREEBSD) || defined(OPENBSD)
if (wrapperData->javaVersion->major < 9) {
if (getBooleanProperty(properties,
@@ -8297,6 +8297,8 @@ int wrapperBuildJavaCommandArrayInner(TCHAR **strings,
TEXT("wrapper.java.additional.auto_bits.solaris"),
#elif defined(FREEBSD)
TEXT("wrapper.java.additional.auto_bits.freebsd"),
+#elif defined(OPENBSD)
+ TEXT("wrapper.java.additional.auto_bits.openbsd"),
#elif defined(MACOSX)
TEXT("wrapper.java.additional.auto_bits.macosx"),
#endif

View file

@ -0,0 +1,18 @@
OpenBSD doesn't support timeb api
--- src/c/wrapper.h.orig Fri Jul 31 18:19:37 2020
+++ src/c/wrapper.h Fri Jul 31 18:21:15 2020
@@ -51,7 +51,12 @@
#define DWORD unsigned long
#endif
-#include <sys/timeb.h>
+struct timeb {
+ time_t time; /* seconds since the Epoch */
+ unsigned short millitm; /* + milliseconds since the Epoch */
+ short timezone; /* minutes west of UTC */
+ short dstflag; /* DST == non-zero */
+};
#include "property.h"
#include "wrapper_jvminfo.h"

View file

@ -0,0 +1,24 @@
OpenBSD doesn't support timeb api
add SI_ASYNCIO define
--- src/c/wrapper_unix.c.orig Fri Jul 31 18:22:16 2020
+++ src/c/wrapper_unix.c Fri Jul 31 18:23:10 2020
@@ -51,7 +51,6 @@
#include <pthread.h>
#include <pwd.h>
#include <sys/resource.h>
-#include <sys/timeb.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <sys/wait.h>
@@ -466,8 +465,10 @@ const TCHAR* getSignalCodeDesc(int code) {
return TEXT("mesq state changed");
#endif
+#ifdef SI_ASYNCIO
case SI_ASYNCIO:
return TEXT("AIO completed");
+#endif
#ifdef SI_SIGIO
case SI_SIGIO:

View file

@ -0,0 +1,10 @@
The Java Service Wrapper is an application which has evolved out of a
desire to solve a number of problems common to many Java applications:
- Run as a Windows Service or Unix Daemon
- Application Reliability
- Standard, Out of the Box Scripting
- On Demand Restarts
- Flexible Configuration
- Ease Application Installations
- Logging

View file

@ -0,0 +1,6 @@
lib/tanukuwrapper/
@so lib/tanukuwrapper/libwrapper.so
@bin sbin/tanukiwrapper
share/java/
share/java/classes/
share/java/classes/tanukiwrapper.jar