module Irrc::Irrd::Api
Private Instance Methods
error_code()
click to toggle source
# File lib/irrc/irrd/api.rb, line 58 def error_code /^(D|E|F.*)\n$/ end
expand_aut_num_command(autnum)
click to toggle source
# File lib/irrc/irrd/api.rb, line 45 def expand_aut_num_command(autnum) "-K -r -i origin #{autnum}" if autnum && autnum != '' end
expand_set_command(as_set)
click to toggle source
# File lib/irrc/irrd/api.rb, line 23 def expand_set_command(as_set) "!i#{as_set},1" if as_set && as_set != '' end
parse_aut_nums_from_as_set(result)
click to toggle source
# File lib/irrc/irrd/api.rb, line 27 def parse_aut_nums_from_as_set(result) case result when success_code result.gsub(/^#{$1}$/, '').strip.split.grep(/^AS/).uniq when error_code raise $1 end end
parse_prefixes_from_aut_num(result, protocol)
click to toggle source
# File lib/irrc/irrd/api.rb, line 49 def parse_prefixes_from_aut_num(result, protocol) result.scan(Irrc::Irr.route_tag(protocol)).flatten.uniq end
parse_prefixes_from_route_set(result)
click to toggle source
# File lib/irrc/irrd/api.rb, line 36 def parse_prefixes_from_route_set(result) case result when success_code result.gsub(/^#{$1}$/, '').strip.split.reject {|p| p =~ /^A\d+$/}.uniq when error_code raise $1 end end
persist_command()
click to toggle source
# File lib/irrc/irrd/api.rb, line 8 def persist_command '!!' end
return_code()
click to toggle source
# File lib/irrc/irrd/api.rb, line 62 def return_code # Query with ripe option commands like "-i origin AS2515" returns doubled blank lines. # And we can't easily tell whether it succeeded or not. Regexp.union(success_code, error_code, /^\n\n$/) end
set_source_command(sources)
click to toggle source
Public: Returns a IRR command to specify authoritative IRR source.
sources - Array object containing IRR source names.
# File lib/irrc/irrd/api.rb, line 15 def set_source_command(sources) if sources && !sources.empty? "!s#{sources.join(',')}" else '!s-*' end end
success_code()
click to toggle source
See www.irrd.net/irrd-user.pdf for return codes
# File lib/irrc/irrd/api.rb, line 54 def success_code /^(C.*)\n$/ end