antirez
3822a465f2
ACL: ACLFreeUserAndKillClients(): free user later.
...
Soon or later we may have code in freeClient() that may have to deal
with ACLs. Imagine for instance the command proposed multiple times (not
sure if this will ever be accepted but still...):
ONCLOSE DEL mykey
Accumulating commands to run when a client is disconnected. Now the
function is compatible with such use cases.
Related to #5829 .
2019-02-11 16:28:31 +01:00
zhaozhao.zz
5cfa46fd14
ACL: kill the old users clients after load aclfile
2019-02-11 16:26:00 +01:00
John Sully
6059bc7e67
Initial work of multithreaded key-db. Note: Fails tests
2019-02-11 03:36:18 -05:00
John Sully
eefa3e9168
Fastlock fixes
2019-02-10 22:00:19 -05:00
John Sully
bd46c2041e
move ae to C++
2019-02-10 20:24:11 -05:00
John Sully
32d0b3141a
Keep pool allocator up to date (even though we aren't enabling it)
2019-02-10 19:33:07 -05:00
John Sully
adabbca14b
Prevent so many copies of sdslen getting added
2019-02-10 19:31:46 -05:00
John Sully
5be3566838
Performance enhancements!
2019-02-09 13:05:06 -05:00
John Sully
f6736cd713
Reduce memory usage for in place strings by 8 bytes
2019-02-09 13:04:18 -05:00
John Sully
dac1213462
complete rebranding with tests passing
2019-02-09 10:11:46 -05:00
John Sully
5420f93de9
Fix bug where we try to load a database with no name
2019-02-09 07:56:45 -05:00
John Sully
cedd67eaff
remove Redis branding
2019-02-08 17:56:32 -05:00
antirez
48423054ea
ACL: add command fingerprint for CAT subcommand.
2019-02-08 12:40:42 +01:00
antirez
fcd5ff1a76
ACL: add arity check in ACL command where missing.
2019-02-08 12:38:41 +01:00
antirez
66fd5e058f
ACL: ignore modules commands when adding categories.
...
We can't trust modules commands flagging, so module commands must be
always explicitly added, with the exception of +@all that will include
everything. However something like +@readonly should not include command
from modules that may be potentially dangerous: our categories must be
safe and reliable and modules may not be like that.
2019-02-08 11:50:39 +01:00
antirez
87ce87e68c
ACL: load ACL file at startup. Prevent silly configurations.
2019-02-07 17:20:03 +01:00
antirez
b1db13d8fa
ACL: ACLLoadFromFile(): several errors fixed to make it work.
2019-02-07 17:07:51 +01:00
antirez
434489abb7
ACL: ACLLoadFromFile(), restore DefaultUser global.
2019-02-07 17:00:35 +01:00
antirez
68d127d7b6
ACL: fix fgets wrong buffer size.
2019-02-07 16:53:41 +01:00
antirez
735cb69f12
ACL: add assertion and fix comment typo.
2019-02-07 16:47:14 +01:00
antirez
61c7688b75
ACL: fix a few ACLLoadFromFile() errors and finish ACLFreeUsersSet().
2019-02-07 16:20:49 +01:00
antirez
f7b86d2b8f
ACL: WIP: preserve the old config on loading errors.
2019-02-07 12:57:21 +01:00
antirez
dfb8b08f30
ACL: implement LOAD subcommand plus some minor rafactoring.
2019-02-07 12:20:30 +01:00
antirez
a980f6168e
ACL: fix and complete ACLLoadFromFile() loading step.
2019-02-07 12:04:25 +01:00
antirez
dc8605f944
ACL: now ACLLoadFromFile() validates against fake user.
2019-02-06 16:44:55 +01:00
antirez
1922f590d2
ACL: refactoring creation of unlinked users.
2019-02-06 16:19:17 +01:00
antirez
1050774a5b
ACL: initial design for ACLLoadFromFile() function.
2019-02-06 12:39:11 +01:00
John Sully
564dabd0a2
Support AWS S3 saving via the s3 cli tools
2019-02-06 01:06:48 -05:00
John Sully
ef310bc7f8
Merge branch 'unstable' of https://github.com/antirez/redis into unstable
2019-02-06 00:09:39 -05:00
John Sully
cd8145e314
Make main headers C++ safe, and change rdb to use file descriptor instead of FILE pointer
2019-02-05 23:36:40 -05:00
antirez
53318b9e3f
ACL: ability to configure an external ACL file.
2019-02-05 17:49:52 +01:00
antirez
83bb71e27c
ACL: change behavior of redefined user. Last line counts.
2019-02-05 10:52:05 +01:00
antirez
1bdc63cc01
ACL: implement rewriting of users in redis.conf.
2019-02-05 10:48:17 +01:00
John Sully
3e61388df3
complete malloc memory class work, and pass tests
2019-02-04 16:56:13 -05:00
antirez
3aaed6dc39
ACL: fix user/rule inverted error message.
2019-02-04 16:58:35 +01:00
antirez
b67e46953b
ACL: load the defined users at server startup.
2019-02-04 16:39:07 +01:00
antirez
e3c8db819b
ACL: implement ACLLoadConfiguredUsers().
2019-02-04 16:35:15 +01:00
antirez
7e4b4cd327
ACL: better error reporting in users configuration errors.
2019-02-04 13:04:35 +01:00
antirez
8dce634f5c
ACL: make ACLAppendUserForLoading() able to report bad argument.
2019-02-04 13:00:58 +01:00
antirez
73efcef7cb
ACL: initial appending of users in user loading list.
2019-02-04 12:55:48 +01:00
John Sully
e28d9adeee
Properly integrate memkind
2019-02-01 15:21:00 -05:00
John Sully
4a84628bf0
Support configurable file backed scratch
2019-02-01 13:54:59 -05:00
antirez
be0e1c0363
ACL: implement ACLAppendUserForLoading().
2019-02-01 13:02:59 +01:00
antirez
276a5f296c
ACL: skeleton and first ideas for postponed user loading.
2019-02-01 12:20:09 +01:00
antirez
c68174b5e5
ACL: set modules help clients to the root user.
...
It does not make much sense to limit what modules can do: the admin
should instead limit what module commnads an user may call. So
RedisModule_Call() and other module operations should be able to execute
everything they want: the limitation should be posed by the API exported
by the module itself.
2019-02-01 11:37:28 +01:00
antirez
ee57594c0f
ACL: assign ACL command ID to modules commands.
2019-02-01 08:17:24 +01:00
antirez
fee5fa6f00
ACL: implement DELUSER.
2019-01-31 18:33:14 +01:00
antirez
1b257d00ca
ACL: check arity of LIST / USERS subcommand.
2019-01-31 18:32:49 +01:00
antirez
b351e6bca2
ACL: don't emit useless flags in ACLDescribeUser().
2019-01-31 17:04:42 +01:00
antirez
c2e174aacd
ACL: implement LIST and USERS subcommands.
2019-01-31 17:01:32 +01:00