Skip to content

Instantly share code, notes, and snippets.

.PHONY: clean do
CFLAGS=-O0 -m32
EMFLAGS=\
--memory-init-file 0
do: clean x.o y.o z.o
emar rc libtest.a y.o
emar rc libtest.a x.o
emranlib libtest.a
int main(void) {
int x = EM_ASM_INT({
Module.print('I received: ' + $0);
return $0 + 1;
}, 100)
return x;
}
@aidanhs
aidanhs / srv.js
Created November 20, 2014 22:00
Interrupted webserver
var http = require('http');
http.createServer(function (req, res) {
res.writeHead(200, {'Content-Type': 'text/plain'});
res.write('echo /');
console.log('kill me now');
setTimeout(function () {
res.write('tmp/xx\n');
}, 50000);
}).listen(8080, '127.0.0.1');
console.log('Server running at http://127.0.0.1:8080/');
@aidanhs
aidanhs / gist:a25a6131155834b4c483
Last active August 29, 2015 14:20
golang gdb script hackery
--- runtime-gdb.py 2015-05-05 17:03:21.520510629 +0100
+++ runtime-gdb-hacks.py 2015-05-05 17:05:24.416677753 +0100
@@ -369,6 +369,41 @@
ptr = ptr[linkfield]
+class AidanCmd(gdb.Command):
+ "List all goroutines."
+
+ def __init__(self):
@aidanhs
aidanhs / gist:615c5867fc0373b38276
Created April 27, 2015 15:53
udocker exploit

The instructions are:

$ go build udocker.go
$ chgrp docker udocker
$ chmod g+s udocker
$ mv udocker /usr/local/bin

I have performed the first three and therefore have this:

// ==UserScript==
// @name CoffeeTest
// @namespace test
// @version 0.1
// @grant none
// @require http://jashkenas.github.io/coffee-script/extras/coffee-script.js
// @match http://example.iana.org/
// ==/UserScript==
/*
@aidanhs
aidanhs / gist:6792200
Created October 2, 2013 11:14
Bench hg, git, bup for linear history of a large file with inserts and appends
set -e
# Clean up previous test
rm log.log || true
rm -rf .git .hg .bup
# Specify how our file is going to be constructed
NUMS="00 01 02 03 04 05 06 07 08 09"
F1="00 "
F2="00 01 02 "
```
2013/11/22 18:15:26 2c9e825beb3b2c37d0a4d9c5625e10384bc6433c4a08a19b2092820a783bae4a: Failed to umount filesystem: Umount: Failed to umount /var/lib/docker/containers/2c9e825beb3b2c37d0a4d9c5625e10384bc6433c
4a08a19b2092820a783bae4a/rootfs
panic: runtime error: close of closed channel
goroutine 24 [running]:
runtime.panic(0x8eb1e0, 0x101f915)
/usr/local/go/src/pkg/runtime/panic.c:266 +0xb6
github.com/dotcloud/docker.(*Container).monitor(0xc210062c40)
/go/src/github.com/dotcloud/docker/container.go:1232 +0x512
package main
import (
"database/sql"
"database/sql/driver"
"net/http"
"runtime"
"time"
)
@aidanhs
aidanhs / gist:7796266
Last active December 30, 2015 07:29
bench
dd if=/dev/urandom bs=1M count=1000 of=/tmp/bigfile
# Note! This will cause your computer to slow down while it puts
# all files it's accessing back in memory
sudo sync
sudo sh -c 'echo 3 > /proc/sys/vm/drop_caches'
sleep 5
dd if=/tmp/bigfile bs=1M of=/dev/null