Commit Graph

2043 Commits

Author SHA1 Message Date
Zaiming Shi
9b3ab169ce chore(versioning): detach package version from emqx app version 2021-03-04 20:24:58 +01:00
Zaiming Shi
42098b497f
Merge pull request #4283 from zmstone/add-emqx-http-lib
refactor(http-lib): Add emqx_http_lib
2021-03-04 07:14:02 +01:00
zhanghongtong
67c8b2eed7 chore: update emqx.app.src version 2021-03-04 08:10:48 +08:00
Zaiming Shi
63c001a7aa refactor(http-lib): Add emqx_http_lib
So far only uri_encode and uri_decode APIs
2021-03-03 21:38:10 +01:00
z8674558
3daefe954b chore(src): fix elvis 2021-03-03 20:06:31 +09:00
z8674558
a8558bc7b5 chore(emqx_channel): ignore peer_cert_as/5 from dialyzer 2021-03-03 20:06:31 +09:00
z8674558
e1b915b91c chore(emqx_tracer): pass proper map 2021-03-03 20:06:31 +09:00
zhanghongtong
cae0849152 fix(emqx_channel): fix bug when publish deny
fix the bug of replying to puback when the publish message with Qos equal to 2 is deny
2021-03-02 17:54:22 +08:00
Zaiming Shi
dd06d70bce refactor(build): Move parse_transform module to root app
So we do not have to workaround the compile order issue
2021-03-02 08:40:19 +08:00
Zaiming Shi
6e0b53fbb9 fix(eunit): fix emqx_tls_lib_tests 2021-03-01 21:00:17 +08:00
Zaiming Shi
0a51bd4c2f fix(webhook): Call common lib for ssl options 2021-03-01 21:00:17 +08:00
Zaiming Shi
700fa71754 refactor(tls): abstract lib for tls options parsing 2021-03-01 21:00:17 +08:00
z8674558
64ac20eec5 chore(emqx_listeners): fix clauses for dialyzer 2021-03-01 16:56:21 +08:00
z8674558
6ea4501de4 chore(emqx_listeners): fix type 2021-03-01 16:56:21 +08:00
Zaiming Shi
3dfa9f45c4
Merge pull request #4183 from zmstone/merge-e4.2.4-to-dev-4.3.0
Merge e4.2.4 to dev 4.3.0
2021-02-19 10:26:47 +01:00
Zaiming Shi
71d02e8011 chore(emqx_connection): delete stale code 2021-02-19 10:20:16 +01:00
Benjamin Große
ca1d24a98d feature(mgmt): restart a listener
example:

```
emqx_ctl listener restart mqtt:ssl:external
```

or

```
PUT /api/v4/listeners/mqtt:ssl:external/restart
```

thank you @zmstone for providing the listener-identifier apis :)
2021-02-19 09:22:47 +01:00
Zaiming Shi
98b319a0c0
Merge pull request #4190 from zmstone/refactor-assing-names-to-listeners
feat(listeners): Add identifier to listeners
2021-02-19 07:50:27 +01:00
Zaiming Shi
64cfaf4385 improve(print): io:format error message without indentation
Avoid squeezing lines to the right.
2021-02-19 07:45:37 +01:00
Benjamin Große
28f9b4d519 feat(peer_cert_as_clientid): peer_cert_as_clientid = cn | dn | crt | pem | md5
pem is base64 encoded instead of binary crt

peer_cert_as_username=crt breaks exhook proto utf8 parsing of username

crt cannot be used in a topic name due to being invalid utf8
pem cannot be used in a topic name due to having slashes

peer_cert_as_clientid = md5 allows to e.g. subscribe to "t/%c" with ACL

