Commit Graph

733 Commits

Author SHA1 Message Date
Nora Widdecke
08b3b8c03f cargo: use upstream gettext-macros
Upstream merged the patch we introduced in 9d5ec287a9,
so we can use that version while we wait for a release.
2022-02-25 10:47:23 +01:00
Nora Widdecke
8eb3984560 cargo: use rocket_prometheus 0.10.0-rc.1
Fixes #167
2022-02-15 11:35:13 +01:00
Vincent Breitmoser
546e3b9452 readme: update for stable rust 2022-02-06 23:33:33 +01:00
Justus Winter
57efbe2937 hagridctl: drop backtrace from error messages 2022-02-06 22:58:29 +01:00
Justus Winter
81b5426544 hagridctl: drop feature and recursion_limit attribute 2022-02-06 22:58:29 +01:00
Justus Winter
f1078b3ccc hagridctl: adapt to rockets new profile names 2022-02-06 22:58:29 +01:00
Justus Winter
42260ff2e1 web: change profile names to match rocket's new convention
see https://rocket.rs/v0.5-rc/guide/configuration/#default-provider
2022-02-06 22:58:29 +01:00
Justus Winter
7b413150ca web: start from rocket's default config for the tests 2022-02-06 22:58:29 +01:00
Justus Winter
11f93c3249 web: fix extracting configuration values 2022-02-06 22:58:29 +01:00
Justus Winter
fec0cc4852 web: port to handlebars 3, the version used in rocket's dyn templates 2022-02-06 22:58:29 +01:00
Justus Winter
b97a06f51c web: rename request_origin -> origin, it is a mouthful already 2022-02-06 22:58:29 +01:00
Justus Winter
cf0abbe047 web: immutable responses 2022-02-06 22:58:29 +01:00
Justus Winter
2bf703a796 web: don't use consumed response 2022-02-06 22:58:29 +01:00
Justus Winter
a31d69d111 web: enable prometheus again 2022-02-06 22:58:29 +01:00
Justus Winter
b428116189 web: i18n and request origin everywhere 2022-02-06 22:58:29 +01:00
Justus Winter
24eb0b0d1b web: anyhow::Error doesn't implement Responder 2022-02-06 22:58:29 +01:00
Justus Winter
23fb3f9fb2 web: fix header composition 2022-02-06 22:58:29 +01:00
Justus Winter
f50ce6912a cargo: use published rocket_i18n, hyperx 2022-02-06 22:58:29 +01:00
Vincent Breitmoser
a2bc5f014c web: first iteration, update to rocket v0.5-rc1 2022-02-06 22:58:29 +01:00
Vincent Breitmoser
3f156ec8c2 cargo: update, and use rocket v0.5-rc1 2022-02-06 22:58:22 +01:00
Vincent Breitmoser
33224d1855 i18n: fix tests and strings 2022-01-04 15:55:01 +01:00
Vincent Breitmoser
23880d1386 db+web: remove x-accel optimization
This removes a shortcut to serve certificates from nginx by including an
X-Accel-Redirect header in the response.
2022-01-04 13:52:58 +01:00
Vincent Breitmoser
77407e03cc db: correctly abstract NamedTempFile as type trait 2022-01-04 13:28:26 +01:00
Vincent Breitmoser
6782c57520 fs: group abstract methods on top of Database trait 2022-01-04 13:23:37 +01:00
Vincent Breitmoser
0e0b5c160a cargo: cargo update, and use recent nightly 2022-01-04 12:24:44 +01:00
Vincent Breitmoser
3aa26c10f3 nix: update shell.nix 2022-01-04 12:17:18 +01:00
Vincent Breitmoser
9d5ec287a9 cargo: update gettext-macros to patched 0.6
This should work with rust stable, once we update rocket.

