Commit Graph

1292 Commits

Author SHA1 Message Date
VooDooS
bb807554e2 Replace CRLF injection mitigation by use of .NET ip parsing 2019-04-12 13:48:12 +02:00
VooDooS
56d1050bac Replace custom ip "normalization" by methods from IPAddress 2019-04-11 17:49:18 +02:00
VooDooS
a6e1b23eb0 Simplify headers use in WSS 2019-04-11 17:49:14 +02:00
Joshua M. Boniface
75a4f04cce
Merge pull request #1209 from joshuaboniface/hotfix-authprovider-create
Override username with AuthenticationProvider
2019-04-10 00:18:08 -04:00
Ulysse
a1d50a6d05 Clean WebSocketSharpRequest.PathInfo (#1212)
* rm useless ResolvePathInfoFromMappedPath method

* rm useless NormalizePathInfo method

* Use request.Path instead of RawUrl

* Removing unused `HandlerFactoryPath` field

* Use an  expression body definition and rm field `pathInfo`

* More (syntactic) sugar

* Who needs blocks in cases ?
2019-04-09 20:19:27 +02:00
Joshua Boniface
1af9c047fb Override username with AuthenticationProvider
Pass back the Username directive returned by an AuthenticationProvider
to the calling code, so we may override the user-provided Username
value if the authentication provider passes this back. Useful for
instance in an LDAP scenario where what the user types may not
necessarily be the "username" that is mapped in the system, e.g.
the user providing 'mail' while 'uid' is the "username" value.
Could also then be extensible to other authentication providers
as well, should they wish to do a similar thing.
2019-04-07 19:51:45 -04:00
Joshua Boniface
754e76a61b Add TODO to remove string target 2019-04-04 02:34:23 -04:00
Joshua Boniface
09505e0988 Apply review feedback
Remove a few superfluous/testing log statements, and print the
deletion debug messages when it occurs rather than earlier. Use
a nicer name for the isDirectory variable.
2019-04-04 01:54:31 -04:00
Joshua Boniface
05a4161fd3 Correct the installation and removal of plugins
Upgrading plugins was broken for various reasons. There are four
fixes and a minor one:

1. Use a directory name based only on the `Name` of the plugin, not
   the source filename, which contains the version. Avoids strange
   duplication of the plugin.
2. Use the new directory name for the deletes if it's present, so
   that installation and removal happen at that directory level
   and we don't leave empty folders laying around. Ensures we
   properly remove additional resources in plugins too, not just
   the main `.dll` file.
3. Ignore the incoming `target` when installing, and always set
   it ourself to the proper directory, which would matter when
   reinstalling.
4. Deletes an existing target directory before installing if it
   exists. Note that not calling any of the plugin removal code
   is intentional; I suspect that would delete configurations
   unexpectedly when upgrading which would be annoying. This way,
   it just replaces the files and then reloads.
5. (Minor) Added some actual debug messages around the plugin
   download section so failures can be more accurately seen.
2019-04-03 20:05:14 -04:00
Joshua Boniface
38fcd31917 Search all subdirectories for Plugins
This was added in #801 which broke the previous plugin install
behaviour. Previously plugins could be loaded from subdirectories
but this search was only for the highest level. Change it to search
all subdirectories instead to restore the previous behaviour.

Also modifies the same option from #934, though I'm not 100% sure
if this is needed here.
2019-04-02 18:29:14 -04:00
Vasily
79d9b8e693
Merge pull request #1168 from Bond-009/io
Improve IO code
2019-04-01 16:20:23 +03:00
Joshua Boniface
f0fbd0232c Correct bad quote characters 2019-03-29 19:13:01 -04:00
Joshua M. Boniface
72dd609109
Merge pull request #1149 from LogicalPhallacy/ImprovedPasswordReset
Adds per user password reset
2019-03-29 18:26:30 -04:00
LogicalPhallacy
13e94a8b1b
Remove dashes from pins 2019-03-29 12:48:07 -07:00
Bond_009
f911fda34f Merge ifs 2019-03-29 20:34:42 +01:00
Phallacy
2d396cb589 adds readonly to properties 2019-03-29 07:10:49 -07:00
Phallacy
b56031b9f3 fix byte string 2019-03-28 20:49:11 -07:00
Bond_009
41df562419 Improve IO code
* Style changes
* Remove remnants of SMB support
* Use `GetInvalidFileNameChars` instead of rolling our own
* Remove possible unexpected behaviour with async file streams
* Remove some dead code
2019-03-28 23:26:43 +01:00
Bond_009
3001f21f8d Hacky fix for a hacky issue 2019-03-28 19:11:05 +01:00
Phallacy
48b50a22a4 switched to a hexa string with crypto random backing 2019-03-28 08:15:53 -07:00
Phallacy
5e8496bc59 minor fixes and usings 2019-03-27 22:46:25 -07:00
Joshua M. Boniface
2dbc1153e8
Merge pull request #934 from Bond-009/plugin
WIP - Don't require a restart for 75% of plugins
2019-03-27 21:35:09 -04:00
Bond-009
b07c146fd9
Update Emby.Server.Implementations/Library/DefaultPasswordResetProvider.cs
Co-Authored-By: LogicalPhallacy <44458166+LogicalPhallacy@users.noreply.github.com>
2019-03-27 16:17:18 -07:00
Bond-009
73a9079ee2
Merge branch 'master' into httpclient 2019-03-27 19:43:02 +01:00
Joshua M. Boniface
cc2edc4d66
Merge pull request #1151 from Phlogi/patch-1
Use public ports and advertise DNS if available for WAN address
2019-03-27 13:54:14 -04:00
Bond-009
d0fbd260d5
Merge branch 'master' into httpclient 2019-03-27 16:34:26 +01:00
Bond_009
b69b19ddce Move messageId out of outer loop 2019-03-27 16:28:52 +01:00
Bond_009
6c0e2e249d Even more duplicate code removed 2019-03-27 16:13:36 +01:00
Bond_009
8ed5d154b7 Remove duplicate code 2019-03-27 16:07:08 +01:00
Bond_009
157a86d0f1 Remove dead code 2019-03-27 12:43:46 +01:00
Bond-009
a332092769 Reduce complexity http routes 2019-03-26 19:20:40 +01:00
Phallacy
6be8624373 async improvements and post reset cleanups 2019-03-25 22:17:23 -07:00
LogicalPhallacy
740c95d557
Apply minor suggestions from code review
Co-Authored-By: LogicalPhallacy <44458166+LogicalPhallacy@users.noreply.github.com>
2019-03-25 21:40:10 -07:00
Phlogi
122cba2aa7
Correct use of local variable wanAddress. 2019-03-25 22:26:05 +01:00
Bond-009
b44a70ff36 Simplify/remove/clean code
* Remove useless runtime check (we only support one)
* Remove unused args
* Remove a global constant

And ofc fix some warnings ;)
2019-03-25 22:25:32 +01:00
Phlogi
1b03f078b9
No need to assign empty string. 2019-03-25 21:43:50 +01:00
Phlogi
4c8f8cf64c
Removed trailing spaces, renamed get wan IP function. 2019-03-25 21:34:55 +01:00
Bond_009
2696ac5eac Lower the amount of running tasks 2019-03-25 21:33:48 +01:00
Bond-009
6566c91360 Seperate changes from #1023
The unrelated changes from #1023 (and more)
2019-03-25 21:27:03 +01:00
Claus Vium
6480cfcc87
Formatting update Emby.Server.Implementations/ApplicationHost.cs
Co-Authored-By: Phlogi <Phlogi@users.noreply.github.com>
2019-03-25 10:19:08 +01:00
Claus Vium
e36d424b5f
Formatting update Emby.Server.Implementations/ApplicationHost.cs
Co-Authored-By: Phlogi <Phlogi@users.noreply.github.com>
2019-03-25 10:18:47 +01:00
Claus Vium
f7e7d72688
Formatting update Emby.Server.Implementations/ApplicationHost.cs
Co-Authored-By: Phlogi <Phlogi@users.noreply.github.com>
2019-03-25 10:18:18 +01:00
Claus Vium
3474568ce2
Update Emby.Server.Implementations/ApplicationHost.cs
Co-Authored-By: Phlogi <Phlogi@users.noreply.github.com>
2019-03-25 10:18:04 +01:00
Claus Vium
89f2dfd78a
Update Emby.Server.Implementations/ApplicationHost.cs
Co-Authored-By: Phlogi <Phlogi@users.noreply.github.com>
2019-03-25 10:17:53 +01:00
Claus Vium
2c4c56d6d6
Formatting update Emby.Server.Implementations/ApplicationHost.cs
Co-Authored-By: Phlogi <Phlogi@users.noreply.github.com>
2019-03-25 10:17:40 +01:00
Phlogi
087d4153ae
Fix check for available WAN address. 2019-03-24 21:47:18 +01:00
Phallacy
86772bd7bd removes needless dictionary 2019-03-24 12:17:32 -07:00
Claus Vium
4e2841f0d7
Update Emby.Server.Implementations/Library/UserManager.cs
Co-Authored-By: LogicalPhallacy <44458166+LogicalPhallacy@users.noreply.github.com>
2019-03-24 11:41:03 -07:00
Phallacy
26fe4040bf fixes some usings 2019-03-24 11:40:00 -07:00
Phlogi
fb7f29de18
Format the WAN API Url correctly with https and Port. 2019-03-24 18:33:21 +01:00
Phlogi
d18252542d
Also add the WAN switch to the public system info. 2019-03-24 17:11:21 +01:00
Phlogi
030fcaac15
Proper access to configuration objects 2019-03-24 17:02:03 +01:00
Phlogi
7ebb043249
Removed comment, renamed methods consistently. 2019-03-24 16:50:39 +01:00
Claus Vium
598b1c9966
Update Emby.Server.Implementations/ApplicationHost.cs
Co-Authored-By: Phlogi <Phlogi@users.noreply.github.com>
2019-03-24 16:47:59 +01:00
Claus Vium
cf36aaef2b
Update Emby.Server.Implementations/ApplicationHost.cs
Co-Authored-By: Phlogi <Phlogi@users.noreply.github.com>
2019-03-24 16:47:48 +01:00
Claus Vium
f30af9cd5f
Update Emby.Server.Implementations/ApplicationHost.cs
Co-Authored-By: Phlogi <Phlogi@users.noreply.github.com>
2019-03-24 16:47:42 +01:00
Phlogi
4ffec8ad26
Fix build, missing changes. 2019-03-24 12:19:10 +01:00
Phlogi
69cc5814d8
Change WAN IP behaviour: Use ServerConfiguration.WanDdns if set in configuration. 2019-03-24 12:11:46 +01:00
Phlogi
414a318a0d
WAN Address should use public ports instead of local ports.
https://github.com/jellyfin/jellyfin/issues/601#issuecomment-475941080
2019-03-24 11:59:40 +01:00
Phallacy
758e35baba greaterthen/lessthen reversal fix 2019-03-24 00:30:16 -07:00
Phallacy
09921a00aa made password resets an interface and per user 2019-03-22 00:01:23 -07:00
Bill Thornton
4cd8903abc Fix default value for Expires header 2019-03-19 23:13:02 -04:00
Joshua M. Boniface
fc79659549
Merge pull request #1127 from LogicalPhallacy/lockoutfix
Add configurable user lockout
2019-03-18 21:13:51 -04:00
Vasily
e81a6adb95
Merge pull request #1090 from redSpoutnik/subtitle-display-title
Set DisplayTitle for subtitles
2019-03-17 09:36:35 +03:00
Phallacy
80aedcd7e2 really fixed line endings 2019-03-16 21:36:45 -07:00
Phallacy
fc28c9237c fixed line endings 2019-03-16 21:34:26 -07:00
Phallacy
b04200ca68 adding regex fix 2019-03-16 21:21:14 -07:00
Joshua M. Boniface
e3dbed1c1a
Update Emby.Server.Implementations/Library/UserManager.cs
Co-Authored-By: LogicalPhallacy <44458166+LogicalPhallacy@users.noreply.github.com>
2019-03-16 10:16:23 -07:00
redSpoutnik
480a6607e2
Merge branch 'master' into subtitle-display-title 2019-03-16 17:54:57 +01:00
Phallacy
7f0fa74467 updated regex to string literal with escaped - 2019-03-16 00:38:31 -07:00
LogicalPhallacy
9df1506794
Merge pull request #2 from LogicalPhallacy/master
update lockoutfix to latest for testing
2019-03-16 00:26:12 -07:00
LogicalPhallacy
2d0844b5db
Merge pull request #1 from jellyfin/master
merging myself to latest
2019-03-16 00:25:16 -07:00
Phallacy
1ee016c997 configurable user lockout 2019-03-16 00:18:52 -07:00
Phallacy
221389089c quick fix for auth bug 2019-03-15 21:25:19 -07:00
Vasily
11fde02035
Merge pull request #1105 from ploughpuff/ratelimit
Only delay making MusicBrainz request if necessary
2019-03-15 16:01:55 +03:00
PloughPuff
d125fbc43d Added contact email to user agent
MusicBrainz request a contact email address is supplied in comment section of user agent field.
2019-03-14 21:34:09 +00:00
redSpoutnik
427688a0a0 Change subtitles DisplayTitle behavior 2019-03-14 22:31:51 +01:00
Erwin de Haan
21cc38fcf4 Adjusted AssemblyCopyright attribute values. 2019-03-14 22:17:56 +01:00
Vasily
208585d3f6
Merge pull request #1106 from Bond-009/warn2
More warning fixes
2019-03-14 19:54:44 +03:00
Bond-009
bf43dc00bb More warning fixes 2019-03-13 22:32:52 +01:00
Bond-009
e64aaebbac Improvements around streams
* Use ArrayPool instead of allocating new buffers each time
* Remove NetworkStream copy
* Remove some dead code
2019-03-13 21:11:01 +01:00
Vasily
605bf0e8c3
Merge pull request #1100 from ploughpuff/rmprobeswitch
Finalise removal of --ffprobe switch
2019-03-13 01:42:07 +03:00
Vasily
89e2af6b57
Merge pull request #1096 from dkanada/opensubs
Remove open subtitles from the server
2019-03-13 01:22:55 +03:00
PloughPuff
b864e9da2a Finalise removal of --ffprobe switch
Removed --ffprobe from src files and server/docker scripts.
2019-03-12 22:09:18 +00:00
Vasily
297f25cfc2
Merge pull request #1059 from Bond-009/os
Remove EnvironmentInfo
2019-03-13 00:01:00 +03:00
Joshua M. Boniface
6751560228
Merge pull request #1092 from joshuaboniface/configurable-webdir
Add configurable webdir option
2019-03-12 12:51:11 -04:00
Bond-009
3ddbda9aca
Merge branch 'master' into xml 2019-03-12 16:37:18 +01:00
Vasily
1fef8bf266
Merge pull request #1060 from Bond-009/assinfo
Remove redundant class AssemblyInfo
2019-03-12 16:34:21 +03:00
Joshua Boniface
3c4043199a Implement review feedback 2019-03-12 09:18:45 -04:00
Vasily
0220309ea7
Merge pull request #1095 from Bond-009/fix1077
Add AppConfig to the DI service collection
2019-03-12 12:56:39 +03:00
Vasily
497b4f834f
Merge pull request #1021 from Bond-009/failonwarn
Fail on warnings for Jellyfin.Server
2019-03-12 11:31:22 +03:00
dkanada
715ddbb3b0 remove open subtitles from the server 2019-03-11 18:10:31 -07:00
Bond-009
0ff038f0a2 Fix nullref 2019-03-11 23:13:01 +01:00
Vasily
2324c408ba
Merge pull request #1089 from jellyfin/translations
Update translations
2019-03-11 15:30:50 +03:00
Joshua Boniface
5f7524aca2 Remove unneccessary string 2019-03-10 17:21:10 -04:00
Joshua Boniface
132ce3ece1 Add further resources to complete WebPath 2019-03-10 17:04:18 -04:00
Joshua Boniface
25deca9579 Make use of WebPath 2019-03-10 16:20:46 -04:00
Joshua Boniface
93d15cd969 Add configuration flag for Web directory 2019-03-10 16:17:48 -04:00
WWWesten
16adaa64c9 Translated using Weblate (Kazakh)
Currently translated at 100.0% (94 of 94 strings)

Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/kk/
2019-03-10 03:06:01 -04:00
Matsuri
93fe7957fb Translated using Weblate (Chinese (Simplified))
Currently translated at 97.8% (92 of 94 strings)

