Commit graph

5432 commits

Author SHA1 Message Date
Eugen Rochko
fac529975b Improve signature verification safeguards (#8959)
* Downcase signed_headers string before building the signed string

The HTTP Signatures draft does not mandate the “headers” field to be downcased,
but mandates the header field names to be downcased in the signed string, which
means that prior to this patch, Mastodon could fail to process signatures from
some compliant clients. It also means that it would not actually check the
Digest of non-compliant clients that wouldn't use a lowercased Digest field
name.

Thankfully, I don't know of any such client.

* Revert "Remove dead code (#8919)"

This reverts commit a00ce8c92c.

* Restore time window checking, change it to 12 hours

By checking the Date header, we can prevent replaying old vulnerable
signatures. The focus is to prevent replaying old vulnerable requests
from software that has been fixed in the meantime, so a somewhat long
window should be fine and accounts for timezone misconfiguration.

* Escape users' URLs when formatting them

Fixes possible HTML injection

* Escape all string interpolations in Formatter class

Slightly improve performance by reducing class allocations
from repeated Formatter#encode calls

* Fix code style issues
2018-10-12 07:00:41 +02:00
ThibG
0075964244
Merge pull request #775 from ThibG/glitch-soc/merge-upstream
Merge upstream changes
2018-10-11 21:28:03 +02:00
Thibaut Girka
8f720be9f3 Merge commit 'ac7df62a0441b95ec04fd9111a9394795dd53ff2' into glitch-soc/merge-upstream 2018-10-11 14:12:36 +02:00
Thibaut Girka
bb1103d974 Really fix HotKeys 2018-10-10 17:40:06 +02:00
Eugen Rochko
2459da29c2
Add description meta tag additionally to og:description (#8941)
Fix #8685
2018-10-10 02:21:30 +02:00
Eugen Rochko
da7705b274
Add dns-prefetch if using different host for assets or uploads (#8942) 2018-10-10 01:31:10 +02:00
Thibaut Girka
a02244f17c Merge branch 'master' into glitch-soc/merge-upstream
Conflicts:
	app/javascript/packs/public.js

Changes made to app/javascript/packs/publics.js were applied to
app/javascript/core/settings.js
2018-10-09 21:08:26 +02:00
mayaeh
e50cb5f4bd Fix that the copy button of verify link did not work. (#8938) 2018-10-09 19:36:13 +02:00
Eugen Rochko
7f9dd92a27
Track historical space stats in PgHero to determine PostgreSQL growth (#8906) 2018-10-09 19:35:14 +02:00
Thibaut Girka
269edc0e48 Fix CW icon color in local-settings modal 2018-10-09 18:10:54 +02:00
Thibaut Girka
721aec40cd Define some local-settings hints 2018-10-09 18:10:54 +02:00
Thibaut Girka
26409f3e8e Add support for hints (or extended descriptions) in local-settings pages 2018-10-09 18:10:54 +02:00
Thibaut Girka
5f308a7f05 When screen width is too narrow, hide local-settings page text, keep only icons 2018-10-09 18:10:54 +02:00
Thibaut Girka
6cd793f0ac Change “preferences” icon to match settings page icon 2018-10-09 18:10:54 +02:00
Thibaut Girka
edb9ec8543 Add icons for each of the local-setting pages 2018-10-09 18:10:54 +02:00
Thibaut Girka
122ac9cd1d Merge branch 'master' into glitch-soc/merge-upstream 2018-10-09 12:12:03 +02:00
ThibG
4134a10549
Merge pull request #770 from ThibG/glitch-soc/merge-upstream
Merge upstream changes
2018-10-09 12:11:14 +02:00
Thibaut Girka
d0b1369a85 Fix app-wide hotkeys randomly failing to work 2018-10-09 12:10:51 +02:00
mayaeh
87abbb07f3 Add Japanese translations. (#8927) 2018-10-09 07:12:37 +09:00
Thibaut Girka
b368d3c15d Merge branch 'master' into glitch-soc/merge-upstream 2018-10-08 15:34:53 +02:00
mayaeh
770e337497 Fixed error occurrence when pinning the DM column. (#8922) 2018-10-08 14:43:38 +02:00
Thibaut Girka
d17844e6d1 Merge branch 'master' into glitch-soc/merge-upstream 2018-10-08 13:51:33 +02:00
Thibaut Girka
96c3d26870 Move “Show action buttons in collapsed toots” option 2018-10-08 13:49:25 +02:00
Thibaut Girka
faecb35fe0 Switch from selects to radio buttons for local settings, improve styling 2018-10-08 13:49:25 +02:00
ashleyhull-versent
f194857ac9 rubocop issues - Cleaning up (#8912)
* cleanup pass

* undo mistakes

* fixed.

* revert
2018-10-08 04:50:11 +02:00
Eugen Rochko
a00ce8c92c
Remove dead code (#8919)
SignatureVerification#matches_time_window? is not called anywhere.
2018-10-08 04:48:54 +02:00
ashleyhull-versent
2dba313100 Replace SVG asset with Custom mascot (#8766) 2018-10-08 00:20:45 +02:00
Eugen Rochko
774ac47373
Add conversations API (#8832)
* Add conversations API

* Add web UI for conversations

* Add test for conversations API

* Add tests for ConversationAccount

* Improve web UI

* Rename ConversationAccount to AccountConversation

* Remove conversations on block and mute

* Change last_status_id to be a denormalization of status_ids

* Add optimistic locking
2018-10-07 23:44:58 +02:00
Thibaut Girka
a3677a828d [Glitch] Change documentation URL
Port 28401962ca to glitch-soc
2018-10-07 22:56:24 +02:00
Thibaut Girka
b4ba1058b8 [Glitch] RTL: fix margins of public-account-header__tabs
Port 185cb2dc3a to glitch-soc
2018-10-07 22:56:24 +02:00
Thibaut Girka
611740ce81 Merge branch 'master' into glitch-soc/merge-upstream 2018-10-07 19:47:56 +02:00
ThibG
25744d43b0 Ensure only toots from the reported users are reported (#8916) 2018-10-07 19:45:40 +02:00
Thibaut Girka
7cc7843109 Do not scroll timelines when *closing* media modals
Media modals push an history state so that pressing back on mobile closes them.
We made sure to not scroll when opening them, but not when *closing* them,
which caused some issues in rare cases.
2018-10-07 12:08:32 +02:00
Marcin Mikołajczak
2fb692ea45 i18n: Update Polish translation (#8901)
Signed-off-by: Marcin Mikołajczak <me@m4sk.in>
2018-10-06 20:42:36 +09:00
Eugen Rochko
28401962ca Change documentation URL (#8898)
* Change documentation URL

* Fix hardcoded documentation URL in locales
2018-10-06 14:33:36 +09:00
Masoud Abkenar
185cb2dc3a RTL: fix margins of public-account-header__tabs (#8897)
* RTL: fix margins of public-account-header__tabs

* fix style

* even more stylish code :)
2018-10-06 00:05:11 +02:00
Thibaut Girka
98bb6815a7 Merge branch 'master' into glitch-soc/merge-upstream 2018-10-05 21:48:25 +02:00
Jeong Arm
144d73730d Leave unknown language as nil if account is remote (#8861)
* Force use language detector if account is remote

* Set unknown remote toot's language as nil
2018-10-05 19:17:46 +02:00
Thibaut Girka
c6e4c48942 [Glitch] Add a confirmation dialog when hitting reply and the compose box isn't empty 2018-10-05 19:08:52 +02:00
ThibG
42aecb4c13 Add a confirmation dialog when hitting reply and the compose box isn't empty (#8893)
* Add a confirmation dialog when hitting reply and the compose box isn't empty

Fixes #878

* Performance improvement
2018-10-05 18:44:44 +02:00
Thibaut Girka
00fcdebed7 Merge branch 'master' into glitch-soc/merge-upstream
Conflicts:
	db/migrate/20170716191202_add_hide_notifications_to_mute.rb
	spec/controllers/application_controller_spec.rb

Took our version, upstream changes were only minor style linting.
2018-10-05 15:23:57 +02:00
Eugen Rochko
a46ab86adf
Limit the number of people that can be followed from one account (#8807)
Configurable soft limit of 7,500, and above that, configurable
ratio of 1.1 * followers, controlled by:

- MAX_FOLLOWS_THRESHOLD
- MAX_FOLLOWS_RATIO

Fix #2311
2018-10-04 17:36:11 +02:00
Eugen Rochko
e645ae9561
Change admin accounts default sort to most recent (#8813) 2018-10-04 16:05:38 +02:00
Eugen Rochko
7fe137d2f7
Fix link verification for remote accounts (#8868) 2018-10-04 15:47:03 +02:00
ThibG
ba444797d2 Fix handling of ActivityPub activities lacking some attributes (#8864) 2018-10-03 23:44:13 +02:00
Thibaut Girka
a9e8f98a9d Make hidden media clickable in account media gallery 2018-10-02 22:00:57 +02:00
Thibaut Girka
d82c495c0f Add media description (or status spoiler) in account media gallery 2018-10-02 22:00:57 +02:00
Thibaut Girka
bd1f08fa9a Fix account gallery hidden media background color in mastodon-light 2018-10-02 22:00:57 +02:00
Thibaut Girka
eb85427576 [Glitch] Honour displayMedia setting in accountMedia gallery
Inspired by b79ab15859
2018-10-02 22:00:57 +02:00
Thibaut Girka
6ad7606909 [Glitch] Add support for new display_media setting
Port f7a6f9489d to glitch-soc

[API] [vanilla required] [glitch-soc optional] initial_state show_sensitive_media boolean changed to show_media string with options "default", "hide_all", "show_all"
2018-10-01 16:48:55 +02:00