mirror of
https://github.com/neocities/neocities.git
synced 2025-04-25 09:42:36 +02:00
check for ip addresses being used for custom domains
This commit is contained in:
parent
d10713455c
commit
e1113287b4
1 changed files with 12 additions and 0 deletions
|
@ -1,3 +1,6 @@
|
||||||
|
require 'socket'
|
||||||
|
require 'ipaddr'
|
||||||
|
|
||||||
get '/settings/?' do
|
get '/settings/?' do
|
||||||
require_login
|
require_login
|
||||||
@site = parent_site
|
@site = parent_site
|
||||||
|
@ -152,6 +155,15 @@ post '/settings/:username/custom_domain' do
|
||||||
redirect "/settings/#{@site.username}/#custom_domain"
|
redirect "/settings/#{@site.username}/#custom_domain"
|
||||||
end
|
end
|
||||||
|
|
||||||
|
begin
|
||||||
|
addr = IPAddr.new @site.values[:domain]
|
||||||
|
if addr.ipv4? || addr.ipv6?
|
||||||
|
flash[:error] = 'IP addresses are not allowed. Please enter a valid domain name.'
|
||||||
|
redirect "/settings/#{@site.username}#custom_domain"
|
||||||
|
end
|
||||||
|
rescue IPAddr::InvalidAddressError
|
||||||
|
end
|
||||||
|
|
||||||
begin
|
begin
|
||||||
Socket.gethostbyname @site.values[:domain]
|
Socket.gethostbyname @site.values[:domain]
|
||||||
rescue SocketError, ResolutionError => e
|
rescue SocketError, ResolutionError => e
|
||||||
|
|
Loading…
Add table
Reference in a new issue