0
0
Fork 0
mirror of https://github.com/matrix-construct/construct synced 2024-11-05 21:38:54 +01:00
construct/extensions/restrict-unauthenticated.cc
Jason Volk dd9124b687 Preliminary Client refactor.
Add client to ircd::client:: namespace.

Also move former struct User and struct Server into client.cc as
opaque structure demo.
2016-08-22 15:56:12 -07:00

30 lines
748 B
C++

/*
* restrict unauthenticated users from doing anything as channel op
*/
using namespace ircd;
static const char restrict_desc[] =
"Restrict unautenticated users from doing anything as channel ops";
static void hack_channel_access(void *data);
mapi_hfn_list_av1 restrict_unauthenticated_hfnlist[] = {
{ "get_channel_access", (hookfn) hack_channel_access },
{ NULL, NULL }
};
static void
hack_channel_access(void *vdata)
{
hook_data_channel_approval *data = (hook_data_channel_approval *) vdata;
if (!MyClient(data->client))
return;
if (suser(user(*data->client)).empty())
data->approved = 0;
}
DECLARE_MODULE_AV2(restrict_unauthenticated, NULL, NULL, NULL, NULL,
restrict_unauthenticated_hfnlist, NULL, NULL, restrict_desc);