Skip to content

Instantly share code, notes, and snippets.

# AppImageKit-checkrt.git
2bde0d486db033202783e22139d563fe0b44392d commit refs/heads/gh-workflow
3b0f28c71f630178f28881f1a82d6d038bb12cc7 commit refs/heads/master
9523470cd94df0b6d3fb217f966d8c84b2f8a8e6 commit refs/heads/old
b9a00c30e28cf13cffb2df5686b8218cd92ef957 commit refs/pull/1/head
c952b8eff575c13c0ba57439b6e722aea22b6a24 commit refs/pull/2/head
63ff7543717d961d5021c6552d1d4b85b797a0be commit refs/pull/3/head
7447173eb64d60fed400b9d5eb5ab08098172be5 commit refs/pull/4/head
bfa87628b15794131d1fc2391d94ac0f7883b3eb commit refs/pull/4/merge
@toriningen
toriningen / mbedtls.git
Created March 5, 2024 17:41
yuzu tags
git tag 'feature-opaque-keys-2.7-rc1' 278c0e1135568ec77598bb1f27471817dcc5044f
git tag 'mbedos-release-15-11' d59d29ab9fc03a524322ba56e52700634d7fc2fc
git tag 'mbedtls-1.3.10' ae9d0bb1cbee91f000666c45069cd0ad4155a3d0
git tag 'mbedtls-1.3.11' 6861e92e664428c2baaa67f094d45458cc812f2d
git tag 'mbedtls-1.3.12' d6f319459bc8e042a49916cb9b5cd65a0c816b8c
git tag 'mbedtls-1.3.15' c0a447de34e13842c943898c4a2ec5ac4280f251
git tag 'mbedtls-1.3.16' 3b13f4a667dbf2532c8dea6e7f4a12714e7f379a
git tag 'mbedtls-1.3.17' 6a9f82d5e0545bc245a51d04b572ad2ddd460bc0
git tag 'mbedtls-1.3.18' 3b06797e0e98fd2bea9b3af2d8ef30cd333494e4
git tag 'mbedtls-1.3.19' 6d02bc403bfffbdd13c2597e1748622a1d9ad0e6
@toriningen
toriningen / example.py
Last active May 28, 2021 19:59
input() with timeout
from timed_input import timed_input
if __name__ == "__main__":
answer = timed_input(3, "You have 3 seconds to type something: ")
if answer is not None:
print(f"Good, your answer was {answer!r}")
else:
print("You've failed.")
@toriningen
toriningen / merge_all.py
Last active September 30, 2019 07:43
Fast way to merge lots of Pandas dataframes (~4x times faster than plain reduce())
import pandas as pd
_missing = object()
def sorting_reduce(function, iterable, key=lambda x: x, initializer=_missing):
"""Stable sorting reduce.
Cumulatively applies the function to the two smallest elements of the set.
Preserves order of elements of same size.
"""
@toriningen
toriningen / exact.ts
Last active March 8, 2021 22:04
Implementation of Exact types in Typescript
// (these two types MUST NOT be merged into a single declaration)
type ExactInner<T> = <D>() => (D extends T ? D : D);
type Exact<T> = ExactInner<T> & T;
type Unexact<T> = T extends Exact<infer R> ? R : T;
function exact<T>(obj: Exact<T> | T): Exact<T> {
return obj as Exact<T>;
};
////////////////////////////////
This file has been truncated, but you can view the full file.
N3q8ryccAAR6w9rUcaGgAAAAAAAlAAAAAAAAADj++TDhXRbgA10Af77Ny6z2xof9N3fiyD7ny+FT
+7R4wjB1ky566keI6RzBL7WifE5WaEfYziDjEtLoWC6/PWc3WmpMlJvcx/e78f4ISDmk2GT7t5Ld
zzlONDibhJUJgryMCrB0H+8HVF6KBuawlntWLHu1ZXcYq9qkPhs0FGeLQqf3XTu2gT8bkH2xWoV4
VpecPPW5S5ilkr1E4gw1hQ6/U/j3mRRA1LcbelCXggyQWZPblp2eJvvEawKfIWENDBqKucN6Vnca
kd0UGRUz5QY0PR7z+9XFH2BHN6YrU++AY/c1RFZajR6+DyNJZGmypj4Q1H3DouahKO12nkNvHr4j
CzULZmS9DNRrxm/z0nZ5E13hpkg+Y/1wj1sHxuO9lgnnikCtfisGehDagaJjp0HUlaYerLsi8WhV
905O0xG/MMBeN7eLYGCrdqeCe/Wefy1C80dvcmLHG+nkgXlV8cfZT8AS7WGSjvYne9uf4OuoUPDe
IfNYcMjsLNFJXb+nfVoAtgbrEIBeg9E3duOC04WgDvjN/1GtS/6s/788K3E25FMnI3aN6jYTp3U/
/sDFOFR9okBgFhgbMcx/cEXp5t/1n2XlIrOlbBfbl06+DDpHaRa/PKxsXuIkw4K35MQCoz+D0Stn
@toriningen
toriningen / xnu-syscall-life-amd64.md
Created May 14, 2018 00:48 — forked from yrp604/xnu-syscall-life-amd64.md
The life of an XNU unix syscall on amd64

XNU syscall path

Chart

             +------------------+
             |These push their  |                                  +-----------------------+
             |respective syscall|                                  |This overwrites the    |
             |dispatch functions|                                  |saved dispatch function|
             |onto the stack    |                                  |with hndl_alltraps     |
@toriningen
toriningen / gist:02dbb3ae8632890cde0e8ee96a87b681
Created December 19, 2017 00:35
WebStorm plugins not bundled with PhpStorm
BashSupport
Cucumber.js
Dart
EditorConfig
EJS
Handlebars/Mustache
Karma
LiveEdit
Meteor
Node.js Remote Interpreter
@toriningen
toriningen / description.md
Last active January 15, 2020 16:47
Naive Python implementation of hash-based obfuscation codec

Идея

Несколько лет назад у меня возникла идея, как можно с этим бороться и сделать создание правила для DPI-фильтра невозможным на практике.

Суть идеи заключается в том, чтобы вместо открытых данных пересылать случайные данные, но которые можно по некоторому заранее известному, желательно трудозатратному алгоритму без секретной компоненты, преобразовать обратно в открытые данные.

Таким образом, это не добавит какой-либо секретности в пересылаемые данные, но затруднит их непосредственный анализ без предварительной обработки, которая в масштабах глобального прослушивания повлечет за собой как минимум ложнопозитивные сработки, и как максимум — невозможность справиться с потоком данных с точки зрения требуемых ресурсов.

Для кодирования следует разбить открытые данные на чанки по N бит, затем для каждого чанка нужно брутфорсом подобрать такой случайный блок данных фиксированного размера H, который при декодировании превратится в ожидаемый чанк открытых данных в N бит размером. Пример такой процедуры декодиро

@toriningen
toriningen / about.t
Created October 26, 2016 11:38
Return to Ditch Day (TADS source)
/*
* Copyright 2003, 2013 Michael J. Roberts
*
* Return to Ditch Day - "About" information (credits, version, help,
* and so on).
*/
#include <adv3.h>
#include <en_us.h>