Commit Graph
308 Commits
Author SHA1 Message Date
jvoisinandGitHub b663a2fb90 Fix a stored XSS 2019-04-28 08:49:25 +00:00
jvoisinandGitHub 348c698e35 Remove the /db page
This page wasn't linked anywhere, and was
allowing an administrator to issue arbitrary sql
comments, and was vulnerable to reflected XSS.

We should get rid of it. If you really want to issue
SQL commands, just ssh to your instance and do it from here.
2019-04-28 08:48:41 +00:00
jvoisinandGitHub d3970a5c62 Fix various minor issues found by LGTM
- Unnecessary boxing
- Integer overflow
- Path traversal via zip
- Dangerous synchronization pattern
2019-04-28 08:37:47 +00:00
Andrew DeMaria a911ebab80 Merge remote-tracking branch 'origin/pr/1027' 2019-04-27 20:27:37 -06:00
Andrew DeMaria 2162250101 Revert "Minor frameset-related factorization"
This reverts commit e69287cfe6.

Signed-off-by: Andrew DeMaria <lostonamountain@gmail.com>
2019-04-27 14:00:52 -06:00
Andrew DeMaria a14c8549fa Merge remote-tracking branch 'origin/pr/963' 2019-04-27 11:56:46 -06:00
Andrew DeMaria a3e59e9724 Fix file encoding
Signed-off-by: Andrew DeMaria <lostonamountain@gmail.com>
2019-04-27 10:56:09 -06:00
Andrew DeMaria e5c36d9854 Fix variable name
Signed-off-by: Andrew DeMaria <lostonamountain@gmail.com>
2019-04-27 10:55:54 -06:00
Andrew DeMaria d8a5d1afad Merge remote-tracking branch 'origin/pr/1034' 2019-04-27 10:45:48 -06:00
François-Xavier Thomas 820a4faec2 Avoid logging sensitive URL parameters in the Subsonic API
In case of exceptions, Airsonic logs the full URL that triggered it
since 417583cc, including possibly sensitive query parameters such as
the authentication password/tokens passed to the Subsonic API.

This replaces the value set for this parameter in the URL by the
"<hidden>" string.
2019-04-26 22:18:23 +02:00
jvoisin 41408bc2c3 Replace the double-mustache anti-pattern
Because Double Brace Initialization (DBI) creates an anonymous class with a
reference to the instance of the owning object, its use can lead to memory
leaks if the anonymous inner class is returned and held by other objects. Even
when there's no leak, DBI is so obscure that it's bound to confuse most
maintainers.
2019-04-25 22:32:45 +02:00
jvoisin c6825cf0d7 Minor refactorization of two methods in AbstractDao 2019-04-24 22:40:38 +02:00
Andrew DeMaria 1463f75b06 Merge remote-tracking branch 'origin/pr/961' 2019-04-19 09:51:41 -06:00
Andrew DeMaria cddc2b2fa7 Merge remote-tracking branch 'origin/pr/983' 2019-04-19 09:48:05 -06:00
Andrew DeMaria 2030caa219 Merge remote-tracking branch 'origin/pr/994' 2019-04-19 09:46:40 -06:00
Andrew DeMaria 1bd70263bd Merge remote-tracking branch 'origin/pr/989' 2019-04-19 09:41:06 -06:00
Andrew DeMaria 24f5c2d8f5 Merge remote-tracking branch 'origin/pr/1005' 2019-04-19 09:40:48 -06:00
Andrew DeMaria 3f9c525933 Merge remote-tracking branch 'origin/pr/1007' 2019-04-19 09:39:48 -06:00
Andrew DeMaria 50964fa378 Merge remote-tracking branch 'origin/pr/1002' 2019-04-19 09:39:17 -06:00
Andrew DeMaria 326583839e Merge remote-tracking branch 'origin/pr/982' 2019-04-19 08:17:33 -06:00
Andrew DeMaria a2b423aa82 Merge remote-tracking branch 'origin/pr/1020' 2019-04-19 08:17:18 -06:00
Andrew DeMaria f5250e36f1 Merge remote-tracking branch 'origin/pr/1021' 2019-04-19 08:17:06 -06:00
Andrew DeMaria fdfa244ad4 Merge remote-tracking branch 'origin/pr/1022' 2019-04-19 08:16:57 -06:00
Andrew DeMaria fe08dd1c94 Merge remote-tracking branch 'origin/pr/1023' 2019-04-19 08:16:43 -06:00
jvoisin a21188a064 Add a permission check for the podcast folder
This should make podcast-related stacktraces a bit
more obvious to debug for users.
2019-04-17 23:08:26 +02:00
jvoisin 716fd3635c Remove a useless test page 2019-04-17 22:26:45 +02:00
jvoisin e2683024af Factorize a bit the checkbox-related CSS
Since the `border: 0;` property is applied
to every checkbox, there is no need for a class.
This is also a good opportunity to use ternaries
for the `checked` attribute, instead of clumsy `if`.
2019-04-17 22:20:11 +02:00
jvoisin cf1f86f226 Move some video-cast-related inline js to an external file 2019-04-17 21:58:49 +02:00
jvoisin af4165310f Fix yet an other XSS 2019-04-12 22:39:45 +02:00
tesshucom f54e72026f version upgrade of spring-boot-dependencies,spring-boot-maven-plugin
- Safety version for CVE-2019-3795
 - Match the new jetty ecj version because the version of ecj used by
tomcat and jetty is different.
2019-04-13 02:21:57 +09:00
jvoisin e69287cfe6 Minor frameset-related factorization 2019-04-11 23:15:09 +02:00
jvoisin 17f1d45e08 Remove mentions of subsonic premium 2019-04-10 22:49:08 +02:00
jvoisin 90cb02105e Add a noopener and noreferrer to external urls
- noreferrer is used to prevent the browser from sending the referrer
  to the visited site
- noopener fixes a fun class of bug: https://mathiasbynens.github.io/rel-noopener/
2019-04-08 23:13:47 +02:00
jvoisin a200dd0c37 Don't autocomplete the password field
I guess that this is a bit silly in 2019,
but since people tend to use weird browsers in weird
places, disabling autocompletion here might prevent
the password from ending up in some local cache.
2019-04-08 17:25:30 +02:00
jvoisin ec4b969e2c Replace latin encoding with utf-8 2019-04-07 09:27:22 +02:00
jvoisin 5acabcae19 Remove resource bundles for messages as well 2019-04-06 21:46:55 +02:00
Andrew DeMaria 15c6a8861b Fix formatting on external player for firefox
Signed-off-by: Andrew DeMaria <lostonamountain@gmail.com>
2019-04-05 23:14:48 -04:00
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