Skip to content

Instantly share code, notes, and snippets.

Avatar

Brent Maxwell brentmaxwell

View GitHub Profile
@brentmaxwell
brentmaxwell / PEMtoRSAParams
Created Nov 19, 2015
Convert RSA keys from PEM to RSA Parameters
View PEMtoRSAParams
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Globalization;
using System.IO;
using System.Security.Cryptography;
using System.Text;
internal class RSA {
private const string _begin = "-----BEGIN ";
View ObjectDumper.cs
using System;
using System.Collections;
using System.Collections.Generic;
using System.Reflection;
using System.Text;
public class ObjectDumper
{
private int _level;
private readonly int _indentSize;
@brentmaxwell
brentmaxwell / myusbgadget
Last active Jun 1, 2020 — forked from geekman/myusbgadget
Pi Zero multiple USB gadgets minimal example
View myusbgadget
#!/bin/bash -e
modprobe libcomposite
cd /sys/kernel/config/usb_gadget/
mkdir g && cd g
echo 0x1d6b > idVendor # Linux Foundation
echo 0x0104 > idProduct # Multifunction Composite Gadget
echo 0x0100 > bcdDevice # v1.0.0
View better-ssh-authorized-keys-management.md

Better SSH Authorized Keys Management

A seemingly common problem that people encounter is how to handle all of your users authorized_keys file.

People struggle over management, ensuring that users only have specific keys in the authorized_keys file or even a method for expiring keys. A centralized key management system could help provide all of this functionality with a little scripting.

One piece of functionality overlooked in OpenSSH is the AuthorizedKeysCommand configuration keyword. This configuration allows you to specify a command that will run during login to retrieve a users public key file from a remote source and perform validation just as if the authorized_keys file was local.

Here is an example directory structure for a set of users with SSH public keys that can be shared out via a web server:

@brentmaxwell
brentmaxwell / ChangeDoubleStraightQuotesToSmartQuotes.vba
Last active Nov 25, 2019
Swap smart and straight quotes in Microsoft Word
View ChangeDoubleStraightQuotesToSmartQuotes.vba
Sub ChangeDoubleStraightQuotesToSmartQuotes()
Selection.Find.ClearFormatting
Selection.Find.Replacement.ClearFormatting
With Selection.Find
.Text = """"
.Replacement.Text = """"
.Forward = True
.Wrap = wdFindContinue
.Format = False
.MatchCase = False
@brentmaxwell
brentmaxwell / GenerateDataDictionary.sql
Created Sep 9, 2019
Generate a simple data dictionary for SQL Server; uses the Description extended property.
View GenerateDataDictionary.sql
CREATE PROCEDURE GenerateDataDictionary
@TableName NVARCHAR(MAX)
AS
BEGIN
SELECT
c.name AS ColumnName,
CASE
WHEN c.max_length = -1 THEN dt.name + '(max)'
WHEN dt.name = 'nvarchar' THEN dt.name + '('+CAST(ISNULL(c.max_length,0)/2 AS NVARCHAR)+')'
WHEN dt.name = 'varchar' THEN dt.name + '('+CAST(ISNULL(c.max_length,0) AS nvarchar)+')'
@brentmaxwell
brentmaxwell / AutoMapperConfig.cs
Last active Dec 6, 2017
Put automapper configs in model classes NOTE THIS DOES NOT WORK WITH THE LATEST VERSION OF AUTOMAPPER
View AutoMapperConfig.cs
public class AutoMapperConfig
{
/// <summary>
/// Function that is called in the Global.asax file
/// Runs through and calls each of the functions below, registering the various mappings
/// </summary>
public static void Execute()
{
RegisterOtherMaps();
RegisterMapperHelpers();
@brentmaxwell
brentmaxwell / aprs.php
Created Sep 16, 2015
Simple PHP page to post to APRS-IS
View aprs.php
<?php
$aprs_php_ver = "0.1";
$aprs_is_url = "http://srvr.aprs-is.net:8080";
date_default_timezone_set('UTC');
$defaultSSID = "10";
$defaultPath = "APRS,WIDE2-2,TCPIP*";
if($_SERVER["REQUEST_METHOD"] == "POST")
{
@brentmaxwell
brentmaxwell / DelimitedStringToTable.sql
Last active Apr 5, 2017
Delimited string to table
View DelimitedStringToTable.sql
CREATE FUNCTION [dbo].[DelimitedStringToTable]
(
        @String nvarchar(MAX),
        @Delimiter nvarchar(1)
)
RETURNS @Items TABLE
(
        Item nvarchar(50)
)
AS
@brentmaxwell
brentmaxwell / gist:4e0239b214f589cc3d80824a4bef8f34
Created May 4, 2016 — forked from davidnunez/gist:1404789
list all installed packages in android adb shell
You can’t perform that action at this time.