78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
|
# File 'lib/cisco_node_utils/radius_server_group.rb', line 78
def servers=(val)
fail ArgumentError, 'Servers must be an array of valid IP addresses' \
unless val.is_a?(Array)
current = servers
current.each do |old_ip|
next if val.include?(old_ip)
config_set('radius_server_group',
'servers',
group: @name,
state: 'no',
ip: old_ip)
end
val.each do |new_ip|
unless new_ip =~ /^[a-zA-Z0-9\.\:]*$/
fail ArgumentError,
'Servers must be an array of valid IPv4/IPv6 addresses'
end
begin
IPAddr.new(new_ip)
rescue
raise ArgumentError,
'Servers must be an array of valid IPv4/IPv6 addresses'
end
next unless current.nil? || !current.include?(new_ip)
config_set('radius_server_group',
'servers',
group: @name,
state: '',
ip: new_ip)
end
end
|