Skip to content

Commit

Permalink
applied patchfile.txt from issue fast-data-transfer#30 upstream
Browse files Browse the repository at this point in the history
  • Loading branch information
Nicholas Hadaway - c002286 authored and Nicholas Hadaway - c002286 committed Jun 26, 2019
1 parent 5b5367e commit 023ac5e
Show file tree
Hide file tree
Showing 8 changed files with 122 additions and 62 deletions.
15 changes: 0 additions & 15 deletions lib/globus/bouncycastle.LICENSE

This file was deleted.

70 changes: 62 additions & 8 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -8,49 +8,65 @@
<packaging>jar</packaging>

<properties>
<jdk.version>1.7</jdk.version>
<jdk.version>1.8</jdk.version>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
<dependency>
<groupId>edu.illinois.ncsa</groupId>
<artifactId>BCGSS</artifactId>
<version>1.0.0</version>
<scope>system</scope>
<systemPath>${project.basedir}/lib/gsi-sshterm/BCGSS.jar</systemPath>
</dependency>
<!-- https://mvnrepository.com/artifact/org.bouncycastle/bcprov-jdk15on -->
<dependency>
<groupId>org.bouncycastle</groupId>
<artifactId>bcprov</artifactId>
<version>1.50.0</version>
<artifactId>bcprov-jdk15on</artifactId>
<version>1.50</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.apache.commons/commons-compress -->
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-compress</artifactId>
<version>1.2.0</version>
<version>1.2</version>
</dependency>
<dependency>
<groupId>net.iharder.dnd</groupId>
<artifactId>filedrop</artifactId>
<version>1.0.0</version>
<scope>system</scope>
<systemPath>${project.basedir}/lib/gsi-sshterm/filedrop.jar</systemPath>
</dependency>
<!-- https://mvnrepository.com/artifact/sshtools/j2ssh-common -->
<dependency>
<groupId>com.sshtools.common</groupId>
<groupId>sshtools</groupId>
<artifactId>j2ssh-common</artifactId>
<version>0.2.7</version>
<scope>system</scope>
<systemPath>${project.basedir}/lib/gsi-sshterm/j2ssh-common-0.2.7.jar</systemPath>
</dependency>
<!-- https://mvnrepository.com/artifact/sshtools/j2ssh-core -->
<dependency>
<groupId>com.sshtools.core</groupId>
<groupId>sshtools</groupId>
<artifactId>j2ssh-core</artifactId>
<version>0.2.7</version>
<scope>system</scope>
<systemPath>${project.basedir}/lib/gsi-sshterm/j2ssh-core-0.2.7.jar</systemPath>
</dependency>
<dependency>
<groupId>org.lirc.socket</groupId>
<artifactId>jlirc-unix-soc</artifactId>
<version>1.0.0</version>
<scope>system</scope>
<systemPath>${project.basedir}/lib/gsi-sshterm/jlirc-unix-soc.jar</systemPath>
</dependency>
<dependency>
<groupId>uk.ac.rl.esc.browser</groupId>
<artifactId>libbrowser</artifactId>
<version>1.0.0</version>
<scope>system</scope>
<systemPath>${project.basedir}/lib/gsi-sshterm/libbrowser.jar</systemPath>
</dependency>
<dependency>
<groupId>log4j</groupId>
Expand All @@ -61,56 +77,77 @@
<groupId>edu.illinois.ncsa</groupId>
<artifactId>ncsa-lcrypto</artifactId>
<version>1.4.6</version>
<scope>system</scope>
<systemPath>${project.basedir}/lib/gsi-sshterm/ncsa-lcrypto-146.jar</systemPath>
</dependency>
<!-- https://mvnrepository.com/artifact/ca.juliusdavies/not-yet-commons-ssl -->
<dependency>
<groupId>org.apache.commons</groupId>
<groupId>ca.juliusdavies</groupId>
<artifactId>not-yet-commons-ssl</artifactId>
<version>0.3.11</version>
</dependency>
<dependency>
<groupId>com.sshtools.ext</groupId>
<artifactId>putty-pk</artifactId>
<version>1.1.0</version>
<scope>system</scope>
<systemPath>${project.basedir}/lib/gsi-sshterm/putty-pk-1.1.0.jar</systemPath>
</dependency>
<dependency>
<groupId>com.sshtools.tunnel</groupId>
<artifactId>SecureTunneling</artifactId>
<version>1.0.0</version>
<scope>system</scope>
<systemPath>${project.basedir}/lib/gsi-sshterm/SecureTunneling.jar</systemPath>
</dependency>
<dependency>
<groupId>com.sshtools.shift</groupId>
<artifactId>ShiFT</artifactId>
<version>1.0.0</version>
<scope>system</scope>
<systemPath>${project.basedir}/lib/gsi-sshterm/ShiFT.jar</systemPath>
</dependency>
<dependency>
<groupId>com.sshtools.sshterm</groupId>
<artifactId>SSHTerm</artifactId>
<version>1.0.0</version>
<scope>system</scope>
<systemPath>${project.basedir}/lib/gsi-sshterm/SSHTerm-1.0.0.jar</systemPath>
</dependency>
<dependency>
<groupId>com.sshtools.sshvnc</groupId>
<artifactId>SSHVnc</artifactId>
<version>1.0.0</version>
<scope>system</scope>
<systemPath>${project.basedir}/lib/gsi-sshterm/SSHVnc.jar</systemPath>
</dependency>
<dependency>
<groupId>org.jdesktop</groupId>
<artifactId>swing-layout</artifactId>
<version>1.0.3</version>
<scope>system</scope>
<systemPath>${project.basedir}/lib/gsi-sshterm/swing-layout-1.0.3.jar</systemPath>
</dependency>
<dependency>
<groupId>org.globusonline</groupId>
<artifactId>TransferAPIClient</artifactId>
<version>1.0.0</version>
<scope>system</scope>
<systemPath>${project.basedir}/lib/gsi-sshterm/TransferAPIClient.jar</systemPath>
</dependency>
<dependency>
<groupId>org.italiangrid</groupId>
<artifactId>voms-api-java</artifactId>
<version>3.0.1</version>
<scope>system</scope>
<systemPath>${project.basedir}/lib/gsi-sshterm/voms-api-java-2.0.9.jar</systemPath>
</dependency>
<dependency>
<groupId>org.globus</groupId>
<artifactId>axisg</artifactId>
<version>2.2.0</version>
<scope>system</scope>
<systemPath>${project.basedir}/lib/gsi-sshterm/jglobus2/axisg-2.2.0.jar</systemPath>
</dependency>
<dependency>
<groupId>commons-logging</groupId>
Expand All @@ -126,21 +163,29 @@
<groupId>org.globus</groupId>
<artifactId>gram</artifactId>
<version>2.2.0</version>
<scope>system</scope>
<systemPath>${project.basedir}/lib/globus/gram-2.2.0.jar</systemPath>
</dependency>
<dependency>
<groupId>org.globus</groupId>
<artifactId>gridftp</artifactId>
<version>2.2.0</version>
<scope>system</scope>
<systemPath>${project.basedir}/lib/globus/gridftp-2.2.0.jar</systemPath>
</dependency>
<dependency>
<groupId>org.globus.gsi.gssapi</groupId>
<artifactId>gss</artifactId>
<version>2.2.0</version>
<scope>system</scope>
<systemPath>${project.basedir}/lib/globus/gss-2.2.0.jar</systemPath>
</dependency>
<dependency>
<groupId>org.globus.io</groupId>
<artifactId>io</artifactId>
<version>2.2.0</version>
<scope>system</scope>
<systemPath>${project.basedir}/lib/globus/io-2.2.0.jar</systemPath>
</dependency>
<dependency>
<groupId>org.apache.httpcomponents</groupId>
Expand All @@ -156,6 +201,8 @@
<groupId>org.globus.jsse</groupId>
<artifactId>jsse</artifactId>
<version>2.2.0</version>
<scope>system</scope>
<systemPath>${project.basedir}/lib/globus/jsse-2.2.0.jar</systemPath>
</dependency>
<dependency>
<groupId>com.google.guava</groupId>
Expand All @@ -171,16 +218,22 @@
<groupId>org.globus.myproxy</groupId>
<artifactId>myproxy</artifactId>
<version>2.2.0</version>
<scope>system</scope>
<systemPath>${project.basedir}/lib/globus/myproxy-2.2.0.jar</systemPath>
</dependency>
<dependency>
<groupId>org.globus</groupId>
<artifactId>ssl-proxies</artifactId>
<version>2.2.0</version>
<scope>system</scope>
<systemPath>${project.basedir}/lib/globus/ssl-proxies-2.2.0.jar</systemPath>
</dependency>
<dependency>
<groupId>org.opentsdb</groupId>
<artifactId>opentsdb-client</artifactId>
<version>2.1.0</version>
<scope>system</scope>
<systemPath>${project.basedir}/lib/opentsdb/opentsdb-client-2.1.0.jar</systemPath>
</dependency>
</dependencies>
<build>
Expand Down Expand Up @@ -264,7 +317,8 @@
<copy
file="${project.build.directory}/${project.artifactId}-${project.version}-jar-with-dependencies.jar"
tofile="${project.build.directory}/fdt.jar" />
<echo file="${project.build.directory}/fdt" append="false">java -jar fdt.jar "$@"</echo>
<echo file="${project.build.directory}/fdt" append="false">java
-jar fdt.jar "$@"</echo>
<chmod file="${project.build.directory}/fdt" perm="ugo+rx" />
</target>
<filemode>755</filemode>
Expand Down
23 changes: 0 additions & 23 deletions project

