When I was working on a generic port of Google's hashmap to C, I wrote a function that (ignoring irrelevant parts) looked like this:
typedef struct {
uint8_t *bytes;
size_t len;
} bytebuf;
When I was working on a generic port of Google's hashmap to C, I wrote a function that (ignoring irrelevant parts) looked like this:
typedef struct {
uint8_t *bytes;
size_t len;
} bytebuf;
# This script automatically handles Syncthing conflicts on text files by applying a | |
# git three-way merge between the previously synced version and each divergent version. | |
# It depends on the watchdog package and git. | |
# For automatic dependency installation when running with ´uv run --script deconflicter.py´: | |
# /// script | |
# requires-python = ">=3.10" | |
# dependencies = [ | |
# "watchdog", |
import cryptography | |
import datetime | |
import pgpy | |
pkalg = pgpy.constants.PubKeyAlgorithm.ECDSA | |
curve = pgpy.constants.EllipticCurveOID.NIST_P384 | |
super_secret_number = 12345 | |
created = 0 # datetime |
This Python script is not maintained and was replaced by the more robust Rust version below:
image: "rust:latest" | |
default: | |
before_script: | |
- rustc --version | |
- cargo --version | |
stages: | |
- test |
/* | |
* This script shows an example of how with PKCS#11 ECDH1 key derivation and how it differs when | |
* communicating with SoftHSM2 vs AWS CloudHSM vs YubiHSM2. This seems to boil down to how they treat | |
* the `CKA_SENSITIVE` attribute on the derived key. | |
* - SoftHSM2 does what you expect, if you say it is sensitive it won't allow exporting. If you say | |
* it's not it will. | |
* - CloudHSM errors when you attempt to mark the derived key as not-sensitive. It behaves as | |
* expected when you say it is. AWS docs seem to indicate that the derived key is available on the | |
* "client" but it's unclear what client they are referring to, and it doesn't seem to be |
module Main | |
data Direction = North | South | West | East | |
turn : Direction -> Direction | |
turn North = East | |
turn South = West | |
turn West = North | |
turn East = South |
# Update at 3am once a week | |
# Make sure the time on the Mikrotik is correct or update will occur "randomly" or never | |
/system scheduler | |
add interval=1w name=Auto-Upgrade on-event="/system package update\r\ | |
\ncheck-for-updates once\r\ | |
\n:delay 1s;\r\ | |
\n:if ( [get status] = \"New version is available\") do={ install }" policy=ftp,reboot,read,write,policy,test,password,sniff,sensitive,romon start-date=jan/01/2017 start-time=03:00:20 |
/system scheduler | |
add interval=1w name="Upgrade Router Weekly and Reboot" on-event=\ | |
"/system package update check-for-updates; /system package update download; /system reboot;" policy=\ | |
ftp,reboot,read,write,policy,test,password,sniff,sensitive,romon start-date=jan/01/2018 start-time=03:00:00 |
You'll probably be working with a single smartcard, so you'll want only one primary key ( |