existing peer_cert_as_username combinations are unaffected.
2021-02-19 10:53:11 +08:00
Zaiming Shi
d2bd9b4078
Merge pull request #4197 from zmstone/improve-shared-sup-random-start-point-for-roundrobin
improve(shared-sub): Randomise the startpoint for round-robin
2021-02-18 13:26:01 +01:00
Zaiming Shi
db461179c5 improve(shared-sub): Randomise the startpoint for round-robin 2021-02-17 19:10:37 +01:00
Shawn
eec64e440d
fix(tracer): create short handler-id if clientid is too long (#4164)
* fix(tracer): create short handler-id if clientid is too long

No need to support lists and atoms for when tracing clients/topics.
2021-02-16 14:45:33 +08:00
Zaiming Shi
a93d62ace6 refactor(cli): Print listener ID as table head 2021-02-15 10:34:47 +01:00
Zaiming Shi
f9465dda16 Merge branch 'dev/v4.3.0' into merge-e4.2.4-to-dev-4.3.0 2021-02-14 21:41:23 +01:00
Zaiming Shi
c5a02c729a feat(listeners): Add an api to ensure all listeners are started 2021-02-14 21:30:50 +01:00
Zaiming Shi
dfa9bbc0c2 refactor(listeners): use emqx_ctl to print cli messages
It's better to keep cli print behaviour consistent.

It also makes tests easier as they can meck emqx_ctl:print to
validate the output.
2021-02-14 20:40:01 +01:00
Zaiming Shi
153977609e feat(listeners): Add identifier to listeners
Listeners are internally identifiered by the listen-on tuple
which is not UI friendly when we have to find a listener by this
'signature'.

The listeners are actually named in configs, but the names are
discarded in the parsing functions.

This commit is to keep the name and provide an API to find
listener by name (identifier).
2021-02-14 18:12:40 +01:00
Zaiming Shi
dc184574a3 chore(style): fix elvis check for emqx_access_rule 2021-02-13 11:54:09 +01:00
Zaiming Shi
406a7d60c7 chore(style): fix elvis check for emqx_connection 2021-02-13 11:50:17 +01:00
Zaiming Shi
9b82112b7c Merge remote-tracking branch 'origin/dev/e4.3.0' into merge-e4.2.4-to-dev-4.3.0 2021-02-13 11:10:08 +01:00
Zaiming Shi
f000b6583c fix(tls): Ensure tls config integrity
For default tsl version and ciphers, we try to use otp release number
to determin if we want to use tlsv1.3

For default configs, we try to porivde both tlsv1.3 and
ciphers in config (even for commented out configs)
2021-02-09 22:56:28 +01:00
Zaiming Shi
2852ac79d4 feat(tls): Add a tls lib module
emqx_tls_lib is added to help ensure integrity of tls version
and cipher options.
2021-02-09 21:20:26 +01:00
Zaiming Shi
7aff861f9b refactor(emqx_modules): Move emqx_modules to lib-opensource
emqx_moduels for enterprise is refactored as a lib/plugin
in order to avoid merge conflicts, we make sure they can
co-exist in the same branch, because lib-opensource is compiled
in opensource project and lib-enterprise (to be added) is
compiled in enterprise project
2021-02-08 21:35:44 +01:00
emqx-ci-robot
6c1129dc6a
Auto-pull-request-on-2021-01-29 (#4114)
* fix(share sub): fix the issue that the number of subscriptions dropped to 0 during the picking subscriber and caused a crash

* Connection Busy Alarms (#3992)

feat(emqx_connection): improve port_busy alarm

* fix(emqx_connection): tune the congestion alarm params

* chore(deps): upgrade esockd to 5.7.5
* fix(appup): correct the appup file
2021-01-30 10:30:18 +08:00
zhanghongtong
d78b2b23c1 chore(build): update pkg version 2021-01-29 19:29:41 +08:00
tigercl
5878950dc3
feat(websocket): support for checking subprotocols (#4099) 2021-01-28 20:42:57 +08:00
JianBo He
02cb8d0211 chore(style): set warnings_as_errors compile option 2021-01-27 18:02:12 +08:00
Zaiming Shi
de972b3d84 fix(emqx_vm): Call recon_alloc:allocators/0 to get allocators 2021-01-23 11:42:28 +01:00
Zaiming Shi
23b2f4fa72
Merge pull request #4050 from zmstone/chore-delete-stale-code
chore(emqx_vm): delete stale code
2021-01-23 11:13:22 +01:00
JianBo He
7c3cd26589 chore(elvis): fix elvis wanrings 2021-01-23 18:07:58 +08:00
JianBo He
f59377adf5 fix(logs): print the correct username and clientid 2021-01-23 18:07:58 +08:00
Zaiming Shi
33c35915ca refactor(emqx_vm): make elvis happy 2021-01-22 09:23:20 +01:00
Zaiming Shi
4680ba574c chore(emqx_vm): Delete get_ets_object, not used 2021-01-22 09:21:45 +01:00
Zaiming Shi
47df29ae49 chore(emqx_vm): delete stale code
The port binary format is no longer compatible in OTP 23
2021-01-22 07:50:00 +01:00
Zaiming Shi
0087303b25 feat(shared_sub): Support hashing from source topic. 2021-01-21 21:05:56 +01:00
Zaiming Shi
5aa63ed203 fix(shared_sub): align default value and default config
Shared subscription default dispatch strategy is 'random' in config
but 'round_robin' in code. This commit is to make sure they are the
same: both are 'random'.
2021-01-21 21:05:56 +01:00
Zaiming Shi
598207e308 fix(ws_connection): proplists:get_bool for boolean flags 2021-01-15 14:28:22 +01:00
ayodele.akingbule
5794a708ed feat(emqx_ws_connection): Prevent EMQX from CSWSH Cross-Site Web-Socket Hijack 2021-01-15 14:28:22 +01:00
JianBo He
32b23b9181 Revert "feat(auth_http): support for getting websocket cookies"
This reverts commit 5427057c2c.
2021-01-14 15:10:48 +01:00