Make sure URL base doesn't start with http or https

Closes #532
pull/3113/head
Mark McDowall 10 years ago
parent f547cfd0c9
commit 49acae0fbb

@ -42,6 +42,9 @@ namespace NzbDrone.Api.Config
.ValidIp4Address() .ValidIp4Address()
.NotListenAllIp4Address() .NotListenAllIp4Address()
.When(c => c.BindAddress != "*"); .When(c => c.BindAddress != "*");
SharedValidator.RuleFor(c => c.UrlBase)
.ValidUrlBase();
} }
private HostConfigResource GetHostConfig() private HostConfigResource GetHostConfig()

@ -84,7 +84,7 @@
<SpecificVersion>False</SpecificVersion> <SpecificVersion>False</SpecificVersion>
<HintPath>..\packages\RestSharp.105.0.1\lib\net4\RestSharp.dll</HintPath> <HintPath>..\packages\RestSharp.105.0.1\lib\net4\RestSharp.dll</HintPath>
</Reference> </Reference>
<Reference Include="CookComputing.XmlRpc, Version=2.5.0.0, Culture=neutral, processorArchitecture=MSIL"> <Reference Include="CookComputing.XmlRpc, Version=2.5.0.0, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion> <SpecificVersion>False</SpecificVersion>
<HintPath>..\packages\xmlrpcnet.2.5.0\lib\net20\CookComputing.XmlRpcV2.dll</HintPath> <HintPath>..\packages\xmlrpcnet.2.5.0\lib\net20\CookComputing.XmlRpcV2.dll</HintPath>
</Reference> </Reference>

@ -62,5 +62,10 @@ namespace NzbDrone.Core.Validation
{ {
return ruleBuilder.WithState(v => NzbDroneValidationState.Warning); return ruleBuilder.WithState(v => NzbDroneValidationState.Warning);
} }
public static IRuleBuilderOptions<T, string> ValidUrlBase<T>(this IRuleBuilder<T, string> ruleBuilder)
{
return ruleBuilder.SetValidator(new RegularExpressionValidator(@"^(?!\/?https?://[-a-z0-9.]+)", RegexOptions.IgnoreCase)).WithMessage("Must be a valid URL path (ie: '/sonarr')");
}
} }
} }
Loading…
Cancel
Save