Skip to content

Commit 897b82a

Browse files
authored
MOD-14124 Add RM_GetContextUser api (#85)
Add RM_GetContextUser api to retrieve the RedisModuleUser set via RM_SetContextUser, allowing modules to access the user associated with RM_Call ACL checks. <!-- CURSOR_SUMMARY --> --- > [!NOTE] > **Low Risk** > Low-risk header-only API surface change; main concern is ABI/compatibility for modules running against older Redis versions where `RedisModule_GetContextUser` may be unavailable. > > **Overview** > Adds a new module API entrypoint, `RedisModule_GetContextUser`, to retrieve the `RedisModuleUser` previously set on a context via `RedisModule_SetContextUser`. > > Updates `RedisModule_Init` to resolve and expose this function via `REDISMODULE_GET_API(GetContextUser)` so modules can read the context user (e.g., for ACL-aware `RM_Call` flows). > > <sup>Written by [Cursor Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit 3064ed1. This will update automatically on new commits. Configure [here](https://cursor.com/dashboard?tab=bugbot).</sup> <!-- /CURSOR_SUMMARY -->
1 parent c7b1e1f commit 897b82a

File tree

1 file changed

+2
-0
lines changed

1 file changed

+2
-0
lines changed

redismodule.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1379,6 +1379,7 @@ REDISMODULE_API size_t (*RedisModule_MallocSizeDict)(RedisModuleDict* dict) REDI
13791379
REDISMODULE_API RedisModuleUser * (*RedisModule_CreateModuleUser)(const char *name) REDISMODULE_ATTR;
13801380
REDISMODULE_API void (*RedisModule_FreeModuleUser)(RedisModuleUser *user) REDISMODULE_ATTR;
13811381
REDISMODULE_API void (*RedisModule_SetContextUser)(RedisModuleCtx *ctx, const RedisModuleUser *user) REDISMODULE_ATTR;
1382+
REDISMODULE_API const RedisModuleUser * (*RedisModule_GetContextUser)(RedisModuleCtx *ctx) REDISMODULE_ATTR;
13821383
REDISMODULE_API int (*RedisModule_SetModuleUserACL)(RedisModuleUser *user, const char* acl) REDISMODULE_ATTR;
13831384
REDISMODULE_API int (*RedisModule_SetModuleUserACLString)(RedisModuleCtx * ctx, RedisModuleUser *user, const char* acl, RedisModuleString **error) REDISMODULE_ATTR;
13841385
REDISMODULE_API RedisModuleString * (*RedisModule_GetModuleUserACLString)(RedisModuleUser *user) REDISMODULE_ATTR;
@@ -1778,6 +1779,7 @@ static int RedisModule_Init(RedisModuleCtx *ctx, const char *name, int ver, int
17781779
REDISMODULE_GET_API(CreateModuleUser);
17791780
REDISMODULE_GET_API(FreeModuleUser);
17801781
REDISMODULE_GET_API(SetContextUser);
1782+
REDISMODULE_GET_API(GetContextUser);
17811783
REDISMODULE_GET_API(SetModuleUserACL);
17821784
REDISMODULE_GET_API(SetModuleUserACLString);
17831785
REDISMODULE_GET_API(GetModuleUserACLString);

0 commit comments

Comments
 (0)