Quicat -- a socat-like utility for working with QUIC

Quicat -- a socat-like utility for working with QUIC

This is a utility that I occasionally use for building secure-enough tunnels on flaky connections and ISPs that have TCP-breaking standards violations.

Please treat it as a pre-alpha, as it might (and probably does) contain bugs.

Usage

Usage of quicat:
quicat [flags] 
    
    


     
       and 
      
        are either
        {stdio|stdin|stdout}
        {file-r|file-w}://
       
         quic-[one]{active|passive}-{listen|accept|connect|tunnel}://
        
         :
         
           tcp-{listen|accept|connect|tunnel}://
          
           :
           
             'accept' is the same as 'listen', but exits after the connection is closed. 'tunnel' is the same as 'connect', but can connect multiple times. 'oneactive' is same as 'active', but exits after the connection is closed/timed out instead of listening/retrying (same with 'passive'). -ca value Use this CA for cert checking, can be specified multiple times -clientca value Present this certificate to peers, can be specified multiple times -dst Following crypto arguments will only concern second (dst) argument URI -insecure Insecure, don't check remote cert validity. Vulnerable to MITM. -keypair value Certificate/key pair in a single PEM-encoded file -next-proto string Specify TLS next proto, 'raw' or 'raw-sig' (-streamsig) by default -quiet Don't print errors to stderr -retry-delay int When positive, retry connections, inserting a delay (in ms) between each retry (default -1) -signalstream Signal streams by sending a (zero) character in a stream that just opened (default true) -simultaneous Attempt connections to src and dst at the same time -src Following crypto arguments will only concern first (src) argument URI 
           
          
         
        
       
      
     
    
   

Known issues

  • quicat only supports a single QUIC session at a time. Until several dispatching strategies are implemented, this is by design. Wait for the QUIC session to timeout or send an application error to it before connecting again.
Owner
Similar Resources

Utility functions for work with the Kubernetes Go-Client

go-k8s-utils This repository contains utils for the work with Kubernetes, in specific with the go-client library. Testing This package contains utils

Dec 14, 2022

Scylla-octopus is a backup and maintenance utility for scylladb.

scylla-octopus: a scylladb backup utility Scylla-octopus is a backup and maintenance utility for scylladb. It attempts to reproduce some functionality

Oct 19, 2022

A Go utility to convert Go example tests into jupyter notebooks.

go2colab Scientists (my main project's users) love jupyter notebook tutorials pkg.dev.go's runnable playground doesn't support file IO but I love exam

Jul 10, 2022

Simple utility to get/set the PWM duty cycle and to measure the RPM for a fan connected to the 4-pin header on the CM4IO.

cm4iofan Simple utility to get/set the PWM duty cycle and to measure the RPM for a fan connected to the 4-pin header on the CM4IO. Requirements Enable

Mar 31, 2022

Envoy utility to process envoy config for fast development and debugging.

envoyconf-tools Envoy is a proxy, really awesome and we are devs who often use it, face errors and struggle to debug it, when envoy config's source is

Oct 31, 2021

A utility library to do files/io/bytes processing/parsing in file-system or network.

goreader A utility library to do files/io/bytes processing/parsing in file-system or network. These features are really common to be implemented for a

Nov 1, 2021

Utility to restrict which package is allowed to import another package.

go-import-rules Utility to restrict which package is allowed to import another package. This tool will read import-rules.yaml or import-rules.yml in t

Jan 7, 2022

The utility that created for easily database and their tables rolling up

The utility that created for easily database and their tables rolling up

Nov 6, 2021

A funny utility to manage your PS1 variable.

A funny utility to manage your PS1 variable.

PSOne Introduction Are you a Veteran Unix Admin? If so, you probably know the charm of the PS1 environment variable. For a deep focus I suggest you to

Oct 23, 2022
Related tags
This project provides some working examples using Go and Hotwire Turbo.

hotwire-golang-website This project provides some working examples using Go the hotwire/turbo library published by basecamp.

Dec 29, 2022
tool for working with numbers and units

tool for working with numbers and units

Nov 26, 2022
Payload is a simple tool for working with production data in your local environment.

Payload Payload is a simple tool for working with production data in your local environment. What problem does it solve? You're working with Cloud SQL

Oct 13, 2021
CUE utilities and helpers for working with tree based objects in any combination of CUE, Yaml, and JSON.

Cuetils CUE utilities and helpers for working with tree based objects in any combination of CUE, Yaml, and JSON. Using As a command line binary The cu

Dec 24, 2022
Robust & Easy to use struct mapper and utility methods for Go

go-model Robust & Easy to use model mapper and utility methods for Go struct. Typical methods increase productivity and make Go development more fun ?

Dec 30, 2022
gopkg is a universal utility collection for Go, it complements offerings such as Boost, Better std, Cloud tools.

gopkg is a universal utility collection for Go, it complements offerings such as Boost, Better std, Cloud tools. Table of Contents Introduction

Jan 5, 2023
Utility to add network config file in apk

Utility to add network config file in apk. Which bypass the proxy intercept restriction for user installed burpsuit CA certificate.

Aug 19, 2022
Small utility to allow simpler, quicker testing of parsing files in crowdsec

cs_parser_test Small utility to allow simpler, quicker testing of parsing files in crowdsec Usage $ sudo cs_parser_test -t syslog /var/log/mail.log N

Jul 13, 2021
sigbypass4xx is a utility to automate well-know techniques used to bypass access control restrictions.

sigbypass4xx sigbypass4xx is a utility to automate well-know techniques used to bypass access control restrictions. Resources Usage Installation From

Nov 9, 2022
Nintendo 64 ROM utility written in Go.
Nintendo 64 ROM utility written in Go.

Nintendo 64 ROM utility written in Go. Commands ls - List information about all ROMs in a directory info - Show information about a single ROM convert

Dec 7, 2022