2
0
mirror of https://github.com/soheilhy/cmux.git synced 2024-11-10 11:41:52 +08:00
Commit Graph

41 Commits

Author SHA1 Message Date
Tamir Duberstein
5746da9df6 DRY 2016-02-21 12:59:08 -05:00
Tamir Duberstein
b5e73ea381 remove named returns and useless closures 2016-02-21 12:09:02 -05:00
Tamir Duberstein
ecc37f82cd let the kernel assign ports 2016-02-21 12:07:55 -05:00
Tamir Duberstein
4f1b8abafd Add Go 1.5 & 1.6 to Travis CI 2016-02-21 12:02:55 -05:00
Tamir Duberstein
92a63c4fce errcheck
go/src/github.com/soheilhy/cmux/cmux.go:127:13	c.Close()
go/src/github.com/soheilhy/cmux/cmux.go:134:9	c.Close()
go/src/github.com/soheilhy/cmux/cmux.go:137:15	m.root.Close()
go/src/github.com/soheilhy/cmux/cmux_test.go:43:9	s.Serve(l)
go/src/github.com/soheilhy/cmux/cmux_test.go:52:20	defer r.Body.Close()
go/src/github.com/soheilhy/cmux/cmux_test.go:72:12	s.Register(TestRPCRcvr{})
go/src/github.com/soheilhy/cmux/cmux_test.go:103:15	defer l.Close()
go/src/github.com/soheilhy/cmux/cmux_test.go:109:15	go muxl.Serve()
go/src/github.com/soheilhy/cmux/cmux_test.go:116:20	defer r.Body.Close()
go/src/github.com/soheilhy/cmux/cmux_test.go:125:15	defer l.Close()
go/src/github.com/soheilhy/cmux/cmux_test.go:133:15	go muxl.Serve()
go/src/github.com/soheilhy/cmux/cmux_test.go:141:15	defer l.Close()
go/src/github.com/soheilhy/cmux/cmux_test.go:147:15	go muxl.Serve()
go/src/github.com/soheilhy/cmux/example_recursive_test.go:27:9	s.Serve(l)
go/src/github.com/soheilhy/cmux/example_recursive_test.go:56:12	s.Register(&RecursiveRPCRcvr{})
go/src/github.com/soheilhy/cmux/example_recursive_test.go:88:15	go tlsm.Serve()
go/src/github.com/soheilhy/cmux/example_recursive_test.go:89:12	tcpm.Serve()
go/src/github.com/soheilhy/cmux/example_test.go:30:9	s.Serve(l)
go/src/github.com/soheilhy/cmux/example_test.go:34:9	io.Copy(ws, ws)
go/src/github.com/soheilhy/cmux/example_test.go:41:9	s.Serve(l)
go/src/github.com/soheilhy/cmux/example_test.go:53:12	s.Register(&ExampleRPCRcvr{})
go/src/github.com/soheilhy/cmux/example_test.go:68:13	grpcs.Serve(l)
go/src/github.com/soheilhy/cmux/example_test.go:97:9	m.Serve()
go/src/github.com/soheilhy/cmux/example_tls_test.go:24:9	s.Serve(l)
go/src/github.com/soheilhy/cmux/example_tls_test.go:69:9	m.Serve()
go/src/github.com/soheilhy/cmux/matchers.go:151:14	hdec.Write(f.HeaderBlockFragment())
2016-02-21 12:02:37 -05:00
Soheil Hassas Yeganeh
ec462e9c0e Replace log.Fatal with log.Panic 2016-02-21 10:46:12 -05:00
Tamir Duberstein
6c298ce7b1 Simplify formatting in patricia.go
`gofmt -s -w .`
2016-02-21 10:41:14 -05:00
Soheil Hassas Yeganeh
3ca13bcd9e Remove the unncessary var and const blocks 2016-02-21 10:37:29 -05:00
Tamir Duberstein
48deeb47a3 golint
cmux.go:28:1: exported method ErrNotMatched.Temporary should have comment or be unexported
cmux.go:29:1: exported method ErrNotMatched.Timeout should have comment or be unexported
cmux.go:38:2: exported var ErrListenerClosed should have comment or be unexported
cmux.go:165:6: exported type MuxConn should have comment or be unexported
2016-02-21 10:34:32 -05:00
Tamir Duberstein
05566d752e vet: buffer_test.go:65: possible formatting directive in Fatal call 2016-02-21 10:33:47 -05:00
Soheil Hassas Yeganeh
345ba38c5f Merge pull request #6 from emosbaugh/flag_parse_in_library
rely on project to call flag.Parse rather than when used as library
2016-02-20 13:50:53 -05:00
Ethan Mosbaugh
4ebe86a5a2 rely on project to call flag.Parse rather than when used as library 2016-02-09 07:53:32 -08:00
Tamir Duberstein
563c371a98 Cleanup code in cmux and bench_test.
This commit is a partial cherry pick of pull request #3, for code cleanup.
2015-12-19 22:37:27 -05:00
Soheil Hassas Yeganeh
89dd8ce1fd Return an error in Accept() when root is closed.
As reported in #4, when the root listener is closed, calling Accept
on mux'd listeners would block forever, instead of returning an error.
This is because of a bug introduced in b90740d.

This commit fixes #4 by selecting on both donec and connc of muxed
listeners.

Added a test case to guard against this issue.
2015-12-19 22:28:37 -05:00
Soheil Hassas Yeganeh
44439c27f0 Merge pull request #2 from tamird/update-readme-reasons
README: clarify why TLS is limited
2015-12-13 15:36:20 -05:00
Tamir Duberstein
4239e597d0 README: clarify why TLS is limited 2015-12-11 15:22:57 -05:00
Dmitri Shuralyov
44b568c84b Update to correct vanity import paths.
The latest canonical import path for http2 package is
"golang.org/x/net/http2".

The latest canonical import path for grpc examples is
"google.golang.org/grpc/examples/...".
2015-11-25 23:19:45 -05:00
Soheil Hassas Yeganeh
1734b4cc90 Change the import path to the new grpc-go repo
gRPC examples have been migrated from the grpc-common repo to their
language-specific repos. This commit uses the new import path.
2015-08-30 21:15:41 -04:00
Soheil Hassas Yeganeh
b90740dfa9 Fix send on closed channel
If a matcher go-routine mateches a connection after the root
listener was closed, cmux will panic since all connection channels
will be closed. This commit avoids closing connection channels but
signals the matcher go-routines that the listener is closed via
a done channel.

Tested: Added a test case for this issue.
2015-08-30 21:10:18 -04:00
Soheil Hassas Yeganeh
d47edebeb9 Add websocket example
This commit fixes #1 and adds an example matcher for websocket.
2015-08-05 17:32:32 -04:00
Soheil Hassas Yeganeh
a6c45318a5 Nit in README 2015-08-01 12:44:34 -04:00
Soheil Hassas Yeganeh
51556c6df5 Add an example for recursive muxing 2015-08-01 12:08:59 -04:00
Soheil Hassas Yeganeh
fbd0877935 Use a custom buffer intead of buffers from bytes
This commit implements a new buffer that eliminates a few copies.
2015-08-01 11:59:50 -04:00
Soheil Hassas Yeganeh
77815df398 Add micro-benchmarks 2015-08-01 11:57:42 -04:00
Soheil Hassas Yeganeh
5b048e6641 Add the license file 2015-08-01 10:36:36 -04:00
Soheil Hassas Yeganeh
09b35f69d5 Remove trailing spaces in README 2015-07-31 19:57:20 -04:00
Soheil Hassas Yeganeh
581432eab8 Mux connections in parallel
This commit launches a go-routine for each accepted connection, to match
them in parallel.
2015-07-31 19:42:28 -04:00
Soheil Hassas Yeganeh
fa65c0526e Add an example for serving HTTP and HTTPS
This commit adds a simple Go doc example for serving HTTP and HTTPS on
the same port.
2015-07-31 11:49:28 -04:00
Soheil Hassas Yeganeh
0417b90d39 Add Go RPC in the README example 2015-07-30 11:03:07 -04:00
Soheil Hassas Yeganeh
2e42ad4f75 Nit in README 2015-07-30 10:00:00 -04:00
Soheil Hassas Yeganeh
a9ff8fbcc0 Elaborate on the limitations in README 2015-07-30 00:10:59 -04:00
Soheil Hassas Yeganeh
69469eaa1c Nit in README 2015-07-29 19:39:19 -04:00
Soheil Hassas Yeganeh
084f5e19e6 Nit in README 2015-07-29 17:35:55 -04:00
Soheil Hassas Yeganeh
6194168d4e Remove the bugos http2.Configure from tests
http2.Configure is not functional with cmux. Asked for
exporting http2.Server.HandleConn().
2015-07-29 17:23:53 -04:00
Soheil Hassas Yeganeh
549d3f9344 Nit in README 2015-07-29 14:53:29 -04:00
Soheil Hassas Yeganeh
cc3a35aef1 Implement the matcher HTTP1 fields
This commit adds the implementation for HTTP 1 header fields.
2015-07-29 14:49:37 -04:00
Soheil Hassas Yeganeh
98f6f6f272 Nit in README
Fix the broken godoc link.
2015-07-29 14:40:09 -04:00
Soheil Hassas Yeganeh
033dffc90d Rename selectors.go to matchers.go to be consitent 2015-07-29 14:07:52 -04:00
Soheil Hassas Yeganeh
ea0a73f55e Nit in README
Make capitalizations consistent.
2015-07-29 14:02:24 -04:00
Soheil Hassas Yeganeh
2863fc463a Fix the broken godoc status link in README 2015-07-29 13:59:57 -04:00
Soheil Hassas Yeganeh
754f5b897d Initial commit 2015-07-29 13:49:26 -04:00