Skip to content

Instantly share code, notes, and snippets.

View earonesty's full-sized avatar
🎹
Piano

earonesty

🎹
Piano
View GitHub Profile
from cryptography.hazmat.backends import default_backend
from cryptography.hazmat.primitives.ciphers import ( Cipher, algorithms, modes )
import os
nonce = os.urandom(16)
key = os.urandom(32)
mode = modes.GCM(nonce, None)
@earonesty
earonesty / deadlyexes.py
Created May 7, 2019 22:40
Monitor class for healthz maintenance
import time
import logging
import threading
log = logging.getLogger(__name__)
class MonitorInstance:
def __init__(self, parent, label, func, threshold, active, metric):
self.parent = parent
self.label = label
self.func = func
@earonesty
earonesty / README.md
Last active June 22, 2021 18:39
Convert a djinni input file to a node cpp bindings file. Load the resulting lib directly in node.

USAGE:

python3 node_bindings.py djinni.yml <namespace> node/node.cpp
yarn
mkdir -p build-node
cd build-node; \
    cmake .. -DCMAKE_BUILD_TYPE=Release -DNODE=yes; \
    cmake --build . -j

node node/test.js

#pragma once
#include <codecvt>
#include <condition_variable>
#include <fstream>
#include <iostream>
#include <locale>
#include <memory>
#include <mutex>
#include <ostream>
@earonesty
earonesty / hex_decompose.py
Last active January 29, 2019 20:25
decompose integer into hex flags
# or visit: https://earonesty.github.io/decompose_hex.html
def hex_decompose(flag):
b = bin(flag)[2:]
for i in range(len(b)):
if int(b[i]):
x = len(b) - i - 1
y = '1' + ('0' * x)
print(hex(int(y,2)))
export PROMPT_COMMAND='if [ "$(id -u)" -ne 0 ]; then echo "$(date "+%Y-%m-%d.%H:%M:%S") $(pwd) $(history 1)" >> ~/.bash.log; fi'
function hh() {
grep "$1" ~/.bash.log
}
@earonesty
earonesty / pyt.py
Last active February 12, 2018 13:45
python template expander ... based on format strings
#!/bin/env python3.6
import os, sys, json
from argparse import ArgumentParser
def main():
parser = ArgumentParser(description='Python template expander. \
Make a template with a format string syntax and environment vars, arguments and config file vars are expanded.')
@earonesty
earonesty / varlib.py
Last active December 18, 2017 19:26
import inspect, os, ctypes
class dicttemp:
def __init__(self, obj, changes):
self.obj = obj
self.save = {}
for var, val in changes.items():
if var in obj:
self.save[var] = obj[var]
else:
# very simple RPC server in python
import sys, json
from http.server import BaseHTTPRequestHandler, HTTPServer
import urllib.parse as urlparse
import threading
import logging
log = logging.getLogger(__name__)
class ApiError(Exception):
@earonesty
earonesty / xssh
Last active February 12, 2018 13:54
#!/usr/bin/env python3
from pssh.pssh_client import ParallelSSHClient
import pssh.utils
pssh.utils.enable_host_logger()
import os, sys, re, stat, tempfile, subprocess
import logging