Skip to content

Instantly share code, notes, and snippets.

View larsks's full-sized avatar

Lars Kellogg-Stedman larsks

View GitHub Profile
#!/bin/bash
# Split a certificate bundle into individual certificates.
#
# This will produce files named `cert-000.crt`, `cert-001.crt`, .etc.
read -r count < <(csplit -z "$1" -f cert- -b '%03d.crt' '/^-----BEGIN CERTIFICATE-----/' '{*}' | wc -l)
echo "split $count certificates"
@larsks
larsks / README.md
Last active January 29, 2024 16:49
CS50 PS2 solution with tests

A couple of solutions to CS50 problem 2 ("vanity plates") along with a simple test suite.

@larsks
larsks / Makefile
Created April 14, 2023 00:58
Embedding binary data in C programs
CFLAGS = -g
example: example.o rom.o
$(CC) -o $@ $^
rom.o: rom.S rom.bin
rom.bin:
echo -n -e '\x09\x08\x07\x06\x05\x04\x03\x02\x01\x00' > $@
#!/bin/bash
# Create the substitute of C
git update-ref refs/heads/main $(git log -1 --pretty=%B $C | GIT_AUTHOR_NAME=$(git log -1 --pretty=%an $C) \
GIT_AUTHOR_DATE=$(git log -1 --pretty=%ad --date=iso $C) \
GIT_COMMITTER_NAME=$(git log -1 --pretty=%cn $C) \
GIT_COMMITTER_DATE=$(git log -1 --pretty=%cd --date=iso $C) \
git commit-tree -p $A -p $B -F - $C^{tree})
git update-ref refs/heads/main $(git log -1 --pretty=%B $D | GIT_AUTHOR_NAME=$(git log -1 --pretty=%an $D) \
@larsks
larsks / fibtrace.bt
Last active November 11, 2022 04:44
Track routing decisions made by fib_validate_source
kprobe:fib_validate_source {
$skb = (struct sk_buff*) arg0;
@skb[tid] = $skb;
@ipheader[tid] = ((struct iphdr *) ($skb->head + $skb->network_header));
}
kretprobe:fib_validate_source {
$skb = @skb[tid];
$ipheader = @ipheader[tid];
$version = $ipheader->version;
@larsks
larsks / boot.sh
Created September 6, 2022 02:24
Booting raspberry pi 64 bit using qemu
#!/bin/sh
SERIAL1=( -chardev stdio,id=uart1 -serial chardev:uart1 -monitor none )
SERIAL2=( -serial vc -serial vc )
SERIAL3=( -nographic -serial mon:stdio )
EMU_RASPI=( -M raspi3 )
EMU_VIRT=( -M virt -cpu cortex-a72 )
NET_TAP=(
{
"definitions": {
"Group": {
"description": "A user.openshift.io/v1 Group",
"properties": {
"apiVersion": {
"default": "user.openshift.io/v1",
"title": "Apiversion",
"type": "string"
},
import logging
import os
import pytest
import requests
ENDPOINT = os.environ.get("ACCT_MGR_API_ENDPOINT", "http://localhost:8080")
ADMIN_PASSWORD = os.environ.get("ACCT_MGR_ADMIN_PASSWORD", "pass")
NS = os.environ.get("ACCT_MGR_NAMESPACE", "onboarding")

If you run:

ansible-playbook playbook.yml  -e target_address='10.216.14.8'

You get as output:

PLAY [localhost] ***************************************************************
@larsks
larsks / logs.txt
Last active November 19, 2021 04:03
{"component":"virt-launcher","level":"info","msg":"Collected all requested hook sidecar sockets","pos":"manager.go:74","timestamp":"2021-11-19T03:34:35.502732Z"}
{"component":"virt-launcher","level":"info","msg":"Sorted all collected sidecar sockets per hook point based on their priority and name: map[]","pos":"manager.go:77","timestamp":"2021-11-19T03:34:35.502814Z"}
{"component":"virt-launcher","level":"info","msg":"Connecting to libvirt daemon: qemu:///system","pos":"libvirt.go:492","timestamp":"2021-11-19T03:34:35.504494Z"}
{"component":"virt-launcher","level":"info","msg":"Connecting to libvirt daemon failed: virError(Code=38, Domain=7, Message='Failed to connect socket to '/var/run/libvirt/libvirt-sock': No such file or directory')","pos":"libvirt.go:500","timestamp":"2021-11-19T03:34:35.505016Z"}
{"component":"virt-launcher","level":"info","msg":"libvirt version: 7.0.0, package: 14.4.module+el8.4.0+12413+d23780e6 (Red Hat, Inc. \u003chttp://bugzilla.redhat.com/bugzilla\u003e, 2021-08-27-06:46:40, )","s