lantern

module
v0.0.0-...-8b1022e Latest Latest
Warning

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

Go to latest
Published: Jun 17, 2016 License: Apache-2.0

README

lantern Travis CI Status Coverage Status [ProjectTalk] (http://www.projecttalk.io/boards/getlantern%2Flantern?utm_campaign=gh-badge&utm_medium=badge&utm_source=github)

🔴蓝灯(Lantern)最新版下载点这里🔴

If you're looking for Lantern installers, you can find all of them at the following links:

If you're looking for help, please visit below user forums:

| English | 中文 | فارسی | français

Building Lantern

Prerequisites
  • Custom fork of Go is currently required. We'll eventually switch to Go 1.7 which supports what we need due to this.
  • An OSX or Linux host. Building on Windows is only partially supported with the help of Cygwin.
  • Git - brew install git, apt-get install git, etc
  • Go 1.6 or higher.
  • GNU Make
  • Nodejs & NPM
  • GNU C Library (linux only) - apt-get install libc6-dev-i386, etc
  • Gulp - npm i gulp-cli -g

To build and run Lantern desktop, just do:

git clone https://github.com/getlantern/lantern.git
cd lantern
make lantern
./lantern

During development, you'll likely want to do a clean build like this:

make clean-desktop lantern && ./lantern

Building Mobile

Mobile Prerequisites

Building the mobile library and app requires the following:

  1. Install Java JDK 7 or 8
  2. Install Go 1.6 or higher
  3. Install Android SDK Tools
  4. Install NDK
  5. Install Gradle

Make sure to set these environment variables before trying to build any Android components (replace the paths based on wherever you've installed the Android SDK and NDK).

export ANDROID_HOME=/opt/adt-bundle-mac-x86_64-20130917/sdk
export PATH=$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools:$ANDROID_HOME/build-tools:$PATH
export NDK_HOME=/opt/android-ndk-r10e
export PATH=$NDK_HOME:$PATH
Go Android Library

The core Lantern functionality can be packaged into a native Android library with:

make android-lib
Java Android SDK

The Java-based Android SDK allows easy embedding of Lantern functionality in 3rd party Android apps such as Manoto TV. The SDK can be built with:

make android-sdk
Lantern Mobile Testbed

This simple Android application provides a way to test the Android SDK. It can be built with:

make android-testbed
Lantern Mobile App

Debug

To create a debug build of the full lantern mobile app:

make android-debug

To install on the default device:

make android-install

Release

To create a release build, add the following to your ~/.gradle/gradle.properties file:

KEYSTORE_PWD=$KEYSTORE_PASSWORD
KEYSTORE_FILE=keystore.release.jks
KEY_PWD=$KEY_PASSWORD

You can find the exact values to add to your gradle.properties here.

Then it can be built with:

SECRETS_DIR=$PATH_TO_TOO_MANY_SECRETS \
VERSION=2.0.0-beta1 make android-release
Android Tips
Android Studio

To get the build working for Android Studio, you'll want to add the following dummy values to your ~/.gradle/gradle.properties file:

lanternRevisionDate="April 26, 2016"
lanternVersion=2.2.1
Uninstall for All Users

If you use adb to install and debug an app to your Android device during development and then subsequently build a signed APK and try to install it on that same device, you may receive an unhelpful error saying "App Not Installed". This typically means that you tried to install the same app but signed with a different key. The solution is to uninstall the app first, but you have to uninstall it for all users. You can do this by selecting "Uninstall for all users" from:

Settings -> Apps -> [Pick the App] -> Hamburger Menu (...) -> Uninstall for all users.

If you forget to do this and just uninstall normally, you'll still encounter the error. To fix this, you'll have to run the app with adb again and then uninstall for all users.

Getting HTTP Connections to Use Proxy

In android, programmatic access to HTTP resources typically uses the HttpURLConnection class. You can tell it to use a proxy by setting some system properties:

System.setProperty("http.proxyHost", host);
System.setProperty("http.proxyPort", port);
System.setProperty("https.proxyHost", host);
System.setProperty("https.proxyPort", port);

You can disable proxying by clearing those properties:

System.clearProperty("http.proxyHost");
System.clearProperty("http.proxyPort");
System.clearProperty("https.proxyHost");
System.clearProperty("https.proxyPort");

However, there is one big caveat - HttpURLConnection uses keep-alives to reuse existing TCP connections. These TCP connections will still be using the old proxy settings. This has several implications:

Set the proxy settings as early in the application's lifecycle as possible, ideally before any HttpURLConnections have been opened.

Don't expect the settings to take effect immediately if some HttpURLConnections have already been opened.

Disable keep-alives if you need to, which you can do like this:

HttpURLConnection urlConnection = (HttpURLConnection) url.openConnection();
// Need to force closing so that old connections (with old proxy settings) don't get reused.
urlConnection.setRequestProperty("Connection", "close");

Building Lantern for running on a server

To run Lantern on a server, you simply need to set a flag to build it in headless mode and then tell it to run on any local address as opposed to binding to localhost (so that it's accessible from other machines). You can do this as follows:

  1. HEADLESS=true make docker-linux or, if you're already running on Linux just HEADLESS=true make linux
  2. ./lantern_linux_amd64 --addr 0.0.0.0:8787 or ./lantern_linux_386 --addr 0.0.0.0:8787

Other

Generating assets
make genassets

If the environment variable UPDATE_DIST=true is set, make genassets also updates the resources in the dist folder.

An annotated tag can be added like this:

git tag -a v1.0.0 -m"Tagged 1.0.0"
git push --tags

Use make create-tag as a shortcut for creating and uploading tags:

VERSION='2.0.0-beta5' make create-tag

If you want to both create a package and upload a tag, run the create-tag task right after the packages task:

[...env variables...] make packages create-tag
Updating Icons

The icons used for the system tray are stored in src/github/getlantern/lantern/icons. To apply changes to the icons, make your updates in the icons folder and then run make update-icons.

Continuous Integration with Travis CI

Continuous builds are run on Travis CI. These builds use the .travis.yml configuration. The github.com/getlantern/cf unit tests require an envvars.bash to be populated with credentials for cloudflare. The original envvars.bash is available here. An encrypted version is checked in as envvars.bash.enc, which was encrypted per the instructions here.

Documentation for developers

Dev README

Please, go to README-dev for an in-depth explanation of the Lantern internals and cloud services.

Release README

Please visit README-release for details on building release versions of Lantern.

Translations README

More info for dealing with translations is available in README-translations.

Contributing changes

Lantern is a gost project that provides repeatable builds and consolidated pull requests for lantern.

Go code in Lantern must pass several tests:

You can find a generic git-hook file, which can be used as a pre-push (or pre-commit) hook to automatically ensure these tests are passed before committing any code. Only Go packages in src/github.com/getlantern will be tested, and only those that have changes in them.

Install by copying it into the local .git/hooks/ directory, with the pre-push file name if you want to run it before pushing. Alternatively, you can copy pre-commit.hook to pre-commit to run it before each commit.

ln -s "$(pwd)/prehook.sh" .git/hooks/prehook.sh
ln -s "$(pwd)/pre-push" .git/hooks/pre-push

Important notice

If you must commit without running the hooks, you can run git with the --no-verify flag.

Directories

Path Synopsis
src
code.google.com/p/go-uuid/uuid
The uuid package generates and inspects UUIDs.
The uuid package generates and inspects UUIDs.
code.google.com/p/winsvc/debug
Package debug provides facilities to execute svc.Handler on console.
Package debug provides facilities to execute svc.Handler on console.
code.google.com/p/winsvc/eventlog
Package eventlog implements access to Windows event log.
Package eventlog implements access to Windows event log.
code.google.com/p/winsvc/example
Example service program that beeps.
Example service program that beeps.
code.google.com/p/winsvc/mgr
Package mgr can be used to manage Windows service programs.
Package mgr can be used to manage Windows service programs.
code.google.com/p/winsvc/registry
Package registry provides access to Windows registry.
Package registry provides access to Windows registry.
code.google.com/p/winsvc/svc
Package svc provides everything required to build Windows service.
Package svc provides everything required to build Windows service.
git.torproject.org/pluggable-transports/goptlib.git
Package pt implements the Tor pluggable transports specification.
Package pt implements the Tor pluggable transports specification.
Dummy no-op pluggable transport client.
Dummy no-op pluggable transport server.
git.torproject.org/pluggable-transports/obfs4.git/common/csrand
Package csrand implements the math/rand interface over crypto/rand, along with some utility functions for common random number/byte related tasks.
Package csrand implements the math/rand interface over crypto/rand, along with some utility functions for common random number/byte related tasks.
git.torproject.org/pluggable-transports/obfs4.git/common/drbg
Package drbg implements a minimalistic DRBG based off SipHash-2-4 in OFB mode.
Package drbg implements a minimalistic DRBG based off SipHash-2-4 in OFB mode.
git.torproject.org/pluggable-transports/obfs4.git/common/log
Package log implements a simple set of leveled logging wrappers around the standard log package.
Package log implements a simple set of leveled logging wrappers around the standard log package.
git.torproject.org/pluggable-transports/obfs4.git/common/ntor
Package ntor implements the Tor Project's ntor handshake as defined in proposal 216 "Improved circuit-creation key exchange".
Package ntor implements the Tor Project's ntor handshake as defined in proposal 216 "Improved circuit-creation key exchange".
git.torproject.org/pluggable-transports/obfs4.git/common/probdist
Package probdist implements a weighted probability distribution suitable for protocol parameterization.
Package probdist implements a weighted probability distribution suitable for protocol parameterization.
git.torproject.org/pluggable-transports/obfs4.git/common/replayfilter
Package replayfilter implements a generic replay detection filter with a caller specifiable time-to-live.
Package replayfilter implements a generic replay detection filter with a caller specifiable time-to-live.
git.torproject.org/pluggable-transports/obfs4.git/common/socks5
Package socks5 implements a SOCKS 5 server and the required pluggable transport specific extensions.
Package socks5 implements a SOCKS 5 server and the required pluggable transport specific extensions.
git.torproject.org/pluggable-transports/obfs4.git/common/uniformdh
Package uniformdh implements the Tor Project's UniformDH key exchange mechanism as defined in the obfs3 protocol specification.
Package uniformdh implements the Tor Project's UniformDH key exchange mechanism as defined in the obfs3 protocol specification.
git.torproject.org/pluggable-transports/obfs4.git/obfs4proxy
Go language Tor Pluggable Transport suite.
Go language Tor Pluggable Transport suite.
git.torproject.org/pluggable-transports/obfs4.git/transports
Package transports provides a interface to query supported pluggable transports.
Package transports provides a interface to query supported pluggable transports.
git.torproject.org/pluggable-transports/obfs4.git/transports/base
Package base provides the common interface that each supported transport protocol must implement.
Package base provides the common interface that each supported transport protocol must implement.
git.torproject.org/pluggable-transports/obfs4.git/transports/meeklite
Package meeklite provides an implementation of the Meek circumvention protocol.
Package meeklite provides an implementation of the Meek circumvention protocol.
git.torproject.org/pluggable-transports/obfs4.git/transports/obfs2
Package obfs2 provides an implementation of the Tor Project's obfs2 obfuscation protocol.
Package obfs2 provides an implementation of the Tor Project's obfs2 obfuscation protocol.
git.torproject.org/pluggable-transports/obfs4.git/transports/obfs3
Package obfs3 provides an implementation of the Tor Project's obfs3 obfuscation protocol.
Package obfs3 provides an implementation of the Tor Project's obfs3 obfuscation protocol.
git.torproject.org/pluggable-transports/obfs4.git/transports/obfs4
Package obfs4 provides an implementation of the Tor Project's obfs4 obfuscation protocol.
Package obfs4 provides an implementation of the Tor Project's obfs4 obfuscation protocol.
git.torproject.org/pluggable-transports/obfs4.git/transports/obfs4/framing
Package framing implements the obfs4 link framing and cryptography.
Package framing implements the obfs4 link framing and cryptography.
git.torproject.org/pluggable-transports/obfs4.git/transports/scramblesuit
Package scramblesuit provides an implementation of the ScrambleSuit obfuscation protocol.
Package scramblesuit provides an implementation of the ScrambleSuit obfuscation protocol.
github.com/Yawning/obfs4/common/csrand
Package csrand implements the math/rand interface over crypto/rand, along with some utility functions for common random number/byte related tasks.
Package csrand implements the math/rand interface over crypto/rand, along with some utility functions for common random number/byte related tasks.
github.com/Yawning/obfs4/common/drbg
Package drbg implements a minimalistic DRBG based off SipHash-2-4 in OFB mode.
Package drbg implements a minimalistic DRBG based off SipHash-2-4 in OFB mode.
github.com/Yawning/obfs4/common/log
Package log implements a simple set of leveled logging wrappers around the standard log package.
Package log implements a simple set of leveled logging wrappers around the standard log package.
github.com/Yawning/obfs4/common/ntor
Package ntor implements the Tor Project's ntor handshake as defined in proposal 216 "Improved circuit-creation key exchange".
Package ntor implements the Tor Project's ntor handshake as defined in proposal 216 "Improved circuit-creation key exchange".
github.com/Yawning/obfs4/common/probdist
Package probdist implements a weighted probability distribution suitable for protocol parameterization.
Package probdist implements a weighted probability distribution suitable for protocol parameterization.
github.com/Yawning/obfs4/common/replayfilter
Package replayfilter implements a generic replay detection filter with a caller specifiable time-to-live.
Package replayfilter implements a generic replay detection filter with a caller specifiable time-to-live.
github.com/Yawning/obfs4/common/socks5
Package socks5 implements a SOCKS 5 server and the required pluggable transport specific extensions.
Package socks5 implements a SOCKS 5 server and the required pluggable transport specific extensions.
github.com/Yawning/obfs4/common/uniformdh
Package uniformdh implements the Tor Project's UniformDH key exchange mechanism as defined in the obfs3 protocol specification.
Package uniformdh implements the Tor Project's UniformDH key exchange mechanism as defined in the obfs3 protocol specification.
github.com/Yawning/obfs4/obfs4proxy
Go language Tor Pluggable Transport suite.
Go language Tor Pluggable Transport suite.
github.com/Yawning/obfs4/transports
Package transports provides a interface to query supported pluggable transports.
Package transports provides a interface to query supported pluggable transports.
github.com/Yawning/obfs4/transports/base
Package base provides the common interface that each supported transport protocol must implement.
Package base provides the common interface that each supported transport protocol must implement.
github.com/Yawning/obfs4/transports/meeklite
Package meeklite provides an implementation of the Meek circumvention protocol.
Package meeklite provides an implementation of the Meek circumvention protocol.
github.com/Yawning/obfs4/transports/obfs2
Package obfs2 provides an implementation of the Tor Project's obfs2 obfuscation protocol.
Package obfs2 provides an implementation of the Tor Project's obfs2 obfuscation protocol.
github.com/Yawning/obfs4/transports/obfs3
Package obfs3 provides an implementation of the Tor Project's obfs3 obfuscation protocol.
Package obfs3 provides an implementation of the Tor Project's obfs3 obfuscation protocol.
github.com/Yawning/obfs4/transports/obfs4
Package obfs4 provides an implementation of the Tor Project's obfs4 obfuscation protocol.
Package obfs4 provides an implementation of the Tor Project's obfs4 obfuscation protocol.
github.com/Yawning/obfs4/transports/obfs4/framing
Package framing implements the obfs4 link framing and cryptography.
Package framing implements the obfs4 link framing and cryptography.
github.com/Yawning/obfs4/transports/scramblesuit
Package scramblesuit provides an implementation of the ScrambleSuit obfuscation protocol.
Package scramblesuit provides an implementation of the ScrambleSuit obfuscation protocol.
github.com/agl/ed25519
Package ed25519 implements the Ed25519 signature algorithm.
Package ed25519 implements the Ed25519 signature algorithm.
github.com/agl/ed25519/edwards25519
Package edwards25519 implements operations in GF(2**255-19) and on an Edwards curve that is isomorphic to curve25519.
Package edwards25519 implements operations in GF(2**255-19) and on an Edwards curve that is isomorphic to curve25519.
github.com/akavel/rsrc/ico
Package ico describes Windows ICO file format.
Package ico describes Windows ICO file format.
github.com/davecgh/go-spew/spew
Package spew implements a deep pretty printer for Go data structures to aid in debugging.
Package spew implements a deep pretty printer for Go data structures to aid in debugging.
github.com/dchest/siphash
Package siphash implements SipHash-2-4, a fast short-input PRF created by Jean-Philippe Aumasson and Daniel J. Bernstein.
Package siphash implements SipHash-2-4, a fast short-input PRF created by Jean-Philippe Aumasson and Daniel J. Bernstein.
github.com/fatih/set
Package set provides both threadsafe and non-threadsafe implementations of a generic set data structure.
Package set provides both threadsafe and non-threadsafe implementations of a generic set data structure.
github.com/getlantern/appdir
package appdir provides a facility for determining the system-dependent paths for application resources.
package appdir provides a facility for determining the system-dependent paths for application resources.
github.com/getlantern/autoupdate
Package autoupdate provides Lantern with special tools to autoupdate itself with minimal effort.
Package autoupdate provides Lantern with special tools to autoupdate itself with minimal effort.
github.com/getlantern/badserver
badserver is an HTTP server that misbehaves in some common ways
badserver is an HTTP server that misbehaves in some common ways
github.com/getlantern/balancer
Package balancer provides load balancing of network connections per different strategies.
Package balancer provides load balancing of network connections per different strategies.
github.com/getlantern/buuid
Package buuid provides a type 4 uuid that can be encoded into a 16 byte binary representation as two 64 bit integers in little endian byte order.
Package buuid provides a type 4 uuid that can be encoded into a 16 byte binary representation as two 64 bit integers in little endian byte order.
github.com/getlantern/bytecounting
package bytecounting provides mechanisms for counting bytes read/written on net.Conn and net.Listener.
package bytecounting provides mechanisms for counting bytes read/written on net.Conn and net.Listener.
github.com/getlantern/byteexec
Package byteexec provides a very basic facility for running executables supplied as byte arrays, which is handy when used with github.com/jteeuwen/go-bindata.
Package byteexec provides a very basic facility for running executables supplied as byte arrays, which is handy when used with github.com/jteeuwen/go-bindata.
github.com/getlantern/chained
Package chained provides a chained proxy that can proxy any tcp traffic over any underlying transport through a remote proxy.
Package chained provides a chained proxy that can proxy any tcp traffic over any underlying transport through a remote proxy.
github.com/getlantern/context
Package context provides a mechanism for transparently tracking contextual state associated to the current goroutine and even across goroutines.
Package context provides a mechanism for transparently tracking contextual state associated to the current goroutine and even across goroutines.
github.com/getlantern/deepcopy
package deepcopy provides functionality for making deep copies of objects.
package deepcopy provides functionality for making deep copies of objects.
github.com/getlantern/detour
Package detour provides a net.Conn interface to dial another dialer if a site fails to connect directly.
Package detour provides a net.Conn interface to dial another dialer if a site fails to connect directly.
github.com/getlantern/detour/proxy
package main provides a simple proxy program that uses detour, useful for performance testing.
package main provides a simple proxy program that uses detour, useful for performance testing.
github.com/getlantern/edgedetect
Package edgedetect provides support for detecing whether the default web browser is Microsoft Edge.
Package edgedetect provides support for detecing whether the default web browser is Microsoft Edge.
github.com/getlantern/edgedetect/cmd
This simple test program prints out whether or not the default browser is Edge, which is useful for testing/debugging edgedetect.
This simple test program prints out whether or not the default browser is Edge, which is useful for testing/debugging edgedetect.
github.com/getlantern/elevate
package elevate provides support for executing commands with elevated privileges.
package elevate provides support for executing commands with elevated privileges.
github.com/getlantern/errors
Package errors defines error types used across Lantern project.
Package errors defines error types used across Lantern project.
github.com/getlantern/eventual
Package eventual provides values that eventually have a value.
Package eventual provides values that eventually have a value.
github.com/getlantern/filepersist
package filepersist provdies a mechanism for persisting data to a file at a permanent location
package filepersist provdies a mechanism for persisting data to a file at a permanent location
github.com/getlantern/flashlight/app
Package app implements the desktop application functionality of flashlight
Package app implements the desktop application functionality of flashlight
+build !stub
github.com/getlantern/flashlight/main
flashlight is a lightweight chained proxy that can run in client or server mode.
flashlight is a lightweight chained proxy that can run in client or server mode.
github.com/getlantern/flashlight/ops
Package ops wraps github.com/getlantern/ops with convenience methods for flashlight
Package ops wraps github.com/getlantern/ops with convenience methods for flashlight
github.com/getlantern/flashlight/proxied
Package proxied provides http.Client implementations that use various combinations of chained and direct domain-fronted proxies.
Package proxied provides http.Client implementations that use various combinations of chained and direct domain-fronted proxies.
github.com/getlantern/flashlight/proxy
package proxy provides the implementations of the client and server proxies
package proxy provides the implementations of the client and server proxies
github.com/getlantern/go-dnsimple/dnsimple
Package dnsimple implements a client for the DNSimple API.
Package dnsimple implements a client for the DNSimple API.
github.com/getlantern/go-update
go-update allows a program to update itself by replacing its executable file with a new version.
go-update allows a program to update itself by replacing its executable file with a new version.
github.com/getlantern/golog
Package golog implements logging functions that log errors to stderr and debug messages to stdout.
Package golog implements logging functions that log errors to stderr and debug messages to stdout.
github.com/getlantern/grtrack
Package grtrack provides a utility that helps check for goroutine leaks.
Package grtrack provides a utility that helps check for goroutine leaks.
github.com/getlantern/hex
Package hex implements hexadecimal encoding and decoding.
Package hex implements hexadecimal encoding and decoding.
github.com/getlantern/hidden
Package hidden provides the ability to "hide" binary data in a string using a hex encoding with non-printing characters.
Package hidden provides the ability to "hide" binary data in a string using a hex encoding with non-printing characters.
github.com/getlantern/http-proxy/buffers
Package buffers provides shared byte buffers based on bpool
Package buffers provides shared byte buffers based on bpool
github.com/getlantern/idletiming
package idletiming provides mechanisms for adding idle timeouts to net.Conn and net.Listener.
package idletiming provides mechanisms for adding idle timeouts to net.Conn and net.Listener.
github.com/getlantern/keyman
Package keyman provides convenience APIs around Go's built-in crypto APIs.
Package keyman provides convenience APIs around Go's built-in crypto APIs.
github.com/getlantern/lantern
Package lantern provides an embeddable client-side web proxy
Package lantern provides an embeddable client-side web proxy
github.com/getlantern/launcher
Package launcher configures Lantern to run on system start
Package launcher configures Lantern to run on system start
github.com/getlantern/measured
Package measured wraps a dialer/listener to measure the throughput on those connections.
Package measured wraps a dialer/listener to measure the throughput on those connections.
github.com/getlantern/netx
Package netx provides additional libraries that extend some of the behaviors in the net standard package.
Package netx provides additional libraries that extend some of the behaviors in the net standard package.
github.com/getlantern/ops
Package ops provides a facility for tracking the processing of operations, including contextual metadata about the operation and their final success or failure.
Package ops provides a facility for tracking the processing of operations, including contextual metadata about the operation and their final success or failure.
github.com/getlantern/pathreflect
package pathreflect provides the ability to address an object graph using a path notation and then modify the addressed node.
package pathreflect provides the ability to address an object graph using a path notation and then modify the addressed node.
github.com/getlantern/profiling
package profiling provides support for easily doing CPU and memory profiling from within Go programs.
package profiling provides support for easily doing CPU and memory profiling from within Go programs.
github.com/getlantern/protected
Package protected is used for creating "protected" connections that bypass Android's VpnService
Package protected is used for creating "protected" connections that bypass Android's VpnService
github.com/getlantern/proxiedsites
proxiedsites manages a list of proxied sites, including a default set of sites (cloud) and user-applied customizations to that list.
proxiedsites manages a list of proxied sites, including a default set of sites (cloud) and user-applied customizations to that list.
github.com/getlantern/rot13
Package rot13 provides ROT13 "encryption" and "decryption".
Package rot13 provides ROT13 "encryption" and "decryption".
github.com/getlantern/stack
Package stack implements utilities to capture, manipulate, and format call stacks.
Package stack implements utilities to capture, manipulate, and format call stacks.
github.com/getlantern/systray
Package systray is a cross platfrom Go library to place an icon and menu in the notification area.
Package systray is a cross platfrom Go library to place an icon and menu in the notification area.
github.com/getlantern/tarfs/tarfs
This program generates a go file that embeds resources from a given path as a tar archive in a byte array.
This program generates a go file that embeds resources from a given path as a tar archive in a byte array.
github.com/getlantern/tlsdefaults
Package tlsdefaults provides sensible defaults for using TLS.
Package tlsdefaults provides sensible defaults for using TLS.
github.com/getlantern/tlsdialer
package tlsdialer contains a customized version of crypto/tls.Dial that allows control over whether or not to send the ServerName extension in the client handshake.
package tlsdialer contains a customized version of crypto/tls.Dial that allows control over whether or not to send the ServerName extension in the client handshake.
github.com/getlantern/waitforserver
package waitforserver provides a function to wait for a server at given address.
package waitforserver provides a function to wait for a server at given address.
github.com/getlantern/wfilter
package wfilter provides facilities for adding filtering to io.Writer.
package wfilter provides facilities for adding filtering to io.Writer.
github.com/getlantern/withtimeout
package withtimeout provides functionality for performing operations with a timeout.
package withtimeout provides functionality for performing operations with a timeout.
github.com/getlantern/yaml
Package yaml implements YAML support for the Go language.
Package yaml implements YAML support for the Go language.
github.com/golang/groupcache
Package groupcache provides a data loading mechanism with caching and de-duplication that works across a set of peer processes.
Package groupcache provides a data loading mechanism with caching and de-duplication that works across a set of peer processes.
github.com/golang/groupcache/consistenthash
Package consistenthash provides an implementation of a ring hash.
Package consistenthash provides an implementation of a ring hash.
github.com/golang/groupcache/lru
Package lru implements an LRU cache.
Package lru implements an LRU cache.
github.com/golang/groupcache/singleflight
Package singleflight provides a duplicate function call suppression mechanism.
Package singleflight provides a duplicate function call suppression mechanism.
github.com/gorilla/context
Package context stores values shared during a request lifetime.
Package context stores values shared during a request lifetime.
github.com/gorilla/websocket
Package websocket implements the WebSocket protocol defined in RFC 6455.
Package websocket implements the WebSocket protocol defined in RFC 6455.
github.com/gorilla/websocket/examples/autobahn
Command server is a test server for the Autobahn WebSockets Test Suite.
Command server is a test server for the Autobahn WebSockets Test Suite.
github.com/kardianos/osext
Extensions to the standard "os" package.
Extensions to the standard "os" package.
github.com/kr/binarydist
Package binarydist implements binary diff and patch as described on http://www.daemonology.net/bsdiff/.
Package binarydist implements binary diff and patch as described on http://www.daemonology.net/bsdiff/.
github.com/luisiturrios/gowin
Provide simple Windows OS interface to manipulate windows registry, environment variables, default paths and windows services from Golang lenguaje
Provide simple Windows OS interface to manipulate windows registry, environment variables, default paths and windows services from Golang lenguaje
github.com/mailgun/oxy/cbreaker
Circuit breakers start in the Standby state first, observing responses and watching location metrics.
Circuit breakers start in the Standby state first, observing responses and watching location metrics.
github.com/mailgun/oxy/connlimit
package connlimit provides control over simultaneous connections coming from the same source
package connlimit provides control over simultaneous connections coming from the same source
github.com/mailgun/oxy/forward
package forwarder implements http handler that forwards requests to remote server and serves back the response websocket proxying support based on https://github.com/yhat/wsutil
package forwarder implements http handler that forwards requests to remote server and serves back the response websocket proxying support based on https://github.com/yhat/wsutil
github.com/mailgun/oxy/ratelimit
Tokenbucket based request rate limiter
Tokenbucket based request rate limiter
github.com/mailgun/oxy/roundrobin
package roundrobin implements dynamic weighted round robin load balancer http handler
package roundrobin implements dynamic weighted round robin load balancer http handler
github.com/mailgun/oxy/stream
package stream provides http.Handler middleware that solves several problems when dealing with http requests: Reads the entire request and response into buffer, optionally buffering it to disk for large requests.
package stream provides http.Handler middleware that solves several problems when dealing with http requests: Reads the entire request and response into buffer, optionally buffering it to disk for large requests.
github.com/mailgun/oxy/trace
Package trace implement structured logging of requests
Package trace implement structured logging of requests
github.com/miekg/dns
Package dns implements a full featured interface to the Domain Name System.
Package dns implements a full featured interface to the Domain Name System.
github.com/miekg/dns/dnsutil
Package dnsutil contains higher-level methods useful with the dns package.
Package dnsutil contains higher-level methods useful with the dns package.
github.com/miekg/dns/idn
Package idn implements encoding from and to punycode as speficied by RFC 3492.
Package idn implements encoding from and to punycode as speficied by RFC 3492.
github.com/mitchellh/panicwrap
The panicwrap package provides functions for capturing and handling panics in your application.
The panicwrap package provides functions for capturing and handling panics in your application.
github.com/mxk/go-flowrate/flowrate
Package flowrate provides the tools for monitoring and limiting the flow rate of an arbitrary data stream.
Package flowrate provides the tools for monitoring and limiting the flow rate of an arbitrary data stream.
github.com/oxtoacart/bpool
Package bpool implements leaky pools of byte arrays and Buffers as bounded channels.
Package bpool implements leaky pools of byte arrays and Buffers as bounded channels.
github.com/pmezard/go-difflib/difflib
Package difflib is a partial port of Python difflib module.
Package difflib is a partial port of Python difflib module.
github.com/rcrowley/go-metrics
Go port of Coda Hale's Metrics library <https://github.com/rcrowley/go-metrics> Coda Hale's original work: <https://github.com/codahale/metrics>
Go port of Coda Hale's Metrics library <https://github.com/rcrowley/go-metrics> Coda Hale's original work: <https://github.com/codahale/metrics>
github.com/rcrowley/go-metrics/exp
Hook go-metrics into expvar on any /debug/metrics request, load all vars from the registry into expvar, and execute regular expvar handler
Hook go-metrics into expvar on any /debug/metrics request, load all vars from the registry into expvar, and execute regular expvar handler
github.com/rcrowley/go-metrics/stathat
Metrics output to StatHat.
Metrics output to StatHat.
github.com/skratchdot/open-golang/open
Open a file, directory, or URI using the OS's default application for that object type.
Open a file, directory, or URI using the OS's default application for that object type.
github.com/stretchr/testify
Package testify is a set of packages that provide many tools for testifying that your code will behave as you intend.
Package testify is a set of packages that provide many tools for testifying that your code will behave as you intend.
github.com/stretchr/testify/assert
Package assert provides a set of comprehensive testing tools for use with the normal Go testing system.
Package assert provides a set of comprehensive testing tools for use with the normal Go testing system.
github.com/stretchr/testify/http
Package http DEPRECATED USE net/http/httptest
Package http DEPRECATED USE net/http/httptest
github.com/stretchr/testify/mock
Package mock provides a system by which it is possible to mock your objects and verify calls are happening as expected.
Package mock provides a system by which it is possible to mock your objects and verify calls are happening as expected.
github.com/stretchr/testify/require
Package require implements the same assertions as the `assert` package but stops test execution when a test fails.
Package require implements the same assertions as the `assert` package but stops test execution when a test fails.
github.com/stretchr/testify/suite
Package suite contains logic for creating testing suite structs and running the methods on those structs as tests.
Package suite contains logic for creating testing suite structs and running the methods on those structs as tests.
github.com/vulcand/oxy/cbreaker
Circuit breakers start in the Standby state first, observing responses and watching location metrics.
Circuit breakers start in the Standby state first, observing responses and watching location metrics.
github.com/vulcand/oxy/connlimit
package connlimit provides control over simultaneous connections coming from the same source
package connlimit provides control over simultaneous connections coming from the same source
github.com/vulcand/oxy/forward
package forwarder implements http handler that forwards requests to remote server and serves back the response websocket proxying support based on https://github.com/yhat/wsutil
package forwarder implements http handler that forwards requests to remote server and serves back the response websocket proxying support based on https://github.com/yhat/wsutil
github.com/vulcand/oxy/ratelimit
Tokenbucket based request rate limiter
Tokenbucket based request rate limiter
github.com/vulcand/oxy/roundrobin
package roundrobin implements dynamic weighted round robin load balancer http handler
package roundrobin implements dynamic weighted round robin load balancer http handler
github.com/vulcand/oxy/stream
package stream provides http.Handler middleware that solves several problems when dealing with http requests: Reads the entire request and response into buffer, optionally buffering it to disk for large requests.
package stream provides http.Handler middleware that solves several problems when dealing with http requests: Reads the entire request and response into buffer, optionally buffering it to disk for large requests.
github.com/vulcand/oxy/trace
Package trace implement structured logging of requests
Package trace implement structured logging of requests
golang.org/x/crypto/acme/internal/acme
Package acme provides an ACME client implementation.
Package acme provides an ACME client implementation.
golang.org/x/crypto/bcrypt
Package bcrypt implements Provos and Mazières's bcrypt adaptive hashing algorithm.
Package bcrypt implements Provos and Mazières's bcrypt adaptive hashing algorithm.
golang.org/x/crypto/blowfish
Package blowfish implements Bruce Schneier's Blowfish encryption algorithm.
Package blowfish implements Bruce Schneier's Blowfish encryption algorithm.
golang.org/x/crypto/bn256
Package bn256 implements a particular bilinear group at the 128-bit security level.
Package bn256 implements a particular bilinear group at the 128-bit security level.
golang.org/x/crypto/cast5
Package cast5 implements CAST5, as defined in RFC 2144.
Package cast5 implements CAST5, as defined in RFC 2144.
golang.org/x/crypto/curve25519
Package curve25519 provides an implementation of scalar multiplication on the elliptic curve known as curve25519.
Package curve25519 provides an implementation of scalar multiplication on the elliptic curve known as curve25519.
golang.org/x/crypto/hkdf
Package hkdf implements the HMAC-based Extract-and-Expand Key Derivation Function (HKDF) as defined in RFC 5869.
Package hkdf implements the HMAC-based Extract-and-Expand Key Derivation Function (HKDF) as defined in RFC 5869.
golang.org/x/crypto/md4
Package md4 implements the MD4 hash algorithm as defined in RFC 1320.
Package md4 implements the MD4 hash algorithm as defined in RFC 1320.
golang.org/x/crypto/nacl/box
Package box authenticates and encrypts messages using public-key cryptography.
Package box authenticates and encrypts messages using public-key cryptography.
golang.org/x/crypto/nacl/secretbox
Package secretbox encrypts and authenticates small messages.
Package secretbox encrypts and authenticates small messages.
golang.org/x/crypto/ocsp
Package ocsp parses OCSP responses as specified in RFC 2560.
Package ocsp parses OCSP responses as specified in RFC 2560.
golang.org/x/crypto/openpgp
Package openpgp implements high level operations on OpenPGP messages.
Package openpgp implements high level operations on OpenPGP messages.
golang.org/x/crypto/openpgp/armor
Package armor implements OpenPGP ASCII Armor, see RFC 4880.
Package armor implements OpenPGP ASCII Armor, see RFC 4880.
golang.org/x/crypto/openpgp/clearsign
Package clearsign generates and processes OpenPGP, clear-signed data.
Package clearsign generates and processes OpenPGP, clear-signed data.
golang.org/x/crypto/openpgp/elgamal
Package elgamal implements ElGamal encryption, suitable for OpenPGP, as specified in "A Public-Key Cryptosystem and a Signature Scheme Based on Discrete Logarithms," IEEE Transactions on Information Theory, v.
Package elgamal implements ElGamal encryption, suitable for OpenPGP, as specified in "A Public-Key Cryptosystem and a Signature Scheme Based on Discrete Logarithms," IEEE Transactions on Information Theory, v.
golang.org/x/crypto/openpgp/errors
Package errors contains common error types for the OpenPGP packages.
Package errors contains common error types for the OpenPGP packages.
golang.org/x/crypto/openpgp/packet
Package packet implements parsing and serialization of OpenPGP packets, as specified in RFC 4880.
Package packet implements parsing and serialization of OpenPGP packets, as specified in RFC 4880.
golang.org/x/crypto/openpgp/s2k
Package s2k implements the various OpenPGP string-to-key transforms as specified in RFC 4800 section 3.7.1.
Package s2k implements the various OpenPGP string-to-key transforms as specified in RFC 4800 section 3.7.1.
golang.org/x/crypto/otr
Package otr implements the Off The Record protocol as specified in http://www.cypherpunks.ca/otr/Protocol-v2-3.1.0.html
Package otr implements the Off The Record protocol as specified in http://www.cypherpunks.ca/otr/Protocol-v2-3.1.0.html
golang.org/x/crypto/pbkdf2
Package pbkdf2 implements the key derivation function PBKDF2 as defined in RFC 2898 / PKCS #5 v2.0.
Package pbkdf2 implements the key derivation function PBKDF2 as defined in RFC 2898 / PKCS #5 v2.0.
golang.org/x/crypto/pkcs12
Package pkcs12 implements some of PKCS#12.
Package pkcs12 implements some of PKCS#12.
golang.org/x/crypto/pkcs12/internal/rc2
Package rc2 implements the RC2 cipher https://www.ietf.org/rfc/rfc2268.txt http://people.csail.mit.edu/rivest/pubs/KRRR98.pdf This code is licensed under the MIT license.
Package rc2 implements the RC2 cipher https://www.ietf.org/rfc/rfc2268.txt http://people.csail.mit.edu/rivest/pubs/KRRR98.pdf This code is licensed under the MIT license.
golang.org/x/crypto/poly1305
Package poly1305 implements Poly1305 one-time message authentication code as specified in http://cr.yp.to/mac/poly1305-20050329.pdf.
Package poly1305 implements Poly1305 one-time message authentication code as specified in http://cr.yp.to/mac/poly1305-20050329.pdf.
golang.org/x/crypto/ripemd160
Package ripemd160 implements the RIPEMD-160 hash algorithm.
Package ripemd160 implements the RIPEMD-160 hash algorithm.
golang.org/x/crypto/salsa20
Package salsa20 implements the Salsa20 stream cipher as specified in http://cr.yp.to/snuffle/spec.pdf.
Package salsa20 implements the Salsa20 stream cipher as specified in http://cr.yp.to/snuffle/spec.pdf.
golang.org/x/crypto/salsa20/salsa
Package salsa provides low-level access to functions in the Salsa family.
Package salsa provides low-level access to functions in the Salsa family.
golang.org/x/crypto/scrypt
Package scrypt implements the scrypt key derivation function as defined in Colin Percival's paper "Stronger Key Derivation via Sequential Memory-Hard Functions" (http://www.tarsnap.com/scrypt/scrypt.pdf).
Package scrypt implements the scrypt key derivation function as defined in Colin Percival's paper "Stronger Key Derivation via Sequential Memory-Hard Functions" (http://www.tarsnap.com/scrypt/scrypt.pdf).
golang.org/x/crypto/sha3
Package sha3 implements the SHA-3 fixed-output-length hash functions and the SHAKE variable-output-length hash functions defined by FIPS-202.
Package sha3 implements the SHA-3 fixed-output-length hash functions and the SHAKE variable-output-length hash functions defined by FIPS-202.
golang.org/x/crypto/ssh
Package ssh implements an SSH client and server.
Package ssh implements an SSH client and server.
golang.org/x/crypto/ssh/agent
Package agent implements the ssh-agent protocol, and provides both a client and a server.
Package agent implements the ssh-agent protocol, and provides both a client and a server.
golang.org/x/crypto/ssh/terminal
Package terminal provides support functions for dealing with terminals, as commonly found on UNIX systems.
Package terminal provides support functions for dealing with terminals, as commonly found on UNIX systems.
golang.org/x/crypto/ssh/test
This package contains integration tests for the golang.org/x/crypto/ssh package.
This package contains integration tests for the golang.org/x/crypto/ssh package.
golang.org/x/crypto/twofish
Package twofish implements Bruce Schneier's Twofish encryption algorithm.
Package twofish implements Bruce Schneier's Twofish encryption algorithm.
golang.org/x/crypto/xtea
Package xtea implements XTEA encryption, as defined in Needham and Wheeler's 1997 technical report, "Tea extensions."
Package xtea implements XTEA encryption, as defined in Needham and Wheeler's 1997 technical report, "Tea extensions."
golang.org/x/crypto/xts
Package xts implements the XTS cipher mode as specified in IEEE P1619/D16.
Package xts implements the XTS cipher mode as specified in IEEE P1619/D16.
golang.org/x/mobile/app
Package app lets you write portable all-Go apps for Android and iOS.
Package app lets you write portable all-Go apps for Android and iOS.
golang.org/x/mobile/app/internal/apptest
Package apptest provides utilities for testing an app.
Package apptest provides utilities for testing an app.
golang.org/x/mobile/app/internal/testapp
Small test app used by app/app_test.go.
Small test app used by app/app_test.go.
golang.org/x/mobile/asset
Package asset provides access to application-bundled assets.
Package asset provides access to application-bundled assets.
golang.org/x/mobile/bind
Package bind implements a code generator for gobind.
Package bind implements a code generator for gobind.
golang.org/x/mobile/bind/benchmark
Package benchmark contains benchmarking bound functions for internal use.
Package benchmark contains benchmarking bound functions for internal use.
golang.org/x/mobile/bind/java
Package java implements the Java language bindings.
Package java implements the Java language bindings.
golang.org/x/mobile/bind/objc
Package objc implements the Objective-C language bindings.
Package objc implements the Objective-C language bindings.
golang.org/x/mobile/bind/seq
Package seq implements the machine-dependent seq serialization format.
Package seq implements the machine-dependent seq serialization format.
golang.org/x/mobile/bind/testpkg
Package testpkg contains bound functions for testing the cgo-JNI interface.
Package testpkg contains bound functions for testing the cgo-JNI interface.
golang.org/x/mobile/bind/testpkg/secondpkg
Package secondpkg is imported by bind tests that verify that a bound package can reference another bound package.
Package secondpkg is imported by bind tests that verify that a bound package can reference another bound package.
golang.org/x/mobile/bind/testpkg/simplepkg
Package simplepkg is imported from testpkg and tests two corner cases.
Package simplepkg is imported from testpkg and tests two corner cases.
golang.org/x/mobile/bind/testpkg/unboundpkg
Package simplepkg is imported from testpkg and tests that references to other, unbound packages, are ignored.
Package simplepkg is imported from testpkg and tests that references to other, unbound packages, are ignored.
golang.org/x/mobile/cmd/gobind
Gobind generates language bindings that make it possible to call Go functions from Java and Objective-C. Typically gobind is not used directly.
Gobind generates language bindings that make it possible to call Go functions from Java and Objective-C. Typically gobind is not used directly.
golang.org/x/mobile/cmd/gomobile
Gomobile is a tool for building and running mobile apps written in Go.
Gomobile is a tool for building and running mobile apps written in Go.
golang.org/x/mobile/event/key
Package key defines an event for physical keyboard keys.
Package key defines an event for physical keyboard keys.
golang.org/x/mobile/event/lifecycle
Package lifecycle defines an event for an app's lifecycle.
Package lifecycle defines an event for an app's lifecycle.
golang.org/x/mobile/event/mouse
Package mouse defines an event for mouse input.
Package mouse defines an event for mouse input.
golang.org/x/mobile/event/paint
Package paint defines an event for the app being ready to paint.
Package paint defines an event for the app being ready to paint.
golang.org/x/mobile/event/size
Package size defines an event for the dimensions, physical resolution and orientation of the app's window.
Package size defines an event for the dimensions, physical resolution and orientation of the app's window.
golang.org/x/mobile/event/touch
Package touch defines an event for touch input.
Package touch defines an event for touch input.
golang.org/x/mobile/example/audio
An app that makes a sound as the gopher hits the walls of the screen.
An app that makes a sound as the gopher hits the walls of the screen.
golang.org/x/mobile/example/basic
An app that draws a green triangle on a red background.
An app that draws a green triangle on a red background.
golang.org/x/mobile/example/bind/hello
Package hello is a trivial package for gomobile bind example.
Package hello is a trivial package for gomobile bind example.
golang.org/x/mobile/example/flappy
Flappy Gopher is a simple one-button game that uses the mobile framework and the experimental sprite engine.
Flappy Gopher is a simple one-button game that uses the mobile framework and the experimental sprite engine.
golang.org/x/mobile/example/network
An app that paints green if golang.org is reachable when the app first starts, or red otherwise.
An app that paints green if golang.org is reachable when the app first starts, or red otherwise.
golang.org/x/mobile/exp/app/debug
Package debug provides GL-based debugging tools for apps.
Package debug provides GL-based debugging tools for apps.
golang.org/x/mobile/exp/audio
Package audio provides a basic audio player.
Package audio provides a basic audio player.
golang.org/x/mobile/exp/audio/al
Package al provides OpenAL Soft bindings for Go.
Package al provides OpenAL Soft bindings for Go.
golang.org/x/mobile/exp/f32
Package f32 implements some linear algebra and GL helpers for float32s.
Package f32 implements some linear algebra and GL helpers for float32s.
golang.org/x/mobile/exp/font
Package font provides platform independent access to system fonts.
Package font provides platform independent access to system fonts.
golang.org/x/mobile/exp/gl/glutil
Package glutil implements OpenGL utility functions.
Package glutil implements OpenGL utility functions.
golang.org/x/mobile/exp/sensor
Package sensor provides sensor events from various movement sensors.
Package sensor provides sensor events from various movement sensors.
golang.org/x/mobile/exp/sprite
Package sprite provides a 2D scene graph for rendering and animation.
Package sprite provides a 2D scene graph for rendering and animation.
golang.org/x/mobile/exp/sprite/clock
Package clock provides a clock and time functions for a sprite engine.
Package clock provides a clock and time functions for a sprite engine.
golang.org/x/mobile/exp/sprite/glsprite
Package glsprite implements a sprite Engine using OpenGL ES 2.
Package glsprite implements a sprite Engine using OpenGL ES 2.
golang.org/x/mobile/exp/sprite/portable
Package portable implements a sprite Engine using the image package.
Package portable implements a sprite Engine using the image package.
golang.org/x/mobile/geom
Package geom defines a two-dimensional coordinate system.
Package geom defines a two-dimensional coordinate system.
golang.org/x/mobile/gl
Package gl implements Go bindings for OpenGL ES 2.0 and ES 3.0.
Package gl implements Go bindings for OpenGL ES 2.0 and ES 3.0.
golang.org/x/mobile/internal/binres
Package binres implements encoding and decoding of android binary resources.
Package binres implements encoding and decoding of android binary resources.
golang.org/x/mobile/internal/mobileinit
Package mobileinit contains common initialization logic for mobile platforms that is relevant to both all-Go apps and gobind-based apps.
Package mobileinit contains common initialization logic for mobile platforms that is relevant to both all-Go apps and gobind-based apps.
golang.org/x/net/context
Package context defines the Context type, which carries deadlines, cancelation signals, and other request-scoped values across API boundaries and between processes.
Package context defines the Context type, which carries deadlines, cancelation signals, and other request-scoped values across API boundaries and between processes.
golang.org/x/net/context/ctxhttp
Package ctxhttp provides helper functions for performing context-aware HTTP requests.
Package ctxhttp provides helper functions for performing context-aware HTTP requests.
golang.org/x/net/dict
Package dict implements the Dictionary Server Protocol as defined in RFC 2229.
Package dict implements the Dictionary Server Protocol as defined in RFC 2229.
golang.org/x/net/html
Package html implements an HTML5-compliant tokenizer and parser.
Package html implements an HTML5-compliant tokenizer and parser.
golang.org/x/net/html/atom
Package atom provides integer codes (also known as atoms) for a fixed set of frequently occurring HTML strings: tag names and attribute keys such as "p" and "id".
Package atom provides integer codes (also known as atoms) for a fixed set of frequently occurring HTML strings: tag names and attribute keys such as "p" and "id".
golang.org/x/net/html/charset
Package charset provides common text encodings for HTML documents.
Package charset provides common text encodings for HTML documents.
golang.org/x/net/http2
Package http2 implements the HTTP/2 protocol.
Package http2 implements the HTTP/2 protocol.
golang.org/x/net/http2/h2i
The h2i command is an interactive HTTP/2 console.
The h2i command is an interactive HTTP/2 console.
golang.org/x/net/http2/hpack
Package hpack implements HPACK, a compression format for efficiently representing HTTP header fields in the context of HTTP/2.
Package hpack implements HPACK, a compression format for efficiently representing HTTP header fields in the context of HTTP/2.
golang.org/x/net/icmp
Package icmp provides basic functions for the manipulation of messages used in the Internet Control Message Protocols, ICMPv4 and ICMPv6.
Package icmp provides basic functions for the manipulation of messages used in the Internet Control Message Protocols, ICMPv4 and ICMPv6.
golang.org/x/net/idna
Package idna implements IDNA2008 (Internationalized Domain Names for Applications), defined in RFC 5890, RFC 5891, RFC 5892, RFC 5893 and RFC 5894.
Package idna implements IDNA2008 (Internationalized Domain Names for Applications), defined in RFC 5890, RFC 5891, RFC 5892, RFC 5893 and RFC 5894.
golang.org/x/net/internal/iana
Package iana provides protocol number resources managed by the Internet Assigned Numbers Authority (IANA).
Package iana provides protocol number resources managed by the Internet Assigned Numbers Authority (IANA).
golang.org/x/net/internal/nettest
Package nettest provides utilities for IP testing.
Package nettest provides utilities for IP testing.
golang.org/x/net/internal/timeseries
Package timeseries implements a time series structure for stats collection.
Package timeseries implements a time series structure for stats collection.
golang.org/x/net/ipv4
Package ipv4 implements IP-level socket options for the Internet Protocol version 4.
Package ipv4 implements IP-level socket options for the Internet Protocol version 4.
golang.org/x/net/ipv6
Package ipv6 implements IP-level socket options for the Internet Protocol version 6.
Package ipv6 implements IP-level socket options for the Internet Protocol version 6.
golang.org/x/net/netutil
Package netutil provides network utility functions, complementing the more common ones in the net package.
Package netutil provides network utility functions, complementing the more common ones in the net package.
golang.org/x/net/proxy
Package proxy provides support for a variety of protocols to proxy network data.
Package proxy provides support for a variety of protocols to proxy network data.
golang.org/x/net/publicsuffix
Package publicsuffix provides a public suffix list based on data from http://publicsuffix.org/.
Package publicsuffix provides a public suffix list based on data from http://publicsuffix.org/.
golang.org/x/net/trace
Package trace implements tracing of requests and long-lived objects.
Package trace implements tracing of requests and long-lived objects.
golang.org/x/net/webdav
Package webdav etc etc TODO.
Package webdav etc etc TODO.
golang.org/x/net/webdav/internal/xml
Package xml implements a simple XML 1.0 parser that understands XML name spaces.
Package xml implements a simple XML 1.0 parser that understands XML name spaces.
golang.org/x/net/websocket
Package websocket implements a client and server for the WebSocket protocol as specified in RFC 6455.
Package websocket implements a client and server for the WebSocket protocol as specified in RFC 6455.
golang.org/x/net/xsrftoken
Package xsrftoken provides methods for generating and validating secure XSRF tokens.
Package xsrftoken provides methods for generating and validating secure XSRF tokens.
golang.org/x/sys/unix
Package unix contains an interface to the low-level operating system primitives.
Package unix contains an interface to the low-level operating system primitives.
golang.org/x/sys/windows/registry
Package registry provides access to the Windows registry.
Package registry provides access to the Windows registry.
golang.org/x/sys/windows/svc
Package svc provides everything required to build Windows service.
Package svc provides everything required to build Windows service.
golang.org/x/sys/windows/svc/debug
Package debug provides facilities to execute svc.Handler on console.
Package debug provides facilities to execute svc.Handler on console.
golang.org/x/sys/windows/svc/eventlog
Package eventlog implements access to Windows event log.
Package eventlog implements access to Windows event log.
golang.org/x/sys/windows/svc/example
Example service program that beeps.
Example service program that beeps.
golang.org/x/sys/windows/svc/mgr
Package mgr can be used to manage Windows service programs.
Package mgr can be used to manage Windows service programs.
gopkg.in/bsm/ratelimit.v1
Simple, thread-safe Go rate-limiter.
Simple, thread-safe Go rate-limiter.
gopkg.in/redis.v3
Package redis implements a Redis client.
Package redis implements a Redis client.
gopkg.in/redis.v3/internal/consistenthash
Package consistenthash provides an implementation of a ring hash.
Package consistenthash provides an implementation of a ring hash.

Jump to

Keyboard shortcuts

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