Commit Graph

128 Commits

Author SHA1 Message Date
Bond_009
a9a5fcde81 Use ArgumentNullException.ThrowIfNull helper method
Did a simple search/replace on the whole repo (except the RSSDP project)
This reduces LOC and should improve performance (methods containing a throw statement don't get inlined)

```
if \((\w+) == null\)
\s+\{
\s+throw new ArgumentNullException\((.*)\);
\s+\}
```

```
ArgumentNullException.ThrowIfNull($1);
```
2022-10-06 20:21:23 +02:00
Shadowghost
bd9a940fed Declare VirtualInterfaceNames as string array for consistency 2022-10-01 21:42:31 +02:00
luz paz
9ec2870b10 Fix various typos
Found via `codespell -q 3 -S ./Emby.Server.Implementations/Localization -L allready,doesnt,inh,receivedfrom,whoknows`
2022-08-15 06:48:34 -04:00
Shadowghost
59a86568d9 Cleanup and fixes 2022-07-21 22:09:54 +02:00
Shadowghost
cea8e8bbf6 Fix logging output 2022-07-21 19:17:44 +02:00
Shadowghost
b5c1d6129e Remove more unused network configuration parameters 2022-07-21 11:43:45 +02:00
Shadowghost
f6e41269d9 Enforce interface bindings on SSDP, add Loopback to LAN if no LAN defined 2022-07-21 09:26:18 +02:00
Shadowghost
358642c2d9 Fix build, fix loopback binding, exclude unsupported IPs from bind 2022-07-20 21:51:12 +02:00
Shadowghost
2d3a16ad0f Simplify code 2022-07-20 21:19:35 +02:00
Shadowghost
8075cb4e99 Cleanup and sort NetworkConfiguration 2022-07-20 16:14:56 +02:00
Shadowghost
2281b8c997 Move away from using Collection, simplify code, add proper ordering 2022-07-20 14:29:30 +02:00
Shadowghost
64ffd5fd95 Move subnet parser to NetworkExtensions 2022-07-20 09:45:57 +02:00
Shadowghost
997aa3f1e7 Fix build 2022-07-19 21:53:10 +02:00
Shadowghost
066db8ac7f Migrate NetworkManager and Tests to native .NET IP objects 2022-07-19 21:28:04 +02:00
dependabot[bot]
812841d01e
Bump StyleCop.Analyzers from 1.2.0-beta.406 to 1.2.0-beta.435 (#7726)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-05-09 15:24:09 +02:00
Cody Robibero
94a69c8a8b Merge pull request #7549 from cvium/fix_isinlocalnetwork
(cherry picked from commit bdb85aeecf)
Signed-off-by: crobibero <cody@robibe.ro>
2022-04-07 12:54:58 -04:00
dependabot[bot]
dde984bd0e
Bump StyleCop.Analyzers from 1.2.0-beta.376 to 1.2.0-beta.406
Bumps [StyleCop.Analyzers](https://github.com/DotNetAnalyzers/StyleCopAnalyzers) from 1.2.0-beta.376 to 1.2.0-beta.406.
- [Release notes](https://github.com/DotNetAnalyzers/StyleCopAnalyzers/releases)
- [Commits](https://github.com/DotNetAnalyzers/StyleCopAnalyzers/compare/1.2.0-beta.376...1.2.0-beta.406)

---
updated-dependencies:
- dependency-name: StyleCop.Analyzers
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-03-21 12:22:11 +00:00
Bond_009
3cb49d6df0 Fix option to disable server discovery 2022-02-14 14:39:33 +01:00
Bond_009
2dcb2f8a9f Ban the usage of Task.Result
If the calling function can't be made async easily you can still use
.GetAwaiter().GetResult(), which is way easier to find in the future
2022-01-22 16:48:31 +01:00
Bond_009
cbfa355e31 Update StyleCop 2021-12-24 18:28:27 +01:00
cvium
0485ff1899 Create a store key constant for network 2021-11-24 13:42:14 +01:00
cvium
1c47211a9e Merge remote-tracking branch 'BaronGreenback/TVFix' into TVFix 2021-11-08 10:58:28 +01:00
cvium
f03e77a4d5 Merge branch 'master' into TVFix 2021-11-08 10:38:08 +01:00
Claus Vium
5eda5eb636
Merge pull request #6486 from fredriklindberg/support-forwarded-headers-for-api-url 2021-10-25 22:41:32 +02:00
Bond_009
13fbfe6091 Target net6.0 2021-09-24 20:15:46 +02:00
Fredrik Lindberg
90174f68e2 Dynamically populate LocalAddress based on HTTP request
Support populating the LocalAddress field in the system info
endpoint based on the x-forwarded-host and x-forwarded-proto header.

The x-forwarded-host header must contain both the host and port for
the url to be properly constructed.

Behind network configuration option that is disabled by default.
2021-09-14 21:38:11 +02:00
Claus Vium
4f51a22081
Update Jellyfin.Networking/Manager/NetworkManager.cs
Co-authored-by: Cody Robibero <cody@robibe.ro>
2021-09-07 19:52:17 +02:00
cvium
ffe5ae8056 Merge branch 'master' into TVFix 2021-09-05 10:11:17 +02:00
Rich Lander
c07e83fdf8
Invert code and style analysis configuration (#6334)
Co-authored-by: Bond-009 <bond.009@outlook.com>
2021-07-30 09:49:28 +02:00
BaronGreenback
7936ea59eb Changed selection method 2021-05-03 17:27:23 +01:00
Bond-009
eeb5d4bd1e
Merge pull request #5842 from BaronGreenback/optimization
Code Clean up: Group Methods
2021-04-29 21:14:57 +02:00
BaronGreenback
5741fa7dfa Fix url for LiveTV 2021-04-26 17:13:45 +01:00
BaronGreenback
bc1cc2d04a Remove unused using directives 2021-04-17 11:37:55 +01:00
BaronGreenback
bb6fddde9a Group Methods 2021-04-17 11:19:09 +01:00
BaronGreenback
0b774eac12
Enables the ability to bind to loopback address. (#5773) 2021-04-14 11:26:05 +02:00
Joshua M. Boniface
19e7ebb279
Merge pull request #5416 from BaronGreenback/SubnetOverlappFix 2021-04-11 13:29:00 -04:00
BaronGreenback
5d16d1f66d
Merge branch 'master' into RemoteAccessFix 2021-03-22 17:05:44 +00:00
BaronGreenback
4c7680e186 Merge remote-tracking branch 'upstream/master' into SubnetOverlappFix 2021-03-14 18:40:44 +00:00
BaronGreenback
6087831aa6 Fixed selection of correct interface ip 2021-03-14 17:30:25 +00:00
Bond_009
a8ed753f6c FxCop -> Net Analyzers (part 2) 2021-03-13 22:33:28 +01:00
BaronGreenback
4cf88f67ba
Update NetworkManager.cs 2021-03-12 14:58:04 +00:00
BaronGreenback
3fa84500cf
Update Jellyfin.Networking/Manager/NetworkManager.cs
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2021-03-11 22:46:24 +00:00
BaronGreenback
f66cb9777d
Update Jellyfin.Networking/Manager/NetworkManager.cs
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2021-03-11 22:46:07 +00:00
BaronGreenback
3fdf0de6e3 Fix remote access 2021-03-11 21:36:58 +00:00
BaronGreenback
2fe26ef136 removed parameter preset 2021-03-10 13:28:18 +00:00
Bond_009
9ed7f429c0 FxCop -> Net Analyzers (part 1) 2021-03-09 03:04:47 +01:00
BaronGreenback
a031f7e410 Fix for multiple ip's in the same subnet per interface. 2021-03-09 00:07:21 +00:00
BaronGreenback
5942948714 Kestrel workaround 2021-03-01 23:42:04 +00:00
BaronGreenback
dedc94ec91 correction of ip6 loopback 2021-03-01 21:32:49 +00:00
BaronGreenback
cc19d281e7
Update Jellyfin.Networking/Manager/NetworkManager.cs
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2021-02-27 19:10:58 +00:00
BaronGreenback
d99d95422e
Update Jellyfin.Networking/Manager/NetworkManager.cs
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2021-02-27 19:10:53 +00:00
BaronGreenback
039a4fb22d renamed method 2021-02-24 11:42:09 +00:00
BaronGreenback
b5c6e5fb97
Update Jellyfin.Networking/Manager/NetworkManager.cs
Co-authored-by: Bond-009 <bond.009@outlook.com>
2021-02-23 20:34:42 +00:00
BaronGreenback
f67137004c
Update Jellyfin.Networking/Manager/NetworkManager.cs
Co-authored-by: Bond-009 <bond.009@outlook.com>
2021-02-23 20:34:32 +00:00
BaronGreenback
ff7cae8a13 renamed method 2021-02-23 17:06:40 +00:00
BaronGreenback
5756c6dbad
Merge branch 'master' into bindfix 2021-02-21 00:44:14 +00:00
BaronGreenback
cb09096a59 optimized 2021-02-21 00:42:06 +00:00
BaronGreenback
b03bd7a299 Fix testing 2021-02-21 00:41:14 +00:00
BaronGreenback
605bd80251 Fix for ignoreVirtualInterfaces 2021-02-20 22:46:16 +00:00
Claus Vium
14bd4a110f
Merge pull request #4978 from BaronGreenback/MultipeProxies 2021-01-19 20:55:21 +01:00
BaronGreenback
9db8a4d88d reverted 2021-01-19 13:56:16 +00:00
BaronGreenback
82d365045a Removed systemIp6 functionality. 2021-01-19 12:50:11 +00:00
BaronGreenback
6a7623da02 Simplified Code 2021-01-19 10:36:37 +00:00
BaronGreenback
08e83cfa54 Remove additional debug logging. 2021-01-12 18:52:48 +00:00
BaronGreenback
35a30c9d09 Impliments KnownNetworks and KnownProxies 2021-01-12 13:07:34 +00:00
BaronGreenback
a664aac881 optimization 2021-01-06 20:46:22 +00:00
BaronGreenback
90d72d6628
Update NetworkManager.cs
Changed split character
2021-01-06 20:39:25 +00:00
Joshua M. Boniface
ccc1b8bf92
Merge pull request #4729 from BaronGreenback/19.0RC---Fix-networkInterfaceFix 2020-12-30 19:57:53 -05:00
BaronGreenback
d96c8d7efd Remove todo 2020-12-27 15:57:27 +00:00
nyanmisaka
41218c5613 fix ssl certificate cannot be saved 2020-12-11 23:52:09 +08:00
BaronGreenback
acc45b7307
Update Jellyfin.Networking/Configuration/NetworkConfiguration.cs
Co-authored-by: Cody Robibero <cody@robibe.ro>
2020-12-07 22:29:19 +00:00
Greenback
e34adc12d9 reverted change. 2020-12-07 22:16:25 +00:00
Greenback
d69f2d7d7f DNLA over HTTP only 2020-12-07 22:06:28 +00:00
BaronGreenback
abacae4520
Update NetworkManager.cs
Changed logging type.
2020-12-05 16:28:14 +00:00
Bond_009
e4fd61411f Minor improvements 2020-12-02 15:38:52 +01:00
BaronGreenback
50e375020a
[Fix] NetworkManager binding to [::] (#4549)
* Autodiscovery enable/disable patch

* Fixed [::] issue on bind. Altered test.

* Update UdpServerEntryPoint.cs

* Update Jellyfin.Networking.Tests.csproj

* Update Jellyfin.Networking.Tests.csproj

* Update INetworkManager.cs
2020-11-24 06:11:02 +01:00
Greenback
33f6b13d4f Moved INetworkManager 2020-11-21 14:05:28 +00:00
BaronGreenback
124bd4c2c0
Networking: 1 - Network Manager (#4124)
* NetworkManager

* Config file with additional options.

* Update Jellyfin.Networking/Manager/INetworkManager.cs

Co-authored-by: Cody Robibero <cody@robibe.ro>

* Update Jellyfin.Networking/Manager/INetworkManager.cs

Co-authored-by: Cody Robibero <cody@robibe.ro>

* Update MediaBrowser.Model/Configuration/ServerConfiguration.cs

Co-authored-by: Cody Robibero <cody@robibe.ro>

* Update MediaBrowser.Model/Configuration/ServerConfiguration.cs

Co-authored-by: Cody Robibero <cody@robibe.ro>

* Update MediaBrowser.Model/Configuration/ServerConfiguration.cs

Co-authored-by: Cody Robibero <cody@robibe.ro>

* Update Jellyfin.Networking/Manager/NetworkManager.cs

Co-authored-by: Cody Robibero <cody@robibe.ro>

* Split function.

* Update Jellyfin.Networking/Manager/INetworkManager.cs

Co-authored-by: Cody Robibero <cody@robibe.ro>

* fixed iterations

* Update Jellyfin.Networking.csproj

* Update NetworkManager.cs

* Updated to NetCollection 1.03.

* Update ServerConfiguration.cs

* Update StartupController.cs

* Update INetworkManager.cs

Removed public

* Update INetworkManager.cs

* Update Jellyfin.Networking/Manager/NetworkManager.cs

Co-authored-by: Claus Vium <cvium@users.noreply.github.com>

* Updated comment

* Update Jellyfin.Networking/Manager/NetworkManager.cs

Co-authored-by: Claus Vium <cvium@users.noreply.github.com>

* Update Jellyfin.Networking/Manager/NetworkManager.cs

Co-authored-by: Claus Vium <cvium@users.noreply.github.com>

* Update Jellyfin.Networking/Manager/NetworkManager.cs

Co-authored-by: Claus Vium <cvium@users.noreply.github.com>

* Update Jellyfin.Networking/Manager/NetworkManager.cs

Co-authored-by: Claus Vium <cvium@users.noreply.github.com>

* Update Jellyfin.Networking/Manager/INetworkManager.cs

Co-authored-by: Claus Vium <cvium@users.noreply.github.com>

* Remove mono code.
Removed forced chromecast option

* Inverted if

* Update Jellyfin.Networking/Manager/NetworkManager.cs

Co-authored-by: Cody Robibero <cody@robibe.ro>

* Update Jellyfin.Networking/Manager/NetworkManager.cs

Co-authored-by: Cody Robibero <cody@robibe.ro>

* Update Jellyfin.Networking/Manager/NetworkManager.cs

Co-authored-by: Cody Robibero <cody@robibe.ro>

* Update Jellyfin.Networking/Manager/NetworkManager.cs

Co-authored-by: Cody Robibero <cody@robibe.ro>

* Update Jellyfin.Networking/Manager/NetworkManager.cs

Co-authored-by: Cody Robibero <cody@robibe.ro>

* Update Jellyfin.Networking/Manager/NetworkManager.cs

Co-authored-by: Cody Robibero <cody@robibe.ro>

* Moved config into a separate container

* Update Jellyfin.Networking/Manager/NetworkManager.cs

Co-authored-by: Cody Robibero <cody@robibe.ro>

* Changed sortedList to dictionary.

* Update INetworkManager.cs

Changed UpdateSettings param type

* Update NetworkManager.cs

* Update NetworkManager.cs

* Update NetworkManager.cs

* Update NetworkConfiguration.cs

* Update INetworkManager.cs

* Update Jellyfin.Networking/Manager/NetworkManager.cs

Co-authored-by: Claus Vium <cvium@users.noreply.github.com>

* Update Jellyfin.Networking/Manager/NetworkManager.cs

Co-authored-by: Claus Vium <cvium@users.noreply.github.com>

* Update MediaBrowser.Model/Configuration/ServerConfiguration.cs

Co-authored-by: Cody Robibero <cody@robibe.ro>

* Update MediaBrowser.Model/Configuration/ServerConfiguration.cs

Co-authored-by: Cody Robibero <cody@robibe.ro>

* Updated changes github didn't update.

* Fixed compilation.

* Update Jellyfin.Networking/Manager/NetworkManager.cs

Co-authored-by: Cody Robibero <cody@robibe.ro>

* Update Jellyfin.Networking/Manager/NetworkManager.cs

Co-authored-by: Cody Robibero <cody@robibe.ro>

* Update Jellyfin.Networking/Manager/NetworkManager.cs

Co-authored-by: Cody Robibero <cody@robibe.ro>

* Removed read locking.

* Update NetworkManager.cs

Changed configuration event to NamedConfigurationUpdated

* updated comment

* removed whitespace

* Updated NetCollection to 1.0.6
Updated DXCopAnalyser to 3.3.1

* removed NetCollection

* Update NetworkManager.cs

* Update NetworkExtensions.cs

* Update NetworkExtensions.cs

Removed function.

* Update NetworkExtensions.cs

* Update NetworkManager.cs

Changed ToString() to AsString() as native collection formats incorrectly.

* Update Jellyfin.Networking/Manager/NetworkManager.cs

Co-authored-by: Cody Robibero <cody@robibe.ro>

* Update NetworkExtensions.cs

* Update Jellyfin.Networking/Configuration/NetworkConfiguration.cs

Co-authored-by: h1dden-da3m0n <33120068+h1dden-da3m0n@users.noreply.github.com>

* Update Jellyfin.Networking/Manager/NetworkManager.cs

Co-authored-by: h1dden-da3m0n <33120068+h1dden-da3m0n@users.noreply.github.com>

* Update Jellyfin.Networking/Configuration/NetworkConfiguration.cs

Co-authored-by: h1dden-da3m0n <33120068+h1dden-da3m0n@users.noreply.github.com>

* Update Jellyfin.Networking/Configuration/NetworkConfiguration.cs

Co-authored-by: h1dden-da3m0n <33120068+h1dden-da3m0n@users.noreply.github.com>

* Update MediaBrowser.Common/Net/IPObject.cs

Co-authored-by: h1dden-da3m0n <33120068+h1dden-da3m0n@users.noreply.github.com>

* updated

* Replaced NetCollection with Collection<IPObject>

* Update MediaBrowser.Common/Net/NetworkExtensions.cs

Co-authored-by: Cody Robibero <cody@robibe.ro>

* Update MediaBrowser.Model/Configuration/PathSubstitution.cs

Co-authored-by: Cody Robibero <cody@robibe.ro>

* Update MediaBrowser.Common/Net/NetworkExtensions.cs

Co-authored-by: Cody Robibero <cody@robibe.ro>

* Update Jellyfin.Networking/Manager/NetworkManager.cs

Co-authored-by: Cody Robibero <cody@robibe.ro>

* Update Jellyfin.Networking/Manager/NetworkManager.cs

Co-authored-by: Cody Robibero <cody@robibe.ro>

* Update Jellyfin.Networking/Manager/NetworkManager.cs

Co-authored-by: Cody Robibero <cody@robibe.ro>

* Update Jellyfin.Networking/Manager/NetworkManager.cs

Co-authored-by: Cody Robibero <cody@robibe.ro>

* Update Jellyfin.Networking/Manager/NetworkManager.cs

Co-authored-by: Cody Robibero <cody@robibe.ro>

* Update MediaBrowser.Common/Net/IPObject.cs

Co-authored-by: Cody Robibero <cody@robibe.ro>

* Update MediaBrowser.Common/Net/IPObject.cs

Co-authored-by: Cody Robibero <cody@robibe.ro>

* Update MediaBrowser.Common/Net/IPObject.cs

Co-authored-by: Cody Robibero <cody@robibe.ro>

* Update MediaBrowser.Common/Net/IPHost.cs

Co-authored-by: Cody Robibero <cody@robibe.ro>

* Update MediaBrowser.Common/Net/IPHost.cs

Co-authored-by: Cody Robibero <cody@robibe.ro>

* Update MediaBrowser.Common/Net/IPHost.cs

Co-authored-by: Cody Robibero <cody@robibe.ro>

* Update MediaBrowser.Common/Net/IPHost.cs

Co-authored-by: Cody Robibero <cody@robibe.ro>

* Update MediaBrowser.Common/Net/IPHost.cs

Co-authored-by: Cody Robibero <cody@robibe.ro>

* Update MediaBrowser.Common/Net/IPHost.cs

Co-authored-by: Cody Robibero <cody@robibe.ro>

* Update Jellyfin.Networking/Manager/NetworkManager.cs

Co-authored-by: Cody Robibero <cody@robibe.ro>

* Update Jellyfin.Networking/Manager/NetworkManager.cs

Co-authored-by: Cody Robibero <cody@robibe.ro>

* Update MediaBrowser.Common/Net/IPHost.cs

Co-authored-by: Cody Robibero <cody@robibe.ro>

* Update MediaBrowser.Common/Net/IPObject.cs

Co-authored-by: Cody Robibero <cody@robibe.ro>

* Update MediaBrowser.Common/Net/IPObject.cs

Co-authored-by: Cody Robibero <cody@robibe.ro>

* updated comments.

* Updated comments / changes as suggested by @crobibero.

* Split function as suggested

* Fixed null ref.

* Updated comment.

* Updated cs to .net5

* Fixed issue with PublishedServerUrl

* Fixes

* Update Jellyfin.Networking/Manager/NetworkManager.cs

Co-authored-by: Claus Vium <cvium@users.noreply.github.com>

* Restored locking

* optimisation

* Added comment

* updates.

* updated.

* updates

* updated.

* Update IPHost.cs

* Update Jellyfin.Networking/Manager/NetworkManager.cs

Co-authored-by: Claus Vium <cvium@users.noreply.github.com>

* Update NetworkManager.cs

* Removed whitespace.

* Added debug logging

* Added debug.

* Update Jellyfin.Networking/Manager/NetworkManager.cs

Co-authored-by: Bond-009 <bond.009@outlook.com>

* Replaced GetAddressBytes

Co-authored-by: Cody Robibero <cody@robibe.ro>
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
Co-authored-by: h1dden-da3m0n <33120068+h1dden-da3m0n@users.noreply.github.com>
Co-authored-by: Bond-009 <bond.009@outlook.com>
2020-11-21 13:59:14 +01:00