Commit graph

909 commits

Author SHA1 Message Date
3bbff5379f [WIP] Replace UserInteractiveAuth with a new Uia API.
Uia is a lot less characters to type. Do note that this API is far from
complete and this commit breaks user interactive authentication entirely.
2023-02-19 14:58:56 +00:00
d81e8f3a32 We're building up some tools; let's print them out in env.sh 2023-02-17 18:26:08 +00:00
3faee8b432 Update TODO items. 2023-02-17 15:03:59 +00:00
fa88fc3323 Format source code. 2023-02-17 03:23:25 +00:00
ff879e715f Finish implementing token refresh.
This implementation just keeps the refresh token and only updates the
access token. The spec says that this is allowed. There's really no
reason to do this, other than the fact that it's easier.
2023-02-17 03:20:49 +00:00
4b336de171 Build out the User API a bit more. 2023-02-17 03:18:24 +00:00
46fe667988 Add HashMapGetKey() so we can free bucket keys before deleting them. 2023-02-17 03:14:43 +00:00
feb11de6b0 Fix some compile warnings. I'll get back to this eventually. 2023-02-16 18:51:10 +00:00
72405a94f6 Add JsonGet(), JsonSet(), and JsonCreate() for convenience. 2023-02-16 18:49:19 +00:00
d255ce1a21 Begin working on refresh route. 2023-02-16 17:22:59 +00:00
b05e81776a Be smart about the type of man page we generate. 2023-02-16 17:22:32 +00:00
c78dc3bd31 Fix a memory bug in StrRandom() with RandIntN().
We're storing integers in this buffer, so we have to allocate enough
memory for them. An integer is usually more than one byte.
2023-02-16 13:10:09 +00:00
38438c297e Looks like Matrix v1.6 is out. 2023-02-16 02:09:57 +00:00
1f1cbc0461 Fix a bad jq parameter. 2023-02-16 02:01:25 +00:00
dc566a85b7 Ignore .patch files. 2023-02-16 02:01:14 +00:00
85380efa3c [#48] Fix bug in MatrixGetAccessToken() 2023-02-16 01:33:46 +00:00
2ce43ce457 Add a script for conveniently creating new library man pages. 2023-02-16 00:55:10 +00:00
6735c101ec Add Rand man page. 2023-02-16 00:54:58 +00:00
6a593ab8a0 [#48] Add Rand API and make StrRandom() use it. 2023-02-16 00:31:13 +00:00
fdecac576f Some browsers don't like this rule; making it !important seems to fix them. 2023-02-16 00:05:26 +00:00
cebc2959cc Fix a few things that were bothering me. 2023-02-15 21:53:39 +00:00
50aa65617a Fix some bugs in the man page index generation. 2023-02-15 16:00:36 +00:00
de0ece10e2 Use generated tables instead of hand-crafted tables. 2023-02-15 03:30:52 +00:00
e3b8eaf941 Put description all on one line. 2023-02-15 03:30:40 +00:00
a72f75d6b5 Update some man page descriptions. 2023-02-15 02:37:44 +00:00
a7c1ccd3f1 Update lots of documentation. 2023-02-15 01:32:44 +00:00
f7d581538d Begin documenting Str. 2023-02-14 11:56:22 +00:00
653d282bcd Document User API. 2023-02-14 02:02:22 +00:00
5fef788053 Begin documenting User API 2023-02-12 02:31:14 +00:00
2443c91bba Fix bug in HashMap that would allow iterating over deleted values. 2023-02-11 00:15:49 +00:00
27c4713e5d I actually decided I don't like this. 2023-02-11 00:07:18 +00:00
71a0181a6a Break out static options into an environment variable.
This allows users to turn off static compilation if the compiler or linker
throws a fit about it. Looking at you, Glibc. And PCC doesn't seem to like
static compilation either; it generates a binary that just segfaults
immediately on executation.
2023-02-05 14:46:20 +00:00
8b8873103d Handle standard library quirks of non-conforming systems and compilers. 2023-02-05 14:20:12 +00:00
dc972385ea Don't shadow variables. 2023-02-05 14:19:07 +00:00
e1efac41fa Fix admin endpoint to be /_telodendria/admin instead of /admin.
This is how Synapse and Dendrite do it. It makes sense to me.
2023-02-04 00:24:17 +00:00
a4ec6cf6c7 Apply #45 2023-02-04 00:21:36 +00:00
5b77236e82 Fix -v option 2023-01-17 21:38:39 +00:00
e0f7c133d1 Add a non-JSON landing page. This is the basis for other HTML pages. 2023-01-17 20:29:16 +00:00
4e742d5179 Define project timeline a little more. 2023-01-17 19:05:26 +00:00
70fd61cd23 Bring change log up to date-ish.
Next release I'll try to stay on top of this more.
2023-01-17 17:39:31 +00:00
056804810f Fix man page links on website. 2023-01-17 13:53:31 +00:00
b0b2f11158 Refactor endpoint authentication flow.
Instead of one MatrixAuthenticate() function, we'll do
MatrixGetAccessToken(), and then UserAuthenticate(). This allows us to
give different error messages depending on what the user provided and what
the server state is.
2023-01-17 01:36:22 +00:00
1e02971a7e Implement login route. 2023-01-17 00:02:50 +00:00
cc95c10f44 Move client well-known generation to MatrixClientWellKnown() function.
We'll be using this for client login.
2023-01-16 22:02:08 +00:00
121682c006 Implement user login. 2023-01-16 21:17:44 +00:00
bd88c01c26 Don't read the timestamp after it's freed. 2023-01-16 03:57:01 +00:00
c0309c1ea8 Fix memory leak when log timestamp is not set in the config. 2023-01-16 03:21:59 +00:00
9186cdb13d Verbose formatting on the terminal, because why not? 2023-01-10 01:21:35 +00:00
a4364dbb68 Fix use after free. 2023-01-10 00:38:47 +00:00
599fa1a740 Document MemoryHexDump() and DbExists() 2023-01-09 21:39:59 +00:00