summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* don't use lettre connection poolspennae2022-07-191-1/+5
| | | | | we'll send mail so rarely, keeping a connection open at all times just spams syslog
* add mail_starttls parameter, default offpennae2022-07-193-1/+15
| | | | | local mail connections are much preferred for this service, and those needn't be encrypted.
* add modulepennae2022-07-192-1/+151
|
* speed up test suitepennae2022-07-1811-1110/+1140
| | | | | mostly by grouping tests that can reuse the same account (which is expensive to create) into classes and scoping accounts to classes.
* cancel periodic task runners on shutdownpennae2022-07-181-19/+40
| | | | | not necessary for the standalone server, but if we want to launch many server for testing it'll be relevant.
* make the Clone bytes types Copy as wellpennae2022-07-178-28/+18
| | | | u8 arrays are copy, no need to not have our wrappers be copy.
* remove Seal from cryptopennae2022-07-171-10/+1
| | | | the trait doesn't leave the module, so sealing doesn't do anything useful.
* remove SecretBytespennae2022-07-174-85/+30
| | | | | there's no benefit to keeping it around, the zeroing behavior it had was never any good and without it it's just a fancy [u8; N]
* use SecretKey for key material in cryptopennae2022-07-174-53/+58
|
* use HawkKey everywhere hawk keys are handledpennae2022-07-176-85/+44
| | | | the db already does this, crypto did not.
* add dedicated types for all the tokenspennae2022-07-176-84/+175
| | | | using SecretBytes for all of them isn't that great.
* make crypto fields private if they're not used outside cryptopennae2022-07-171-7/+7
|
* don't use SecretBytes in HawkKey/SecretKeypennae2022-07-175-33/+37
|
* remove zeroize dependencypennae2022-07-173-10/+1
| | | | | | | | this is not so much a problem as a possible source of false security for the readers. all secret keys we handle are serialized in some form, and those serialization buffers are *not* zeroed out after use. zeroing our raw buffers doesn't help much in that case, using a zero-on-free allocator would be much more helpful.
* remove remnants of trying to quickcheck thingspennae2022-07-171-4/+0
| | | | it never worked out, but a bit of support stuff remained.
* apply rustfmtpennae2022-07-174-4/+8
|
* fix clippy warningspennae2022-07-174-4/+6
|
* add test vector for password changes and account resetpennae2022-07-161-1/+48
| | | | | | | these are not "official" test vectors, just an example of what the implementation does currently. since it works with other parts of the ecosystem (most importantly firefox itself) they seem good enough to include.
* allow integration tests to run in parallelpennae2022-07-148-56/+77
| | | | | this doesn't do much for performance, but it does allow running the tests with a simple `cargo t`.
* simplify spawn_loggedpennae2022-07-141-23/+7
|
* xfail a test the last commit brokepennae2022-07-141-0/+1
|
* keep oauth tokens around a bit after expirypennae2022-07-134-16/+27
| | | | | | | firefox wants to delete profile access tokens after they're expired and logs errors if it can't do that. since this happens every hour we can end up with a bunch of error logs very quickly, so we better let it do what it wants.
* add downgrade migration for first schema versionpennae2022-07-131-1/+44
|
* fix avatar change showing an error and not reloading the pagepennae2022-07-131-0/+1
|
* initial importpennae2022-07-1362-0/+16966