Skip to content

Instantly share code, notes, and snippets.

@ecki
ecki / ToString.java
Last active July 20, 2017 05:52
JMH int to String Benchmark
// class name and method names are not Java convention but readable
package net.eckenfels.jmhtest;
import java.util.concurrent.TimeUnit;
import org.openjdk.jmh.annotations.Benchmark;
import org.openjdk.jmh.annotations.Fork;
import org.openjdk.jmh.annotations.Measurement;
import org.openjdk.jmh.annotations.OutputTimeUnit;
import org.openjdk.jmh.annotations.Param;
@ecki
ecki / PipeTest.java
Last active July 10, 2017 22:48
Testing Listening Port
package net.eckenfels.test.javasystemtest;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.InetSocketAddress;
import java.net.ServerSocket;
import java.nio.channels.Pipe;
import java.util.concurrent.ExecutionException;
import java.util.concurrent.ExecutorService;
@ecki
ecki / RenameFile.java
Last active July 6, 2017 02:16
Overwrite libc rename() for Java with LD_PRELOAD
/*
* RenameFiles.java
*
* created at 2017-07-06 by Bernd Eckenfels <b.eckenfels@seeburger.de>
*
* License: ASL 2.0
*/
package net.eckenfels.test.javasystemtest;
import java.io.IOException;
package net.eckenfels.test.xxe;
import java.io.File;
import java.io.IOException;
import org.xml.sax.Attributes;
import org.xml.sax.ContentHandler;
import org.xml.sax.DTDHandler;
import org.xml.sax.EntityResolver;
import org.xml.sax.ErrorHandler;
#
# This will format http://openantrag.de/api/proposal/ID/gettop/100 JSON files into CSV
#
$list = @()
foreach($file in Get-ChildItem -Filter proposal-*.json .) {
$list += ((Get-Content -Encoding UTF8 $file) -join "`n" | ConvertFrom-Json)
}
# Inspect Result graphically: PS1> $list | Out-GridView
@ecki
ecki / gist:5638362
Created May 23, 2013 18:35
Java Networking 501 :)
package test;
import java.net.InetAddress;
import java.net.InetSocketAddress;
import java.net.UnknownHostException;
/**
* Demonstrate that InetAddress#getByName() with a literal does not
* fill in the host name, which leads to (uncached) reverse lookups
package test;
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.nio.charset.StandardCharsets;
import java.security.InvalidAlgorithmParameterException;
import java.security.InvalidKeyException;
import java.security.NoSuchAlgorithmException;
@ecki
ecki / DLog.java
Created August 19, 2015 07:11
Testing @DLogBot
package test;
import java.math.BigInteger;
public class DLog
{
// testing @DLogBot http://crypto.2015.rump.cr.yp.to/e7803fa1f87ce2a18dbbbbcffc8d5695.pdf
public static void main(String[] args)
{
BigInteger apache = b("9fdb8b8a004544f0045f1737d0ba2e0b274cdf1a9f588218fb435316a16e374171fd19d8d8f37c39bf863fd60e3e300680a3030c6e4c3757d08f70e6aa871033");
@ecki
ecki / AbandonTest.java
Last active August 29, 2015 14:25
commons-dbcp abandon connection killing
package net.eckenfels.test.dbcp;
import java.io.PrintWriter;
import java.lang.management.ManagementFactory;
import java.lang.management.ThreadInfo;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException;
import java.util.Locale;
import java.util.TimeZone;
@ecki
ecki / HashMapCollision.java
Last active August 29, 2015 14:12
JMH Hash test
package net.eckenfels.jmhtest.hash;
import java.util.HashMap;
import java.util.Map;
import java.util.Random;
import java.util.concurrent.TimeUnit;
import org.openjdk.jmh.annotations.Benchmark;
import org.openjdk.jmh.annotations.BenchmarkMode;
import org.openjdk.jmh.annotations.Fork;