This file was deleted.

44 changes: 36 additions & 8 deletions src/lia/util/net/common/Config.java
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@
import org.opentsdb.client.HttpClientImpl;

import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.io.IOException;
import java.net.*;
Expand Down Expand Up @@ -299,6 +300,8 @@ private Config(final Map<String, Object> configMap) throws InvalidFDTParameterEx

portNo = Utils.getIntValue(configMap, "-p", DEFAULT_PORT_NO);
transportPorts = Utils.getTransportPortsValue(configMap, "-tp", DEFAULT_TRANSFER_PORT_NO);
if(transportPorts.size() == 1 && transportPorts.element().intValue() == DEFAULT_TRANSFER_PORT_NO)
transportPorts.clear();
tp = Arrays.asList(transportPorts.toArray());
isCoordinatorMode = (configMap.get("-coord") != null);
isThirdPartyCopyAgent = (configMap.get("-agent") != null);
Expand Down Expand Up @@ -702,7 +705,7 @@ private static void closeSessionRelatedSocks(List<Object> socks) {
}

private String[] getLogFiles(String sessionID) {
return new String[]{"/tmp/" + sessionID + ".log"};
return new String[] { System.getProperty("java.io.tmpdir") + File.pathSeparatorChar + sessionID + ".log" };
}

