# File lib/nmap/parser.rb, line 716
        def ip_protos(state = "")
                list = @ipProtos.values.find_all { |proto|
                        state.empty? or
                        proto.state == state or
                        proto.state.split(/\|/).include?(state)
                }.sort

                list.each { |proto| yield proto } if block_given?

                list
        end