forked from lda/telodendria
Format source code.
This commit is contained in:
parent
96ca9a725d
commit
459b2e856f
7 changed files with 113 additions and 63 deletions
|
@ -358,6 +358,7 @@ ConfigParse(HashMap * config)
|
|||
else
|
||||
{
|
||||
size_t len = strlen(tConfig->serverName) + 10;
|
||||
|
||||
tConfig->baseUrl = Malloc(len);
|
||||
if (!tConfig->baseUrl)
|
||||
{
|
||||
|
|
20
src/Db.c
20
src/Db.c
|
@ -540,9 +540,8 @@ DbLockFromArr(Db * db, Array * args)
|
|||
db->mostRecent = ref;
|
||||
}
|
||||
|
||||
/* If there is no least recent, this is the only
|
||||
* thing in the cache, so it is also least recent.
|
||||
*/
|
||||
/* If there is no least recent, this is the only thing in the
|
||||
* cache, so it is also least recent. */
|
||||
if (!db->leastRecent)
|
||||
{
|
||||
db->leastRecent = ref;
|
||||
|
@ -822,18 +821,22 @@ DbUnlock(Db * db, DbRef * ref)
|
|||
ref->size = DbComputeSize(ref->json);
|
||||
db->cacheSize += ref->size;
|
||||
|
||||
/* If this ref has grown significantly since we last computed
|
||||
* its size, it may have filled the cache and require some
|
||||
* items to be evicted. */
|
||||
/* If this ref has grown significantly since we last
|
||||
* computed its size, it may have filled the cache and
|
||||
* require some items to be evicted. */
|
||||
DbCacheEvict(db);
|
||||
|
||||
destroy = 0;
|
||||
} else {
|
||||
}
|
||||
else
|
||||
{
|
||||
destroy = 1;
|
||||
}
|
||||
|
||||
Free(key);
|
||||
} else {
|
||||
}
|
||||
else
|
||||
{
|
||||
destroy = 1;
|
||||
}
|
||||
|
||||
|
@ -963,4 +966,3 @@ DbJsonSet(DbRef * ref, HashMap * json)
|
|||
ref->json = JsonDuplicate(json);
|
||||
return 1;
|
||||
}
|
||||
|
||||
|
|
|
@ -45,7 +45,7 @@ typedef struct RandState
|
|||
} RandState;
|
||||
|
||||
static void
|
||||
RandSeed(RandState *state, UInt32 seed)
|
||||
RandSeed(RandState * state, UInt32 seed)
|
||||
{
|
||||
state->mt[0] = seed & 0xFFFFFFFF;
|
||||
|
||||
|
@ -56,9 +56,9 @@ RandSeed(RandState *state, UInt32 seed)
|
|||
}
|
||||
|
||||
static UInt32
|
||||
RandGenerate(RandState *state)
|
||||
RandGenerate(RandState * state)
|
||||
{
|
||||
static const UInt32 mag[2] = { 0x0, 0x9908B0DF };
|
||||
static const UInt32 mag[2] = {0x0, 0x9908B0DF};
|
||||
|
||||
UInt32 result;
|
||||
|
||||
|
|
|
@ -48,7 +48,8 @@ ROUTE_IMPL(RouteCapabilities, path, argp)
|
|||
JsonSet(capabilities, JsonValueBoolean(1), 2, "m.set_avatar_url", "enabled");
|
||||
JsonSet(capabilities, JsonValueBoolean(0), 2, "m.3pid_changes", "enabled");
|
||||
|
||||
/* TODO: When more room versions are implemented, add them to roomVersions */
|
||||
/* TODO: When more room versions are implemented, add them to
|
||||
* roomVersions */
|
||||
HashMapSet(roomVersions, "1", JsonValueString("unstable"));
|
||||
|
||||
JsonSet(capabilities, JsonValueString("1"), 2, "m.room_versions", "default");
|
||||
|
|
|
@ -74,7 +74,7 @@ ROUTE_IMPL(RouteUiaFallback, path, argp)
|
|||
ArrayAdd(flow, UiaStageBuild(authType, NULL));
|
||||
ArrayAdd(flows, flow);
|
||||
uiaResult = UiaComplete(flows, args->context,
|
||||
args->matrixArgs->db, request, &response, config);
|
||||
args->matrixArgs->db, request, &response, config);
|
||||
UiaFlowsFree(flows);
|
||||
|
||||
if (uiaResult < 0)
|
||||
|
@ -121,25 +121,25 @@ ROUTE_IMPL(RouteUiaFallback, path, argp)
|
|||
HtmlEndForm(stream);
|
||||
HtmlBeginJs(stream);
|
||||
StreamPrintf(stream,
|
||||
"function buildRequest() {"
|
||||
" let user = document.getElementById('user').value;"
|
||||
" let pass = document.getElementById('password').value;"
|
||||
" if (!user || !pass) {"
|
||||
" setFormError('Please specify a username and password.');"
|
||||
" return false;"
|
||||
" }"
|
||||
" return {"
|
||||
" auth: {"
|
||||
" type: '%s',"
|
||||
" identifier: {"
|
||||
" type: 'm.id.user',"
|
||||
" user: user"
|
||||
" },"
|
||||
" password: pass,"
|
||||
" session: '%s'"
|
||||
" }"
|
||||
" };"
|
||||
"}", authType, sessionId);
|
||||
"function buildRequest() {"
|
||||
" let user = document.getElementById('user').value;"
|
||||
" let pass = document.getElementById('password').value;"
|
||||
" if (!user || !pass) {"
|
||||
" setFormError('Please specify a username and password.');"
|
||||
" return false;"
|
||||
" }"
|
||||
" return {"
|
||||
" auth: {"
|
||||
" type: '%s',"
|
||||
" identifier: {"
|
||||
" type: 'm.id.user',"
|
||||
" user: user"
|
||||
" },"
|
||||
" password: pass,"
|
||||
" session: '%s'"
|
||||
" }"
|
||||
" };"
|
||||
"}", authType, sessionId);
|
||||
HtmlEndJs(stream);
|
||||
}
|
||||
else if (strcmp(authType, "m.login.registration_token") == 0)
|
||||
|
@ -153,20 +153,20 @@ ROUTE_IMPL(RouteUiaFallback, path, argp)
|
|||
HtmlEndForm(stream);
|
||||
HtmlBeginJs(stream);
|
||||
StreamPrintf(stream,
|
||||
"function buildRequest() {"
|
||||
" let token = document.getElementById('token').value;"
|
||||
" if (!token) { "
|
||||
" setFormError('Please specify a registration token.');"
|
||||
" return false;"
|
||||
" }"
|
||||
" return {"
|
||||
" auth: {"
|
||||
" type: '%s',"
|
||||
" session: '%s',"
|
||||
" token: token"
|
||||
" }"
|
||||
" };"
|
||||
"}", authType, sessionId);
|
||||
"function buildRequest() {"
|
||||
" let token = document.getElementById('token').value;"
|
||||
" if (!token) { "
|
||||
" setFormError('Please specify a registration token.');"
|
||||
" return false;"
|
||||
" }"
|
||||
" return {"
|
||||
" auth: {"
|
||||
" type: '%s',"
|
||||
" session: '%s',"
|
||||
" token: token"
|
||||
" }"
|
||||
" };"
|
||||
"}", authType, sessionId);
|
||||
HtmlEndJs(stream);
|
||||
}
|
||||
/*
|
||||
|
@ -183,23 +183,23 @@ ROUTE_IMPL(RouteUiaFallback, path, argp)
|
|||
|
||||
HtmlBeginJs(stream);
|
||||
StreamPrintf(stream,
|
||||
"function processResponse(xhr) {"
|
||||
" let r = JSON.parse(xhr.responseText);"
|
||||
" console.log(r);"
|
||||
" if (xhr.status == 200 || r.completed.includes('%s')) {"
|
||||
" if (window.onAuthDone) {"
|
||||
" window.onAuthDone();"
|
||||
"function processResponse(xhr) {"
|
||||
" let r = JSON.parse(xhr.responseText);"
|
||||
" console.log(r);"
|
||||
" if (xhr.status == 200 || r.completed.includes('%s')) {"
|
||||
" if (window.onAuthDone) {"
|
||||
" window.onAuthDone();"
|
||||
" } else if (window.opener && window.opener.postMessage) {"
|
||||
" window.opener.postMessage('authDone', '*');"
|
||||
" } else {"
|
||||
" setFormError('Client error.');"
|
||||
" }"
|
||||
" } else if (r.session != '%s') {"
|
||||
" setFormError('Invalid session.');"
|
||||
" } else {"
|
||||
" setFormError('Invalid credentials.');"
|
||||
" }"
|
||||
"}", authType, sessionId);
|
||||
" window.opener.postMessage('authDone', '*');"
|
||||
" } else {"
|
||||
" setFormError('Client error.');"
|
||||
" }"
|
||||
" } else if (r.session != '%s') {"
|
||||
" setFormError('Invalid session.');"
|
||||
" } else {"
|
||||
" setFormError('Invalid credentials.');"
|
||||
" }"
|
||||
"}", authType, sessionId);
|
||||
|
||||
StreamPuts(stream,
|
||||
"onFormSubmit('auth-form', (frm) => {"
|
||||
|
|
|
@ -1,3 +1,26 @@
|
|||
/*
|
||||
* Copyright (C) 2022-2023 Jordan Bancino <@jordan:bancino.net>
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person
|
||||
* obtaining a copy of this software and associated documentation files
|
||||
* (the "Software"), to deal in the Software without restriction,
|
||||
* including without limitation the rights to use, copy, modify, merge,
|
||||
* publish, distribute, sublicense, and/or sell copies of the Software,
|
||||
* and to permit persons to whom the Software is furnished to do so,
|
||||
* subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be
|
||||
* included in all copies or portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||
* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
||||
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
|
||||
* BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
|
||||
* ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
* SOFTWARE.
|
||||
*/
|
||||
#ifndef TELODENDRIA_INT_H
|
||||
#define TELODENDRIA_INT_H
|
||||
|
||||
|
|
|
@ -1,3 +1,26 @@
|
|||
/*
|
||||
* Copyright (C) 2022-2023 Jordan Bancino <@jordan:bancino.net>
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person
|
||||
* obtaining a copy of this software and associated documentation files
|
||||
* (the "Software"), to deal in the Software without restriction,
|
||||
* including without limitation the rights to use, copy, modify, merge,
|
||||
* publish, distribute, sublicense, and/or sell copies of the Software,
|
||||
* and to permit persons to whom the Software is furnished to do so,
|
||||
* subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be
|
||||
* included in all copies or portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||
* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
||||
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
|
||||
* BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
|
||||
* ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
* SOFTWARE.
|
||||
*/
|
||||
#include <Int.h>
|
||||
|
||||
#include <stdio.h>
|
||||
|
|
Loading…
Reference in a new issue