Skip to content

Instantly share code, notes, and snippets.

View ayanamist's full-sized avatar

ayanamist ayanamist

View GitHub Profile
@ayanamist
ayanamist / https-proxy.js
Last active February 17, 2018 01:22
HTTPS Proxy (Polipo + stunnel)
#!/usr/bin/env node
'use strict';
var fs = require('fs');
var http = require('http');
var https = require('https');
var net = require('net');
var url = require('url');
var util = require('util');
@ayanamist
ayanamist / min-btn.patch
Created December 6, 2013 06:21
Fix bug of xfwm4 which sometime eat minimize button. More detail please refer to https://bugzilla.xfce.org/show_bug.cgi?id=10413
Index: xfwm4-4.10.1/src/netwm.c
===================================================================
--- xfwm4-4.10.1.orig/src/netwm.c 2013-05-05 23:58:42.000000000 +0800
+++ xfwm4-4.10.1/src/netwm.c 2013-12-06 12:26:31.351436498 +0800
@@ -1325,7 +1325,6 @@
c->initial_layer = c2->win_layer;
TRACE ("Applied layer is %lu", c->initial_layer);
}
- FLAG_UNSET (c->xfwm_flags, XFWM_FLAG_HAS_HIDE);
}
@ayanamist
ayanamist / .bashrc
Last active October 12, 2017 12:56
Linux Configurations
# Prevent other people access my files
umask 077
# If not running interactively, don't do anything
case $- in *i*) ;; *) return;; esac
# bash keep history
HISTFILESIZE=400000000
HISTSIZE=10000
PROMPT_COMMAND="history -a"
@ayanamist
ayanamist / dnsmasq_gfw.patch
Last active December 15, 2015 15:38
让dnsmasq额外支持bogus-gfw参数,过滤GFW产生的污染结果。 未测试。
52540f42e67b8bca7ea4fa087090ac6554d66d71
src/dnsmasq.h | 1 +
src/forward.c | 8 ++++++++
src/option.c | 19 +++++++++++++++++++
3 files changed, 28 insertions(+)
diff --git a/src/dnsmasq.h b/src/dnsmasq.h
index 21a309c..efc66b4 100644
--- a/src/dnsmasq.h
+++ b/src/dnsmasq.h
@ayanamist
ayanamist / dnscryptwatch
Last active December 10, 2015 01:34
OpenDNS DNSCrypt Watch
#!/bin/sh
PIDFILE=/var/run/dnscryptwatch.pid
BINPATH=/usr/sbin/dnscrypt-proxy -a 127.0.0.1:40
DNSCRYPT_PIDFILE=/var/run/dnscrypt.pid
# Check whether script is running, and if running, exit directly
if [ -s $PIDFILE ] && [ -s /proc/$(cat $PIDFILE)/exe ]; then
exit 0
fi
# Fork current script to background daemon
if [ -z "$_BACKGROUNDED" ]; then
@ayanamist
ayanamist / vpncwatch
Last active December 9, 2015 16:28
vpncwatch (shell version)
#!/bin/sh
log() {
logger -t vpncwatch $@
}
SH_PID="/var/run/vpncwatch.pid"
VPNC="/usr/sbin/vpnc"
VPNC_OPTS=""
VPNC_PID="/var/run/vpnc/pid"
@ayanamist
ayanamist / readme.md
Created September 13, 2012 04:21
Opera Mini Android 改服
@ayanamist
ayanamist / shExpMatch.js
Created June 25, 2012 16:11
Better implementation of shExpMatch
function shExpMatch(url, pattern) {
var pCharCode;
var isAggressive = false;
var pIndex;
var urlIndex = 0;
var lastIndex;
var patternLength = pattern.length;
var urlLength = url.length;
for (pIndex = 0; pIndex < patternLength; pIndex += 1) {
pCharCode = pattern.charCodeAt(pIndex); // use charCodeAt for performance, see http://jsperf.com/charat-charcodeat-brackets
@ayanamist
ayanamist / random.html
Created January 17, 2012 15:59
抽奖用页面
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title>抽奖</title>
<style type="text/css">
body {
background: transparent url(data:image/jpeg;base64,/9j/4AAQSkZJRgABAQEAYABgAAD/4QBuRXhpZgAASUkqAAgAAAABAGmHBAABAAAAGgAAAAAAAAABAIaSAgA6AAAALAAAAAAAAABDUkVBVE9SOiBnZC1qcGVnIHYxLjAgKHVzaW5nIElKRyBKUEVHIHY2MiksIHF1YWxpdHkgPSA5MAoA/9sAQwAIBgYHBgUIBwcHCQkICgwUDQwLCwwZEhMPFB0aHx4dGhwcICQuJyAiLCMcHCg3KSwwMTQ0NB8nOT04MjwuMzQy/9sAQwEJCQkMCwwYDQ0YMiEcITIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIy/8AAEQgClgOPAwEiAAIRAQMRAf/EAB8AAAEFAQEBAQEBAAAAAAAAAAABAgMEBQYHCAkKC//EALUQAAIBAwMCBAMFBQQEAAABfQECAwAEEQUSITFBBhNRYQcicRQygZGhCCNCscEVUtHwJDNicoIJChYXGBkaJSYnKCkqNDU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6g4SFhoeIiYqSk5SVlpeYmZqio6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2drh4uPk5ebn6Onq8fLz9PX29/j5+v/EAB8BAAMBAQEBAQEBAQEAAAAAAAABAgMEBQYHCAkKC//EALURAAIBAgQEAwQHBQQEAAECdwABAgMRBAUhMQYSQVEHYXETIjKBCBRCkaGxwQkjM1LwFWJy0QoWJDThJfEXGBkaJ
@ayanamist
ayanamist / TinyHTTPProxy.py
Created November 24, 2011 09:56
Tiny HTTP Proxy
#!/usr/bin/python
__doc__ = """Tiny HTTP Proxy.
This module implements GET, HEAD, POST, PUT and DELETE methods
on BaseHTTPServer, and behaves as an HTTP proxy. The CONNECT
method is also implemented experimentally, but has not been
tested yet.
Any help will be greatly appreciated. SUZUKI Hisao