Translation: Jellyfin/Jellyfin
Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-core/zh_Hans/
2019-03-10 03:06:00 -04:00
Joshua M. Boniface
fb96763f65
Merge pull request #1077 from Bond-009/musicbrainz
Make MusicBrainz base url configurable
2019-03-09 23:19:32 -05:00
Claus Vium
f2062ba19b Disable HTTPS in Kestrel if Certificate is null 2019-03-08 22:25:45 +01:00
Bond-009
7f42dcc60f Remove more unused stuff 2019-03-08 20:32:14 +01:00
Bond-009
369785c184 Remove usage of depricated 'WebRequest'
Ref: https://docs.microsoft.com/en-us/dotnet/api/system.net.webrequest?view=netframework-4.7.2
2019-03-08 20:17:17 +01:00
Bond-009
58061a7295 Make MusicBrainz base url configurable 2019-03-08 17:15:52 +01:00
Claus Vium
e3b844b5aa Add urlprefixes during init 2019-03-07 22:49:41 +01:00
Bond-009
decaffed86 Remove EnvironmentInfo
This moved the last bit of usefulness of EnvironmentInfo into a static
class.
2019-03-07 22:41:41 +01:00
Bond-009
669c48cc8b
Merge pull request #1065 from cvium/closed_response
Don't set status code if response is closed
2019-03-07 22:32:01 +01:00
Claus Vium
3fa43a1e08 Don't set status code if response is closed 2019-03-07 22:26:23 +01:00
Vasily
028a98d2c1
Merge pull request #1058 from Bond-009/clean
Cleanup/simplification
2019-03-08 00:23:00 +03:00
Bond-009
620d7b560d Fail on warnings for Jellyfin.Server 2019-03-07 21:52:16 +01:00
Bond_009
37ea50a572 Reduce the amount of exceptions thrown 2019-03-07 21:42:56 +01:00
Bond-009
c5fce647de Cleanup/simplification
* Removed useless copies/allocations
* Reduced unneeded complexity
2019-03-07 21:13:13 +01:00
Claus Vium
0abe57e930 Merge remote-tracking branch 'remotes/upstream/master' into kestrel_poc 2019-03-07 20:16:51 +01:00
Bond-009
ae0ecc1b10
Merge pull request #870 from LogicalPhallacy/betterauth
Better default authentication
2019-03-07 19:11:36 +01:00
Claus Vium
dfff68b2f4 Make SkipLogExtensions static 2019-03-07 19:05:53 +01:00
Bond-009
f486f5966f
Update Emby.Server.Implementations/Library/DefaultAuthenticationProvider.cs
Co-Authored-By: LogicalPhallacy <44458166+LogicalPhallacy@users.noreply.github.com>
2019-03-07 09:56:03 -08:00
Bond-009
e91dd14b31 Remove redundent class AssemblyInfo 2019-03-07 18:10:55 +01:00
Vasily
a4b52b7264
Merge pull request #844 from ploughpuff/ffmpeg
Reworked FFmpeg path discovery and always display to user
2019-03-07 17:23:06 +03:00
Vasily
5ae0ef0527
Merge pull request #1028 from Bond-009/ratings
Simplify rating loading
2019-03-07 17:22:26 +03:00
Phallacy
dfb1d704ed made hashset static and readonly 2019-03-07 03:32:05 -08:00
Phallacy
8f4895e8a5 more fixes for perf and style 2019-03-07 03:11:41 -08:00
Bond_009
a9302b8b53 Remove useless abstraction around XmlReaderSettings
This removes the amount of stuff that needs to be passed around
Also removes some unneeded `ManagedFileSystem` usage
2019-03-07 12:04:14 +01:00
Bond-009
c31b0b311b
Apply suggestions from code review
more minor fixes before I do larger fixes

