goutils

package module
v1.5.4 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 4, 2023 License: ISC Imports: 0 Imported by: 0

README

GOUTILS

This is a collection of small utility code I've written in Go; the cmd/ directory has a number of command-line utilities. Rather than keep all of these in superfluous repositories of their own, I'm putting them here.

Contents:

ahash/          Provides hashes from string algorithm specifiers.
assert/         Error handling, assertion-style.
cmd/
    atping/     Automated TCP ping, meant for putting in cronjobs.
    certchain/  Display the certificate chain from a
                TLS connection.
    certdump/   Dump certificate information.
    certexpiry/ Print a list of certificate subjects and expiry times
                or warn about certificates expiring within a certain
                window.
    certverify/ Verify a TLS X.509 certificate, optionally printing
                the time to expiry and checking for revocations.
    clustersh/  Run commands or transfer files across multiple
                servers via SSH.
    cruntar/    Untar an archive with hard links, copying instead of
                linking.
    csrpubdump/ Dump the public key from an X.509 certificate request.
    fragment/   Print a fragment of a file.
    jlp/        JSON linter/prettifier.
    kgz/        Custom gzip compressor / decompressor that handles 99%
                of my use cases.
    pem2bin/    Dump the binary body of a PEM-encoded block.
    pembody/    Print the body of a PEM certificate.
    pemit/      Dump data to a PEM file.
    showimp/    List the external (e.g. non-stdlib and outside the
                current working directory) imports for a Go file.
    readchain/  Print the common name for the certificates
                in a bundle.
    renfnv/     Rename a file to base32-encoded 64-bit FNV-1a hash.
    rhash/      Compute the digest of remote files.
    showimp     Display the external imports in a package.
    ski         Display the SKI for PEM-encoded TLS material.
    stealchain/ Dump the verified chain from a TLS
                connection.
    subjhash/   Print or match subject info from a certificate.
    tlskeypair/ Check whether a TLS certificate and key file match.
    utc/        Convert times to UTC.
    yamll/      A small YAML linter.
die/            Death of a program.
fileutil/       Common file functions.
lib/            Commonly-useful functions for writing Go programs.
logging/        A logging library.
mwc/            MultiwriteCloser implementation.
sbuf/           A byte buffer that can be wiped.
tee/            Emulate tee(1)'s functionality in io.Writers.
testio/         Various I/O utilities useful during testing.
testutil/       Various utility functions useful during testing.

Each program should have a small README in the directory with more information.

All code here is licensed under the MIT license.

Documentation

Overview

Package goutils is a top-level package containing a number of utility libraries and command-line programs.

Directories

Path Synopsis
Package ahash provides support for hashing data with a selectable
Package ahash provides support for hashing data with a selectable
Package assert provides C-like assertions for Go.
Package assert provides C-like assertions for Go.
cmd
eig
jlp
kgz
showimp
showimp is a utility for displaying the imports in a package.
showimp is a utility for displaying the imports in a package.
ski
utc
Package config implements a simple global configuration system that supports a file with key=value pairs and environment variables.
Package config implements a simple global configuration system that supports a file with key=value pairs and environment variables.
Package dbg implements a debug printer.
Package dbg implements a debug printer.
Package die contains utilities for fatal error handling.
Package die contains utilities for fatal error handling.
Package fileutil contains common file functions.
Package fileutil contains common file functions.
Package lib contains functions useful for most programs.
Package lib contains functions useful for most programs.
Package logging implements attribute-based logging.
Package logging implements attribute-based logging.
Package mwc implements MultiWriteClosers.
Package mwc implements MultiWriteClosers.
Package rand contains utilities for interacting with math/rand, including seeding from a random sed.
Package rand contains utilities for interacting with math/rand, including seeding from a random sed.
Package sbuf implements a byte buffer that can be wiped.
Package sbuf implements a byte buffer that can be wiped.
Package testio implements various io utility types.
Package testio implements various io utility types.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL