Commit Graph

124 Commits

Author SHA1 Message Date
70f4caac23 move dial functions into golib (#2767) 2022-01-20 20:03:07 +08:00
293003fcdb allow to disable application layer heartbeat to reduce traffic cost (#2758)
fix #2754
2022-01-13 14:26:07 +08:00
ea568e8a4f refactor: refine pkg net utils (#2720)
* refactor: refine pkg net utils

* fix: x

Co-authored-by: blizard863 <760076784@qq.com>
2021-12-28 21:14:57 +08:00
05b1ace21f remove authentication for healthz api (#2672) 2021-11-23 14:14:27 +08:00
f1a51eba18 client: lint 2021-10-19 15:02:45 +08:00
1d26ea440b fix: kcp protocol cause delay release resource (#2621)
Co-authored-by: blizard863 <760076784@qq.com>
2021-10-19 14:57:26 +08:00
0cee1877e3 refactor: move from io/ioutil to io and os package (#2592) 2021-09-29 10:33:57 +08:00
2f74f54f18 Let's get rid of ugly statik (#2255)
* Get rid of ugly statik

go1.16 introduced the embed package, it's the more graceful solution for embedding file into binary.
https://golang.org/pkg/embed/

* remove statik totally

* split go and static files in assets
2021-08-17 20:20:04 +08:00
42745a3da2 frpc: add disable_custom_tls_first_byte to not send first custom tls to frps (#2520) 2021-08-11 23:10:35 +08:00
82f80a22be add healthz api (#2511) 2021-08-04 14:33:53 +08:00
fe4e9b55f3 update github.com/pires/go-proxyproto to v0.5.0 2021-06-21 19:35:52 +08:00
02b12df887 frpc: consider include configs for verify and reload command (#2424) 2021-06-02 23:54:22 +08:00
fbaa5f866e add e2e tests (#2334) 2021-03-31 16:57:39 +08:00
8e25f13201 update: support ipv6 (#2288) 2021-03-10 20:19:58 +08:00
b5aee82ca9 update: support custom tls server name (#2278) 2021-03-07 14:57:23 +08:00
0a2384a283 fix XTCP error handling (#2273) 2021-03-03 20:54:46 +08:00
8fcd4f4a95 client: reconnect more quickly if it's a dial error (#2240) 2021-02-18 16:15:35 +08:00
3621aad1c1 Reconstruct config (#2098)
* refactoring config

* Update by comments
2021-01-26 11:31:08 +08:00
ed61049041 Bugfix: add ipv6 parsing with address of frps (#2163) 2020-12-24 21:48:26 +08:00
127a31ea6a Fix typo (#2089) 2020-11-23 11:38:21 +08:00
0f8040b875 fix create tls work connection (#2013) 2020-09-29 15:44:52 +08:00
3fbdea0f6b rename models to pkg (#2005) 2020-09-23 13:49:14 +08:00
4fff3c7472 Add tls configuration to both client and server (#1974) 2020-09-18 19:58:58 +08:00
48fa618c34 update e2e tests (#1973) 2020-09-07 15:45:44 +08:00
c9fe23eb10 more e2e tests (#1845) 2020-09-07 14:57:23 +08:00
8b75b8b837 fix by golint (#1822) 2020-05-24 17:48:37 +08:00
d193519329 feat: Support user specify udp packet size in config (#1794) 2020-05-07 17:47:36 +08:00
4797136965 feat: support sudp proxy (#1730) 2020-04-22 21:37:45 +08:00
caa6e8cf01 fix: frpc reconnect frps frequently lead to memory leak (#1722) 2020-04-02 10:58:37 +08:00
1db091b381 tcp multiplexing over http connect tunnel 2020-03-05 21:47:49 +08:00
6c6607ae68 feat: add multiple authentication methods, token and oidc.
token is the current token comparison, and oidc generates oidc token using client-credentials flow. in addition - add ping verification using the same method
2020-03-01 10:57:01 +08:00
4a4cf552af send closeProxy msg to server then client start proxy error, fix #1606 2020-02-04 19:41:39 +08:00
42014eea23 improve xtcp, fix #1585 2020-01-03 11:39:44 +08:00
91e46a2c53 support server plugin feature 2019-12-23 20:00:04 +08:00
12cc53d699 update bandwidth_limit 2019-11-09 01:13:30 +08:00
6da093a402 support bandwith limit for one proxy 2019-11-03 01:20:49 +08:00
649f47c345 change log method 2019-10-12 20:13:12 +08:00
5dc8175fc8 Merge pull request #1420 from Hurricanezwf/fix-bad-xtcp-encryption
fix #1347:  bad encryption and compression when use xtcp
2019-09-01 20:49:13 +08:00
dc6a5a29c1 fix bad encryption and compression when use xtcp 2019-08-31 21:24:20 +08:00
fdc6902a90 proxy protocol: fix detect method for IPV4 and IPV6 2019-08-26 11:13:33 +08:00
4dfd851c46 Add docs for common config fields & sessions
Now that the common configuration objects and session objects are part
of a public API, they need to be documented in a way that can be read
with godoc. This commit should lead to easier development with FRP as a
library.
2019-08-24 15:20:34 -07:00
666f122a72 Pass client configuration as an argument
The ClientCommonConf, configuration file path, and server UDP port are
now passed around as arguments instead of being shared between
components as global variables. This allows for multiple clients to
exist in the same process, and allows client.Session to be used as a
library more easily.
2019-08-20 14:08:01 -07:00
bc46e3330a Add an "assets_dir" option for frpc
This option allows users to specify where they want assets to be loaded
from, like the "assets_dir" option that already exists for frps. This
allows library users to use the admin panel without having to bundle
assets with statik.
2019-08-19 16:51:03 -07:00
00bd0a8af4 Load assets for dashboard/admin panel on demand
The client and server services now only attempt to load assets if the
dashboard or admin panel are enabled. This change makes it possible to
use FRP as a library without having to manage assets. If a library user
wants to start a server with the dashboard enabled, they will need to
set the DashboardPort and AssetsDir fields of ServerCommonConf.
2019-08-19 10:10:50 -07:00
757b3613fe fix health check bug, fix #1367 2019-08-09 12:47:27 +08:00
394af08561 close session in login() 2019-08-03 16:43:21 +08:00
5680a88267 fix connection leak when login_fail_exit is false, fix #1335 2019-07-31 00:50:38 +08:00
6a1f15b25e support proxy protocol in unix_domain_socket 2019-04-25 12:01:57 +08:00
b7a73d3469 support proxy protocol for type http 2019-04-10 10:51:01 +08:00
7f9d88c10a fix 2019-04-08 15:39:14 +08:00