bincommon

package
v1.38.0 Latest Latest
Warning

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

Go to latest
Published: Sep 19, 2022 License: Apache-2.0 Imports: 12 Imported by: 4

Documentation

Overview

Package bincommon is the common code and flag handling between the fortio (fortio_main.go) and fcurl (fcurl.go) executables.

Index

Constants

This section is empty.

Variables

View Source
var (

	// QuietFlag is the value of -quiet.
	QuietFlag = flag.Bool("quiet", false, "Quiet mode: sets the loglevel to Error and reduces the output.")

	// PayloadSizeFlag is the value of -payload-size.
	PayloadSizeFlag = flag.Int("payload-size", 0, "Additional random payload size, replaces -payload when set > 0,"+
		" must be smaller than -maxpayloadsizekb. Setting this switches http to POST.")
	// PayloadFlag is the value of -payload.
	PayloadFlag = flag.String("payload", "", "Payload string to send along")
	// PayloadFileFlag is the value of -paylaod-file.
	PayloadFileFlag = flag.String("payload-file", "", "File `path` to be use as payload (POST for http), replaces -payload when set.")

	// ConfigDirectoryFlag is where to watch for dynamic flag updates.
	ConfigDirectoryFlag = flag.String("config", "",
		"Config directory `path` to watch for changes of dynamic flags (empty for no watch)")
	// CertFlag is the flag for the path for the client custom certificate.
	CertFlag = flag.String("cert", "", "`Path` to the certificate file to be used for client or server TLS")
	// KeyFlag is the flag for the path for the key for the `cert`.
	KeyFlag = flag.String("key", "", "`Path` to the key file matching the -cert")
	// CACertFlag is the flag for the path of the custom CA to verify server certificates in client calls.
	CACertFlag = flag.String("cacert", "",
		"`Path` to a custom CA certificate file to be used for the TLS client connections, "+
			"if empty, use https:// prefix for standard internet/system CAs")
	// LogErrorsFlag determines if the non ok http error codes get logged as they occur or not.
	LogErrorsFlag = flag.Bool("log-errors", true, "Log http non 2xx/418 error codes as they occur")
	// RunIDFlag is optional RunID to be present in json results (and default json result filename if not 0).
	RunIDFlag = flag.Int64("runid", 0, "Optional RunID to add to json result and auto save filename, to match server mode")
	// HelpFlag is true if help/usage is being requested by the user.
	HelpFlag = flag.Bool("h", false, "Print usage/help on stdout")

	// ConnectionReuseRange Dynamic string flag to set the max connection reuse range.
	ConnectionReuseRange = dflag.DynString(flag.CommandLine, "connection-reuse", "",
		"Range `min:max` for the max number of connections to reuse for each thread, default to unlimited. "+
			"e.g. 10:30 means randomly choose a max connection reuse threshold between 10 and 30 requests.").
		WithValidator(ConnectionReuseRangeValidator(&httpOpts))
	// NoReResolveFlag is false if we want to resolve the DNS name for each new connection.
	NoReResolveFlag = flag.Bool("no-reresolve", false, "Keep the initial DNS resolution and "+
		"don't re-resolve when making new connections (because of error or reuse limit reached)")
)

Functions

func ConnectionReuseRangeValidator added in v1.34.0

func ConnectionReuseRangeValidator(httpOpts *fhttp.HTTPOptions) func(string) error

ConnectionReuseRangeValidator returns a validator function that checks if the connection reuse range is valid and set in httpOpts.

func FetchURL

func FetchURL(o *fhttp.HTTPOptions)

FetchURL is fetching url content and exiting with 1 upon error. common part between fortio_main and fcurl.

func FlagsUsage

func FlagsUsage(w io.Writer, msgs ...interface{})

FlagsUsage prints end of the usage() (flags part + error message).

func SharedHTTPOptions

func SharedHTTPOptions() *fhttp.HTTPOptions

SharedHTTPOptions is the flag->httpoptions transfer code shared between fortio_main and fcurl.

func SharedMain

func SharedMain(usage func(io.Writer, ...interface{}))

SharedMain is the common part of main from fortio_main and fcurl.

func TLSInsecure added in v1.12.2

func TLSInsecure() bool

TLSInsecure returns true if -k or -https-insecure was passed.

Types

This section is empty.

Jump to

Keyboard shortcuts

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