I hereby claim:
- I am sktt on github.
- I am jwknr (https://keybase.io/jwknr) on keybase.
- I have a public key whose fingerprint is 978C 6F9A 69CB CE2F 915D AD0A 5846 66DF 8F0E AAF4
To claim this, I am signing this object:
| module.exports = run | |
| // Run tasks in sequence or async can be done in a very expressive way using | |
| // Promise and a reducer | |
| function run(tasks) { | |
| return tasks.reduce( | |
| (acc, task) => acc.then(lastResult => { | |
| if (typeof task === 'function') { | |
| // A task is a function that takes a result from a previous task and returns | |
| // a promise executor function |
| /** | |
| * Promisify a node style async func. | |
| * | |
| * @param {function} f Function to with a node callback as its last argument. | |
| * @param [{object}] scope Scope to run `f` in, if necessary. | |
| * @return {Promise} | |
| * | |
| * @example ``` | |
| * const read = promisify(fs.readFile, fs); | |
| * read('./file') |
I hereby claim:
To claim this, I am signing this object:
| // Naturally this has to be done before creating List instances!! | |
| // monkey patching List constructor to add hooks support | |
| (function () { | |
| var grappling = require('grappling-hook'); | |
| var List = keystone.List; | |
| keystone.List = function (name, options) { | |
| List.apply(this, arguments); |
| #!/bin/sh | |
| set -e | |
| IF=$1 | |
| if [ -z "$IF" ] ; then | |
| echo "Usage: $0 <interface>" | |
| exit 1 | |
| fi | |
| ifconfig $IF > /dev/null # stop execution if the interface doesn't exist |
| const URL = require('url') | |
| const Rx = require('rxjs/Rx') | |
| const WebSocketServer = require('ws').Server | |
| /** pipe stdin out on websocket */ | |
| function pipe (conn) { | |
| process.stdin.setEncoding('utf8') | |
| return Rx.Observable.create(obs => { | |
| process.stdin.on('data', obs.next.bind(obs)) |
| #include <stdio.h> | |
| /* 1337 linked list, kernel style */ | |
| #define MEMBER_OFFSET(type, member) \ | |
| (unsigned long)(&(((type *)0)->member)) | |
| #define LIST_ENTRY(ptr, type, member) \ | |
| ((type *)(((char *)(ptr)) - MEMBER_OFFSET(type, member))) | |
| #define LIST_INIT(list) \ | |
| (list).next = &(list);\ |
| sudo apt-get update | |
| sudo apt-get install build-essential curl libz3-dev z3 libboost-dev libcapstone-dev libpython-dev cmake python-z3 | |
| curl -L http://software.intel.com/sites/landingpage/pintool/downloads/pin-2.14-71313-gcc.4.4.7-linux.tar.gz| tar xzf - | |
| cd pin-2.14-71313-gcc.4.4.7-linux/source/tools/ | |
| curl -L https://github.com/JonathanSalwan/Triton/archive/v0.4.tar.gz | tar xzf - | |
| cd Triton-0.4/ | |
| mkdir build | |
| cd build | |
| cmake -DPINTOOL=on -DKERNEL4=on .. | |
| make -j4 |
| # make sure to not have conflicts.. | |
| sudo apt remove android-sdk{,-platform-tools,-build-tools} adb | |
| sudo apt autoremove | |
| mkdir ~/GREEN_LAB | |
| cd ~/GREEN_LAB | |
| # https://developer.android.com/studio/#command-tools | |
| wget https://dl.google.com/android/repository/sdk-tools-linux-4333796.zip -O android-sdk-tools.zip |