Uses a patched version of gettext-macros with a bugfix for
https://github.com/Plume-org/gettext-macros/issues/16
2022-01-04 12:06:16 +01:00
Vincent Breitmoser
43cdb28b97 i18n: tx pull 2021-11-28 14:32:14 +01:00
Justus Winter
b8ddf58977 update sequoia-openpgp to 1.5 2021-10-25 16:04:12 +02:00
Justus Winter
6db41b87f2 update dump.rs from sq, revert to its canonical form
Previously, the code was taken with the modifications from
dump.sequoia-pgp.org.  However, the canonical form is the one from the
sq tool.
2021-10-11 11:06:13 +02:00
Justus Winter
8dabd2c37a update sequoia-openpgp to 1.4 2021-10-11 10:23:45 +02:00
Vincent Breitmoser
90356ddb28 update changed files from rebuild 2021-07-21 09:44:43 +02:00
Justus Winter
bb9a3d8324 Strip non-exportable signatures and cert components.
If non-exportable signatures are uploaded to Hagrid, this is most
certainly an accident.  Handle this gracefully by stripping these
signatures (and certificate components that are only bound by
non-exportable signatures) when writing them to the database.

Fixes #155.
2021-07-15 19:21:44 +00:00
Vincent Breitmoser
0543e13b14 nginx: re-add missing proxy cache path directive 2021-07-14 12:32:14 +02:00
Vincent Breitmoser
3432fbe584 readme: small update
Mention use of ngx_http_lua_module for nginx config, and document move
of the IRC channel to OFTC.
2021-07-13 11:09:00 +02:00
Vincent Breitmoser
569a9df5a0 nginx: update nginx.conf, ditch nginx-site.conf 2021-07-13 11:05:44 +02:00
Vincent Breitmoser
58585dd41f version 1.1.0 v1.1.0 2021-06-24 12:04:26 +02:00
Vincent Breitmoser
b7127a672e db: remove unused feature declaration 2021-06-24 11:59:55 +02:00
Justus Winter
39c0e12ac6 database: serve first-party attested third-party certifications
This implements support for third-party userid certifications.  To
prevent denial-of-service attacks, we only merge those certifications
that are attested by the key holder.

The key holder attests the certifications using an Attested Key
Signature containing the digests of the certifications in an Attested
Certifications subpacket as specified in RFC4880bis-10.

Fixes #124.
2021-06-13 13:30:53 +02:00
Justus Winter
3ecd264c59 sync the dumper code from sq 2021-06-13 10:48:59 +00:00
Justus Winter
c98c588064 update sequoia-openpgp to 1.3 2021-06-13 10:48:59 +00:00
Vincent Breitmoser
c85a7e2c14 about: move IRC channel to OFTC 2021-06-13 12:14:00 +02:00
Vincent Breitmoser
f0dd400a92 about: update rate limit info in api docs 2021-06-11 11:25:49 +02:00
Vincent Breitmoser
f0e0e179ce nginx: increase burst window for fpr lookups to 1000 2021-06-11 11:25:27 +02:00
Justus Winter
a9b1363d09 database: simplify tpk_to_string
Use the convenience function to armor certificates.  This also adds
comments to the armor blocks, making it easier to identify
certificates when casually inspecting them as text files.
2021-05-06 18:54:53 +00:00
Justus Winter
e1e88037e8 database: drop tpk_filter_userids
This function is now provided by Sequoia, and as we no longer have to
reparse the certificate, it is infallible.  Simplify
tpk_filter_alive_emails accordingly.
2021-05-06 18:54:53 +00:00
Justus Winter
5d23bc8c21 database: fix comment 2021-05-06 18:54:53 +00:00
Vincent Breitmoser
71ca5b2888 nginx: use application/octet-stream content-type for WKD routes
The format of keys returned on WKD routes is binary, however
`application/pgp-keys` is specified to contain keys in ASCII-armored
format. The WKD spec says the returned content-type SHOULD be
`application/octet-stream`, too.

references:
https://www.ietf.org/archive/id/draft-koch-openpgp-webkey-service-11.txt
https://tools.ietf.org/html/rfc3156#section-7
2021-04-28 13:22:37 +02:00
Vincent Breitmoser
a7b4eec1fe hkp: drop "upload" mails 2021-04-19 18:40:21 +02:00
Vincent Breitmoser
7011245414 db: don't quarantine degenerate keys 2021-04-15 00:25:18 +02:00