Co-Authored-By: LogicalPhallacy <44458166+LogicalPhallacy@users.noreply.github.com>
2019-03-07 02:41:44 -08:00
Claus Vium
bba049c987 Make FileSystem readonly 2019-03-06 19:29:25 +01:00
Claus Vium
21c2acc520 Remove public Host property 2019-03-06 19:27:05 +01:00
Claus Vium
394d23a73a Review comments 2019-03-06 19:14:03 +01:00
Bond-009
04db0369d4
Update LocalizationManager.cs 2019-03-06 17:31:52 +01:00
Vasily
2242c8d793
Merge pull request #915 from cvium/remove_encryptionmanager
Remove IEncryptionManager
2019-03-06 15:56:15 +03:00
Phallacy
bef665be36 Minor fixes to address style issues 2019-03-05 23:45:05 -08:00
PloughPuff
2617a49b78 Renamed Init() to SetFFmpegPath() 2019-03-05 21:29:15 +00:00
PloughPuff
ed69e690b8 Review comments
Address review comments from JustAMan, Bond-009 and cvium.
2019-03-05 21:29:15 +00:00
PloughPuff
20775116f7 Reworked FFmpeg path discovery and always display to user
1) Reworked FFmpeg and FFprobe path discovery (CLI switch, Custom xml, system $PATH, UI update trigger).  Removed FFMpeg folder from Emby.Server.Implementations.  All path discovery now in MediaEncoder.

