Commit Graph
522 Commits
Author SHA1 Message Date
Andrew DeMaria b128479972 Merge remote-tracking branch 'airsonic/pr/962' 2019-04-05 22:28:22 -04:00
Andrew DeMaria 4b2cf99adf Merge remote-tracking branch 'airsonic/pr/951' 2019-04-05 22:26:27 -04:00
Andrew DeMaria 8e0d49834c Merge remote-tracking branch 'airsonic/pr/929' 2019-04-05 22:22:40 -04:00
Andrew DeMaria ab33b34a67 Merge remote-tracking branch 'airsonic/pr/898'
Conflicts:
	airsonic-main/src/main/java/org/airsonic/player/controller/StreamController.java
2019-04-05 22:11:18 -04:00
tesshucomandAndrew DeMaria 131713aaf4 With Jetty
Signed-off-by: Andrew DeMaria <lostonamountain@gmail.com>
2019-04-05 21:57:39 -04:00
tesshucomandAndrew DeMaria 4cd9e9deac revert cling-core, cling-support, seamless-util and configuration 2019-04-05 21:46:12 -04:00
jvoisin 7d865ea7a9 Add a lost meta back 2019-04-03 10:22:38 +02:00
jvoisin 4a1a5467c7 Remove the embedded copy of ant-zip 2019-04-03 02:32:29 +02:00
jvoisin 422127e3f6 Replace the flash player with medialement.js for the shared media 2019-04-03 02:23:50 +02:00
François-Xavier Thomas 3f4a49c95a Fix dependency error with org.eclipse.jetty.jetty
This is only used by reflection, and should be provided by the servlet
container (Tomcat or Jetty).
2019-04-02 22:14:03 +02:00
François-Xavier Thomas 51b738053f Make it work even if Tomcat-specific exceptions are not available
When Tomcat is not available (for example, when using Jetty), the
ClientAbortException is not available either, causing an error when
starting the server.