public String getListFilesFrom() {
Expand Down Expand Up @@ -904,23 +907,48 @@ public void registerTransferPortForSession(int newTransferPort, String sessionID
}

public int getNewRemoteTransferPort() {
int rtp = -1;
try {
if (!transportPorts.isEmpty()) {
int rtp = this.transportPorts.poll(20, TimeUnit.SECONDS);
System.out.println("Took new remote transfer port " + rtp);
return rtp;
rtp = this.transportPorts.poll(20, TimeUnit.SECONDS);
logger.log(Level.FINER,"Reusing remote transfer port " + rtp);
} else {
rtp = findAvailablePort();
logger.log(Level.FINER,"Used new remote transfer port " + rtp);
}

} catch (Exception e) {
if (transportPorts.size() == 0) {
logger.log(Level.WARNING, "No transfer ports defined or no free transfer ports left...", e);
} else {
logger.log(Level.WARNING, "Failed to retrieve remote transfer port", e);
}
}
return -1;
}

public void setSessionSocket(ServerSocketChannel ssc, ServerSocket ss, SocketChannel sc, Socket s, int port) {

return rtp;
}

private int findAvailablePort() {

/**
* Returns a free port number on localhost.
* @since December 2017
* @author will
* @return a free port number on localhost
* @throws IllegalStateException if unable to find a free port
*/
try(ServerSocket socket = new ServerSocket(0)) {
socket.setReuseAddress(true);
return socket.getLocalPort();
} catch(IOException e)
{
logger.log(Level.WARNING, "Unable to find a free Socket", e);
}

throw new IllegalStateException("Could not find a free TCP/IP port");
}

public void setSessionSocket(ServerSocketChannel ssc, ServerSocket ss, SocketChannel sc, Socket s, int port) {
List<Object> socks = new ArrayList<>();
socks.add(ssc);
socks.add(ss);
Expand Down
1 change: 0 additions & 1 deletion src/lia/util/net/common/Utils.java
Original file line number Diff line number Diff line change
Expand Up @@ -1557,7 +1557,6 @@ public static void closeIgnoringExceptions(Socket socket) {
}
}

@SuppressWarnings("SameParameterValue")
public static void cancelFutureIgnoringException(Future<?> f, boolean mayInterruptIfRunning) {
if (f != null) {
try {
Expand Down
4 changes: 2 additions & 2 deletions src/lia/util/net/copy/FDTReaderSession.java
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,7 @@ public class FDTReaderSession extends FDTSession implements FileBlockProducer {
*/
public FDTReaderSession(int transferPort) throws Exception {
super(FDTSession.CLIENT, transferPort);
Utils.initLogger(config.getLogLevel(), new File("/tmp/" + sessionID + ".log"), new Properties());
Utils.initLogger(config.getLogLevel(), new File(System.getProperty("java.io.tmpdir") + File.pathSeparatorChar + sessionID + ".log"), new Properties());
final int rMul = Integer.getInteger("fdt.rQueueM", 2);
final int avProcProp = Integer.getInteger("fdt.avProc", 1);
final int avProcMax = Math.max(avProcProp, Utils.availableProcessors());
Expand Down Expand Up @@ -88,7 +88,7 @@ public FDTReaderSession(int transferPort) throws Exception {
*/
public FDTReaderSession(ControlChannel ctrlChannel) throws Exception {
super(ctrlChannel, FDTSession.SERVER);
Utils.initLogger(config.getLogLevel(), new File("/tmp/" + sessionID + ".log"), new Properties());
Utils.initLogger(config.getLogLevel(), new File(System.getProperty("java.io.tmpdir") + File.pathSeparatorChar + sessionID + ".log"), new Properties());
fileBlockQueue = new ArrayBlockingQueue<FileBlock>(Utils.availableProcessors() * 2);
readersMap = new TreeMap<Integer, ArrayList<DiskReaderTask>>();

Expand Down
Loading

0 comments on commit 023ac5e

Please sign in to comment.