annotate mod_groups_shell/mod_groups_shell.lua @ 5401:c8d04ac200fc

mod_http_oauth2: Reject loopback URIs as client_uri This really should be a proper website with info, https://localhost is not good enough. Ideally we'd validate that it's got proper DNS and is actually reachable, but triggering HTTP or even DNS lookups seems like it would carry abuse potential that would best to avoid.
author Kim Alvefur <zash@zash.se>
date Tue, 02 May 2023 16:20:55 +0200
parents 8b69e0b56db2
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
4431
8b69e0b56db2 mod_groups_shell: add an admin shell command for updating bookmarks
Jonas Schäfer <jonas@wielicki.name>
parents:
diff changeset
1 module:set_global()
8b69e0b56db2 mod_groups_shell: add an admin shell command for updating bookmarks
Jonas Schäfer <jonas@wielicki.name>
parents:
diff changeset
2
8b69e0b56db2 mod_groups_shell: add an admin shell command for updating bookmarks
Jonas Schäfer <jonas@wielicki.name>
parents:
diff changeset
3 local modulemanager = require "core.modulemanager";
8b69e0b56db2 mod_groups_shell: add an admin shell command for updating bookmarks
Jonas Schäfer <jonas@wielicki.name>
parents:
diff changeset
4
8b69e0b56db2 mod_groups_shell: add an admin shell command for updating bookmarks
Jonas Schäfer <jonas@wielicki.name>
parents:
diff changeset
5 local shell_env = module:shared("/*/admin_shell/env")
8b69e0b56db2 mod_groups_shell: add an admin shell command for updating bookmarks
Jonas Schäfer <jonas@wielicki.name>
parents:
diff changeset
6
8b69e0b56db2 mod_groups_shell: add an admin shell command for updating bookmarks
Jonas Schäfer <jonas@wielicki.name>
parents:
diff changeset
7 shell_env.groups = {};
8b69e0b56db2 mod_groups_shell: add an admin shell command for updating bookmarks
Jonas Schäfer <jonas@wielicki.name>
parents:
diff changeset
8
8b69e0b56db2 mod_groups_shell: add an admin shell command for updating bookmarks
Jonas Schäfer <jonas@wielicki.name>
parents:
diff changeset
9 function shell_env.groups:sync_group(host, group_id)
8b69e0b56db2 mod_groups_shell: add an admin shell command for updating bookmarks
Jonas Schäfer <jonas@wielicki.name>
parents:
diff changeset
10 local print = self.session.print;
8b69e0b56db2 mod_groups_shell: add an admin shell command for updating bookmarks
Jonas Schäfer <jonas@wielicki.name>
parents:
diff changeset
11
8b69e0b56db2 mod_groups_shell: add an admin shell command for updating bookmarks
Jonas Schäfer <jonas@wielicki.name>
parents:
diff changeset
12 if not host then
8b69e0b56db2 mod_groups_shell: add an admin shell command for updating bookmarks
Jonas Schäfer <jonas@wielicki.name>
parents:
diff changeset
13 return false, "host not given"
8b69e0b56db2 mod_groups_shell: add an admin shell command for updating bookmarks
Jonas Schäfer <jonas@wielicki.name>
parents:
diff changeset
14 end
8b69e0b56db2 mod_groups_shell: add an admin shell command for updating bookmarks
Jonas Schäfer <jonas@wielicki.name>
parents:
diff changeset
15
8b69e0b56db2 mod_groups_shell: add an admin shell command for updating bookmarks
Jonas Schäfer <jonas@wielicki.name>
parents:
diff changeset
16 local mod_groups = modulemanager.get_module(host, "groups_internal")
8b69e0b56db2 mod_groups_shell: add an admin shell command for updating bookmarks
Jonas Schäfer <jonas@wielicki.name>
parents:
diff changeset
17 if not mod_groups then
8b69e0b56db2 mod_groups_shell: add an admin shell command for updating bookmarks
Jonas Schäfer <jonas@wielicki.name>
parents:
diff changeset
18 return false, host .. " does not have mod_groups_internal loaded"
8b69e0b56db2 mod_groups_shell: add an admin shell command for updating bookmarks
Jonas Schäfer <jonas@wielicki.name>
parents:
diff changeset
19 end
8b69e0b56db2 mod_groups_shell: add an admin shell command for updating bookmarks
Jonas Schäfer <jonas@wielicki.name>
parents:
diff changeset
20
8b69e0b56db2 mod_groups_shell: add an admin shell command for updating bookmarks
Jonas Schäfer <jonas@wielicki.name>
parents:
diff changeset
21 if not group_id then
8b69e0b56db2 mod_groups_shell: add an admin shell command for updating bookmarks
Jonas Schäfer <jonas@wielicki.name>
parents:
diff changeset
22 return false, "group id not given"
8b69e0b56db2 mod_groups_shell: add an admin shell command for updating bookmarks
Jonas Schäfer <jonas@wielicki.name>
parents:
diff changeset
23 end
8b69e0b56db2 mod_groups_shell: add an admin shell command for updating bookmarks
Jonas Schäfer <jonas@wielicki.name>
parents:
diff changeset
24
8b69e0b56db2 mod_groups_shell: add an admin shell command for updating bookmarks
Jonas Schäfer <jonas@wielicki.name>
parents:
diff changeset
25 local ok, err = mod_groups.emit_member_events(group_id)
8b69e0b56db2 mod_groups_shell: add an admin shell command for updating bookmarks
Jonas Schäfer <jonas@wielicki.name>
parents:
diff changeset
26 if ok then
8b69e0b56db2 mod_groups_shell: add an admin shell command for updating bookmarks
Jonas Schäfer <jonas@wielicki.name>
parents:
diff changeset
27 return true, "Synchronised members"
8b69e0b56db2 mod_groups_shell: add an admin shell command for updating bookmarks
Jonas Schäfer <jonas@wielicki.name>
parents:
diff changeset
28 else
8b69e0b56db2 mod_groups_shell: add an admin shell command for updating bookmarks
Jonas Schäfer <jonas@wielicki.name>
parents:
diff changeset
29 return ok, err
8b69e0b56db2 mod_groups_shell: add an admin shell command for updating bookmarks
Jonas Schäfer <jonas@wielicki.name>
parents:
diff changeset
30 end
8b69e0b56db2 mod_groups_shell: add an admin shell command for updating bookmarks
Jonas Schäfer <jonas@wielicki.name>
parents:
diff changeset
31 end