This commit fixes that, and instead catches that exception (or its Jetty
equivalent) via reflection.
2019-04-02 21:23:47 +02:00
François-Xavier Thomas ec96b9711d Show more informative messages while streaming
When streaming, log messages now show the URL and IP of the originating
request, so that it's easier to determine what client is listening to
something on the server.
2019-04-02 21:22:44 +02:00
François-Xavier Thomas 417583ccaa Do not show stack trace for client-side connection errors
The `ClientAbortException` exception indicates that the connection was
closed by the client, usually for something the server can do nothing
about (e.g. navigating outside of the page while it's loading).

Since this error happens often, this commit displays shorter error
messages when it does, without a large stack trace.

All other exceptions are handled just as before.
2019-04-02 21:20:40 +02:00
jvoisin 72e372157a Remove WAP-related stuff
WAP (https://en.wikipedia.org/wiki/Wireless_Application_Protocol)
is a thing from the past that nobody is using anymore.

This should close #960
2019-04-02 19:48:17 +02:00
jvoisin 268dc6e13d Factorise the key generation into a static method 2019-04-02 10:13:29 +02:00
Andrew DeMaria f04ec61d0f Merge remote-tracking branch 'airsonic/pr/958' 2019-04-01 22:43:42 -04:00
Andrew DeMaria 58f4dfdb2e Merge remote-tracking branch 'airsonic/pr/957' 2019-04-01 22:42:39 -04:00
Andrew DeMaria a59e8e4a9f Merge remote-tracking branch 'airsonic/pr/956' 2019-04-01 22:42:16 -04:00
Andrew DeMaria afb9c6bfb7 Merge remote-tracking branch 'airsonic/pr/954' 2019-04-01 22:41:36 -04:00
Andrew DeMaria 1daa6cff6e Merge remote-tracking branch 'airsonic/pr/952' 2019-04-01 22:39:38 -04:00
jvoisin aff7bd3d57 Remove webfx stuff, since they're apparently not used
The only place where the string `webfx` is mentioned
was in playQueue.jsp, to include a small css file, twice,
that only applies to webfx components, that aren't used
anywhere in the codebase.
2019-04-02 00:42:24 +02:00
jvoisin db2592a84b Delete AC_OETags.js since it's not used anywhere 2019-04-02 00:37:17 +02:00
jvoisin c9212805be Remove jquery-contextmenu since it's not used anywhere 2019-04-02 00:28:16 +02:00
jvoisin d35834c0e7 Fix a bunch of dom-based xss
This should close #633
2019-04-01 23:08:57 +02:00
jvoisin 0d6cbb60ed Use https for external links 2019-04-01 11:45:20 +02:00
jvoisin 3e07ea5288 Use a random key to "encrypt" the remember-me cookie's value
Since Spring's default remember-me technique is
terrible security-wise (`user:timstamp:md5(use:timestamp:password:key)`),
we should at least use a random key, instead of a fixed one,
otherwise, and attacker able to capture the cookies
might be able to trivially bruteforce offline
the password of the associated user.
2019-04-01 11:33:35 +02:00
jvoisin ab1690b1fe Don't display the title if it's empty 2019-04-01 02:36:28 +02:00
Andrew DeMaria 83882b18d9 Merge remote-tracking branch 'airsonic/pr/919' 2019-03-31 20:01:31 -04:00
Andrew DeMaria 81835aa589 Merge remote-tracking branch 'airsonic/pr/934' 2019-03-31 19:56:56 -04:00
Andrew DeMaria f8f5c4a6bf Merge remote-tracking branch 'airsonic/pr/936' 2019-03-31 19:53:49 -04:00
Andrew DeMaria b73ab9c45e Merge remote-tracking branch 'airsonic/pr/949' 2019-03-31 19:53:17 -04:00
Andrew DeMaria 221a0ed933 Merge remote-tracking branch 'airsonic/pr/945' 2019-03-31 19:45:56 -04:00
jvoisin ac1c887698 Remove Google+ relics
Google+ is dead: https://developers.google.com/+/
2019-04-01 01:41:41 +02:00
jvoisin 5edebf7885 Remove inline javascript on the cancel buttons
The inline javascript used with the cancel buttons
was only used to change the location.
Instead of doing this, it's easier to wrap
the button in a tag.

This is related to #909.
2019-04-01 01:32:35 +02:00
Andrew DeMaria cd45717256 Merge remote-tracking branch 'airsonic/pr/938' 2019-03-31 19:31:18 -04:00
Andrew DeMaria 570abe69d5 Merge remote-tracking branch 'airsonic/pr/939' 2019-03-31 19:29:39 -04:00
Andrew DeMaria d5500ce3d2 Merge remote-tracking branch 'airsonic/pr/941' 2019-03-31 19:24:26 -04:00
Andrew DeMaria 41a5ae06d5 Merge remote-tracking branch 'airsonic/pr/922' 2019-03-31 19:20:33 -04:00
Andrew DeMaria 6613bd86d5 Merge remote-tracking branch 'airsonic/pr/907' 2019-03-31 19:19:44 -04:00
jvoisin ba6b39b7b2 Add two <meta> tags
- Add a description, since this can be useful
  in browser's histories
- Add a viewport, making it less worse to use
  airsonic on a super-small screen
2019-03-31 23:55:24 +02:00
jvoisin 883022d81a Remove script.aculo.us dependency
It's not used anywhere, using an old version,
and the project doesn't seem to be maintained anyway.
2019-03-30 11:09:42 +01:00
jvoisin 910802b64f Fix a small resource leak 2019-03-29 00:18:25 +01:00
jvoisin a6c92acb3e Update mediaelement from 4.1.1 to 4.2.9
I've tested this on mp3, ogg and flac, everything
is working.

Apart from fixing a decent amount of bugs
(https://github.com/mediaelement/mediaelement/releases),
this has the nice side effect of removing a copy
of jquery 1.9.1.
2019-03-29 00:00:47 +01:00
jvoisin 2f9046d6b4 Fix a xss and clean up some js
- Fix a stupid self-XSS. I doubt that there are ways to
  use it against other users, but well, better safe than sorry
- Replace the javascript-on-focus hacks with the `autofocus` attribute
2019-03-28 23:38:37 +01:00
François-Xavier Thomas bcc5f8d7a6 Fix StringIndexOutOfBounds errors thrown by DWR/YUI 2019-03-28 22:08:26 +01:00
jvoisin 61c842923a Generate new passwords in a secure way
Previously, lost passwords were generated via
org.apache.commons.lang.RandomStringUtils,
which is using java.util.Random internally.

This PRNG is has a 48-bit seed, that can easily be bruteforced
if an attacker is able to get the PRNG's output, for example
but resetting their own account multiple times,
leading to trivial privileges escalation attacks.

This commit makes use of java.security.SecureRandom
instead.
2019-03-28 21:47:57 +01:00
Andrew DeMaria 54e1237320 Exclude new spring 5.0.5 cve 2019-03-27 19:00:14 -06:00
Andrew DeMaria 8a1f36c792 Revert change to DWR fixes #923
Signed-off-by: Andrew DeMaria <lostonamountain@gmail.com>
2019-03-26 16:08:54 -06:00
jvoisin 39b9eab715 Simplify a bit the css 2019-03-26 23:08:50 +01:00
jvoisin 0b72acefed Oups 2019-03-26 23:04:32 +01:00