- Session 1: Introduction and Principles - https://speakerdeck.com/munetoshi/code-readability-session-1-ver-2-en
- Session 2: Naming - https://speakerdeck.com/munetoshi/code-readability-session-2-ver-2-en
- Session 3: Comments - https://speakerdeck.com/munetoshi/code-readability-session-3-ver-2-en
- Session 4: State - https://speakerdeck.com/munetoshi/code-readability-session-4-ver-2-en
- Session 5: Function - https://speakerdeck.com/munetoshi/code-readability-session-5-ver-2-en
- Session 6: Dependency I - https://speakerdeck.com/munetoshi/code-readability-session-6-ver-2-en
Discover gists
A DLL can be loaded and executed via Excel by initializing the Excel.Application COM object and passing a DLL to the RegisterXLL method. The DLL path does not need to be local, it can also be a UNC path that points to a remote WebDAV server.
When delivering via WebDAV, it should be noted that the DLL is still written to disk but the dropped file is not the one loaded in to the process. This is the case for any file downloaded via WebDAV, and they are stored at: C:\Windows\ServiceProfiles\LocalService\AppData\Local\Temp\TfsStore\Tfs_DAV\
.
The RegisterXLL function expects an XLL add-in which is essentially a specially crafted DLL with specific exports. More info on XLL's can be found on MSDN
The XLL can also be executed by double-clicking the .xll file, however there is a security warning. @rxwx has more notes on this here inc
// MIT License | |
// | |
// Copyright 2018 Otto Itkonen | |
// | |
// Permission is hereby granted, free of charge, to any person obtaining a copy | |
// of this software and associated documentation files (the "Software"), to deal | |
// in the Software without restriction, including without limitation the rights | |
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | |
// copies of the Software, and to permit persons to whom the Software is | |
// furnished to do so, subject to the following conditions: |
^([0-9]+)\.([0-9]+)\.([0-9]+)(?:-([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?(?:\+[0-9A-Za-z-]+)?$
- Semantic versioning http://semver.org/
- Source of the regex npm/node-semver#32
I used to sift trough my shell history and bookmarks every time I set up a new testing server in order to be able to send mails. So this should help...
Be aware don't use ssmtp
anymore. It's unmaintained and has been removed
from Debian
and Ubuntu will most definitely follow suit.
See how a minor change to your commit message style can make a difference.
ℹ️ git-conventional-commits A CLI util to ensure this conventions and generate changelogs
A side project detailing available disk dumps of Macintosh System Software 0.97, Finder 1.0.
Overview tl;dr: I would find a clean disk dump or a near perfect replica of the original System Disk.
In January 24th, 1984, Apple Computer Corporation introduced the Macintosh 128K (originally known as just Macintosh).
""" | |
31-round sha256 collision. | |
Not my research, just a PoC script I put together with numbers plugged in from the slide at | |
https://twitter.com/jedisct1/status/1772647350554464448 from FSE2024 | |
SHA256 impl follows FIPS 180-4 | |
https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.180-4.pdf | |
""" |
$fn = $args[0] | |
Start-Process -Wait -NoNewWindow 'cmd.exe' -ArgumentList "/C `"ffmpeg.exe -hide_banner -loglevel panic -i `"$fn`" -c:v copy -frames:v 1 -vbsf hevc_mp4toannexb -f hevc - | dovi_tool extract-rpu - -o `"$($fn).RPU.bin`"`"" | |
Start-Process -Wait -NoNewWindow 'cmd.exe' -ArgumentList "/C `"dovi_tool.exe info `"$($fn).RPU.bin`" -f 0 > `"$($fn).RPU.json`"`"" | |
$rpu = (Get-Content "$($fn).RPU.json" | Select-Object -Skip 1) | ConvertFrom-Json | |
if ($rpu.dovi_profile) { | |
Write-Output "Profile: $($rpu.dovi_profile)" | |
if ($rpu.dovi_profile -eq 5) { | |
Write-Output "Natively supported." | |
} |
This works on a Pi 4, and should work on a Pi 3, but to work on a Pi Zero you would have to figure out how to compile your own client. More info in this thread on the Proxmox forums.
Run the following command. If you get arm64
, it's 64bit, otherwise you'll see armv7l
which is 32bit.
uname -m