mirror of
https://github.com/mistergibson/gxg-framework.git
synced 2026-08-15 11:54:29 -07:00
2779 lines
469 KiB
HTML
2779 lines
469 KiB
HTML
<!DOCTYPE html>
|
|
|
|
<html>
|
|
<head>
|
|
<meta charset="UTF-8">
|
|
|
|
<title>class GxG::Entity::LocalSystem - RDoc Documentation</title>
|
|
|
|
<script type="text/javascript">
|
|
var rdoc_rel_prefix = "../../";
|
|
var index_rel_prefix = "../../";
|
|
</script>
|
|
|
|
<script src="../../js/navigation.js" defer></script>
|
|
<script src="../../js/search.js" defer></script>
|
|
<script src="../../js/search_index.js" defer></script>
|
|
<script src="../../js/searcher.js" defer></script>
|
|
<script src="../../js/darkfish.js" defer></script>
|
|
|
|
<link href="../../css/fonts.css" rel="stylesheet">
|
|
<link href="../../css/rdoc.css" rel="stylesheet">
|
|
|
|
|
|
|
|
<body id="top" role="document" class="class">
|
|
<nav role="navigation">
|
|
<div id="project-navigation">
|
|
<div id="home-section" role="region" title="Quick navigation" class="nav-section">
|
|
<h2>
|
|
<a href="../../index.html" rel="home">Home</a>
|
|
</h2>
|
|
|
|
<div id="table-of-contents-navigation">
|
|
<a href="../../table_of_contents.html#pages">Pages</a>
|
|
<a href="../../table_of_contents.html#classes">Classes</a>
|
|
<a href="../../table_of_contents.html#methods">Methods</a>
|
|
</div>
|
|
</div>
|
|
|
|
<div id="search-section" role="search" class="project-section initially-hidden">
|
|
<form action="#" method="get" accept-charset="utf-8">
|
|
<div id="search-field-wrapper">
|
|
<input id="search-field" role="combobox" aria-label="Search"
|
|
aria-autocomplete="list" aria-controls="search-results"
|
|
type="text" name="search" placeholder="Search" spellcheck="false"
|
|
title="Type to search, Up and Down to navigate, Enter to load">
|
|
</div>
|
|
|
|
<ul id="search-results" aria-label="Search Results"
|
|
aria-busy="false" aria-expanded="false"
|
|
aria-atomic="false" class="initially-hidden"></ul>
|
|
</form>
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
<div id="class-metadata">
|
|
|
|
<div id="parent-class-section" class="nav-section">
|
|
<h3>Parent</h3>
|
|
|
|
|
|
<p class="link"><a href="../../Object.html">Object</a>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
<!-- Method Quickref -->
|
|
<div id="method-list-section" class="nav-section">
|
|
<h3>Methods</h3>
|
|
|
|
<ul class="link-list" role="directory">
|
|
|
|
<li class="calls-super" ><a href="#method-c-new">::new</a>
|
|
|
|
<li ><a href="#method-i-5B-5D">#[]</a>
|
|
|
|
<li ><a href="#method-i-architecture">#architecture</a>
|
|
|
|
<li ><a href="#method-i-cpuload">#cpuload</a>
|
|
|
|
<li ><a href="#method-i-current_user">#current_user</a>
|
|
|
|
<li ><a href="#method-i-engine">#engine</a>
|
|
|
|
<li ><a href="#method-i-environment">#environment</a>
|
|
|
|
<li ><a href="#method-i-import_services_file">#import_services_file</a>
|
|
|
|
<li ><a href="#method-i-load_average">#load_average</a>
|
|
|
|
<li ><a href="#method-i-maximum_buffer_size">#maximum_buffer_size</a>
|
|
|
|
<li ><a href="#method-i-memory">#memory</a>
|
|
|
|
<li ><a href="#method-i-memory_limits">#memory_limits</a>
|
|
|
|
<li ><a href="#method-i-network">#network</a>
|
|
|
|
<li ><a href="#method-i-network_next_port">#network_next_port</a>
|
|
|
|
<li ><a href="#method-i-network_port_used-3F">#network_port_used?</a>
|
|
|
|
<li ><a href="#method-i-network_status">#network_status</a>
|
|
|
|
<li ><a href="#method-i-platform">#platform</a>
|
|
|
|
<li ><a href="#method-i-processes">#processes</a>
|
|
|
|
<li ><a href="#method-i-service_ports">#service_ports</a>
|
|
|
|
<li ><a href="#method-i-service_ports_register">#service_ports_register</a>
|
|
|
|
<li ><a href="#method-i-service_ports_register_alias">#service_ports_register_alias</a>
|
|
|
|
<li ><a href="#method-i-service_ports_register_client">#service_ports_register_client</a>
|
|
|
|
<li ><a href="#method-i-service_ports_register_usage">#service_ports_register_usage</a>
|
|
|
|
<li ><a href="#method-i-service_ports_remove_alias">#service_ports_remove_alias</a>
|
|
|
|
<li ><a href="#method-i-service_ports_remove_client">#service_ports_remove_client</a>
|
|
|
|
<li ><a href="#method-i-service_ports_search">#service_ports_search</a>
|
|
|
|
<li ><a href="#method-i-service_ports_usage_preference">#service_ports_usage_preference</a>
|
|
|
|
<li ><a href="#method-i-services_file">#services_file</a>
|
|
|
|
<li ><a href="#method-i-valid_modes">#valid_modes</a>
|
|
|
|
</ul>
|
|
</div>
|
|
|
|
</div>
|
|
</nav>
|
|
|
|
<main role="main" aria-labelledby="class-GxG::Entity::LocalSystem">
|
|
<h1 id="class-GxG::Entity::LocalSystem" class="class">
|
|
class GxG::Entity::LocalSystem
|
|
</h1>
|
|
|
|
<section class="description">
|
|
|
|
<p>SysInfo provide default filesystem object</p>
|
|
|
|
</section>
|
|
|
|
|
|
<section id="5Buntitled-5D" class="documentation-section">
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<section id="public-class-5Buntitled-5D-method-details" class="method-section">
|
|
<header>
|
|
<h3>Public Class Methods</h3>
|
|
</header>
|
|
|
|
|
|
<div id="method-c-new" class="method-detail ">
|
|
|
|
<div class="method-heading">
|
|
<span class="method-name">new</span><span
|
|
class="method-args">(bootstrap_data={})</span>
|
|
|
|
<span class="method-click-advice">click to toggle source</span>
|
|
|
|
</div>
|
|
|
|
|
|
<div class="method-description">
|
|
|
|
|
|
|
|
|
|
<div class="method-calls-super">
|
|
Calls superclass method
|
|
|
|
</div>
|
|
|
|
|
|
|
|
<div class="method-source-code" id="new-source">
|
|
<pre><span class="ruby-comment"># File lib/gxg/gxg_entities.rb, line 15</span>
|
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">initialize</span>(<span class="ruby-identifier">bootstrap_data</span>={})
|
|
<span class="ruby-comment"># Rather than only using RUBY_PLATFORM, I want to define the *specific* environment on that platform to help further characterize what is at hand.</span>
|
|
<span class="ruby-keyword">super</span>()
|
|
<span class="ruby-comment"># @thread_safety = ::Mutex.new</span>
|
|
<span class="ruby-ivar">@thread_safety</span> = <span class="ruby-operator">::</span><span class="ruby-constant">Mutex</span>.<span class="ruby-identifier">new</span>
|
|
<span class="ruby-ivar">@details</span> = {}
|
|
<span class="ruby-comment">#</span>
|
|
<span class="ruby-ivar">@details</span>[<span class="ruby-value">:architecture</span>] = <span class="ruby-identifier">bootstrap_data</span>.<span class="ruby-identifier">delete</span>(<span class="ruby-value">:architecture</span>)
|
|
<span class="ruby-comment">#</span>
|
|
<span class="ruby-comment"># ### Process bootstrap_data regarding platform and environment</span>
|
|
<span class="ruby-ivar">@details</span>[<span class="ruby-value">:platform</span>] = <span class="ruby-identifier">bootstrap_data</span>.<span class="ruby-identifier">delete</span>(<span class="ruby-value">:platform</span>)
|
|
<span class="ruby-ivar">@details</span>[<span class="ruby-value">:platform_version</span>] = <span class="ruby-constant">GxG</span><span class="ruby-operator">::</span><span class="ruby-constant">Version</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">bootstrap_data</span>.<span class="ruby-identifier">delete</span>(<span class="ruby-value">:platform_version</span>))
|
|
<span class="ruby-ivar">@details</span>[<span class="ruby-value">:platform_configuration</span>] = {<span class="ruby-value">:process</span> <span class="ruby-operator">=></span> {}, <span class="ruby-value">:flags</span> <span class="ruby-operator">=></span> {}}
|
|
<span class="ruby-ivar">@details</span>[<span class="ruby-value">:environment</span>] = <span class="ruby-identifier">bootstrap_data</span>.<span class="ruby-identifier">delete</span>(<span class="ruby-value">:environment</span>)
|
|
<span class="ruby-ivar">@details</span>[<span class="ruby-value">:environment_variant</span>] = <span class="ruby-identifier">bootstrap_data</span>.<span class="ruby-identifier">delete</span>(<span class="ruby-value">:environment_variant</span>)
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">bootstrap_data</span>[<span class="ruby-value">:environment_version</span>]
|
|
<span class="ruby-ivar">@details</span>[<span class="ruby-value">:environment_version</span>] = <span class="ruby-constant">GxG</span><span class="ruby-operator">::</span><span class="ruby-constant">Version</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">bootstrap_data</span>.<span class="ruby-identifier">delete</span>(<span class="ruby-value">:environment_version</span>))
|
|
<span class="ruby-keyword">else</span>
|
|
<span class="ruby-ivar">@details</span>[<span class="ruby-value">:environment_version</span>] = <span class="ruby-keyword">nil</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-ivar">@details</span>[<span class="ruby-value">:environment_configuration</span>] = {}
|
|
<span class="ruby-comment">#</span>
|
|
<span class="ruby-comment"># ### Process CPU info</span>
|
|
<span class="ruby-ivar">@details</span>[<span class="ruby-value">:processors</span>] = <span class="ruby-identifier">bootstrap_data</span>.<span class="ruby-identifier">delete</span>(<span class="ruby-value">:processors</span>)
|
|
<span class="ruby-ivar">@details</span>[<span class="ruby-value">:processors</span>].<span class="ruby-identifier">process!</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">item</span>, <span class="ruby-identifier">selector</span>, <span class="ruby-identifier">container</span><span class="ruby-operator">|</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">selector</span>.<span class="ruby-identifier">is_any?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">String</span>, <span class="ruby-operator">::</span><span class="ruby-constant">Symbol</span>)
|
|
<span class="ruby-comment"># hash/struct processing</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">selector</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">Symbol</span>)
|
|
<span class="ruby-identifier">key</span> = <span class="ruby-identifier">selector</span>
|
|
<span class="ruby-keyword">else</span>
|
|
<span class="ruby-identifier">key</span> = <span class="ruby-identifier">selector</span>.<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">to_sym</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-comment"># massage data by key</span>
|
|
<span class="ruby-comment"># [:processor, :vendor_id, :cpu_family, :model, :model_name, :stepping, :cpu_mhz, :cache_size, :physical_id, :siblings, :core_id, :cpu_cores, :apicid, :initial_apicid, ::fpu, :fpu_exception, :cpuid_level, :wp, :flags, :bogomips, :clflush_size, :cache_alignment, :address_sizes, :power_management]</span>
|
|
<span class="ruby-identifier">entry</span> = <span class="ruby-keyword">nil</span>
|
|
<span class="ruby-keyword">case</span> <span class="ruby-identifier">key</span>
|
|
<span class="ruby-keyword">when</span> <span class="ruby-value">:processor</span>, <span class="ruby-value">:cpu_family</span>, <span class="ruby-value">:model</span>, <span class="ruby-value">:stepping</span>, <span class="ruby-value">:physical_id</span>, <span class="ruby-value">:siblings</span>, <span class="ruby-value">:core_id</span>, <span class="ruby-value">:cpu_cores</span>, <span class="ruby-value">:apicid</span>, <span class="ruby-value">:initial_apicid</span>, <span class="ruby-value">:cpuid_level</span>, <span class="ruby-value">:clflush_size</span>, <span class="ruby-value">:cache_alignment</span>
|
|
<span class="ruby-identifier">entry</span> = <span class="ruby-identifier">item</span>.<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">numeric_values</span>()
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">entry</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">Hash</span>)
|
|
<span class="ruby-identifier">item</span> = <span class="ruby-identifier">entry</span>[<span class="ruby-value">:integer</span>]
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">when</span> <span class="ruby-value">:cpu_mhz</span>, <span class="ruby-value">:bogomips</span>
|
|
<span class="ruby-identifier">entry</span> = <span class="ruby-identifier">item</span>.<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">numeric_values</span>()
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">entry</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">Hash</span>)
|
|
<span class="ruby-identifier">item</span> = <span class="ruby-identifier">entry</span>[<span class="ruby-value">:float</span>]
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">when</span> <span class="ruby-value">:cache_size</span>
|
|
<span class="ruby-identifier">entry</span> = <span class="ruby-identifier">item</span>.<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">numeric_values</span>([<span class="ruby-value">:byte</span>])
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">entry</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">Hash</span>)
|
|
<span class="ruby-identifier">item</span> = <span class="ruby-identifier">entry</span>[<span class="ruby-value">:byte</span>]
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">when</span> <span class="ruby-value">:address_sizes</span>
|
|
<span class="ruby-identifier">entry</span> = <span class="ruby-identifier">item</span>.<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">numeric_values</span>([<span class="ruby-value">:bit</span>],<span class="ruby-string">","</span>)
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">entry</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">Array</span>)
|
|
<span class="ruby-identifier">item</span> = {<span class="ruby-value">:physical_bits</span> <span class="ruby-operator">=></span> (<span class="ruby-identifier">entry</span>[<span class="ruby-value">0</span>][<span class="ruby-value">:bit</span>] <span class="ruby-operator">||</span> <span class="ruby-identifier">entry</span>[<span class="ruby-value">0</span>][<span class="ruby-value">:integer</span>]), <span class="ruby-value">:virtual_bits</span> <span class="ruby-operator">=></span> (<span class="ruby-identifier">entry</span>[<span class="ruby-value">1</span>][<span class="ruby-value">:bit</span>] <span class="ruby-operator">||</span> <span class="ruby-identifier">entry</span>[<span class="ruby-value">1</span>][<span class="ruby-value">:integer</span>])}
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">when</span> <span class="ruby-value">:flags</span>
|
|
<span class="ruby-identifier">item</span> = <span class="ruby-identifier">item</span>.<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">split</span>(<span class="ruby-string">" "</span>).<span class="ruby-identifier">to_enum</span>.<span class="ruby-identifier">map</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">flag</span><span class="ruby-operator">|</span>
|
|
<span class="ruby-identifier">flag</span>.<span class="ruby-identifier">to_sym</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">item</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">container</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Hash</span>)
|
|
<span class="ruby-identifier">container</span>.<span class="ruby-identifier">delete</span>(<span class="ruby-identifier">selector</span>)
|
|
<span class="ruby-identifier">container</span>[(<span class="ruby-identifier">key</span>)] = <span class="ruby-identifier">item</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">nil</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-comment"># TODO: Build up a list of flags that the cpu supports and are *actually* in use (i.e. PAE, ...)</span>
|
|
<span class="ruby-ivar">@details</span>[<span class="ruby-value">:platform_flags</span>] = {}
|
|
<span class="ruby-comment"># Gather platform kernel configuration data for processing.</span>
|
|
<span class="ruby-keyword">case</span> <span class="ruby-ivar">@details</span>[<span class="ruby-value">:platform</span>]
|
|
<span class="ruby-keyword">when</span> <span class="ruby-value">:linux</span>
|
|
<span class="ruby-identifier">release</span> = (<span class="ruby-string">`uname -r`</span>.<span class="ruby-identifier">split</span>(<span class="ruby-string">"\n"</span>)[<span class="ruby-value">0</span>])
|
|
<span class="ruby-identifier">likely_paths</span> = [<span class="ruby-string">"/proc/config.gz"</span>,(<span class="ruby-node">"/lib/modules/#{release}/build/.config"</span>),(<span class="ruby-node">"/usr/src/linux-#{release}/.config"</span>),(<span class="ruby-node">"/usr/src/linux-#{release}/configs/#{release}-#{@details[:architecture]}.config"</span>),(<span class="ruby-node">"/boot/config-#{release}"</span>)]
|
|
<span class="ruby-identifier">raw_data</span> = <span class="ruby-string">""</span>
|
|
<span class="ruby-identifier">likely_paths</span>.<span class="ruby-identifier">to_enum</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">the_path</span><span class="ruby-operator">|</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-operator">::</span><span class="ruby-constant">File</span>.<span class="ruby-identifier">exist?</span>(<span class="ruby-identifier">the_path</span>)
|
|
<span class="ruby-comment"># Note: at this point in everything it is ok for file io that blocks.</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_path</span> <span class="ruby-operator">==</span> <span class="ruby-string">"/proc/config.gz"</span>
|
|
<span class="ruby-operator">::</span><span class="ruby-constant">Zlib</span><span class="ruby-operator">::</span><span class="ruby-constant">GzipReader</span>.<span class="ruby-identifier">open</span>(<span class="ruby-identifier">the_path</span>) { <span class="ruby-operator">|</span><span class="ruby-identifier">gz</span><span class="ruby-operator">|</span> <span class="ruby-identifier">raw_data</span> = <span class="ruby-identifier">gz</span>.<span class="ruby-identifier">read</span> }
|
|
<span class="ruby-keyword">else</span>
|
|
<span class="ruby-operator">::</span><span class="ruby-constant">File</span>.<span class="ruby-identifier">open</span>(<span class="ruby-identifier">the_path</span>, <span class="ruby-string">"r"</span>) { <span class="ruby-operator">|</span><span class="ruby-identifier">i</span><span class="ruby-operator">|</span> <span class="ruby-identifier">raw_data</span> = <span class="ruby-identifier">i</span>.<span class="ruby-identifier">read</span> }
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">break</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-comment"># process raw_data (each line)</span>
|
|
<span class="ruby-identifier">raw_flags</span> = {}
|
|
<span class="ruby-identifier">raw_data</span>.<span class="ruby-identifier">to_enum</span>(<span class="ruby-value">:each_line</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">line_text</span><span class="ruby-operator">|</span>
|
|
<span class="ruby-identifier">flag</span> = <span class="ruby-keyword">nil</span>
|
|
<span class="ruby-identifier">setting</span> = <span class="ruby-keyword">nil</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">line_text</span>.<span class="ruby-identifier">size</span> <span class="ruby-operator">></span> <span class="ruby-value">0</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">line_text</span>[<span class="ruby-value">0</span>] <span class="ruby-operator">==</span> <span class="ruby-string">"#"</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">line_text</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-string">"is not set"</span>)
|
|
<span class="ruby-comment"># cull unset thing and make its value nil.</span>
|
|
<span class="ruby-identifier">flag</span> = <span class="ruby-identifier">line_text</span>[<span class="ruby-value">1</span><span class="ruby-operator">..</span><span class="ruby-value">-1</span>].<span class="ruby-identifier">scan</span>(<span class="ruby-regexp">/[A-Z_]*/</span>)[<span class="ruby-value">0</span>]
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">flag</span>.<span class="ruby-identifier">size</span> <span class="ruby-operator">></span> <span class="ruby-value">0</span>
|
|
<span class="ruby-comment"># exclude redundant 'CONFIG' portion</span>
|
|
<span class="ruby-identifier">flag</span> = <span class="ruby-identifier">flag</span>.<span class="ruby-identifier">split</span>(<span class="ruby-string">"_"</span>)[<span class="ruby-value">1</span><span class="ruby-operator">..</span><span class="ruby-value">-1</span>].<span class="ruby-identifier">join</span>(<span class="ruby-string">"_"</span>)
|
|
<span class="ruby-keyword">else</span>
|
|
<span class="ruby-identifier">flag</span> = <span class="ruby-keyword">nil</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">else</span>
|
|
<span class="ruby-identifier">flag</span>, <span class="ruby-identifier">setting</span> = <span class="ruby-identifier">line_text</span>.<span class="ruby-identifier">split</span>(<span class="ruby-string">"="</span>)
|
|
<span class="ruby-comment"># exclude redundant 'CONFIG' portion</span>
|
|
<span class="ruby-identifier">flag</span> = <span class="ruby-identifier">flag</span>.<span class="ruby-identifier">split</span>(<span class="ruby-string">"_"</span>)[<span class="ruby-value">1</span><span class="ruby-operator">..</span><span class="ruby-value">-1</span>].<span class="ruby-identifier">join</span>(<span class="ruby-string">"_"</span>)
|
|
<span class="ruby-keyword">if</span> (<span class="ruby-identifier">setting</span> <span class="ruby-operator">==</span> <span class="ruby-string">"y"</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">setting</span> <span class="ruby-operator">==</span> <span class="ruby-string">"y\n"</span>)
|
|
<span class="ruby-identifier">setting</span> = <span class="ruby-keyword">true</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">if</span> (<span class="ruby-identifier">setting</span> <span class="ruby-operator">==</span> <span class="ruby-string">"n"</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">setting</span> <span class="ruby-operator">==</span> <span class="ruby-string">"n\n"</span>)
|
|
<span class="ruby-identifier">setting</span> = <span class="ruby-keyword">false</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">if</span> (<span class="ruby-identifier">flag</span>)
|
|
<span class="ruby-identifier">raw_flags</span>[(<span class="ruby-identifier">flag</span>)] = <span class="ruby-identifier">setting</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-identifier">raw_data</span> = <span class="ruby-keyword">nil</span>
|
|
<span class="ruby-comment"># Note: I am *loathe* to use strings instead of symbols in hashes generally, but I don't like what ruby does</span>
|
|
<span class="ruby-comment"># with symbols and memory for temporary data sets (looking at you matz and my slapping hand twitches).</span>
|
|
<span class="ruby-identifier">universal_synonyms</span> = {<span class="ruby-string">"X86_PAE"</span> <span class="ruby-operator">=></span> <span class="ruby-string">"physical_address_extension"</span>}
|
|
<span class="ruby-identifier">universal_synonyms</span>[<span class="ruby-string">"X86_32_SMP"</span>] = <span class="ruby-string">"symetric_multiprocessing"</span>
|
|
<span class="ruby-identifier">universal_synonyms</span>[<span class="ruby-string">"X86_64_SMP"</span>] = <span class="ruby-string">"symetric_multiprocessing"</span>
|
|
<span class="ruby-identifier">universal_synonyms</span>[<span class="ruby-string">"X86_HT"</span>] = <span class="ruby-string">"hyperthreading"</span>
|
|
<span class="ruby-identifier">universal_synonyms</span>[<span class="ruby-string">"SWAP"</span>] = <span class="ruby-string">"virtual_memory"</span>
|
|
<span class="ruby-comment">#</span>
|
|
<span class="ruby-identifier">raw_flags</span>.<span class="ruby-identifier">each_pair</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">selector</span>,<span class="ruby-identifier">value</span><span class="ruby-operator">|</span>
|
|
<span class="ruby-comment">#</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">universal_synonyms</span>[(<span class="ruby-identifier">selector</span>)]
|
|
<span class="ruby-comment"># include the flag ONLY if it is actually enabled (in use) on this build of the kernel</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">value</span>
|
|
<span class="ruby-ivar">@details</span>[<span class="ruby-value">:platform_configuration</span>][<span class="ruby-value">:flags</span>][(<span class="ruby-identifier">universal_synonyms</span>[(<span class="ruby-identifier">selector</span>)].<span class="ruby-identifier">to_sym</span>)] = <span class="ruby-identifier">value</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-comment"># end linux area</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-comment">#</span>
|
|
<span class="ruby-comment"># ### Memory crap:</span>
|
|
<span class="ruby-comment">#</span>
|
|
<span class="ruby-comment"># Set computational and storage/memory limits by platform and environment:</span>
|
|
<span class="ruby-comment"># See (with respect to Ruby) : http://www.rubynotes.net/uk/operating-systems/windows/item/82-physical-memory-limits.html</span>
|
|
<span class="ruby-comment"># Note: RVALUE size (consumption size) is determined in a completely separate manner than the limit size (according to cpu virtual addressing bits used).</span>
|
|
<span class="ruby-comment"># default for 32 bit OS used:</span>
|
|
<span class="ruby-identifier">system_memory</span> = <span class="ruby-keyword">self</span>.<span class="ruby-identifier">memory</span>()
|
|
<span class="ruby-identifier">per_process_max</span> = <span class="ruby-value">2147483648</span>
|
|
<span class="ruby-keyword">case</span> <span class="ruby-ivar">@details</span>[<span class="ruby-value">:platform</span>]
|
|
<span class="ruby-keyword">when</span> <span class="ruby-value">:linux</span>
|
|
<span class="ruby-comment"># for :linux : See http://linuxfollies.blogspot.com/2010/10/linux-memory-limits-rlimits.html</span>
|
|
<span class="ruby-comment"># Note: Process::getrlimit("AS") does not reflect the reality of total ram + total swap space as a limit.</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@details</span>[<span class="ruby-value">:processors</span>][<span class="ruby-value">0</span>][<span class="ruby-value">:address_sizes</span>].<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Hash</span>)
|
|
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@details</span>[<span class="ruby-value">:processors</span>][<span class="ruby-value">0</span>][<span class="ruby-value">:address_sizes</span>][<span class="ruby-value">:virtual_bits</span>] <span class="ruby-operator">==</span> <span class="ruby-value">32</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@details</span>[<span class="ruby-value">:platform_configuration</span>][<span class="ruby-value">:flags</span>][<span class="ruby-value">:physical_address_extension</span>]
|
|
<span class="ruby-comment"># ??? what does that do to the memory limit under 32 bits</span>
|
|
<span class="ruby-comment"># 3.12GB rumored: 3350074490.88 (rounded-down)</span>
|
|
<span class="ruby-identifier">per_process_max</span> = <span class="ruby-value">3350074490</span>
|
|
<span class="ruby-keyword">else</span>
|
|
<span class="ruby-identifier">per_process_max</span> = <span class="ruby-value">3221225472</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@details</span>[<span class="ruby-value">:processors</span>][<span class="ruby-value">0</span>][<span class="ruby-value">:address_sizes</span>].<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Hash</span>)
|
|
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@details</span>[<span class="ruby-value">:processors</span>][<span class="ruby-value">0</span>][<span class="ruby-value">:address_sizes</span>][<span class="ruby-value">:virtual_bits</span>] <span class="ruby-operator">==</span> <span class="ruby-value">64</span>
|
|
<span class="ruby-comment"># odd thing: they built 64bit computers that only have slots enough for 2GB max ram (imagine!)</span>
|
|
<span class="ruby-comment"># So... to deal with this dilemma, I'm going to set the per_process_max to system_memory[:actual][:total] (:actual=RAM) unless it is really a full 8TB+.</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">system_memory</span>[<span class="ruby-value">:actual</span>][<span class="ruby-value">:total</span>] <span class="ruby-operator">>=</span> <span class="ruby-value">8796093022208</span>
|
|
<span class="ruby-identifier">per_process_max</span> = <span class="ruby-value">8796093022208</span>
|
|
<span class="ruby-keyword">else</span>
|
|
<span class="ruby-identifier">per_process_max</span> = <span class="ruby-identifier">system_memory</span>[<span class="ruby-value">:actual</span>][<span class="ruby-value">:total</span>]
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">else</span>
|
|
<span class="ruby-comment"># virtual bits reading NOT supported:</span>
|
|
<span class="ruby-keyword">if</span> ([ <span class="ruby-value">-1</span> ].<span class="ruby-identifier">pack</span>(<span class="ruby-string">'l!'</span>).<span class="ruby-identifier">length</span> <span class="ruby-operator">*</span> <span class="ruby-value">8</span>) <span class="ruby-operator">==</span> <span class="ruby-value">32</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@details</span>[<span class="ruby-value">:platform_configuration</span>][<span class="ruby-value">:flags</span>][<span class="ruby-value">:physical_address_extension</span>]
|
|
<span class="ruby-comment"># ??? what does that do to the memory limit under 32 bits</span>
|
|
<span class="ruby-comment"># 3.12GB rumored: 3350074490.88 (rounded-down)</span>
|
|
<span class="ruby-identifier">per_process_max</span> = <span class="ruby-value">3350074490</span>
|
|
<span class="ruby-keyword">else</span>
|
|
<span class="ruby-identifier">per_process_max</span> = <span class="ruby-value">3221225472</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">if</span> ([ <span class="ruby-value">-1</span> ].<span class="ruby-identifier">pack</span>(<span class="ruby-string">'l!'</span>).<span class="ruby-identifier">length</span> <span class="ruby-operator">*</span> <span class="ruby-value">8</span>) <span class="ruby-operator">==</span> <span class="ruby-value">64</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">system_memory</span>[<span class="ruby-value">:actual</span>][<span class="ruby-value">:total</span>] <span class="ruby-operator">>=</span> <span class="ruby-value">8796093022208</span>
|
|
<span class="ruby-identifier">per_process_max</span> = <span class="ruby-value">8796093022208</span>
|
|
<span class="ruby-keyword">else</span>
|
|
<span class="ruby-identifier">per_process_max</span> = <span class="ruby-identifier">system_memory</span>[<span class="ruby-value">:actual</span>][<span class="ruby-value">:total</span>]
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">when</span> <span class="ruby-value">:windows</span>
|
|
<span class="ruby-comment"># for :windows : See http://msdn.microsoft.com/en-us/library/windows/desktop/aa366778%28v=vs.85%29.aspx</span>
|
|
<span class="ruby-comment"># And "4GB-tuning' at http://msdn.microsoft.com/en-us/library/windows/desktop/bb613473%28v=vs.85%29.aspx</span>
|
|
<span class="ruby-comment"># And "BCDEdit /set' at http://msdn.microsoft.com/en-us/library/ff542202.aspx</span>
|
|
<span class="ruby-comment"># TODO: :windows : find a way to test if IMAGE_FILE_LARGE_ADDRESS_AWARE is set, whether os runs in PAE mode, and</span>
|
|
<span class="ruby-comment"># what BCDEdit /set Increaseuserva (gigabytes-as-megabytes) was set to. (kernel_mode address space = 4GB-(2048MB-to-3072MB value of it))</span>
|
|
<span class="ruby-comment"># on infamous /3GB switch in boot.ini : http://www.ditii.com/2007/04/14/memory-management-demystifying-3gb/</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@details</span>[<span class="ruby-value">:processors</span>][<span class="ruby-value">0</span>][<span class="ruby-value">:address_sizes</span>][<span class="ruby-value">:virtual_bits</span>] <span class="ruby-operator">==</span> <span class="ruby-value">32</span>
|
|
<span class="ruby-comment"># :windows 32-bit : 2GB per process memory limit (non-contiguous-only)</span>
|
|
<span class="ruby-identifier">per_process_max</span> = <span class="ruby-value">2147483648</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@details</span>[<span class="ruby-value">:processors</span>][<span class="ruby-value">0</span>][<span class="ruby-value">:address_sizes</span>][<span class="ruby-value">:virtual_bits</span>] <span class="ruby-operator">==</span> <span class="ruby-value">64</span>
|
|
<span class="ruby-comment"># :if IMAGE_FILE_LARGE_ADDRESS_AWARE is set on process image, then 8TB max per 64-bit process, except on Intel Itanium-based systems (7TB)</span>
|
|
<span class="ruby-comment"># otherwise (if unset, and since we have no F'n way to tell within ruby):</span>
|
|
<span class="ruby-identifier">per_process_max</span> = <span class="ruby-value">2147483648</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-comment">#</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">system_memory</span>[<span class="ruby-value">:total</span>][<span class="ruby-value">:total</span>] <span class="ruby-operator">>=</span> <span class="ruby-identifier">per_process_max</span>
|
|
<span class="ruby-ivar">@details</span>[<span class="ruby-value">:memory_limits</span>]={<span class="ruby-value">:process</span> <span class="ruby-operator">=></span> ((<span class="ruby-identifier">per_process_max</span>)<span class="ruby-operator">..</span>(<span class="ruby-identifier">system_memory</span>[<span class="ruby-value">:total</span>][<span class="ruby-value">:total</span>]))}
|
|
<span class="ruby-keyword">else</span>
|
|
<span class="ruby-ivar">@details</span>[<span class="ruby-value">:memory_limits</span>]={<span class="ruby-value">:process</span> <span class="ruby-operator">=></span> ((<span class="ruby-identifier">system_memory</span>[<span class="ruby-value">:total</span>][<span class="ruby-value">:total</span>])<span class="ruby-operator">..</span>(<span class="ruby-identifier">system_memory</span>[<span class="ruby-value">:total</span>][<span class="ruby-value">:total</span>]))}
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-comment"># stock setrlimit will ignore the 'hard-wired' limit reset to actual available memory (both kinds), but the overridden GxG::Engine::getrlimit(:AS) will respect it.</span>
|
|
<span class="ruby-comment"># GxG::Engine::memory_available() is built around these limits to ensure you do not encounter an issue without some warning (no Exabyte delusions).</span>
|
|
<span class="ruby-comment"># ::Process::setrlimit(:AS,@details[:memory_limits][:process].min,@details[:memory_limits][:process].max)</span>
|
|
<span class="ruby-comment">#</span>
|
|
<span class="ruby-comment"># ### Initial Buffer Sizes</span>
|
|
<span class="ruby-comment"># TODO: find a clever way to determine the platform's maximum buffer size (after linux 2.6.14 (I think) buffers are now 16x4KiB).</span>
|
|
<span class="ruby-ivar">@details</span>[<span class="ruby-value">:memory_limits</span>][<span class="ruby-value">:buffers</span>] = {<span class="ruby-value">:default</span> <span class="ruby-operator">=></span> <span class="ruby-value">4096</span>, <span class="ruby-value">:terminal</span> <span class="ruby-operator">=></span> <span class="ruby-value">1024</span>,<span class="ruby-value">:socket</span> <span class="ruby-operator">=></span> {<span class="ruby-value">:ipc</span> <span class="ruby-operator">=></span> {}}, <span class="ruby-value">:ipv4</span> <span class="ruby-operator">=></span> {<span class="ruby-value">:tcp</span> <span class="ruby-operator">=></span> {}, <span class="ruby-value">:udp</span> <span class="ruby-operator">=></span> {}}}
|
|
<span class="ruby-comment"># Attribution: http://www.psc.edu/networking/projects/tcptune/#detailed and</span>
|
|
<span class="ruby-comment"># http://www.psc.edu/networking/projects/tcptune/#tutorial</span>
|
|
<span class="ruby-comment">#</span>
|
|
<span class="ruby-keyword">case</span> <span class="ruby-ivar">@details</span>[<span class="ruby-value">:platform</span>]
|
|
<span class="ruby-keyword">when</span> <span class="ruby-value">:linux</span>
|
|
<span class="ruby-comment"># TODO: provide for better version comparisons: create >, <. etc methods that accept a string to interperet or a value instance.</span>
|
|
<span class="ruby-comment"># See: http://www.pixelbeat.org/programming/stdio_buffering/</span>
|
|
<span class="ruby-identifier">platform_version</span> = <span class="ruby-ivar">@details</span>[<span class="ruby-value">:platform_version</span>].<span class="ruby-identifier">value</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">platform_version</span>[<span class="ruby-value">:major</span>] <span class="ruby-operator">></span> <span class="ruby-value">2</span>
|
|
<span class="ruby-ivar">@details</span>[<span class="ruby-value">:memory_limits</span>][<span class="ruby-value">:buffers</span>][<span class="ruby-value">:default</span>] = <span class="ruby-value">65536</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">platform_version</span>[<span class="ruby-value">:major</span>] <span class="ruby-operator">==</span> <span class="ruby-value">2</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">platform_version</span>[<span class="ruby-value">:minor</span>] <span class="ruby-operator">>=</span> <span class="ruby-value">6</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">platform_version</span>[<span class="ruby-value">:teeny</span>] <span class="ruby-operator">>=</span> <span class="ruby-value">14</span>
|
|
<span class="ruby-ivar">@details</span>[<span class="ruby-value">:memory_limits</span>][<span class="ruby-value">:buffers</span>][<span class="ruby-value">:default</span>] = <span class="ruby-value">65536</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-comment">#</span>
|
|
<span class="ruby-comment"># ### The Ruby runtime itself</span>
|
|
<span class="ruby-comment"># Now defined in GxG::Engine as a chance to correct some 'free-form-jazz-ensemble-a-la-SpinalTap' stuff from the guys at Ruby Core! :)</span>
|
|
<span class="ruby-comment">#</span>
|
|
<span class="ruby-comment"># ### Network stuff</span>
|
|
<span class="ruby-comment"># node (or host) name:</span>
|
|
<span class="ruby-ivar">@details</span>[<span class="ruby-value">:nodename</span>] = <span class="ruby-operator">::</span><span class="ruby-constant">Socket</span>.<span class="ruby-identifier">gethostname</span>
|
|
<span class="ruby-ivar">@details</span>[<span class="ruby-value">:network</span>] = {}
|
|
<span class="ruby-keyword">begin</span>
|
|
<span class="ruby-identifier">address</span> = <span class="ruby-operator">::</span><span class="ruby-constant">TCPSocket</span>.<span class="ruby-identifier">getaddress</span>(<span class="ruby-ivar">@details</span>[<span class="ruby-value">:nodename</span>])
|
|
<span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span>
|
|
<span class="ruby-comment"># raise Exception, "You need to edit your host file, and add an alias for this host."</span>
|
|
<span class="ruby-comment"># exit 1</span>
|
|
<span class="ruby-identifier">address</span> = <span class="ruby-keyword">nil</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-comment"># netstat --interfaces --all --verbose --extend</span>
|
|
<span class="ruby-comment">#</span>
|
|
<span class="ruby-ivar">@details</span>[<span class="ruby-value">:network</span>][<span class="ruby-value">:hostname</span>] = <span class="ruby-ivar">@details</span>[<span class="ruby-value">:nodename</span>]
|
|
<span class="ruby-comment"># TODO: @gather localhost info: convert ip address info to std. ip_addr objects</span>
|
|
<span class="ruby-ivar">@details</span>[<span class="ruby-value">:network</span>][<span class="ruby-value">:address</span>] = <span class="ruby-identifier">address</span>
|
|
<span class="ruby-ivar">@details</span>[<span class="ruby-value">:network</span>][<span class="ruby-value">:hosts</span>] = []
|
|
<span class="ruby-comment"># raw_list = Sys::Host.info</span>
|
|
<span class="ruby-comment"># raw_list.to_enum.each do |entry|</span>
|
|
<span class="ruby-comment"># new_entry = {}</span>
|
|
<span class="ruby-comment"># entry.each_pair do |key,item|</span>
|
|
<span class="ruby-comment"># # TODO: @gather hosts info: convert ip address info to std. ip_addr objects</span>
|
|
<span class="ruby-comment"># new_entry[(key.to_sym)] = item</span>
|
|
<span class="ruby-comment"># end</span>
|
|
<span class="ruby-comment"># @details[:network][:hosts] << new_entry</span>
|
|
<span class="ruby-comment"># #</span>
|
|
<span class="ruby-comment"># end</span>
|
|
<span class="ruby-comment">#</span>
|
|
<span class="ruby-comment"># TODO: inventory each network interface and host address of the system</span>
|
|
<span class="ruby-comment"># then, attach active, kernel supported, protocols</span>
|
|
<span class="ruby-comment"># then, use self["a/setting/path"] to set the data for each setting of each protocol of each nic that is supported and active.</span>
|
|
<span class="ruby-identifier">protocols</span> = {
|
|
<span class="ruby-value">:ipv4</span><span class="ruby-operator">=></span>{<span class="ruby-value">:settings</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span> <span class="ruby-operator">=></span> {}, <span class="ruby-value">:udp</span> <span class="ruby-operator">=></span> {}}, <span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"IP"</span>], <span class="ruby-value">:proto</span><span class="ruby-operator">=></span><span class="ruby-value">0</span>},
|
|
<span class="ruby-value">:icmp</span><span class="ruby-operator">=></span>{<span class="ruby-value">:settings</span><span class="ruby-operator">=></span>{}, <span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"ICMP"</span>], <span class="ruby-value">:proto</span><span class="ruby-operator">=></span><span class="ruby-value">1</span>},
|
|
<span class="ruby-value">:igmp</span><span class="ruby-operator">=></span>{<span class="ruby-value">:settings</span><span class="ruby-operator">=></span>{}, <span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"IGMP"</span>], <span class="ruby-value">:proto</span><span class="ruby-operator">=></span><span class="ruby-value">2</span>},
|
|
<span class="ruby-value">:ggp</span><span class="ruby-operator">=></span>{<span class="ruby-value">:settings</span><span class="ruby-operator">=></span>{}, <span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"GGP"</span>], <span class="ruby-value">:proto</span><span class="ruby-operator">=></span><span class="ruby-value">3</span>},
|
|
<span class="ruby-value">:ipencap</span><span class="ruby-operator">=></span>{<span class="ruby-value">:settings</span><span class="ruby-operator">=></span>{}, <span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"IP-ENCAP"</span>], <span class="ruby-value">:proto</span><span class="ruby-operator">=></span><span class="ruby-value">4</span>},
|
|
<span class="ruby-value">:st</span><span class="ruby-operator">=></span>{<span class="ruby-value">:settings</span><span class="ruby-operator">=></span>{}, <span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"ST"</span>], <span class="ruby-value">:proto</span><span class="ruby-operator">=></span><span class="ruby-value">5</span>},
|
|
<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>{<span class="ruby-value">:settings</span><span class="ruby-operator">=></span>{}, <span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"TCP"</span>], <span class="ruby-value">:proto</span><span class="ruby-operator">=></span><span class="ruby-value">6</span>},
|
|
<span class="ruby-value">:egp</span><span class="ruby-operator">=></span>{<span class="ruby-value">:settings</span><span class="ruby-operator">=></span>{}, <span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"EGP"</span>], <span class="ruby-value">:proto</span><span class="ruby-operator">=></span><span class="ruby-value">8</span>},
|
|
<span class="ruby-value">:igp</span><span class="ruby-operator">=></span>{<span class="ruby-value">:settings</span><span class="ruby-operator">=></span>{}, <span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"IGP"</span>], <span class="ruby-value">:proto</span><span class="ruby-operator">=></span><span class="ruby-value">9</span>},
|
|
<span class="ruby-value">:pup</span><span class="ruby-operator">=></span>{<span class="ruby-value">:settings</span><span class="ruby-operator">=></span>{}, <span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"PUP"</span>], <span class="ruby-value">:proto</span><span class="ruby-operator">=></span><span class="ruby-value">12</span>},
|
|
<span class="ruby-value">:udp</span><span class="ruby-operator">=></span>{<span class="ruby-value">:settings</span><span class="ruby-operator">=></span>{}, <span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"UDP"</span>], <span class="ruby-value">:proto</span><span class="ruby-operator">=></span><span class="ruby-value">17</span>},
|
|
<span class="ruby-value">:hmp</span><span class="ruby-operator">=></span>{<span class="ruby-value">:settings</span><span class="ruby-operator">=></span>{}, <span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"HMP"</span>], <span class="ruby-value">:proto</span><span class="ruby-operator">=></span><span class="ruby-value">20</span>},
|
|
<span class="ruby-value">:"xns-idp"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:settings</span><span class="ruby-operator">=></span>{}, <span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"XNS-IDP"</span>], <span class="ruby-value">:proto</span><span class="ruby-operator">=></span><span class="ruby-value">22</span>},
|
|
<span class="ruby-value">:rdp</span><span class="ruby-operator">=></span>{<span class="ruby-value">:settings</span><span class="ruby-operator">=></span>{}, <span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"RDP"</span>], <span class="ruby-value">:proto</span><span class="ruby-operator">=></span><span class="ruby-value">27</span>},
|
|
<span class="ruby-value">:"iso-tp4"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:settings</span><span class="ruby-operator">=></span>{}, <span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"ISO-TP4"</span>], <span class="ruby-value">:proto</span><span class="ruby-operator">=></span><span class="ruby-value">29</span>},
|
|
<span class="ruby-value">:dccp</span><span class="ruby-operator">=></span>{<span class="ruby-value">:settings</span><span class="ruby-operator">=></span>{}, <span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"DCCP"</span>], <span class="ruby-value">:proto</span><span class="ruby-operator">=></span><span class="ruby-value">33</span>},
|
|
<span class="ruby-value">:xtp</span><span class="ruby-operator">=></span>{<span class="ruby-value">:settings</span><span class="ruby-operator">=></span>{}, <span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"XTP"</span>], <span class="ruby-value">:proto</span><span class="ruby-operator">=></span><span class="ruby-value">36</span>},
|
|
<span class="ruby-value">:ddp</span><span class="ruby-operator">=></span>{<span class="ruby-value">:settings</span><span class="ruby-operator">=></span>{}, <span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"DDP"</span>], <span class="ruby-value">:proto</span><span class="ruby-operator">=></span><span class="ruby-value">37</span>},
|
|
<span class="ruby-value">:"idpr-cmtp"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:settings</span><span class="ruby-operator">=></span>{}, <span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"IDPR-CMTP"</span>], <span class="ruby-value">:proto</span><span class="ruby-operator">=></span><span class="ruby-value">38</span>},
|
|
<span class="ruby-value">:ipv6</span><span class="ruby-operator">=></span>{<span class="ruby-value">:settings</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>{}, <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>{}}, <span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"IPv6"</span>], <span class="ruby-value">:proto</span><span class="ruby-operator">=></span><span class="ruby-value">41</span>},
|
|
<span class="ruby-value">:"ipv6-route"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:settings</span><span class="ruby-operator">=></span>{}, <span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"IPv6-Route"</span>], <span class="ruby-value">:proto</span><span class="ruby-operator">=></span><span class="ruby-value">43</span>},
|
|
<span class="ruby-value">:"ipv6-frag"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:settings</span><span class="ruby-operator">=></span>{}, <span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"IPv6-Frag"</span>], <span class="ruby-value">:proto</span><span class="ruby-operator">=></span><span class="ruby-value">44</span>},
|
|
<span class="ruby-value">:idrp</span><span class="ruby-operator">=></span>{<span class="ruby-value">:settings</span><span class="ruby-operator">=></span>{}, <span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"IDRP"</span>], <span class="ruby-value">:proto</span><span class="ruby-operator">=></span><span class="ruby-value">45</span>},
|
|
<span class="ruby-value">:rsvp</span><span class="ruby-operator">=></span>{<span class="ruby-value">:settings</span><span class="ruby-operator">=></span>{}, <span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"RSVP"</span>], <span class="ruby-value">:proto</span><span class="ruby-operator">=></span><span class="ruby-value">46</span>},
|
|
<span class="ruby-value">:gre</span><span class="ruby-operator">=></span>{<span class="ruby-value">:settings</span><span class="ruby-operator">=></span>{}, <span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"GRE"</span>], <span class="ruby-value">:proto</span><span class="ruby-operator">=></span><span class="ruby-value">47</span>},
|
|
<span class="ruby-value">:esp</span><span class="ruby-operator">=></span>{<span class="ruby-value">:settings</span><span class="ruby-operator">=></span>{}, <span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"IPSEC-ESP"</span>], <span class="ruby-value">:proto</span><span class="ruby-operator">=></span><span class="ruby-value">50</span>},
|
|
<span class="ruby-value">:ah</span><span class="ruby-operator">=></span>{<span class="ruby-value">:settings</span><span class="ruby-operator">=></span>{}, <span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"IPSEC-AH"</span>], <span class="ruby-value">:proto</span><span class="ruby-operator">=></span><span class="ruby-value">51</span>},
|
|
<span class="ruby-value">:skip</span><span class="ruby-operator">=></span>{<span class="ruby-value">:settings</span><span class="ruby-operator">=></span>{}, <span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"SKIP"</span>], <span class="ruby-value">:proto</span><span class="ruby-operator">=></span><span class="ruby-value">57</span>},
|
|
<span class="ruby-value">:"ipv6-icmp"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:settings</span><span class="ruby-operator">=></span>{}, <span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"IPv6-ICMP"</span>], <span class="ruby-value">:proto</span><span class="ruby-operator">=></span><span class="ruby-value">58</span>},
|
|
<span class="ruby-value">:"ipv6-nonxt"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:settings</span><span class="ruby-operator">=></span>{}, <span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"IPv6-NoNxt"</span>], <span class="ruby-value">:proto</span><span class="ruby-operator">=></span><span class="ruby-value">59</span>},
|
|
<span class="ruby-value">:"ipv6-opts"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:settings</span><span class="ruby-operator">=></span>{}, <span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"IPv6-Opts"</span>], <span class="ruby-value">:proto</span><span class="ruby-operator">=></span><span class="ruby-value">60</span>},
|
|
<span class="ruby-value">:rspf</span><span class="ruby-operator">=></span>{<span class="ruby-value">:settings</span><span class="ruby-operator">=></span>{}, <span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"RSPF"</span>, <span class="ruby-string">"CPHB"</span>], <span class="ruby-value">:proto</span><span class="ruby-operator">=></span><span class="ruby-value">73</span>},
|
|
<span class="ruby-value">:vmtp</span><span class="ruby-operator">=></span>{<span class="ruby-value">:settings</span><span class="ruby-operator">=></span>{}, <span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"VMTP"</span>], <span class="ruby-value">:proto</span><span class="ruby-operator">=></span><span class="ruby-value">81</span>},
|
|
<span class="ruby-value">:eigrp</span><span class="ruby-operator">=></span>{<span class="ruby-value">:settings</span><span class="ruby-operator">=></span>{}, <span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"EIGRP"</span>], <span class="ruby-value">:proto</span><span class="ruby-operator">=></span><span class="ruby-value">88</span>},
|
|
<span class="ruby-value">:ospf</span><span class="ruby-operator">=></span>{<span class="ruby-value">:settings</span><span class="ruby-operator">=></span>{}, <span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"OSPFIGP"</span>], <span class="ruby-value">:proto</span><span class="ruby-operator">=></span><span class="ruby-value">89</span>},
|
|
<span class="ruby-value">:"ax.25"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:settings</span><span class="ruby-operator">=></span>{}, <span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"AX.25"</span>], <span class="ruby-value">:proto</span><span class="ruby-operator">=></span><span class="ruby-value">93</span>},
|
|
<span class="ruby-value">:ipip</span><span class="ruby-operator">=></span>{<span class="ruby-value">:settings</span><span class="ruby-operator">=></span>{}, <span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"IPIP"</span>], <span class="ruby-value">:proto</span><span class="ruby-operator">=></span><span class="ruby-value">94</span>},
|
|
<span class="ruby-value">:etherip</span><span class="ruby-operator">=></span>{<span class="ruby-value">:settings</span><span class="ruby-operator">=></span>{}, <span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"ETHERIP"</span>], <span class="ruby-value">:proto</span><span class="ruby-operator">=></span><span class="ruby-value">97</span>},
|
|
<span class="ruby-value">:encap</span><span class="ruby-operator">=></span>{<span class="ruby-value">:settings</span><span class="ruby-operator">=></span>{}, <span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"ENCAP"</span>], <span class="ruby-value">:proto</span><span class="ruby-operator">=></span><span class="ruby-value">98</span>},
|
|
<span class="ruby-value">:pim</span><span class="ruby-operator">=></span>{<span class="ruby-value">:settings</span><span class="ruby-operator">=></span>{}, <span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"PIM"</span>], <span class="ruby-value">:proto</span><span class="ruby-operator">=></span><span class="ruby-value">103</span>},
|
|
<span class="ruby-value">:ipcomp</span><span class="ruby-operator">=></span>{<span class="ruby-value">:settings</span><span class="ruby-operator">=></span>{}, <span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"IPCOMP"</span>], <span class="ruby-value">:proto</span><span class="ruby-operator">=></span><span class="ruby-value">108</span>},
|
|
<span class="ruby-value">:vrrp</span><span class="ruby-operator">=></span>{<span class="ruby-value">:settings</span><span class="ruby-operator">=></span>{}, <span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"VRRP"</span>], <span class="ruby-value">:proto</span><span class="ruby-operator">=></span><span class="ruby-value">112</span>},
|
|
<span class="ruby-value">:l2tp</span><span class="ruby-operator">=></span>{<span class="ruby-value">:settings</span><span class="ruby-operator">=></span>{}, <span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"L2TP"</span>], <span class="ruby-value">:proto</span><span class="ruby-operator">=></span><span class="ruby-value">115</span>},
|
|
<span class="ruby-value">:isis</span><span class="ruby-operator">=></span>{<span class="ruby-value">:settings</span><span class="ruby-operator">=></span>{}, <span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"ISIS"</span>], <span class="ruby-value">:proto</span><span class="ruby-operator">=></span><span class="ruby-value">124</span>},
|
|
<span class="ruby-value">:sctp</span><span class="ruby-operator">=></span>{<span class="ruby-value">:settings</span><span class="ruby-operator">=></span>{}, <span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"SCTP"</span>], <span class="ruby-value">:proto</span><span class="ruby-operator">=></span><span class="ruby-value">132</span>},
|
|
<span class="ruby-value">:fc</span><span class="ruby-operator">=></span>{<span class="ruby-value">:settings</span><span class="ruby-operator">=></span>{}, <span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"FC"</span>], <span class="ruby-value">:proto</span><span class="ruby-operator">=></span><span class="ruby-value">133</span>},
|
|
<span class="ruby-value">:"mobility-header"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:settings</span><span class="ruby-operator">=></span>{}, <span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"Mobility-Header"</span>], <span class="ruby-value">:proto</span><span class="ruby-operator">=></span><span class="ruby-value">135</span>},
|
|
<span class="ruby-value">:udplite</span><span class="ruby-operator">=></span>{<span class="ruby-value">:settings</span><span class="ruby-operator">=></span>{}, <span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"UDPLite"</span>], <span class="ruby-value">:proto</span><span class="ruby-operator">=></span><span class="ruby-value">136</span>},
|
|
<span class="ruby-value">:"mpls-in-ip"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:settings</span><span class="ruby-operator">=></span>{}, <span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"MPLS-in-IP"</span>], <span class="ruby-value">:proto</span><span class="ruby-operator">=></span><span class="ruby-value">137</span>},
|
|
<span class="ruby-value">:manet</span><span class="ruby-operator">=></span>{<span class="ruby-value">:settings</span><span class="ruby-operator">=></span>{}, <span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:proto</span><span class="ruby-operator">=></span><span class="ruby-value">138</span>},
|
|
<span class="ruby-value">:hip</span><span class="ruby-operator">=></span>{<span class="ruby-value">:settings</span><span class="ruby-operator">=></span>{}, <span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"HIP"</span>], <span class="ruby-value">:proto</span><span class="ruby-operator">=></span><span class="ruby-value">139</span>},
|
|
<span class="ruby-value">:shim6</span><span class="ruby-operator">=></span>{<span class="ruby-value">:settings</span><span class="ruby-operator">=></span>{}, <span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"Shim6"</span>], <span class="ruby-value">:proto</span><span class="ruby-operator">=></span><span class="ruby-value">140</span>},
|
|
<span class="ruby-value">:wesp</span><span class="ruby-operator">=></span>{<span class="ruby-value">:settings</span><span class="ruby-operator">=></span>{}, <span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"WESP"</span>], <span class="ruby-value">:proto</span><span class="ruby-operator">=></span><span class="ruby-value">141</span>},
|
|
<span class="ruby-value">:rohc</span><span class="ruby-operator">=></span>{<span class="ruby-value">:settings</span><span class="ruby-operator">=></span>{}, <span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"ROHC"</span>], <span class="ruby-value">:proto</span><span class="ruby-operator">=></span><span class="ruby-value">142</span>}
|
|
}
|
|
<span class="ruby-comment">#</span>
|
|
<span class="ruby-ivar">@details</span>[<span class="ruby-value">:network</span>][<span class="ruby-value">:protocols</span>] = <span class="ruby-identifier">protocols</span>
|
|
<span class="ruby-comment"># if @details[:platform] == :windows</span>
|
|
<span class="ruby-comment"># # TODO: find suitable alternative to Net::Proto.getprotoent (breaks under rbx)</span>
|
|
<span class="ruby-comment"># else</span>
|
|
<span class="ruby-comment"># raw_list = Net::Proto.getprotoent</span>
|
|
<span class="ruby-comment"># raw_list.to_enum.each do |entry|</span>
|
|
<span class="ruby-comment"># new_entry = {:settings => {}}</span>
|
|
<span class="ruby-comment"># proto_name = :unknown</span>
|
|
<span class="ruby-comment"># entry.each_pair do |key,item|</span>
|
|
<span class="ruby-comment"># if key.to_s.to_sym == :name</span>
|
|
<span class="ruby-comment"># if item.to_s.to_sym == :ip</span>
|
|
<span class="ruby-comment"># proto_name = :ipv4</span>
|
|
<span class="ruby-comment"># else</span>
|
|
<span class="ruby-comment"># proto_name = item.to_s.to_sym</span>
|
|
<span class="ruby-comment"># end</span>
|
|
<span class="ruby-comment"># else</span>
|
|
<span class="ruby-comment"># new_entry[(key)] = item</span>
|
|
<span class="ruby-comment"># end</span>
|
|
<span class="ruby-comment"># end</span>
|
|
<span class="ruby-comment"># if [:ipv4,:ipv6].include?(proto_name)</span>
|
|
<span class="ruby-comment"># new_entry[:settings][:tcp] = {}</span>
|
|
<span class="ruby-comment"># new_entry[:settings][:udp] = {}</span>
|
|
<span class="ruby-comment"># end</span>
|
|
<span class="ruby-comment"># @details[:network][:protocols][(proto_name)] = new_entry</span>
|
|
<span class="ruby-comment"># #</span>
|
|
<span class="ruby-comment"># end</span>
|
|
<span class="ruby-comment"># end</span>
|
|
<span class="ruby-comment"># Read in Sysctl-style keys and set @details data.</span>
|
|
<span class="ruby-identifier">get_system_data</span>(<span class="ruby-identifier">detail_mapping</span>())
|
|
<span class="ruby-comment">#</span>
|
|
<span class="ruby-comment">#</span>
|
|
<span class="ruby-comment"># File descriptor reservation and release support, reserving $stdin, $stdout, and $stderr, etc.</span>
|
|
<span class="ruby-comment"># TODO: get a *complete* list of getconf variables *and their meanings* and incorporate them into sysctl-style path system.</span>
|
|
<span class="ruby-comment"># See: http://www.lainoox.com/system-wide-config-getconf/</span>
|
|
<span class="ruby-comment"># self["configuration.process.maximum_file_descriptors"]</span>
|
|
<span class="ruby-comment"># LATER: add lsof to requirements list within installer.</span>
|
|
<span class="ruby-keyword">case</span> <span class="ruby-ivar">@details</span>[<span class="ruby-value">:platform</span>]
|
|
<span class="ruby-keyword">when</span> <span class="ruby-value">:linux</span>, <span class="ruby-value">:aix</span>, <span class="ruby-value">:solaris</span>, <span class="ruby-value">:bsd</span>, <span class="ruby-value">:darwin</span>
|
|
<span class="ruby-comment"># TODO: research -F option of lsof</span>
|
|
<span class="ruby-comment"># See: http://geek00l.blogspot.com/2006/03/openbsd-fstat-vs-lsof.html</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-comment">#</span>
|
|
<span class="ruby-keyword">case</span> <span class="ruby-ivar">@details</span>[<span class="ruby-value">:platform</span>]
|
|
<span class="ruby-keyword">when</span> <span class="ruby-value">:bsd</span>
|
|
<span class="ruby-comment"># See: fstat vs lsof : http://geek00l.blogspot.com/2006/03/openbsd-fstat-vs-lsof.html</span>
|
|
<span class="ruby-comment">#</span>
|
|
<span class="ruby-comment"># if EventMachine::kqueue?</span>
|
|
<span class="ruby-comment"># ?</span>
|
|
<span class="ruby-comment"># @details[:maximum_descriptors][:events] = 1000000</span>
|
|
<span class="ruby-comment"># end</span>
|
|
<span class="ruby-keyword">when</span> <span class="ruby-value">:linux</span>
|
|
<span class="ruby-comment"># if EventMachine::epoll?</span>
|
|
<span class="ruby-comment"># ?</span>
|
|
<span class="ruby-comment"># @details[:maximum_descriptors][:events] = 1000000</span>
|
|
<span class="ruby-comment"># end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-comment"># ###</span>
|
|
<span class="ruby-ivar">@valid_modes</span> = {}
|
|
<span class="ruby-comment"># Internal Services to Port Usage mapping</span>
|
|
<span class="ruby-ivar">@details</span>[<span class="ruby-value">:service_ports</span>] = {
|
|
<span class="ruby-value">:tcpmux</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"TCP port service multiplexer"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">1</span>]}},
|
|
<span class="ruby-value">:echo</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">""</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">7</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">7</span>], <span class="ruby-value">:ddp</span><span class="ruby-operator">=></span>[<span class="ruby-value">4</span>]}},
|
|
<span class="ruby-value">:discard</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"sink"</span>, <span class="ruby-string">"null"</span>], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">""</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">9</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">9</span>]}},
|
|
<span class="ruby-value">:systat</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"users"</span>], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">""</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">11</span>]}},
|
|
<span class="ruby-value">:daytime</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">""</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">13</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">13</span>]}},
|
|
<span class="ruby-value">:netstat</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">""</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">15</span>]}},
|
|
<span class="ruby-value">:qotd</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"quote"</span>], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">""</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">17</span>]}},
|
|
<span class="ruby-value">:msp</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"message send protocol"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">18</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">18</span>]}},
|
|
<span class="ruby-value">:chargen</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"ttytst"</span>, <span class="ruby-string">"source"</span>], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">""</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">19</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">19</span>]}},
|
|
<span class="ruby-value">:"ftp-data"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">""</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">20</span>]}},
|
|
<span class="ruby-value">:ftp</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">""</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">21</span>]}},
|
|
<span class="ruby-value">:fsp</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"fspd"</span>], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">""</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">21</span>]}},
|
|
<span class="ruby-value">:ssh</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"SSH Remote Login Protocol"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">22</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">22</span>]}},
|
|
<span class="ruby-value">:telnet</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">""</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">23</span>]}},
|
|
<span class="ruby-value">:smtp</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"mail"</span>], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">""</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">25</span>]}},
|
|
<span class="ruby-value">:time</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"timserver"</span>], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">""</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">37</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">37</span>]}},
|
|
<span class="ruby-value">:rlp</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"resource"</span>], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"resource location"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">39</span>]}},
|
|
<span class="ruby-value">:nameserver</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"name"</span>], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"IEN 116"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">42</span>]}},
|
|
<span class="ruby-value">:whois</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"nicname"</span>], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">""</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">43</span>]}},
|
|
<span class="ruby-value">:tacacs</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Login Host Protocol (TACACS)"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">49</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">49</span>]}},
|
|
<span class="ruby-value">:"re-mail-ck"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Remote Mail Checking Protocol"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">50</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">50</span>]}},
|
|
<span class="ruby-value">:domain</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"name-domain server"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">53</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">53</span>]}},
|
|
<span class="ruby-value">:mtp</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"deprecated"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">57</span>]}},
|
|
<span class="ruby-value">:"tacacs-ds"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"TACACS-Database Service"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">65</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">65</span>]}},
|
|
<span class="ruby-value">:bootps</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"BOOTP server"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">67</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">67</span>]}},
|
|
<span class="ruby-value">:bootpc</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"BOOTP client"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">68</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">68</span>]}},
|
|
<span class="ruby-value">:tftp</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">""</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">69</span>]}},
|
|
<span class="ruby-value">:gopher</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Internet Gopher"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">70</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">70</span>]}},
|
|
<span class="ruby-value">:rje</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"netrjs"</span>], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">""</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">77</span>]}},
|
|
<span class="ruby-value">:finger</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">""</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">79</span>]}},
|
|
<span class="ruby-value">:www</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"http"</span>], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"WorldWideWeb HTTP"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">80</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">80</span>]}},
|
|
<span class="ruby-value">:link</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"ttylink"</span>], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">""</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">87</span>]}},
|
|
<span class="ruby-value">:kerberos</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"kerberos5"</span>, <span class="ruby-string">"krb5"</span>, <span class="ruby-string">"kerberos-sec"</span>], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Kerberos v5"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">88</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">88</span>]}},
|
|
<span class="ruby-value">:supdup</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">""</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">95</span>]}},
|
|
<span class="ruby-value">:hostnames</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"hostname"</span>], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"usually from sri-nic"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">101</span>]}},
|
|
<span class="ruby-value">:"iso-tsap"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"tsap"</span>], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"part of ISODE"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">102</span>]}},
|
|
<span class="ruby-value">:"acr-nema"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"dicom"</span>], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Digital Imag. & Comm. 300"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">104</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">104</span>]}},
|
|
<span class="ruby-value">:"csnet-ns"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"cso-ns"</span>], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"also used by CSO name server"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">105</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">105</span>]}},
|
|
<span class="ruby-value">:rtelnet</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Remote Telnet"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">107</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">107</span>]}},
|
|
<span class="ruby-value">:pop2</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"postoffice"</span>, <span class="ruby-string">"pop-2"</span>], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"POP version 2"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">109</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">109</span>]}},
|
|
<span class="ruby-value">:pop3</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"pop-3"</span>], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"POP version 3"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">110</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">110</span>]}},
|
|
<span class="ruby-value">:sunrpc</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"portmapper"</span>], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"RPC 4.0 portmapper"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">111</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">111</span>]}},
|
|
<span class="ruby-value">:auth</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"authentication"</span>, <span class="ruby-string">"tap"</span>, <span class="ruby-string">"ident"</span>], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">""</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">113</span>]}},
|
|
<span class="ruby-value">:sftp</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">""</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">115</span>]}},
|
|
<span class="ruby-value">:"uucp-path"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">""</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">117</span>]}},
|
|
<span class="ruby-value">:nntp</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"readnews"</span>, <span class="ruby-string">"untp"</span>], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"USENET News Transfer Protocol"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">119</span>]}},
|
|
<span class="ruby-value">:ntp</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">""</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">123</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">123</span>]}},
|
|
<span class="ruby-value">:pwdgen</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"PWDGEN service"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">129</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">129</span>]}},
|
|
<span class="ruby-value">:"loc-srv"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"epmap"</span>], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Location Service"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">135</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">135</span>]}},
|
|
<span class="ruby-value">:"netbios-ns"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"NETBIOS Name Service"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">137</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">137</span>]}},
|
|
<span class="ruby-value">:"netbios-dgm"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"NETBIOS Datagram Service"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">138</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">138</span>]}},
|
|
<span class="ruby-value">:"netbios-ssn"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"NETBIOS session service"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">139</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">139</span>]}},
|
|
<span class="ruby-value">:imap2</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"imap"</span>], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Interim Mail Access P 2 and 4"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">143</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">143</span>]}},
|
|
<span class="ruby-value">:snmp</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Simple Net Mgmt Protocol"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">161</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">161</span>]}},
|
|
<span class="ruby-value">:"snmp-trap"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"snmptrap"</span>], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Traps for SNMP"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">162</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">162</span>]}},
|
|
<span class="ruby-value">:"cmip-man"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"ISO mgmt over IP (CMOT)"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">163</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">163</span>]}},
|
|
<span class="ruby-value">:"cmip-agent"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">""</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">164</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">164</span>]}},
|
|
<span class="ruby-value">:mailq</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Mailer transport queue for Zmailer"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">174</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">174</span>]}},
|
|
<span class="ruby-value">:xdmcp</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"X Display Mgr. Control Proto"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">177</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">177</span>]}},
|
|
<span class="ruby-value">:nextstep</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"NeXTStep"</span>, <span class="ruby-string">"NextStep"</span>], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"NeXTStep window"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">178</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">178</span>]}},
|
|
<span class="ruby-value">:bgp</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Border Gateway Protocol"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">179</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">179</span>]}},
|
|
<span class="ruby-value">:prospero</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Cliff Neuman's Prospero"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">191</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">191</span>]}},
|
|
<span class="ruby-value">:irc</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Internet Relay Chat"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">194</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">194</span>]}},
|
|
<span class="ruby-value">:smux</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"SNMP Unix Multiplexer"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">199</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">199</span>]}},
|
|
<span class="ruby-value">:"at-rtmp"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"AppleTalk routing"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">201</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">201</span>]}},
|
|
<span class="ruby-value">:"at-nbp"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"AppleTalk name binding"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">202</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">202</span>]}},
|
|
<span class="ruby-value">:"at-echo"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"AppleTalk echo"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">204</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">204</span>]}},
|
|
<span class="ruby-value">:"at-zis"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"AppleTalk zone information"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">206</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">206</span>]}},
|
|
<span class="ruby-value">:qmtp</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Quick Mail Transfer Protocol"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">209</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">209</span>]}},
|
|
<span class="ruby-value">:z3950</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"wais"</span>], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"NISO Z39.50 database"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">210</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">210</span>]}},
|
|
<span class="ruby-value">:ipx</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"IPX"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">213</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">213</span>]}},
|
|
<span class="ruby-value">:imap3</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Interactive Mail Access"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">220</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">220</span>]}},
|
|
<span class="ruby-value">:pawserv</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Perf Analysis Workbench"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">345</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">345</span>]}},
|
|
<span class="ruby-value">:zserv</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Zebra server"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">346</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">346</span>]}},
|
|
<span class="ruby-value">:fatserv</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Fatmen Server"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">347</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">347</span>]}},
|
|
<span class="ruby-value">:rpc2portmap</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">""</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">369</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">369</span>]}},
|
|
<span class="ruby-value">:codaauth2</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">""</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">370</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">370</span>]}},
|
|
<span class="ruby-value">:clearcase</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"Clearcase"</span>], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">""</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">371</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">371</span>]}},
|
|
<span class="ruby-value">:ulistserv</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"UNIX Listserv"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">372</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">372</span>]}},
|
|
<span class="ruby-value">:ldap</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Lightweight Directory Access Protocol"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">389</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">389</span>]}},
|
|
<span class="ruby-value">:imsp</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Interactive Mail Support Protocol"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">406</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">406</span>]}},
|
|
<span class="ruby-value">:svrloc</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Server Location"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">427</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">427</span>]}},
|
|
<span class="ruby-value">:https</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"http protocol over TLS/SSL"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">443</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">443</span>]}},
|
|
<span class="ruby-value">:snpp</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Simple Network Paging Protocol"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">444</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">444</span>]}},
|
|
<span class="ruby-value">:"microsoft-ds"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Microsoft Naked CIFS"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">445</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">445</span>]}},
|
|
<span class="ruby-value">:kpasswd</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">""</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">464</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">464</span>]}},
|
|
<span class="ruby-value">:saft</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Simple Asynchronous File Transfer"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">487</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">487</span>]}},
|
|
<span class="ruby-value">:isakmp</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"IPsec - Internet Security Association"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">500</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">500</span>]}},
|
|
<span class="ruby-value">:rtsp</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Real Time Stream Control Protocol"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">554</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">554</span>]}},
|
|
<span class="ruby-value">:nqs</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Network Queuing system"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">607</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">607</span>]}},
|
|
<span class="ruby-value">:"npmp-local"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"dqs313_qmaster"</span>], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"npmp-local / DQS"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">610</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">610</span>]}},
|
|
<span class="ruby-value">:"npmp-gui"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"dqs313_execd"</span>], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"npmp-gui / DQS"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">611</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">611</span>]}},
|
|
<span class="ruby-value">:"hmmp-ind"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"dqs313_intercell"</span>], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"HMMP Indication / DQS"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">612</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">612</span>]}},
|
|
<span class="ruby-value">:qmqp</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">""</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">628</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">628</span>]}},
|
|
<span class="ruby-value">:ipp</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Internet Printing Protocol"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">631</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">631</span>]}},
|
|
<span class="ruby-value">:exec</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">""</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">512</span>]}},
|
|
<span class="ruby-value">:biff</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"comsat"</span>], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">""</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">512</span>]}},
|
|
<span class="ruby-value">:login</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">""</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">513</span>]}},
|
|
<span class="ruby-value">:who</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"whod"</span>], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">""</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">513</span>]}},
|
|
<span class="ruby-value">:shell</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"cmd"</span>], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"no passwords used"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">514</span>]}},
|
|
<span class="ruby-value">:syslog</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">""</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">514</span>]}},
|
|
<span class="ruby-value">:printer</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"spooler"</span>], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"line printer spooler"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">515</span>]}},
|
|
<span class="ruby-value">:talk</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">""</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">517</span>]}},
|
|
<span class="ruby-value">:ntalk</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">""</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">518</span>]}},
|
|
<span class="ruby-value">:route</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"router"</span>, <span class="ruby-string">"routed"</span>], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"RIP"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">520</span>]}},
|
|
<span class="ruby-value">:timed</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"timeserver"</span>], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">""</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">525</span>]}},
|
|
<span class="ruby-value">:tempo</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"newdate"</span>], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">""</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">526</span>]}},
|
|
<span class="ruby-value">:courier</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"rpc"</span>], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">""</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">530</span>]}},
|
|
<span class="ruby-value">:conference</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"chat"</span>], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">""</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">531</span>]}},
|
|
<span class="ruby-value">:netnews</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"readnews"</span>], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">""</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">532</span>]}},
|
|
<span class="ruby-value">:netwall</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"for emergency broadcasts"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">533</span>]}},
|
|
<span class="ruby-value">:gdomap</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"GNUstep distributed objects"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">538</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">538</span>]}},
|
|
<span class="ruby-value">:uucp</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"uucpd"</span>], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"uucp daemon"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">540</span>]}},
|
|
<span class="ruby-value">:klogin</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Kerberized `rlogin' (v5)"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">543</span>]}},
|
|
<span class="ruby-value">:kshell</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"krcmd"</span>], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Kerberized `rsh' (v5)"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">544</span>]}},
|
|
<span class="ruby-value">:"dhcpv6-client"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">""</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">546</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">546</span>]}},
|
|
<span class="ruby-value">:"dhcpv6-server"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">""</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">547</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">547</span>]}},
|
|
<span class="ruby-value">:afpovertcp</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"AFP over TCP"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">548</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">548</span>]}},
|
|
<span class="ruby-value">:idfp</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">""</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">549</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">549</span>]}},
|
|
<span class="ruby-value">:remotefs</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"rfs_server"</span>, <span class="ruby-string">"rfs"</span>], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Brunhoff remote filesystem"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">556</span>]}},
|
|
<span class="ruby-value">:nntps</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"snntp"</span>], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"NNTP over SSL"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">563</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">563</span>]}},
|
|
<span class="ruby-value">:submission</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Submission [RFC4409]"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">587</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">587</span>]}},
|
|
<span class="ruby-value">:ldaps</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"LDAP over SSL"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">636</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">636</span>]}},
|
|
<span class="ruby-value">:tinc</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"tinc control port"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">655</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">655</span>]}},
|
|
<span class="ruby-value">:silc</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">""</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">706</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">706</span>]}},
|
|
<span class="ruby-value">:"kerberos-adm"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Kerberos `kadmin' (v5)"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">749</span>]}},
|
|
<span class="ruby-value">:webster</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Network dictionary"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">765</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">765</span>]}},
|
|
<span class="ruby-value">:rsync</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">""</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">873</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">873</span>]}},
|
|
<span class="ruby-value">:"ftps-data"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"FTP over SSL (data)"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">989</span>]}},
|
|
<span class="ruby-value">:ftps</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">""</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">990</span>]}},
|
|
<span class="ruby-value">:telnets</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Telnet over SSL"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">992</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">992</span>]}},
|
|
<span class="ruby-value">:imaps</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"IMAP over SSL"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">993</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">993</span>]}},
|
|
<span class="ruby-value">:ircs</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"IRC over SSL"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">994</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">994</span>]}},
|
|
<span class="ruby-value">:pop3s</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"POP-3 over SSL"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">995</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">995</span>]}},
|
|
<span class="ruby-value">:socks</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"socks proxy server"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">1080</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">1080</span>]}},
|
|
<span class="ruby-value">:proofd</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">""</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">1093</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">1093</span>]}},
|
|
<span class="ruby-value">:rootd</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">""</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">1094</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">1094</span>]}},
|
|
<span class="ruby-value">:openvpn</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"vpn"</span>], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">""</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">1194</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">1194</span>]}, <span class="ruby-value">:usage_preference</span> <span class="ruby-operator">=></span> <span class="ruby-value">:udp</span>},
|
|
<span class="ruby-value">:rmiregistry</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Java RMI Registry"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">1099</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">1099</span>]}},
|
|
<span class="ruby-value">:kazaa</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">""</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">1214</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">1214</span>]}},
|
|
<span class="ruby-value">:nessus</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Nessus vulnerability"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">1241</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">1241</span>]}},
|
|
<span class="ruby-value">:lotusnote</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Lotus Note"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">1352</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">1352</span>]}},
|
|
<span class="ruby-value">:"ms-sql-s"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Microsoft SQL Server"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">1433</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">1433</span>]}},
|
|
<span class="ruby-value">:"ms-sql-m"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Microsoft SQL Monitor"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">1434</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">1434</span>]}},
|
|
<span class="ruby-value">:ingreslock</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">""</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">1524</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">1524</span>]}},
|
|
<span class="ruby-value">:"prospero-np"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Prospero non-privileged"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">1525</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">1525</span>]}},
|
|
<span class="ruby-value">:datametrics</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">""</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">1645</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">1645</span>]}},
|
|
<span class="ruby-value">:"sa-msg-port"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">""</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">1646</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">1646</span>]}},
|
|
<span class="ruby-value">:kermit</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">""</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">1649</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">1649</span>]}},
|
|
<span class="ruby-value">:l2f</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"l2tp"</span>], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">""</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">1701</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">1701</span>]}},
|
|
<span class="ruby-value">:radius</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">""</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">1812</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">1812</span>]}},
|
|
<span class="ruby-value">:"radius-acct"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Radius Accounting"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">1813</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">1813</span>]}},
|
|
<span class="ruby-value">:msnp</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"MSN Messenger"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">1863</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">1863</span>]}},
|
|
<span class="ruby-value">:"unix-status"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"remstats unix-status server"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">1957</span>]}},
|
|
<span class="ruby-value">:"log-server"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"remstats log server"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">1958</span>]}},
|
|
<span class="ruby-value">:remoteping</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"remstats remoteping server"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">1959</span>]}},
|
|
<span class="ruby-value">:"cisco-sccp"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Cisco SCCP"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">2000</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">2000</span>]}},
|
|
<span class="ruby-value">:search</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"ndtp"</span>], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">""</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">2010</span>]}},
|
|
<span class="ruby-value">:pipe_server</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">""</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">2010</span>]}},
|
|
<span class="ruby-value">:nfs</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Network File System"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">2049</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">2049</span>]}},
|
|
<span class="ruby-value">:gnunet</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">""</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">2086</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">2086</span>]}},
|
|
<span class="ruby-value">:"rtcm-sc104"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"RTCM SC-104 IANA 1/29/99"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">2101</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">2101</span>]}},
|
|
<span class="ruby-value">:gsigatekeeper</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">""</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">2119</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">2119</span>]}},
|
|
<span class="ruby-value">:gris</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Grid Resource Information Server"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">2135</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">2135</span>]}},
|
|
<span class="ruby-value">:cvspserver</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"CVS client/server operations"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">2401</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">2401</span>]}},
|
|
<span class="ruby-value">:venus</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"codacon port"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">2430</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">2430</span>]}},
|
|
<span class="ruby-value">:"venus-se"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"tcp side effects"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">2431</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">2431</span>]}},
|
|
<span class="ruby-value">:codasrv</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"not used"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">2432</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">2432</span>]}},
|
|
<span class="ruby-value">:"codasrv-se"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"tcp side effects"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">2433</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">2433</span>]}},
|
|
<span class="ruby-value">:mon</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"MON traps"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">2583</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">2583</span>]}},
|
|
<span class="ruby-value">:dict</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Dictionary server"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">2628</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">2628</span>]}},
|
|
<span class="ruby-value">:gsiftp</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">""</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">2811</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">2811</span>]}},
|
|
<span class="ruby-value">:gpsd</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">""</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">2947</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">2947</span>]}},
|
|
<span class="ruby-value">:gds_db</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"InterBase server"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">3050</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">3050</span>]}},
|
|
<span class="ruby-value">:icpv2</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"icp"</span>], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Internet Cache Protocol"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">3130</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">3130</span>]}},
|
|
<span class="ruby-value">:mysql</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">""</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">3306</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">3306</span>]}},
|
|
<span class="ruby-value">:nut</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Network UPS Tools"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">3493</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">3493</span>]}},
|
|
<span class="ruby-value">:distcc</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"distributed compiler"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">3632</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">3632</span>]}},
|
|
<span class="ruby-value">:daap</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Digital Audio Access Protocol"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">3689</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">3689</span>]}},
|
|
<span class="ruby-value">:svn</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"subversion"</span>], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Subversion protocol"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">3690</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">3690</span>]}},
|
|
<span class="ruby-value">:suucp</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"UUCP over SSL"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">4031</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">4031</span>]}},
|
|
<span class="ruby-value">:sysrqd</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"sysrq daemon"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">4094</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">4094</span>]}},
|
|
<span class="ruby-value">:sieve</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"ManageSieve Protocol"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">4190</span>]}},
|
|
<span class="ruby-value">:epmd</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Erlang Port Mapper Daemon"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">4369</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">4369</span>]}},
|
|
<span class="ruby-value">:remctl</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Remote Authenticated Command Service"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">4373</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">4373</span>]}},
|
|
<span class="ruby-value">:iax</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Inter-Asterisk eXchange"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">4569</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">4569</span>]}},
|
|
<span class="ruby-value">:mtn</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"monotone Netsync Protocol"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">4691</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">4691</span>]}},
|
|
<span class="ruby-value">:"radmin-port"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"RAdmin Port"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">4899</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">4899</span>]}},
|
|
<span class="ruby-value">:rfe</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Radio Free Ethernet"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">5002</span>], <span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">5002</span>]}},
|
|
<span class="ruby-value">:mmcc</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"multimedia conference control tool (Yahoo IM)"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">5050</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">5050</span>]}},
|
|
<span class="ruby-value">:sip</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Session Initiation Protocol"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">5060</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">5060</span>]}},
|
|
<span class="ruby-value">:"sip-tls"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">""</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">5061</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">5061</span>]}},
|
|
<span class="ruby-value">:aol</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"AIM"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">5190</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">5190</span>]}},
|
|
<span class="ruby-value">:"xmpp-client"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Jabber Client Connection"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">5222</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">5222</span>]}},
|
|
<span class="ruby-value">:"xmpp-server"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Jabber Server Connection"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">5269</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">5269</span>]}},
|
|
<span class="ruby-value">:cfengine</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">""</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">5308</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">5308</span>]}},
|
|
<span class="ruby-value">:mdns</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Multicast DNS"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">5353</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">5353</span>]}},
|
|
<span class="ruby-value">:postgresql</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"PostgreSQL Database"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">5432</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">5432</span>]}},
|
|
<span class="ruby-value">:freeciv</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"rptp"</span>], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Freeciv gameplay"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">5556</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">5556</span>]}},
|
|
<span class="ruby-value">:amqp</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">""</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">5672</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">5672</span>], <span class="ruby-value">:sctp</span><span class="ruby-operator">=></span>[<span class="ruby-value">5672</span>]}},
|
|
<span class="ruby-value">:ggz</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"GGZ Gaming Zone"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">5688</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">5688</span>]}},
|
|
<span class="ruby-value">:x11</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"x11-0"</span>], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"X Window System"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">6000</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">6000</span>]}},
|
|
<span class="ruby-value">:"x11-1"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">""</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">6001</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">6001</span>]}},
|
|
<span class="ruby-value">:"x11-2"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">""</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">6002</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">6002</span>]}},
|
|
<span class="ruby-value">:"x11-3"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">""</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">6003</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">6003</span>]}},
|
|
<span class="ruby-value">:"x11-4"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">""</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">6004</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">6004</span>]}},
|
|
<span class="ruby-value">:"x11-5"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">""</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">6005</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">6005</span>]}},
|
|
<span class="ruby-value">:"x11-6"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">""</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">6006</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">6006</span>]}},
|
|
<span class="ruby-value">:"x11-7"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">""</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">6007</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">6007</span>]}},
|
|
<span class="ruby-value">:"gnutella-svc"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"gnutella"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">6346</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">6346</span>]}},
|
|
<span class="ruby-value">:"gnutella-rtr"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"gnutella"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">6347</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">6347</span>]}},
|
|
<span class="ruby-value">:sge_qmaster</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Grid Engine Qmaster Service"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">6444</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">6444</span>]}},
|
|
<span class="ruby-value">:sge_execd</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Grid Engine Execution Service"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">6445</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">6445</span>]}},
|
|
<span class="ruby-value">:"mysql-proxy"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"MySQL Proxy"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">6446</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">6446</span>]}},
|
|
<span class="ruby-value">:"afs3-fileserver"</span> <span class="ruby-operator">=></span> {<span class="ruby-value">:aliases</span> <span class="ruby-operator">=></span> [<span class="ruby-string">"bbs"</span>], <span class="ruby-value">:clients</span> <span class="ruby-operator">=></span> [], <span class="ruby-value">:description</span> <span class="ruby-operator">=></span> <span class="ruby-string">"file server itself"</span>, <span class="ruby-value">:usage</span> <span class="ruby-operator">=></span> {<span class="ruby-value">:tcp</span> <span class="ruby-operator">=></span> [<span class="ruby-value">7000</span>], <span class="ruby-value">:udp</span> <span class="ruby-operator">=></span> [<span class="ruby-value">7000</span>]}},
|
|
<span class="ruby-value">:"afs3-callback"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"callbacks to cache managers"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">7001</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">7001</span>]}},
|
|
<span class="ruby-value">:"afs3-prserver"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"users & groups database"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">7002</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">7002</span>]}},
|
|
<span class="ruby-value">:"afs3-vlserver"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"volume location database"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">7003</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">7003</span>]}},
|
|
<span class="ruby-value">:"afs3-kaserver"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"AFS/Kerberos authentication"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">7004</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">7004</span>]}},
|
|
<span class="ruby-value">:"afs3-volser"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"volume managment server"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">7005</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">7005</span>]}},
|
|
<span class="ruby-value">:"afs3-errors"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"error interpretation service"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">7006</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">7006</span>]}},
|
|
<span class="ruby-value">:"afs3-bos"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"basic overseer process"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">7007</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">7007</span>]}},
|
|
<span class="ruby-value">:"afs3-update"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"server-to-server updater"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">7008</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">7008</span>]}},
|
|
<span class="ruby-value">:"afs3-rmtsys"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"remote cache manager service"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">7009</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">7009</span>]}},
|
|
<span class="ruby-value">:"font-service"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"X Font Service"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">7100</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">7100</span>]}},
|
|
<span class="ruby-value">:"http-alt"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"WWW caching service"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">8080</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">8080</span>]}},
|
|
<span class="ruby-value">:"bacula-dir"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Bacula Director"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">9101</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">9101</span>]}},
|
|
<span class="ruby-value">:"bacula-fd"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Bacula File Daemon"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">9102</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">9102</span>]}},
|
|
<span class="ruby-value">:"bacula-sd"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Bacula Storage Daemon"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">9103</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">9103</span>]}},
|
|
<span class="ruby-value">:xmms2</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Cross-platform Music Multiplexing System"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">9667</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">9667</span>]}},
|
|
<span class="ruby-value">:nbd</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Linux Network Block Device"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">10809</span>]}},
|
|
<span class="ruby-value">:"zabbix-agent"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Zabbix Agent"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">10050</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">10050</span>]}},
|
|
<span class="ruby-value">:"zabbix-trapper"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Zabbix Trapper"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">10051</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">10051</span>]}},
|
|
<span class="ruby-value">:amanda</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"amanda backup services"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">10080</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">10080</span>]}},
|
|
<span class="ruby-value">:hkp</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"OpenPGP HTTP Keyserver"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">11371</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">11371</span>]}},
|
|
<span class="ruby-value">:bprd</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"VERITAS NetBackup"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">13720</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">13720</span>]}},
|
|
<span class="ruby-value">:bpdbm</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"VERITAS NetBackup"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">13721</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">13721</span>]}},
|
|
<span class="ruby-value">:"bpjava-msvc"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"BP Java MSVC Protocol"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">13722</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">13722</span>]}},
|
|
<span class="ruby-value">:vnetd</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Veritas Network Utility"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">13724</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">13724</span>]}},
|
|
<span class="ruby-value">:bpcd</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"VERITAS NetBackup"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">13782</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">13782</span>]}},
|
|
<span class="ruby-value">:vopied</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"VERITAS NetBackup"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">13783</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">13783</span>]}},
|
|
<span class="ruby-value">:dcap</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"dCache Access Protocol"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">22125</span>]}},
|
|
<span class="ruby-value">:gsidcap</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"GSI dCache Access Protocol"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">22128</span>]}},
|
|
<span class="ruby-value">:wnn6</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"wnn6"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">22273</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">22273</span>]}},
|
|
<span class="ruby-value">:rtmp</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Routing Table Maintenance Protocol"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:ddp</span><span class="ruby-operator">=></span>[<span class="ruby-value">1</span>]}},
|
|
<span class="ruby-value">:nbp</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Name Binding Protocol"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:ddp</span><span class="ruby-operator">=></span>[<span class="ruby-value">2</span>]}},
|
|
<span class="ruby-value">:zip</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Zone Information Protocol"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:ddp</span><span class="ruby-operator">=></span>[<span class="ruby-value">6</span>]}},
|
|
<span class="ruby-value">:kerberos4</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"kerberos-iv"</span>, <span class="ruby-string">"kdc"</span>], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Kerberos (server)"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">750</span>], <span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">750</span>]}},
|
|
<span class="ruby-value">:kerberos_master</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Kerberos authentication"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">751</span>], <span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">751</span>]}},
|
|
<span class="ruby-value">:passwd_server</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Kerberos passwd server"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">752</span>]}},
|
|
<span class="ruby-value">:krb_prop</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"krb5_prop"</span>, <span class="ruby-string">"hprop"</span>], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Kerberos slave propagation"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">754</span>]}},
|
|
<span class="ruby-value">:krbupdate</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"kreg"</span>], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Kerberos registration"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">760</span>]}},
|
|
<span class="ruby-value">:swat</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"swat"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">901</span>]}},
|
|
<span class="ruby-value">:kpop</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Pop with Kerberos"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">1109</span>]}},
|
|
<span class="ruby-value">:knetd</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Kerberos de-multiplexor"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">2053</span>]}},
|
|
<span class="ruby-value">:"zephyr-srv"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Zephyr server"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">2102</span>]}},
|
|
<span class="ruby-value">:"zephyr-clt"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Zephyr serv-hm connection"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">2103</span>]}},
|
|
<span class="ruby-value">:"zephyr-hm"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Zephyr hostmanager"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">2104</span>]}},
|
|
<span class="ruby-value">:eklogin</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Kerberos encrypted rlogin"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">2105</span>]}},
|
|
<span class="ruby-value">:kx</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"X over Kerberos"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">2111</span>]}},
|
|
<span class="ruby-value">:iprop</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"incremental propagation"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">2121</span>]}},
|
|
<span class="ruby-value">:supfilesrv</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"SUP server"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">871</span>]}},
|
|
<span class="ruby-value">:supfiledbg</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"SUP debugging"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">1127</span>]}},
|
|
<span class="ruby-value">:linuxconf</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"LinuxConf"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">98</span>]}},
|
|
<span class="ruby-value">:poppassd</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Eudora"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">106</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">106</span>]}},
|
|
<span class="ruby-value">:ssmtp</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"smtps"</span>], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"SMTP over SSL"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">465</span>]}},
|
|
<span class="ruby-value">:moira_db</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Moira database"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">775</span>]}},
|
|
<span class="ruby-value">:moira_update</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Moira update protocol"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">777</span>]}},
|
|
<span class="ruby-value">:moira_ureg</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Moira user registration"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">779</span>]}},
|
|
<span class="ruby-value">:spamd</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"spamassassin daemon"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">783</span>]}},
|
|
<span class="ruby-value">:omirr</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"omirrd"</span>], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"online mirror"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">808</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">808</span>]}},
|
|
<span class="ruby-value">:customs</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"pmake customs server"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">1001</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">1001</span>]}},
|
|
<span class="ruby-value">:skkserv</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"skk jisho server port"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">1178</span>]}},
|
|
<span class="ruby-value">:predict</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"predict -- satellite tracking"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">1210</span>]}},
|
|
<span class="ruby-value">:rmtcfg</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Gracilis Packeten remote config server"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">1236</span>]}},
|
|
<span class="ruby-value">:wipld</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Wipl network monitor"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">1300</span>]}},
|
|
<span class="ruby-value">:xtel</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"french minitel"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">1313</span>]}},
|
|
<span class="ruby-value">:xtelw</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"french minitel"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">1314</span>]}},
|
|
<span class="ruby-value">:support</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"GNATS"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">1529</span>]}},
|
|
<span class="ruby-value">:cfinger</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"GNU Finger"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">2003</span>]}},
|
|
<span class="ruby-value">:frox</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"frox: caching ftp proxy"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">2121</span>]}},
|
|
<span class="ruby-value">:ninstall</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"ninstall service"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">2150</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">2150</span>]}},
|
|
<span class="ruby-value">:zebrasrv</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"zebra service"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">2600</span>]}},
|
|
<span class="ruby-value">:zebra</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"zebra vty"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">2601</span>]}},
|
|
<span class="ruby-value">:ripd</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"ripd vty (zebra)"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">2602</span>]}},
|
|
<span class="ruby-value">:ripngd</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"ripngd vty (zebra)"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">2603</span>]}},
|
|
<span class="ruby-value">:ospfd</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"ospfd vty (zebra)"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">2604</span>]}},
|
|
<span class="ruby-value">:bgpd</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"bgpd vty (zebra)"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">2605</span>]}},
|
|
<span class="ruby-value">:ospf6d</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"ospf6d vty (zebra)"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">2606</span>]}},
|
|
<span class="ruby-value">:ospfapi</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"OSPF-API"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">2607</span>]}},
|
|
<span class="ruby-value">:isisd</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"ISISd vty (zebra)"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">2608</span>]}},
|
|
<span class="ruby-value">:afbackup</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Afbackup system"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">2988</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">2988</span>]}},
|
|
<span class="ruby-value">:afmbackup</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Afmbackup system"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">2989</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">2989</span>]}},
|
|
<span class="ruby-value">:xtell</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"xtell server"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">4224</span>]}},
|
|
<span class="ruby-value">:fax</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"FAX transmission service (old)"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">4557</span>]}},
|
|
<span class="ruby-value">:hylafax</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"HylaFAX client-server protocol (new)"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">4559</span>]}},
|
|
<span class="ruby-value">:distmp3</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"distmp3host daemon"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">4600</span>]}},
|
|
<span class="ruby-value">:munin</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[<span class="ruby-string">"lrrd"</span>], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Munin"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">4949</span>]}},
|
|
<span class="ruby-value">:"enbd-cstatd"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"ENBD client statd"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">5051</span>]}},
|
|
<span class="ruby-value">:"enbd-sstatd"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"ENBD server statd"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">5052</span>]}},
|
|
<span class="ruby-value">:pcrd</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"PCR-1000 Daemon"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">5151</span>]}},
|
|
<span class="ruby-value">:noclog</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"noclogd with TCP (nocol)"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">5354</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">5354</span>]}},
|
|
<span class="ruby-value">:hostmon</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"hostmon uses TCP (nocol)"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">5355</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">5355</span>]}},
|
|
<span class="ruby-value">:rplay</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"RPlay audio service"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">5555</span>]}},
|
|
<span class="ruby-value">:nrpe</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Nagios Remote Plugin Executor"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">5666</span>]}},
|
|
<span class="ruby-value">:nsca</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Nagios Agent - NSCA"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">5667</span>]}},
|
|
<span class="ruby-value">:mrtd</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"MRT Routing Daemon"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">5674</span>]}},
|
|
<span class="ruby-value">:bgpsim</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"MRT Routing Simulator"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">5675</span>]}},
|
|
<span class="ruby-value">:canna</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"cannaserver"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">5680</span>]}},
|
|
<span class="ruby-value">:"sane-port"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"SANE network scanner daemon"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">6566</span>]}},
|
|
<span class="ruby-value">:ircd</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Internet Relay Chat"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">6667</span>]}},
|
|
<span class="ruby-value">:"zope-ftp"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"zope management by ftp"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">8021</span>]}},
|
|
<span class="ruby-value">:tproxy</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Transparent Proxy"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">8081</span>]}},
|
|
<span class="ruby-value">:omniorb</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"OmniORB"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">8088</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">8088</span>]}},
|
|
<span class="ruby-value">:xinetd</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">""</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">9098</span>]}},
|
|
<span class="ruby-value">:mandelspawn</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"network mandelbrot"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">9359</span>]}},
|
|
<span class="ruby-value">:git</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Git Version Control System"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">9418</span>]}},
|
|
<span class="ruby-value">:zope</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"zope server"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">9673</span>]}},
|
|
<span class="ruby-value">:webmin</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">""</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">10000</span>]}},
|
|
<span class="ruby-value">:kamanda</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"amanda backup services (Kerberos)"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">10081</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">10081</span>]}},
|
|
<span class="ruby-value">:amandaidx</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"amanda backup services"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">10082</span>]}},
|
|
<span class="ruby-value">:amidxtape</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"amanda backup services"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">10083</span>]}},
|
|
<span class="ruby-value">:smsqp</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Alamin SMS gateway"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">11201</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">11201</span>]}},
|
|
<span class="ruby-value">:xpilot</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"XPilot Contact Port"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">15345</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">15345</span>]}},
|
|
<span class="ruby-value">:"sgi-cmsd"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Cluster membership services daemon"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">17001</span>]}},
|
|
<span class="ruby-value">:"sgi-crsd"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">""</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">17002</span>]}},
|
|
<span class="ruby-value">:"sgi-gcd"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"SGI Group membership daemon"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">17003</span>]}},
|
|
<span class="ruby-value">:"sgi-cad"</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Cluster Admin daemon"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">17004</span>]}},
|
|
<span class="ruby-value">:isdnlog</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"isdn logging system"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">20011</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">20011</span>]}},
|
|
<span class="ruby-value">:vboxd</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"voice box system"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">20012</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">20012</span>]}},
|
|
<span class="ruby-value">:binkp</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"binkp fidonet protocol"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">24554</span>]}},
|
|
<span class="ruby-value">:asp</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Address Search Protocol"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">27374</span>], <span class="ruby-value">:udp</span><span class="ruby-operator">=></span>[<span class="ruby-value">27374</span>]}},
|
|
<span class="ruby-value">:csync2</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"cluster synchronization tool"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">30865</span>]}},
|
|
<span class="ruby-value">:dircproxy</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"Detachable IRC Proxy"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">57000</span>]}},
|
|
<span class="ruby-value">:tfido</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"fidonet EMSI over telnet"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">60177</span>]}},
|
|
<span class="ruby-value">:fido</span><span class="ruby-operator">=></span>{<span class="ruby-value">:aliases</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:clients</span><span class="ruby-operator">=></span>[], <span class="ruby-value">:description</span><span class="ruby-operator">=></span><span class="ruby-string">"fidonet EMSI over TCP"</span>, <span class="ruby-value">:usage</span><span class="ruby-operator">=></span>{<span class="ruby-value">:tcp</span><span class="ruby-operator">=></span>[<span class="ruby-value">60179</span>]}}
|
|
}
|
|
<span class="ruby-comment">#</span>
|
|
<span class="ruby-comment">#</span>
|
|
<span class="ruby-comment"># ### end of SYSTEM detail initialization</span>
|
|
<span class="ruby-keyword">end</span></pre>
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
</section>
|
|
|
|
<section id="public-instance-5Buntitled-5D-method-details" class="method-section">
|
|
<header>
|
|
<h3>Public Instance Methods</h3>
|
|
</header>
|
|
|
|
|
|
<div id="method-i-5B-5D" class="method-detail ">
|
|
|
|
<div class="method-heading">
|
|
<span class="method-name">[]</span><span
|
|
class="method-args">(the_path="")</span>
|
|
|
|
<span class="method-click-advice">click to toggle source</span>
|
|
|
|
</div>
|
|
|
|
|
|
<div class="method-description">
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<div class="method-source-code" id="5B-5D-source">
|
|
<pre><span class="ruby-comment"># File lib/gxg/gxg_entities.rb, line 973</span>
|
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">[]</span>(<span class="ruby-identifier">the_path</span>=<span class="ruby-string">""</span>)
|
|
<span class="ruby-comment"># Public interface for accessing system keyed values.</span>
|
|
<span class="ruby-comment"># access cached or system-read values on /proc (sysctl-style) keys. (frankly missing from BSD, etc)</span>
|
|
<span class="ruby-identifier">result</span> = <span class="ruby-keyword">nil</span>
|
|
<span class="ruby-identifier">reference</span> = <span class="ruby-identifier">detail_mapping</span>()
|
|
<span class="ruby-comment">#</span>
|
|
<span class="ruby-identifier">reference</span>.<span class="ruby-identifier">to_enum</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">mapping</span><span class="ruby-operator">|</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">mapping</span>[<span class="ruby-value">:key</span>] <span class="ruby-operator">==</span> <span class="ruby-identifier">the_path</span>
|
|
<span class="ruby-ivar">@thread_safety</span>.<span class="ruby-identifier">synchronize</span> {
|
|
<span class="ruby-identifier">result</span> = <span class="ruby-ivar">@details</span>.<span class="ruby-identifier">get_at_path</span>(<span class="ruby-identifier">mapping</span>[<span class="ruby-value">:path</span>]).<span class="ruby-identifier">clone</span>
|
|
}
|
|
<span class="ruby-keyword">break</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">result</span>
|
|
<span class="ruby-comment"># attempt to fetch the data from the system somehow.</span>
|
|
<span class="ruby-identifier">result</span> = <span class="ruby-identifier">get_system_data</span>(<span class="ruby-identifier">the_path</span>)
|
|
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">result</span>.<span class="ruby-identifier">keys</span>.<span class="ruby-identifier">size</span> <span class="ruby-operator">></span> <span class="ruby-value">0</span>
|
|
<span class="ruby-identifier">result</span> = <span class="ruby-keyword">nil</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-comment">#</span>
|
|
<span class="ruby-identifier">result</span>
|
|
<span class="ruby-keyword">end</span></pre>
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
<div id="method-i-architecture" class="method-detail ">
|
|
|
|
<div class="method-heading">
|
|
<span class="method-name">architecture</span><span
|
|
class="method-args">()</span>
|
|
|
|
<span class="method-click-advice">click to toggle source</span>
|
|
|
|
</div>
|
|
|
|
|
|
<div class="method-description">
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<div class="method-source-code" id="architecture-source">
|
|
<pre><span class="ruby-comment"># File lib/gxg/gxg_entities.rb, line 998</span>
|
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">architecture</span>()
|
|
<span class="ruby-ivar">@thread_safety</span>.<span class="ruby-identifier">synchronize</span> {
|
|
{<span class="ruby-value">:architecture</span> <span class="ruby-operator">=></span> <span class="ruby-ivar">@details</span>[<span class="ruby-value">:architecture</span>], <span class="ruby-value">:processors</span> <span class="ruby-operator">=></span> <span class="ruby-ivar">@details</span>[<span class="ruby-value">:processors</span>]}.<span class="ruby-identifier">clone</span>
|
|
}
|
|
<span class="ruby-keyword">end</span></pre>
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
<div id="method-i-cpuload" class="method-detail ">
|
|
|
|
<div class="method-heading">
|
|
<span class="method-name">cpuload</span><span
|
|
class="method-args">()</span>
|
|
|
|
<span class="method-click-advice">click to toggle source</span>
|
|
|
|
</div>
|
|
|
|
|
|
<div class="method-description">
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<div class="method-source-code" id="cpuload-source">
|
|
<pre><span class="ruby-comment"># File lib/gxg/gxg_entities.rb, line 1042</span>
|
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">cpuload</span>
|
|
<span class="ruby-comment"># this or load_average ??</span>
|
|
<span class="ruby-identifier">average</span> = <span class="ruby-constant">Sys</span><span class="ruby-operator">::</span><span class="ruby-constant">CPU</span>.<span class="ruby-identifier">load_avg</span>
|
|
{ <span class="ruby-value">:minute1</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">average</span>[<span class="ruby-value">0</span>], <span class="ruby-value">:minute5</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">average</span>[<span class="ruby-value">1</span>], <span class="ruby-value">:minute15</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">average</span>[<span class="ruby-value">2</span>] }
|
|
<span class="ruby-keyword">end</span></pre>
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
<div id="method-i-current_user" class="method-detail ">
|
|
|
|
<div class="method-heading">
|
|
<span class="method-name">current_user</span><span
|
|
class="method-args">()</span>
|
|
|
|
<span class="method-click-advice">click to toggle source</span>
|
|
|
|
</div>
|
|
|
|
|
|
<div class="method-description">
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<div class="method-source-code" id="current_user-source">
|
|
<pre><span class="ruby-comment"># File lib/gxg/gxg_entities.rb, line 1324</span>
|
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">current_user</span>()
|
|
<span class="ruby-constant">Sys</span><span class="ruby-operator">::</span><span class="ruby-constant">Admin</span>.<span class="ruby-identifier">get_user</span>(<span class="ruby-constant">Sys</span><span class="ruby-operator">::</span><span class="ruby-constant">Admin</span>.<span class="ruby-identifier">get_login</span>)
|
|
<span class="ruby-keyword">end</span></pre>
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
<div id="method-i-engine" class="method-detail ">
|
|
|
|
<div class="method-heading">
|
|
<span class="method-name">engine</span><span
|
|
class="method-args">()</span>
|
|
|
|
<span class="method-click-advice">click to toggle source</span>
|
|
|
|
</div>
|
|
|
|
|
|
<div class="method-description">
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<div class="method-source-code" id="engine-source">
|
|
<pre><span class="ruby-comment"># File lib/gxg/gxg_entities.rb, line 1016</span>
|
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">engine</span>()
|
|
<span class="ruby-comment"># ??? just info ??? GxG::Engine::profile()</span>
|
|
<span class="ruby-operator">::</span><span class="ruby-constant">GxG</span><span class="ruby-operator">::</span><span class="ruby-constant">Engine</span>
|
|
<span class="ruby-keyword">end</span></pre>
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
<div id="method-i-environment" class="method-detail ">
|
|
|
|
<div class="method-heading">
|
|
<span class="method-name">environment</span><span
|
|
class="method-args">()</span>
|
|
|
|
<span class="method-click-advice">click to toggle source</span>
|
|
|
|
</div>
|
|
|
|
|
|
<div class="method-description">
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<div class="method-source-code" id="environment-source">
|
|
<pre><span class="ruby-comment"># File lib/gxg/gxg_entities.rb, line 1010</span>
|
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">environment</span>()
|
|
<span class="ruby-ivar">@thread_safety</span>.<span class="ruby-identifier">synchronize</span> {
|
|
{<span class="ruby-value">:environment</span> <span class="ruby-operator">=></span> <span class="ruby-ivar">@details</span>[<span class="ruby-value">:environment</span>], <span class="ruby-value">:version</span> <span class="ruby-operator">=></span> <span class="ruby-ivar">@details</span>[<span class="ruby-value">:environment_version</span>], <span class="ruby-value">:variant</span> <span class="ruby-operator">=></span> <span class="ruby-ivar">@details</span>[<span class="ruby-value">:environment_variant</span>]}.<span class="ruby-identifier">clone</span>
|
|
}
|
|
<span class="ruby-keyword">end</span></pre>
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
<div id="method-i-import_services_file" class="method-detail ">
|
|
|
|
<div class="method-heading">
|
|
<span class="method-name">import_services_file</span><span
|
|
class="method-args">()</span>
|
|
|
|
<span class="method-click-advice">click to toggle source</span>
|
|
|
|
</div>
|
|
|
|
|
|
<div class="method-description">
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<div class="method-source-code" id="import_services_file-source">
|
|
<pre><span class="ruby-comment"># File lib/gxg/gxg_entities.rb, line 1963</span>
|
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">import_services_file</span>()
|
|
<span class="ruby-comment">#</span>
|
|
<span class="ruby-identifier">current_system_list</span> = <span class="ruby-keyword">self</span>.<span class="ruby-identifier">services_file</span>()
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">current_system_list</span>.<span class="ruby-identifier">size</span> <span class="ruby-operator">></span><span class="ruby-value">0</span>
|
|
<span class="ruby-identifier">current_system_list</span>.<span class="ruby-identifier">to_enum</span>(<span class="ruby-value">:each</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">the_entry</span><span class="ruby-operator">|</span>
|
|
<span class="ruby-keyword">self</span>.<span class="ruby-identifier">service_ports_register</span>(<span class="ruby-identifier">the_entry</span>.<span class="ruby-identifier">keys</span>()[<span class="ruby-value">0</span>],<span class="ruby-identifier">the_entry</span>[(<span class="ruby-identifier">the_entry</span>.<span class="ruby-identifier">keys</span>()[<span class="ruby-value">0</span>])])
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">true</span>
|
|
<span class="ruby-keyword">else</span>
|
|
<span class="ruby-keyword">false</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-comment">#</span>
|
|
<span class="ruby-keyword">end</span></pre>
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
<div id="method-i-load_average" class="method-detail ">
|
|
|
|
<div class="method-heading">
|
|
<span class="method-name">load_average</span><span
|
|
class="method-args">()</span>
|
|
|
|
<span class="method-click-advice">click to toggle source</span>
|
|
|
|
</div>
|
|
|
|
|
|
<div class="method-description">
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<div class="method-source-code" id="load_average-source">
|
|
<pre><span class="ruby-comment"># File lib/gxg/gxg_entities.rb, line 1027</span>
|
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">load_average</span>()
|
|
<span class="ruby-comment"># this or cpuload ??</span>
|
|
<span class="ruby-identifier">this_platform</span> = <span class="ruby-ivar">@details</span>[<span class="ruby-value">:platform</span>]
|
|
<span class="ruby-keyword">case</span> <span class="ruby-identifier">this_platform</span>
|
|
<span class="ruby-keyword">when</span> <span class="ruby-value">:linux</span>
|
|
<span class="ruby-identifier">result</span> = (<span class="ruby-string">`uptime`</span>.<span class="ruby-identifier">split</span>(<span class="ruby-string">":"</span>)[<span class="ruby-value">-1</span>].<span class="ruby-identifier">chomp</span>.<span class="ruby-identifier">split</span>(<span class="ruby-string">","</span>))
|
|
<span class="ruby-identifier">result</span>.<span class="ruby-identifier">to_enum</span>(<span class="ruby-value">:each_index</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">indexer</span><span class="ruby-operator">|</span>
|
|
<span class="ruby-identifier">result</span>[(<span class="ruby-identifier">indexer</span>)] = <span class="ruby-identifier">result</span>[(<span class="ruby-identifier">indexer</span>)].<span class="ruby-identifier">to_f</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">else</span>
|
|
<span class="ruby-identifier">result</span> = []
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-identifier">result</span>
|
|
<span class="ruby-keyword">end</span></pre>
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
<div id="method-i-maximum_buffer_size" class="method-detail ">
|
|
|
|
<div class="method-heading">
|
|
<span class="method-name">maximum_buffer_size</span><span
|
|
class="method-args">()</span>
|
|
|
|
<span class="method-click-advice">click to toggle source</span>
|
|
|
|
</div>
|
|
|
|
|
|
<div class="method-description">
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<div class="method-source-code" id="maximum_buffer_size-source">
|
|
<pre><span class="ruby-comment"># File lib/gxg/gxg_entities.rb, line 1065</span>
|
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">maximum_buffer_size</span>()
|
|
<span class="ruby-keyword">self</span>.<span class="ruby-identifier">memory_limits</span>()[<span class="ruby-value">:buffers</span>]
|
|
<span class="ruby-keyword">end</span></pre>
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
<div id="method-i-memory" class="method-detail ">
|
|
|
|
<div class="method-heading">
|
|
<span class="method-name">memory</span><span
|
|
class="method-args">()</span>
|
|
|
|
<span class="method-click-advice">click to toggle source</span>
|
|
|
|
</div>
|
|
|
|
|
|
<div class="method-description">
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<div class="method-source-code" id="memory-source">
|
|
<pre><span class="ruby-comment"># File lib/gxg/gxg_entities.rb, line 1069</span>
|
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">memory</span>()
|
|
<span class="ruby-identifier">result</span> = {}
|
|
<span class="ruby-identifier">this_platform</span> = <span class="ruby-keyword">nil</span>
|
|
<span class="ruby-ivar">@thread_safety</span>.<span class="ruby-identifier">synchronize</span> { <span class="ruby-identifier">this_platform</span> = <span class="ruby-ivar">@details</span>[<span class="ruby-value">:platform</span>] }
|
|
<span class="ruby-keyword">case</span> <span class="ruby-identifier">this_platform</span>
|
|
<span class="ruby-comment"># TODO: GxG::SYSTEM.memory : research free mem discovery for Winderz and BSD</span>
|
|
<span class="ruby-keyword">when</span> <span class="ruby-value">:windows</span>
|
|
<span class="ruby-comment"># No known way to get this info. MEM is dosbox only style memory counting. :P</span>
|
|
<span class="ruby-comment"># Might have to bind to a C or C++ lib for this kind of data (PITA)</span>
|
|
<span class="ruby-comment"># FORNOW: just pretend upper theoretical limit on a process is all you have (sucks)</span>
|
|
<span class="ruby-identifier">mem_limit</span> = <span class="ruby-operator">::</span><span class="ruby-constant">GxG</span><span class="ruby-operator">::</span><span class="ruby-constant">SYSTEM</span>.<span class="ruby-identifier">memory_limits</span>()[<span class="ruby-value">:process</span>].<span class="ruby-identifier">max</span>
|
|
<span class="ruby-identifier">result</span>[<span class="ruby-value">:actual</span>] = {<span class="ruby-value">:total</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">mem_limit</span>, <span class="ruby-value">:used</span> <span class="ruby-operator">=></span> <span class="ruby-value">0</span>, <span class="ruby-value">:free</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">mem_limit</span>, <span class="ruby-value">:shared</span> <span class="ruby-operator">=></span> <span class="ruby-value">0</span>, <span class="ruby-value">:buffers</span> <span class="ruby-operator">=></span> <span class="ruby-value">0</span>, <span class="ruby-value">:cached</span> <span class="ruby-operator">=></span> <span class="ruby-value">0</span>}
|
|
<span class="ruby-identifier">result</span>[<span class="ruby-value">:buffers</span>] = {<span class="ruby-value">:used</span> <span class="ruby-operator">=></span> <span class="ruby-value">0</span>, <span class="ruby-value">:free</span> <span class="ruby-operator">=></span> <span class="ruby-value">0</span>}
|
|
<span class="ruby-identifier">result</span>[<span class="ruby-value">:virtual</span>] = {<span class="ruby-value">:total</span> <span class="ruby-operator">=></span> <span class="ruby-value">0</span>, <span class="ruby-value">:used</span> <span class="ruby-operator">=></span> <span class="ruby-value">0</span>, <span class="ruby-value">:free</span> <span class="ruby-operator">=></span> <span class="ruby-value">0</span>}
|
|
<span class="ruby-keyword">when</span> <span class="ruby-value">:bsd</span>, <span class="ruby-value">:darwin</span>, <span class="ruby-value">:macos</span>
|
|
<span class="ruby-comment"># Inspired by: http://www.cyberciti.biz/faq/freebsd-command-to-get-ram-information/ by Ralf S. Engelschall</span>
|
|
<span class="ruby-comment"># ported to Ruby:</span>
|
|
<span class="ruby-identifier">env</span> = <span class="ruby-keyword">self</span>.<span class="ruby-identifier">environment</span>()
|
|
<span class="ruby-keyword">case</span> <span class="ruby-identifier">env</span>[<span class="ruby-value">:environment</span>]
|
|
<span class="ruby-keyword">when</span> <span class="ruby-value">:freebsd</span>, <span class="ruby-value">:dragonfly</span>, <span class="ruby-value">:pcbsd</span>
|
|
<span class="ruby-comment"># TODO: GxG::SYSTEM.memory() : test under freebsd, dragonfly and pcbsd</span>
|
|
<span class="ruby-identifier">page_size</span> = (<span class="ruby-string">`sysctl hw.pagesize`</span>.<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">split</span>(<span class="ruby-string">":"</span>)[<span class="ruby-value">1</span>].<span class="ruby-identifier">numeric_values</span>()[<span class="ruby-value">:integer</span>] <span class="ruby-operator">||</span> <span class="ruby-value">0</span>)
|
|
<span class="ruby-identifier">mem_phys</span> = (<span class="ruby-string">`sysctl hw.physmem`</span>.<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">split</span>(<span class="ruby-string">":"</span>)[<span class="ruby-value">1</span>].<span class="ruby-identifier">numeric_values</span>()[<span class="ruby-value">:integer</span>] <span class="ruby-operator">||</span> <span class="ruby-value">0</span>) <span class="ruby-operator">*</span> <span class="ruby-identifier">page_size</span>
|
|
<span class="ruby-identifier">mem_all</span> = (<span class="ruby-string">`sysctl vm.stats.vm.v_page_count`</span>.<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">split</span>(<span class="ruby-string">":"</span>)[<span class="ruby-value">1</span>].<span class="ruby-identifier">numeric_values</span>()[<span class="ruby-value">:integer</span>] <span class="ruby-operator">||</span> <span class="ruby-value">0</span>) <span class="ruby-operator">*</span> <span class="ruby-identifier">page_size</span>
|
|
<span class="ruby-identifier">mem_wire</span> = (<span class="ruby-string">`sysctl vm.stats.vm.v_wire_count`</span>.<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">split</span>(<span class="ruby-string">":"</span>)[<span class="ruby-value">1</span>].<span class="ruby-identifier">numeric_values</span>()[<span class="ruby-value">:integer</span>] <span class="ruby-operator">||</span> <span class="ruby-value">0</span>) <span class="ruby-operator">*</span> <span class="ruby-identifier">page_size</span>
|
|
<span class="ruby-identifier">mem_active</span> = (<span class="ruby-string">`sysctl vm.stats.vm.v_active_count`</span>.<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">split</span>(<span class="ruby-string">":"</span>)[<span class="ruby-value">1</span>].<span class="ruby-identifier">numeric_values</span>()[<span class="ruby-value">:integer</span>] <span class="ruby-operator">||</span> <span class="ruby-value">0</span>) <span class="ruby-operator">*</span> <span class="ruby-identifier">page_size</span>
|
|
<span class="ruby-identifier">mem_inactive</span> = (<span class="ruby-string">`sysctl vm.stats.vm.v_inactive_count`</span>.<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">split</span>(<span class="ruby-string">":"</span>)[<span class="ruby-value">1</span>].<span class="ruby-identifier">numeric_values</span>()[<span class="ruby-value">:integer</span>] <span class="ruby-operator">||</span> <span class="ruby-value">0</span>) <span class="ruby-operator">*</span> <span class="ruby-identifier">page_size</span>
|
|
<span class="ruby-identifier">mem_cache</span> = (<span class="ruby-string">`sysctl vm.stats.vm.v_cache_count`</span>.<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">split</span>(<span class="ruby-string">":"</span>)[<span class="ruby-value">1</span>].<span class="ruby-identifier">numeric_values</span>()[<span class="ruby-value">:integer</span>] <span class="ruby-operator">||</span> <span class="ruby-value">0</span>) <span class="ruby-operator">*</span> <span class="ruby-identifier">page_size</span>
|
|
<span class="ruby-identifier">mem_free</span> = (<span class="ruby-string">`sysctl vm.stats.vm.v_free_count`</span>.<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">split</span>(<span class="ruby-string">":"</span>)[<span class="ruby-value">1</span>].<span class="ruby-identifier">numeric_values</span>()[<span class="ruby-value">:integer</span>] <span class="ruby-operator">||</span> <span class="ruby-value">0</span>) <span class="ruby-operator">*</span> <span class="ruby-identifier">page_size</span>
|
|
<span class="ruby-identifier">mem_vm_total</span> = (<span class="ruby-string">`sysctl vm.swap_total`</span>.<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">split</span>(<span class="ruby-string">":"</span>)[<span class="ruby-value">1</span>].<span class="ruby-identifier">numeric_values</span>()[<span class="ruby-value">:integer</span>] <span class="ruby-operator">||</span> <span class="ruby-value">0</span>)
|
|
<span class="ruby-identifier">mem_vm_used</span> = (<span class="ruby-string">`pstat -s`</span>.<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">split</span>(<span class="ruby-string">" "</span>)[<span class="ruby-value">2</span>].<span class="ruby-identifier">numeric_values</span>()[<span class="ruby-value">:integer</span>] <span class="ruby-operator">||</span> <span class="ruby-value">0</span>)
|
|
<span class="ruby-keyword">when</span> <span class="ruby-value">:netbsd</span>
|
|
<span class="ruby-comment"># TODO: GxG::SYSTEM.memory() : test under netbsd</span>
|
|
<span class="ruby-identifier">page_size</span> = <span class="ruby-value">0</span>
|
|
<span class="ruby-identifier">mem_phys</span> = <span class="ruby-value">0</span>
|
|
<span class="ruby-identifier">mem_all</span> = <span class="ruby-value">0</span>
|
|
<span class="ruby-identifier">mem_wire</span> = <span class="ruby-value">0</span>
|
|
<span class="ruby-identifier">mem_active</span> = <span class="ruby-value">0</span>
|
|
<span class="ruby-identifier">mem_inactive</span> = <span class="ruby-value">0</span>
|
|
<span class="ruby-identifier">mem_cache</span> = <span class="ruby-value">0</span>
|
|
<span class="ruby-identifier">mem_free</span> = <span class="ruby-value">0</span>
|
|
<span class="ruby-identifier">mem_vm_total</span> = <span class="ruby-value">0</span>
|
|
<span class="ruby-identifier">mem_vm_used</span> = <span class="ruby-value">0</span>
|
|
<span class="ruby-comment">#</span>
|
|
<span class="ruby-identifier">raw_data</span> = <span class="ruby-string">`vmstat -s`</span>
|
|
<span class="ruby-identifier">raw_data</span>.<span class="ruby-identifier">to_enum</span>(<span class="ruby-value">:each_line</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">the_line</span><span class="ruby-operator">|</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_line</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-string">"bytes per page"</span>)
|
|
<span class="ruby-identifier">page_size</span> = (<span class="ruby-identifier">the_line</span>.<span class="ruby-identifier">split</span>(<span class="ruby-string">" "</span>)[<span class="ruby-value">0</span>].<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">numeric_values</span>()[<span class="ruby-value">:integer</span>] <span class="ruby-operator">||</span> <span class="ruby-value">0</span>)
|
|
<span class="ruby-keyword">break</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">page_size</span> <span class="ruby-operator">></span> <span class="ruby-value">0</span>
|
|
<span class="ruby-identifier">raw_data</span>.<span class="ruby-identifier">to_enum</span>(<span class="ruby-value">:each_line</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">the_line</span><span class="ruby-operator">|</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_line</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-string">"pages managed"</span>)
|
|
<span class="ruby-identifier">mem_phys</span> = ((<span class="ruby-identifier">the_line</span>.<span class="ruby-identifier">split</span>(<span class="ruby-string">" "</span>)[<span class="ruby-value">0</span>].<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">numeric_values</span>()[<span class="ruby-value">:integer</span>] <span class="ruby-operator">||</span> <span class="ruby-value">0</span>) <span class="ruby-operator">*</span> <span class="ruby-identifier">page_size</span>)
|
|
<span class="ruby-identifier">mem_all</span> = <span class="ruby-identifier">mem_phys</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_line</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-string">"pages wired"</span>)
|
|
<span class="ruby-identifier">mem_wire</span> = ((<span class="ruby-identifier">the_line</span>.<span class="ruby-identifier">split</span>(<span class="ruby-string">" "</span>)[<span class="ruby-value">0</span>].<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">numeric_values</span>()[<span class="ruby-value">:integer</span>] <span class="ruby-operator">||</span> <span class="ruby-value">0</span>) <span class="ruby-operator">*</span> <span class="ruby-identifier">page_size</span>)
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_line</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-string">"pages active"</span>)
|
|
<span class="ruby-identifier">mem_active</span> = ((<span class="ruby-identifier">the_line</span>.<span class="ruby-identifier">split</span>(<span class="ruby-string">" "</span>)[<span class="ruby-value">0</span>].<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">numeric_values</span>()[<span class="ruby-value">:integer</span>] <span class="ruby-operator">||</span> <span class="ruby-value">0</span>) <span class="ruby-operator">*</span> <span class="ruby-identifier">page_size</span>)
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_line</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-string">"pages inactive"</span>)
|
|
<span class="ruby-identifier">mem_inactive</span> = ((<span class="ruby-identifier">the_line</span>.<span class="ruby-identifier">split</span>(<span class="ruby-string">" "</span>)[<span class="ruby-value">0</span>].<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">numeric_values</span>()[<span class="ruby-value">:integer</span>] <span class="ruby-operator">||</span> <span class="ruby-value">0</span>) <span class="ruby-operator">*</span> <span class="ruby-identifier">page_size</span>)
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_line</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-string">"pages free"</span>)
|
|
<span class="ruby-identifier">mem_free</span> = ((<span class="ruby-identifier">the_line</span>.<span class="ruby-identifier">split</span>(<span class="ruby-string">" "</span>)[<span class="ruby-value">0</span>].<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">numeric_values</span>()[<span class="ruby-value">:integer</span>] <span class="ruby-operator">||</span> <span class="ruby-value">0</span>) <span class="ruby-operator">*</span> <span class="ruby-identifier">page_size</span>)
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_line</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-string">"swap pages in use"</span>)
|
|
<span class="ruby-identifier">mem_vm_used</span> = ((<span class="ruby-identifier">the_line</span>.<span class="ruby-identifier">split</span>(<span class="ruby-string">" "</span>)[<span class="ruby-value">0</span>].<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">numeric_values</span>()[<span class="ruby-value">:integer</span>] <span class="ruby-operator">||</span> <span class="ruby-value">0</span>) <span class="ruby-operator">*</span> <span class="ruby-identifier">page_size</span>)
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_line</span>.<span class="ruby-identifier">split</span>(<span class="ruby-string">" "</span>)[(<span class="ruby-value">1</span><span class="ruby-operator">..</span><span class="ruby-value">-1</span>)].<span class="ruby-identifier">join</span>(<span class="ruby-string">" "</span>) <span class="ruby-operator">==</span> <span class="ruby-string">"swap pages"</span>
|
|
<span class="ruby-identifier">mem_vm_total</span> = ((<span class="ruby-identifier">the_line</span>.<span class="ruby-identifier">split</span>(<span class="ruby-string">" "</span>)[<span class="ruby-value">0</span>].<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">numeric_values</span>()[<span class="ruby-value">:integer</span>] <span class="ruby-operator">||</span> <span class="ruby-value">0</span>) <span class="ruby-operator">*</span> <span class="ruby-identifier">page_size</span>)
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">when</span> <span class="ruby-value">:darwin</span>, <span class="ruby-value">:macos</span>
|
|
<span class="ruby-comment"># TODO: GxG::SYSTEM.memory() : test under darwin</span>
|
|
<span class="ruby-identifier">raw_data</span> = <span class="ruby-string">`top -l 1`</span>
|
|
<span class="ruby-identifier">page_size</span> = (<span class="ruby-string">`sysctl hw.pagesize`</span>.<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">split</span>(<span class="ruby-string">":"</span>)[<span class="ruby-value">1</span>].<span class="ruby-identifier">numeric_values</span>()[<span class="ruby-value">:integer</span>] <span class="ruby-operator">||</span> <span class="ruby-value">0</span>)
|
|
<span class="ruby-comment"># gives a byte-count, not a page count : hw.physmem</span>
|
|
<span class="ruby-identifier">mem_phys</span> = (<span class="ruby-string">`sysctl hw.physmem`</span>.<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">split</span>(<span class="ruby-string">":"</span>)[<span class="ruby-value">1</span>].<span class="ruby-identifier">numeric_values</span>()[<span class="ruby-value">:integer</span>] <span class="ruby-operator">||</span> <span class="ruby-value">0</span>)
|
|
<span class="ruby-identifier">mem_all</span> = <span class="ruby-identifier">mem_phys</span>
|
|
<span class="ruby-comment"># virtual memory usage:</span>
|
|
<span class="ruby-identifier">raw_data</span> = (<span class="ruby-string">`sysctl vm.swapusage`</span>.<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">split</span>(<span class="ruby-string">":"</span>)[<span class="ruby-value">1</span>].<span class="ruby-identifier">split</span>(<span class="ruby-string">" "</span>))
|
|
<span class="ruby-identifier">mem_vm_total</span> = ((<span class="ruby-identifier">raw_data</span>[<span class="ruby-value">5</span>].<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">numeric_values</span>()[<span class="ruby-value">:float</span>] <span class="ruby-operator">||</span> <span class="ruby-value">0.0</span>) <span class="ruby-operator">*</span> (<span class="ruby-value">1024</span><span class="ruby-operator">**</span><span class="ruby-value">2</span>)).<span class="ruby-identifier">to_i</span>
|
|
<span class="ruby-identifier">mem_vm_used</span> = ((<span class="ruby-identifier">raw_data</span>[<span class="ruby-value">2</span>].<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">numeric_values</span>()[<span class="ruby-value">:float</span>] <span class="ruby-operator">||</span> <span class="ruby-value">0.0</span>) <span class="ruby-operator">*</span> (<span class="ruby-value">1024</span><span class="ruby-operator">**</span><span class="ruby-value">2</span>)).<span class="ruby-identifier">to_i</span>
|
|
<span class="ruby-comment">#SharedLibs: num = 146, resident = 22.9M code, 3.40M data, 8.36M LinkEdit</span>
|
|
<span class="ruby-comment">#MemRegions: num = 7213, resident = 344M + 4.92M private, 22.5M shared</span>
|
|
<span class="ruby-comment">#PhysMem: 59.1M wired, 285M active, 138M inactive, 483M used, 28.3M free</span>
|
|
<span class="ruby-identifier">raw_data</span>.<span class="ruby-identifier">to_enum</span>(<span class="ruby-value">:each_line</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">the_line</span><span class="ruby-operator">|</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_line</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-string">"PhysMem:"</span>)
|
|
<span class="ruby-identifier">data</span> = <span class="ruby-identifier">the_line</span>.<span class="ruby-identifier">split</span>(<span class="ruby-string">":"</span>)[<span class="ruby-value">1</span>].<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">split</span>(<span class="ruby-string">","</span>)
|
|
<span class="ruby-identifier">data</span>.<span class="ruby-identifier">to_enum</span>(<span class="ruby-value">:each</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">the_param</span><span class="ruby-operator">|</span>
|
|
<span class="ruby-identifier">numeric_string</span> = <span class="ruby-identifier">the_param</span>.<span class="ruby-identifier">split</span>(<span class="ruby-string">" "</span>)[<span class="ruby-value">0</span>]
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">numeric_string</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-string">"."</span>)
|
|
<span class="ruby-identifier">numeric_string</span>.<span class="ruby-identifier">gsub!</span>(<span class="ruby-string">"M"</span>,<span class="ruby-string">""</span>)
|
|
<span class="ruby-keyword">else</span>
|
|
<span class="ruby-identifier">numeric_string</span>.<span class="ruby-identifier">gsub!</span>(<span class="ruby-string">"M"</span>,<span class="ruby-string">".0"</span>)
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">case</span> <span class="ruby-identifier">the_param</span>.<span class="ruby-identifier">split</span>(<span class="ruby-string">" "</span>)[<span class="ruby-value">1</span>]
|
|
<span class="ruby-keyword">when</span> <span class="ruby-regexp">/wired/</span>
|
|
<span class="ruby-identifier">mem_wire</span> = ((<span class="ruby-identifier">numeric_string</span>.<span class="ruby-identifier">numeric_values</span>()[<span class="ruby-value">:float</span>] <span class="ruby-operator">||</span> <span class="ruby-value">0.0</span>) <span class="ruby-operator">*</span> (<span class="ruby-value">1024</span><span class="ruby-operator">**</span><span class="ruby-value">2</span>)).<span class="ruby-identifier">to_i</span>
|
|
<span class="ruby-keyword">when</span> <span class="ruby-regexp">/active/</span>
|
|
<span class="ruby-identifier">mem_active</span> = ((<span class="ruby-identifier">numeric_string</span>.<span class="ruby-identifier">numeric_values</span>()[<span class="ruby-value">:float</span>] <span class="ruby-operator">||</span> <span class="ruby-value">0.0</span>) <span class="ruby-operator">*</span> (<span class="ruby-value">1024</span><span class="ruby-operator">**</span><span class="ruby-value">2</span>)).<span class="ruby-identifier">to_i</span>
|
|
<span class="ruby-keyword">when</span> <span class="ruby-regexp">/inactive/</span>
|
|
<span class="ruby-identifier">mem_inactive</span> = ((<span class="ruby-identifier">numeric_string</span>.<span class="ruby-identifier">numeric_values</span>()[<span class="ruby-value">:float</span>] <span class="ruby-operator">||</span> <span class="ruby-value">0.0</span>) <span class="ruby-operator">*</span> (<span class="ruby-value">1024</span><span class="ruby-operator">**</span><span class="ruby-value">2</span>)).<span class="ruby-identifier">to_i</span>
|
|
<span class="ruby-keyword">when</span> <span class="ruby-regexp">/free/</span>
|
|
<span class="ruby-identifier">mem_free</span> = ((<span class="ruby-identifier">numeric_string</span>.<span class="ruby-identifier">numeric_values</span>()[<span class="ruby-value">:float</span>] <span class="ruby-operator">||</span> <span class="ruby-value">0.0</span>) <span class="ruby-operator">*</span> (<span class="ruby-value">1024</span><span class="ruby-operator">**</span><span class="ruby-value">2</span>)).<span class="ruby-identifier">to_i</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">break</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">else</span>
|
|
<span class="ruby-comment"># default BSD behavior ??? Seems like everyone does their own special thing.</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-comment">#</span>
|
|
<span class="ruby-identifier">chip_size</span> = <span class="ruby-value">1</span>
|
|
<span class="ruby-identifier">chip_guess</span> = ((<span class="ruby-identifier">mem_phys</span> <span class="ruby-operator">/</span> <span class="ruby-value">8</span>) <span class="ruby-operator">-</span> <span class="ruby-value">1</span>)
|
|
<span class="ruby-keyword">while</span> (<span class="ruby-identifier">chip_guess</span> <span class="ruby-operator">!=</span> <span class="ruby-value">0</span>)
|
|
<span class="ruby-identifier">chip_guess</span> <span class="ruby-operator">>>=</span> <span class="ruby-value">1</span>
|
|
<span class="ruby-identifier">chip_size</span> <span class="ruby-operator"><<=</span> <span class="ruby-value">1</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-identifier">mem_hw</span> = (((<span class="ruby-identifier">mem_phys</span> <span class="ruby-operator">/</span> <span class="ruby-identifier">chip_size</span>).<span class="ruby-identifier">to_i</span> <span class="ruby-operator">+</span> <span class="ruby-value">1</span>) <span class="ruby-operator">*</span> <span class="ruby-identifier">chip_size</span>)
|
|
<span class="ruby-comment">#</span>
|
|
<span class="ruby-identifier">mem_gap_vm</span> = (<span class="ruby-identifier">mem_all</span> <span class="ruby-operator">-</span> (<span class="ruby-identifier">mem_wire</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">mem_active</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">mem_inactive</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">mem_cache</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">mem_free</span>))
|
|
<span class="ruby-identifier">mem_gap_sys</span> = (<span class="ruby-identifier">mem_phys</span> <span class="ruby-operator">-</span> <span class="ruby-identifier">mem_all</span>)
|
|
<span class="ruby-identifier">mem_gap_hw</span> = (<span class="ruby-identifier">mem_hw</span> <span class="ruby-operator">-</span> <span class="ruby-identifier">mem_phys</span>)
|
|
<span class="ruby-comment">#</span>
|
|
<span class="ruby-identifier">mem_available</span> = (<span class="ruby-identifier">mem_inactive</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">mem_cache</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">mem_free</span>)
|
|
<span class="ruby-identifier">mem_used</span> = (<span class="ruby-identifier">mem_hw</span> <span class="ruby-operator">-</span> <span class="ruby-identifier">mem_available</span>)
|
|
<span class="ruby-comment"># format result:</span>
|
|
<span class="ruby-identifier">result</span>[<span class="ruby-value">:actual</span>] = {<span class="ruby-value">:total</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">mem_hw</span>, <span class="ruby-value">:used</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">mem_used</span>, <span class="ruby-value">:free</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">mem_available</span>, <span class="ruby-value">:shared</span> <span class="ruby-operator">=></span> <span class="ruby-value">0</span>, <span class="ruby-value">:buffers</span> <span class="ruby-operator">=></span> <span class="ruby-value">0</span>, <span class="ruby-value">:cached</span> <span class="ruby-operator">=></span> <span class="ruby-value">0</span>}
|
|
<span class="ruby-identifier">result</span>[<span class="ruby-value">:buffers</span>] = {<span class="ruby-value">:used</span> <span class="ruby-operator">=></span> <span class="ruby-value">0</span>, <span class="ruby-value">:free</span> <span class="ruby-operator">=></span> <span class="ruby-value">0</span>}
|
|
<span class="ruby-identifier">result</span>[<span class="ruby-value">:virtual</span>] = {<span class="ruby-value">:total</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">mem_vm_total</span>, <span class="ruby-value">:used</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">mem_vm_used</span>, <span class="ruby-value">:free</span> <span class="ruby-operator">=></span> (<span class="ruby-identifier">mem_vm_total</span> <span class="ruby-operator">-</span> <span class="ruby-identifier">mem_vm_used</span>)}
|
|
<span class="ruby-comment">#</span>
|
|
<span class="ruby-keyword">when</span> <span class="ruby-value">:linux</span>, <span class="ruby-value">:solaris</span>
|
|
<span class="ruby-comment"># total used free shared buffers cached</span>
|
|
<span class="ruby-identifier">raw_text</span> = <span class="ruby-string">`free -b`</span>
|
|
<span class="ruby-identifier">raw_text</span>.<span class="ruby-identifier">to_enum</span>(<span class="ruby-value">:each_line</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">text_line</span><span class="ruby-operator">|</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">text_line</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-string">"Mem:"</span>)
|
|
<span class="ruby-identifier">stats</span> = <span class="ruby-identifier">text_line</span>.<span class="ruby-identifier">split</span>(<span class="ruby-string">" "</span>)
|
|
<span class="ruby-identifier">result</span>[<span class="ruby-value">:actual</span>] = {<span class="ruby-value">:total</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">stats</span>[<span class="ruby-value">1</span>].<span class="ruby-identifier">to_i</span>, <span class="ruby-value">:used</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">stats</span>[<span class="ruby-value">2</span>].<span class="ruby-identifier">to_i</span>, <span class="ruby-value">:free</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">stats</span>[<span class="ruby-value">3</span>].<span class="ruby-identifier">to_i</span>, <span class="ruby-value">:shared</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">stats</span>[<span class="ruby-value">4</span>].<span class="ruby-identifier">to_i</span>, <span class="ruby-value">:buffers</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">stats</span>[<span class="ruby-value">5</span>].<span class="ruby-identifier">to_i</span>, <span class="ruby-value">:cached</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">stats</span>[<span class="ruby-value">6</span>].<span class="ruby-identifier">to_i</span>}
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">text_line</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-string">"-/+ buffers/cache:"</span>)
|
|
<span class="ruby-identifier">stats</span> = <span class="ruby-identifier">text_line</span>.<span class="ruby-identifier">split</span>(<span class="ruby-string">" "</span>)
|
|
<span class="ruby-identifier">result</span>[<span class="ruby-value">:buffers</span>] = {<span class="ruby-value">:used</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">stats</span>[<span class="ruby-value">2</span>].<span class="ruby-identifier">to_i</span>, <span class="ruby-value">:free</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">stats</span>[<span class="ruby-value">3</span>].<span class="ruby-identifier">to_i</span>}
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">text_line</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-string">"Swap:"</span>)
|
|
<span class="ruby-identifier">stats</span> = <span class="ruby-identifier">text_line</span>.<span class="ruby-identifier">split</span>(<span class="ruby-string">" "</span>)
|
|
<span class="ruby-identifier">result</span>[<span class="ruby-value">:virtual</span>] = {<span class="ruby-value">:total</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">stats</span>[<span class="ruby-value">1</span>].<span class="ruby-identifier">to_i</span>, <span class="ruby-value">:used</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">stats</span>[<span class="ruby-value">2</span>].<span class="ruby-identifier">to_i</span>, <span class="ruby-value">:free</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">stats</span>[<span class="ruby-value">3</span>].<span class="ruby-identifier">to_i</span>}
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-identifier">result</span>.<span class="ruby-identifier">process!</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">entry</span>,<span class="ruby-identifier">selector</span>,<span class="ruby-identifier">container</span><span class="ruby-operator">|</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">entry</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">String</span>)
|
|
<span class="ruby-identifier">item</span> = <span class="ruby-identifier">entry</span>.<span class="ruby-identifier">numeric_values</span>()
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">item</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Hash</span>)
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">item</span>[<span class="ruby-value">:integer</span>]
|
|
<span class="ruby-identifier">container</span>[(<span class="ruby-identifier">selector</span>)] = <span class="ruby-identifier">item</span>[<span class="ruby-value">:integer</span>].<span class="ruby-identifier">to_i</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">item</span>[<span class="ruby-value">:float</span>]
|
|
<span class="ruby-identifier">container</span>[(<span class="ruby-identifier">selector</span>)] = <span class="ruby-identifier">item</span>[<span class="ruby-value">:float</span>].<span class="ruby-identifier">to_f</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">item</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Array</span>)
|
|
<span class="ruby-identifier">item</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">the_data</span><span class="ruby-operator">|</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_data</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Hash</span>)
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_data</span>[<span class="ruby-value">:integer</span>]
|
|
<span class="ruby-identifier">container</span>[(<span class="ruby-identifier">selector</span>)] = <span class="ruby-identifier">the_data</span>[<span class="ruby-value">:integer</span>].<span class="ruby-identifier">to_i</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_data</span>[<span class="ruby-value">:float</span>]
|
|
<span class="ruby-identifier">container</span>[(<span class="ruby-identifier">selector</span>)] = <span class="ruby-identifier">the_data</span>[<span class="ruby-value">:float</span>].<span class="ruby-identifier">to_f</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_data</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Array</span>)
|
|
<span class="ruby-identifier">data</span> = <span class="ruby-identifier">the_data</span>[<span class="ruby-value">0</span>]
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">data</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Hash</span>)
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">data</span>[<span class="ruby-value">:integer</span>]
|
|
<span class="ruby-identifier">container</span>[(<span class="ruby-identifier">selector</span>)] = <span class="ruby-identifier">data</span>[<span class="ruby-value">:integer</span>].<span class="ruby-identifier">to_i</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">data</span>[<span class="ruby-value">:float</span>]
|
|
<span class="ruby-identifier">container</span>[(<span class="ruby-identifier">selector</span>)] = <span class="ruby-identifier">data</span>[<span class="ruby-value">:float</span>].<span class="ruby-identifier">to_f</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">break</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">nil</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-identifier">result</span>[<span class="ruby-value">:total</span>] = {<span class="ruby-value">:total</span> <span class="ruby-operator">=></span> (<span class="ruby-identifier">result</span>[<span class="ruby-value">:actual</span>][<span class="ruby-value">:total</span>].<span class="ruby-identifier">to_i</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">result</span>[<span class="ruby-value">:virtual</span>][<span class="ruby-value">:total</span>].<span class="ruby-identifier">to_i</span>), <span class="ruby-value">:used</span> <span class="ruby-operator">=></span> (<span class="ruby-identifier">result</span>[<span class="ruby-value">:actual</span>][<span class="ruby-value">:used</span>].<span class="ruby-identifier">to_i</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">result</span>[<span class="ruby-value">:virtual</span>][<span class="ruby-value">:used</span>].<span class="ruby-identifier">to_i</span>), <span class="ruby-value">:free</span> <span class="ruby-operator">=></span> (<span class="ruby-identifier">result</span>[<span class="ruby-value">:actual</span>][<span class="ruby-value">:free</span>].<span class="ruby-identifier">to_i</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">result</span>[<span class="ruby-value">:virtual</span>][<span class="ruby-value">:free</span>].<span class="ruby-identifier">to_i</span>)}
|
|
<span class="ruby-identifier">result</span>
|
|
<span class="ruby-keyword">end</span></pre>
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
<div id="method-i-memory_limits" class="method-detail ">
|
|
|
|
<div class="method-heading">
|
|
<span class="method-name">memory_limits</span><span
|
|
class="method-args">()</span>
|
|
|
|
<span class="method-click-advice">click to toggle source</span>
|
|
|
|
</div>
|
|
|
|
|
|
<div class="method-description">
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<div class="method-source-code" id="memory_limits-source">
|
|
<pre><span class="ruby-comment"># File lib/gxg/gxg_entities.rb, line 1056</span>
|
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">memory_limits</span>()
|
|
<span class="ruby-comment"># See: http://linux-mm.org/LinuxMM</span>
|
|
<span class="ruby-comment"># http://linux.die.net/man/2/mlock</span>
|
|
<span class="ruby-comment"># https://answers.launchpad.net/graphite/+question/191807</span>
|
|
<span class="ruby-comment">#</span>
|
|
<span class="ruby-ivar">@thread_safety</span>.<span class="ruby-identifier">synchronize</span> {
|
|
<span class="ruby-ivar">@details</span>[<span class="ruby-value">:memory_limits</span>].<span class="ruby-identifier">clone</span>
|
|
}
|
|
<span class="ruby-keyword">end</span></pre>
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
<div id="method-i-network" class="method-detail ">
|
|
|
|
<div class="method-heading">
|
|
<span class="method-name">network</span><span
|
|
class="method-args">()</span>
|
|
|
|
<span class="method-click-advice">click to toggle source</span>
|
|
|
|
</div>
|
|
|
|
|
|
<div class="method-description">
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<div class="method-source-code" id="network-source">
|
|
<pre><span class="ruby-comment"># File lib/gxg/gxg_entities.rb, line 1021</span>
|
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">network</span>()
|
|
<span class="ruby-ivar">@thread_safety</span>.<span class="ruby-identifier">synchronize</span> {
|
|
<span class="ruby-ivar">@details</span>[<span class="ruby-value">:network</span>].<span class="ruby-identifier">clone</span>
|
|
}
|
|
<span class="ruby-keyword">end</span></pre>
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
<div id="method-i-network_next_port" class="method-detail ">
|
|
|
|
<div class="method-heading">
|
|
<span class="method-name">network_next_port</span><span
|
|
class="method-args">(the_address="0.0.0.0", honor_conventions=true)</span>
|
|
|
|
<span class="method-click-advice">click to toggle source</span>
|
|
|
|
</div>
|
|
|
|
|
|
<div class="method-description">
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<div class="method-source-code" id="network_next_port-source">
|
|
<pre><span class="ruby-comment"># File lib/gxg/gxg_entities.rb, line 1591</span>
|
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">network_next_port</span>(<span class="ruby-identifier">the_address</span>=<span class="ruby-string">"0.0.0.0"</span>, <span class="ruby-identifier">honor_conventions</span>=<span class="ruby-keyword">true</span>)
|
|
<span class="ruby-comment"># finds next available port on given interface, by default respecting common port usage conventions.</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_address</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Addrinfo</span>)
|
|
<span class="ruby-identifier">the_address</span> = <span class="ruby-identifier">the_address</span>.<span class="ruby-identifier">ip_address</span>()
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_address</span> <span class="ruby-operator">==</span> <span class="ruby-string">"*"</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">the_address</span> <span class="ruby-operator">==</span> <span class="ruby-keyword">nil</span>
|
|
<span class="ruby-identifier">the_address</span> = <span class="ruby-string">"0.0.0.0"</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">the_address</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">String</span>)
|
|
<span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-node">"address needs to be specified as a String, you provided #{the_address.class}"</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-comment">#</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">honor_conventions</span>
|
|
<span class="ruby-identifier">commonly_available</span> = (<span class="ruby-value">49152</span><span class="ruby-operator">..</span><span class="ruby-value">65535</span>)
|
|
<span class="ruby-keyword">else</span>
|
|
<span class="ruby-identifier">commonly_available</span> = (<span class="ruby-value">1</span><span class="ruby-operator">..</span><span class="ruby-value">65535</span>)
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-comment">#</span>
|
|
<span class="ruby-identifier">found</span> = <span class="ruby-keyword">nil</span>
|
|
<span class="ruby-identifier">currently_used_ports</span> = []
|
|
<span class="ruby-identifier">current</span> = <span class="ruby-keyword">self</span>.<span class="ruby-identifier">network_status</span>()
|
|
<span class="ruby-identifier">current</span>[<span class="ruby-value">:internet</span>].<span class="ruby-identifier">to_enum</span>(<span class="ruby-value">:each</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">entry</span><span class="ruby-operator">|</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">entry</span>[<span class="ruby-value">:local_address</span>].<span class="ruby-identifier">ip_address</span>() <span class="ruby-operator">==</span> <span class="ruby-identifier">the_address</span>
|
|
<span class="ruby-identifier">currently_used_ports</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">entry</span>[<span class="ruby-value">:local_address</span>].<span class="ruby-identifier">ip_port</span>()
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">entry</span>[<span class="ruby-value">:foreign_address</span>].<span class="ruby-identifier">ip_address</span>() <span class="ruby-operator">==</span> <span class="ruby-identifier">the_address</span>
|
|
<span class="ruby-identifier">currently_used_ports</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">entry</span>[<span class="ruby-value">:foreign_address</span>].<span class="ruby-identifier">ip_port</span>()
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-comment">#</span>
|
|
<span class="ruby-identifier">commonly_available</span>.<span class="ruby-identifier">to_enum</span>(<span class="ruby-value">:each</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">the_port</span><span class="ruby-operator">|</span>
|
|
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">currently_used_ports</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">the_port</span>)
|
|
<span class="ruby-identifier">found</span> = <span class="ruby-identifier">the_port</span>
|
|
<span class="ruby-keyword">break</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-comment">#</span>
|
|
<span class="ruby-identifier">found</span>
|
|
<span class="ruby-keyword">end</span></pre>
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
<div id="method-i-network_port_used-3F" class="method-detail ">
|
|
|
|
<div class="method-heading">
|
|
<span class="method-name">network_port_used?</span><span
|
|
class="method-args">(the_port=0, the_address="0.0.0.0")</span>
|
|
|
|
<span class="method-click-advice">click to toggle source</span>
|
|
|
|
</div>
|
|
|
|
|
|
<div class="method-description">
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<div class="method-source-code" id="network_port_used-3F-source">
|
|
<pre><span class="ruby-comment"># File lib/gxg/gxg_entities.rb, line 1546</span>
|
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">network_port_used?</span>(<span class="ruby-identifier">the_port</span>=<span class="ruby-value">0</span>, <span class="ruby-identifier">the_address</span>=<span class="ruby-string">"0.0.0.0"</span>)
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_port</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Addrinfo</span>)
|
|
<span class="ruby-identifier">the_address</span> = <span class="ruby-identifier">the_port</span>.<span class="ruby-identifier">ip_address</span>()
|
|
<span class="ruby-identifier">the_port</span> = <span class="ruby-identifier">the_port</span>.<span class="ruby-identifier">ip_port</span>()
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_address</span> <span class="ruby-operator">==</span> <span class="ruby-string">"*"</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">the_address</span> <span class="ruby-operator">==</span> <span class="ruby-keyword">nil</span>
|
|
<span class="ruby-identifier">the_address</span> = <span class="ruby-string">"0.0.0.0"</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">the_address</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">String</span>)
|
|
<span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-node">"address needs to be specified as a String, you provided #{the_address.class}"</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_port</span> <span class="ruby-operator">==</span> <span class="ruby-string">"*"</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">the_port</span> <span class="ruby-operator">==</span> <span class="ruby-keyword">nil</span>
|
|
<span class="ruby-identifier">the_port</span> = <span class="ruby-value">0</span>
|
|
<span class="ruby-keyword">else</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_port</span>.<span class="ruby-identifier">is_any?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">String</span>, <span class="ruby-operator">::</span><span class="ruby-constant">Numeric</span>)
|
|
<span class="ruby-identifier">the_port</span> = <span class="ruby-identifier">the_port</span>.<span class="ruby-identifier">to_i</span>
|
|
<span class="ruby-keyword">else</span>
|
|
<span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-node">"port needs to be specified by an Integer or a String of an Integer or asterisk character, you provided #{the_port.class}"</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-identifier">current</span> = {<span class="ruby-value">:internet</span> <span class="ruby-operator">=></span> [], <span class="ruby-value">:local</span> <span class="ruby-operator">=></span> []}
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_port</span> <span class="ruby-operator">==</span> <span class="ruby-value">0</span>
|
|
<span class="ruby-identifier">found</span> = <span class="ruby-keyword">true</span>
|
|
<span class="ruby-keyword">else</span>
|
|
<span class="ruby-identifier">found</span> = <span class="ruby-keyword">false</span>
|
|
<span class="ruby-identifier">current</span> = <span class="ruby-keyword">self</span>.<span class="ruby-identifier">network_status</span>()
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-comment">#</span>
|
|
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">found</span>
|
|
<span class="ruby-identifier">current</span>[<span class="ruby-value">:internet</span>].<span class="ruby-identifier">to_enum</span>(<span class="ruby-value">:each</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">entry</span><span class="ruby-operator">|</span>
|
|
<span class="ruby-keyword">if</span> ((<span class="ruby-identifier">entry</span>[<span class="ruby-value">:local_address</span>].<span class="ruby-identifier">ip_address</span>() <span class="ruby-operator">==</span> <span class="ruby-identifier">the_address</span> <span class="ruby-operator">&&</span> <span class="ruby-identifier">entry</span>[<span class="ruby-value">:local_address</span>].<span class="ruby-identifier">ip_port</span>() <span class="ruby-operator">==</span> <span class="ruby-identifier">the_port</span>) <span class="ruby-operator">||</span> (<span class="ruby-identifier">entry</span>[<span class="ruby-value">:foreign_address</span>].<span class="ruby-identifier">ip_address</span>() <span class="ruby-operator">==</span> <span class="ruby-identifier">the_address</span> <span class="ruby-operator">&&</span> <span class="ruby-identifier">entry</span>[<span class="ruby-value">:foreign_address</span>].<span class="ruby-identifier">ip_port</span>() <span class="ruby-operator">==</span> <span class="ruby-identifier">the_port</span>))
|
|
<span class="ruby-identifier">found</span> = <span class="ruby-keyword">true</span>
|
|
<span class="ruby-keyword">break</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">found</span>
|
|
<span class="ruby-identifier">current</span>[<span class="ruby-value">:local</span>].<span class="ruby-identifier">to_enum</span>(<span class="ruby-value">:each</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">entry</span><span class="ruby-operator">|</span>
|
|
<span class="ruby-comment"># pending further Research and hefty work-arounds within self.network_status().</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-comment">#</span>
|
|
<span class="ruby-identifier">found</span>
|
|
<span class="ruby-keyword">end</span></pre>
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
<div id="method-i-network_status" class="method-detail ">
|
|
|
|
<div class="method-heading">
|
|
<span class="method-name">network_status</span><span
|
|
class="method-args">()</span>
|
|
|
|
<span class="method-click-advice">click to toggle source</span>
|
|
|
|
</div>
|
|
|
|
|
|
<div class="method-description">
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<div class="method-source-code" id="network_status-source">
|
|
<pre><span class="ruby-comment"># File lib/gxg/gxg_entities.rb, line 1328</span>
|
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">network_status</span>()
|
|
<span class="ruby-comment"># LATER: find out how to get the PID for AF_UNIX output of bsd-netstat -f unix</span>
|
|
<span class="ruby-comment"># goal: lsof given a path, find the PID associated</span>
|
|
<span class="ruby-comment"># lsof -Rt -t path (have to have read permissions)</span>
|
|
<span class="ruby-comment"># OK, I give up (F-U bsd guys for not having a PID field in netstat unix output :P )</span>
|
|
<span class="ruby-comment"># no unix socket info until I can figure a hooley-hoop set to jump through on this -- F'n Dorks!</span>
|
|
<span class="ruby-identifier">data</span> = []
|
|
<span class="ruby-identifier">local_data</span> = []
|
|
<span class="ruby-keyword">case</span> <span class="ruby-operator">::</span><span class="ruby-constant">GxG</span><span class="ruby-operator">::</span><span class="ruby-constant">SYSTEM</span>.<span class="ruby-identifier">platform</span>()[<span class="ruby-value">:platform</span>]
|
|
<span class="ruby-keyword">when</span> <span class="ruby-value">:bsd</span>
|
|
<span class="ruby-identifier">predata</span> = []
|
|
<span class="ruby-identifier">raw_data</span> = <span class="ruby-string">`netstat -an`</span>
|
|
<span class="ruby-identifier">raw_data</span>.<span class="ruby-identifier">to_enum</span>(<span class="ruby-value">:each_line</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">the_line</span><span class="ruby-operator">|</span>
|
|
[<span class="ruby-string">"tcp4 "</span>, <span class="ruby-string">"tcp6 "</span>, <span class="ruby-string">"udp4 "</span>, <span class="ruby-string">"udp6 "</span>].<span class="ruby-identifier">to_enum</span>(<span class="ruby-value">:each</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">entry</span><span class="ruby-operator">|</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_line</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">entry</span>)
|
|
<span class="ruby-identifier">predata</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">the_line</span>.<span class="ruby-identifier">split</span>(<span class="ruby-string">" "</span>)
|
|
<span class="ruby-keyword">break</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-comment">#</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-identifier">predata</span>.<span class="ruby-identifier">to_enum</span>(<span class="ruby-value">:each</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">the_entry</span><span class="ruby-operator">|</span>
|
|
<span class="ruby-identifier">new_entry</span> = {}
|
|
<span class="ruby-identifier">addressing</span> = <span class="ruby-keyword">nil</span>
|
|
<span class="ruby-keyword">case</span> <span class="ruby-identifier">the_entry</span>[<span class="ruby-value">0</span>].<span class="ruby-identifier">downcase</span>
|
|
<span class="ruby-keyword">when</span> <span class="ruby-string">"tcp4"</span>, <span class="ruby-string">"tcp"</span>
|
|
<span class="ruby-identifier">addressing</span> = {<span class="ruby-value">:family</span> <span class="ruby-operator">=></span> <span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">AF_INET</span>, <span class="ruby-value">:protocol</span> <span class="ruby-operator">=></span> <span class="ruby-value">:tcp</span>}
|
|
<span class="ruby-keyword">when</span> <span class="ruby-string">"tcp6"</span>
|
|
<span class="ruby-identifier">addressing</span> = {<span class="ruby-value">:family</span> <span class="ruby-operator">=></span> <span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">AF_INET6</span>, <span class="ruby-value">:protocol</span> <span class="ruby-operator">=></span> <span class="ruby-value">:tcp6</span>}
|
|
<span class="ruby-keyword">when</span> <span class="ruby-string">"udp4"</span>, <span class="ruby-string">"udp"</span>
|
|
<span class="ruby-identifier">addressing</span> = {<span class="ruby-value">:family</span> <span class="ruby-operator">=></span> <span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">AF_INET</span>, <span class="ruby-value">:protocol</span> <span class="ruby-operator">=></span> <span class="ruby-value">:udp</span>}
|
|
<span class="ruby-keyword">when</span> <span class="ruby-string">"udp6"</span>
|
|
<span class="ruby-identifier">addressing</span> = {<span class="ruby-value">:family</span> <span class="ruby-operator">=></span> <span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">AF_INET6</span>, <span class="ruby-value">:protocol</span> <span class="ruby-operator">=></span> <span class="ruby-value">:udp6</span>}
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">addressing</span>
|
|
<span class="ruby-identifier">new_entry</span>[<span class="ruby-value">:protocol</span>] = <span class="ruby-identifier">addressing</span>[<span class="ruby-value">:protocol</span>]
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">addressing</span>[<span class="ruby-value">:family</span>] <span class="ruby-operator">==</span> <span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">AF_INET6</span>
|
|
<span class="ruby-identifier">chunks</span> = <span class="ruby-identifier">the_entry</span>[<span class="ruby-value">3</span>].<span class="ruby-identifier">split</span>(<span class="ruby-string">"."</span>)
|
|
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">chunks</span>[<span class="ruby-value">1</span>] <span class="ruby-operator">==</span> <span class="ruby-string">"*"</span>
|
|
<span class="ruby-identifier">chunks</span>[<span class="ruby-value">1</span>] = <span class="ruby-identifier">chunks</span>[<span class="ruby-value">1</span>].<span class="ruby-identifier">to_i</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">else</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_entry</span>[<span class="ruby-value">3</span>].<span class="ruby-identifier">include?</span>(<span class="ruby-string">"*"</span>)
|
|
<span class="ruby-identifier">chunks</span> = <span class="ruby-identifier">the_entry</span>[<span class="ruby-value">3</span>].<span class="ruby-identifier">split</span>(<span class="ruby-string">"."</span>)
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">chunks</span>[<span class="ruby-value">0</span>] <span class="ruby-operator">==</span> <span class="ruby-string">"*"</span>
|
|
<span class="ruby-identifier">chunks</span> = [<span class="ruby-string">"0.0.0.0"</span>,(<span class="ruby-identifier">the_entry</span>[<span class="ruby-value">3</span>].<span class="ruby-identifier">split</span>(<span class="ruby-string">"."</span>).<span class="ruby-identifier">last</span>)]
|
|
<span class="ruby-keyword">else</span>
|
|
<span class="ruby-identifier">chunks</span> = [(<span class="ruby-identifier">the_entry</span>[<span class="ruby-value">3</span>].<span class="ruby-identifier">split</span>(<span class="ruby-string">"."</span>)[<span class="ruby-value">0</span><span class="ruby-operator">..</span><span class="ruby-value">3</span>].<span class="ruby-identifier">join</span>(<span class="ruby-string">"."</span>)),(<span class="ruby-identifier">the_entry</span>[<span class="ruby-value">3</span>].<span class="ruby-identifier">split</span>(<span class="ruby-string">"."</span>)[<span class="ruby-value">4</span>])]
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">chunks</span>[<span class="ruby-value">1</span>] <span class="ruby-operator">==</span> <span class="ruby-string">"*"</span>
|
|
<span class="ruby-identifier">chunks</span>[<span class="ruby-value">1</span>] = <span class="ruby-identifier">chunks</span>[<span class="ruby-value">1</span>].<span class="ruby-identifier">to_i</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">else</span>
|
|
<span class="ruby-identifier">chunks</span> = [(<span class="ruby-identifier">the_entry</span>[<span class="ruby-value">3</span>].<span class="ruby-identifier">split</span>(<span class="ruby-string">"."</span>)[<span class="ruby-value">0</span><span class="ruby-operator">..</span><span class="ruby-value">3</span>].<span class="ruby-identifier">join</span>(<span class="ruby-string">"."</span>)),(<span class="ruby-identifier">the_entry</span>[<span class="ruby-value">3</span>].<span class="ruby-identifier">split</span>(<span class="ruby-string">"."</span>)[<span class="ruby-value">4</span>].<span class="ruby-identifier">to_i</span>)]
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-comment"># bug fix:</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">chunks</span>[<span class="ruby-value">1</span>] <span class="ruby-operator">==</span> <span class="ruby-string">"*"</span>
|
|
<span class="ruby-identifier">chunks</span>[<span class="ruby-value">1</span>] = <span class="ruby-value">0</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-comment"># ##</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">addressing</span>[<span class="ruby-value">:protocol</span>] <span class="ruby-operator">==</span> <span class="ruby-value">:udp</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">addressing</span>[<span class="ruby-value">:protocol</span>] <span class="ruby-operator">==</span> <span class="ruby-value">:udp6</span>
|
|
<span class="ruby-identifier">new_entry</span>[<span class="ruby-value">:local_address</span>] = <span class="ruby-constant">Addrinfo</span>.<span class="ruby-identifier">udp</span>(<span class="ruby-identifier">chunks</span>[<span class="ruby-value">0</span>],<span class="ruby-identifier">chunks</span>[<span class="ruby-value">1</span>])
|
|
<span class="ruby-keyword">else</span>
|
|
<span class="ruby-identifier">new_entry</span>[<span class="ruby-value">:local_address</span>] = <span class="ruby-constant">Addrinfo</span>.<span class="ruby-identifier">tcp</span>(<span class="ruby-identifier">chunks</span>[<span class="ruby-value">0</span>],<span class="ruby-identifier">chunks</span>[<span class="ruby-value">1</span>])
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-comment">#</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">addressing</span>[<span class="ruby-value">:family</span>] <span class="ruby-operator">==</span> <span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">AF_INET6</span>
|
|
<span class="ruby-identifier">chunks</span> = <span class="ruby-identifier">the_entry</span>[<span class="ruby-value">4</span>].<span class="ruby-identifier">split</span>(<span class="ruby-string">"."</span>)
|
|
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">chunks</span>[<span class="ruby-value">1</span>] <span class="ruby-operator">==</span> <span class="ruby-string">"*"</span>
|
|
<span class="ruby-identifier">chunks</span>[<span class="ruby-value">1</span>] = <span class="ruby-identifier">chunks</span>[<span class="ruby-value">1</span>].<span class="ruby-identifier">to_i</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">else</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_entry</span>[<span class="ruby-value">4</span>].<span class="ruby-identifier">include?</span>(<span class="ruby-string">"*"</span>)
|
|
<span class="ruby-identifier">chunks</span> = <span class="ruby-identifier">the_entry</span>[<span class="ruby-value">4</span>].<span class="ruby-identifier">split</span>(<span class="ruby-string">"."</span>)
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">chunks</span>[<span class="ruby-value">0</span>] <span class="ruby-operator">==</span> <span class="ruby-string">"*"</span>
|
|
<span class="ruby-identifier">chunks</span> = [<span class="ruby-string">"0.0.0.0"</span>,(<span class="ruby-identifier">the_entry</span>[<span class="ruby-value">4</span>].<span class="ruby-identifier">split</span>(<span class="ruby-string">"."</span>).<span class="ruby-identifier">last</span>)]
|
|
<span class="ruby-keyword">else</span>
|
|
<span class="ruby-identifier">chunks</span> = [(<span class="ruby-identifier">the_entry</span>[<span class="ruby-value">4</span>].<span class="ruby-identifier">split</span>(<span class="ruby-string">"."</span>)[<span class="ruby-value">0</span><span class="ruby-operator">..</span><span class="ruby-value">3</span>].<span class="ruby-identifier">join</span>(<span class="ruby-string">"."</span>)),(<span class="ruby-identifier">the_entry</span>[<span class="ruby-value">4</span>].<span class="ruby-identifier">split</span>(<span class="ruby-string">"."</span>)[<span class="ruby-value">4</span>])]
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">chunks</span>[<span class="ruby-value">1</span>] <span class="ruby-operator">==</span> <span class="ruby-string">"*"</span>
|
|
<span class="ruby-identifier">chunks</span>[<span class="ruby-value">1</span>] = <span class="ruby-identifier">chunks</span>[<span class="ruby-value">1</span>].<span class="ruby-identifier">to_i</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">else</span>
|
|
<span class="ruby-identifier">chunks</span> = [(<span class="ruby-identifier">the_entry</span>[<span class="ruby-value">4</span>].<span class="ruby-identifier">split</span>(<span class="ruby-string">"."</span>)[<span class="ruby-value">0</span><span class="ruby-operator">..</span><span class="ruby-value">3</span>].<span class="ruby-identifier">join</span>(<span class="ruby-string">"."</span>)),(<span class="ruby-identifier">the_entry</span>[<span class="ruby-value">4</span>].<span class="ruby-identifier">split</span>(<span class="ruby-string">"."</span>)[<span class="ruby-value">4</span>].<span class="ruby-identifier">to_i</span>)]
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-comment"># bug fix:</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">chunks</span>[<span class="ruby-value">1</span>] <span class="ruby-operator">==</span> <span class="ruby-string">"*"</span>
|
|
<span class="ruby-identifier">chunks</span>[<span class="ruby-value">1</span>] = <span class="ruby-value">0</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-comment"># ##</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">addressing</span>[<span class="ruby-value">:protocol</span>] <span class="ruby-operator">==</span> <span class="ruby-value">:udp</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">addressing</span>[<span class="ruby-value">:protocol</span>] <span class="ruby-operator">==</span> <span class="ruby-value">:udp6</span>
|
|
<span class="ruby-identifier">new_entry</span>[<span class="ruby-value">:foreign_address</span>] = <span class="ruby-constant">Addrinfo</span>.<span class="ruby-identifier">udp</span>(<span class="ruby-identifier">chunks</span>[<span class="ruby-value">0</span>],<span class="ruby-identifier">chunks</span>[<span class="ruby-value">1</span>])
|
|
<span class="ruby-keyword">else</span>
|
|
<span class="ruby-identifier">new_entry</span>[<span class="ruby-value">:foreign_address</span>] = <span class="ruby-constant">Addrinfo</span>.<span class="ruby-identifier">tcp</span>(<span class="ruby-identifier">chunks</span>[<span class="ruby-value">0</span>],<span class="ruby-identifier">chunks</span>[<span class="ruby-value">1</span>])
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-comment">#</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_entry</span>[<span class="ruby-value">5</span>].<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">size</span> <span class="ruby-operator">></span> <span class="ruby-value">0</span>
|
|
<span class="ruby-identifier">new_entry</span>[<span class="ruby-value">:status</span>] = <span class="ruby-identifier">the_entry</span>[<span class="ruby-value">5</span>].<span class="ruby-identifier">to_sym</span>
|
|
<span class="ruby-keyword">else</span>
|
|
<span class="ruby-identifier">new_entry</span>[<span class="ruby-value">:status</span>] = <span class="ruby-keyword">nil</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-comment">#</span>
|
|
<span class="ruby-identifier">data</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">new_entry</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-comment">#</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">when</span> <span class="ruby-value">:linux</span>
|
|
<span class="ruby-identifier">predata</span> = []
|
|
<span class="ruby-identifier">raw_data</span> = <span class="ruby-string">`netstat -an`</span>
|
|
<span class="ruby-identifier">raw_data</span>.<span class="ruby-identifier">to_enum</span>(<span class="ruby-value">:each_line</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">the_line</span><span class="ruby-operator">|</span>
|
|
[<span class="ruby-string">"tcp "</span>, <span class="ruby-string">"tcp6 "</span>, <span class="ruby-string">"udp "</span>, <span class="ruby-string">"udp6 "</span>].<span class="ruby-identifier">to_enum</span>(<span class="ruby-value">:each</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">entry</span><span class="ruby-operator">|</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_line</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">entry</span>)
|
|
<span class="ruby-identifier">predata</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">the_line</span>.<span class="ruby-identifier">split</span>(<span class="ruby-string">" "</span>)
|
|
<span class="ruby-keyword">break</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-comment">#</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-identifier">predata</span>.<span class="ruby-identifier">to_enum</span>(<span class="ruby-value">:each</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">the_entry</span><span class="ruby-operator">|</span>
|
|
<span class="ruby-identifier">the_error</span> = <span class="ruby-keyword">nil</span>
|
|
<span class="ruby-identifier">new_entry</span> = {}
|
|
<span class="ruby-identifier">addressing</span> = <span class="ruby-keyword">nil</span>
|
|
<span class="ruby-keyword">case</span> <span class="ruby-identifier">the_entry</span>[<span class="ruby-value">0</span>].<span class="ruby-identifier">downcase</span>
|
|
<span class="ruby-keyword">when</span> <span class="ruby-string">"tcp"</span>
|
|
<span class="ruby-identifier">addressing</span> = {<span class="ruby-value">:family</span> <span class="ruby-operator">=></span> <span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">AF_INET</span>, <span class="ruby-value">:protocol</span> <span class="ruby-operator">=></span> <span class="ruby-value">:tcp</span>}
|
|
<span class="ruby-keyword">when</span> <span class="ruby-string">"tcp6"</span>
|
|
<span class="ruby-identifier">addressing</span> = {<span class="ruby-value">:family</span> <span class="ruby-operator">=></span> <span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">AF_INET6</span>, <span class="ruby-value">:protocol</span> <span class="ruby-operator">=></span> <span class="ruby-value">:tcp6</span>}
|
|
<span class="ruby-keyword">when</span> <span class="ruby-string">"udp"</span>
|
|
<span class="ruby-identifier">addressing</span> = {<span class="ruby-value">:family</span> <span class="ruby-operator">=></span> <span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">AF_INET</span>, <span class="ruby-value">:protocol</span> <span class="ruby-operator">=></span> <span class="ruby-value">:udp</span>}
|
|
<span class="ruby-keyword">when</span> <span class="ruby-string">"udp6"</span>
|
|
<span class="ruby-identifier">addressing</span> = {<span class="ruby-value">:family</span> <span class="ruby-operator">=></span> <span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">AF_INET6</span>, <span class="ruby-value">:protocol</span> <span class="ruby-operator">=></span> <span class="ruby-value">:udp6</span>}
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">addressing</span>
|
|
<span class="ruby-identifier">new_entry</span>[<span class="ruby-value">:protocol</span>] = <span class="ruby-identifier">addressing</span>[<span class="ruby-value">:protocol</span>]
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">addressing</span>[<span class="ruby-value">:family</span>] <span class="ruby-operator">==</span> <span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">AF_INET6</span>
|
|
<span class="ruby-identifier">chunks</span> = <span class="ruby-identifier">the_entry</span>[<span class="ruby-value">3</span>].<span class="ruby-identifier">split</span>(<span class="ruby-string">":"</span>)
|
|
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">chunks</span>[<span class="ruby-value">-1</span>] <span class="ruby-operator">==</span> <span class="ruby-string">"*"</span>
|
|
<span class="ruby-identifier">chunks</span>[<span class="ruby-value">-1</span>] = <span class="ruby-identifier">chunks</span>[<span class="ruby-value">-1</span>].<span class="ruby-identifier">to_i</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-identifier">chunks</span> = [(<span class="ruby-identifier">chunks</span>[<span class="ruby-value">0</span><span class="ruby-operator">..</span><span class="ruby-value">-2</span>]).<span class="ruby-identifier">join</span>(<span class="ruby-string">":"</span>),(<span class="ruby-identifier">chunks</span>.<span class="ruby-identifier">last</span>)]
|
|
<span class="ruby-keyword">else</span>
|
|
<span class="ruby-comment"># Odd bug work-around</span>
|
|
<span class="ruby-identifier">addr</span> = <span class="ruby-identifier">the_entry</span>[<span class="ruby-value">3</span>].<span class="ruby-identifier">split</span>(<span class="ruby-string">":"</span>)[<span class="ruby-value">0</span>]
|
|
<span class="ruby-identifier">port</span> = <span class="ruby-identifier">the_entry</span>[<span class="ruby-value">3</span>].<span class="ruby-identifier">split</span>(<span class="ruby-string">":"</span>)[<span class="ruby-value">1</span>]
|
|
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">port</span> <span class="ruby-operator">==</span> <span class="ruby-string">"*"</span>
|
|
<span class="ruby-identifier">port</span> = <span class="ruby-identifier">port</span>.<span class="ruby-identifier">to_i</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-identifier">chunks</span> = [(<span class="ruby-identifier">addr</span>.<span class="ruby-identifier">split</span>(<span class="ruby-string">":"</span>)[<span class="ruby-value">0</span>]),(<span class="ruby-identifier">port</span>)]
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-comment"># bug fix:</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">chunks</span>[<span class="ruby-value">1</span>] <span class="ruby-operator">==</span> <span class="ruby-string">"*"</span>
|
|
<span class="ruby-identifier">chunks</span>[<span class="ruby-value">1</span>] = <span class="ruby-value">0</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-comment">#</span>
|
|
<span class="ruby-keyword">begin</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">addressing</span>[<span class="ruby-value">:protocol</span>] <span class="ruby-operator">==</span> <span class="ruby-value">:udp</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">addressing</span>[<span class="ruby-value">:protocol</span>] <span class="ruby-operator">==</span> <span class="ruby-value">:udp6</span>
|
|
<span class="ruby-identifier">new_entry</span>[<span class="ruby-value">:local_address</span>] = <span class="ruby-constant">Addrinfo</span>.<span class="ruby-identifier">udp</span>(<span class="ruby-identifier">chunks</span>[<span class="ruby-value">0</span>],<span class="ruby-identifier">chunks</span>[<span class="ruby-value">1</span>])
|
|
<span class="ruby-keyword">else</span>
|
|
<span class="ruby-identifier">new_entry</span>[<span class="ruby-value">:local_address</span>] = <span class="ruby-constant">Addrinfo</span>.<span class="ruby-identifier">tcp</span>(<span class="ruby-identifier">chunks</span>[<span class="ruby-value">0</span>],<span class="ruby-identifier">chunks</span>[<span class="ruby-value">1</span>])
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_error</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-comment"># ##</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">addressing</span>[<span class="ruby-value">:family</span>] <span class="ruby-operator">==</span> <span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">AF_INET6</span>
|
|
<span class="ruby-comment"># IPV6</span>
|
|
<span class="ruby-identifier">chunks</span> = <span class="ruby-identifier">the_entry</span>[<span class="ruby-value">4</span>].<span class="ruby-identifier">split</span>(<span class="ruby-string">":"</span>)
|
|
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">chunks</span>[<span class="ruby-value">-1</span>] <span class="ruby-operator">==</span> <span class="ruby-string">"*"</span>
|
|
<span class="ruby-identifier">chunks</span>[<span class="ruby-value">-1</span>] = <span class="ruby-identifier">chunks</span>[<span class="ruby-value">-1</span>].<span class="ruby-identifier">to_i</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-identifier">chunks</span> = [(<span class="ruby-identifier">chunks</span>[<span class="ruby-value">0</span><span class="ruby-operator">..</span><span class="ruby-value">-2</span>]).<span class="ruby-identifier">join</span>(<span class="ruby-string">":"</span>),(<span class="ruby-identifier">chunks</span>.<span class="ruby-identifier">last</span>)]
|
|
<span class="ruby-keyword">else</span>
|
|
<span class="ruby-comment"># IPV4</span>
|
|
<span class="ruby-comment"># Odd bug work-around</span>
|
|
<span class="ruby-identifier">addr</span> = <span class="ruby-identifier">the_entry</span>[<span class="ruby-value">4</span>].<span class="ruby-identifier">split</span>(<span class="ruby-string">":"</span>)[<span class="ruby-value">0</span>]
|
|
<span class="ruby-identifier">port</span> = <span class="ruby-identifier">the_entry</span>[<span class="ruby-value">4</span>].<span class="ruby-identifier">split</span>(<span class="ruby-string">":"</span>)[<span class="ruby-value">1</span>]
|
|
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">port</span> <span class="ruby-operator">==</span> <span class="ruby-string">"*"</span>
|
|
<span class="ruby-identifier">port</span> = <span class="ruby-identifier">port</span>.<span class="ruby-identifier">to_i</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-identifier">chunks</span> = [(<span class="ruby-identifier">addr</span>.<span class="ruby-identifier">split</span>(<span class="ruby-string">":"</span>)[<span class="ruby-value">0</span>]),(<span class="ruby-identifier">port</span>)]
|
|
<span class="ruby-comment"># puts "Got: #{chunks.inspect}"</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-comment"># if chunks[1].is_a?(::String)</span>
|
|
<span class="ruby-comment"># if chunks[1].numeric_values(:integer)</span>
|
|
<span class="ruby-comment"># chunks[1] = chunks[1].numeric_values(:integer)[:integer]</span>
|
|
<span class="ruby-comment"># end</span>
|
|
<span class="ruby-comment"># end</span>
|
|
<span class="ruby-comment"># bug fix:</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">chunks</span>[<span class="ruby-value">1</span>] <span class="ruby-operator">==</span> <span class="ruby-string">"*"</span>
|
|
<span class="ruby-identifier">chunks</span>[<span class="ruby-value">1</span>] = <span class="ruby-value">0</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-comment">#</span>
|
|
<span class="ruby-keyword">begin</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">addressing</span>[<span class="ruby-value">:protocol</span>] <span class="ruby-operator">==</span> <span class="ruby-value">:udp</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">addressing</span>[<span class="ruby-value">:protocol</span>] <span class="ruby-operator">==</span> <span class="ruby-value">:udp6</span>
|
|
<span class="ruby-identifier">new_entry</span>[<span class="ruby-value">:foreign_address</span>] = <span class="ruby-constant">Addrinfo</span>.<span class="ruby-identifier">udp</span>(<span class="ruby-identifier">chunks</span>[<span class="ruby-value">0</span>],<span class="ruby-identifier">chunks</span>[<span class="ruby-value">1</span>])
|
|
<span class="ruby-keyword">else</span>
|
|
<span class="ruby-identifier">new_entry</span>[<span class="ruby-value">:foreign_address</span>] = <span class="ruby-constant">Addrinfo</span>.<span class="ruby-identifier">tcp</span>(<span class="ruby-identifier">chunks</span>[<span class="ruby-value">0</span>],<span class="ruby-identifier">chunks</span>[<span class="ruby-value">1</span>])
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">the_error</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-comment"># ##</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_entry</span>[<span class="ruby-value">5</span>].<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">size</span> <span class="ruby-operator">></span> <span class="ruby-value">0</span>
|
|
<span class="ruby-identifier">new_entry</span>[<span class="ruby-value">:status</span>] = <span class="ruby-identifier">the_entry</span>[<span class="ruby-value">5</span>].<span class="ruby-identifier">to_sym</span>
|
|
<span class="ruby-keyword">else</span>
|
|
<span class="ruby-identifier">new_entry</span>[<span class="ruby-value">:status</span>] = <span class="ruby-keyword">nil</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-comment">#</span>
|
|
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">the_error</span>
|
|
<span class="ruby-identifier">data</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">new_entry</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-comment">#</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
{<span class="ruby-value">:internet</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">data</span>, <span class="ruby-value">:local</span> <span class="ruby-operator">=></span> <span class="ruby-identifier">local_data</span>}
|
|
<span class="ruby-keyword">end</span></pre>
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
<div id="method-i-platform" class="method-detail ">
|
|
|
|
<div class="method-heading">
|
|
<span class="method-name">platform</span><span
|
|
class="method-args">()</span>
|
|
|
|
<span class="method-click-advice">click to toggle source</span>
|
|
|
|
</div>
|
|
|
|
|
|
<div class="method-description">
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<div class="method-source-code" id="platform-source">
|
|
<pre><span class="ruby-comment"># File lib/gxg/gxg_entities.rb, line 1004</span>
|
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">platform</span>()
|
|
<span class="ruby-ivar">@thread_safety</span>.<span class="ruby-identifier">synchronize</span> {
|
|
{<span class="ruby-value">:platform</span> <span class="ruby-operator">=></span> <span class="ruby-ivar">@details</span>[<span class="ruby-value">:platform</span>], <span class="ruby-value">:version</span> <span class="ruby-operator">=></span> <span class="ruby-ivar">@details</span>[<span class="ruby-value">:platform_version</span>], <span class="ruby-value">:configuration</span> <span class="ruby-operator">=></span> <span class="ruby-ivar">@details</span>[<span class="ruby-value">:platform_configuration</span>]}.<span class="ruby-identifier">clone</span>
|
|
}
|
|
<span class="ruby-keyword">end</span></pre>
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
<div id="method-i-processes" class="method-detail ">
|
|
|
|
<div class="method-heading">
|
|
<span class="method-name">processes</span><span
|
|
class="method-args">(params={})</span>
|
|
|
|
<span class="method-click-advice">click to toggle source</span>
|
|
|
|
</div>
|
|
|
|
|
|
<div class="method-description">
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<div class="method-source-code" id="processes-source">
|
|
<pre><span class="ruby-comment"># File lib/gxg/gxg_entities.rb, line 1267</span>
|
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">processes</span>(<span class="ruby-identifier">params</span>={})
|
|
<span class="ruby-identifier">results</span> = []
|
|
<span class="ruby-identifier">columns</span> = [<span class="ruby-value">:cmdline</span>, <span class="ruby-value">:cwd</span>, <span class="ruby-value">:environ</span>, <span class="ruby-value">:exe</span>, <span class="ruby-value">:fd</span>, <span class="ruby-value">:root</span>, <span class="ruby-value">:pid</span>, <span class="ruby-value">:comm</span>, <span class="ruby-value">:state</span>, <span class="ruby-value">:ppid</span>, <span class="ruby-value">:pgrp</span>, <span class="ruby-value">:session</span>, <span class="ruby-value">:tty_nr</span>, <span class="ruby-value">:tpgid</span>,
|
|
<span class="ruby-value">:flags</span>, <span class="ruby-value">:minflt</span>, <span class="ruby-value">:cminflt</span>, <span class="ruby-value">:majflt</span>, <span class="ruby-value">:cmajflt</span>, <span class="ruby-value">:utime</span>, <span class="ruby-value">:stime</span>, <span class="ruby-value">:cutime</span>, <span class="ruby-value">:cstime</span>, <span class="ruby-value">:priority</span>, <span class="ruby-value">:nice</span>, <span class="ruby-value">:itrealvalue</span>, <span class="ruby-value">:starttime</span>,
|
|
<span class="ruby-value">:vsize</span>, <span class="ruby-value">:rss</span>, <span class="ruby-value">:rlim</span>, <span class="ruby-value">:startcode</span>, <span class="ruby-value">:endcode</span>, <span class="ruby-value">:startstack</span>, <span class="ruby-value">:kstkesp</span>, <span class="ruby-value">:kstkeip</span>, <span class="ruby-value">:signal</span>, <span class="ruby-value">:blocked</span>, <span class="ruby-value">:sigignore</span>, <span class="ruby-value">:sigcatch</span>, <span class="ruby-value">:wchan</span>,
|
|
<span class="ruby-value">:nswap</span>, <span class="ruby-value">:cnswap</span>, <span class="ruby-value">:exit_signal</span>, <span class="ruby-value">:processor</span>, <span class="ruby-value">:rt_priority</span>, <span class="ruby-value">:policy</span>, <span class="ruby-value">:name</span>, <span class="ruby-value">:uid</span>, <span class="ruby-value">:euid</span>, <span class="ruby-value">:gid</span>, <span class="ruby-value">:egid</span>, <span class="ruby-value">:pctcpu</span>, <span class="ruby-value">:pctmem</span>]
|
|
<span class="ruby-identifier">include_columns</span> = []
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">params</span>[<span class="ruby-value">:columns</span>].<span class="ruby-identifier">respond_to?</span>(<span class="ruby-value">:each</span>)
|
|
<span class="ruby-identifier">params</span>[<span class="ruby-value">:columns</span>].<span class="ruby-identifier">to_enum</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">entry</span><span class="ruby-operator">|</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">columns</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">entry</span>.<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">to_sym</span>)
|
|
<span class="ruby-identifier">include_columns</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">entry</span>.<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">to_sym</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">else</span>
|
|
<span class="ruby-identifier">include_columns</span> = <span class="ruby-identifier">columns</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-identifier">params</span>.<span class="ruby-identifier">delete</span>(<span class="ruby-value">:columns</span>)
|
|
<span class="ruby-comment">#</span>
|
|
<span class="ruby-identifier">search_for</span> = {}
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">params</span>.<span class="ruby-identifier">respond_to?</span>(<span class="ruby-value">:each_pair</span>)
|
|
<span class="ruby-identifier">params</span>.<span class="ruby-identifier">each_pair</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">key</span>,<span class="ruby-identifier">entry</span><span class="ruby-operator">|</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">columns</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">key</span>.<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">to_sym</span>)
|
|
<span class="ruby-identifier">search_for</span>[(<span class="ruby-identifier">key</span>.<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">to_sym</span>)] = <span class="ruby-identifier">entry</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-comment">#</span>
|
|
<span class="ruby-keyword">if</span> (<span class="ruby-identifier">params</span>[<span class="ruby-value">:pid</span>])
|
|
<span class="ruby-identifier">raw_data</span> = (<span class="ruby-constant">Sys</span><span class="ruby-operator">::</span><span class="ruby-constant">ProcTable</span>.<span class="ruby-identifier">ps</span>(<span class="ruby-identifier">params</span>[<span class="ruby-value">:pid</span>]) <span class="ruby-operator">||</span> [])
|
|
<span class="ruby-keyword">else</span>
|
|
<span class="ruby-identifier">raw_data</span> = (<span class="ruby-constant">Sys</span><span class="ruby-operator">::</span><span class="ruby-constant">ProcTable</span>.<span class="ruby-identifier">ps</span>() <span class="ruby-operator">||</span> [])
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-identifier">raw_data</span>.<span class="ruby-identifier">to_enum</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">entry</span><span class="ruby-operator">|</span>
|
|
<span class="ruby-identifier">new_entry</span> = {}
|
|
<span class="ruby-identifier">process</span> = <span class="ruby-keyword">true</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">search_for</span>.<span class="ruby-identifier">keys</span>.<span class="ruby-identifier">size</span> <span class="ruby-operator">></span> <span class="ruby-value">0</span>
|
|
<span class="ruby-identifier">search_for</span>.<span class="ruby-identifier">each_pair</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">search_key</span>,<span class="ruby-identifier">search_value</span><span class="ruby-operator">|</span>
|
|
<span class="ruby-keyword">unless</span> (<span class="ruby-identifier">entry</span>[(<span class="ruby-identifier">search_key</span>)] <span class="ruby-operator">==</span> <span class="ruby-identifier">search_value</span>)
|
|
<span class="ruby-identifier">process</span> = <span class="ruby-keyword">false</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">process</span>
|
|
<span class="ruby-identifier">entry</span>.<span class="ruby-identifier">each_pair</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">key</span>,<span class="ruby-identifier">item</span><span class="ruby-operator">|</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">include_columns</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">key</span>.<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">to_sym</span>)
|
|
<span class="ruby-identifier">new_entry</span>[(<span class="ruby-identifier">key</span>.<span class="ruby-identifier">to_sym</span>)] = <span class="ruby-identifier">item</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">new_entry</span>.<span class="ruby-identifier">keys</span>.<span class="ruby-identifier">size</span> <span class="ruby-operator">></span> <span class="ruby-value">0</span>
|
|
<span class="ruby-identifier">results</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">new_entry</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-comment">#</span>
|
|
<span class="ruby-identifier">results</span>
|
|
<span class="ruby-keyword">end</span></pre>
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
<div id="method-i-service_ports" class="method-detail ">
|
|
|
|
<div class="method-heading">
|
|
<span class="method-name">service_ports</span><span
|
|
class="method-args">()</span>
|
|
|
|
<span class="method-click-advice">click to toggle source</span>
|
|
|
|
</div>
|
|
|
|
|
|
<div class="method-description">
|
|
|
|
<p>Services general port usage reference data</p>
|
|
|
|
|
|
|
|
|
|
<div class="method-source-code" id="service_ports-source">
|
|
<pre><span class="ruby-comment"># File lib/gxg/gxg_entities.rb, line 1631</span>
|
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">service_ports</span>()
|
|
<span class="ruby-ivar">@details</span>[<span class="ruby-value">:service_ports</span>]
|
|
<span class="ruby-keyword">end</span></pre>
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
<div id="method-i-service_ports_register" class="method-detail ">
|
|
|
|
<div class="method-heading">
|
|
<span class="method-name">service_ports_register</span><span
|
|
class="method-args">(service, entry={})</span>
|
|
|
|
<span class="method-click-advice">click to toggle source</span>
|
|
|
|
</div>
|
|
|
|
|
|
<div class="method-description">
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<div class="method-source-code" id="service_ports_register-source">
|
|
<pre><span class="ruby-comment"># File lib/gxg/gxg_entities.rb, line 1752</span>
|
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">service_ports_register</span>(<span class="ruby-identifier">service</span>, <span class="ruby-identifier">entry</span>={})
|
|
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">service</span>.<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">size</span> <span class="ruby-operator">></span> <span class="ruby-value">0</span>
|
|
<span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-node">"you must specify a service symbol (i.e. :www ...), you provided #{service.inspect}"</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">service</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Symbol</span>)
|
|
<span class="ruby-identifier">service</span> = <span class="ruby-identifier">service</span>.<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">to_sym</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">entry</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Hash</span>)
|
|
<span class="ruby-identifier">entry</span> = {}
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">entry</span>[<span class="ruby-value">:aliases</span>].<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Array</span>)
|
|
<span class="ruby-identifier">entry</span>[<span class="ruby-value">:aliases</span>] = []
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">entry</span>[<span class="ruby-value">:clients</span>].<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Array</span>)
|
|
<span class="ruby-identifier">entry</span>[<span class="ruby-value">:clients</span>] = []
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">entry</span>[<span class="ruby-value">:description</span>].<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">String</span>)
|
|
<span class="ruby-identifier">entry</span>[<span class="ruby-value">:description</span>] = <span class="ruby-string">""</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">entry</span>[<span class="ruby-value">:usage</span>].<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Hash</span>)
|
|
<span class="ruby-identifier">entry</span>[<span class="ruby-value">:usage</span>] = {}
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-identifier">result</span> = <span class="ruby-keyword">false</span>
|
|
<span class="ruby-comment">#</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@details</span>[<span class="ruby-value">:service_ports</span>][(<span class="ruby-identifier">service</span>)]
|
|
<span class="ruby-identifier">entry</span>[<span class="ruby-value">:aliases</span>].<span class="ruby-identifier">to_enum</span>(<span class="ruby-value">:each</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">the_alias</span><span class="ruby-operator">|</span>
|
|
<span class="ruby-keyword">unless</span> <span class="ruby-ivar">@details</span>[<span class="ruby-value">:service_ports</span>][(<span class="ruby-identifier">service</span>)][<span class="ruby-value">:aliases</span>].<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">the_alias</span>)
|
|
<span class="ruby-ivar">@details</span>[<span class="ruby-value">:service_ports</span>][(<span class="ruby-identifier">service</span>)][<span class="ruby-value">:aliases</span>] <span class="ruby-operator"><<</span> <span class="ruby-identifier">the_alias</span>.<span class="ruby-identifier">to_s</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-identifier">entry</span>[<span class="ruby-value">:clients</span>].<span class="ruby-identifier">to_enum</span>(<span class="ruby-value">:each</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">the_client</span><span class="ruby-operator">|</span>
|
|
<span class="ruby-keyword">unless</span> <span class="ruby-ivar">@details</span>[<span class="ruby-value">:service_ports</span>][(<span class="ruby-identifier">service</span>)][<span class="ruby-value">:clients</span>].<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">the_client</span>.<span class="ruby-identifier">to_s</span>)
|
|
<span class="ruby-ivar">@details</span>[<span class="ruby-value">:service_ports</span>][(<span class="ruby-identifier">service</span>)][<span class="ruby-value">:clients</span>] <span class="ruby-operator"><<</span> <span class="ruby-identifier">the_client</span>.<span class="ruby-identifier">to_s</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-identifier">entry</span>[<span class="ruby-value">:usage</span>].<span class="ruby-identifier">keys</span>.<span class="ruby-identifier">to_enum</span>(<span class="ruby-value">:each</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">the_protocol</span><span class="ruby-operator">|</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@details</span>[<span class="ruby-value">:service_ports</span>][(<span class="ruby-identifier">service</span>)][<span class="ruby-value">:usage</span>].<span class="ruby-identifier">keys</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">the_protocol</span>)
|
|
<span class="ruby-identifier">entry</span>[<span class="ruby-value">:usage</span>][(<span class="ruby-identifier">the_protocol</span>)].<span class="ruby-identifier">to_enum</span>(<span class="ruby-value">:each</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">the_entry_port</span><span class="ruby-operator">|</span>
|
|
<span class="ruby-identifier">included</span> = <span class="ruby-keyword">false</span>
|
|
<span class="ruby-ivar">@details</span>[<span class="ruby-value">:service_ports</span>][(<span class="ruby-identifier">service</span>)][<span class="ruby-value">:usage</span>][(<span class="ruby-identifier">the_protocol</span>)].<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">the_result_port</span><span class="ruby-operator">|</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_entry_port</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Range</span>)
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_result_port</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Range</span>)
|
|
<span class="ruby-keyword">if</span> (<span class="ruby-identifier">the_result_port</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">the_entry_port</span>.<span class="ruby-identifier">first</span>) <span class="ruby-operator">&&</span> <span class="ruby-identifier">the_result_port</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">the_entry_port</span>.<span class="ruby-identifier">last</span>))
|
|
<span class="ruby-identifier">included</span> = <span class="ruby-keyword">true</span>
|
|
<span class="ruby-keyword">break</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">else</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_entry_port</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">the_result_port</span>)
|
|
<span class="ruby-identifier">included</span> = <span class="ruby-keyword">true</span>
|
|
<span class="ruby-keyword">break</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">else</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_result_port</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Range</span>)
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_result_port</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">the_entry_port</span>)
|
|
<span class="ruby-identifier">included</span> = <span class="ruby-keyword">true</span>
|
|
<span class="ruby-keyword">break</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">else</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_result_port</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">the_entry_port</span>
|
|
<span class="ruby-identifier">included</span> = <span class="ruby-keyword">true</span>
|
|
<span class="ruby-keyword">break</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">included</span>
|
|
<span class="ruby-ivar">@details</span>[<span class="ruby-value">:service_ports</span>][(<span class="ruby-identifier">service</span>)][<span class="ruby-value">:usage</span>][(<span class="ruby-identifier">the_protocol</span>)] <span class="ruby-operator"><<</span> <span class="ruby-identifier">the_entry_port</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">else</span>
|
|
<span class="ruby-ivar">@details</span>[<span class="ruby-value">:service_ports</span>][(<span class="ruby-identifier">service</span>)][<span class="ruby-value">:usage</span>][(<span class="ruby-identifier">the_protocol</span>)] = <span class="ruby-identifier">entry</span>[<span class="ruby-value">:usage</span>][(<span class="ruby-identifier">the_protocol</span>)]
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-comment">#</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-comment">#</span>
|
|
<span class="ruby-keyword">else</span>
|
|
<span class="ruby-ivar">@details</span>[<span class="ruby-value">:service_ports</span>][(<span class="ruby-identifier">service</span>.<span class="ruby-identifier">to_sym</span>)] = <span class="ruby-identifier">entry</span>
|
|
<span class="ruby-identifier">result</span> = <span class="ruby-keyword">true</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-comment">#</span>
|
|
<span class="ruby-identifier">result</span>
|
|
<span class="ruby-keyword">end</span></pre>
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
<div id="method-i-service_ports_register_alias" class="method-detail ">
|
|
|
|
<div class="method-heading">
|
|
<span class="method-name">service_ports_register_alias</span><span
|
|
class="method-args">(service,alias_name)</span>
|
|
|
|
<span class="method-click-advice">click to toggle source</span>
|
|
|
|
</div>
|
|
|
|
|
|
<div class="method-description">
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<div class="method-source-code" id="service_ports_register_alias-source">
|
|
<pre><span class="ruby-comment"># File lib/gxg/gxg_entities.rb, line 1635</span>
|
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">service_ports_register_alias</span>(<span class="ruby-identifier">service</span>,<span class="ruby-identifier">alias_name</span>)
|
|
<span class="ruby-identifier">result</span> = <span class="ruby-keyword">false</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@details</span>[<span class="ruby-value">:service_ports</span>][(<span class="ruby-identifier">service</span>.<span class="ruby-identifier">to_sym</span>)]
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">alias_name</span>.<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">size</span> <span class="ruby-operator">></span> <span class="ruby-value">0</span>
|
|
<span class="ruby-keyword">unless</span> <span class="ruby-ivar">@details</span>[<span class="ruby-value">:service_ports</span>][(<span class="ruby-identifier">service</span>.<span class="ruby-identifier">to_sym</span>)][<span class="ruby-value">:aliases</span>].<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">alias_name</span>.<span class="ruby-identifier">to_s</span>)
|
|
<span class="ruby-ivar">@details</span>[<span class="ruby-value">:service_ports</span>][(<span class="ruby-identifier">service</span>.<span class="ruby-identifier">to_sym</span>)][<span class="ruby-value">:aliases</span>] <span class="ruby-operator"><<</span> <span class="ruby-identifier">alias_name</span>.<span class="ruby-identifier">to_s</span>
|
|
<span class="ruby-identifier">result</span> = <span class="ruby-keyword">true</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-identifier">result</span>
|
|
<span class="ruby-keyword">end</span></pre>
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
<div id="method-i-service_ports_register_client" class="method-detail ">
|
|
|
|
<div class="method-heading">
|
|
<span class="method-name">service_ports_register_client</span><span
|
|
class="method-args">(service,client_scheme)</span>
|
|
|
|
<span class="method-click-advice">click to toggle source</span>
|
|
|
|
</div>
|
|
|
|
|
|
<div class="method-description">
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<div class="method-source-code" id="service_ports_register_client-source">
|
|
<pre><span class="ruby-comment"># File lib/gxg/gxg_entities.rb, line 1662</span>
|
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">service_ports_register_client</span>(<span class="ruby-identifier">service</span>,<span class="ruby-identifier">client_scheme</span>)
|
|
<span class="ruby-identifier">result</span> = <span class="ruby-keyword">false</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@details</span>[<span class="ruby-value">:service_ports</span>][(<span class="ruby-identifier">service</span>.<span class="ruby-identifier">to_sym</span>)]
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">client_scheme</span>.<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">size</span> <span class="ruby-operator">></span> <span class="ruby-value">0</span>
|
|
<span class="ruby-keyword">unless</span> <span class="ruby-ivar">@details</span>[<span class="ruby-value">:service_ports</span>][(<span class="ruby-identifier">service</span>.<span class="ruby-identifier">to_sym</span>)][<span class="ruby-value">:clients</span>].<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">client_scheme</span>)
|
|
<span class="ruby-ivar">@details</span>[<span class="ruby-value">:service_ports</span>][(<span class="ruby-identifier">service</span>.<span class="ruby-identifier">to_sym</span>)][<span class="ruby-value">:clients</span>] <span class="ruby-operator"><<</span> <span class="ruby-identifier">client_scheme</span>.<span class="ruby-identifier">to_s</span>
|
|
<span class="ruby-identifier">result</span> = <span class="ruby-keyword">true</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-identifier">result</span>
|
|
<span class="ruby-keyword">end</span></pre>
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
<div id="method-i-service_ports_register_usage" class="method-detail ">
|
|
|
|
<div class="method-heading">
|
|
<span class="method-name">service_ports_register_usage</span><span
|
|
class="method-args">(service,the_protocol,the_entry_port)</span>
|
|
|
|
<span class="method-click-advice">click to toggle source</span>
|
|
|
|
</div>
|
|
|
|
|
|
<div class="method-description">
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<div class="method-source-code" id="service_ports_register_usage-source">
|
|
<pre><span class="ruby-comment"># File lib/gxg/gxg_entities.rb, line 1707</span>
|
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">service_ports_register_usage</span>(<span class="ruby-identifier">service</span>,<span class="ruby-identifier">the_protocol</span>,<span class="ruby-identifier">the_entry_port</span>)
|
|
<span class="ruby-comment"># the_entry_port can be an Integer or a Range</span>
|
|
<span class="ruby-identifier">result</span> = <span class="ruby-keyword">false</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@details</span>[<span class="ruby-value">:service_ports</span>][(<span class="ruby-identifier">service</span>.<span class="ruby-identifier">to_sym</span>)]
|
|
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@details</span>[<span class="ruby-value">:service_ports</span>][(<span class="ruby-identifier">service</span>)][<span class="ruby-value">:usage</span>].<span class="ruby-identifier">keys</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">the_protocol</span>)
|
|
<span class="ruby-identifier">included</span> = <span class="ruby-keyword">false</span>
|
|
<span class="ruby-ivar">@details</span>[<span class="ruby-value">:service_ports</span>][(<span class="ruby-identifier">service</span>)][<span class="ruby-value">:usage</span>][(<span class="ruby-identifier">the_protocol</span>)].<span class="ruby-identifier">to_enum</span>(<span class="ruby-value">:each</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">the_result_port</span><span class="ruby-operator">|</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_entry_port</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Range</span>)
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_result_port</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Range</span>)
|
|
<span class="ruby-keyword">if</span> (<span class="ruby-identifier">the_result_port</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">the_entry_port</span>.<span class="ruby-identifier">first</span>) <span class="ruby-operator">&&</span> <span class="ruby-identifier">the_result_port</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">the_entry_port</span>.<span class="ruby-identifier">last</span>))
|
|
<span class="ruby-identifier">included</span> = <span class="ruby-keyword">true</span>
|
|
<span class="ruby-keyword">break</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">else</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_entry_port</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">the_result_port</span>)
|
|
<span class="ruby-identifier">included</span> = <span class="ruby-keyword">true</span>
|
|
<span class="ruby-keyword">break</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">else</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_result_port</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Range</span>)
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_result_port</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">the_entry_port</span>)
|
|
<span class="ruby-identifier">included</span> = <span class="ruby-keyword">true</span>
|
|
<span class="ruby-keyword">break</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">else</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_result_port</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">the_entry_port</span>
|
|
<span class="ruby-identifier">included</span> = <span class="ruby-keyword">true</span>
|
|
<span class="ruby-keyword">break</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">included</span>
|
|
<span class="ruby-ivar">@details</span>[<span class="ruby-value">:service_ports</span>][(<span class="ruby-identifier">service</span>)][<span class="ruby-value">:usage</span>][(<span class="ruby-identifier">the_protocol</span>)] <span class="ruby-operator"><<</span> <span class="ruby-identifier">the_entry_port</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">else</span>
|
|
<span class="ruby-ivar">@details</span>[<span class="ruby-value">:service_ports</span>][(<span class="ruby-identifier">service</span>)][<span class="ruby-value">:usage</span>][(<span class="ruby-identifier">the_protocol</span>)] = <span class="ruby-identifier">the_entry_port</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-identifier">result</span> = <span class="ruby-keyword">true</span>
|
|
<span class="ruby-comment">#</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-identifier">result</span>
|
|
<span class="ruby-keyword">end</span></pre>
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
<div id="method-i-service_ports_remove_alias" class="method-detail ">
|
|
|
|
<div class="method-heading">
|
|
<span class="method-name">service_ports_remove_alias</span><span
|
|
class="method-args">(service,alias_name)</span>
|
|
|
|
<span class="method-click-advice">click to toggle source</span>
|
|
|
|
</div>
|
|
|
|
|
|
<div class="method-description">
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<div class="method-source-code" id="service_ports_remove_alias-source">
|
|
<pre><span class="ruby-comment"># File lib/gxg/gxg_entities.rb, line 1648</span>
|
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">service_ports_remove_alias</span>(<span class="ruby-identifier">service</span>,<span class="ruby-identifier">alias_name</span>)
|
|
<span class="ruby-identifier">result</span> = <span class="ruby-keyword">false</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@details</span>[<span class="ruby-value">:service_ports</span>][(<span class="ruby-identifier">service</span>.<span class="ruby-identifier">to_sym</span>)]
|
|
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@details</span>[<span class="ruby-value">:service_ports</span>][(<span class="ruby-identifier">service</span>.<span class="ruby-identifier">to_sym</span>)][<span class="ruby-value">:aliases</span>].<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">alias_name</span>.<span class="ruby-identifier">to_s</span>)
|
|
<span class="ruby-identifier">position</span> = <span class="ruby-ivar">@details</span>[<span class="ruby-value">:service_ports</span>][(<span class="ruby-identifier">service</span>.<span class="ruby-identifier">to_sym</span>)][<span class="ruby-value">:aliases</span>].<span class="ruby-identifier">index</span>(<span class="ruby-identifier">alias_name</span>.<span class="ruby-identifier">to_s</span>)
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">position</span>
|
|
<span class="ruby-ivar">@details</span>[<span class="ruby-value">:service_ports</span>][(<span class="ruby-identifier">service</span>.<span class="ruby-identifier">to_sym</span>)][<span class="ruby-value">:aliases</span>].<span class="ruby-identifier">delete_at</span>(<span class="ruby-identifier">position</span>)
|
|
<span class="ruby-identifier">result</span> = <span class="ruby-keyword">true</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-identifier">result</span>
|
|
<span class="ruby-keyword">end</span></pre>
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
<div id="method-i-service_ports_remove_client" class="method-detail ">
|
|
|
|
<div class="method-heading">
|
|
<span class="method-name">service_ports_remove_client</span><span
|
|
class="method-args">(service,client_scheme)</span>
|
|
|
|
<span class="method-click-advice">click to toggle source</span>
|
|
|
|
</div>
|
|
|
|
|
|
<div class="method-description">
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<div class="method-source-code" id="service_ports_remove_client-source">
|
|
<pre><span class="ruby-comment"># File lib/gxg/gxg_entities.rb, line 1675</span>
|
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">service_ports_remove_client</span>(<span class="ruby-identifier">service</span>,<span class="ruby-identifier">client_scheme</span>)
|
|
<span class="ruby-identifier">result</span> = <span class="ruby-keyword">false</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@details</span>[<span class="ruby-value">:service_ports</span>][(<span class="ruby-identifier">service</span>.<span class="ruby-identifier">to_sym</span>)]
|
|
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@details</span>[<span class="ruby-value">:service_ports</span>][(<span class="ruby-identifier">service</span>.<span class="ruby-identifier">to_sym</span>)][<span class="ruby-value">:clients</span>].<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">client_scheme</span>.<span class="ruby-identifier">to_s</span>)
|
|
<span class="ruby-identifier">position</span> = <span class="ruby-ivar">@details</span>[<span class="ruby-value">:service_ports</span>][(<span class="ruby-identifier">service</span>.<span class="ruby-identifier">to_sym</span>)][<span class="ruby-value">:clients</span>].<span class="ruby-identifier">index</span>(<span class="ruby-identifier">client_scheme</span>.<span class="ruby-identifier">to_s</span>)
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">position</span>
|
|
<span class="ruby-ivar">@details</span>[<span class="ruby-value">:service_ports</span>][(<span class="ruby-identifier">service</span>.<span class="ruby-identifier">to_sym</span>)][<span class="ruby-value">:clients</span>].<span class="ruby-identifier">delete_at</span>(<span class="ruby-identifier">position</span>)
|
|
<span class="ruby-identifier">result</span> = <span class="ruby-keyword">true</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-identifier">result</span>
|
|
<span class="ruby-keyword">end</span></pre>
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
<div id="method-i-service_ports_search" class="method-detail ">
|
|
|
|
<div class="method-heading">
|
|
<span class="method-name">service_ports_search</span><span
|
|
class="method-args">(criteria={})</span>
|
|
|
|
<span class="method-click-advice">click to toggle source</span>
|
|
|
|
</div>
|
|
|
|
|
|
<div class="method-description">
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<div class="method-source-code" id="service_ports_search-source">
|
|
<pre><span class="ruby-comment"># File lib/gxg/gxg_entities.rb, line 1836</span>
|
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">service_ports_search</span>(<span class="ruby-identifier">criteria</span>={})
|
|
<span class="ruby-comment"># search by client-scheme, and/or protocol and port-number/range.</span>
|
|
<span class="ruby-identifier">result</span> = {}
|
|
<span class="ruby-comment">#</span>
|
|
<span class="ruby-ivar">@details</span>[<span class="ruby-value">:service_ports</span>].<span class="ruby-identifier">keys</span>.<span class="ruby-identifier">to_enum</span>(<span class="ruby-value">:each</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">service</span><span class="ruby-operator">|</span>
|
|
<span class="ruby-keyword">if</span> (<span class="ruby-identifier">criteria</span>[<span class="ruby-value">:scheme</span>].<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">to_sym</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">service</span> <span class="ruby-operator">||</span> (<span class="ruby-ivar">@details</span>[<span class="ruby-value">:service_ports</span>][(<span class="ruby-identifier">service</span>)][<span class="ruby-value">:aliases</span>].<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">criteria</span>[<span class="ruby-value">:scheme</span>].<span class="ruby-identifier">to_s</span>)) <span class="ruby-operator">||</span> (<span class="ruby-ivar">@details</span>[<span class="ruby-value">:service_ports</span>][(<span class="ruby-identifier">service</span>)][<span class="ruby-value">:clients</span>].<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">criteria</span>[<span class="ruby-value">:scheme</span>].<span class="ruby-identifier">to_s</span>)))
|
|
<span class="ruby-identifier">result</span>[(<span class="ruby-identifier">service</span>)] = <span class="ruby-ivar">@details</span>[<span class="ruby-value">:service_ports</span>][(<span class="ruby-identifier">service</span>)].<span class="ruby-identifier">clone</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">result</span>[(<span class="ruby-identifier">service</span>)]
|
|
<span class="ruby-identifier">the_protocol</span> = <span class="ruby-identifier">criteria</span>[<span class="ruby-value">:protocol</span>]
|
|
<span class="ruby-identifier">the_entry_port</span> = <span class="ruby-identifier">criteria</span>[<span class="ruby-value">:port</span>]
|
|
<span class="ruby-keyword">if</span> (<span class="ruby-identifier">the_entry_port</span>.<span class="ruby-identifier">is_any?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Numeric</span>, <span class="ruby-operator">::</span><span class="ruby-constant">Range</span>) <span class="ruby-operator">&&</span> [<span class="ruby-value">:tcp</span>, <span class="ruby-value">:udp</span>, <span class="ruby-value">:icmp</span>, <span class="ruby-value">:snmp</span>].<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">the_protocol</span>))
|
|
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@details</span>[<span class="ruby-value">:service_ports</span>][(<span class="ruby-identifier">service</span>)][<span class="ruby-value">:usage</span>][(<span class="ruby-identifier">the_protocol</span>)].<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Array</span>)
|
|
<span class="ruby-identifier">included</span> = <span class="ruby-keyword">false</span>
|
|
<span class="ruby-ivar">@details</span>[<span class="ruby-value">:service_ports</span>][(<span class="ruby-identifier">service</span>)][<span class="ruby-value">:usage</span>][(<span class="ruby-identifier">the_protocol</span>)].<span class="ruby-identifier">to_enum</span>(<span class="ruby-value">:each</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">the_result_port</span><span class="ruby-operator">|</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_entry_port</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Range</span>)
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_result_port</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Range</span>)
|
|
<span class="ruby-keyword">if</span> (<span class="ruby-identifier">the_result_port</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">the_entry_port</span>.<span class="ruby-identifier">first</span>) <span class="ruby-operator">&&</span> <span class="ruby-identifier">the_result_port</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">the_entry_port</span>.<span class="ruby-identifier">last</span>))
|
|
<span class="ruby-identifier">included</span> = <span class="ruby-keyword">true</span>
|
|
<span class="ruby-keyword">break</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">else</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_entry_port</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">the_result_port</span>)
|
|
<span class="ruby-identifier">included</span> = <span class="ruby-keyword">true</span>
|
|
<span class="ruby-keyword">break</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">else</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_result_port</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Range</span>)
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_result_port</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">the_entry_port</span>)
|
|
<span class="ruby-identifier">included</span> = <span class="ruby-keyword">true</span>
|
|
<span class="ruby-keyword">break</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">else</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_result_port</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">the_entry_port</span>
|
|
<span class="ruby-identifier">included</span> = <span class="ruby-keyword">true</span>
|
|
<span class="ruby-keyword">break</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">included</span>
|
|
<span class="ruby-identifier">result</span>[(<span class="ruby-identifier">service</span>)] = <span class="ruby-ivar">@details</span>[<span class="ruby-value">:service_ports</span>][(<span class="ruby-identifier">service</span>)].<span class="ruby-identifier">clone</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-comment">#</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-comment">#</span>
|
|
<span class="ruby-identifier">result</span>
|
|
<span class="ruby-keyword">end</span></pre>
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
<div id="method-i-service_ports_usage_preference" class="method-detail ">
|
|
|
|
<div class="method-heading">
|
|
<span class="method-name">service_ports_usage_preference</span><span
|
|
class="method-args">(service,preference=nil)</span>
|
|
|
|
<span class="method-click-advice">click to toggle source</span>
|
|
|
|
</div>
|
|
|
|
|
|
<div class="method-description">
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<div class="method-source-code" id="service_ports_usage_preference-source">
|
|
<pre><span class="ruby-comment"># File lib/gxg/gxg_entities.rb, line 1689</span>
|
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">service_ports_usage_preference</span>(<span class="ruby-identifier">service</span>,<span class="ruby-identifier">preference</span>=<span class="ruby-keyword">nil</span>)
|
|
<span class="ruby-identifier">result</span> = <span class="ruby-keyword">false</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@details</span>[<span class="ruby-value">:service_ports</span>][(<span class="ruby-identifier">service</span>.<span class="ruby-identifier">to_sym</span>)]
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">preference</span>
|
|
<span class="ruby-keyword">if</span> [<span class="ruby-value">:tcp</span>, <span class="ruby-value">:udp</span>, <span class="ruby-value">:icmp</span>, <span class="ruby-value">:snmp</span>].<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">preference</span>)
|
|
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@details</span>[<span class="ruby-value">:service_ports</span>][(<span class="ruby-identifier">service</span>.<span class="ruby-identifier">to_sym</span>)][<span class="ruby-value">:usage</span>][(<span class="ruby-identifier">preference</span>)]
|
|
<span class="ruby-ivar">@details</span>[<span class="ruby-value">:service_ports</span>][(<span class="ruby-identifier">service</span>.<span class="ruby-identifier">to_sym</span>)][<span class="ruby-value">:usage_preference</span>] = <span class="ruby-identifier">preference</span>
|
|
<span class="ruby-identifier">result</span> = <span class="ruby-keyword">true</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">else</span>
|
|
<span class="ruby-ivar">@details</span>[<span class="ruby-value">:service_ports</span>][(<span class="ruby-identifier">service</span>.<span class="ruby-identifier">to_sym</span>)].<span class="ruby-identifier">delete</span>(<span class="ruby-value">:usage_preference</span>)
|
|
<span class="ruby-identifier">result</span> = <span class="ruby-keyword">true</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-identifier">result</span>
|
|
<span class="ruby-keyword">end</span></pre>
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
<div id="method-i-services_file" class="method-detail ">
|
|
|
|
<div class="method-heading">
|
|
<span class="method-name">services_file</span><span
|
|
class="method-args">()</span>
|
|
|
|
<span class="method-click-advice">click to toggle source</span>
|
|
|
|
</div>
|
|
|
|
|
|
<div class="method-description">
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<div class="method-source-code" id="services_file-source">
|
|
<pre><span class="ruby-comment"># File lib/gxg/gxg_entities.rb, line 1888</span>
|
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">services_file</span>()
|
|
<span class="ruby-comment"># "www" => {:aliases => ["http"], :clients => ["web"], :description => "", :usage => {:tcp => [(0..23),80], :udp => [80]}}</span>
|
|
<span class="ruby-comment">#</span>
|
|
<span class="ruby-identifier">result</span> = []
|
|
<span class="ruby-identifier">raw_data</span> = []
|
|
<span class="ruby-keyword">case</span> <span class="ruby-operator">::</span><span class="ruby-constant">GxG</span><span class="ruby-operator">::</span><span class="ruby-constant">SYSTEM</span>.<span class="ruby-identifier">platform</span>()[<span class="ruby-value">:platform</span>]
|
|
<span class="ruby-keyword">when</span> <span class="ruby-value">:windows</span>
|
|
<span class="ruby-comment"># not possible like on linux/bsd ??</span>
|
|
<span class="ruby-keyword">when</span> <span class="ruby-value">:linux</span>, <span class="ruby-value">:bsd</span>
|
|
<span class="ruby-identifier">the_file</span> = <span class="ruby-string">"/etc/services"</span>
|
|
<span class="ruby-keyword">begin</span>
|
|
<span class="ruby-identifier">file_handle</span> = <span class="ruby-constant">GxG</span><span class="ruby-operator">::</span><span class="ruby-constant">IO</span><span class="ruby-operator">::</span><span class="ruby-constant">File</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">the_file</span>, <span class="ruby-operator">::</span><span class="ruby-constant">IO</span><span class="ruby-operator">::</span><span class="ruby-constant">RDONLY</span>)
|
|
<span class="ruby-identifier">raw_data</span> = <span class="ruby-identifier">file_handle</span>.<span class="ruby-identifier">readlines</span>()
|
|
<span class="ruby-identifier">file_handle</span>.<span class="ruby-identifier">close</span>
|
|
<span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span>
|
|
<span class="ruby-comment"># give up on this</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">raw_data</span>.<span class="ruby-identifier">size</span> <span class="ruby-operator">></span> <span class="ruby-value">0</span>
|
|
<span class="ruby-comment">#</span>
|
|
<span class="ruby-identifier">raw_data</span>.<span class="ruby-identifier">to_enum</span>(<span class="ruby-value">:each</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">the_line</span><span class="ruby-operator">|</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_line</span>.<span class="ruby-identifier">split</span>(<span class="ruby-string">"#"</span>)[<span class="ruby-value">0</span>]
|
|
<span class="ruby-identifier">service</span> = <span class="ruby-string">""</span>
|
|
<span class="ruby-identifier">entry</span> = {<span class="ruby-value">:aliases</span> <span class="ruby-operator">=></span> [], <span class="ruby-value">:clients</span> <span class="ruby-operator">=></span> [], <span class="ruby-value">:description</span> <span class="ruby-operator">=></span> <span class="ruby-string">""</span>, <span class="ruby-value">:usage</span> <span class="ruby-operator">=></span> {}}
|
|
<span class="ruby-comment">#</span>
|
|
<span class="ruby-identifier">raw_entry</span> = <span class="ruby-identifier">the_line</span>.<span class="ruby-identifier">split</span>(<span class="ruby-string">"#"</span>)[<span class="ruby-value">0</span>].<span class="ruby-identifier">split</span>(<span class="ruby-string">"\t"</span>)
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">raw_entry</span>[<span class="ruby-value">0</span>].<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">size</span> <span class="ruby-operator">></span> <span class="ruby-value">0</span>
|
|
<span class="ruby-identifier">service</span> = <span class="ruby-identifier">raw_entry</span>[<span class="ruby-value">0</span>].<span class="ruby-identifier">to_sym</span>
|
|
<span class="ruby-keyword">else</span>
|
|
<span class="ruby-identifier">service</span> = <span class="ruby-value">:unknown</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">raw_entry</span>[<span class="ruby-value">1</span>].<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">split</span>(<span class="ruby-string">"/"</span>).<span class="ruby-identifier">size</span> <span class="ruby-operator">==</span> <span class="ruby-value">2</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">raw_entry</span>[<span class="ruby-value">1</span>].<span class="ruby-identifier">split</span>(<span class="ruby-string">"/"</span>)[<span class="ruby-value">0</span>].<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">size</span> <span class="ruby-operator">></span> <span class="ruby-value">0</span>
|
|
<span class="ruby-identifier">entry</span>[<span class="ruby-value">:usage</span>][(<span class="ruby-identifier">raw_entry</span>[<span class="ruby-value">1</span>].<span class="ruby-identifier">split</span>(<span class="ruby-string">"/"</span>)[<span class="ruby-value">1</span>].<span class="ruby-identifier">gsub</span>(<span class="ruby-string">"\n"</span>,<span class="ruby-string">""</span>).<span class="ruby-identifier">to_sym</span>)] = [ <span class="ruby-identifier">raw_entry</span>[<span class="ruby-value">1</span>].<span class="ruby-identifier">split</span>(<span class="ruby-string">"/"</span>)[<span class="ruby-value">0</span>].<span class="ruby-identifier">to_i</span> ]
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">else</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">raw_entry</span>[<span class="ruby-value">2</span>].<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">split</span>(<span class="ruby-string">"/"</span>).<span class="ruby-identifier">size</span> <span class="ruby-operator">==</span> <span class="ruby-value">2</span>
|
|
<span class="ruby-identifier">entry</span>[<span class="ruby-value">:usage</span>][(<span class="ruby-identifier">raw_entry</span>[<span class="ruby-value">2</span>].<span class="ruby-identifier">split</span>(<span class="ruby-string">"/"</span>)[<span class="ruby-value">1</span>].<span class="ruby-identifier">gsub</span>(<span class="ruby-string">"\n"</span>,<span class="ruby-string">""</span>).<span class="ruby-identifier">to_sym</span>)] = [ <span class="ruby-identifier">raw_entry</span>[<span class="ruby-value">2</span>].<span class="ruby-identifier">split</span>(<span class="ruby-string">"/"</span>)[<span class="ruby-value">0</span>].<span class="ruby-identifier">to_i</span> ]
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">raw_entry</span>[<span class="ruby-value">3</span>].<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">size</span> <span class="ruby-operator">></span> <span class="ruby-value">0</span>
|
|
<span class="ruby-identifier">raw_entry</span>[<span class="ruby-value">3</span>].<span class="ruby-identifier">split</span>(<span class="ruby-string">" "</span>).<span class="ruby-identifier">to_enum</span>(<span class="ruby-value">:each</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">the_alias</span><span class="ruby-operator">|</span>
|
|
<span class="ruby-identifier">entry</span>[<span class="ruby-value">:aliases</span>] <span class="ruby-operator"><<</span> <span class="ruby-identifier">the_alias</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">if</span> (<span class="ruby-identifier">raw_entry</span>.<span class="ruby-identifier">size</span> <span class="ruby-operator">-</span> <span class="ruby-value">1</span>) <span class="ruby-operator">></span> <span class="ruby-value">3</span>
|
|
(<span class="ruby-value">4</span><span class="ruby-operator">..</span>(<span class="ruby-identifier">raw_entry</span>.<span class="ruby-identifier">size</span> <span class="ruby-operator">-</span> <span class="ruby-value">1</span>)).<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">the_index</span><span class="ruby-operator">|</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">raw_entry</span>[(<span class="ruby-identifier">the_index</span>)].<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">size</span> <span class="ruby-operator">></span> <span class="ruby-value">0</span>
|
|
<span class="ruby-identifier">raw_entry</span>[(<span class="ruby-identifier">the_index</span>)].<span class="ruby-identifier">split</span>(<span class="ruby-string">" "</span>).<span class="ruby-identifier">to_enum</span>(<span class="ruby-value">:each</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">the_alias</span><span class="ruby-operator">|</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_alias</span>.<span class="ruby-identifier">size</span> <span class="ruby-operator">></span> <span class="ruby-value">0</span>
|
|
<span class="ruby-keyword">unless</span> <span class="ruby-identifier">entry</span>[<span class="ruby-value">:aliases</span>].<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">the_alias</span>)
|
|
<span class="ruby-identifier">entry</span>[<span class="ruby-value">:aliases</span>] <span class="ruby-operator"><<</span> <span class="ruby-identifier">the_alias</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">the_line</span>.<span class="ruby-identifier">split</span>(<span class="ruby-string">"#"</span>)[<span class="ruby-value">1</span>]
|
|
<span class="ruby-identifier">entry</span>[<span class="ruby-value">:description</span>] = <span class="ruby-identifier">the_line</span>.<span class="ruby-identifier">split</span>(<span class="ruby-string">"#"</span>)[<span class="ruby-value">1</span>].<span class="ruby-identifier">split</span>(<span class="ruby-string">" "</span>).<span class="ruby-identifier">join</span>(<span class="ruby-string">" "</span>)
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-comment">#</span>
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">entry</span>[<span class="ruby-value">:usage</span>].<span class="ruby-identifier">keys</span>.<span class="ruby-identifier">size</span> <span class="ruby-operator">></span> <span class="ruby-value">0</span>
|
|
<span class="ruby-identifier">new_entry</span> = {}
|
|
<span class="ruby-identifier">new_entry</span>[(<span class="ruby-identifier">service</span>.<span class="ruby-identifier">to_sym</span>)] = <span class="ruby-identifier">entry</span>
|
|
<span class="ruby-identifier">result</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">new_entry</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-comment">#</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-comment">#</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-identifier">result</span>
|
|
<span class="ruby-keyword">end</span></pre>
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
<div id="method-i-valid_modes" class="method-detail ">
|
|
|
|
<div class="method-heading">
|
|
<span class="method-name">valid_modes</span><span
|
|
class="method-args">()</span>
|
|
|
|
<span class="method-click-advice">click to toggle source</span>
|
|
|
|
</div>
|
|
|
|
|
|
<div class="method-description">
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<div class="method-source-code" id="valid_modes-source">
|
|
<pre><span class="ruby-comment"># File lib/gxg/gxg_entities.rb, line 1048</span>
|
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">valid_modes</span>()
|
|
<span class="ruby-identifier">result</span> = {}
|
|
<span class="ruby-identifier">result</span>.<span class="ruby-identifier">merge</span>(<span class="ruby-constant">GxG</span><span class="ruby-operator">::</span><span class="ruby-constant">IO</span><span class="ruby-operator">::</span><span class="ruby-constant">IO</span><span class="ruby-operator">::</span><span class="ruby-identifier">valid_modes</span>())
|
|
<span class="ruby-ivar">@thread_safety</span>.<span class="ruby-identifier">synchronize</span> {
|
|
<span class="ruby-identifier">result</span>.<span class="ruby-identifier">merge</span>(<span class="ruby-ivar">@valid_modes</span>)
|
|
}
|
|
<span class="ruby-identifier">result</span>
|
|
<span class="ruby-keyword">end</span></pre>
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
</section>
|
|
|
|
</section>
|
|
</main>
|
|
|
|
|
|
<footer id="validator-badges" role="contentinfo">
|
|
<p><a href="https://validator.w3.org/check/referer">Validate</a>
|
|
<p>Generated by <a href="https://ruby.github.io/rdoc/">RDoc</a> 6.1.2.
|
|
<p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
|
|
</footer>
|
|
|