2) Always display FFmpeg path to user in Transcode page.

3) Allow user to remove a Custome FFmpeg path and return to using system $PATH (or --ffmpeg if available).

4) Remove unused code associated with 'prebuilt' FFmpeg.

5) Much improved logging during path discovery.
2019-03-05 21:24:54 +00:00
Claus Vium
446f9bf81f Remove more Content-Length references 2019-03-05 20:48:04 +01:00
Claus Vium
913e80fd55 Add ProcessWebSocketRequest to IHttpListener 2019-03-05 20:35:07 +01:00
Claus Vium
9a4a01fb0e Fix DI in FileWriter.TransmitFile 2019-03-05 19:32:22 +01:00
Claus Vium
78742b8e4c Switch to HeaderNames instead of hardcoded strings (and other header related fixes) 2019-03-05 19:20:28 +01:00
Claus Vium
bc00617df7 Remove unused Brotli compressor 2019-03-05 10:26:43 +01:00
Phallacy
2c26517172 minor style fixes 2019-03-04 23:58:25 -08:00
Claus Vium
51648a2a21 Remove unused _listener 2019-03-05 08:05:42 +01:00
Claus Vium
12df381495 Grab content root from config and fix kestrel port bindings 2019-03-05 07:55:29 +01:00
Claus Vium
0250204f14 Expand todo 2019-03-04 22:26:57 +01:00
Bond-009
0419deeec4
Update LocalizationManager.cs 2019-03-04 20:18:35 +01:00
Claus Vium
9020f68ce1 Use QueryHelpers.AddQueryString 2019-03-04 20:08:54 +01:00
Claus Vium
557c4d065d Review comments 2019-03-04 19:55:59 +01:00
Claus Vium
6cc1bd544a Fix a logging statement 2019-03-04 19:31:26 +01:00
Joshua M. Boniface
aba22b92bc
Merge pull request #735 from Bond-009/loop
Readability changes
2019-03-04 00:27:48 -05:00
Claus Vium
040871459b Remove some unused references 2019-03-03 14:35:54 +01:00
Claus Vium
6263b73d9c Await host startup 2019-03-03 14:30:41 +01:00
Claus Vium
1cc433eabc Start the webhost before RunStartupTasks and fix ContentEncoding 2019-03-03 13:54:14 +01:00